diff options
| author | Li Jin <dragon-fly@qq.com> | 2023-08-17 10:36:15 +0800 |
|---|---|---|
| committer | Li Jin <dragon-fly@qq.com> | 2023-08-17 10:36:15 +0800 |
| commit | e61cce21ef7def2c2e52dd6cb6a5b540ebcac29d (patch) | |
| tree | 6e7c5e7e6f13157e9f8db26c38f6d8cba75683e5 /spec/outputs/unicode/macro.lua | |
| parent | 289faf45ac26f7e0ac1a1e4305e5c42fc1e5b866 (diff) | |
| download | yuescript-e61cce21ef7def2c2e52dd6cb6a5b540ebcac29d.tar.gz yuescript-e61cce21ef7def2c2e52dd6cb6a5b540ebcac29d.tar.bz2 yuescript-e61cce21ef7def2c2e52dd6cb6a5b540ebcac29d.zip | |
add unicode identifier support, fix more issue from #144
Diffstat (limited to 'spec/outputs/unicode/macro.lua')
| -rw-r--r-- | spec/outputs/unicode/macro.lua | 321 |
1 files changed, 321 insertions, 0 deletions
diff --git a/spec/outputs/unicode/macro.lua b/spec/outputs/unicode/macro.lua new file mode 100644 index 0000000..2ae5dce --- /dev/null +++ b/spec/outputs/unicode/macro.lua | |||
| @@ -0,0 +1,321 @@ | |||
| 1 | assert(_u5bf9_u8c61 == nil) | ||
| 2 | local _u7ed3_u679c = (_u5bf9_u8c61 == nil) | ||
| 3 | if _u51fd_u65701() then | ||
| 4 | _u6253_u5370("没问题") | ||
| 5 | end | ||
| 6 | if (_u51fd_u65701() and _u51fd_u65702() and _u51fd_u65703()) then | ||
| 7 | _u6253_u5370("没问题") | ||
| 8 | end | ||
| 9 | local _u5bf9_u8c61 | ||
| 10 | do | ||
| 11 | local __u6e90_, __u76ee_u6807_ | ||
| 12 | do | ||
| 13 | __u76ee_u6807_ = { | ||
| 14 | ["位置"] = { }, | ||
| 15 | ["标签"] = (function() | ||
| 16 | local _call_0 = _u6807_u7b7e | ||
| 17 | return _call_0["转数字"](_call_0) | ||
| 18 | end)() | ||
| 19 | } | ||
| 20 | do | ||
| 21 | __u6e90_ = self | ||
| 22 | __u76ee_u6807_["标识"] = __u6e90_["标识"] | ||
| 23 | __u76ee_u6807_["连接们"] = __u6e90_["连接们"] | ||
| 24 | __u76ee_u6807_["位置"]["x坐标"] = __u6e90_["位置"]["x坐标"] | ||
| 25 | __u76ee_u6807_["位置"]["y坐标"] = __u6e90_["位置"]["y坐标"] | ||
| 26 | __u76ee_u6807_["位置"]["z坐标"] = __u6e90_["位置"]["z坐标"] | ||
| 27 | end | ||
| 28 | _u5bf9_u8c61 = __u76ee_u6807_ | ||
| 29 | end | ||
| 30 | end | ||
| 31 | if (_u53d8_u91cfx == "🍎" or _u53d8_u91cfx == "🐷" or _u53d8_u91cfx == "🐶") then | ||
| 32 | _u6253_u5370("存在") | ||
| 33 | end | ||
| 34 | local _list_0 = (function() | ||
| 35 | local _accum_0 = { } | ||
| 36 | local _len_0 = 1 | ||
| 37 | local _list_0 = (function() | ||
| 38 | local _accum_1 = { } | ||
| 39 | local _len_1 = 1 | ||
| 40 | local _list_0 = { | ||
| 41 | 1, | ||
| 42 | 2, | ||
| 43 | 3 | ||
| 44 | } | ||
| 45 | for _index_0 = 1, #_list_0 do | ||
| 46 | local _ = _list_0[_index_0] | ||
| 47 | _accum_1[_len_1] = _ * 2 | ||
| 48 | _len_1 = _len_1 + 1 | ||
| 49 | end | ||
| 50 | return _accum_1 | ||
| 51 | end)() | ||
| 52 | for _index_0 = 1, #_list_0 do | ||
| 53 | local _ = _list_0[_index_0] | ||
| 54 | if _ > 4 then | ||
| 55 | _accum_0[_len_0] = _ | ||
| 56 | _len_0 = _len_0 + 1 | ||
| 57 | end | ||
| 58 | end | ||
| 59 | return _accum_0 | ||
| 60 | end)() | ||
| 61 | for _index_0 = 1, #_list_0 do | ||
| 62 | local _ = _list_0[_index_0] | ||
| 63 | _u6253_u5370(_) | ||
| 64 | end | ||
| 65 | local _list_1 = (function() | ||
| 66 | local _accum_0 = { } | ||
| 67 | local _len_0 = 1 | ||
| 68 | local _list_1 = (function() | ||
| 69 | local _accum_1 = { } | ||
| 70 | local _len_1 = 1 | ||
| 71 | local _list_1 = { | ||
| 72 | 1, | ||
| 73 | 2, | ||
| 74 | 3 | ||
| 75 | } | ||
| 76 | for _index_0 = 1, #_list_1 do | ||
| 77 | local _ = _list_1[_index_0] | ||
| 78 | _accum_1[_len_1] = _ * 2 | ||
| 79 | _len_1 = _len_1 + 1 | ||
| 80 | end | ||
| 81 | return _accum_1 | ||
| 82 | end)() | ||
| 83 | for _index_0 = 1, #_list_1 do | ||
| 84 | local _ = _list_1[_index_0] | ||
| 85 | if _ > 4 then | ||
| 86 | _accum_0[_len_0] = _ | ||
| 87 | _len_0 = _len_0 + 1 | ||
| 88 | end | ||
| 89 | end | ||
| 90 | return _accum_0 | ||
| 91 | end)() | ||
| 92 | for _index_0 = 1, #_list_1 do | ||
| 93 | local _ = _list_1[_index_0] | ||
| 94 | _u6253_u5370(_) | ||
| 95 | end | ||
| 96 | local _u503c | ||
| 97 | do | ||
| 98 | local _2 | ||
| 99 | do | ||
| 100 | local _accum_0 = { } | ||
| 101 | local _len_0 = 1 | ||
| 102 | local _list_2 = { | ||
| 103 | 1, | ||
| 104 | 2, | ||
| 105 | 3 | ||
| 106 | } | ||
| 107 | for _index_0 = 1, #_list_2 do | ||
| 108 | local _ = _list_2[_index_0] | ||
| 109 | _accum_0[_len_0] = _ * 2 | ||
| 110 | _len_0 = _len_0 + 1 | ||
| 111 | end | ||
| 112 | _2 = _accum_0 | ||
| 113 | end | ||
| 114 | local _3 | ||
| 115 | do | ||
| 116 | local _accum_0 = { } | ||
| 117 | local _len_0 = 1 | ||
| 118 | for _index_0 = 1, #_2 do | ||
| 119 | local _ = _2[_index_0] | ||
| 120 | if _ > 4 then | ||
| 121 | _accum_0[_len_0] = _ | ||
| 122 | _len_0 = _len_0 + 1 | ||
| 123 | end | ||
| 124 | end | ||
| 125 | _3 = _accum_0 | ||
| 126 | end | ||
| 127 | local _4 | ||
| 128 | if #_3 == 0 then | ||
| 129 | _4 = 0 | ||
| 130 | else | ||
| 131 | local _1 = 0 | ||
| 132 | for _index_0 = 1, #_3 do | ||
| 133 | local _2 = _3[_index_0] | ||
| 134 | _1 = _1 + _2 | ||
| 135 | end | ||
| 136 | _4 = _1 | ||
| 137 | end | ||
| 138 | _u503c = _4 | ||
| 139 | end | ||
| 140 | local _call_0 = (1 + 2) | ||
| 141 | _call_0["调用"](_call_0, 123) | ||
| 142 | _u7ed3_u679c = (1 + 2) | ||
| 143 | local f | ||
| 144 | f = function(_u53c2_u6570x) | ||
| 145 | return function(_u53c2_u6570y) | ||
| 146 | return function(_u53c2_u6570z) | ||
| 147 | return _u6253_u5370(_u53c2_u6570x, _u53c2_u6570y, _u53c2_u6570z) | ||
| 148 | end | ||
| 149 | end | ||
| 150 | end | ||
| 151 | do | ||
| 152 | local _u53d8_u91cfa = 8 | ||
| 153 | do | ||
| 154 | _u53d8_u91cfa = 1 | ||
| 155 | _u53d8_u91cfa = _u53d8_u91cfa + 1 | ||
| 156 | end | ||
| 157 | _u53d8_u91cfa = _u53d8_u91cfa + (function() | ||
| 158 | _u53d8_u91cfa = 1 | ||
| 159 | return _u53d8_u91cfa + 1 | ||
| 160 | end)() | ||
| 161 | _u6253_u5370(_u53d8_u91cfa) | ||
| 162 | end | ||
| 163 | do | ||
| 164 | local _u53d8_u91cfa = 8 | ||
| 165 | _u53d8_u91cfa = (function() | ||
| 166 | local _u53d8_u91cfa | ||
| 167 | _u53d8_u91cfa = 1 | ||
| 168 | return _u53d8_u91cfa + 1 | ||
| 169 | end)() | ||
| 170 | _u53d8_u91cfa = _u53d8_u91cfa + (function() | ||
| 171 | local _u53d8_u91cfa | ||
| 172 | _u53d8_u91cfa = 1 | ||
| 173 | return _u53d8_u91cfa + 1 | ||
| 174 | end)() | ||
| 175 | _u6253_u5370(_u53d8_u91cfa) | ||
| 176 | end | ||
| 177 | local _u53d8_u91cfx = 0 | ||
| 178 | local function f(a) | ||
| 179 | return a + 1 | ||
| 180 | end | ||
| 181 | x = x + f(3) | ||
| 182 | function tb:func() | ||
| 183 | print(123) | ||
| 184 | end | ||
| 185 | _u6253_u5370(_u53d8_u91cfx) | ||
| 186 | local sel | ||
| 187 | sel = function(_u53c2_u6570a, _u53c2_u6570b, _u53c2_u6570c) | ||
| 188 | if _u53c2_u6570a then | ||
| 189 | return _u53c2_u6570b | ||
| 190 | else | ||
| 191 | return _u53c2_u6570c | ||
| 192 | end | ||
| 193 | end | ||
| 194 | local function sel(a, b, c) | ||
| 195 | if a then | ||
| 196 | return b | ||
| 197 | else | ||
| 198 | return c | ||
| 199 | end | ||
| 200 | end | ||
| 201 | local function dummy() | ||
| 202 | |||
| 203 | end | ||
| 204 | -- 这有个注释 | ||
| 205 | local _ = require('下划线') | ||
| 206 | local _call_1 = (_({ | ||
| 207 | 1, | ||
| 208 | 2, | ||
| 209 | 3, | ||
| 210 | 4, | ||
| 211 | -2, | ||
| 212 | 3 | ||
| 213 | })) | ||
| 214 | _call_1 = _call_1["链"](_call_1, _call_1, _call_1, _call_1, _call_1, _call_1, _call_1, _call_1) | ||
| 215 | _call_1 = _call_1["映射"](_call_1, _call_1, _call_1, _call_1, function(self) | ||
| 216 | return self * 2 | ||
| 217 | end) | ||
| 218 | _call_1 = _call_1["过滤"](_call_1, _call_1, function(self) | ||
| 219 | return self > 3 | ||
| 220 | end) | ||
| 221 | local _u7ed3_u679ca = _call_1["取值"](_call_1) | ||
| 222 | local _call_2 = (_({ | ||
| 223 | 1, | ||
| 224 | 2, | ||
| 225 | 3, | ||
| 226 | 4, | ||
| 227 | -2, | ||
| 228 | 3 | ||
| 229 | })) | ||
| 230 | _call_2 = _call_2["链"](_call_2, _call_2, _call_2, _call_2, _call_2, _call_2, _call_2, _call_2) | ||
| 231 | _call_2 = _call_2["映射"](_call_2, _call_2, _call_2, _call_2, function(self) | ||
| 232 | return self * 2 | ||
| 233 | end) | ||
| 234 | _call_2 = _call_2["过滤"](_call_2, _call_2, function(self) | ||
| 235 | return self > 3 | ||
| 236 | end) | ||
| 237 | _call_2["每一个"](_call_2, function(self) | ||
| 238 | return _u6253_u5370(self) | ||
| 239 | end) | ||
| 240 | local _call_3 = _u539f_u70b9["变换"]["根节点"]["游戏对象"] | ||
| 241 | _call_3 = _call_3["父节点"](_call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3) | ||
| 242 | _call_3 = _call_3["后代"](_call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3) | ||
| 243 | _call_3 = _call_3["选择启用"](_call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3) | ||
| 244 | _call_3 = _call_3["选择可见"](_call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3, _call_3) | ||
| 245 | _call_3 = _call_3["标签等于"](_call_3, _call_3, _call_3, _call_3, "fx") | ||
| 246 | _call_3 = _call_3["其中"](_call_3, _call_3, function(x) | ||
| 247 | local _call_4 = x["名称"] | ||
| 248 | return _call_4["结尾为"](_call_4, _call_4, "(克隆)") | ||
| 249 | end) | ||
| 250 | _u7ed3_u679c = _call_3["摧毁"](_call_3) | ||
| 251 | do | ||
| 252 | local _1 | ||
| 253 | local _call_4 = _u539f_u70b9["变换"]["根节点"]["游戏对象"] | ||
| 254 | _1 = _call_4["父节点"](_call_4) | ||
| 255 | local _2 | ||
| 256 | _2 = _1["后代"](_1) | ||
| 257 | local _3 | ||
| 258 | _3 = _2["选择启用"](_2) | ||
| 259 | local _4 | ||
| 260 | _4 = _3["选择可见"](_3) | ||
| 261 | local _5 | ||
| 262 | _5 = _4["标签等于"](_4, "fx") | ||
| 263 | local _6 | ||
| 264 | _6 = _5["其中"](_5, function(x) | ||
| 265 | local _call_5 = x["名称"] | ||
| 266 | return _call_5["结尾为"](_call_5, "(克隆)") | ||
| 267 | end) | ||
| 268 | _6["摧毁"](_6) | ||
| 269 | end | ||
| 270 | local _call_0 = _u539f_u70b9["变换"]["根节点"]["游戏对象"] | ||
| 271 | _call_0["父节点"](_call_0):_u540e_u4ee3():_u9009_u62e9_u542f_u7528():_u9009_u62e9_u53ef_u89c1():_u6807_u7b7e_u7b49_u4e8e("fx"):_u5176_u4e2d(function(x) | ||
| 272 | local _call_0 = x["名称"] | ||
| 273 | return _call_0["结尾为"](_call_0, "(克隆)") | ||
| 274 | end):_u6467_u6bc1() | ||
| 275 | _u6253_u5370((setmetatable({ | ||
| 276 | 'abc', | ||
| 277 | ["字段a"] = 123, | ||
| 278 | }, { | ||
| 279 | __call = function(self) | ||
| 280 | return 998 | ||
| 281 | end | ||
| 282 | }))[1], (setmetatable({ | ||
| 283 | 'abc', | ||
| 284 | ["字段a"] = 123, | ||
| 285 | }, { | ||
| 286 | __call = function(self) | ||
| 287 | return 998 | ||
| 288 | end | ||
| 289 | }))["字段a"], (setmetatable({ | ||
| 290 | 'abc', | ||
| 291 | ["字段a"] = 123, | ||
| 292 | }, { | ||
| 293 | __call = function(self) | ||
| 294 | return 998 | ||
| 295 | end | ||
| 296 | }))(), setmetatable({ | ||
| 297 | 'abc', | ||
| 298 | ["字段a"] = 123, | ||
| 299 | }, { | ||
| 300 | __call = function(self) | ||
| 301 | return 998 | ||
| 302 | end | ||
| 303 | })) | ||
| 304 | _u6253_u5370("当前代码行数: " .. tostring(268)) | ||
| 305 | -- 待实现 | ||
| 306 | do | ||
| 307 | _u6253_u5370(1) | ||
| 308 | end | ||
| 309 | local _1 | ||
| 310 | _1 = function() | ||
| 311 | _u6253_u5370(1) | ||
| 312 | local _accum_0 = { } | ||
| 313 | local _len_0 = 1 | ||
| 314 | while false do | ||
| 315 | break | ||
| 316 | _len_0 = _len_0 + 1 | ||
| 317 | end | ||
| 318 | return _accum_0 | ||
| 319 | end | ||
| 320 | _u6253_u5370('abc') | ||
| 321 | return 123 | ||
