diff options
Diffstat (limited to 'LuaSL/testLua/yueliang-0.4.1/nat-5.0.3/test/parser_log/sample_09.lua')
-rw-r--r-- | LuaSL/testLua/yueliang-0.4.1/nat-5.0.3/test/parser_log/sample_09.lua | 97 |
1 files changed, 97 insertions, 0 deletions
diff --git a/LuaSL/testLua/yueliang-0.4.1/nat-5.0.3/test/parser_log/sample_09.lua b/LuaSL/testLua/yueliang-0.4.1/nat-5.0.3/test/parser_log/sample_09.lua new file mode 100644 index 0000000..2236388 --- /dev/null +++ b/LuaSL/testLua/yueliang-0.4.1/nat-5.0.3/test/parser_log/sample_09.lua | |||
@@ -0,0 +1,97 @@ | |||
1 | -- START OF SOURCE -- | ||
2 | while true do foo=not foo end | ||
3 | while foo~=42 do foo=foo-1 end | ||
4 | while true do break end | ||
5 | -- END OF SOURCE -- | ||
6 | |||
7 | -- TOP: begin | ||
8 | open_func | ||
9 | |||
10 | chunk: | ||
11 | -- STATEMENT: begin 'while' line=1 | ||
12 | while_stat: begin/condition | ||
13 | expr: | ||
14 | simpleexp: true | ||
15 | enterblock(isbreakable=true) | ||
16 | while_stat: block | ||
17 | block: begin | ||
18 | enterblock(isbreakable=false) | ||
19 | chunk: | ||
20 | -- STATEMENT: begin 'expr' line=1 | ||
21 | prefixexp: <name> | ||
22 | str_checkname: 'foo' | ||
23 | singlevar: name='foo' | ||
24 | expr_stat: assignment k='VLOCAL' | ||
25 | assignment: '=' -- RHS elements follows | ||
26 | explist1: begin | ||
27 | expr: | ||
28 | subexpr: uop='not' | ||
29 | prefixexp: <name> | ||
30 | str_checkname: 'foo' | ||
31 | singlevar: name='foo' | ||
32 | explist1: end | ||
33 | -- STATEMENT: end 'expr' | ||
34 | |||
35 | leaveblock | ||
36 | block: end | ||
37 | leaveblock | ||
38 | while_stat: end | ||
39 | -- STATEMENT: end 'while' | ||
40 | |||
41 | -- STATEMENT: begin 'while' line=2 | ||
42 | while_stat: begin/condition | ||
43 | expr: | ||
44 | prefixexp: <name> | ||
45 | str_checkname: 'foo' | ||
46 | singlevar: name='foo' | ||
47 | subexpr: binop='~=' | ||
48 | simpleexp: <number>=42 | ||
49 | subexpr: -- evaluate | ||
50 | enterblock(isbreakable=true) | ||
51 | while_stat: block | ||
52 | block: begin | ||
53 | enterblock(isbreakable=false) | ||
54 | chunk: | ||
55 | -- STATEMENT: begin 'expr' line=2 | ||
56 | prefixexp: <name> | ||
57 | str_checkname: 'foo' | ||
58 | singlevar: name='foo' | ||
59 | expr_stat: assignment k='VLOCAL' | ||
60 | assignment: '=' -- RHS elements follows | ||
61 | explist1: begin | ||
62 | expr: | ||
63 | prefixexp: <name> | ||
64 | str_checkname: 'foo' | ||
65 | singlevar: name='foo' | ||
66 | subexpr: binop='-' | ||
67 | simpleexp: <number>=1 | ||
68 | subexpr: -- evaluate | ||
69 | explist1: end | ||
70 | -- STATEMENT: end 'expr' | ||
71 | |||
72 | leaveblock | ||
73 | block: end | ||
74 | leaveblock | ||
75 | while_stat: end | ||
76 | -- STATEMENT: end 'while' | ||
77 | |||
78 | -- STATEMENT: begin 'while' line=3 | ||
79 | while_stat: begin/condition | ||
80 | expr: | ||
81 | simpleexp: true | ||
82 | enterblock(isbreakable=true) | ||
83 | while_stat: block | ||
84 | block: begin | ||
85 | enterblock(isbreakable=false) | ||
86 | chunk: | ||
87 | -- STATEMENT: begin 'break' line=3 | ||
88 | break_stat: -- break out of loop | ||
89 | -- STATEMENT: end 'break' | ||
90 | leaveblock | ||
91 | block: end | ||
92 | leaveblock | ||
93 | while_stat: end | ||
94 | -- STATEMENT: end 'while' | ||
95 | |||
96 | close_func | ||
97 | -- TOP: end | ||