Mercurial Hosting > luan
diff src/luan/modules/parsers/LuanToString.java @ 1562:b89212fd04b5
remove table.luan
author | Franklin Schmidt <fschmidt@gmail.com> |
---|---|
date | Sun, 08 Nov 2020 16:50:59 -0700 |
parents | 83249ce59d13 |
children | 8fbcc4747091 |
line wrap: on
line diff
--- a/src/luan/modules/parsers/LuanToString.java Thu Nov 05 20:24:09 2020 -0700 +++ b/src/luan/modules/parsers/LuanToString.java Sun Nov 08 16:50:59 2020 -0700 @@ -19,21 +19,21 @@ public boolean longStrings = false; public boolean inline = false; - void applyOptions(LuanTable options) throws LuanException { + void applyOptions(Luan luan,LuanTable options) throws LuanException { Boolean b; - b = (Boolean)options.get("strict"); + b = (Boolean)options.get(luan,"strict"); if( b != null ) strict = b; - b = (Boolean)options.get("number_types"); + b = (Boolean)options.get(luan,"number_types"); if( b != null ) numberTypes = b; - b = (Boolean)options.get("compressed"); + b = (Boolean)options.get(luan,"compressed"); if( b != null ) compressed = b; - b = (Boolean)options.get("long_strings"); + b = (Boolean)options.get(luan,"long_strings"); if( b != null ) longStrings = b; - b = (Boolean)options.get("inline"); + b = (Boolean)options.get(luan,"inline"); if( b != null ) inline = b; } @@ -62,13 +62,15 @@ } public final Settings settingsInit = new Settings(); + private final Luan luan; private final LuanTable subOptions; - public LuanToString(LuanTable options,LuanTable subOptions) throws LuanException { + public LuanToString(Luan luan,LuanTable options,LuanTable subOptions) throws LuanException { + this.luan = luan; this.subOptions = subOptions; if( options != null ) { checkOptions(options); - settingsInit.applyOptions(options); + settingsInit.applyOptions(luan,options); } if( subOptions != null ) { for( Map.Entry entry : subOptions.iterable() ) { @@ -181,10 +183,10 @@ } sb.append( settings.compressed ? "=" : " = " ); if( subOptions != null ) { - LuanTable options = (LuanTable)subOptions.get(key); + LuanTable options = (LuanTable)subOptions.get(luan,key); if( options != null ) { settings = settings.cloneSettings(); - settings.applyOptions(options); + settings.applyOptions(luan,options); } } toString( entry.getValue(), sb, indented, settings ); @@ -207,13 +209,13 @@ sb.append( ')' ); } - public static void addNumberTypes(LuanTable env) { + public static void addNumberTypes(Luan luan,LuanTable env) { try { - LuanTable module = (LuanTable)env.luan().require("luan:Number.luan"); - env.put( "double", module.fn("double") ); - env.put( "float", module.fn("float") ); - env.put( "integer", module.fn("integer") ); - env.put( "long", module.fn("long") ); + LuanTable module = (LuanTable)luan.require("luan:Number.luan"); + env.put( luan, "double", module.fn(luan,"double") ); + env.put( luan, "float", module.fn(luan,"float") ); + env.put( luan, "integer", module.fn(luan,"integer") ); + env.put( luan, "long", module.fn(luan,"long") ); } catch(LuanException e) { throw new LuanRuntimeException(e); }