diff options
Diffstat (limited to 'spec/inputs/unicode/syntax.yue')
-rw-r--r-- | spec/inputs/unicode/syntax.yue | 448 |
1 files changed, 448 insertions, 0 deletions
diff --git a/spec/inputs/unicode/syntax.yue b/spec/inputs/unicode/syntax.yue new file mode 100644 index 0000000..f382688 --- /dev/null +++ b/spec/inputs/unicode/syntax.yue | |||
@@ -0,0 +1,448 @@ | |||
1 | #!/this/is/ignored | ||
2 | |||
3 | 变量a = 1 + 2 * 3 / 6 | ||
4 | |||
5 | 变量a, 一堆, 去, 这里 = 另外, 世界, nil, nil | ||
6 | |||
7 | 函数 参数1, 参数2, 另外, 参数3 | ||
8 | |||
9 | 这里, 我们 = () ->, 是的 | ||
10 | 这个, 不同 = () -> 方法; 是的 | ||
11 | |||
12 | 爸爸() | ||
13 | 爸爸(主) | ||
14 | 你好(一,二)() | ||
15 | (5 + 5)(世界) | ||
16 | |||
17 | 乐趣(变量a)(变量b) | ||
18 | |||
19 | 乐趣(变量a) 变量b | ||
20 | |||
21 | 乐趣(变量a) 变量b, 坏 你好 | ||
22 | |||
23 | 你好 世界 你在这里做什么 | ||
24 | |||
25 | 什么(这个)[3243] 世界, 哎呀 | ||
26 | |||
27 | 毛茸茸[手][是](恶心) 好的 好的[世界] | ||
28 | |||
29 | _ = (得到[某事] + 5)[年] | ||
30 | |||
31 | 变量i,变量x = 200, 300 | ||
32 | |||
33 | 是的 = (1 + 5) * 3 | ||
34 | 是的 = ((1+5)*3)/2 | ||
35 | 是的 = ((1+5)*3)/2 + 变量i % 100 | ||
36 | |||
37 | 哇 = (1+2) * (3+4) * (4+5) | ||
38 | |||
39 | _ = -> | ||
40 | if 某事 | ||
41 | return 1,2,4 | ||
42 | |||
43 | 打印 "你好" | ||
44 | |||
45 | _ = -> | ||
46 | if 你好 | ||
47 | "你好", "世界" | ||
48 | else | ||
49 | 不, 方法 | ||
50 | |||
51 | |||
52 | _ = -> 1,2,34 | ||
53 | |||
54 | return 5 + () -> 4 + 2 | ||
55 | |||
56 | return 5 + (() -> 4) + 2 | ||
57 | |||
58 | 打印 5 + () -> | ||
59 | _ = 34 | ||
60 | 好 球 | ||
61 | |||
62 | 某事 '其他', "是" | ||
63 | |||
64 | 某事'其他' | ||
65 | 某事"其他" | ||
66 | |||
67 | _ = 某事[[嘿]] * 2 | ||
68 | _ = 某事[======[嘿]======] * 2 | ||
69 | _ = 某事[ [======[嘿]======] ] * 2 | ||
70 | |||
71 | _, _ = 某事'其他', 2 | ||
72 | _, _ = 某事"其他", 2 | ||
73 | _, _ = 某事[[其他]], 2 | ||
74 | _, _ = 某事[ [[其他]] ], 2 | ||
75 | |||
76 | 某事 '其他', 2 | ||
77 | 某事 "其他", 2 | ||
78 | 某事 [[其他]], 2 | ||
79 | |||
80 | _ = 这里(我们)"去"[12123] | ||
81 | |||
82 | 分裂"abc xyz 123"\映射"#"\打印全部! | ||
83 | |||
84 | _ = f""[变量a] | ||
85 | _ = f""\变量b! | ||
86 | _ = f"".变量c! | ||
87 | |||
88 | f ""[变量a] | ||
89 | f ""\变量b! | ||
90 | f "".变量c! | ||
91 | |||
92 | 列表{"abc", "xyz", "123"}\映射"#"\打印全部! | ||
93 | |||
94 | _ = f{}[变量a] | ||
95 | _ = f{}\变量b! | ||
96 | _ = f{}.变量c! | ||
97 | |||
98 | 某事 = | ||
99 | 测试: 12323 | ||
100 | 什么: -> 打印 "你好 世界" | ||
101 | |||
102 | 打印 某事.测试 | ||
103 | |||
104 | 天哪 = 你好: "世界" | ||
105 | |||
106 | 氩 = | ||
107 | 数字: 100 | ||
108 | 世界: (自己) -> | ||
109 | 打印 自己.数字 | ||
110 | return { | ||
111 | 某事: -> 打印 "嗨 从某事" | ||
112 | } | ||
113 | 某事: (自己, 字符串) -> | ||
114 | 打印 "字符串是", 字符串 | ||
115 | return 世界: (变量a,变量b) -> 打印 "总和", 变量a + 变量b | ||
116 | |||
117 | 某事.什么() | ||
118 | 氩\世界().某事() | ||
119 | |||
120 | 氩\某事"200".世界(1,2) | ||
121 | |||
122 | 变量x = -434 | ||
123 | |||
124 | 变量x = -你好 世界 一 二 | ||
125 | |||
126 | 嗨 = -"herfef" | ||
127 | |||
128 | 变量x = -[变量x for 变量x in 变量x] | ||
129 | |||
130 | 打印 "你好" if 酷 | ||
131 | 打印 "你好" unless 酷 | ||
132 | 打印 "你好" unless 1212 and 3434 | ||
133 | 打印 "你好" for i=1,10 | ||
134 | |||
135 | 打印 "疯子" | ||
136 | |||
137 | if 你好 then _ = 343 | ||
138 | |||
139 | 打印 "什么" if 酷 | ||
140 | |||
141 | 阅读者\解析_行! until 阅读者\结束! | ||
142 | |||
143 | 阅读者\解析_行! while not 阅读者\结束! | ||
144 | |||
145 | ((...)-> 参数 = {...})! | ||
146 | |||
147 | 变量x = (...) -> | ||
148 | dump {...} | ||
149 | |||
150 | 变量x = not true | ||
151 | |||
152 | 变量y = not(5+5) | ||
153 | |||
154 | 变量y = #"你好" | ||
155 | |||
156 | 变量x = #{#{},#{1},#{1,2}} | ||
157 | |||
158 | _, _ = 你好, 世界 | ||
159 | |||
160 | 某事\你好(什么) 变量a,变量b | ||
161 | 某事\你好 什么 | ||
162 | 某事.你好\世界 变量a,变量b | ||
163 | 某事.你好\世界(1,2,3) 变量a,变量b | ||
164 | |||
165 | 变量x = 1232 | ||
166 | 变量x += 10 + 3 | ||
167 | 变量j -= "你好" | ||
168 | 变量y *= 2 | ||
169 | 变量y /= 100 | ||
170 | 变量y //= 100 | ||
171 | 变量m %= 2 | ||
172 | 你好 ..= "世界" | ||
173 | |||
174 | @@某事 += 10 | ||
175 | @某事 += 10 | ||
176 | |||
177 | 变量a["你好"] += 10 | ||
178 | 变量a["你好#{tostring ff}"] += 10 | ||
179 | 变量a[四].字段x += 10 | ||
180 | |||
181 | 变量a.变量b += 1 | ||
182 | 变量a.变量b[1].变量c[2 + 3] += 1 | ||
183 | with 表 | ||
184 | .字段a.变量c += 1 | ||
185 | |||
186 | 表[] = 10 | ||
187 | 变量a.变量b.变量c[] = 1 | ||
188 | 变量x[] = if 条件v | ||
189 | 1 | ||
190 | else | ||
191 | 2 | ||
192 | with 表 | ||
193 | .变量b.变量c[] = with 向量 | ||
194 | .字段x = 1 | ||
195 | .字段y = 2 | ||
196 | 对象a | ||
197 | .变量b.变量c | ||
198 | .变量d\函数! | ||
199 | .变量g[] = 1 | ||
200 | |||
201 | 表 = {} | ||
202 | 表[] = 1 | ||
203 | 表[] = 2 | ||
204 | 表[] = 3 | ||
205 | |||
206 | 变量x = 0 | ||
207 | _ = (if ntype(变量v) == "函数定义" then 变量x + 1) for 变量v in *值 | ||
208 | |||
209 | 你好 = | ||
210 | 某物: 世界 | ||
211 | 如果: "你好" | ||
212 | 否则: 3434 | ||
213 | 函数: "好的" | ||
214 | 好的: 230203 | ||
215 | |||
216 | 表 = { | ||
217 | 执行: 变量b | ||
218 | 执行 :变量b | ||
219 | } | ||
220 | |||
221 | div 类: "酷" | ||
222 | |||
223 | _ = 5 + 什么 无聊 | ||
224 | 什么 无聊 + 5 | ||
225 | |||
226 | _ = 5 - 什么 无聊 | ||
227 | 什么 无聊 - 5 | ||
228 | |||
229 | 变量x = 你好 - 世界 - 某物 | ||
230 | |||
231 | ((某物 = 与 什么 | ||
232 | \酷 100) -> | ||
233 | 打印 某物)! | ||
234 | |||
235 | if 某物 | ||
236 | _ = 03589 | ||
237 | |||
238 | -- 好的 什么 关于这个 | ||
239 | |||
240 | else | ||
241 | _ = 3434 | ||
242 | |||
243 | if 某物 | ||
244 | _ = 是的 | ||
245 | |||
246 | elseif "嗯嗯嗯" | ||
247 | |||
248 | 打印 "酷" | ||
249 | |||
250 | else | ||
251 | |||
252 | _ = 好的 | ||
253 | |||
254 | -- 测试名字包含关键词 | ||
255 | 变量x = 不是某物 | ||
256 | 变量y = 如果某物 | ||
257 | 变量z = 变量x 与 变量b | ||
258 | 变量z = 变量x 与b | ||
259 | |||
260 | while 10 > 某物( | ||
261 | 某物: "世界" | ||
262 | ) | ||
263 | 打印 "是的" | ||
264 | |||
265 | -- 无界表 | ||
266 | |||
267 | 变量x = | ||
268 | 好的: 确定 | ||
269 | |||
270 | 是的 | ||
271 | 好的: 男人 | ||
272 | 确定: 先生 | ||
273 | |||
274 | 你好 "无逗号" | ||
275 | 是的: 爸爸 | ||
276 | 另一个: 世界 | ||
277 | |||
278 | 你好 "逗号", | ||
279 | 某物: 你好_世界 | ||
280 | 骂人: 你 | ||
281 | |||
282 | -- 创建一个表 | ||
283 | 另一个 你好, 一个, | ||
284 | 二, 三, 四, 是的: 男人 | ||
285 | 好的: 是的 | ||
286 | 好: 好的 | ||
287 | |||
288 | 另一个 你好, 一个, | ||
289 | 二, 三, 四, | ||
290 | 是的: 男人, 好的: 是的 | ||
291 | * 好: 好的, | ||
292 | 好的: 1 | ||
293 | * 好: 好的, | ||
294 | 好的: 2 | ||
295 | |||
296 | 另一个 你好, 一个, 二, 三, 四, | ||
297 | 是的: 男人 | ||
298 | 好的: 是的 | ||
299 | |||
300 | 另一个 你好, 一个, 二, 三, 四, 是的: 男人 | ||
301 | 好的: 是的 | ||
302 | |||
303 | 阿贾克斯 地址, | ||
304 | (数据) -> | ||
305 | 处理 数据, | ||
306 | (错误) -> | ||
307 | 打印 错误 | ||
308 | |||
309 | -- | ||
310 | 变量a += 3 - 5 | ||
311 | 变量a *= 3 + 5 | ||
312 | 变量a *= 3 | ||
313 | 变量a >>= 3 | ||
314 | 变量a <<= 3 | ||
315 | 变量a /= 函数 "酷" | ||
316 | |||
317 | --- | ||
318 | |||
319 | 变量x.然后 = "你好" | ||
320 | 变量x.当.真 = "你好" | ||
321 | 变量x | ||
322 | .当 | ||
323 | .真 = "你好" | ||
324 | |||
325 | -- | ||
326 | |||
327 | 变量x or= "你好" | ||
328 | 变量x and= "你好" | ||
329 | |||
330 | -- | ||
331 | |||
332 | 变量z = 变量a-变量b | ||
333 | 变量z = 变量a -变量b | ||
334 | 变量z = 变量a - 变量b | ||
335 | 变量z = 变量a- 变量b | ||
336 | |||
337 | -- 酷 | ||
338 | |||
339 | 字符串 = --[[ | ||
340 | 这是一个多行注释。 | ||
341 | 没问题。 | ||
342 | ]] 字符串A \ -- 注释 1 | ||
343 | .. 字符串B \ -- 注释 2 | ||
344 | .. 字符串C | ||
345 | |||
346 | 函数 --[[端口]] 3000, --[[ip]] "192.168.1.1" | ||
347 | |||
348 | f = -> | ||
349 | 变量a,变量b, \ | ||
350 | 变量c,变量d, \ | ||
351 | 变量e,变量f | ||
352 | |||
353 | f = -> | ||
354 | 变量a,变量b \ | ||
355 | ,变量c,变量d \ | ||
356 | ,变量e,变量f | ||
357 | |||
358 | with 对象 | ||
359 | 调用( | ||
360 | --[[参数1]] \函数!, | ||
361 | --[[参数2]] 123, | ||
362 | --[[参数3]] "abc" | ||
363 | ) | ||
364 | |||
365 | 调用A( | ||
366 | 调用B( | ||
367 | 调用C 123 | ||
368 | ) | ||
369 | ) | ||
370 | |||
371 | 123 | ||
372 | |> 调用C | ||
373 | |> 调用B | ||
374 | |> 调用A | ||
375 | |||
376 | 变量v = { | ||
377 | 变量a -1 | ||
378 | 变量a( | ||
379 | -1) | ||
380 | 变量a \ | ||
381 | - 1 | ||
382 | 变量a-1 | ||
383 | 变量a - 1 | ||
384 | 变量a - | ||
385 | 1 | ||
386 | 变量a- | ||
387 | 1 | ||
388 | 变量a - --[[123]]1 | ||
389 | |||
390 | 变量a ~1 | ||
391 | 变量a( | ||
392 | ~1) | ||
393 | 变量a \ | ||
394 | ~ 1 | ||
395 | 变量a~1 | ||
396 | 变量a ~ 1 | ||
397 | 变量a ~ | ||
398 | 1 | ||
399 | 变量a~ | ||
400 | 1 | ||
401 | 变量a ~ --[[123]]1 | ||
402 | } | ||
403 | |||
404 | do | ||
405 | 变量a = 1 \ | ||
406 | + 2 \ | ||
407 | * 3 / | ||
408 | 4 | ||
409 | |||
410 | 变量_1 = f1 -1 \ | ||
411 | + 2 \ | ||
412 | + 3 | ||
413 | |||
414 | 变量_2 = f1 - 1 \ | ||
415 | + 2 \ | ||
416 | + 3 | ||
417 | |||
418 | f2 = (变量x)-> 打印 变量x \ | ||
419 | +1 | ||
420 | |||
421 | 变量a = f2! | ||
422 | -1 |> f2 | ||
423 | |||
424 | 变量a = f2! \ | ||
425 | - 1 |> f2 | ||
426 | |||
427 | 变量_1 \ | ||
428 | ,变量_2 \ | ||
429 | ,变量_3 \ | ||
430 | ,变量_4 = 1 \ | ||
431 | ,f 2 \ | ||
432 | ,3 \ | ||
433 | ,f 4, \ | ||
434 | 4 | ||
435 | |||
436 | do | ||
437 | f = ( | ||
438 | 变量a -- 参数a | ||
439 | 变量b -- 参数b | ||
440 | )-> 变量a + 变量b | ||
441 | f( | ||
442 | 变量a -- 值a | ||
443 | 变量b -- 值b | ||
444 | ) | ||
445 | f ! | ||
446 | |||
447 | nil | ||
448 | |||