Skip to content

Commit 642932c

Browse files
committed
kill some more anon funcs for while,for,foreach
1 parent 82f7384 commit 642932c

File tree

4 files changed

+42
-35
lines changed

4 files changed

+42
-35
lines changed

moonscript/transform.lua

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -369,7 +369,7 @@ Statement = Transformer({
369369
block_body
370370
}
371371
})
372-
elseif "comprehension" == _exp_0 or "tblcomprehension" == _exp_0 then
372+
elseif "comprehension" == _exp_0 or "tblcomprehension" == _exp_0 or "foreach" == _exp_0 or "for" == _exp_0 or "while" == _exp_0 then
373373
return build.assign_one(first_name, Value.transformers[first_value[1]](self, first_value))
374374
end
375375
end

moonscript/transform.moon

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -190,7 +190,7 @@ Statement = Transformer {
190190
{"do", block_body}
191191
}
192192

193-
when "comprehension", "tblcomprehension"
193+
when "comprehension", "tblcomprehension", "foreach", "for", "while"
194194
return build.assign_one first_name,
195195
Value.transformers[first_value[1]] @, first_value
196196

spec/outputs/bubbling.lua

Lines changed: 16 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,8 @@ do
3030
end
3131
k = _accum_0
3232
end
33-
local j = (function()
33+
local j
34+
do
3435
local _accum_0 = { }
3536
local _len_0 = 1
3637
for i = 1, 10 do
@@ -39,8 +40,8 @@ local j = (function()
3940
end
4041
_len_0 = _len_0 + 1
4142
end
42-
return _accum_0
43-
end)()
43+
j = _accum_0
44+
end
4445
local m
4546
m = function(...)
4647
return (function(...)
@@ -59,7 +60,8 @@ m = function(...)
5960
return _accum_0
6061
end)(...)
6162
end
62-
local x = (function(...)
63+
local x
64+
do
6365
local _accum_0 = { }
6466
local _len_0 = 1
6567
local _list_0 = {
@@ -70,8 +72,8 @@ local x = (function(...)
7072
_accum_0[_len_0] = i
7173
_len_0 = _len_0 + 1
7274
end
73-
return _accum_0
74-
end)(...)
75+
x = _accum_0
76+
end
7577
local y
7678
do
7779
local _accum_0 = { }
@@ -98,16 +100,18 @@ do
98100
end
99101
z = _accum_0
100102
end
101-
local a = (function(...)
103+
local a
104+
do
102105
local _accum_0 = { }
103106
local _len_0 = 1
104107
for i = 1, 10 do
105108
_accum_0[_len_0] = ...
106109
_len_0 = _len_0 + 1
107110
end
108-
return _accum_0
109-
end)(...)
110-
local b = (function()
111+
a = _accum_0
112+
end
113+
local b
114+
do
111115
local _accum_0 = { }
112116
local _len_0 = 1
113117
for i = 1, 10 do
@@ -116,5 +120,5 @@ local b = (function()
116120
end
117121
_len_0 = _len_0 + 1
118122
end
119-
return _accum_0
120-
end)()
123+
b = _accum_0
124+
end

spec/outputs/loops.lua

Lines changed: 24 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ local hello = {
4848
4,
4949
5
5050
}
51-
x = (function()
51+
do
5252
local _accum_0 = { }
5353
local _len_0 = 1
5454
for _index_0 = 1, #hello do
@@ -58,25 +58,27 @@ x = (function()
5858
end
5959
_len_0 = _len_0 + 1
6060
end
61-
return _accum_0
62-
end)()
61+
x = _accum_0
62+
end
6363
x = function()
6464
for _index_0 = 1, #hello do
6565
x = hello[_index_0]
6666
local _ = y
6767
end
6868
end
69-
local t = (function()
69+
local t
70+
do
7071
local _accum_0 = { }
7172
local _len_0 = 1
7273
for i = 10, 20 do
7374
_accum_0[_len_0] = i * 2
7475
_len_0 = _len_0 + 1
7576
end
76-
return _accum_0
77-
end)()
77+
t = _accum_0
78+
end
7879
local hmm = 0
79-
local y = (function()
80+
local y
81+
do
8082
local _accum_0 = { }
8183
local _len_0 = 1
8284
for j = 3, 30, 8 do
@@ -85,8 +87,8 @@ local y = (function()
8587
_accum_0[_len_0] = _value_0
8688
_len_0 = _len_0 + 1
8789
end
88-
return _accum_0
89-
end)()
90+
y = _accum_0
91+
end
9092
local _
9193
_ = function()
9294
for k = 10, 40 do
@@ -116,7 +118,7 @@ while also do
116118
_ = "okay"
117119
end
118120
local i = 0
119-
x = (function()
121+
do
120122
local _accum_0 = { }
121123
local _len_0 = 1
122124
while i < 10 do
@@ -125,9 +127,9 @@ x = (function()
125127
_accum_0[_len_0] = _value_0
126128
_len_0 = _len_0 + 1
127129
end
128-
return _accum_0
129-
end)()
130-
x = (function()
130+
x = _accum_0
131+
end
132+
do
131133
local _accum_0 = { }
132134
local _len_0 = 1
133135
local _list_1 = 3
@@ -138,9 +140,9 @@ x = (function()
138140
_accum_0[_len_0] = _value_0
139141
_len_0 = _len_0 + 1
140142
end
141-
return _accum_0
142-
end)()
143-
x = (function()
143+
x = _accum_0
144+
end
145+
do
144146
local _accum_0 = { }
145147
local _len_0 = 1
146148
for x = 1, 2 do
@@ -149,8 +151,8 @@ x = (function()
149151
_accum_0[_len_0] = _value_0
150152
_len_0 = _len_0 + 1
151153
end
152-
return _accum_0
153-
end)()
154+
x = _accum_0
155+
end
154156
while true do
155157
local _continue_0 = false
156158
repeat
@@ -183,7 +185,8 @@ for x = 1, 10 do
183185
break
184186
end
185187
end
186-
local list = (function()
188+
local list
189+
do
187190
local _accum_0 = { }
188191
local _len_0 = 1
189192
for x = 1, 10 do
@@ -202,8 +205,8 @@ local list = (function()
202205
break
203206
end
204207
end
205-
return _accum_0
206-
end)()
208+
list = _accum_0
209+
end
207210
local _list_1 = {
208211
1,
209212
2,

0 commit comments

Comments
 (0)