blob: 8c0a738899c933691f475e20ed993c576d9f2760 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
|
-- START OF SOURCE --
if foo then foo=1 end
if foo then foo=1 else foo=0 end
if foo then foo=1 elseif not foo then foo=0 end
-- END OF SOURCE --
-- TOP: begin
open_func
chunk:
-- STATEMENT: begin 'if' line=1
if_stat: if...then
test_then_block: test condition
cond: begin
expr:
prefixexp: <name>
str_checkname: 'foo'
singlevar: name='foo'
cond: end
test_then_block: then block
block: begin
enterblock(isbreakable=false)
chunk:
-- STATEMENT: begin 'expr' line=1
prefixexp: <name>
str_checkname: 'foo'
singlevar: name='foo'
expr_stat: assignment k='VLOCAL'
assignment: '=' -- RHS elements follows
explist1: begin
expr:
simpleexp: <number>=1
explist1: end
-- STATEMENT: end 'expr'
leaveblock
block: end
if_stat: end
-- STATEMENT: end 'if'
-- STATEMENT: begin 'if' line=2
if_stat: if...then
test_then_block: test condition
cond: begin
expr:
prefixexp: <name>
str_checkname: 'foo'
singlevar: name='foo'
cond: end
test_then_block: then block
block: begin
enterblock(isbreakable=false)
chunk:
-- STATEMENT: begin 'expr' line=2
prefixexp: <name>
str_checkname: 'foo'
singlevar: name='foo'
expr_stat: assignment k='VLOCAL'
assignment: '=' -- RHS elements follows
explist1: begin
expr:
simpleexp: <number>=1
explist1: end
-- STATEMENT: end 'expr'
leaveblock
block: end
if_stat: else...
block: begin
enterblock(isbreakable=false)
chunk:
-- STATEMENT: begin 'expr' line=2
prefixexp: <name>
str_checkname: 'foo'
singlevar: name='foo'
expr_stat: assignment k='VLOCAL'
assignment: '=' -- RHS elements follows
explist1: begin
expr:
simpleexp: <number>=0
explist1: end
-- STATEMENT: end 'expr'
leaveblock
block: end
if_stat: end
-- STATEMENT: end 'if'
-- STATEMENT: begin 'if' line=3
if_stat: if...then
test_then_block: test condition
cond: begin
expr:
prefixexp: <name>
str_checkname: 'foo'
singlevar: name='foo'
cond: end
test_then_block: then block
block: begin
enterblock(isbreakable=false)
chunk:
-- STATEMENT: begin 'expr' line=3
prefixexp: <name>
str_checkname: 'foo'
singlevar: name='foo'
expr_stat: assignment k='VLOCAL'
assignment: '=' -- RHS elements follows
explist1: begin
expr:
simpleexp: <number>=1
explist1: end
-- STATEMENT: end 'expr'
leaveblock
block: end
if_stat: elseif...then
test_then_block: test condition
cond: begin
expr:
subexpr: uop='not'
prefixexp: <name>
str_checkname: 'foo'
singlevar: name='foo'
cond: end
test_then_block: then block
block: begin
enterblock(isbreakable=false)
chunk:
-- STATEMENT: begin 'expr' line=3
prefixexp: <name>
str_checkname: 'foo'
singlevar: name='foo'
expr_stat: assignment k='VLOCAL'
assignment: '=' -- RHS elements follows
explist1: begin
expr:
simpleexp: <number>=0
explist1: end
-- STATEMENT: end 'expr'
leaveblock
block: end
if_stat: end
-- STATEMENT: end 'if'
close_func
-- TOP: end
|