diff options
Diffstat (limited to 'lib/object.nom')
| -rw-r--r-- | lib/object.nom | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/lib/object.nom b/lib/object.nom index 897657c..1645a28 100644 --- a/lib/object.nom +++ b/lib/object.nom @@ -44,7 +44,7 @@ test: assume ((%d::bark) == "Bark! Bark!") compile [my action %actions %body] to: lua> ".." - local fn_name = string.as_lua_id(\%actions[1].stub) + local fn_name = \%actions[1].stub:as_lua_id() local \%args = table.map(\%actions[1]:get_args(), function(a) return tostring(nomsu:compile(a)) end) table.insert(\%args, \(\%me as lua id)) local lua = LuaCode(tree.source, "class.", fn_name, " = ", \(..) @@ -52,7 +52,7 @@ compile [my action %actions %body] to: ..) for i=2,#\%actions do local alias = \%actions[i] - local alias_name = string.as_lua_id(alias.stub) + local alias_name = alias.stub:as_lua_id() local \%alias_args = table.map(alias:get_args(), function(a) return tostring(nomsu:compile(a)) end) table.insert(\%alias_args, \(\%me as lua id)) lua:append("\\nclass.", alias_name, " = ") @@ -84,9 +84,9 @@ compile [object %classname extends %parent %class_body] to: return inst end, }) - nomsu[string.as_lua_id("new "..class.name)] = class - nomsu[string.as_lua_id("new "..class.name.." 1")] = class - nomsu[string.as_lua_id(class.name)] = function() return class end + nomsu[("new "..class.name):as_lua_id()] = class + nomsu[("new "..class.name.." 1"):as_lua_id()] = class + nomsu[class.name:as_lua_id()] = function() return class end class.__index = class class.class = class class.__tostring = function(inst) @@ -104,7 +104,7 @@ compile [object %classname extends %parent %class_body] to: ["__ipairs"]="__ipairs", ["__pairs"]="__pairs", } for stub,metamethod in pairs(metamethod_map) do - class[metamethod] = class[string.as_lua_id(stub)] + class[metamethod] = class[stub:as_lua_id()] end end |
