aboutsummaryrefslogtreecommitdiff
path: root/nomsu_tree.moon
diff options
context:
space:
mode:
authorBruce Hill <bitbucket@bruce-hill.com>2018-05-15 15:21:32 -0700
committerBruce Hill <bitbucket@bruce-hill.com>2018-05-15 15:22:03 -0700
commit28cd9ae0b7a09d8f2cd0cd929f1ebdce4b081502 (patch)
tree9b306517621da0ecbc824c68382044515581d8ef /nomsu_tree.moon
parentae979c3718b6b472148a19f64aa3e0878e1e259d (diff)
More API cleanup, and fixed a bug with optimized lua files generating
spurious circular import errors.
Diffstat (limited to 'nomsu_tree.moon')
-rw-r--r--nomsu_tree.moon7
1 files changed, 4 insertions, 3 deletions
diff --git a/nomsu_tree.moon b/nomsu_tree.moon
index f63f036..dd3bb28 100644
--- a/nomsu_tree.moon
+++ b/nomsu_tree.moon
@@ -481,10 +481,11 @@ Tree "Number",
map: (fn)=> fn(self) or self
Tree "Var",
+ as_lua_id: (v)->
+ "_"..(v\gsub("%W", (c)-> if c == "_" then "__" else ("_%x")\format(c\byte!)))
+
as_lua: (nomsu)=>
- lua_id = "_"..(@value\gsub "%W", (verboten)->
- if verboten == "_" then "__" else ("_%x")\format(verboten\byte!))
- Lua.Value(@source, lua_id)
+ Lua.Value(@source, self.as_lua_id(@value))
as_nomsu: (inline=false)=>
return Nomsu(@source, "%", @value)