mirror of
https://github.com/leafo/moonscript.git
synced 2024-11-22 02:44:23 +00:00
reorganize destructure tests
This commit is contained in:
parent
9ac382fc49
commit
e1c2829d0e
@ -1,81 +1,85 @@
|
||||
|
||||
{a, b} = hello
|
||||
do
|
||||
{a, b} = hello
|
||||
|
||||
{{a}, b, {c}} = hello
|
||||
{{a}, b, {c}} = hello
|
||||
|
||||
{ :hello, :world } = value
|
||||
{ :hello, :world } = value
|
||||
|
||||
{ yes: no, thing } = world
|
||||
do
|
||||
{ yes: no, thing } = world
|
||||
|
||||
{:a,:b,:c,:d} = yeah
|
||||
{:a,:b,:c,:d} = yeah
|
||||
|
||||
{a} = one, two
|
||||
{b}, c = one
|
||||
{d}, e = one, two
|
||||
{a} = one, two
|
||||
{b}, c = one
|
||||
{d}, e = one, two
|
||||
|
||||
x, {y} = one, two
|
||||
x, {y} = one, two
|
||||
|
||||
xx, yy = 1, 2
|
||||
{yy, xx} = {xx, yy}
|
||||
xx, yy = 1, 2
|
||||
{yy, xx} = {xx, yy}
|
||||
|
||||
{a, :b, c, :d, e, :f, g} = tbl
|
||||
{a, :b, c, :d, e, :f, g} = tbl
|
||||
|
||||
---
|
||||
|
||||
futurists =
|
||||
sculptor: "Umberto Boccioni"
|
||||
painter: "Vladimir Burliuk"
|
||||
poet:
|
||||
name: "F.T. Marinetti"
|
||||
address: {
|
||||
"Via Roma 42R"
|
||||
"Bellagio, Italy 22021"
|
||||
}
|
||||
do
|
||||
futurists =
|
||||
sculptor: "Umberto Boccioni"
|
||||
painter: "Vladimir Burliuk"
|
||||
poet:
|
||||
name: "F.T. Marinetti"
|
||||
address: {
|
||||
"Via Roma 42R"
|
||||
"Bellagio, Italy 22021"
|
||||
}
|
||||
|
||||
{poet: {:name, address: {street, city}}} = futurists
|
||||
|
||||
print name, street, city
|
||||
{poet: {:name, address: {street, city}}} = futurists
|
||||
|
||||
--
|
||||
|
||||
{ @world } = x
|
||||
{ a.b, c.y, func!.z } = x
|
||||
do
|
||||
{ @world } = x
|
||||
{ a.b, c.y, func!.z } = x
|
||||
|
||||
{ world: @world } = x
|
||||
{ world: @world } = x
|
||||
|
||||
--
|
||||
|
||||
thing = {{1,2}, {3,4}}
|
||||
do
|
||||
thing = {{1,2}, {3,4}}
|
||||
|
||||
for {x,y} in *thing
|
||||
print x,y
|
||||
for {x,y} in *thing
|
||||
print x,y
|
||||
|
||||
|
||||
--
|
||||
|
||||
with {a,b} = thing
|
||||
print a, b
|
||||
do
|
||||
with {a,b} = thing
|
||||
print a, b
|
||||
|
||||
|
||||
--
|
||||
|
||||
thing = nil
|
||||
if {a} = thing
|
||||
print a
|
||||
else
|
||||
print "nothing"
|
||||
do
|
||||
thing = nil
|
||||
if {a} = thing
|
||||
print a
|
||||
else
|
||||
print "nothing"
|
||||
|
||||
thang = {1,2}
|
||||
if {a,b} = thang
|
||||
print a,b
|
||||
|
||||
if {a,b} = thing
|
||||
print a,b
|
||||
elseif {c,d} = thang
|
||||
print c,d
|
||||
else
|
||||
print "NO"
|
||||
thang = {1,2}
|
||||
if {a,b} = thang
|
||||
print a,b
|
||||
|
||||
if {a,b} = thing
|
||||
print a,b
|
||||
elseif {c,d} = thang
|
||||
print c,d
|
||||
else
|
||||
print "NO"
|
||||
|
||||
--
|
||||
|
||||
|
@ -1,151 +1,187 @@
|
||||
local a, b
|
||||
do
|
||||
local _obj_0 = hello
|
||||
a, b = _obj_0[1], _obj_0[2]
|
||||
end
|
||||
local c
|
||||
do
|
||||
local _obj_0 = hello
|
||||
a, b, c = _obj_0[1][1], _obj_0[2], _obj_0[3][1]
|
||||
end
|
||||
local hello, world
|
||||
do
|
||||
local _obj_0 = value
|
||||
hello, world = _obj_0.hello, _obj_0.world
|
||||
end
|
||||
local no, thing
|
||||
no, thing = world.yes, world[1]
|
||||
local d
|
||||
do
|
||||
local _obj_0 = yeah
|
||||
a, b, c, d = _obj_0.a, _obj_0.b, _obj_0.c, _obj_0.d
|
||||
local a, b
|
||||
do
|
||||
local _obj_0 = hello
|
||||
a, b = _obj_0[1], _obj_0[2]
|
||||
end
|
||||
local c
|
||||
do
|
||||
local _obj_0 = hello
|
||||
a, b, c = _obj_0[1][1], _obj_0[2], _obj_0[3][1]
|
||||
end
|
||||
local hello, world
|
||||
do
|
||||
local _obj_0 = value
|
||||
hello, world = _obj_0.hello, _obj_0.world
|
||||
end
|
||||
end
|
||||
do
|
||||
local _obj_0 = one
|
||||
a = _obj_0[1]
|
||||
local no, thing
|
||||
do
|
||||
local _obj_0 = world
|
||||
no, thing = _obj_0.yes, _obj_0[1]
|
||||
end
|
||||
local a, b, c, d
|
||||
do
|
||||
local _obj_0 = yeah
|
||||
a, b, c, d = _obj_0.a, _obj_0.b, _obj_0.c, _obj_0.d
|
||||
end
|
||||
do
|
||||
local _obj_0 = one
|
||||
a = _obj_0[1]
|
||||
end
|
||||
local _ = two
|
||||
do
|
||||
local _obj_0 = one
|
||||
b = _obj_0[1]
|
||||
end
|
||||
c = nil
|
||||
do
|
||||
local _obj_0 = one
|
||||
d = _obj_0[1]
|
||||
end
|
||||
local e = two
|
||||
local x = one
|
||||
local y
|
||||
do
|
||||
local _obj_0 = two
|
||||
y = _obj_0[1]
|
||||
end
|
||||
local xx, yy = 1, 2
|
||||
do
|
||||
local _obj_0 = {
|
||||
xx,
|
||||
yy
|
||||
}
|
||||
yy, xx = _obj_0[1], _obj_0[2]
|
||||
end
|
||||
local f, g
|
||||
do
|
||||
local _obj_0 = tbl
|
||||
a, b, c, d, e, f, g = _obj_0[1], _obj_0.b, _obj_0[2], _obj_0.d, _obj_0[3], _obj_0.f, _obj_0[4]
|
||||
end
|
||||
end
|
||||
local _ = two
|
||||
do
|
||||
local _obj_0 = one
|
||||
b = _obj_0[1]
|
||||
end
|
||||
c = nil
|
||||
do
|
||||
local _obj_0 = one
|
||||
d = _obj_0[1]
|
||||
end
|
||||
local e = two
|
||||
local x = one
|
||||
local y
|
||||
do
|
||||
local _obj_0 = two
|
||||
y = _obj_0[1]
|
||||
end
|
||||
local xx, yy = 1, 2
|
||||
do
|
||||
local _obj_0 = {
|
||||
xx,
|
||||
yy
|
||||
}
|
||||
yy, xx = _obj_0[1], _obj_0[2]
|
||||
end
|
||||
local f, g
|
||||
do
|
||||
local _obj_0 = tbl
|
||||
a, b, c, d, e, f, g = _obj_0[1], _obj_0.b, _obj_0[2], _obj_0.d, _obj_0[3], _obj_0.f, _obj_0[4]
|
||||
end
|
||||
local futurists = {
|
||||
sculptor = "Umberto Boccioni",
|
||||
painter = "Vladimir Burliuk",
|
||||
poet = {
|
||||
name = "F.T. Marinetti",
|
||||
address = {
|
||||
"Via Roma 42R",
|
||||
"Bellagio, Italy 22021"
|
||||
local futurists = {
|
||||
sculptor = "Umberto Boccioni",
|
||||
painter = "Vladimir Burliuk",
|
||||
poet = {
|
||||
name = "F.T. Marinetti",
|
||||
address = {
|
||||
"Via Roma 42R",
|
||||
"Bellagio, Italy 22021"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
local name, street, city
|
||||
name, street, city = futurists.poet.name, futurists.poet.address[1], futurists.poet.address[2]
|
||||
print(name, street, city)
|
||||
self.world = x[1]
|
||||
a.b, c.y, func().z = x[1], x[2], x[3]
|
||||
self.world = x.world
|
||||
thing = {
|
||||
{
|
||||
local name, street, city
|
||||
name, street, city = futurists.poet.name, futurists.poet.address[1], futurists.poet.address[2]
|
||||
end
|
||||
do
|
||||
do
|
||||
local _obj_0 = x
|
||||
self.world = _obj_0[1]
|
||||
end
|
||||
do
|
||||
local _obj_0 = x
|
||||
a.b, c.y, func().z = _obj_0[1], _obj_0[2], _obj_0[3]
|
||||
end
|
||||
do
|
||||
local _obj_0 = x
|
||||
self.world = _obj_0.world
|
||||
end
|
||||
end
|
||||
do
|
||||
local thing = {
|
||||
{
|
||||
1,
|
||||
2
|
||||
},
|
||||
{
|
||||
3,
|
||||
4
|
||||
}
|
||||
}
|
||||
local _list_0 = thing
|
||||
for _index_0 = 1, #_list_0 do
|
||||
local _des_0 = _list_0[_index_0]
|
||||
local x, y
|
||||
x, y = _des_0[1], _des_0[2]
|
||||
print(x, y)
|
||||
end
|
||||
end
|
||||
do
|
||||
do
|
||||
local _with_0 = thing
|
||||
local a, b
|
||||
a, b = _with_0[1], _with_0[2]
|
||||
print(a, b)
|
||||
end
|
||||
end
|
||||
do
|
||||
local thing = nil
|
||||
do
|
||||
local _des_0 = thing
|
||||
if _des_0 then
|
||||
local a
|
||||
a = _des_0[1]
|
||||
print(a)
|
||||
else
|
||||
print("nothing")
|
||||
end
|
||||
end
|
||||
local thang = {
|
||||
1,
|
||||
2
|
||||
},
|
||||
{
|
||||
3,
|
||||
4
|
||||
}
|
||||
}
|
||||
local _list_0 = thing
|
||||
for _index_0 = 1, #_list_0 do
|
||||
local _des_0 = _list_0[_index_0]
|
||||
x, y = _des_0[1], _des_0[2]
|
||||
print(x, y)
|
||||
end
|
||||
do
|
||||
local _with_0 = thing
|
||||
a, b = _with_0[1], _with_0[2]
|
||||
print(a, b)
|
||||
end
|
||||
thing = nil
|
||||
do
|
||||
local _des_0 = thing
|
||||
if _des_0 then
|
||||
a = _des_0[1]
|
||||
print(a)
|
||||
else
|
||||
print("nothing")
|
||||
do
|
||||
local _des_0 = thang
|
||||
if _des_0 then
|
||||
local a, b
|
||||
a, b = _des_0[1], _des_0[2]
|
||||
print(a, b)
|
||||
end
|
||||
end
|
||||
end
|
||||
local thang = {
|
||||
1,
|
||||
2
|
||||
}
|
||||
do
|
||||
local _des_0 = thang
|
||||
if _des_0 then
|
||||
a, b = _des_0[1], _des_0[2]
|
||||
print(a, b)
|
||||
end
|
||||
end
|
||||
do
|
||||
local _des_0 = thing
|
||||
if _des_0 then
|
||||
a, b = _des_0[1], _des_0[2]
|
||||
print(a, b)
|
||||
else
|
||||
do
|
||||
local _des_1 = thang
|
||||
if _des_1 then
|
||||
c, d = _des_1[1], _des_1[2]
|
||||
print(c, d)
|
||||
else
|
||||
print("NO")
|
||||
do
|
||||
local _des_0 = thing
|
||||
if _des_0 then
|
||||
local a, b
|
||||
a, b = _des_0[1], _des_0[2]
|
||||
print(a, b)
|
||||
else
|
||||
do
|
||||
local _des_1 = thang
|
||||
if _des_1 then
|
||||
local c, d
|
||||
c, d = _des_1[1], _des_1[2]
|
||||
print(c, d)
|
||||
else
|
||||
print("NO")
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
do
|
||||
local z = "yeah"
|
||||
local a, b, c
|
||||
a, b, c = z[1], z[2], z[3]
|
||||
end
|
||||
do
|
||||
local a, b, c
|
||||
do
|
||||
local _obj_0 = z
|
||||
a, b, c = _obj_0[1], _obj_0[2], _obj_0[3]
|
||||
end
|
||||
end
|
||||
local _
|
||||
_ = function(z)
|
||||
local a, b, c
|
||||
a, b, c = z[1], z[2], z[3]
|
||||
end
|
||||
do
|
||||
local z = "oo"
|
||||
return function(k)
|
||||
local a, b, c
|
||||
a, b, c = z[1], z[2], z[3]
|
||||
end
|
||||
end
|
Loading…
Reference in New Issue
Block a user