Skip to content

Commit 4dd7e7d

Browse files
committed
moved update to transform
1 parent 7605b2d commit 4dd7e7d

File tree

4 files changed

+19
-27
lines changed

4 files changed

+19
-27
lines changed

moonscript/compile/line.lua

Lines changed: 0 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -82,27 +82,6 @@ line_compile = {
8282
return _with_0
8383
end
8484
end,
85-
update = function(self, node)
86-
local _, name, op, exp = unpack(node)
87-
local op_final = op:match("^(.+)=$")
88-
if not op_final then
89-
error("Unknown op: " .. op)
90-
end
91-
return self:stm({
92-
"assign",
93-
{
94-
name
95-
},
96-
{
97-
{
98-
"exp",
99-
name,
100-
op_final,
101-
exp
102-
}
103-
}
104-
})
105-
end,
10685
["return"] = function(self, node)
10786
return self:line("return ", (function()
10887
if node[2] ~= "" then

moonscript/compile/line.moon

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -46,12 +46,6 @@ line_compile =
4646
\append " = "
4747
\append_list [@value v for v in *values], ", "
4848

49-
update: (node) =>
50-
_, name, op, exp = unpack node
51-
op_final = op\match "^(.+)=$"
52-
error "Unknown op: "..op if not op_final
53-
@stm {"assign", {name}, {{"exp", name, op_final, exp}}}
54-
5549
return: (node) =>
5650
@line "return ", if node[2] != "" then @value node[2]
5751

moonscript/transform.lua

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -215,6 +215,19 @@ Statement = Transformer({
215215
return node
216216
end
217217
end,
218+
update = function(node)
219+
local _, name, op, exp = unpack(node)
220+
local op_final = op:match("^(.+)=$")
221+
if not op_final then
222+
error("Unknown op: " .. op)
223+
end
224+
return build.assign_one(name, {
225+
"exp",
226+
name,
227+
op_final,
228+
exp
229+
})
230+
end,
218231
comprehension = function(node, action)
219232
local _, exp, clauses = unpack(node)
220233
action = action or function(exp)

moonscript/transform.moon

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -124,6 +124,12 @@ Statement = Transformer {
124124
else
125125
node
126126

127+
update: (node) ->
128+
_, name, op, exp = unpack node
129+
op_final = op\match "^(.+)=$"
130+
error "Unknown op: "..op if not op_final
131+
build.assign_one name, {"exp", name, op_final, exp}
132+
127133
comprehension: (node, action) ->
128134
_, exp, clauses = unpack node
129135

0 commit comments

Comments
 (0)