1 #include "nit__parser_work.sep.0.h"
2 /* method parser_work#State#state= for (self: State, Int) */
3 void nit__parser_work___nit__parser_work__State___state_61d(val
* self
, long p0
) {
4 self
->attrs
[COLOR_nit__parser_work__State___state
].l
= p0
; /* _state on <self:State> */
7 /* method parser_work#State#nodes= for (self: State, nullable Object) */
8 void nit__parser_work___nit__parser_work__State___nodes_61d(val
* self
, val
* p0
) {
9 self
->attrs
[COLOR_nit__parser_work__State___nodes
].val
= p0
; /* _nodes on <self:State> */
12 /* method parser_work#State#init for (self: State) */
13 void nit__parser_work___nit__parser_work__State___standard__kernel__Object__init(val
* self
) {
15 ((void (*)(val
* self
))(self
->class->vft
[COLOR_nit__parser_work___nit__parser_work__State___standard__kernel__Object__init
]))(self
) /* init on <self:State>*/;
19 /* method parser_work#Parser#lexer= for (self: Parser, Lexer) */
20 void nit___nit__Parser___lexer_61d(val
* self
, val
* p0
) {
21 self
->attrs
[COLOR_nit__parser_work__Parser___lexer
].val
= p0
; /* _lexer on <self:Parser> */
24 /* method parser_work#Parser#init for (self: Parser) */
25 void nit___nit__Parser___standard__kernel__Object__init(val
* self
) {
27 nit__parser___Parser___build_reduce_table(self
); /* Direct call parser#Parser#build_reduce_table on <self:Parser>*/
31 /* method parser_work#Parser#go_to for (self: Parser, Int): Int */
32 long nit___nit__Parser___go_to(val
* self
, long p0
) {
34 long var_index
/* var index: Int */;
35 long var1
/* : Int */;
36 long var_state
/* var state: Int */;
37 long var2
/* : Int */;
38 long var_low
/* var low: Int */;
39 long var3
/* : Int */;
40 long var4
/* : Int */;
41 long var6
/* : Int for extern */;
42 long var7
/* : Int */;
43 long var8
/* : Int */;
44 short int var10
/* : Bool */;
47 const char* var_class_name
;
48 long var11
/* : Int */;
49 long var_high
/* var high: Int */;
50 short int var12
/* : Bool */;
51 short int var14
/* : Bool */;
54 const char* var_class_name17
;
55 short int var18
/* : Bool */;
56 long var19
/* : Int */;
57 short int var21
/* : Bool */;
60 const char* var_class_name24
;
61 long var25
/* : Int */;
62 long var26
/* : Int */;
63 long var27
/* : Int */;
64 short int var29
/* : Bool */;
67 const char* var_class_name32
;
68 long var33
/* : Int */;
69 long var_middle
/* var middle: Int */;
70 long var34
/* : Int */;
71 long var35
/* : Int */;
72 short int var37
/* : Bool */;
75 const char* var_class_name40
;
76 long var41
/* : Int */;
77 long var42
/* : Int */;
78 long var43
/* : Int */;
79 short int var45
/* : Bool */;
82 const char* var_class_name48
;
83 long var49
/* : Int */;
84 long var_subindex
/* var subindex: Int */;
85 long var50
/* : Int */;
86 long var52
/* : Int for extern */;
87 long var_goal
/* var goal: Int */;
88 short int var53
/* : Bool */;
89 short int var55
/* : Bool */;
92 const char* var_class_name58
;
93 short int var59
/* : Bool */;
94 long var60
/* : Int */;
95 long var61
/* : Int */;
96 short int var63
/* : Bool */;
99 const char* var_class_name66
;
100 long var67
/* : Int */;
101 short int var68
/* : Bool */;
102 short int var70
/* : Bool */;
105 const char* var_class_name73
;
106 short int var74
/* : Bool */;
107 long var75
/* : Int */;
108 long var76
/* : Int */;
109 short int var78
/* : Bool */;
112 const char* var_class_name81
;
113 long var82
/* : Int */;
114 long var83
/* : Int */;
115 long var84
/* : Int */;
116 short int var86
/* : Bool */;
119 const char* var_class_name89
;
120 long var90
/* : Int */;
121 long var91
/* : Int */;
122 long var93
/* : Int for extern */;
123 long var94
/* : Int */;
124 long var95
/* : Int */;
125 long var97
/* : Int for extern */;
128 var1
= nit___nit__Parser___state(self
);
135 { /* Inline tables#TablesCapable#parser_goto (self,var_index,var3) on <self:Parser> */
136 var6
= parser_goto(self
, var_index
, var3
);
144 { /* Inline kernel#Int#- (var4,var7) on <var4:Int> */
145 /* Covariant cast for argument 0 (i) <var7:Int> isa OTHER */
146 /* <var7:Int> isa OTHER */
147 var10
= 1; /* easy <var7:Int> isa OTHER*/
148 if (unlikely(!var10
)) {
149 var_class_name
= type_standard__Int
.name
;
150 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
151 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 416);
163 { /* Inline kernel#Int#<= (var_low,var_high) on <var_low:Int> */
164 /* Covariant cast for argument 0 (i) <var_high:Int> isa OTHER */
165 /* <var_high:Int> isa OTHER */
166 var14
= 1; /* easy <var_high:Int> isa OTHER*/
167 if (unlikely(!var14
)) {
168 var_class_name17
= type_standard__Int
.name
;
169 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name17
);
170 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 409);
173 var18
= var_low
<= var_high
;
181 { /* Inline kernel#Int#+ (var_low,var_high) on <var_low:Int> */
182 /* Covariant cast for argument 0 (i) <var_high:Int> isa OTHER */
183 /* <var_high:Int> isa OTHER */
184 var21
= 1; /* easy <var_high:Int> isa OTHER*/
185 if (unlikely(!var21
)) {
186 var_class_name24
= type_standard__Int
.name
;
187 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name24
);
188 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 413);
191 var25
= var_low
+ var_high
;
199 { /* Inline kernel#Int#/ (var19,var26) on <var19:Int> */
200 /* Covariant cast for argument 0 (i) <var26:Int> isa OTHER */
201 /* <var26:Int> isa OTHER */
202 var29
= 1; /* easy <var26:Int> isa OTHER*/
203 if (unlikely(!var29
)) {
204 var_class_name32
= type_standard__Int
.name
;
205 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name32
);
206 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 418);
209 var33
= var19
/ var26
;
218 { /* Inline kernel#Int#* (var_middle,var34) on <var_middle:Int> */
219 /* Covariant cast for argument 0 (i) <var34:Int> isa OTHER */
220 /* <var34:Int> isa OTHER */
221 var37
= 1; /* easy <var34:Int> isa OTHER*/
222 if (unlikely(!var37
)) {
223 var_class_name40
= type_standard__Int
.name
;
224 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name40
);
225 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 417);
228 var41
= var_middle
* var34
;
236 { /* Inline kernel#Int#+ (var35,var42) on <var35:Int> */
237 /* Covariant cast for argument 0 (i) <var42:Int> isa OTHER */
238 /* <var42:Int> isa OTHER */
239 var45
= 1; /* easy <var42:Int> isa OTHER*/
240 if (unlikely(!var45
)) {
241 var_class_name48
= type_standard__Int
.name
;
242 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name48
);
243 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 413);
246 var49
= var35
+ var42
;
252 var_subindex
= var43
;
254 { /* Inline tables#TablesCapable#parser_goto (self,var_index,var_subindex) on <self:Parser> */
255 var52
= parser_goto(self
, var_index
, var_subindex
);
263 { /* Inline kernel#Int#< (var_state,var_goal) on <var_state:Int> */
264 /* Covariant cast for argument 0 (i) <var_goal:Int> isa OTHER */
265 /* <var_goal:Int> isa OTHER */
266 var55
= 1; /* easy <var_goal:Int> isa OTHER*/
267 if (unlikely(!var55
)) {
268 var_class_name58
= type_standard__Int
.name
;
269 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name58
);
270 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 410);
273 var59
= var_state
< var_goal
;
282 { /* Inline kernel#Int#- (var_middle,var60) on <var_middle:Int> */
283 /* Covariant cast for argument 0 (i) <var60:Int> isa OTHER */
284 /* <var60:Int> isa OTHER */
285 var63
= 1; /* easy <var60:Int> isa OTHER*/
286 if (unlikely(!var63
)) {
287 var_class_name66
= type_standard__Int
.name
;
288 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name66
);
289 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 416);
292 var67
= var_middle
- var60
;
301 { /* Inline kernel#Int#> (var_state,var_goal) on <var_state:Int> */
302 /* Covariant cast for argument 0 (i) <var_goal:Int> isa OTHER */
303 /* <var_goal:Int> isa OTHER */
304 var70
= 1; /* easy <var_goal:Int> isa OTHER*/
305 if (unlikely(!var70
)) {
306 var_class_name73
= type_standard__Int
.name
;
307 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name73
);
308 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 412);
311 var74
= var_state
> var_goal
;
320 { /* Inline kernel#Int#+ (var_middle,var75) on <var_middle:Int> */
321 /* Covariant cast for argument 0 (i) <var75:Int> isa OTHER */
322 /* <var75:Int> isa OTHER */
323 var78
= 1; /* easy <var75:Int> isa OTHER*/
324 if (unlikely(!var78
)) {
325 var_class_name81
= type_standard__Int
.name
;
326 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name81
);
327 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 413);
330 var82
= var_middle
+ var75
;
340 { /* Inline kernel#Int#+ (var_subindex,var83) on <var_subindex:Int> */
341 /* Covariant cast for argument 0 (i) <var83:Int> isa OTHER */
342 /* <var83:Int> isa OTHER */
343 var86
= 1; /* easy <var83:Int> isa OTHER*/
344 if (unlikely(!var86
)) {
345 var_class_name89
= type_standard__Int
.name
;
346 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name89
);
347 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 413);
350 var90
= var_subindex
+ var83
;
357 { /* Inline tables#TablesCapable#parser_goto (self,var_index,var84) on <self:Parser> */
358 var93
= parser_goto(self
, var_index
, var84
);
372 BREAK_label
: (void)0;
375 { /* Inline tables#TablesCapable#parser_goto (self,var_index,var94) on <self:Parser> */
376 var97
= parser_goto(self
, var_index
, var94
);
387 /* method parser_work#Parser#push for (self: Parser, Int, nullable Object) */
388 void nit___nit__Parser___push(val
* self
, long p0
, val
* p1
) {
389 long var_numstate
/* var numstate: Int */;
390 val
* var_list_node
/* var list_node: nullable Object */;
391 long var
/* : Int */;
392 long var1
/* : Int */;
393 long var2
/* : Int */;
394 short int var4
/* : Bool */;
397 const char* var_class_name
;
398 long var5
/* : Int */;
399 long var_pos
/* var pos: Int */;
400 val
* var6
/* : Array[State] */;
401 long var7
/* : Int */;
402 long var9
/* : Int */;
403 short int var10
/* : Bool */;
404 short int var12
/* : Bool */;
407 const char* var_class_name15
;
408 short int var16
/* : Bool */;
409 val
* var17
/* : Array[State] */;
410 val
* var18
/* : nullable Object */;
411 val
* var_state
/* var state: State */;
412 val
* var19
/* : Array[State] */;
413 val
* var20
/* : State */;
416 var
= self
->attrs
[COLOR_nit__parser_work__Parser___stack_pos
].l
; /* _stack_pos on <self:Parser> */
419 { /* Inline kernel#Int#+ (var,var1) on <var:Int> */
420 /* Covariant cast for argument 0 (i) <var1:Int> isa OTHER */
421 /* <var1:Int> isa OTHER */
422 var4
= 1; /* easy <var1:Int> isa OTHER*/
423 if (unlikely(!var4
)) {
424 var_class_name
= type_standard__Int
.name
;
425 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
426 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 413);
436 self
->attrs
[COLOR_nit__parser_work__Parser___stack_pos
].l
= var_pos
; /* _stack_pos on <self:Parser> */
437 var6
= self
->attrs
[COLOR_nit__parser_work__Parser___stack
].val
; /* _stack on <self:Parser> */
438 if (unlikely(var6
== NULL
)) {
439 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _stack");
440 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_work
, 75);
444 { /* Inline array#AbstractArrayRead#length (var6) on <var6:Array[State]> */
445 var9
= var6
->attrs
[COLOR_standard__array__AbstractArrayRead___length
].l
; /* _length on <var6:Array[State]> */
451 { /* Inline kernel#Int#< (var_pos,var7) on <var_pos:Int> */
452 /* Covariant cast for argument 0 (i) <var7:Int> isa OTHER */
453 /* <var7:Int> isa OTHER */
454 var12
= 1; /* easy <var7:Int> isa OTHER*/
455 if (unlikely(!var12
)) {
456 var_class_name15
= type_standard__Int
.name
;
457 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name15
);
458 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 410);
461 var16
= var_pos
< var7
;
468 var17
= self
->attrs
[COLOR_nit__parser_work__Parser___stack
].val
; /* _stack on <self:Parser> */
469 if (unlikely(var17
== NULL
)) {
470 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _stack");
471 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_work
, 76);
475 var18
= standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var17
, var_pos
);
478 var_state
->attrs
[COLOR_nit__parser_work__State___state
].l
= var_numstate
; /* _state on <var_state:State> */
479 var_state
->attrs
[COLOR_nit__parser_work__State___nodes
].val
= var_list_node
; /* _nodes on <var_state:State> */
481 var19
= self
->attrs
[COLOR_nit__parser_work__Parser___stack
].val
; /* _stack on <self:Parser> */
482 if (unlikely(var19
== NULL
)) {
483 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _stack");
484 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_work
, 80);
487 var20
= NEW_nit__parser_work__State(&type_nit__parser_work__State
);
489 ((void (*)(val
* self
, long p0
))(var20
->class->vft
[COLOR_nit__parser_work__State__state_61d
]))(var20
, var_numstate
) /* state= on <var20:State>*/;
492 ((void (*)(val
* self
, val
* p0
))(var20
->class->vft
[COLOR_nit__parser_work__State__nodes_61d
]))(var20
, var_list_node
) /* nodes= on <var20:State>*/;
495 ((void (*)(val
* self
))(var20
->class->vft
[COLOR_standard__kernel__Object__init
]))(var20
) /* init on <var20:State>*/;
498 standard___standard__AbstractArray___standard__abstract_collection__Sequence__push(var19
, var20
); /* Direct call array#AbstractArray#push on <var19:Array[State]>*/
503 /* method parser_work#Parser#state for (self: Parser): Int */
504 long nit___nit__Parser___state(val
* self
) {
505 long var
/* : Int */;
506 val
* var1
/* : Array[State] */;
507 long var2
/* : Int */;
508 val
* var3
/* : nullable Object */;
509 long var4
/* : Int */;
510 var1
= self
->attrs
[COLOR_nit__parser_work__Parser___stack
].val
; /* _stack on <self:Parser> */
511 if (unlikely(var1
== NULL
)) {
512 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _stack");
513 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_work
, 87);
516 var2
= self
->attrs
[COLOR_nit__parser_work__Parser___stack_pos
].l
; /* _stack_pos on <self:Parser> */
518 var3
= standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var1
, var2
);
520 var4
= var3
->attrs
[COLOR_nit__parser_work__State___state
].l
; /* _state on <var3:nullable Object(State)> */
526 /* method parser_work#Parser#pop for (self: Parser): nullable Object */
527 val
* nit___nit__Parser___pop(val
* self
) {
528 val
* var
/* : nullable Object */;
529 val
* var1
/* : Array[State] */;
530 long var2
/* : Int */;
531 val
* var3
/* : nullable Object */;
532 val
* var4
/* : nullable Object */;
533 val
* var_res
/* var res: nullable Object */;
534 long var5
/* : Int */;
535 long var6
/* : Int */;
536 long var7
/* : Int */;
537 short int var9
/* : Bool */;
540 const char* var_class_name
;
541 long var10
/* : Int */;
542 var1
= self
->attrs
[COLOR_nit__parser_work__Parser___stack
].val
; /* _stack on <self:Parser> */
543 if (unlikely(var1
== NULL
)) {
544 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _stack");
545 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_work
, 93);
548 var2
= self
->attrs
[COLOR_nit__parser_work__Parser___stack_pos
].l
; /* _stack_pos on <self:Parser> */
550 var3
= standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var1
, var2
);
552 var4
= var3
->attrs
[COLOR_nit__parser_work__State___nodes
].val
; /* _nodes on <var3:nullable Object(State)> */
554 var5
= self
->attrs
[COLOR_nit__parser_work__Parser___stack_pos
].l
; /* _stack_pos on <self:Parser> */
557 { /* Inline kernel#Int#- (var5,var6) on <var5:Int> */
558 /* Covariant cast for argument 0 (i) <var6:Int> isa OTHER */
559 /* <var6:Int> isa OTHER */
560 var9
= 1; /* easy <var6:Int> isa OTHER*/
561 if (unlikely(!var9
)) {
562 var_class_name
= type_standard__Int
.name
;
563 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
564 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 416);
573 self
->attrs
[COLOR_nit__parser_work__Parser___stack_pos
].l
= var7
; /* _stack_pos on <self:Parser> */
579 /* method parser_work#Parser#parse for (self: Parser): Start */
580 val
* nit___nit__Parser___parse(val
* self
) {
581 val
* var
/* : Start */;
582 long var1
/* : Int */;
583 val
* var2
/* : null */;
584 val
* var3
/* : Lexer */;
585 val
* var_lexer
/* var lexer: Lexer */;
586 val
* var4
/* : Token */;
587 val
* var_token
/* var token: Token */;
588 short int var5
/* : Bool */;
591 val
* var6
/* : Start */;
592 val
* var7
/* : null */;
593 long var8
/* : Int */;
594 long var_state
/* var state: Int */;
595 long var9
/* : Int */;
596 long var_index
/* var index: Int */;
597 long var10
/* : Int */;
598 long var11
/* : Int */;
599 long var13
/* : Int for extern */;
600 long var_action_type
/* var action_type: Int */;
601 long var14
/* : Int */;
602 long var15
/* : Int */;
603 long var17
/* : Int for extern */;
604 long var_action_value
/* var action_value: Int */;
605 long var18
/* : Int */;
606 long var_low
/* var low: Int */;
607 long var19
/* : Int */;
608 long var20
/* : Int */;
609 long var22
/* : Int for extern */;
610 long var23
/* : Int */;
611 long var24
/* : Int */;
612 short int var26
/* : Bool */;
615 const char* var_class_name
;
616 long var29
/* : Int */;
617 long var_high
/* var high: Int */;
618 short int var30
/* : Bool */;
619 short int var32
/* : Bool */;
622 const char* var_class_name35
;
623 short int var36
/* : Bool */;
624 long var37
/* : Int */;
625 short int var39
/* : Bool */;
628 const char* var_class_name42
;
629 long var43
/* : Int */;
630 long var44
/* : Int */;
631 long var45
/* : Int */;
632 short int var47
/* : Bool */;
635 const char* var_class_name50
;
636 long var51
/* : Int */;
637 long var_middle
/* var middle: Int */;
638 long var52
/* : Int */;
639 long var53
/* : Int */;
640 short int var55
/* : Bool */;
643 const char* var_class_name58
;
644 long var59
/* : Int */;
645 long var60
/* : Int */;
646 long var61
/* : Int */;
647 short int var63
/* : Bool */;
650 const char* var_class_name66
;
651 long var67
/* : Int */;
652 long var_subindex
/* var subindex: Int */;
653 long var68
/* : Int */;
654 long var70
/* : Int for extern */;
655 long var_goal
/* var goal: Int */;
656 short int var71
/* : Bool */;
657 short int var73
/* : Bool */;
660 const char* var_class_name76
;
661 short int var77
/* : Bool */;
662 long var78
/* : Int */;
663 long var79
/* : Int */;
664 short int var81
/* : Bool */;
667 const char* var_class_name84
;
668 long var85
/* : Int */;
669 short int var86
/* : Bool */;
670 short int var88
/* : Bool */;
673 const char* var_class_name91
;
674 short int var92
/* : Bool */;
675 long var93
/* : Int */;
676 long var94
/* : Int */;
677 short int var96
/* : Bool */;
680 const char* var_class_name99
;
681 long var100
/* : Int */;
682 long var101
/* : Int */;
683 long var102
/* : Int */;
684 short int var104
/* : Bool */;
687 const char* var_class_name107
;
688 long var108
/* : Int */;
689 long var109
/* : Int */;
690 long var111
/* : Int for extern */;
691 long var112
/* : Int */;
692 long var113
/* : Int */;
693 short int var115
/* : Bool */;
696 const char* var_class_name118
;
697 long var119
/* : Int */;
698 long var120
/* : Int */;
699 long var122
/* : Int for extern */;
700 long var123
/* : Int */;
701 short int var124
/* : Bool */;
702 short int var126
/* : Bool */;
703 val
* var127
/* : Token */;
704 long var128
/* : Int */;
705 short int var129
/* : Bool */;
706 short int var131
/* : Bool */;
707 val
* var132
/* : Array[ReduceAction] */;
708 val
* var133
/* : nullable Object */;
709 long var134
/* : Int */;
710 short int var135
/* : Bool */;
711 short int var137
/* : Bool */;
712 val
* var138
/* : Token */;
713 val
* var_node2
/* var node2: Token */;
714 short int var139
/* : Bool */;
717 val
* var142
/* : nullable Object */;
718 val
* var_node1
/* var node1: nullable Object */;
719 short int var143
/* : Bool */;
722 val
* var146
/* : Start */;
723 val
* var_node
/* var node: Start */;
724 val
* var147
/* : ComputeProdLocationVisitor */;
725 long var149
/* : Int */;
726 short int var150
/* : Bool */;
727 short int var152
/* : Bool */;
728 short int var153
/* : Bool */;
729 short int var154
/* : Bool */;
730 val
* var155
/* : Token */;
731 val
* var157
/* : AParserError */;
733 val
* var158
/* : String */;
734 char* var159
/* : NativeString */;
735 long var160
/* : Int */;
736 val
* var161
/* : FlatString */;
737 static val
* varonce162
;
738 val
* var163
/* : String */;
739 char* var164
/* : NativeString */;
740 long var165
/* : Int */;
741 val
* var166
/* : FlatString */;
742 val
* var167
/* : Array[Object] */;
743 long var168
/* : Int */;
744 val
* var169
/* : NativeArray[Object] */;
745 val
* var170
/* : String */;
746 val
* var171
/* : Location */;
747 val
* var173
/* : Location */;
748 val
* var_node2174
/* var node2: AParserError */;
749 val
* var175
/* : Start */;
750 val
* var176
/* : null */;
751 val
* var_node177
/* var node: Start */;
755 nit___nit__Parser___push(self
, var1
, var2
); /* Direct call parser_work#Parser#push on <self:Parser>*/
757 var3
= self
->attrs
[COLOR_nit__parser_work__Parser___lexer
].val
; /* _lexer on <self:Parser> */
758 if (unlikely(var3
== NULL
)) {
759 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _lexer");
760 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_work
, 103);
766 var4
= nit___nit__Lexer___peek(var_lexer
);
769 /* <var_token:Token> isa AError */
770 cltype
= type_nit__AError
.color
;
771 idtype
= type_nit__AError
.id
;
772 if(cltype
>= var_token
->type
->table_size
) {
775 var5
= var_token
->type
->type_table
[cltype
] == idtype
;
778 var6
= NEW_nit__Start(&type_nit__Start
);
781 ((void (*)(val
* self
, val
* p0
))(var6
->class->vft
[COLOR_nit__parser_nodes__Start__n_base_61d
]))(var6
, var7
) /* n_base= on <var6:Start>*/;
784 ((void (*)(val
* self
, val
* p0
))(var6
->class->vft
[COLOR_nit__parser_nodes__Start__n_eof_61d
]))(var6
, var_token
) /* n_eof= on <var6:Start>*/;
787 ((void (*)(val
* self
))(var6
->class->vft
[COLOR_standard__kernel__Object__init
]))(var6
) /* init on <var6:Start>*/;
794 var8
= nit___nit__Parser___state(self
);
798 var9
= ((long (*)(val
* self
))(var_token
->class->vft
[COLOR_nit__lexer_work__Token__parser_index
]))(var_token
) /* parser_index on <var_token:Token>*/;
803 { /* Inline tables#TablesCapable#parser_action (self,var_state,var10) on <self:Parser> */
804 var13
= parser_action(self
, var_state
, var10
);
810 var_action_type
= var11
;
813 { /* Inline tables#TablesCapable#parser_action (self,var_state,var14) on <self:Parser> */
814 var17
= parser_action(self
, var_state
, var14
);
820 var_action_value
= var15
;
825 { /* Inline tables#TablesCapable#parser_action (self,var_state,var19) on <self:Parser> */
826 var22
= parser_action(self
, var_state
, var19
);
834 { /* Inline kernel#Int#- (var20,var23) on <var20:Int> */
835 /* Covariant cast for argument 0 (i) <var23:Int> isa OTHER */
836 /* <var23:Int> isa OTHER */
837 var26
= 1; /* easy <var23:Int> isa OTHER*/
838 if (unlikely(!var26
)) {
839 var_class_name
= type_standard__Int
.name
;
840 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
841 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 416);
844 var29
= var20
- var23
;
853 { /* Inline kernel#Int#<= (var_low,var_high) on <var_low:Int> */
854 /* Covariant cast for argument 0 (i) <var_high:Int> isa OTHER */
855 /* <var_high:Int> isa OTHER */
856 var32
= 1; /* easy <var_high:Int> isa OTHER*/
857 if (unlikely(!var32
)) {
858 var_class_name35
= type_standard__Int
.name
;
859 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name35
);
860 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 409);
863 var36
= var_low
<= var_high
;
871 { /* Inline kernel#Int#+ (var_low,var_high) on <var_low:Int> */
872 /* Covariant cast for argument 0 (i) <var_high:Int> isa OTHER */
873 /* <var_high:Int> isa OTHER */
874 var39
= 1; /* easy <var_high:Int> isa OTHER*/
875 if (unlikely(!var39
)) {
876 var_class_name42
= type_standard__Int
.name
;
877 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name42
);
878 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 413);
881 var43
= var_low
+ var_high
;
889 { /* Inline kernel#Int#/ (var37,var44) on <var37:Int> */
890 /* Covariant cast for argument 0 (i) <var44:Int> isa OTHER */
891 /* <var44:Int> isa OTHER */
892 var47
= 1; /* easy <var44:Int> isa OTHER*/
893 if (unlikely(!var47
)) {
894 var_class_name50
= type_standard__Int
.name
;
895 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name50
);
896 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 418);
899 var51
= var37
/ var44
;
908 { /* Inline kernel#Int#* (var_middle,var52) on <var_middle:Int> */
909 /* Covariant cast for argument 0 (i) <var52:Int> isa OTHER */
910 /* <var52:Int> isa OTHER */
911 var55
= 1; /* easy <var52:Int> isa OTHER*/
912 if (unlikely(!var55
)) {
913 var_class_name58
= type_standard__Int
.name
;
914 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name58
);
915 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 417);
918 var59
= var_middle
* var52
;
926 { /* Inline kernel#Int#+ (var53,var60) on <var53:Int> */
927 /* Covariant cast for argument 0 (i) <var60:Int> isa OTHER */
928 /* <var60:Int> isa OTHER */
929 var63
= 1; /* easy <var60:Int> isa OTHER*/
930 if (unlikely(!var63
)) {
931 var_class_name66
= type_standard__Int
.name
;
932 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name66
);
933 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 413);
936 var67
= var53
+ var60
;
942 var_subindex
= var61
;
944 { /* Inline tables#TablesCapable#parser_action (self,var_state,var_subindex) on <self:Parser> */
945 var70
= parser_action(self
, var_state
, var_subindex
);
953 { /* Inline kernel#Int#< (var_index,var_goal) on <var_index:Int> */
954 /* Covariant cast for argument 0 (i) <var_goal:Int> isa OTHER */
955 /* <var_goal:Int> isa OTHER */
956 var73
= 1; /* easy <var_goal:Int> isa OTHER*/
957 if (unlikely(!var73
)) {
958 var_class_name76
= type_standard__Int
.name
;
959 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name76
);
960 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 410);
963 var77
= var_index
< var_goal
;
972 { /* Inline kernel#Int#- (var_middle,var78) on <var_middle:Int> */
973 /* Covariant cast for argument 0 (i) <var78:Int> isa OTHER */
974 /* <var78:Int> isa OTHER */
975 var81
= 1; /* easy <var78:Int> isa OTHER*/
976 if (unlikely(!var81
)) {
977 var_class_name84
= type_standard__Int
.name
;
978 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name84
);
979 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 416);
982 var85
= var_middle
- var78
;
991 { /* Inline kernel#Int#> (var_index,var_goal) on <var_index:Int> */
992 /* Covariant cast for argument 0 (i) <var_goal:Int> isa OTHER */
993 /* <var_goal:Int> isa OTHER */
994 var88
= 1; /* easy <var_goal:Int> isa OTHER*/
995 if (unlikely(!var88
)) {
996 var_class_name91
= type_standard__Int
.name
;
997 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name91
);
998 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 412);
1001 var92
= var_index
> var_goal
;
1004 RET_LABEL87
:(void)0;
1010 { /* Inline kernel#Int#+ (var_middle,var93) on <var_middle:Int> */
1011 /* Covariant cast for argument 0 (i) <var93:Int> isa OTHER */
1012 /* <var93:Int> isa OTHER */
1013 var96
= 1; /* easy <var93:Int> isa OTHER*/
1014 if (unlikely(!var96
)) {
1015 var_class_name99
= type_standard__Int
.name
;
1016 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name99
);
1017 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 413);
1020 var100
= var_middle
+ var93
;
1023 RET_LABEL95
:(void)0;
1030 { /* Inline kernel#Int#+ (var_subindex,var101) on <var_subindex:Int> */
1031 /* Covariant cast for argument 0 (i) <var101:Int> isa OTHER */
1032 /* <var101:Int> isa OTHER */
1033 var104
= 1; /* easy <var101:Int> isa OTHER*/
1034 if (unlikely(!var104
)) {
1035 var_class_name107
= type_standard__Int
.name
;
1036 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name107
);
1037 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 413);
1040 var108
= var_subindex
+ var101
;
1043 RET_LABEL103
:(void)0;
1047 { /* Inline tables#TablesCapable#parser_action (self,var_state,var102) on <self:Parser> */
1048 var111
= parser_action(self
, var_state
, var102
);
1051 RET_LABEL110
:(void)0;
1054 var_action_type
= var109
;
1057 { /* Inline kernel#Int#+ (var_subindex,var112) on <var_subindex:Int> */
1058 /* Covariant cast for argument 0 (i) <var112:Int> isa OTHER */
1059 /* <var112:Int> isa OTHER */
1060 var115
= 1; /* easy <var112:Int> isa OTHER*/
1061 if (unlikely(!var115
)) {
1062 var_class_name118
= type_standard__Int
.name
;
1063 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name118
);
1064 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 413);
1067 var119
= var_subindex
+ var112
;
1070 RET_LABEL114
:(void)0;
1074 { /* Inline tables#TablesCapable#parser_action (self,var_state,var113) on <self:Parser> */
1075 var122
= parser_action(self
, var_state
, var113
);
1078 RET_LABEL121
:(void)0;
1081 var_action_value
= var120
;
1089 BREAK_label
: (void)0;
1092 { /* Inline kernel#Int#== (var_action_type,var123) on <var_action_type:Int> */
1093 var126
= var_action_type
== var123
;
1096 RET_LABEL125
:(void)0;
1101 var127
= nit___nit__Lexer___next(var_lexer
);
1104 nit___nit__Parser___push(self
, var_action_value
, var127
); /* Direct call parser_work#Parser#push on <self:Parser>*/
1109 { /* Inline kernel#Int#== (var_action_type,var128) on <var_action_type:Int> */
1110 var131
= var_action_type
== var128
;
1113 RET_LABEL130
:(void)0;
1117 var132
= self
->attrs
[COLOR_nit__parser_work__Parser___reduce_table
].val
; /* _reduce_table on <self:Parser> */
1118 if (unlikely(var132
== NULL
)) {
1119 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _reduce_table");
1120 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_work
, 137);
1124 var133
= standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var132
, var_action_value
);
1127 ((void (*)(val
* self
, val
* p0
))(var133
->class->vft
[COLOR_nit__parser_work__ReduceAction__action
]))(var133
, self
) /* action on <var133:nullable Object(ReduceAction)>*/;
1132 { /* Inline kernel#Int#== (var_action_type,var134) on <var_action_type:Int> */
1133 var137
= var_action_type
== var134
;
1136 RET_LABEL136
:(void)0;
1141 var138
= nit___nit__Lexer___next(var_lexer
);
1144 /* <var_node2:Token> isa EOF */
1145 cltype140
= type_nit__EOF
.color
;
1146 idtype141
= type_nit__EOF
.id
;
1147 if(cltype140
>= var_node2
->type
->table_size
) {
1150 var139
= var_node2
->type
->type_table
[cltype140
] == idtype141
;
1152 if (unlikely(!var139
)) {
1153 PRINT_ERROR("Runtime error: %s", "Assert failed");
1154 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_work
, 140);
1158 var142
= nit___nit__Parser___pop(self
);
1161 /* <var_node1:nullable Object> isa AModule */
1162 cltype144
= type_nit__AModule
.color
;
1163 idtype145
= type_nit__AModule
.id
;
1164 if(var_node1
== NULL
) {
1167 if(cltype144
>= var_node1
->type
->table_size
) {
1170 var143
= var_node1
->type
->type_table
[cltype144
] == idtype145
;
1173 if (unlikely(!var143
)) {
1174 PRINT_ERROR("Runtime error: %s", "Assert failed");
1175 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_work
, 142);
1178 var146
= NEW_nit__Start(&type_nit__Start
);
1180 ((void (*)(val
* self
, val
* p0
))(var146
->class->vft
[COLOR_nit__parser_nodes__Start__n_base_61d
]))(var146
, var_node1
) /* n_base= on <var146:Start>*/;
1183 ((void (*)(val
* self
, val
* p0
))(var146
->class->vft
[COLOR_nit__parser_nodes__Start__n_eof_61d
]))(var146
, var_node2
) /* n_eof= on <var146:Start>*/;
1186 ((void (*)(val
* self
))(var146
->class->vft
[COLOR_standard__kernel__Object__init
]))(var146
) /* init on <var146:Start>*/;
1189 var147
= NEW_nit__parser_work__ComputeProdLocationVisitor(&type_nit__parser_work__ComputeProdLocationVisitor
);
1191 { /* Inline kernel#Object#init (var147) on <var147:ComputeProdLocationVisitor> */
1192 RET_LABEL148
:(void)0;
1196 nit___nit__Visitor___enter_visit(var147
, var_node
); /* Direct call parser_nodes#Visitor#enter_visit on <var147:ComputeProdLocationVisitor>*/
1203 { /* Inline kernel#Int#== (var_action_type,var149) on <var_action_type:Int> */
1204 var152
= var_action_type
== var149
;
1207 RET_LABEL151
:(void)0;
1212 var153
= var_token
->attrs
[COLOR_nit__parser_nodes__ANode___location
].val
!= NULL
; /* _location on <var_token:Token> */
1216 var155
= nit___nit__Lexer___next(var_lexer
);
1220 goto BREAK_label156
;
1223 BREAK_label156
: (void)0;
1224 var157
= NEW_nit__AParserError(&type_nit__AParserError
);
1228 var159
= "Syntax error: unexpected ";
1230 var161
= standard___standard__NativeString___to_s_with_length(var159
, var160
);
1235 var163
= varonce162
;
1239 var166
= standard___standard__NativeString___to_s_with_length(var164
, var165
);
1241 varonce162
= var163
;
1243 var167
= NEW_standard__Array(&type_standard__Array__standard__Object
);
1244 { /* var167 = array_instance Array[Object] */
1246 var169
= NEW_standard__NativeArray(var168
, &type_standard__NativeArray__standard__Object
);
1247 ((struct instance_standard__NativeArray
*)var169
)->values
[0] = (val
*) var158
;
1248 ((struct instance_standard__NativeArray
*)var169
)->values
[1] = (val
*) var_token
;
1249 ((struct instance_standard__NativeArray
*)var169
)->values
[2] = (val
*) var163
;
1251 ((void (*)(val
* self
, val
* p0
, long p1
))(var167
->class->vft
[COLOR_standard__array__Array__with_native
]))(var167
, var169
, var168
) /* with_native on <var167:Array[Object]>*/;
1255 var170
= ((val
* (*)(val
* self
))(var167
->class->vft
[COLOR_standard__string__Object__to_s
]))(var167
) /* to_s on <var167:Array[Object]>*/;
1258 { /* Inline parser_nodes#ANode#location (var_token) on <var_token:Token> */
1259 var173
= var_token
->attrs
[COLOR_nit__parser_nodes__ANode___location
].val
; /* _location on <var_token:Token> */
1260 if (unlikely(var173
== NULL
)) {
1261 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _location");
1262 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes
, 23);
1266 RET_LABEL172
:(void)0;
1270 nit__lexer_work___AParserError___init_parser_error(var157
, var170
, var171
, var_token
); /* Direct call lexer_work#AParserError#init_parser_error on <var157:AParserError>*/
1272 var_node2174
= var157
;
1273 var175
= NEW_nit__Start(&type_nit__Start
);
1276 ((void (*)(val
* self
, val
* p0
))(var175
->class->vft
[COLOR_nit__parser_nodes__Start__n_base_61d
]))(var175
, var176
) /* n_base= on <var175:Start>*/;
1279 ((void (*)(val
* self
, val
* p0
))(var175
->class->vft
[COLOR_nit__parser_nodes__Start__n_eof_61d
]))(var175
, var_node2174
) /* n_eof= on <var175:Start>*/;
1282 ((void (*)(val
* self
))(var175
->class->vft
[COLOR_standard__kernel__Object__init
]))(var175
) /* init on <var175:Start>*/;
1284 var_node177
= var175
;
1296 /* method parser_work#Prod#collect_text for (self: Prod): String */
1297 val
* nit__parser_work___Prod___collect_text(val
* self
) {
1298 val
* var
/* : String */;
1299 val
* var1
/* : TextCollectorVisitor */;
1300 val
* var_v
/* var v: TextCollectorVisitor */;
1301 val
* var3
/* : String */;
1302 val
* var5
/* : String */;
1303 static val
* varonce
;
1304 val
* var6
/* : String */;
1305 char* var7
/* : NativeString */;
1306 long var8
/* : Int */;
1307 val
* var9
/* : FlatString */;
1308 short int var10
/* : Bool */;
1309 val
* var_other
/* var other: nullable Object */;
1310 short int var12
/* : Bool */;
1311 short int var13
/* : Bool */;
1312 val
* var14
/* : String */;
1313 val
* var16
/* : String */;
1314 var1
= NEW_nit__parser_work__TextCollectorVisitor(&type_nit__parser_work__TextCollectorVisitor
);
1316 { /* Inline kernel#Object#init (var1) on <var1:TextCollectorVisitor> */
1322 nit___nit__Visitor___enter_visit(var_v
, self
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:TextCollectorVisitor>*/
1325 { /* Inline parser_work#TextCollectorVisitor#text (var_v) on <var_v:TextCollectorVisitor> */
1326 var5
= var_v
->attrs
[COLOR_nit__parser_work__TextCollectorVisitor___text
].val
; /* _text on <var_v:TextCollectorVisitor> */
1327 if (unlikely(var5
== NULL
)) {
1328 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _text");
1329 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_work
, 243);
1341 var9
= standard___standard__NativeString___to_s_with_length(var7
, var8
);
1346 { /* Inline kernel#Object#!= (var3,var6) on <var3:String> */
1349 var12
= ((short int (*)(val
* self
, val
* p0
))(var3
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var3
, var_other
) /* == on <var3:String>*/;
1354 RET_LABEL11
:(void)0;
1357 if (unlikely(!var10
)) {
1358 PRINT_ERROR("Runtime error: %s", "Assert failed");
1359 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_work
, 170);
1363 { /* Inline parser_work#TextCollectorVisitor#text (var_v) on <var_v:TextCollectorVisitor> */
1364 var16
= var_v
->attrs
[COLOR_nit__parser_work__TextCollectorVisitor___text
].val
; /* _text on <var_v:TextCollectorVisitor> */
1365 if (unlikely(var16
== NULL
)) {
1366 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _text");
1367 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_work
, 243);
1371 RET_LABEL15
:(void)0;
1379 /* method parser_work#ComputeProdLocationVisitor#visit for (self: ComputeProdLocationVisitor, ANode) */
1380 void nit__parser_work___nit__parser_work__ComputeProdLocationVisitor___nit__parser_nodes__Visitor__visit(val
* self
, val
* p0
) {
1381 val
* var_n
/* var n: ANode */;
1382 short int var
/* : Bool */;
1385 short int var1
/* : Bool */;
1386 short int var2
/* : Bool */;
1387 val
* var3
/* : Location */;
1388 val
* var_loc
/* var loc: Location */;
1389 val
* var4
/* : Array[Prod] */;
1390 short int var5
/* : Bool */;
1391 short int var6
/* : Bool */;
1392 val
* var7
/* : Array[Prod] */;
1393 val
* var_
/* var : Array[Prod] */;
1394 val
* var8
/* : ArrayIterator[nullable Object] */;
1395 val
* var_9
/* var : ArrayIterator[Prod] */;
1396 short int var10
/* : Bool */;
1397 val
* var11
/* : nullable Object */;
1398 val
* var_no
/* var no: Prod */;
1399 val
* var13
/* : Array[Prod] */;
1400 val
* var14
/* : Array[Prod] */;
1401 short int var15
/* : Bool */;
1402 short int var16
/* : Bool */;
1403 val
* var17
/* : Location */;
1404 val
* var18
/* : nullable SourceFile */;
1405 val
* var20
/* : nullable SourceFile */;
1406 long var21
/* : Int */;
1407 long var23
/* : Int */;
1408 long var24
/* : Int */;
1409 long var26
/* : Int */;
1410 long var27
/* : Int */;
1411 long var29
/* : Int */;
1412 long var30
/* : Int */;
1413 long var32
/* : Int */;
1414 val
* var_loco
/* var loco: Location */;
1415 val
* var33
/* : Array[Prod] */;
1416 val
* var_34
/* var : Array[Prod] */;
1417 val
* var35
/* : ArrayIterator[nullable Object] */;
1418 val
* var_36
/* var : ArrayIterator[Prod] */;
1419 short int var37
/* : Bool */;
1420 val
* var38
/* : nullable Object */;
1421 val
* var_no39
/* var no: Prod */;
1422 val
* var43
/* : Array[Prod] */;
1423 short int var44
/* : Bool */;
1426 val
* var47
/* : Array[Prod] */;
1427 val
* var48
/* : nullable Location */;
1428 val
* var_startl
/* var startl: nullable Location */;
1429 val
* var49
/* : null */;
1430 short int var50
/* : Bool */;
1431 short int var51
/* : Bool */;
1432 val
* var_other
/* var other: nullable Object */;
1433 short int var53
/* : Bool */;
1434 short int var54
/* : Bool */;
1435 val
* var55
/* : nullable Location */;
1436 val
* var_endl
/* var endl: nullable Location */;
1437 val
* var56
/* : null */;
1438 short int var57
/* : Bool */;
1439 short int var58
/* : Bool */;
1440 short int var60
/* : Bool */;
1441 short int var61
/* : Bool */;
1442 val
* var62
/* : Location */;
1443 val
* var63
/* : nullable SourceFile */;
1444 val
* var65
/* : nullable SourceFile */;
1445 long var66
/* : Int */;
1446 long var68
/* : Int */;
1447 long var69
/* : Int */;
1448 long var71
/* : Int */;
1449 long var72
/* : Int */;
1450 long var74
/* : Int */;
1451 long var75
/* : Int */;
1452 long var77
/* : Int */;
1453 val
* var79
/* : Array[Prod] */;
1454 short int var80
/* : Bool */;
1455 short int var81
/* : Bool */;
1456 val
* var82
/* : Location */;
1457 val
* var83
/* : nullable SourceFile */;
1458 val
* var85
/* : nullable SourceFile */;
1459 long var86
/* : Int */;
1460 long var88
/* : Int */;
1461 long var89
/* : Int */;
1462 long var91
/* : Int */;
1463 long var92
/* : Int */;
1464 long var94
/* : Int */;
1465 long var95
/* : Int */;
1466 long var97
/* : Int */;
1467 val
* var_loc98
/* var loc: Location */;
1468 val
* var99
/* : Array[Prod] */;
1469 val
* var_100
/* var : Array[Prod] */;
1470 val
* var101
/* : ArrayIterator[nullable Object] */;
1471 val
* var_102
/* var : ArrayIterator[Prod] */;
1472 short int var103
/* : Bool */;
1473 val
* var104
/* : nullable Object */;
1474 val
* var_no105
/* var no: Prod */;
1475 val
* var109
/* : Array[Prod] */;
1476 val
* var110
/* : Array[Prod] */;
1478 /* <var_n:ANode> isa Token */
1479 cltype
= type_nit__Token
.color
;
1480 idtype
= type_nit__Token
.id
;
1481 if(cltype
>= var_n
->type
->table_size
) {
1484 var
= var_n
->type
->type_table
[cltype
] == idtype
;
1487 var1
= var_n
->attrs
[COLOR_nit__parser_nodes__ANode___location
].val
!= NULL
; /* _location on <var_n:ANode(Token)> */
1493 var3
= var_n
->attrs
[COLOR_nit__parser_nodes__ANode___location
].val
; /* _location on <var_n:ANode(Token)> */
1494 if (unlikely(var3
== NULL
)) {
1495 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _location");
1496 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_work
, 192);
1500 self
->attrs
[COLOR_nit__parser_work__ComputeProdLocationVisitor___last_location
].val
= var_loc
; /* _last_location on <self:ComputeProdLocationVisitor> */
1501 var4
= self
->attrs
[COLOR_nit__parser_work__ComputeProdLocationVisitor___need_first_prods
].val
; /* _need_first_prods on <self:ComputeProdLocationVisitor> */
1502 if (unlikely(var4
== NULL
)) {
1503 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _need_first_prods");
1504 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_work
, 196);
1508 var5
= standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__is_empty(var4
);
1512 var7
= self
->attrs
[COLOR_nit__parser_work__ComputeProdLocationVisitor___need_first_prods
].val
; /* _need_first_prods on <self:ComputeProdLocationVisitor> */
1513 if (unlikely(var7
== NULL
)) {
1514 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _need_first_prods");
1515 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_work
, 197);
1520 var8
= standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__iterator(var_
);
1525 var10
= standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__is_ok(var_9
);
1529 var11
= standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__item(var_9
);
1532 var_no
->attrs
[COLOR_nit__parser_work__Prod___first_location
].val
= var_loc
; /* _first_location on <var_no:Prod> */
1534 standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__next(var_9
); /* Direct call array#ArrayIterator#next on <var_9:ArrayIterator[Prod]>*/
1540 BREAK_label
: (void)0;
1542 { /* Inline abstract_collection#Iterator#finish (var_9) on <var_9:ArrayIterator[Prod]> */
1543 RET_LABEL12
:(void)0;
1546 var13
= self
->attrs
[COLOR_nit__parser_work__ComputeProdLocationVisitor___need_first_prods
].val
; /* _need_first_prods on <self:ComputeProdLocationVisitor> */
1547 if (unlikely(var13
== NULL
)) {
1548 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _need_first_prods");
1549 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_work
, 200);
1553 standard___standard__AbstractArray___standard__abstract_collection__RemovableCollection__clear(var13
); /* Direct call array#AbstractArray#clear on <var13:Array[Prod]>*/
1557 var14
= self
->attrs
[COLOR_nit__parser_work__ComputeProdLocationVisitor___need_after_epsilons
].val
; /* _need_after_epsilons on <self:ComputeProdLocationVisitor> */
1558 if (unlikely(var14
== NULL
)) {
1559 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _need_after_epsilons");
1560 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_work
, 204);
1564 var15
= standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__is_empty(var14
);
1568 var17
= NEW_nit__Location(&type_nit__Location
);
1570 { /* Inline location#Location#file (var_loc) on <var_loc:Location> */
1571 var20
= var_loc
->attrs
[COLOR_nit__location__Location___file
].val
; /* _file on <var_loc:Location> */
1573 RET_LABEL19
:(void)0;
1577 { /* Inline location#Location#line_start (var_loc) on <var_loc:Location> */
1578 var23
= var_loc
->attrs
[COLOR_nit__location__Location___line_start
].l
; /* _line_start on <var_loc:Location> */
1580 RET_LABEL22
:(void)0;
1584 { /* Inline location#Location#line_start (var_loc) on <var_loc:Location> */
1585 var26
= var_loc
->attrs
[COLOR_nit__location__Location___line_start
].l
; /* _line_start on <var_loc:Location> */
1587 RET_LABEL25
:(void)0;
1591 { /* Inline location#Location#column_start (var_loc) on <var_loc:Location> */
1592 var29
= var_loc
->attrs
[COLOR_nit__location__Location___column_start
].l
; /* _column_start on <var_loc:Location> */
1594 RET_LABEL28
:(void)0;
1598 { /* Inline location#Location#column_start (var_loc) on <var_loc:Location> */
1599 var32
= var_loc
->attrs
[COLOR_nit__location__Location___column_start
].l
; /* _column_start on <var_loc:Location> */
1601 RET_LABEL31
:(void)0;
1605 ((void (*)(val
* self
, val
* p0
))(var17
->class->vft
[COLOR_nit__location__Location__file_61d
]))(var17
, var18
) /* file= on <var17:Location>*/;
1608 ((void (*)(val
* self
, long p0
))(var17
->class->vft
[COLOR_nit__location__Location__line_start_61d
]))(var17
, var21
) /* line_start= on <var17:Location>*/;
1611 ((void (*)(val
* self
, long p0
))(var17
->class->vft
[COLOR_nit__location__Location__line_end_61d
]))(var17
, var24
) /* line_end= on <var17:Location>*/;
1614 ((void (*)(val
* self
, long p0
))(var17
->class->vft
[COLOR_nit__location__Location__column_start_61d
]))(var17
, var27
) /* column_start= on <var17:Location>*/;
1617 ((void (*)(val
* self
, long p0
))(var17
->class->vft
[COLOR_nit__location__Location__column_end_61d
]))(var17
, var30
) /* column_end= on <var17:Location>*/;
1620 ((void (*)(val
* self
))(var17
->class->vft
[COLOR_standard__kernel__Object__init
]))(var17
) /* init on <var17:Location>*/;
1623 var33
= self
->attrs
[COLOR_nit__parser_work__ComputeProdLocationVisitor___need_after_epsilons
].val
; /* _need_after_epsilons on <self:ComputeProdLocationVisitor> */
1624 if (unlikely(var33
== NULL
)) {
1625 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _need_after_epsilons");
1626 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_work
, 206);
1631 var35
= standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__iterator(var_34
);
1636 var37
= standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__is_ok(var_36
);
1640 var38
= standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__item(var_36
);
1644 { /* Inline parser_nodes#ANode#location= (var_no39,var_loco) on <var_no39:Prod> */
1645 var_no39
->attrs
[COLOR_nit__parser_nodes__ANode___location
].val
= var_loco
; /* _location on <var_no39:Prod> */
1646 RET_LABEL40
:(void)0;
1650 standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__next(var_36
); /* Direct call array#ArrayIterator#next on <var_36:ArrayIterator[Prod]>*/
1656 BREAK_label41
: (void)0;
1658 { /* Inline abstract_collection#Iterator#finish (var_36) on <var_36:ArrayIterator[Prod]> */
1659 RET_LABEL42
:(void)0;
1662 var43
= self
->attrs
[COLOR_nit__parser_work__ComputeProdLocationVisitor___need_after_epsilons
].val
; /* _need_after_epsilons on <self:ComputeProdLocationVisitor> */
1663 if (unlikely(var43
== NULL
)) {
1664 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _need_after_epsilons");
1665 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_work
, 209);
1669 standard___standard__AbstractArray___standard__abstract_collection__RemovableCollection__clear(var43
); /* Direct call array#AbstractArray#clear on <var43:Array[Prod]>*/
1674 /* <var_n:ANode> isa Prod */
1675 cltype45
= type_nit__Prod
.color
;
1676 idtype46
= type_nit__Prod
.id
;
1677 if(cltype45
>= var_n
->type
->table_size
) {
1680 var44
= var_n
->type
->type_table
[cltype45
] == idtype46
;
1682 if (unlikely(!var44
)) {
1683 PRINT_ERROR("Runtime error: %s", "Assert failed");
1684 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_work
, 212);
1687 var47
= self
->attrs
[COLOR_nit__parser_work__ComputeProdLocationVisitor___need_first_prods
].val
; /* _need_first_prods on <self:ComputeProdLocationVisitor> */
1688 if (unlikely(var47
== NULL
)) {
1689 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _need_first_prods");
1690 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_work
, 213);
1694 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var47
, var_n
); /* Direct call array#Array#add on <var47:Array[Prod]>*/
1697 ((void (*)(val
* self
, val
* p0
))(var_n
->class->vft
[COLOR_nit__parser_nodes__ANode__visit_all
]))(var_n
, self
) /* visit_all on <var_n:ANode(Prod)>*/;
1699 var48
= var_n
->attrs
[COLOR_nit__parser_work__Prod___first_location
].val
; /* _first_location on <var_n:ANode(Prod)> */
1702 if (var_startl
== NULL
) {
1703 var50
= 0; /* is null */
1705 var50
= 1; /* arg is null and recv is not */
1708 { /* Inline kernel#Object#!= (var_startl,var49) on <var_startl:nullable Location> */
1711 var53
= ((short int (*)(val
* self
, val
* p0
))(var_startl
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_startl
, var_other
) /* == on <var_startl:nullable Location(Location)>*/;
1716 RET_LABEL52
:(void)0;
1721 var55
= self
->attrs
[COLOR_nit__parser_work__ComputeProdLocationVisitor___last_location
].val
; /* _last_location on <self:ComputeProdLocationVisitor> */
1724 if (var_endl
== NULL
) {
1725 var57
= 0; /* is null */
1727 var57
= 1; /* arg is null and recv is not */
1730 { /* Inline kernel#Object#!= (var_endl,var56) on <var_endl:nullable Location> */
1733 var60
= ((short int (*)(val
* self
, val
* p0
))(var_endl
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_endl
, var_other
) /* == on <var_endl:nullable Location(Location)>*/;
1738 RET_LABEL59
:(void)0;
1742 if (unlikely(!var57
)) {
1743 PRINT_ERROR("Runtime error: %s", "Assert failed");
1744 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_work
, 221);
1747 var62
= NEW_nit__Location(&type_nit__Location
);
1749 { /* Inline location#Location#file (var_startl) on <var_startl:nullable Location(Location)> */
1750 var65
= var_startl
->attrs
[COLOR_nit__location__Location___file
].val
; /* _file on <var_startl:nullable Location(Location)> */
1752 RET_LABEL64
:(void)0;
1756 { /* Inline location#Location#line_start (var_startl) on <var_startl:nullable Location(Location)> */
1757 var68
= var_startl
->attrs
[COLOR_nit__location__Location___line_start
].l
; /* _line_start on <var_startl:nullable Location(Location)> */
1759 RET_LABEL67
:(void)0;
1763 { /* Inline location#Location#line_end (var_endl) on <var_endl:nullable Location(Location)> */
1764 var71
= var_endl
->attrs
[COLOR_nit__location__Location___line_end
].l
; /* _line_end on <var_endl:nullable Location(Location)> */
1766 RET_LABEL70
:(void)0;
1770 { /* Inline location#Location#column_start (var_startl) on <var_startl:nullable Location(Location)> */
1771 var74
= var_startl
->attrs
[COLOR_nit__location__Location___column_start
].l
; /* _column_start on <var_startl:nullable Location(Location)> */
1773 RET_LABEL73
:(void)0;
1777 { /* Inline location#Location#column_end (var_endl) on <var_endl:nullable Location(Location)> */
1778 var77
= var_endl
->attrs
[COLOR_nit__location__Location___column_end
].l
; /* _column_end on <var_endl:nullable Location(Location)> */
1780 RET_LABEL76
:(void)0;
1784 ((void (*)(val
* self
, val
* p0
))(var62
->class->vft
[COLOR_nit__location__Location__file_61d
]))(var62
, var63
) /* file= on <var62:Location>*/;
1787 ((void (*)(val
* self
, long p0
))(var62
->class->vft
[COLOR_nit__location__Location__line_start_61d
]))(var62
, var66
) /* line_start= on <var62:Location>*/;
1790 ((void (*)(val
* self
, long p0
))(var62
->class->vft
[COLOR_nit__location__Location__line_end_61d
]))(var62
, var69
) /* line_end= on <var62:Location>*/;
1793 ((void (*)(val
* self
, long p0
))(var62
->class->vft
[COLOR_nit__location__Location__column_start_61d
]))(var62
, var72
) /* column_start= on <var62:Location>*/;
1796 ((void (*)(val
* self
, long p0
))(var62
->class->vft
[COLOR_nit__location__Location__column_end_61d
]))(var62
, var75
) /* column_end= on <var62:Location>*/;
1799 ((void (*)(val
* self
))(var62
->class->vft
[COLOR_standard__kernel__Object__init
]))(var62
) /* init on <var62:Location>*/;
1802 { /* Inline parser_nodes#ANode#location= (var_n,var62) on <var_n:ANode(Prod)> */
1803 var_n
->attrs
[COLOR_nit__parser_nodes__ANode___location
].val
= var62
; /* _location on <var_n:ANode(Prod)> */
1804 RET_LABEL78
:(void)0;
1807 var79
= self
->attrs
[COLOR_nit__parser_work__ComputeProdLocationVisitor___need_after_epsilons
].val
; /* _need_after_epsilons on <self:ComputeProdLocationVisitor> */
1808 if (unlikely(var79
== NULL
)) {
1809 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _need_after_epsilons");
1810 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_work
, 225);
1814 var80
= standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__is_empty(var79
);
1818 var82
= NEW_nit__Location(&type_nit__Location
);
1820 { /* Inline location#Location#file (var_endl) on <var_endl:nullable Location(Location)> */
1821 var85
= var_endl
->attrs
[COLOR_nit__location__Location___file
].val
; /* _file on <var_endl:nullable Location(Location)> */
1823 RET_LABEL84
:(void)0;
1827 { /* Inline location#Location#line_end (var_endl) on <var_endl:nullable Location(Location)> */
1828 var88
= var_endl
->attrs
[COLOR_nit__location__Location___line_end
].l
; /* _line_end on <var_endl:nullable Location(Location)> */
1830 RET_LABEL87
:(void)0;
1834 { /* Inline location#Location#line_end (var_endl) on <var_endl:nullable Location(Location)> */
1835 var91
= var_endl
->attrs
[COLOR_nit__location__Location___line_end
].l
; /* _line_end on <var_endl:nullable Location(Location)> */
1837 RET_LABEL90
:(void)0;
1841 { /* Inline location#Location#column_end (var_endl) on <var_endl:nullable Location(Location)> */
1842 var94
= var_endl
->attrs
[COLOR_nit__location__Location___column_end
].l
; /* _column_end on <var_endl:nullable Location(Location)> */
1844 RET_LABEL93
:(void)0;
1848 { /* Inline location#Location#column_end (var_endl) on <var_endl:nullable Location(Location)> */
1849 var97
= var_endl
->attrs
[COLOR_nit__location__Location___column_end
].l
; /* _column_end on <var_endl:nullable Location(Location)> */
1851 RET_LABEL96
:(void)0;
1855 ((void (*)(val
* self
, val
* p0
))(var82
->class->vft
[COLOR_nit__location__Location__file_61d
]))(var82
, var83
) /* file= on <var82:Location>*/;
1858 ((void (*)(val
* self
, long p0
))(var82
->class->vft
[COLOR_nit__location__Location__line_start_61d
]))(var82
, var86
) /* line_start= on <var82:Location>*/;
1861 ((void (*)(val
* self
, long p0
))(var82
->class->vft
[COLOR_nit__location__Location__line_end_61d
]))(var82
, var89
) /* line_end= on <var82:Location>*/;
1864 ((void (*)(val
* self
, long p0
))(var82
->class->vft
[COLOR_nit__location__Location__column_start_61d
]))(var82
, var92
) /* column_start= on <var82:Location>*/;
1867 ((void (*)(val
* self
, long p0
))(var82
->class->vft
[COLOR_nit__location__Location__column_end_61d
]))(var82
, var95
) /* column_end= on <var82:Location>*/;
1870 ((void (*)(val
* self
))(var82
->class->vft
[COLOR_standard__kernel__Object__init
]))(var82
) /* init on <var82:Location>*/;
1873 var99
= self
->attrs
[COLOR_nit__parser_work__ComputeProdLocationVisitor___need_after_epsilons
].val
; /* _need_after_epsilons on <self:ComputeProdLocationVisitor> */
1874 if (unlikely(var99
== NULL
)) {
1875 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _need_after_epsilons");
1876 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_work
, 227);
1881 var101
= standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__iterator(var_100
);
1886 var103
= standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__is_ok(var_102
);
1890 var104
= standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__item(var_102
);
1894 { /* Inline parser_nodes#ANode#location= (var_no105,var_loc98) on <var_no105:Prod> */
1895 var_no105
->attrs
[COLOR_nit__parser_nodes__ANode___location
].val
= var_loc98
; /* _location on <var_no105:Prod> */
1896 RET_LABEL106
:(void)0;
1900 standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__next(var_102
); /* Direct call array#ArrayIterator#next on <var_102:ArrayIterator[Prod]>*/
1903 goto BREAK_label107
;
1906 BREAK_label107
: (void)0;
1908 { /* Inline abstract_collection#Iterator#finish (var_102) on <var_102:ArrayIterator[Prod]> */
1909 RET_LABEL108
:(void)0;
1912 var109
= self
->attrs
[COLOR_nit__parser_work__ComputeProdLocationVisitor___need_after_epsilons
].val
; /* _need_after_epsilons on <self:ComputeProdLocationVisitor> */
1913 if (unlikely(var109
== NULL
)) {
1914 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _need_after_epsilons");
1915 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_work
, 231);
1919 standard___standard__AbstractArray___standard__abstract_collection__RemovableCollection__clear(var109
); /* Direct call array#AbstractArray#clear on <var109:Array[Prod]>*/
1924 var110
= self
->attrs
[COLOR_nit__parser_work__ComputeProdLocationVisitor___need_after_epsilons
].val
; /* _need_after_epsilons on <self:ComputeProdLocationVisitor> */
1925 if (unlikely(var110
== NULL
)) {
1926 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _need_after_epsilons");
1927 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_work
, 235);
1931 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var110
, var_n
); /* Direct call array#Array#add on <var110:Array[Prod]>*/
1937 /* method parser_work#TextCollectorVisitor#text for (self: TextCollectorVisitor): String */
1938 val
* nit__parser_work___nit__parser_work__TextCollectorVisitor___text(val
* self
) {
1939 val
* var
/* : String */;
1940 val
* var1
/* : String */;
1941 var1
= self
->attrs
[COLOR_nit__parser_work__TextCollectorVisitor___text
].val
; /* _text on <self:TextCollectorVisitor> */
1942 if (unlikely(var1
== NULL
)) {
1943 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _text");
1944 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_work
, 243);
1951 /* method parser_work#TextCollectorVisitor#text= for (self: TextCollectorVisitor, String) */
1952 void nit__parser_work___nit__parser_work__TextCollectorVisitor___text_61d(val
* self
, val
* p0
) {
1953 self
->attrs
[COLOR_nit__parser_work__TextCollectorVisitor___text
].val
= p0
; /* _text on <self:TextCollectorVisitor> */
1956 /* method parser_work#TextCollectorVisitor#visit for (self: TextCollectorVisitor, ANode) */
1957 void nit__parser_work___nit__parser_work__TextCollectorVisitor___nit__parser_nodes__Visitor__visit(val
* self
, val
* p0
) {
1958 val
* var_n
/* var n: ANode */;
1959 short int var
/* : Bool */;
1962 val
* var_
/* var : TextCollectorVisitor */;
1963 val
* var1
/* : String */;
1964 val
* var3
/* : String */;
1965 val
* var4
/* : String */;
1966 val
* var5
/* : String */;
1968 /* <var_n:ANode> isa Token */
1969 cltype
= type_nit__Token
.color
;
1970 idtype
= type_nit__Token
.id
;
1971 if(cltype
>= var_n
->type
->table_size
) {
1974 var
= var_n
->type
->type_table
[cltype
] == idtype
;
1979 { /* Inline parser_work#TextCollectorVisitor#text (var_) on <var_:TextCollectorVisitor> */
1980 var3
= var_
->attrs
[COLOR_nit__parser_work__TextCollectorVisitor___text
].val
; /* _text on <var_:TextCollectorVisitor> */
1981 if (unlikely(var3
== NULL
)) {
1982 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _text");
1983 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_work
, 243);
1991 var4
= nit__lexer_work___Token___text(var_n
);
1994 var5
= ((val
* (*)(val
* self
, val
* p0
))(var1
->class->vft
[COLOR_standard__string__String___43d
]))(var1
, var4
) /* + on <var1:String>*/;
1997 { /* Inline parser_work#TextCollectorVisitor#text= (var_,var5) on <var_:TextCollectorVisitor> */
1998 var_
->attrs
[COLOR_nit__parser_work__TextCollectorVisitor___text
].val
= var5
; /* _text on <var_:TextCollectorVisitor> */
2005 ((void (*)(val
* self
, val
* p0
))(var_n
->class->vft
[COLOR_nit__parser_nodes__ANode__visit_all
]))(var_n
, self
) /* visit_all on <var_n:ANode>*/;
2009 /* method parser_work#ReduceAction#concat for (self: ReduceAction, Array[Object], Array[Object]): Array[Object] */
2010 val
* nit__parser_work___nit__parser_work__ReduceAction___concat(val
* self
, val
* p0
, val
* p1
) {
2011 val
* var
/* : Array[Object] */;
2012 val
* var_l1
/* var l1: Array[Object] */;
2013 val
* var_l2
/* var l2: Array[Object] */;
2014 short int var1
/* : Bool */;
2018 var1
= standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__is_empty(var_l1
);
2026 standard___standard__Sequence___append(var_l1
, var_l2
); /* Direct call abstract_collection#Sequence#append on <var_l1:Array[Object]>*/
2033 /* method parser_work#ReduceAction#goto= for (self: ReduceAction, Int) */
2034 void nit__parser_work___nit__parser_work__ReduceAction___goto_61d(val
* self
, long p0
) {
2035 self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
= p0
; /* _goto on <self:ReduceAction> */
2038 /* method parser_work#ReduceAction#init for (self: ReduceAction) */
2039 void nit__parser_work___nit__parser_work__ReduceAction___standard__kernel__Object__init(val
* self
) {
2041 ((void (*)(val
* self
))(self
->class->vft
[COLOR_nit__parser_work___nit__parser_work__ReduceAction___standard__kernel__Object__init
]))(self
) /* init on <self:ReduceAction>*/;