From b041d365b88b76418def86d13a8f946dd8a6db73 Mon Sep 17 00:00:00 2001 From: Li Jin Date: Tue, 8 Nov 2022 18:10:44 +0800 Subject: add chain assignment. fix issue #115. --- spec/inputs/assign.yue | 11 +++++++++++ spec/outputs/assign.lua | 26 ++++++++++++++++++++++++++ 2 files changed, 37 insertions(+) (limited to 'spec') diff --git a/spec/inputs/assign.yue b/spec/inputs/assign.yue index da44dff..8c7848d 100644 --- a/spec/inputs/assign.yue +++ b/spec/inputs/assign.yue @@ -75,3 +75,14 @@ do do print 123 1, f2! + +do + a = b = c = d = 0 + +do + a = b = c = d = f! + +do + {a} = :b = c.d = e = tab + +nil diff --git a/spec/outputs/assign.lua b/spec/outputs/assign.lua index c7f2e20..e638c47 100644 --- a/spec/outputs/assign.lua +++ b/spec/outputs/assign.lua @@ -128,4 +128,30 @@ return _(function() end end end + do + local a = 0 + local b = 0 + local c = 0 + local d = 0 + end + do + local a + local b + local c + local d + do + local _tmp_0 = f() + a = _tmp_0 + b = _tmp_0 + c = _tmp_0 + d = _tmp_0 + end + end + do + local a = tab[1] + local b = tab.b + c.d = tab + local e = tab + end + return nil end) -- cgit v1.2.3-55-g6feb