1b916582c75f9a976b78a9e3b15bc4ed0998324c
[nit.git] / contrib / pep8analysis / src / parser / pep8_parser.nit
1 # Parser generated by nitcc
2 import nitcc_runtime
3 class MyParser
4 super Parser
5 redef fun start_state do return state_Start
6 end
7 redef class Object
8 private fun state_Start: LRStateStart do return once new LRStateStart
9 private fun state_listing: LRStatelisting do return once new LRStatelisting
10 private fun state_line_43d: LRStateline_43d do return once new LRStateline_43d
11 private fun state_line: LRStateline do return once new LRStateline
12 private fun state_label_decl: LRStatelabel_decl do return once new LRStatelabel_decl
13 private fun state_id: LRStateid do return once new LRStateid
14 private fun state_comment: LRStatecomment do return once new LRStatecomment
15 private fun state_eol: LRStateeol do return once new LRStateeol
16 private fun state_instruction: LRStateinstruction do return once new LRStateinstruction
17 private fun state_directive: LRStatedirective do return once new LRStatedirective
18 private fun state_tk_byte: LRStatetk_byte do return once new LRStatetk_byte
19 private fun state_tk_word: LRStatetk_word do return once new LRStatetk_word
20 private fun state_tk_block: LRStatetk_block do return once new LRStatetk_block
21 private fun state_tk_ascii: LRStatetk_ascii do return once new LRStatetk_ascii
22 private fun state_tk_addrss: LRStatetk_addrss do return once new LRStatetk_addrss
23 private fun state_tk_equate: LRStatetk_equate do return once new LRStatetk_equate
24 private fun state_tk_burn: LRStatetk_burn do return once new LRStatetk_burn
25 private fun state_end_block: LRStateend_block do return once new LRStateend_block
26 private fun state_listing_32dEof: LRStatelisting_32dEof do return once new LRStatelisting_32dEof
27 private fun state_line_43d_32dlabel_decl: LRStateline_43d_32dlabel_decl do return once new LRStateline_43d_32dlabel_decl
28 private fun state_line_43d_32dline: LRStateline_43d_32dline do return once new LRStateline_43d_32dline
29 private fun state_line_43d_32dend_block: LRStateline_43d_32dend_block do return once new LRStateline_43d_32dend_block
30 private fun state_label_decl_32dcomment: LRStatelabel_decl_32dcomment do return once new LRStatelabel_decl_32dcomment
31 private fun state_label_decl_32deol: LRStatelabel_decl_32deol do return once new LRStatelabel_decl_32deol
32 private fun state_label_decl_32dinstruction: LRStatelabel_decl_32dinstruction do return once new LRStatelabel_decl_32dinstruction
33 private fun state_label_decl_32ddirective: LRStatelabel_decl_32ddirective do return once new LRStatelabel_decl_32ddirective
34 private fun state_label_decl_32dend_block: LRStatelabel_decl_32dend_block do return once new LRStatelabel_decl_32dend_block
35 private fun state_label_decl_32did: LRStatelabel_decl_32did do return once new LRStatelabel_decl_32did
36 private fun state_id_32dcolon: LRStateid_32dcolon do return once new LRStateid_32dcolon
37 private fun state_id_32doperand: LRStateid_32doperand do return once new LRStateid_32doperand
38 private fun state_id_32dvalue: LRStateid_32dvalue do return once new LRStateid_32dvalue
39 private fun state_id_32did: LRStateid_32did do return once new LRStateid_32did
40 private fun state_id_32dchar: LRStateid_32dchar do return once new LRStateid_32dchar
41 private fun state_id_32dstring: LRStateid_32dstring do return once new LRStateid_32dstring
42 private fun state_comment_32deol: LRStatecomment_32deol do return once new LRStatecomment_32deol
43 private fun state_instruction_32dcomment: LRStateinstruction_32dcomment do return once new LRStateinstruction_32dcomment
44 private fun state_instruction_32deol: LRStateinstruction_32deol do return once new LRStateinstruction_32deol
45 private fun state_directive_32dcomment: LRStatedirective_32dcomment do return once new LRStatedirective_32dcomment
46 private fun state_directive_32deol: LRStatedirective_32deol do return once new LRStatedirective_32deol
47 private fun state_tk_byte_32dvalue: LRStatetk_byte_32dvalue do return once new LRStatetk_byte_32dvalue
48 private fun state_tk_word_32dvalue: LRStatetk_word_32dvalue do return once new LRStatetk_word_32dvalue
49 private fun state_tk_block_32dvalue: LRStatetk_block_32dvalue do return once new LRStatetk_block_32dvalue
50 private fun state_tk_ascii_32dvalue: LRStatetk_ascii_32dvalue do return once new LRStatetk_ascii_32dvalue
51 private fun state_tk_addrss_32dvalue: LRStatetk_addrss_32dvalue do return once new LRStatetk_addrss_32dvalue
52 private fun state_tk_equate_32dvalue: LRStatetk_equate_32dvalue do return once new LRStatetk_equate_32dvalue
53 private fun state_tk_burn_32dvalue: LRStatetk_burn_32dvalue do return once new LRStatetk_burn_32dvalue
54 private fun state_line_43d_32dlabel_decl_32dend_block: LRStateline_43d_32dlabel_decl_32dend_block do return once new LRStateline_43d_32dlabel_decl_32dend_block
55 private fun state_label_decl_32dcomment_32deol: LRStatelabel_decl_32dcomment_32deol do return once new LRStatelabel_decl_32dcomment_32deol
56 private fun state_label_decl_32dinstruction_32dcomment: LRStatelabel_decl_32dinstruction_32dcomment do return once new LRStatelabel_decl_32dinstruction_32dcomment
57 private fun state_label_decl_32dinstruction_32deol: LRStatelabel_decl_32dinstruction_32deol do return once new LRStatelabel_decl_32dinstruction_32deol
58 private fun state_label_decl_32ddirective_32dcomment: LRStatelabel_decl_32ddirective_32dcomment do return once new LRStatelabel_decl_32ddirective_32dcomment
59 private fun state_label_decl_32ddirective_32deol: LRStatelabel_decl_32ddirective_32deol do return once new LRStatelabel_decl_32ddirective_32deol
60 private fun state_id_32dvalue_32dcomma: LRStateid_32dvalue_32dcomma do return once new LRStateid_32dvalue_32dcomma
61 private fun state_instruction_32dcomment_32deol: LRStateinstruction_32dcomment_32deol do return once new LRStateinstruction_32dcomment_32deol
62 private fun state_directive_32dcomment_32deol: LRStatedirective_32dcomment_32deol do return once new LRStatedirective_32dcomment_32deol
63 private fun state_label_decl_32dinstruction_32dcomment_32deol: LRStatelabel_decl_32dinstruction_32dcomment_32deol do return once new LRStatelabel_decl_32dinstruction_32dcomment_32deol
64 private fun state_label_decl_32ddirective_32dcomment_32deol: LRStatelabel_decl_32ddirective_32dcomment_32deol do return once new LRStatelabel_decl_32ddirective_32dcomment_32deol
65 private fun state_id_32dvalue_32dcomma_32did: LRStateid_32dvalue_32dcomma_32did do return once new LRStateid_32dvalue_32dcomma_32did
66 private fun goto_Nlisting: Goto_Nlisting do return once new Goto_Nlisting
67 private fun goto_Nline: Goto_Nline do return once new Goto_Nline
68 private fun goto_Nlabel_decl: Goto_Nlabel_decl do return once new Goto_Nlabel_decl
69 private fun goto_Ninstruction: Goto_Ninstruction do return once new Goto_Ninstruction
70 private fun goto_Noperand: Goto_Noperand do return once new Goto_Noperand
71 private fun goto_Nvalue: Goto_Nvalue do return once new Goto_Nvalue
72 private fun goto_Ndirective: Goto_Ndirective do return once new Goto_Ndirective
73 private fun goto_Nline_43d: Goto_Nline_43d do return once new Goto_Nline_43d
74 private fun goto_N_start: Goto_N_start do return once new Goto_N_start
75 end
76 redef class NToken
77 # guarded action for state Start
78 # 11 shift(s) and 0 reduce(s)
79 private fun action_sStart(parser: Parser) do
80 parser.parse_error
81 end
82 # guarded action for state listing
83 # 1 shift(s) and 0 reduce(s)
84 private fun action_slisting(parser: Parser) do
85 parser.parse_error
86 end
87 # guarded action for state line+
88 # 11 shift(s) and 0 reduce(s)
89 private fun action_sline_43d(parser: Parser) do
90 parser.parse_error
91 end
92 # guarded action for state label_decl
93 # 11 shift(s) and 0 reduce(s)
94 private fun action_slabel_decl(parser: Parser) do
95 parser.parse_error
96 end
97 # guarded action for state id
98 # 4 shift(s) and 1 reduce(s)
99 private fun action_sid(parser: Parser) do
100 # REDUCE instruction::instruction_unary=id
101 var n0 = parser.pop.as(Nid)
102 var p1 = new Ninstruction_unary(n0)
103 var prod = p1
104 parser.node_stack.push prod
105 parser.goto(goto_Ninstruction)
106 end
107 # guarded action for state comment
108 # 1 shift(s) and 0 reduce(s)
109 private fun action_scomment(parser: Parser) do
110 parser.parse_error
111 end
112 # guarded action for state instruction
113 # 2 shift(s) and 0 reduce(s)
114 private fun action_sinstruction(parser: Parser) do
115 parser.parse_error
116 end
117 # guarded action for state directive
118 # 2 shift(s) and 0 reduce(s)
119 private fun action_sdirective(parser: Parser) do
120 parser.parse_error
121 end
122 # guarded action for state tk_byte
123 # 3 shift(s) and 0 reduce(s)
124 private fun action_stk_byte(parser: Parser) do
125 parser.parse_error
126 end
127 # guarded action for state tk_word
128 # 3 shift(s) and 0 reduce(s)
129 private fun action_stk_word(parser: Parser) do
130 parser.parse_error
131 end
132 # guarded action for state tk_block
133 # 3 shift(s) and 0 reduce(s)
134 private fun action_stk_block(parser: Parser) do
135 parser.parse_error
136 end
137 # guarded action for state tk_ascii
138 # 3 shift(s) and 0 reduce(s)
139 private fun action_stk_ascii(parser: Parser) do
140 parser.parse_error
141 end
142 # guarded action for state tk_addrss
143 # 3 shift(s) and 0 reduce(s)
144 private fun action_stk_addrss(parser: Parser) do
145 parser.parse_error
146 end
147 # guarded action for state tk_equate
148 # 3 shift(s) and 0 reduce(s)
149 private fun action_stk_equate(parser: Parser) do
150 parser.parse_error
151 end
152 # guarded action for state tk_burn
153 # 3 shift(s) and 0 reduce(s)
154 private fun action_stk_burn(parser: Parser) do
155 parser.parse_error
156 end
157 # guarded action for state line+ label_decl
158 # 11 shift(s) and 0 reduce(s)
159 private fun action_sline_43d_32dlabel_decl(parser: Parser) do
160 parser.parse_error
161 end
162 # guarded action for state label_decl comment
163 # 1 shift(s) and 0 reduce(s)
164 private fun action_slabel_decl_32dcomment(parser: Parser) do
165 parser.parse_error
166 end
167 # guarded action for state label_decl instruction
168 # 2 shift(s) and 0 reduce(s)
169 private fun action_slabel_decl_32dinstruction(parser: Parser) do
170 parser.parse_error
171 end
172 # guarded action for state label_decl directive
173 # 2 shift(s) and 0 reduce(s)
174 private fun action_slabel_decl_32ddirective(parser: Parser) do
175 parser.parse_error
176 end
177 # guarded action for state label_decl id
178 # 3 shift(s) and 1 reduce(s)
179 private fun action_slabel_decl_32did(parser: Parser) do
180 # REDUCE instruction::instruction_unary=id
181 var n0 = parser.pop.as(Nid)
182 var p1 = new Ninstruction_unary(n0)
183 var prod = p1
184 parser.node_stack.push prod
185 parser.goto(goto_Ninstruction)
186 end
187 # guarded action for state id value
188 # 1 shift(s) and 1 reduce(s)
189 private fun action_sid_32dvalue(parser: Parser) do
190 # REDUCE operand::operand_immediate=value
191 var n0 = parser.pop.as(Nvalue)
192 var p1 = new Noperand_immediate(n0)
193 var prod = p1
194 parser.node_stack.push prod
195 parser.goto(goto_Noperand)
196 end
197 # guarded action for state instruction comment
198 # 1 shift(s) and 0 reduce(s)
199 private fun action_sinstruction_32dcomment(parser: Parser) do
200 parser.parse_error
201 end
202 # guarded action for state directive comment
203 # 1 shift(s) and 0 reduce(s)
204 private fun action_sdirective_32dcomment(parser: Parser) do
205 parser.parse_error
206 end
207 # guarded action for state label_decl instruction comment
208 # 1 shift(s) and 0 reduce(s)
209 private fun action_slabel_decl_32dinstruction_32dcomment(parser: Parser) do
210 parser.parse_error
211 end
212 # guarded action for state label_decl directive comment
213 # 1 shift(s) and 0 reduce(s)
214 private fun action_slabel_decl_32ddirective_32dcomment(parser: Parser) do
215 parser.parse_error
216 end
217 # guarded action for state id value comma
218 # 1 shift(s) and 0 reduce(s)
219 private fun action_sid_32dvalue_32dcomma(parser: Parser) do
220 parser.parse_error
221 end
222 end
223 class NIgnored
224 super NToken
225 redef fun node_name do return "Ignored"
226 end
227 class Nend_block
228 super NToken
229 redef fun action_sStart(parser) do
230 parser.shift(state_end_block)
231 end
232 redef fun action_sline_43d(parser) do
233 parser.shift(state_line_43d_32dend_block)
234 end
235 redef fun action_slabel_decl(parser) do
236 parser.shift(state_label_decl_32dend_block)
237 end
238 redef fun action_sline_43d_32dlabel_decl(parser) do
239 parser.shift(state_line_43d_32dlabel_decl_32dend_block)
240 end
241 redef fun node_name do return "end_block"
242 end
243 class Ncomment
244 super NToken
245 redef fun action_sStart(parser) do
246 parser.shift(state_comment)
247 end
248 redef fun action_sline_43d(parser) do
249 parser.shift(state_comment)
250 end
251 redef fun action_slabel_decl(parser) do
252 parser.shift(state_label_decl_32dcomment)
253 end
254 redef fun action_sinstruction(parser) do
255 parser.shift(state_instruction_32dcomment)
256 end
257 redef fun action_sdirective(parser) do
258 parser.shift(state_directive_32dcomment)
259 end
260 redef fun action_sline_43d_32dlabel_decl(parser) do
261 parser.shift(state_label_decl_32dcomment)
262 end
263 redef fun action_slabel_decl_32dinstruction(parser) do
264 parser.shift(state_label_decl_32dinstruction_32dcomment)
265 end
266 redef fun action_slabel_decl_32ddirective(parser) do
267 parser.shift(state_label_decl_32ddirective_32dcomment)
268 end
269 redef fun node_name do return "comment"
270 end
271 class Neol
272 super NToken
273 redef fun action_sStart(parser) do
274 parser.shift(state_eol)
275 end
276 redef fun action_sline_43d(parser) do
277 parser.shift(state_eol)
278 end
279 redef fun action_slabel_decl(parser) do
280 parser.shift(state_label_decl_32deol)
281 end
282 redef fun action_scomment(parser) do
283 parser.shift(state_comment_32deol)
284 end
285 redef fun action_sinstruction(parser) do
286 parser.shift(state_instruction_32deol)
287 end
288 redef fun action_sdirective(parser) do
289 parser.shift(state_directive_32deol)
290 end
291 redef fun action_sline_43d_32dlabel_decl(parser) do
292 parser.shift(state_label_decl_32deol)
293 end
294 redef fun action_slabel_decl_32dcomment(parser) do
295 parser.shift(state_label_decl_32dcomment_32deol)
296 end
297 redef fun action_slabel_decl_32dinstruction(parser) do
298 parser.shift(state_label_decl_32dinstruction_32deol)
299 end
300 redef fun action_slabel_decl_32ddirective(parser) do
301 parser.shift(state_label_decl_32ddirective_32deol)
302 end
303 redef fun action_sinstruction_32dcomment(parser) do
304 parser.shift(state_instruction_32dcomment_32deol)
305 end
306 redef fun action_sdirective_32dcomment(parser) do
307 parser.shift(state_directive_32dcomment_32deol)
308 end
309 redef fun action_slabel_decl_32dinstruction_32dcomment(parser) do
310 parser.shift(state_label_decl_32dinstruction_32dcomment_32deol)
311 end
312 redef fun action_slabel_decl_32ddirective_32dcomment(parser) do
313 parser.shift(state_label_decl_32ddirective_32dcomment_32deol)
314 end
315 redef fun node_name do return "eol"
316 end
317 class Nid
318 super NToken
319 redef fun action_sStart(parser) do
320 parser.shift(state_id)
321 end
322 redef fun action_sline_43d(parser) do
323 parser.shift(state_id)
324 end
325 redef fun action_slabel_decl(parser) do
326 parser.shift(state_label_decl_32did)
327 end
328 redef fun action_sid(parser) do
329 parser.shift(state_id_32did)
330 end
331 redef fun action_stk_byte(parser) do
332 parser.shift(state_id_32did)
333 end
334 redef fun action_stk_word(parser) do
335 parser.shift(state_id_32did)
336 end
337 redef fun action_stk_block(parser) do
338 parser.shift(state_id_32did)
339 end
340 redef fun action_stk_ascii(parser) do
341 parser.shift(state_id_32did)
342 end
343 redef fun action_stk_addrss(parser) do
344 parser.shift(state_id_32did)
345 end
346 redef fun action_stk_equate(parser) do
347 parser.shift(state_id_32did)
348 end
349 redef fun action_stk_burn(parser) do
350 parser.shift(state_id_32did)
351 end
352 redef fun action_sline_43d_32dlabel_decl(parser) do
353 parser.shift(state_label_decl_32did)
354 end
355 redef fun action_slabel_decl_32did(parser) do
356 parser.shift(state_id_32did)
357 end
358 redef fun action_sid_32dvalue_32dcomma(parser) do
359 parser.shift(state_id_32dvalue_32dcomma_32did)
360 end
361 redef fun node_name do return "id"
362 end
363 class Ncolon
364 super NToken
365 redef fun action_sid(parser) do
366 parser.shift(state_id_32dcolon)
367 end
368 redef fun node_name do return "colon"
369 end
370 class Ncomma
371 super NToken
372 redef fun action_sid_32dvalue(parser) do
373 parser.shift(state_id_32dvalue_32dcomma)
374 end
375 redef fun node_name do return "comma"
376 end
377 class Nchar
378 super NToken
379 redef fun action_sid(parser) do
380 parser.shift(state_id_32dchar)
381 end
382 redef fun action_stk_byte(parser) do
383 parser.shift(state_id_32dchar)
384 end
385 redef fun action_stk_word(parser) do
386 parser.shift(state_id_32dchar)
387 end
388 redef fun action_stk_block(parser) do
389 parser.shift(state_id_32dchar)
390 end
391 redef fun action_stk_ascii(parser) do
392 parser.shift(state_id_32dchar)
393 end
394 redef fun action_stk_addrss(parser) do
395 parser.shift(state_id_32dchar)
396 end
397 redef fun action_stk_equate(parser) do
398 parser.shift(state_id_32dchar)
399 end
400 redef fun action_stk_burn(parser) do
401 parser.shift(state_id_32dchar)
402 end
403 redef fun action_slabel_decl_32did(parser) do
404 parser.shift(state_id_32dchar)
405 end
406 redef fun node_name do return "char"
407 end
408 class Nstring
409 super NToken
410 redef fun action_sid(parser) do
411 parser.shift(state_id_32dstring)
412 end
413 redef fun action_stk_byte(parser) do
414 parser.shift(state_id_32dstring)
415 end
416 redef fun action_stk_word(parser) do
417 parser.shift(state_id_32dstring)
418 end
419 redef fun action_stk_block(parser) do
420 parser.shift(state_id_32dstring)
421 end
422 redef fun action_stk_ascii(parser) do
423 parser.shift(state_id_32dstring)
424 end
425 redef fun action_stk_addrss(parser) do
426 parser.shift(state_id_32dstring)
427 end
428 redef fun action_stk_equate(parser) do
429 parser.shift(state_id_32dstring)
430 end
431 redef fun action_stk_burn(parser) do
432 parser.shift(state_id_32dstring)
433 end
434 redef fun action_slabel_decl_32did(parser) do
435 parser.shift(state_id_32dstring)
436 end
437 redef fun node_name do return "string"
438 end
439 class Ntk_byte
440 super NToken
441 redef fun action_sStart(parser) do
442 parser.shift(state_tk_byte)
443 end
444 redef fun action_sline_43d(parser) do
445 parser.shift(state_tk_byte)
446 end
447 redef fun action_slabel_decl(parser) do
448 parser.shift(state_tk_byte)
449 end
450 redef fun action_sline_43d_32dlabel_decl(parser) do
451 parser.shift(state_tk_byte)
452 end
453 redef fun node_name do return "tk_byte"
454 end
455 class Ntk_word
456 super NToken
457 redef fun action_sStart(parser) do
458 parser.shift(state_tk_word)
459 end
460 redef fun action_sline_43d(parser) do
461 parser.shift(state_tk_word)
462 end
463 redef fun action_slabel_decl(parser) do
464 parser.shift(state_tk_word)
465 end
466 redef fun action_sline_43d_32dlabel_decl(parser) do
467 parser.shift(state_tk_word)
468 end
469 redef fun node_name do return "tk_word"
470 end
471 class Ntk_block
472 super NToken
473 redef fun action_sStart(parser) do
474 parser.shift(state_tk_block)
475 end
476 redef fun action_sline_43d(parser) do
477 parser.shift(state_tk_block)
478 end
479 redef fun action_slabel_decl(parser) do
480 parser.shift(state_tk_block)
481 end
482 redef fun action_sline_43d_32dlabel_decl(parser) do
483 parser.shift(state_tk_block)
484 end
485 redef fun node_name do return "tk_block"
486 end
487 class Ntk_ascii
488 super NToken
489 redef fun action_sStart(parser) do
490 parser.shift(state_tk_ascii)
491 end
492 redef fun action_sline_43d(parser) do
493 parser.shift(state_tk_ascii)
494 end
495 redef fun action_slabel_decl(parser) do
496 parser.shift(state_tk_ascii)
497 end
498 redef fun action_sline_43d_32dlabel_decl(parser) do
499 parser.shift(state_tk_ascii)
500 end
501 redef fun node_name do return "tk_ascii"
502 end
503 class Ntk_addrss
504 super NToken
505 redef fun action_sStart(parser) do
506 parser.shift(state_tk_addrss)
507 end
508 redef fun action_sline_43d(parser) do
509 parser.shift(state_tk_addrss)
510 end
511 redef fun action_slabel_decl(parser) do
512 parser.shift(state_tk_addrss)
513 end
514 redef fun action_sline_43d_32dlabel_decl(parser) do
515 parser.shift(state_tk_addrss)
516 end
517 redef fun node_name do return "tk_addrss"
518 end
519 class Ntk_equate
520 super NToken
521 redef fun action_sStart(parser) do
522 parser.shift(state_tk_equate)
523 end
524 redef fun action_sline_43d(parser) do
525 parser.shift(state_tk_equate)
526 end
527 redef fun action_slabel_decl(parser) do
528 parser.shift(state_tk_equate)
529 end
530 redef fun action_sline_43d_32dlabel_decl(parser) do
531 parser.shift(state_tk_equate)
532 end
533 redef fun node_name do return "tk_equate"
534 end
535 class Ntk_burn
536 super NToken
537 redef fun action_sStart(parser) do
538 parser.shift(state_tk_burn)
539 end
540 redef fun action_sline_43d(parser) do
541 parser.shift(state_tk_burn)
542 end
543 redef fun action_slabel_decl(parser) do
544 parser.shift(state_tk_burn)
545 end
546 redef fun action_sline_43d_32dlabel_decl(parser) do
547 parser.shift(state_tk_burn)
548 end
549 redef fun node_name do return "tk_burn"
550 end
551 redef class NEof
552 super NToken
553 redef fun action_slisting(parser) do
554 parser.shift(state_listing_32dEof)
555 end
556 redef fun node_name do return "Eof"
557 end
558 redef class LRGoto
559 private fun goto_sStart(parser: Parser) do abort
560 private fun goto_sline_43d(parser: Parser) do abort
561 private fun goto_slabel_decl(parser: Parser) do abort
562 private fun goto_sid(parser: Parser) do abort
563 private fun goto_sline_43d_32dlabel_decl(parser: Parser) do abort
564 private fun goto_slabel_decl_32did(parser: Parser) do abort
565 end
566 class Goto_Nlisting
567 super LRGoto
568 redef fun goto_sStart(parser) do
569 parser.push(state_listing)
570 end
571 end
572 class Goto_Nline
573 super LRGoto
574 redef fun goto_sStart(parser) do
575 parser.push(state_line)
576 end
577 redef fun goto_sline_43d(parser) do
578 parser.push(state_line_43d_32dline)
579 end
580 end
581 class Goto_Nlabel_decl
582 super LRGoto
583 redef fun goto_sStart(parser) do
584 parser.push(state_label_decl)
585 end
586 redef fun goto_sline_43d(parser) do
587 parser.push(state_line_43d_32dlabel_decl)
588 end
589 end
590 class Goto_Ninstruction
591 super LRGoto
592 redef fun goto_sStart(parser) do
593 parser.push(state_instruction)
594 end
595 redef fun goto_sline_43d(parser) do
596 parser.push(state_instruction)
597 end
598 redef fun goto_slabel_decl(parser) do
599 parser.push(state_label_decl_32dinstruction)
600 end
601 redef fun goto_sline_43d_32dlabel_decl(parser) do
602 parser.push(state_label_decl_32dinstruction)
603 end
604 end
605 class Goto_Noperand
606 super LRGoto
607 redef fun goto_sid(parser) do
608 parser.push(state_id_32doperand)
609 end
610 redef fun goto_slabel_decl_32did(parser) do
611 parser.push(state_id_32doperand)
612 end
613 end
614 class Goto_Nvalue
615 super LRGoto
616 redef fun goto_sid(parser) do
617 parser.push(state_id_32dvalue)
618 end
619 redef fun goto_slabel_decl_32did(parser) do
620 parser.push(state_id_32dvalue)
621 end
622 end
623 class Goto_Ndirective
624 super LRGoto
625 redef fun goto_sStart(parser) do
626 parser.push(state_directive)
627 end
628 redef fun goto_sline_43d(parser) do
629 parser.push(state_directive)
630 end
631 redef fun goto_slabel_decl(parser) do
632 parser.push(state_label_decl_32ddirective)
633 end
634 redef fun goto_sline_43d_32dlabel_decl(parser) do
635 parser.push(state_label_decl_32ddirective)
636 end
637 end
638 class Goto_Nline_43d
639 super LRGoto
640 redef fun goto_sStart(parser) do
641 parser.push(state_line_43d)
642 end
643 end
644 class Goto_N_start
645 super LRGoto
646 end
647 class Nlisting
648 super NProd
649 redef fun node_name do return "listing"
650 var n_lines: nullable Nodes[Nline]
651 var n_label_decl: nullable Nlabel_decl
652 var n_end_block: Nend_block
653 init(n_lines: nullable Nodes[Nline], n_label_decl: nullable Nlabel_decl, n_end_block: Nend_block) do
654 self.n_lines = n_lines
655 self.n_label_decl = n_label_decl
656 self.n_end_block = n_end_block
657 end
658 redef fun number_of_children do return 3
659 redef fun child(i) do
660 if i == 0 then return n_lines
661 if i == 1 then return n_label_decl
662 if i == 2 then return n_end_block
663 abort
664 end
665 end
666 class Nline
667 super NProd
668 redef fun node_name do return "line"
669 end
670 class Nline_empty
671 super Nline
672 redef fun node_name do return "line_empty"
673 var n_label_decl: nullable Nlabel_decl
674 var n_comment: nullable Ncomment
675 var n_eol: Neol
676 init(n_label_decl: nullable Nlabel_decl, n_comment: nullable Ncomment, n_eol: Neol) do
677 self.n_label_decl = n_label_decl
678 self.n_comment = n_comment
679 self.n_eol = n_eol
680 end
681 redef fun number_of_children do return 3
682 redef fun child(i) do
683 if i == 0 then return n_label_decl
684 if i == 1 then return n_comment
685 if i == 2 then return n_eol
686 abort
687 end
688 end
689 class Nline_instruction
690 super Nline
691 redef fun node_name do return "line_instruction"
692 var n_label_decl: nullable Nlabel_decl
693 var n_instruction: Ninstruction
694 var n_comment: nullable Ncomment
695 var n_eol: Neol
696 init(n_label_decl: nullable Nlabel_decl, n_instruction: Ninstruction, n_comment: nullable Ncomment, n_eol: Neol) do
697 self.n_label_decl = n_label_decl
698 self.n_instruction = n_instruction
699 self.n_comment = n_comment
700 self.n_eol = n_eol
701 end
702 redef fun number_of_children do return 4
703 redef fun child(i) do
704 if i == 0 then return n_label_decl
705 if i == 1 then return n_instruction
706 if i == 2 then return n_comment
707 if i == 3 then return n_eol
708 abort
709 end
710 end
711 class Nline_directive
712 super Nline
713 redef fun node_name do return "line_directive"
714 var n_label_decl: nullable Nlabel_decl
715 var n_directive: Ndirective
716 var n_comment: nullable Ncomment
717 var n_eol: Neol
718 init(n_label_decl: nullable Nlabel_decl, n_directive: Ndirective, n_comment: nullable Ncomment, n_eol: Neol) do
719 self.n_label_decl = n_label_decl
720 self.n_directive = n_directive
721 self.n_comment = n_comment
722 self.n_eol = n_eol
723 end
724 redef fun number_of_children do return 4
725 redef fun child(i) do
726 if i == 0 then return n_label_decl
727 if i == 1 then return n_directive
728 if i == 2 then return n_comment
729 if i == 3 then return n_eol
730 abort
731 end
732 end
733 class Nlabel_decl
734 super NProd
735 redef fun node_name do return "label_decl"
736 var n_id: Nid
737 var n_colon: Ncolon
738 init(n_id: Nid, n_colon: Ncolon) do
739 self.n_id = n_id
740 self.n_colon = n_colon
741 end
742 redef fun number_of_children do return 2
743 redef fun child(i) do
744 if i == 0 then return n_id
745 if i == 1 then return n_colon
746 abort
747 end
748 end
749 class Ninstruction
750 super NProd
751 redef fun node_name do return "instruction"
752 end
753 class Ninstruction_unary
754 super Ninstruction
755 redef fun node_name do return "instruction_unary"
756 var n_id: Nid
757 init(n_id: Nid) do
758 self.n_id = n_id
759 end
760 redef fun number_of_children do return 1
761 redef fun child(i) do
762 if i == 0 then return n_id
763 abort
764 end
765 end
766 class Ninstruction_binary
767 super Ninstruction
768 redef fun node_name do return "instruction_binary"
769 var n_id: Nid
770 var n_operand: Noperand
771 init(n_id: Nid, n_operand: Noperand) do
772 self.n_id = n_id
773 self.n_operand = n_operand
774 end
775 redef fun number_of_children do return 2
776 redef fun child(i) do
777 if i == 0 then return n_id
778 if i == 1 then return n_operand
779 abort
780 end
781 end
782 class Noperand
783 super NProd
784 redef fun node_name do return "operand"
785 end
786 class Noperand_immediate
787 super Noperand
788 redef fun node_name do return "operand_immediate"
789 var n_value: Nvalue
790 init(n_value: Nvalue) do
791 self.n_value = n_value
792 end
793 redef fun number_of_children do return 1
794 redef fun child(i) do
795 if i == 0 then return n_value
796 abort
797 end
798 end
799 class Noperand_any
800 super Noperand
801 redef fun node_name do return "operand_any"
802 var n_value: Nvalue
803 var n_comma: Ncomma
804 var n_id: Nid
805 init(n_value: Nvalue, n_comma: Ncomma, n_id: Nid) do
806 self.n_value = n_value
807 self.n_comma = n_comma
808 self.n_id = n_id
809 end
810 redef fun number_of_children do return 3
811 redef fun child(i) do
812 if i == 0 then return n_value
813 if i == 1 then return n_comma
814 if i == 2 then return n_id
815 abort
816 end
817 end
818 class Nvalue
819 super NProd
820 redef fun node_name do return "value"
821 end
822 class Nvalue_label
823 super Nvalue
824 redef fun node_name do return "value_label"
825 var n_id: Nid
826 init(n_id: Nid) do
827 self.n_id = n_id
828 end
829 redef fun number_of_children do return 1
830 redef fun child(i) do
831 if i == 0 then return n_id
832 abort
833 end
834 end
835 class Nvalue_char
836 super Nvalue
837 redef fun node_name do return "value_char"
838 var n_char: Nchar
839 init(n_char: Nchar) do
840 self.n_char = n_char
841 end
842 redef fun number_of_children do return 1
843 redef fun child(i) do
844 if i == 0 then return n_char
845 abort
846 end
847 end
848 class Nvalue_string
849 super Nvalue
850 redef fun node_name do return "value_string"
851 var n_string: Nstring
852 init(n_string: Nstring) do
853 self.n_string = n_string
854 end
855 redef fun number_of_children do return 1
856 redef fun child(i) do
857 if i == 0 then return n_string
858 abort
859 end
860 end
861 class Ndirective
862 super NProd
863 redef fun node_name do return "directive"
864 end
865 class Ndirective_byte
866 super Ndirective
867 redef fun node_name do return "directive_byte"
868 var n_tk_byte: Ntk_byte
869 var n_value: Nvalue
870 init(n_tk_byte: Ntk_byte, n_value: Nvalue) do
871 self.n_tk_byte = n_tk_byte
872 self.n_value = n_value
873 end
874 redef fun number_of_children do return 2
875 redef fun child(i) do
876 if i == 0 then return n_tk_byte
877 if i == 1 then return n_value
878 abort
879 end
880 end
881 class Ndirective_word
882 super Ndirective
883 redef fun node_name do return "directive_word"
884 var n_tk_word: Ntk_word
885 var n_value: Nvalue
886 init(n_tk_word: Ntk_word, n_value: Nvalue) do
887 self.n_tk_word = n_tk_word
888 self.n_value = n_value
889 end
890 redef fun number_of_children do return 2
891 redef fun child(i) do
892 if i == 0 then return n_tk_word
893 if i == 1 then return n_value
894 abort
895 end
896 end
897 class Ndirective_block
898 super Ndirective
899 redef fun node_name do return "directive_block"
900 var n_tk_block: Ntk_block
901 var n_value: Nvalue
902 init(n_tk_block: Ntk_block, n_value: Nvalue) do
903 self.n_tk_block = n_tk_block
904 self.n_value = n_value
905 end
906 redef fun number_of_children do return 2
907 redef fun child(i) do
908 if i == 0 then return n_tk_block
909 if i == 1 then return n_value
910 abort
911 end
912 end
913 class Ndirective_ascii
914 super Ndirective
915 redef fun node_name do return "directive_ascii"
916 var n_tk_ascii: Ntk_ascii
917 var n_value: Nvalue
918 init(n_tk_ascii: Ntk_ascii, n_value: Nvalue) do
919 self.n_tk_ascii = n_tk_ascii
920 self.n_value = n_value
921 end
922 redef fun number_of_children do return 2
923 redef fun child(i) do
924 if i == 0 then return n_tk_ascii
925 if i == 1 then return n_value
926 abort
927 end
928 end
929 class Ndirective_addrss
930 super Ndirective
931 redef fun node_name do return "directive_addrss"
932 var n_tk_addrss: Ntk_addrss
933 var n_value: Nvalue
934 init(n_tk_addrss: Ntk_addrss, n_value: Nvalue) do
935 self.n_tk_addrss = n_tk_addrss
936 self.n_value = n_value
937 end
938 redef fun number_of_children do return 2
939 redef fun child(i) do
940 if i == 0 then return n_tk_addrss
941 if i == 1 then return n_value
942 abort
943 end
944 end
945 class Ndirective_equate
946 super Ndirective
947 redef fun node_name do return "directive_equate"
948 var n_tk_equate: Ntk_equate
949 var n_value: Nvalue
950 init(n_tk_equate: Ntk_equate, n_value: Nvalue) do
951 self.n_tk_equate = n_tk_equate
952 self.n_value = n_value
953 end
954 redef fun number_of_children do return 2
955 redef fun child(i) do
956 if i == 0 then return n_tk_equate
957 if i == 1 then return n_value
958 abort
959 end
960 end
961 class Ndirective_burn
962 super Ndirective
963 redef fun node_name do return "directive_burn"
964 var n_tk_burn: Ntk_burn
965 var n_value: Nvalue
966 init(n_tk_burn: Ntk_burn, n_value: Nvalue) do
967 self.n_tk_burn = n_tk_burn
968 self.n_value = n_value
969 end
970 redef fun number_of_children do return 2
971 redef fun child(i) do
972 if i == 0 then return n_tk_burn
973 if i == 1 then return n_value
974 abort
975 end
976 end
977 class N_start
978 super NProd
979 redef fun node_name do return "_start"
980 end
981 class NStart
982 super N_start
983 redef fun node_name do return "Start"
984 var n_0: Nlisting
985 var n_1: NEof
986 init(n_0: Nlisting, n_1: NEof) do
987 self.n_0 = n_0
988 self.n_1 = n_1
989 end
990 redef fun number_of_children do return 2
991 redef fun child(i) do
992 if i == 0 then return n_0
993 if i == 1 then return n_1
994 abort
995 end
996 end
997 # State Start
998 private class LRStateStart
999 super LRState
1000 redef fun to_s do return "Start"
1001 redef fun error_msg do return "listing, line+, line, label_decl, instruction, directive"
1002 redef fun action(parser) do
1003 parser.peek_token.action_sStart(parser)
1004 end
1005 redef fun goto(parser, goto) do
1006 goto.goto_sStart(parser)
1007 end
1008 end
1009 # State listing
1010 private class LRStatelisting
1011 super LRState
1012 redef fun to_s do return "listing"
1013 redef fun error_msg do return "Eof"
1014 redef fun action(parser) do
1015 parser.peek_token.action_slisting(parser)
1016 end
1017 end
1018 # State line+
1019 private class LRStateline_43d
1020 super LRState
1021 redef fun to_s do return "line+"
1022 redef fun error_msg do return "label_decl, line, instruction, directive"
1023 redef fun action(parser) do
1024 parser.peek_token.action_sline_43d(parser)
1025 end
1026 redef fun goto(parser, goto) do
1027 goto.goto_sline_43d(parser)
1028 end
1029 end
1030 # State line
1031 private class LRStateline
1032 super LRState
1033 redef fun to_s do return "line"
1034 redef fun error_msg do return ""
1035 redef fun action(parser) do
1036 # REDUCE line+::line+_one=line
1037 var n0 = parser.pop.as(Nline)
1038 var prod = new Nodes[Nline]
1039 prod.items.add(n0)
1040 parser.node_stack.push prod
1041 parser.goto(goto_Nline_43d)
1042 end
1043 end
1044 # State label_decl
1045 private class LRStatelabel_decl
1046 super LRState
1047 redef fun to_s do return "label_decl"
1048 redef fun error_msg do return "instruction, directive"
1049 redef fun action(parser) do
1050 parser.peek_token.action_slabel_decl(parser)
1051 end
1052 redef fun goto(parser, goto) do
1053 goto.goto_slabel_decl(parser)
1054 end
1055 end
1056 # State id
1057 private class LRStateid
1058 super LRState
1059 redef fun to_s do return "id"
1060 redef fun error_msg do return "operand, value"
1061 redef fun action(parser) do
1062 parser.peek_token.action_sid(parser)
1063 end
1064 redef fun goto(parser, goto) do
1065 goto.goto_sid(parser)
1066 end
1067 end
1068 # State comment
1069 private class LRStatecomment
1070 super LRState
1071 redef fun to_s do return "comment"
1072 redef fun error_msg do return "eol"
1073 redef fun action(parser) do
1074 parser.peek_token.action_scomment(parser)
1075 end
1076 end
1077 # State eol
1078 private class LRStateeol
1079 super LRState
1080 redef fun to_s do return "eol"
1081 redef fun error_msg do return ""
1082 redef fun action(parser) do
1083 # REDUCE line::line_empty_3=eol
1084 var n0 = parser.pop.as(Neol)
1085 var p1 = new Nline_empty(null, null, n0)
1086 var prod = p1
1087 parser.node_stack.push prod
1088 parser.goto(goto_Nline)
1089 end
1090 end
1091 # State instruction
1092 private class LRStateinstruction
1093 super LRState
1094 redef fun to_s do return "instruction"
1095 redef fun error_msg do return "comment, eol"
1096 redef fun action(parser) do
1097 parser.peek_token.action_sinstruction(parser)
1098 end
1099 end
1100 # State directive
1101 private class LRStatedirective
1102 super LRState
1103 redef fun to_s do return "directive"
1104 redef fun error_msg do return "comment, eol"
1105 redef fun action(parser) do
1106 parser.peek_token.action_sdirective(parser)
1107 end
1108 end
1109 # State tk_byte
1110 private class LRStatetk_byte
1111 super LRState
1112 redef fun to_s do return "tk_byte"
1113 redef fun error_msg do return "value"
1114 redef fun action(parser) do
1115 parser.peek_token.action_stk_byte(parser)
1116 end
1117 redef fun goto(parser, goto) do
1118 parser.push(state_tk_byte_32dvalue)
1119 end
1120 end
1121 # State tk_word
1122 private class LRStatetk_word
1123 super LRState
1124 redef fun to_s do return "tk_word"
1125 redef fun error_msg do return "value"
1126 redef fun action(parser) do
1127 parser.peek_token.action_stk_word(parser)
1128 end
1129 redef fun goto(parser, goto) do
1130 parser.push(state_tk_word_32dvalue)
1131 end
1132 end
1133 # State tk_block
1134 private class LRStatetk_block
1135 super LRState
1136 redef fun to_s do return "tk_block"
1137 redef fun error_msg do return "value"
1138 redef fun action(parser) do
1139 parser.peek_token.action_stk_block(parser)
1140 end
1141 redef fun goto(parser, goto) do
1142 parser.push(state_tk_block_32dvalue)
1143 end
1144 end
1145 # State tk_ascii
1146 private class LRStatetk_ascii
1147 super LRState
1148 redef fun to_s do return "tk_ascii"
1149 redef fun error_msg do return "value"
1150 redef fun action(parser) do
1151 parser.peek_token.action_stk_ascii(parser)
1152 end
1153 redef fun goto(parser, goto) do
1154 parser.push(state_tk_ascii_32dvalue)
1155 end
1156 end
1157 # State tk_addrss
1158 private class LRStatetk_addrss
1159 super LRState
1160 redef fun to_s do return "tk_addrss"
1161 redef fun error_msg do return "value"
1162 redef fun action(parser) do
1163 parser.peek_token.action_stk_addrss(parser)
1164 end
1165 redef fun goto(parser, goto) do
1166 parser.push(state_tk_addrss_32dvalue)
1167 end
1168 end
1169 # State tk_equate
1170 private class LRStatetk_equate
1171 super LRState
1172 redef fun to_s do return "tk_equate"
1173 redef fun error_msg do return "value"
1174 redef fun action(parser) do
1175 parser.peek_token.action_stk_equate(parser)
1176 end
1177 redef fun goto(parser, goto) do
1178 parser.push(state_tk_equate_32dvalue)
1179 end
1180 end
1181 # State tk_burn
1182 private class LRStatetk_burn
1183 super LRState
1184 redef fun to_s do return "tk_burn"
1185 redef fun error_msg do return "value"
1186 redef fun action(parser) do
1187 parser.peek_token.action_stk_burn(parser)
1188 end
1189 redef fun goto(parser, goto) do
1190 parser.push(state_tk_burn_32dvalue)
1191 end
1192 end
1193 # State end_block
1194 private class LRStateend_block
1195 super LRState
1196 redef fun to_s do return "end_block"
1197 redef fun error_msg do return ""
1198 redef fun action(parser) do
1199 # REDUCE listing::listing_3=end_block
1200 var n0 = parser.pop.as(Nend_block)
1201 var p1 = new Nlisting(null, null, n0)
1202 var prod = p1
1203 parser.node_stack.push prod
1204 parser.goto(goto_Nlisting)
1205 end
1206 end
1207 # State listing Eof
1208 private class LRStatelisting_32dEof
1209 super LRState
1210 redef fun to_s do return "listing Eof"
1211 redef fun error_msg do return ""
1212 redef fun action(parser) do
1213 # REDUCE _start::Start=listing Eof
1214 var n1 = parser.pop.as(NEof)
1215 var n0 = parser.pop.as(Nlisting)
1216 var p1 = new NStart(n0, n1)
1217 var prod = p1
1218 parser.node_stack.push prod
1219 parser.stop = true
1220 end
1221 end
1222 # State line+ label_decl
1223 private class LRStateline_43d_32dlabel_decl
1224 super LRState
1225 redef fun to_s do return "line+ label_decl"
1226 redef fun error_msg do return "instruction, directive"
1227 redef fun action(parser) do
1228 parser.peek_token.action_sline_43d_32dlabel_decl(parser)
1229 end
1230 redef fun goto(parser, goto) do
1231 goto.goto_sline_43d_32dlabel_decl(parser)
1232 end
1233 end
1234 # State line+ line
1235 private class LRStateline_43d_32dline
1236 super LRState
1237 redef fun to_s do return "line+ line"
1238 redef fun error_msg do return ""
1239 redef fun action(parser) do
1240 # REDUCE line+::line+_more=line+ line
1241 var n1 = parser.pop.as(Nline)
1242 var n0 = parser.pop.as(Nodes[Nline])
1243 var prod = n0
1244 n0.items.add(n1)
1245 parser.node_stack.push prod
1246 parser.goto(goto_Nline_43d)
1247 end
1248 end
1249 # State line+ end_block
1250 private class LRStateline_43d_32dend_block
1251 super LRState
1252 redef fun to_s do return "line+ end_block"
1253 redef fun error_msg do return ""
1254 redef fun action(parser) do
1255 # REDUCE listing::listing_2=line+ end_block
1256 var n1 = parser.pop.as(Nend_block)
1257 var n0 = parser.pop.as(Nodes[Nline])
1258 var p1 = new Nlisting(n0, null, n1)
1259 var prod = p1
1260 parser.node_stack.push prod
1261 parser.goto(goto_Nlisting)
1262 end
1263 end
1264 # State label_decl comment
1265 private class LRStatelabel_decl_32dcomment
1266 super LRState
1267 redef fun to_s do return "label_decl comment"
1268 redef fun error_msg do return "eol"
1269 redef fun action(parser) do
1270 parser.peek_token.action_slabel_decl_32dcomment(parser)
1271 end
1272 end
1273 # State label_decl eol
1274 private class LRStatelabel_decl_32deol
1275 super LRState
1276 redef fun to_s do return "label_decl eol"
1277 redef fun error_msg do return ""
1278 redef fun action(parser) do
1279 # REDUCE line::line_empty_2=label_decl eol
1280 var n1 = parser.pop.as(Neol)
1281 var n0 = parser.pop.as(Nlabel_decl)
1282 var p1 = new Nline_empty(n0, null, n1)
1283 var prod = p1
1284 parser.node_stack.push prod
1285 parser.goto(goto_Nline)
1286 end
1287 end
1288 # State label_decl instruction
1289 private class LRStatelabel_decl_32dinstruction
1290 super LRState
1291 redef fun to_s do return "label_decl instruction"
1292 redef fun error_msg do return "comment, eol"
1293 redef fun action(parser) do
1294 parser.peek_token.action_slabel_decl_32dinstruction(parser)
1295 end
1296 end
1297 # State label_decl directive
1298 private class LRStatelabel_decl_32ddirective
1299 super LRState
1300 redef fun to_s do return "label_decl directive"
1301 redef fun error_msg do return "comment, eol"
1302 redef fun action(parser) do
1303 parser.peek_token.action_slabel_decl_32ddirective(parser)
1304 end
1305 end
1306 # State label_decl end_block
1307 private class LRStatelabel_decl_32dend_block
1308 super LRState
1309 redef fun to_s do return "label_decl end_block"
1310 redef fun error_msg do return ""
1311 redef fun action(parser) do
1312 # REDUCE listing::listing_1=label_decl end_block
1313 var n1 = parser.pop.as(Nend_block)
1314 var n0 = parser.pop.as(Nlabel_decl)
1315 var p1 = new Nlisting(null, n0, n1)
1316 var prod = p1
1317 parser.node_stack.push prod
1318 parser.goto(goto_Nlisting)
1319 end
1320 end
1321 # State label_decl id
1322 private class LRStatelabel_decl_32did
1323 super LRState
1324 redef fun to_s do return "label_decl id"
1325 redef fun error_msg do return "operand, value"
1326 redef fun action(parser) do
1327 parser.peek_token.action_slabel_decl_32did(parser)
1328 end
1329 redef fun goto(parser, goto) do
1330 goto.goto_slabel_decl_32did(parser)
1331 end
1332 end
1333 # State id colon
1334 private class LRStateid_32dcolon
1335 super LRState
1336 redef fun to_s do return "id colon"
1337 redef fun error_msg do return ""
1338 redef fun action(parser) do
1339 # REDUCE label_decl::label_decl=id colon
1340 var n1 = parser.pop.as(Ncolon)
1341 var n0 = parser.pop.as(Nid)
1342 var p1 = new Nlabel_decl(n0, n1)
1343 var prod = p1
1344 parser.node_stack.push prod
1345 parser.goto(goto_Nlabel_decl)
1346 end
1347 end
1348 # State id operand
1349 private class LRStateid_32doperand
1350 super LRState
1351 redef fun to_s do return "id operand"
1352 redef fun error_msg do return ""
1353 redef fun action(parser) do
1354 # REDUCE instruction::instruction_binary=id operand
1355 var n1 = parser.pop.as(Noperand)
1356 var n0 = parser.pop.as(Nid)
1357 var p1 = new Ninstruction_binary(n0, n1)
1358 var prod = p1
1359 parser.node_stack.push prod
1360 parser.goto(goto_Ninstruction)
1361 end
1362 end
1363 # State id value
1364 private class LRStateid_32dvalue
1365 super LRState
1366 redef fun to_s do return "id value"
1367 redef fun error_msg do return "comma"
1368 redef fun action(parser) do
1369 parser.peek_token.action_sid_32dvalue(parser)
1370 end
1371 end
1372 # State id id
1373 private class LRStateid_32did
1374 super LRState
1375 redef fun to_s do return "id id"
1376 redef fun error_msg do return ""
1377 redef fun action(parser) do
1378 # REDUCE value::value_label=id
1379 var n0 = parser.pop.as(Nid)
1380 var p1 = new Nvalue_label(n0)
1381 var prod = p1
1382 parser.node_stack.push prod
1383 parser.goto(goto_Nvalue)
1384 end
1385 end
1386 # State id char
1387 private class LRStateid_32dchar
1388 super LRState
1389 redef fun to_s do return "id char"
1390 redef fun error_msg do return ""
1391 redef fun action(parser) do
1392 # REDUCE value::value_char=char
1393 var n0 = parser.pop.as(Nchar)
1394 var p1 = new Nvalue_char(n0)
1395 var prod = p1
1396 parser.node_stack.push prod
1397 parser.goto(goto_Nvalue)
1398 end
1399 end
1400 # State id string
1401 private class LRStateid_32dstring
1402 super LRState
1403 redef fun to_s do return "id string"
1404 redef fun error_msg do return ""
1405 redef fun action(parser) do
1406 # REDUCE value::value_string=string
1407 var n0 = parser.pop.as(Nstring)
1408 var p1 = new Nvalue_string(n0)
1409 var prod = p1
1410 parser.node_stack.push prod
1411 parser.goto(goto_Nvalue)
1412 end
1413 end
1414 # State comment eol
1415 private class LRStatecomment_32deol
1416 super LRState
1417 redef fun to_s do return "comment eol"
1418 redef fun error_msg do return ""
1419 redef fun action(parser) do
1420 # REDUCE line::line_empty_1=comment eol
1421 var n1 = parser.pop.as(Neol)
1422 var n0 = parser.pop.as(Ncomment)
1423 var p1 = new Nline_empty(null, n0, n1)
1424 var prod = p1
1425 parser.node_stack.push prod
1426 parser.goto(goto_Nline)
1427 end
1428 end
1429 # State instruction comment
1430 private class LRStateinstruction_32dcomment
1431 super LRState
1432 redef fun to_s do return "instruction comment"
1433 redef fun error_msg do return "eol"
1434 redef fun action(parser) do
1435 parser.peek_token.action_sinstruction_32dcomment(parser)
1436 end
1437 end
1438 # State instruction eol
1439 private class LRStateinstruction_32deol
1440 super LRState
1441 redef fun to_s do return "instruction eol"
1442 redef fun error_msg do return ""
1443 redef fun action(parser) do
1444 # REDUCE line::line_instruction_3=instruction eol
1445 var n1 = parser.pop.as(Neol)
1446 var n0 = parser.pop.as(Ninstruction)
1447 var p1 = new Nline_instruction(null, n0, null, n1)
1448 var prod = p1
1449 parser.node_stack.push prod
1450 parser.goto(goto_Nline)
1451 end
1452 end
1453 # State directive comment
1454 private class LRStatedirective_32dcomment
1455 super LRState
1456 redef fun to_s do return "directive comment"
1457 redef fun error_msg do return "eol"
1458 redef fun action(parser) do
1459 parser.peek_token.action_sdirective_32dcomment(parser)
1460 end
1461 end
1462 # State directive eol
1463 private class LRStatedirective_32deol
1464 super LRState
1465 redef fun to_s do return "directive eol"
1466 redef fun error_msg do return ""
1467 redef fun action(parser) do
1468 # REDUCE line::line_directive_3=directive eol
1469 var n1 = parser.pop.as(Neol)
1470 var n0 = parser.pop.as(Ndirective)
1471 var p1 = new Nline_directive(null, n0, null, n1)
1472 var prod = p1
1473 parser.node_stack.push prod
1474 parser.goto(goto_Nline)
1475 end
1476 end
1477 # State tk_byte value
1478 private class LRStatetk_byte_32dvalue
1479 super LRState
1480 redef fun to_s do return "tk_byte value"
1481 redef fun error_msg do return ""
1482 redef fun action(parser) do
1483 # REDUCE directive::directive_byte=tk_byte value
1484 var n1 = parser.pop.as(Nvalue)
1485 var n0 = parser.pop.as(Ntk_byte)
1486 var p1 = new Ndirective_byte(n0, n1)
1487 var prod = p1
1488 parser.node_stack.push prod
1489 parser.goto(goto_Ndirective)
1490 end
1491 end
1492 # State tk_word value
1493 private class LRStatetk_word_32dvalue
1494 super LRState
1495 redef fun to_s do return "tk_word value"
1496 redef fun error_msg do return ""
1497 redef fun action(parser) do
1498 # REDUCE directive::directive_word=tk_word value
1499 var n1 = parser.pop.as(Nvalue)
1500 var n0 = parser.pop.as(Ntk_word)
1501 var p1 = new Ndirective_word(n0, n1)
1502 var prod = p1
1503 parser.node_stack.push prod
1504 parser.goto(goto_Ndirective)
1505 end
1506 end
1507 # State tk_block value
1508 private class LRStatetk_block_32dvalue
1509 super LRState
1510 redef fun to_s do return "tk_block value"
1511 redef fun error_msg do return ""
1512 redef fun action(parser) do
1513 # REDUCE directive::directive_block=tk_block value
1514 var n1 = parser.pop.as(Nvalue)
1515 var n0 = parser.pop.as(Ntk_block)
1516 var p1 = new Ndirective_block(n0, n1)
1517 var prod = p1
1518 parser.node_stack.push prod
1519 parser.goto(goto_Ndirective)
1520 end
1521 end
1522 # State tk_ascii value
1523 private class LRStatetk_ascii_32dvalue
1524 super LRState
1525 redef fun to_s do return "tk_ascii value"
1526 redef fun error_msg do return ""
1527 redef fun action(parser) do
1528 # REDUCE directive::directive_ascii=tk_ascii value
1529 var n1 = parser.pop.as(Nvalue)
1530 var n0 = parser.pop.as(Ntk_ascii)
1531 var p1 = new Ndirective_ascii(n0, n1)
1532 var prod = p1
1533 parser.node_stack.push prod
1534 parser.goto(goto_Ndirective)
1535 end
1536 end
1537 # State tk_addrss value
1538 private class LRStatetk_addrss_32dvalue
1539 super LRState
1540 redef fun to_s do return "tk_addrss value"
1541 redef fun error_msg do return ""
1542 redef fun action(parser) do
1543 # REDUCE directive::directive_addrss=tk_addrss value
1544 var n1 = parser.pop.as(Nvalue)
1545 var n0 = parser.pop.as(Ntk_addrss)
1546 var p1 = new Ndirective_addrss(n0, n1)
1547 var prod = p1
1548 parser.node_stack.push prod
1549 parser.goto(goto_Ndirective)
1550 end
1551 end
1552 # State tk_equate value
1553 private class LRStatetk_equate_32dvalue
1554 super LRState
1555 redef fun to_s do return "tk_equate value"
1556 redef fun error_msg do return ""
1557 redef fun action(parser) do
1558 # REDUCE directive::directive_equate=tk_equate value
1559 var n1 = parser.pop.as(Nvalue)
1560 var n0 = parser.pop.as(Ntk_equate)
1561 var p1 = new Ndirective_equate(n0, n1)
1562 var prod = p1
1563 parser.node_stack.push prod
1564 parser.goto(goto_Ndirective)
1565 end
1566 end
1567 # State tk_burn value
1568 private class LRStatetk_burn_32dvalue
1569 super LRState
1570 redef fun to_s do return "tk_burn value"
1571 redef fun error_msg do return ""
1572 redef fun action(parser) do
1573 # REDUCE directive::directive_burn=tk_burn value
1574 var n1 = parser.pop.as(Nvalue)
1575 var n0 = parser.pop.as(Ntk_burn)
1576 var p1 = new Ndirective_burn(n0, n1)
1577 var prod = p1
1578 parser.node_stack.push prod
1579 parser.goto(goto_Ndirective)
1580 end
1581 end
1582 # State line+ label_decl end_block
1583 private class LRStateline_43d_32dlabel_decl_32dend_block
1584 super LRState
1585 redef fun to_s do return "line+ label_decl end_block"
1586 redef fun error_msg do return ""
1587 redef fun action(parser) do
1588 # REDUCE listing::listing_0=line+ label_decl end_block
1589 var n2 = parser.pop.as(Nend_block)
1590 var n1 = parser.pop.as(Nlabel_decl)
1591 var n0 = parser.pop.as(Nodes[Nline])
1592 var p1 = new Nlisting(n0, n1, n2)
1593 var prod = p1
1594 parser.node_stack.push prod
1595 parser.goto(goto_Nlisting)
1596 end
1597 end
1598 # State label_decl comment eol
1599 private class LRStatelabel_decl_32dcomment_32deol
1600 super LRState
1601 redef fun to_s do return "label_decl comment eol"
1602 redef fun error_msg do return ""
1603 redef fun action(parser) do
1604 # REDUCE line::line_empty_0=label_decl comment eol
1605 var n2 = parser.pop.as(Neol)
1606 var n1 = parser.pop.as(Ncomment)
1607 var n0 = parser.pop.as(Nlabel_decl)
1608 var p1 = new Nline_empty(n0, n1, n2)
1609 var prod = p1
1610 parser.node_stack.push prod
1611 parser.goto(goto_Nline)
1612 end
1613 end
1614 # State label_decl instruction comment
1615 private class LRStatelabel_decl_32dinstruction_32dcomment
1616 super LRState
1617 redef fun to_s do return "label_decl instruction comment"
1618 redef fun error_msg do return "eol"
1619 redef fun action(parser) do
1620 parser.peek_token.action_slabel_decl_32dinstruction_32dcomment(parser)
1621 end
1622 end
1623 # State label_decl instruction eol
1624 private class LRStatelabel_decl_32dinstruction_32deol
1625 super LRState
1626 redef fun to_s do return "label_decl instruction eol"
1627 redef fun error_msg do return ""
1628 redef fun action(parser) do
1629 # REDUCE line::line_instruction_2=label_decl instruction eol
1630 var n2 = parser.pop.as(Neol)
1631 var n1 = parser.pop.as(Ninstruction)
1632 var n0 = parser.pop.as(Nlabel_decl)
1633 var p1 = new Nline_instruction(n0, n1, null, n2)
1634 var prod = p1
1635 parser.node_stack.push prod
1636 parser.goto(goto_Nline)
1637 end
1638 end
1639 # State label_decl directive comment
1640 private class LRStatelabel_decl_32ddirective_32dcomment
1641 super LRState
1642 redef fun to_s do return "label_decl directive comment"
1643 redef fun error_msg do return "eol"
1644 redef fun action(parser) do
1645 parser.peek_token.action_slabel_decl_32ddirective_32dcomment(parser)
1646 end
1647 end
1648 # State label_decl directive eol
1649 private class LRStatelabel_decl_32ddirective_32deol
1650 super LRState
1651 redef fun to_s do return "label_decl directive eol"
1652 redef fun error_msg do return ""
1653 redef fun action(parser) do
1654 # REDUCE line::line_directive_2=label_decl directive eol
1655 var n2 = parser.pop.as(Neol)
1656 var n1 = parser.pop.as(Ndirective)
1657 var n0 = parser.pop.as(Nlabel_decl)
1658 var p1 = new Nline_directive(n0, n1, null, n2)
1659 var prod = p1
1660 parser.node_stack.push prod
1661 parser.goto(goto_Nline)
1662 end
1663 end
1664 # State id value comma
1665 private class LRStateid_32dvalue_32dcomma
1666 super LRState
1667 redef fun to_s do return "id value comma"
1668 redef fun error_msg do return "id"
1669 redef fun action(parser) do
1670 parser.peek_token.action_sid_32dvalue_32dcomma(parser)
1671 end
1672 end
1673 # State instruction comment eol
1674 private class LRStateinstruction_32dcomment_32deol
1675 super LRState
1676 redef fun to_s do return "instruction comment eol"
1677 redef fun error_msg do return ""
1678 redef fun action(parser) do
1679 # REDUCE line::line_instruction_1=instruction comment eol
1680 var n2 = parser.pop.as(Neol)
1681 var n1 = parser.pop.as(Ncomment)
1682 var n0 = parser.pop.as(Ninstruction)
1683 var p1 = new Nline_instruction(null, n0, n1, n2)
1684 var prod = p1
1685 parser.node_stack.push prod
1686 parser.goto(goto_Nline)
1687 end
1688 end
1689 # State directive comment eol
1690 private class LRStatedirective_32dcomment_32deol
1691 super LRState
1692 redef fun to_s do return "directive comment eol"
1693 redef fun error_msg do return ""
1694 redef fun action(parser) do
1695 # REDUCE line::line_directive_1=directive comment eol
1696 var n2 = parser.pop.as(Neol)
1697 var n1 = parser.pop.as(Ncomment)
1698 var n0 = parser.pop.as(Ndirective)
1699 var p1 = new Nline_directive(null, n0, n1, n2)
1700 var prod = p1
1701 parser.node_stack.push prod
1702 parser.goto(goto_Nline)
1703 end
1704 end
1705 # State label_decl instruction comment eol
1706 private class LRStatelabel_decl_32dinstruction_32dcomment_32deol
1707 super LRState
1708 redef fun to_s do return "label_decl instruction comment eol"
1709 redef fun error_msg do return ""
1710 redef fun action(parser) do
1711 # REDUCE line::line_instruction_0=label_decl instruction comment eol
1712 var n3 = parser.pop.as(Neol)
1713 var n2 = parser.pop.as(Ncomment)
1714 var n1 = parser.pop.as(Ninstruction)
1715 var n0 = parser.pop.as(Nlabel_decl)
1716 var p1 = new Nline_instruction(n0, n1, n2, n3)
1717 var prod = p1
1718 parser.node_stack.push prod
1719 parser.goto(goto_Nline)
1720 end
1721 end
1722 # State label_decl directive comment eol
1723 private class LRStatelabel_decl_32ddirective_32dcomment_32deol
1724 super LRState
1725 redef fun to_s do return "label_decl directive comment eol"
1726 redef fun error_msg do return ""
1727 redef fun action(parser) do
1728 # REDUCE line::line_directive_0=label_decl directive comment eol
1729 var n3 = parser.pop.as(Neol)
1730 var n2 = parser.pop.as(Ncomment)
1731 var n1 = parser.pop.as(Ndirective)
1732 var n0 = parser.pop.as(Nlabel_decl)
1733 var p1 = new Nline_directive(n0, n1, n2, n3)
1734 var prod = p1
1735 parser.node_stack.push prod
1736 parser.goto(goto_Nline)
1737 end
1738 end
1739 # State id value comma id
1740 private class LRStateid_32dvalue_32dcomma_32did
1741 super LRState
1742 redef fun to_s do return "id value comma id"
1743 redef fun error_msg do return ""
1744 redef fun action(parser) do
1745 # REDUCE operand::operand_any=value comma id
1746 var n2 = parser.pop.as(Nid)
1747 var n1 = parser.pop.as(Ncomma)
1748 var n0 = parser.pop.as(Nvalue)
1749 var p1 = new Noperand_any(n0, n1, n2)
1750 var prod = p1
1751 parser.node_stack.push prod
1752 parser.goto(goto_Noperand)
1753 end
1754 end