Lines Matching refs:ps

68     while (ps.p_stack[ps.tos] == ifhead && tk != elselit) {  in parse()
70 ps.p_stack[ps.tos] = stmt; /* apply the if(..) stmt ::= stmt in parse()
80 ps.search_brace = opt.btype_2; in parse()
82 if (ps.p_stack[ps.tos] != decl) { /* only put one declaration in parse()
86 ps.p_stack[++ps.tos] = decl; in parse()
87 ps.il[ps.tos] = ps.i_l_follow; in parse()
91 ps.ind_level = 0; in parse()
92 for (i = ps.tos - 1; i > 0; --i) in parse()
93 if (ps.p_stack[i] == decl) in parse()
94 ++ps.ind_level; /* indentation is number of in parse()
96 ps.i_l_follow = ps.ind_level; in parse()
102 if (ps.p_stack[ps.tos] == elsehead && opt.else_if) /* "else if ..." */ in parse()
108 ps.i_l_follow = ps.il[ps.tos--]; in parse()
113 ps.p_stack[++ps.tos] = tk; in parse()
114 ps.il[ps.tos] = ps.ind_level = ps.i_l_follow; in parse()
115 ++ps.i_l_follow; /* subsequent statements should be indented 1 */ in parse()
116 ps.search_brace = opt.btype_2; in parse()
121 if (ps.p_stack[ps.tos] == stmt || ps.p_stack[ps.tos] == decl in parse()
122 || ps.p_stack[ps.tos] == stmtl) in parse()
123 ++ps.i_l_follow; /* it is a random, isolated stmt group or a in parse()
130 --ps.ind_level; in parse()
134 if (ps.p_stack[ps.tos] == swstmt && opt.case_indent >= 1) in parse()
135 --ps.ind_level; in parse()
142 ps.p_stack[++ps.tos] = lbrace; in parse()
143 ps.il[ps.tos] = ps.ind_level; in parse()
144 ps.p_stack[++ps.tos] = stmt; in parse()
146 ps.il[ps.tos] = ps.i_l_follow; in parse()
150 if (ps.p_stack[ps.tos] == dohead) { in parse()
152 ps.ind_level = ps.i_l_follow = ps.il[ps.tos]; in parse()
153 ps.p_stack[++ps.tos] = whilestmt; in parse()
154 ps.il[ps.tos] = ps.ind_level = ps.i_l_follow; in parse()
157 ps.p_stack[++ps.tos] = whilestmt; in parse()
158 ps.il[ps.tos] = ps.i_l_follow; in parse()
159 ++ps.i_l_follow; in parse()
160 ps.search_brace = opt.btype_2; in parse()
167 if (ps.p_stack[ps.tos] != ifhead) in parse()
170 ps.ind_level = ps.il[ps.tos]; /* indentation for else should in parse()
172 ps.i_l_follow = ps.ind_level + 1; /* everything following should in parse()
174 ps.p_stack[ps.tos] = elsehead; in parse()
176 ps.search_brace = opt.btype_2 | opt.else_if; in parse()
182 if (ps.tos > 0 && ps.p_stack[ps.tos - 1] == lbrace) { in parse()
183 ps.ind_level = ps.i_l_follow = ps.il[--ps.tos]; in parse()
184 ps.p_stack[ps.tos] = stmt; in parse()
191 ps.p_stack[++ps.tos] = swstmt; in parse()
192 ps.cstk[ps.tos] = case_ind; in parse()
194 ps.il[ps.tos] = ps.i_l_follow; in parse()
195 case_ind = ps.i_l_follow + opt.case_indent; /* cases should be one in parse()
198 ps.i_l_follow += opt.case_indent + 1; /* statements should be two in parse()
200 ps.search_brace = opt.btype_2; in parse()
206 ps.p_stack[++ps.tos] = stmt; in parse()
207 ps.il[ps.tos] = ps.ind_level; in parse()
217 if (ps.tos >= STACKSIZE - 1) in parse()
223 for (i = 1; i <= ps.tos; ++i) in parse()
224 printf("(%d %d)", ps.p_stack[i], ps.il[i]); in parse()
278 switch (ps.p_stack[ps.tos]) { in reduce()
281 switch (ps.p_stack[ps.tos - 1]) { in reduce()
286 ps.p_stack[--ps.tos] = stmtl; in reduce()
290 ps.p_stack[--ps.tos] = dohead; in reduce()
291 ps.i_l_follow = ps.il[ps.tos]; in reduce()
296 ps.p_stack[--ps.tos] = ifhead; in reduce()
297 for (i = ps.tos - 1; in reduce()
299 ps.p_stack[i] != stmt in reduce()
301 ps.p_stack[i] != stmtl in reduce()
303 ps.p_stack[i] != lbrace in reduce()
306 ps.i_l_follow = ps.il[i]; in reduce()
316 case_ind = ps.cstk[ps.tos - 1]; in reduce()
325 ps.p_stack[--ps.tos] = stmt; in reduce()
326 ps.i_l_follow = ps.il[ps.tos]; in reduce()
336 if (ps.p_stack[ps.tos - 1] == dohead) { in reduce()
338 ps.tos -= 2; in reduce()