1 #include "nitc__parser_work.sep.0.h"
2 /* method parser_work$State$state= for (self: State, Int) */
3 void nitc__parser_work___nitc__parser_work__State___state_61d(val
* self
, long p0
) {
4 self
->attrs
[COLOR_nitc__parser_work__State___state
].l
= p0
; /* _state on <self:State> */
7 /* method parser_work$State$nodes= for (self: State, nullable Object) */
8 void nitc__parser_work___nitc__parser_work__State___nodes_61d(val
* self
, val
* p0
) {
9 self
->attrs
[COLOR_nitc__parser_work__State___nodes
].val
= p0
; /* _nodes on <self:State> */
12 /* method parser_work$State$init for (self: State) */
13 void nitc__parser_work___nitc__parser_work__State___core__kernel__Object__init(val
* self
) {
15 ((void(*)(val
* self
))(self
->class->vft
[COLOR_nitc__parser_work___nitc__parser_work__State___core__kernel__Object__init
]))(self
); /* init on <self:State>*/
19 /* method parser_work$Parser$lexer= for (self: Parser, Lexer) */
20 void nitc___nitc__Parser___lexer_61d(val
* self
, val
* p0
) {
21 self
->attrs
[COLOR_nitc__parser_work__Parser___lexer
].val
= p0
; /* _lexer on <self:Parser> */
24 /* method parser_work$Parser$init for (self: Parser) */
25 void nitc___nitc__Parser___core__kernel__Object__init(val
* self
) {
27 static int varonce_guard
;
28 val
* var
/* : Array[ReduceAction] */;
29 val
* var1
/* : Array[ReduceAction] */;
31 ((void(*)(val
* self
))(self
->class->vft
[COLOR_nitc___nitc__Parser___core__kernel__Object__init
]))(self
); /* init on <self:Parser>*/
33 if (likely(varonce_guard
)) {
37 var1
= nitc__parser___Parser___build_reduce_table(self
);
44 { /* Inline parser_work$Parser$reduce_table= (self,var) on <self:Parser> */
45 self
->attrs
[COLOR_nitc__parser_work__Parser___reduce_table
].val
= var
; /* _reduce_table on <self:Parser> */
51 /* method parser_work$Parser$go_to for (self: Parser, Int): Int */
52 long nitc___nitc__Parser___go_to(val
* self
, long p0
) {
54 long var_index
/* var index: Int */;
55 long var1
/* : Int */;
56 long var_state
/* var state: Int */;
57 long var_low
/* var low: Int */;
58 long var2
/* : Int */;
59 long var4
/* : Int for extern */;
60 long var5
/* : Int */;
61 short int var7
/* : Bool */;
64 const char* var_class_name
;
65 long var8
/* : Int */;
66 long var_high
/* var high: Int */;
67 short int var9
/* : Bool */;
68 short int var11
/* : Bool */;
71 const char* var_class_name14
;
72 short int var15
/* : Bool */;
73 long var16
/* : Int */;
74 short int var18
/* : Bool */;
77 const char* var_class_name21
;
78 long var22
/* : Int */;
79 long var23
/* : Int */;
80 short int var25
/* : Bool */;
83 const char* var_class_name28
;
84 long var29
/* : Int */;
85 long var_middle
/* var middle: Int */;
86 long var30
/* : Int */;
87 short int var32
/* : Bool */;
90 const char* var_class_name35
;
91 long var36
/* : Int */;
92 long var37
/* : Int */;
93 short int var39
/* : Bool */;
96 const char* var_class_name42
;
97 long var43
/* : Int */;
98 long var_subindex
/* var subindex: Int */;
99 long var44
/* : Int */;
100 long var46
/* : Int for extern */;
101 long var_goal
/* var goal: Int */;
102 short int var47
/* : Bool */;
103 short int var49
/* : Bool */;
106 const char* var_class_name52
;
107 short int var53
/* : Bool */;
108 long var54
/* : Int */;
109 short int var56
/* : Bool */;
112 const char* var_class_name59
;
113 long var60
/* : Int */;
114 short int var61
/* : Bool */;
115 short int var63
/* : Bool */;
118 const char* var_class_name66
;
119 short int var67
/* : Bool */;
120 long var68
/* : Int */;
121 short int var70
/* : Bool */;
124 const char* var_class_name73
;
125 long var74
/* : Int */;
126 long var75
/* : Int */;
127 short int var77
/* : Bool */;
130 const char* var_class_name80
;
131 long var81
/* : Int */;
132 long var82
/* : Int */;
133 long var84
/* : Int for extern */;
134 long var85
/* : Int */;
135 long var87
/* : Int for extern */;
138 var1
= nitc___nitc__Parser___state(self
);
143 { /* Inline tables$TablesCapable$parser_goto (self,var_index,0l) on <self:Parser> */
144 var4
= parser_goto(self
, var_index
, 0l);
151 { /* Inline kernel$Int$- (var2,1l) on <var2:Int> */
152 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
153 /* <1l:Int> isa OTHER */
154 var7
= 1; /* easy <1l:Int> isa OTHER*/
155 if (unlikely(!var7
)) {
156 var_class_name
= type_core__Int
.name
;
157 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
158 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 731);
170 { /* Inline kernel$Int$<= (var_low,var_high) on <var_low:Int> */
171 /* Covariant cast for argument 0 (i) <var_high:Int> isa OTHER */
172 /* <var_high:Int> isa OTHER */
173 var11
= 1; /* easy <var_high:Int> isa OTHER*/
174 if (unlikely(!var11
)) {
175 var_class_name14
= type_core__Int
.name
;
176 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name14
);
177 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 724);
180 var15
= var_low
<= var_high
;
188 { /* Inline kernel$Int$+ (var_low,var_high) on <var_low:Int> */
189 /* Covariant cast for argument 0 (i) <var_high:Int> isa OTHER */
190 /* <var_high:Int> isa OTHER */
191 var18
= 1; /* easy <var_high:Int> isa OTHER*/
192 if (unlikely(!var18
)) {
193 var_class_name21
= type_core__Int
.name
;
194 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name21
);
195 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 728);
198 var22
= var_low
+ var_high
;
205 { /* Inline kernel$Int$/ (var16,2l) on <var16:Int> */
206 /* Covariant cast for argument 0 (i) <2l:Int> isa OTHER */
207 /* <2l:Int> isa OTHER */
208 var25
= 1; /* easy <2l:Int> isa OTHER*/
209 if (unlikely(!var25
)) {
210 var_class_name28
= type_core__Int
.name
;
211 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name28
);
212 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 733);
223 { /* Inline kernel$Int$* (var_middle,2l) on <var_middle:Int> */
224 /* Covariant cast for argument 0 (i) <2l:Int> isa OTHER */
225 /* <2l:Int> isa OTHER */
226 var32
= 1; /* easy <2l:Int> isa OTHER*/
227 if (unlikely(!var32
)) {
228 var_class_name35
= type_core__Int
.name
;
229 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name35
);
230 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 732);
233 var36
= var_middle
* 2l;
240 { /* Inline kernel$Int$+ (var30,1l) on <var30:Int> */
241 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
242 /* <1l:Int> isa OTHER */
243 var39
= 1; /* easy <1l:Int> isa OTHER*/
244 if (unlikely(!var39
)) {
245 var_class_name42
= type_core__Int
.name
;
246 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name42
);
247 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 728);
256 var_subindex
= var37
;
258 { /* Inline tables$TablesCapable$parser_goto (self,var_index,var_subindex) on <self:Parser> */
259 var46
= parser_goto(self
, var_index
, var_subindex
);
267 { /* Inline kernel$Int$< (var_state,var_goal) on <var_state:Int> */
268 /* Covariant cast for argument 0 (i) <var_goal:Int> isa OTHER */
269 /* <var_goal:Int> isa OTHER */
270 var49
= 1; /* easy <var_goal:Int> isa OTHER*/
271 if (unlikely(!var49
)) {
272 var_class_name52
= type_core__Int
.name
;
273 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name52
);
274 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 725);
277 var53
= var_state
< var_goal
;
285 { /* Inline kernel$Int$- (var_middle,1l) on <var_middle:Int> */
286 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
287 /* <1l:Int> isa OTHER */
288 var56
= 1; /* easy <1l:Int> isa OTHER*/
289 if (unlikely(!var56
)) {
290 var_class_name59
= type_core__Int
.name
;
291 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name59
);
292 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 731);
295 var60
= var_middle
- 1l;
304 { /* Inline kernel$Int$> (var_state,var_goal) on <var_state:Int> */
305 /* Covariant cast for argument 0 (i) <var_goal:Int> isa OTHER */
306 /* <var_goal:Int> isa OTHER */
307 var63
= 1; /* easy <var_goal:Int> isa OTHER*/
308 if (unlikely(!var63
)) {
309 var_class_name66
= type_core__Int
.name
;
310 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name66
);
311 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 727);
314 var67
= var_state
> var_goal
;
322 { /* Inline kernel$Int$+ (var_middle,1l) on <var_middle:Int> */
323 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
324 /* <1l:Int> isa OTHER */
325 var70
= 1; /* easy <1l:Int> isa OTHER*/
326 if (unlikely(!var70
)) {
327 var_class_name73
= type_core__Int
.name
;
328 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name73
);
329 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 728);
332 var74
= var_middle
+ 1l;
341 { /* Inline kernel$Int$+ (var_subindex,1l) on <var_subindex:Int> */
342 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
343 /* <1l:Int> isa OTHER */
344 var77
= 1; /* easy <1l:Int> isa OTHER*/
345 if (unlikely(!var77
)) {
346 var_class_name80
= type_core__Int
.name
;
347 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name80
);
348 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 728);
351 var81
= var_subindex
+ 1l;
358 { /* Inline tables$TablesCapable$parser_goto (self,var_index,var75) on <self:Parser> */
359 var84
= parser_goto(self
, var_index
, var75
);
373 BREAK_label
: (void)0;
375 { /* Inline tables$TablesCapable$parser_goto (self,var_index,2l) on <self:Parser> */
376 var87
= parser_goto(self
, var_index
, 2l);
387 /* method parser_work$Parser$push for (self: Parser, Int, nullable Object) */
388 void nitc___nitc__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 short int var3
/* : Bool */;
396 const char* var_class_name
;
397 long var4
/* : Int */;
398 long var_pos
/* var pos: Int */;
399 val
* var5
/* : Array[State] */;
400 long var6
/* : Int */;
401 long var8
/* : Int */;
402 short int var9
/* : Bool */;
403 short int var11
/* : Bool */;
406 const char* var_class_name14
;
407 short int var15
/* : Bool */;
408 val
* var16
/* : Array[State] */;
409 val
* var17
/* : nullable Object */;
410 val
* var_state
/* var state: State */;
411 val
* var18
/* : Array[State] */;
412 val
* var19
/* : State */;
415 var
= self
->attrs
[COLOR_nitc__parser_work__Parser___stack_pos
].l
; /* _stack_pos on <self:Parser> */
417 { /* Inline kernel$Int$+ (var,1l) on <var:Int> */
418 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
419 /* <1l:Int> isa OTHER */
420 var3
= 1; /* easy <1l:Int> isa OTHER*/
421 if (unlikely(!var3
)) {
422 var_class_name
= type_core__Int
.name
;
423 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
424 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 728);
434 self
->attrs
[COLOR_nitc__parser_work__Parser___stack_pos
].l
= var_pos
; /* _stack_pos on <self:Parser> */
435 var5
= self
->attrs
[COLOR_nitc__parser_work__Parser___stack
].val
; /* _stack on <self:Parser> */
436 if (unlikely(var5
== NULL
)) {
437 if(catchStack
.cursor
>= 0){
438 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
440 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _stack");
441 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_work
, 75);
445 { /* Inline array$AbstractArrayRead$length (var5) on <var5:Array[State]> */
446 var8
= var5
->attrs
[COLOR_core__array__AbstractArrayRead___length
].l
; /* _length on <var5:Array[State]> */
452 { /* Inline kernel$Int$< (var_pos,var6) on <var_pos:Int> */
453 /* Covariant cast for argument 0 (i) <var6:Int> isa OTHER */
454 /* <var6:Int> isa OTHER */
455 var11
= 1; /* easy <var6:Int> isa OTHER*/
456 if (unlikely(!var11
)) {
457 var_class_name14
= type_core__Int
.name
;
458 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name14
);
459 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 725);
462 var15
= var_pos
< var6
;
469 var16
= self
->attrs
[COLOR_nitc__parser_work__Parser___stack
].val
; /* _stack on <self:Parser> */
470 if (unlikely(var16
== NULL
)) {
471 if(catchStack
.cursor
>= 0){
472 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
474 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _stack");
475 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_work
, 76);
479 var17
= core___core__Array___core__abstract_collection__SequenceRead___91d_93d(var16
, var_pos
);
482 var_state
->attrs
[COLOR_nitc__parser_work__State___state
].l
= var_numstate
; /* _state on <var_state:State> */
483 var_state
->attrs
[COLOR_nitc__parser_work__State___nodes
].val
= var_list_node
; /* _nodes on <var_state:State> */
485 var18
= self
->attrs
[COLOR_nitc__parser_work__Parser___stack
].val
; /* _stack on <self:Parser> */
486 if (unlikely(var18
== NULL
)) {
487 if(catchStack
.cursor
>= 0){
488 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
490 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _stack");
491 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_work
, 80);
494 var19
= NEW_nitc__parser_work__State(&type_nitc__parser_work__State
);
496 ((void(*)(val
* self
, long p0
))(var19
->class->vft
[COLOR_nitc__parser_work__State__state_61d
]))(var19
, var_numstate
); /* state= on <var19:State>*/
499 ((void(*)(val
* self
, val
* p0
))(var19
->class->vft
[COLOR_nitc__parser_work__State__nodes_61d
]))(var19
, var_list_node
); /* nodes= on <var19:State>*/
502 ((void(*)(val
* self
))(var19
->class->vft
[COLOR_core__kernel__Object__init
]))(var19
); /* init on <var19:State>*/
505 core___core__AbstractArray___core__abstract_collection__Sequence__push(var18
, var19
); /* Direct call array$AbstractArray$push on <var18:Array[State]>*/
510 /* method parser_work$Parser$state for (self: Parser): Int */
511 long nitc___nitc__Parser___state(val
* self
) {
512 long var
/* : Int */;
513 val
* var1
/* : Array[State] */;
514 long var2
/* : Int */;
515 val
* var3
/* : nullable Object */;
516 long var4
/* : Int */;
517 var1
= self
->attrs
[COLOR_nitc__parser_work__Parser___stack
].val
; /* _stack on <self:Parser> */
518 if (unlikely(var1
== NULL
)) {
519 if(catchStack
.cursor
>= 0){
520 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
522 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _stack");
523 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_work
, 87);
526 var2
= self
->attrs
[COLOR_nitc__parser_work__Parser___stack_pos
].l
; /* _stack_pos on <self:Parser> */
528 var3
= core___core__Array___core__abstract_collection__SequenceRead___91d_93d(var1
, var2
);
530 var4
= var3
->attrs
[COLOR_nitc__parser_work__State___state
].l
; /* _state on <var3:nullable Object(State)> */
536 /* method parser_work$Parser$pop for (self: Parser): nullable Object */
537 val
* nitc___nitc__Parser___pop(val
* self
) {
538 val
* var
/* : nullable Object */;
539 val
* var1
/* : Array[State] */;
540 long var2
/* : Int */;
541 val
* var3
/* : nullable Object */;
542 val
* var4
/* : nullable Object */;
543 val
* var_res
/* var res: nullable Object */;
544 long var5
/* : Int */;
545 long var6
/* : Int */;
546 short int var8
/* : Bool */;
549 const char* var_class_name
;
550 long var9
/* : Int */;
551 var1
= self
->attrs
[COLOR_nitc__parser_work__Parser___stack
].val
; /* _stack on <self:Parser> */
552 if (unlikely(var1
== NULL
)) {
553 if(catchStack
.cursor
>= 0){
554 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
556 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _stack");
557 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_work
, 93);
560 var2
= self
->attrs
[COLOR_nitc__parser_work__Parser___stack_pos
].l
; /* _stack_pos on <self:Parser> */
562 var3
= core___core__Array___core__abstract_collection__SequenceRead___91d_93d(var1
, var2
);
564 var4
= var3
->attrs
[COLOR_nitc__parser_work__State___nodes
].val
; /* _nodes on <var3:nullable Object(State)> */
566 var5
= self
->attrs
[COLOR_nitc__parser_work__Parser___stack_pos
].l
; /* _stack_pos on <self:Parser> */
568 { /* Inline kernel$Int$- (var5,1l) on <var5:Int> */
569 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
570 /* <1l:Int> isa OTHER */
571 var8
= 1; /* easy <1l:Int> isa OTHER*/
572 if (unlikely(!var8
)) {
573 var_class_name
= type_core__Int
.name
;
574 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
575 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 731);
584 self
->attrs
[COLOR_nitc__parser_work__Parser___stack_pos
].l
= var6
; /* _stack_pos on <self:Parser> */
590 /* method parser_work$Parser$parse for (self: Parser): Start */
591 val
* nitc___nitc__Parser___parse(val
* self
) {
592 val
* var
/* : Start */;
593 val
* var1
/* : Lexer */;
594 val
* var_lexer
/* var lexer: Lexer */;
595 val
* var2
/* : Token */;
596 val
* var_token
/* var token: Token */;
597 short int var3
/* : Bool */;
600 val
* var4
/* : Start */;
601 long var5
/* : Int */;
602 long var_state
/* var state: Int */;
603 long var6
/* : Int */;
604 long var_index
/* var index: Int */;
605 long var7
/* : Int */;
606 long var9
/* : Int for extern */;
607 long var_action_type
/* var action_type: Int */;
608 long var10
/* : Int */;
609 long var12
/* : Int for extern */;
610 long var_action_value
/* var action_value: Int */;
611 long var_low
/* var low: Int */;
612 long var13
/* : Int */;
613 long var15
/* : Int for extern */;
614 long var16
/* : Int */;
615 short int var18
/* : Bool */;
618 const char* var_class_name
;
619 long var21
/* : Int */;
620 long var_high
/* var high: Int */;
621 short int var22
/* : Bool */;
622 short int var24
/* : Bool */;
625 const char* var_class_name27
;
626 short int var28
/* : Bool */;
627 long var29
/* : Int */;
628 short int var31
/* : Bool */;
631 const char* var_class_name34
;
632 long var35
/* : Int */;
633 long var36
/* : Int */;
634 short int var38
/* : Bool */;
637 const char* var_class_name41
;
638 long var42
/* : Int */;
639 long var_middle
/* var middle: Int */;
640 long var43
/* : Int */;
641 short int var45
/* : Bool */;
644 const char* var_class_name48
;
645 long var49
/* : Int */;
646 long var50
/* : Int */;
647 short int var52
/* : Bool */;
650 const char* var_class_name55
;
651 long var56
/* : Int */;
652 long var_subindex
/* var subindex: Int */;
653 long var57
/* : Int */;
654 long var59
/* : Int for extern */;
655 long var_goal
/* var goal: Int */;
656 short int var60
/* : Bool */;
657 short int var62
/* : Bool */;
660 const char* var_class_name65
;
661 short int var66
/* : Bool */;
662 long var67
/* : Int */;
663 short int var69
/* : Bool */;
666 const char* var_class_name72
;
667 long var73
/* : Int */;
668 short int var74
/* : Bool */;
669 short int var76
/* : Bool */;
672 const char* var_class_name79
;
673 short int var80
/* : Bool */;
674 long var81
/* : Int */;
675 short int var83
/* : Bool */;
678 const char* var_class_name86
;
679 long var87
/* : Int */;
680 long var88
/* : Int */;
681 short int var90
/* : Bool */;
684 const char* var_class_name93
;
685 long var94
/* : Int */;
686 long var95
/* : Int */;
687 long var97
/* : Int for extern */;
688 long var98
/* : Int */;
689 short int var100
/* : Bool */;
692 const char* var_class_name103
;
693 long var104
/* : Int */;
694 long var105
/* : Int */;
695 long var107
/* : Int for extern */;
696 short int var108
/* : Bool */;
697 short int var110
/* : Bool */;
698 val
* var111
/* : Token */;
699 short int var112
/* : Bool */;
700 short int var114
/* : Bool */;
701 val
* var115
/* : Array[ReduceAction] */;
702 val
* var116
/* : nullable Object */;
703 short int var117
/* : Bool */;
704 short int var119
/* : Bool */;
705 val
* var120
/* : Token */;
706 val
* var_node2
/* var node2: Token */;
707 short int var121
/* : Bool */;
710 val
* var124
/* : nullable Object */;
711 val
* var_node1
/* var node1: nullable Object */;
712 short int var125
/* : Bool */;
715 val
* var128
/* : Start */;
716 val
* var_node
/* var node: Start */;
717 val
* var130
/* : ComputeProdLocationVisitor */;
718 val
* var131
/* : SourceFile */;
719 val
* var133
/* : SourceFile */;
720 val
* var134
/* : nullable Token */;
721 val
* var136
/* : nullable Token */;
722 short int var137
/* : Bool */;
723 short int var139
/* : Bool */;
724 short int var140
/* : Bool */;
725 short int var141
/* : Bool */;
726 val
* var142
/* : Token */;
727 val
* var144
/* : AParserError */;
728 val
* var145
/* : NativeArray[String] */;
730 static val
* varonce146
;
731 val
* var147
/* : String */;
732 char* var148
/* : CString */;
733 val
* var149
/* : String */;
734 val
* var150
/* : nullable Int */;
735 val
* var151
/* : nullable Int */;
736 val
* var152
/* : nullable Bool */;
737 val
* var153
/* : nullable Bool */;
738 static val
* varonce154
;
739 val
* var155
/* : String */;
740 char* var156
/* : CString */;
741 val
* var157
/* : String */;
742 val
* var158
/* : nullable Int */;
743 val
* var159
/* : nullable Int */;
744 val
* var160
/* : nullable Bool */;
745 val
* var161
/* : nullable Bool */;
746 val
* var162
/* : String */;
747 val
* var163
/* : String */;
748 val
* var164
/* : Location */;
749 val
* var166
/* : Location */;
750 val
* var_node2167
/* var node2: AParserError */;
751 val
* var168
/* : Start */;
752 val
* var_node169
/* var node: Start */;
754 nitc___nitc__Parser___push(self
, 0l, ((val
*)NULL
)); /* Direct call parser_work$Parser$push on <self:Parser>*/
756 var1
= self
->attrs
[COLOR_nitc__parser_work__Parser___lexer
].val
; /* _lexer on <self:Parser> */
757 if (unlikely(var1
== NULL
)) {
758 if(catchStack
.cursor
>= 0){
759 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
761 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _lexer");
762 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_work
, 103);
768 var2
= nitc___nitc__Lexer___peek(var_lexer
);
771 /* <var_token:Token> isa AError */
772 cltype
= type_nitc__AError
.color
;
773 idtype
= type_nitc__AError
.id
;
774 if(cltype
>= var_token
->type
->table_size
) {
777 var3
= var_token
->type
->type_table
[cltype
] == idtype
;
780 var4
= NEW_nitc__Start(&type_nitc__Start
);
782 ((void(*)(val
* self
, val
* p0
))(var4
->class->vft
[COLOR_nitc__parser_nodes__Start__n_base_61d
]))(var4
, ((val
*)NULL
)); /* n_base= on <var4:Start>*/
785 ((void(*)(val
* self
, val
* p0
))(var4
->class->vft
[COLOR_nitc__parser_nodes__Start__n_eof_61d
]))(var4
, var_token
); /* n_eof= on <var4:Start>*/
788 ((void(*)(val
* self
))(var4
->class->vft
[COLOR_core__kernel__Object__init
]))(var4
); /* init on <var4:Start>*/
795 var5
= nitc___nitc__Parser___state(self
);
799 var6
= ((long(*)(val
* self
))(var_token
->class->vft
[COLOR_nitc__lexer_work__Token__parser_index
]))(var_token
); /* parser_index on <var_token:Token>*/
803 { /* Inline tables$TablesCapable$parser_action (self,var_state,2l) on <self:Parser> */
804 var9
= parser_action(self
, var_state
, 2l);
810 var_action_type
= var7
;
812 { /* Inline tables$TablesCapable$parser_action (self,var_state,3l) on <self:Parser> */
813 var12
= parser_action(self
, var_state
, 3l);
819 var_action_value
= var10
;
822 { /* Inline tables$TablesCapable$parser_action (self,var_state,0l) on <self:Parser> */
823 var15
= parser_action(self
, var_state
, 0l);
830 { /* Inline kernel$Int$- (var13,1l) on <var13:Int> */
831 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
832 /* <1l:Int> isa OTHER */
833 var18
= 1; /* easy <1l:Int> isa OTHER*/
834 if (unlikely(!var18
)) {
835 var_class_name
= type_core__Int
.name
;
836 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
837 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 731);
849 { /* Inline kernel$Int$<= (var_low,var_high) on <var_low:Int> */
850 /* Covariant cast for argument 0 (i) <var_high:Int> isa OTHER */
851 /* <var_high:Int> isa OTHER */
852 var24
= 1; /* easy <var_high:Int> isa OTHER*/
853 if (unlikely(!var24
)) {
854 var_class_name27
= type_core__Int
.name
;
855 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name27
);
856 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 724);
859 var28
= var_low
<= var_high
;
867 { /* Inline kernel$Int$+ (var_low,var_high) on <var_low:Int> */
868 /* Covariant cast for argument 0 (i) <var_high:Int> isa OTHER */
869 /* <var_high:Int> isa OTHER */
870 var31
= 1; /* easy <var_high:Int> isa OTHER*/
871 if (unlikely(!var31
)) {
872 var_class_name34
= type_core__Int
.name
;
873 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name34
);
874 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 728);
877 var35
= var_low
+ var_high
;
884 { /* Inline kernel$Int$/ (var29,2l) on <var29:Int> */
885 /* Covariant cast for argument 0 (i) <2l:Int> isa OTHER */
886 /* <2l:Int> isa OTHER */
887 var38
= 1; /* easy <2l:Int> isa OTHER*/
888 if (unlikely(!var38
)) {
889 var_class_name41
= type_core__Int
.name
;
890 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name41
);
891 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 733);
902 { /* Inline kernel$Int$* (var_middle,3l) on <var_middle:Int> */
903 /* Covariant cast for argument 0 (i) <3l:Int> isa OTHER */
904 /* <3l:Int> isa OTHER */
905 var45
= 1; /* easy <3l:Int> isa OTHER*/
906 if (unlikely(!var45
)) {
907 var_class_name48
= type_core__Int
.name
;
908 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name48
);
909 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 732);
912 var49
= var_middle
* 3l;
919 { /* Inline kernel$Int$+ (var43,1l) on <var43:Int> */
920 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
921 /* <1l:Int> isa OTHER */
922 var52
= 1; /* easy <1l:Int> isa OTHER*/
923 if (unlikely(!var52
)) {
924 var_class_name55
= type_core__Int
.name
;
925 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name55
);
926 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 728);
935 var_subindex
= var50
;
937 { /* Inline tables$TablesCapable$parser_action (self,var_state,var_subindex) on <self:Parser> */
938 var59
= parser_action(self
, var_state
, var_subindex
);
946 { /* Inline kernel$Int$< (var_index,var_goal) on <var_index:Int> */
947 /* Covariant cast for argument 0 (i) <var_goal:Int> isa OTHER */
948 /* <var_goal:Int> isa OTHER */
949 var62
= 1; /* easy <var_goal:Int> isa OTHER*/
950 if (unlikely(!var62
)) {
951 var_class_name65
= type_core__Int
.name
;
952 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name65
);
953 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 725);
956 var66
= var_index
< var_goal
;
964 { /* Inline kernel$Int$- (var_middle,1l) on <var_middle:Int> */
965 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
966 /* <1l:Int> isa OTHER */
967 var69
= 1; /* easy <1l:Int> isa OTHER*/
968 if (unlikely(!var69
)) {
969 var_class_name72
= type_core__Int
.name
;
970 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name72
);
971 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 731);
974 var73
= var_middle
- 1l;
983 { /* Inline kernel$Int$> (var_index,var_goal) on <var_index:Int> */
984 /* Covariant cast for argument 0 (i) <var_goal:Int> isa OTHER */
985 /* <var_goal:Int> isa OTHER */
986 var76
= 1; /* easy <var_goal:Int> isa OTHER*/
987 if (unlikely(!var76
)) {
988 var_class_name79
= type_core__Int
.name
;
989 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name79
);
990 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 727);
993 var80
= var_index
> var_goal
;
1001 { /* Inline kernel$Int$+ (var_middle,1l) on <var_middle:Int> */
1002 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
1003 /* <1l:Int> isa OTHER */
1004 var83
= 1; /* easy <1l:Int> isa OTHER*/
1005 if (unlikely(!var83
)) {
1006 var_class_name86
= type_core__Int
.name
;
1007 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name86
);
1008 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 728);
1011 var87
= var_middle
+ 1l;
1014 RET_LABEL82
:(void)0;
1020 { /* Inline kernel$Int$+ (var_subindex,1l) on <var_subindex:Int> */
1021 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
1022 /* <1l:Int> isa OTHER */
1023 var90
= 1; /* easy <1l:Int> isa OTHER*/
1024 if (unlikely(!var90
)) {
1025 var_class_name93
= type_core__Int
.name
;
1026 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name93
);
1027 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 728);
1030 var94
= var_subindex
+ 1l;
1033 RET_LABEL89
:(void)0;
1037 { /* Inline tables$TablesCapable$parser_action (self,var_state,var88) on <self:Parser> */
1038 var97
= parser_action(self
, var_state
, var88
);
1041 RET_LABEL96
:(void)0;
1044 var_action_type
= var95
;
1046 { /* Inline kernel$Int$+ (var_subindex,2l) on <var_subindex:Int> */
1047 /* Covariant cast for argument 0 (i) <2l:Int> isa OTHER */
1048 /* <2l:Int> isa OTHER */
1049 var100
= 1; /* easy <2l:Int> isa OTHER*/
1050 if (unlikely(!var100
)) {
1051 var_class_name103
= type_core__Int
.name
;
1052 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name103
);
1053 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 728);
1056 var104
= var_subindex
+ 2l;
1059 RET_LABEL99
:(void)0;
1063 { /* Inline tables$TablesCapable$parser_action (self,var_state,var98) on <self:Parser> */
1064 var107
= parser_action(self
, var_state
, var98
);
1067 RET_LABEL106
:(void)0;
1070 var_action_value
= var105
;
1078 BREAK_label
: (void)0;
1080 { /* Inline kernel$Int$== (var_action_type,0l) on <var_action_type:Int> */
1081 var110
= var_action_type
== 0l;
1084 RET_LABEL109
:(void)0;
1089 var111
= nitc___nitc__Lexer___next(var_lexer
);
1092 nitc___nitc__Parser___push(self
, var_action_value
, var111
); /* Direct call parser_work$Parser$push on <self:Parser>*/
1096 { /* Inline kernel$Int$== (var_action_type,1l) on <var_action_type:Int> */
1097 var114
= var_action_type
== 1l;
1100 RET_LABEL113
:(void)0;
1104 var115
= self
->attrs
[COLOR_nitc__parser_work__Parser___reduce_table
].val
; /* _reduce_table on <self:Parser> */
1105 if (unlikely(var115
== NULL
)) {
1106 if(catchStack
.cursor
>= 0){
1107 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1109 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _reduce_table");
1110 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_work
, 137);
1114 var116
= core___core__Array___core__abstract_collection__SequenceRead___91d_93d(var115
, var_action_value
);
1117 ((void(*)(val
* self
, val
* p0
))(var116
->class->vft
[COLOR_nitc__parser_work__ReduceAction__action
]))(var116
, self
); /* action on <var116:nullable Object(ReduceAction)>*/
1121 { /* Inline kernel$Int$== (var_action_type,2l) on <var_action_type:Int> */
1122 var119
= var_action_type
== 2l;
1125 RET_LABEL118
:(void)0;
1130 var120
= nitc___nitc__Lexer___next(var_lexer
);
1133 /* <var_node2:Token> isa EOF */
1134 cltype122
= type_nitc__EOF
.color
;
1135 idtype123
= type_nitc__EOF
.id
;
1136 if(cltype122
>= var_node2
->type
->table_size
) {
1139 var121
= var_node2
->type
->type_table
[cltype122
] == idtype123
;
1141 if (unlikely(!var121
)) {
1142 if(catchStack
.cursor
>= 0){
1143 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1145 PRINT_ERROR("Runtime error: %s", "Assert failed");
1146 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_work
, 140);
1150 var124
= nitc___nitc__Parser___pop(self
);
1153 /* <var_node1:nullable Object> isa AModule */
1154 cltype126
= type_nitc__AModule
.color
;
1155 idtype127
= type_nitc__AModule
.id
;
1156 if(var_node1
== NULL
) {
1159 if(cltype126
>= (((long)var_node1
&3)?type_info
[((long)var_node1
&3)]:var_node1
->type
)->table_size
) {
1162 var125
= (((long)var_node1
&3)?type_info
[((long)var_node1
&3)]:var_node1
->type
)->type_table
[cltype126
] == idtype127
;
1165 if (unlikely(!var125
)) {
1166 if(catchStack
.cursor
>= 0){
1167 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1169 PRINT_ERROR("Runtime error: %s", "Assert failed");
1170 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_work
, 142);
1173 var128
= NEW_nitc__Start(&type_nitc__Start
);
1175 ((void(*)(val
* self
, val
* p0
))(var128
->class->vft
[COLOR_nitc__parser_nodes__Start__n_base_61d
]))(var128
, var_node1
); /* n_base= on <var128:Start>*/
1178 ((void(*)(val
* self
, val
* p0
))(var128
->class->vft
[COLOR_nitc__parser_nodes__Start__n_eof_61d
]))(var128
, var_node2
); /* n_eof= on <var128:Start>*/
1181 ((void(*)(val
* self
))(var128
->class->vft
[COLOR_core__kernel__Object__init
]))(var128
); /* init on <var128:Start>*/
1185 { /* Inline parser_nodes$ANode$parent= (var_node2,var_node) on <var_node2:Token(EOF)> */
1186 var_node2
->attrs
[COLOR_nitc__parser_nodes__ANode___parent
].val
= var_node
; /* _parent on <var_node2:Token(EOF)> */
1187 RET_LABEL129
:(void)0;
1190 var130
= NEW_nitc__parser_work__ComputeProdLocationVisitor(&type_nitc__parser_work__ComputeProdLocationVisitor
);
1192 { /* Inline lexer_work$Lexer$file (var_lexer) on <var_lexer:Lexer> */
1193 var133
= var_lexer
->attrs
[COLOR_nitc__lexer_work__Lexer___file
].val
; /* _file on <var_lexer:Lexer> */
1194 if (unlikely(var133
== NULL
)) {
1195 if(catchStack
.cursor
>= 0){
1196 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1198 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _file");
1199 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__lexer_work
, 90);
1203 RET_LABEL132
:(void)0;
1207 { /* Inline parser_nodes$SourceFile$first_token (var131) on <var131:SourceFile> */
1208 var136
= var131
->attrs
[COLOR_nitc__parser_nodes__SourceFile___first_token
].val
; /* _first_token on <var131:SourceFile> */
1210 RET_LABEL135
:(void)0;
1214 ((void(*)(val
* self
, val
* p0
))(var130
->class->vft
[COLOR_nitc__parser_work__ComputeProdLocationVisitor__token_61d
]))(var130
, var134
); /* token= on <var130:ComputeProdLocationVisitor>*/
1217 ((void(*)(val
* self
))(var130
->class->vft
[COLOR_core__kernel__Object__init
]))(var130
); /* init on <var130:ComputeProdLocationVisitor>*/
1220 nitc___nitc__Visitor___enter_visit(var130
, var_node
); /* Direct call parser_nodes$Visitor$enter_visit on <var130:ComputeProdLocationVisitor>*/
1226 { /* Inline kernel$Int$== (var_action_type,3l) on <var_action_type:Int> */
1227 var139
= var_action_type
== 3l;
1230 RET_LABEL138
:(void)0;
1235 var140
= var_token
->attrs
[COLOR_nitc__parser_nodes__ANode___location
].val
!= NULL
; /* _location on <var_token:Token> */
1239 var142
= nitc___nitc__Lexer___next(var_lexer
);
1243 goto BREAK_label143
;
1246 BREAK_label143
: (void)0;
1247 var144
= NEW_nitc__AParserError(&type_nitc__AParserError
);
1248 if (unlikely(varonce
==NULL
)) {
1249 var145
= NEW_core__NativeArray((int)3l, &type_core__NativeArray__core__String
);
1250 if (likely(varonce146
!=NULL
)) {
1251 var147
= varonce146
;
1253 var148
= "Syntax Error: unexpected ";
1254 var150
= (val
*)(25l<<2|1);
1255 var151
= (val
*)(25l<<2|1);
1256 var152
= (val
*)((long)(0)<<2|3);
1257 var153
= (val
*)((long)(0)<<2|3);
1258 var149
= core__flat___CString___to_s_unsafe(var148
, var150
, var151
, var152
, var153
);
1260 varonce146
= var147
;
1262 ((struct instance_core__NativeArray
*)var145
)->values
[0]=var147
;
1263 if (likely(varonce154
!=NULL
)) {
1264 var155
= varonce154
;
1267 var158
= (val
*)(1l<<2|1);
1268 var159
= (val
*)(1l<<2|1);
1269 var160
= (val
*)((long)(0)<<2|3);
1270 var161
= (val
*)((long)(0)<<2|3);
1271 var157
= core__flat___CString___to_s_unsafe(var156
, var158
, var159
, var160
, var161
);
1273 varonce154
= var155
;
1275 ((struct instance_core__NativeArray
*)var145
)->values
[2]=var155
;
1281 var162
= ((val
*(*)(val
* self
))(var_token
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_token
); /* to_s on <var_token:Token>*/
1283 ((struct instance_core__NativeArray
*)var145
)->values
[1]=var162
;
1285 var163
= ((val
*(*)(val
* self
))(var145
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var145
); /* native_to_s on <var145:NativeArray[String]>*/
1289 { /* Inline parser_nodes$ANode$location (var_token) on <var_token:Token> */
1290 var166
= var_token
->attrs
[COLOR_nitc__parser_nodes__ANode___location
].val
; /* _location on <var_token:Token> */
1291 if (unlikely(var166
== NULL
)) {
1292 if(catchStack
.cursor
>= 0){
1293 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1295 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _location");
1296 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 25);
1300 RET_LABEL165
:(void)0;
1304 nitc__lexer_work___AParserError___init_parser_error(var144
, var163
, var164
, var_token
); /* Direct call lexer_work$AParserError$init_parser_error on <var144:AParserError>*/
1306 var_node2167
= var144
;
1307 var168
= NEW_nitc__Start(&type_nitc__Start
);
1309 ((void(*)(val
* self
, val
* p0
))(var168
->class->vft
[COLOR_nitc__parser_nodes__Start__n_base_61d
]))(var168
, ((val
*)NULL
)); /* n_base= on <var168:Start>*/
1312 ((void(*)(val
* self
, val
* p0
))(var168
->class->vft
[COLOR_nitc__parser_nodes__Start__n_eof_61d
]))(var168
, var_node2167
); /* n_eof= on <var168:Start>*/
1315 ((void(*)(val
* self
))(var168
->class->vft
[COLOR_core__kernel__Object__init
]))(var168
); /* init on <var168:Start>*/
1317 var_node169
= var168
;
1329 /* method parser_work$Parser$reduce_table= for (self: Parser, Array[ReduceAction]) */
1330 void nitc___nitc__Parser___reduce_table_61d(val
* self
, val
* p0
) {
1331 self
->attrs
[COLOR_nitc__parser_work__Parser___reduce_table
].val
= p0
; /* _reduce_table on <self:Parser> */
1334 /* method parser_work$Prod$collect_text for (self: Prod): String */
1335 val
* nitc__parser_work___Prod___collect_text(val
* self
) {
1336 val
* var
/* : String */;
1337 val
* var1
/* : TextCollectorVisitor */;
1338 val
* var_v
/* var v: TextCollectorVisitor */;
1339 val
* var3
/* : String */;
1340 val
* var5
/* : String */;
1341 static val
* varonce
;
1342 val
* var6
/* : String */;
1343 char* var7
/* : CString */;
1344 val
* var8
/* : String */;
1345 val
* var9
/* : nullable Int */;
1346 val
* var10
/* : nullable Int */;
1347 val
* var11
/* : nullable Bool */;
1348 val
* var12
/* : nullable Bool */;
1349 short int var13
/* : Bool */;
1350 val
* var_other
/* var other: nullable Object */;
1351 short int var15
/* : Bool */;
1352 short int var16
/* : Bool */;
1353 val
* var17
/* : String */;
1354 val
* var19
/* : String */;
1355 var1
= NEW_nitc__parser_work__TextCollectorVisitor(&type_nitc__parser_work__TextCollectorVisitor
);
1357 { /* Inline kernel$Object$init (var1) on <var1:TextCollectorVisitor> */
1363 nitc___nitc__Visitor___enter_visit(var_v
, self
); /* Direct call parser_nodes$Visitor$enter_visit on <var_v:TextCollectorVisitor>*/
1366 { /* Inline parser_work$TextCollectorVisitor$text (var_v) on <var_v:TextCollectorVisitor> */
1367 var5
= var_v
->attrs
[COLOR_nitc__parser_work__TextCollectorVisitor___text
].val
; /* _text on <var_v:TextCollectorVisitor> */
1368 if (unlikely(var5
== NULL
)) {
1369 if(catchStack
.cursor
>= 0){
1370 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1372 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _text");
1373 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_work
, 281);
1380 if (likely(varonce
!=NULL
)) {
1384 var9
= (val
*)(0l<<2|1);
1385 var10
= (val
*)(0l<<2|1);
1386 var11
= (val
*)((long)(0)<<2|3);
1387 var12
= (val
*)((long)(0)<<2|3);
1388 var8
= core__flat___CString___to_s_unsafe(var7
, var9
, var10
, var11
, var12
);
1393 { /* Inline kernel$Object$!= (var3,var6) on <var3:String> */
1396 var15
= ((short int(*)(val
* self
, val
* p0
))(var3
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var3
, var_other
); /* == on <var3:String>*/
1401 RET_LABEL14
:(void)0;
1404 if (unlikely(!var13
)) {
1405 if(catchStack
.cursor
>= 0){
1406 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1408 PRINT_ERROR("Runtime error: %s", "Assert failed");
1409 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_work
, 171);
1413 { /* Inline parser_work$TextCollectorVisitor$text (var_v) on <var_v:TextCollectorVisitor> */
1414 var19
= var_v
->attrs
[COLOR_nitc__parser_work__TextCollectorVisitor___text
].val
; /* _text on <var_v:TextCollectorVisitor> */
1415 if (unlikely(var19
== NULL
)) {
1416 if(catchStack
.cursor
>= 0){
1417 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1419 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _text");
1420 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_work
, 281);
1424 RET_LABEL18
:(void)0;
1432 /* method parser_work$ComputeProdLocationVisitor$token for (self: ComputeProdLocationVisitor): nullable Token */
1433 val
* nitc__parser_work___nitc__parser_work__ComputeProdLocationVisitor___token(val
* self
) {
1434 val
* var
/* : nullable Token */;
1435 val
* var1
/* : nullable Token */;
1436 var1
= self
->attrs
[COLOR_nitc__parser_work__ComputeProdLocationVisitor___token
].val
; /* _token on <self:ComputeProdLocationVisitor> */
1441 /* method parser_work$ComputeProdLocationVisitor$token= for (self: ComputeProdLocationVisitor, nullable Token) */
1442 void nitc__parser_work___nitc__parser_work__ComputeProdLocationVisitor___token_61d(val
* self
, val
* p0
) {
1443 self
->attrs
[COLOR_nitc__parser_work__ComputeProdLocationVisitor___token
].val
= p0
; /* _token on <self:ComputeProdLocationVisitor> */
1446 /* method parser_work$ComputeProdLocationVisitor$last_token for (self: ComputeProdLocationVisitor): nullable Token */
1447 val
* nitc__parser_work___nitc__parser_work__ComputeProdLocationVisitor___last_token(val
* self
) {
1448 val
* var
/* : nullable Token */;
1449 val
* var1
/* : nullable Token */;
1450 var1
= self
->attrs
[COLOR_nitc__parser_work__ComputeProdLocationVisitor___last_token
].val
; /* _last_token on <self:ComputeProdLocationVisitor> */
1455 /* method parser_work$ComputeProdLocationVisitor$visit for (self: ComputeProdLocationVisitor, ANode) */
1456 void nitc__parser_work___nitc__parser_work__ComputeProdLocationVisitor___nitc__parser_nodes__Visitor__visit(val
* self
, val
* p0
) {
1457 val
* var_n
/* var n: ANode */;
1458 short int var
/* : Bool */;
1461 short int var1
/* : Bool */;
1462 short int var2
/* : Bool */;
1463 val
* var3
/* : nullable Token */;
1464 val
* var5
/* : nullable Token */;
1465 val
* var_cursor
/* var cursor: nullable Token */;
1466 short int var6
/* : Bool */;
1467 val
* var_other
/* var other: nullable Object */;
1468 short int var8
/* : Bool */;
1469 short int var9
/* : Bool */;
1470 val
* var10
/* : nullable Token */;
1471 val
* var12
/* : nullable Token */;
1472 val
* var_lt
/* var lt: nullable Token */;
1473 short int var13
/* : Bool */;
1474 short int var14
/* : Bool */;
1475 short int var16
/* : Bool */;
1476 short int var17
/* : Bool */;
1477 val
* var18
/* : Location */;
1478 val
* var20
/* : Location */;
1479 long var21
/* : Int */;
1480 long var23
/* : Int */;
1481 long var_ltl
/* var ltl: Int */;
1482 short int var24
/* : Bool */;
1483 short int var25
/* : Bool */;
1484 short int var26
/* : Bool */;
1485 short int var27
/* : Bool */;
1486 short int var29
/* : Bool */;
1487 short int var30
/* : Bool */;
1488 short int var_
/* var : Bool */;
1489 short int var31
/* : Bool */;
1490 short int var33
/* : Bool */;
1491 short int var34
/* : Bool */;
1492 short int var_35
/* var : Bool */;
1493 val
* var36
/* : Location */;
1494 val
* var38
/* : Location */;
1495 long var39
/* : Int */;
1496 long var41
/* : Int */;
1497 short int var42
/* : Bool */;
1498 short int var44
/* : Bool */;
1499 val
* var46
/* : Array[Token] */;
1500 val
* var47
/* : nullable Token */;
1501 val
* var49
/* : nullable Token */;
1502 short int var50
/* : Bool */;
1503 short int var51
/* : Bool */;
1504 short int var52
/* : Bool */;
1505 short int var54
/* : Bool */;
1506 short int var55
/* : Bool */;
1507 short int var_56
/* var : Bool */;
1508 short int var57
/* : Bool */;
1509 short int var59
/* : Bool */;
1510 short int var60
/* : Bool */;
1511 val
* var62
/* : Array[Token] */;
1512 val
* var63
/* : nullable Token */;
1513 val
* var65
/* : nullable Token */;
1514 val
* var67
/* : nullable Token */;
1515 val
* var69
/* : nullable Token */;
1516 val
* var71
/* : Location */;
1517 val
* var_loc
/* var loc: Location */;
1518 val
* var72
/* : Array[Prod] */;
1519 short int var73
/* : Bool */;
1520 short int var74
/* : Bool */;
1521 val
* var75
/* : Array[Prod] */;
1522 val
* var_76
/* var : Array[Prod] */;
1523 val
* var77
/* : IndexedIterator[nullable Object] */;
1524 val
* var_78
/* var : IndexedIterator[Prod] */;
1525 short int var79
/* : Bool */;
1526 val
* var81
/* : nullable Object */;
1527 val
* var_no
/* var no: Prod */;
1528 val
* var82
/* : Array[Prod] */;
1529 val
* var83
/* : Array[Prod] */;
1530 short int var84
/* : Bool */;
1531 short int var85
/* : Bool */;
1532 val
* var86
/* : Location */;
1533 val
* var87
/* : nullable SourceFile */;
1534 val
* var89
/* : nullable SourceFile */;
1535 long var90
/* : Int */;
1536 long var92
/* : Int */;
1537 long var93
/* : Int */;
1538 long var95
/* : Int */;
1539 long var96
/* : Int */;
1540 long var98
/* : Int */;
1541 long var99
/* : Int */;
1542 long var101
/* : Int */;
1543 val
* var_loco
/* var loco: Location */;
1544 val
* var102
/* : Array[Prod] */;
1545 val
* var_103
/* var : Array[Prod] */;
1546 val
* var104
/* : IndexedIterator[nullable Object] */;
1547 val
* var_105
/* var : IndexedIterator[Prod] */;
1548 short int var106
/* : Bool */;
1549 val
* var108
/* : nullable Object */;
1550 val
* var_no109
/* var no: Prod */;
1551 val
* var111
/* : Array[Prod] */;
1552 short int var112
/* : Bool */;
1555 val
* var115
/* : Array[Prod] */;
1556 val
* var116
/* : nullable Location */;
1557 val
* var_startl
/* var startl: nullable Location */;
1558 short int var117
/* : Bool */;
1559 short int var118
/* : Bool */;
1560 short int var120
/* : Bool */;
1561 short int var121
/* : Bool */;
1562 val
* var122
/* : nullable Token */;
1563 val
* var123
/* : Location */;
1564 val
* var125
/* : Location */;
1565 val
* var_endl
/* var endl: Location */;
1566 short int var126
/* : Bool */;
1567 val
* var128
/* : Location */;
1568 val
* var129
/* : nullable SourceFile */;
1569 val
* var131
/* : nullable SourceFile */;
1570 long var132
/* : Int */;
1571 long var134
/* : Int */;
1572 long var135
/* : Int */;
1573 long var137
/* : Int */;
1574 long var138
/* : Int */;
1575 long var140
/* : Int */;
1576 long var141
/* : Int */;
1577 long var143
/* : Int */;
1578 val
* var145
/* : Array[Prod] */;
1579 short int var146
/* : Bool */;
1580 short int var147
/* : Bool */;
1581 val
* var148
/* : Location */;
1582 val
* var149
/* : nullable SourceFile */;
1583 val
* var151
/* : nullable SourceFile */;
1584 long var152
/* : Int */;
1585 long var154
/* : Int */;
1586 long var155
/* : Int */;
1587 long var157
/* : Int */;
1588 long var158
/* : Int */;
1589 long var160
/* : Int */;
1590 long var161
/* : Int */;
1591 long var163
/* : Int */;
1592 val
* var_loc164
/* var loc: Location */;
1593 val
* var165
/* : Array[Prod] */;
1594 val
* var_166
/* var : Array[Prod] */;
1595 val
* var167
/* : IndexedIterator[nullable Object] */;
1596 val
* var_168
/* var : IndexedIterator[Prod] */;
1597 short int var169
/* : Bool */;
1598 val
* var171
/* : nullable Object */;
1599 val
* var_no172
/* var no: Prod */;
1600 val
* var174
/* : Array[Prod] */;
1601 val
* var175
/* : Array[Prod] */;
1603 /* <var_n:ANode> isa Token */
1604 cltype
= type_nitc__Token
.color
;
1605 idtype
= type_nitc__Token
.id
;
1606 if(cltype
>= var_n
->type
->table_size
) {
1609 var
= var_n
->type
->type_table
[cltype
] == idtype
;
1612 var1
= var_n
->attrs
[COLOR_nitc__parser_nodes__ANode___location
].val
!= NULL
; /* _location on <var_n:ANode(Token)> */
1619 { /* Inline parser_work$ComputeProdLocationVisitor$token (self) on <self:ComputeProdLocationVisitor> */
1620 var5
= self
->attrs
[COLOR_nitc__parser_work__ComputeProdLocationVisitor___token
].val
; /* _token on <self:ComputeProdLocationVisitor> */
1627 { /* Inline kernel$Object$!= (var_n,var_cursor) on <var_n:ANode(Token)> */
1628 var_other
= var_cursor
;
1630 var8
= ((short int(*)(val
* self
, val
* p0
))(var_n
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_n
, var_other
); /* == on <var_n:ANode(Token)>*/
1640 { /* Inline parser_work$ComputeProdLocationVisitor$last_token (self) on <self:ComputeProdLocationVisitor> */
1641 var12
= self
->attrs
[COLOR_nitc__parser_work__ComputeProdLocationVisitor___last_token
].val
; /* _last_token on <self:ComputeProdLocationVisitor> */
1643 RET_LABEL11
:(void)0;
1647 if (var_lt
== NULL
) {
1648 var13
= 0; /* is null */
1650 var13
= 1; /* arg is null and recv is not */
1653 { /* Inline kernel$Object$!= (var_lt,((val*)NULL)) on <var_lt:nullable Token> */
1654 var_other
= ((val
*)NULL
);
1656 var16
= ((short int(*)(val
* self
, val
* p0
))(var_lt
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_lt
, var_other
); /* == on <var_lt:nullable Token(Token)>*/
1661 RET_LABEL15
:(void)0;
1667 { /* Inline parser_nodes$ANode$location (var_lt) on <var_lt:nullable Token(Token)> */
1668 var20
= var_lt
->attrs
[COLOR_nitc__parser_nodes__ANode___location
].val
; /* _location on <var_lt:nullable Token(Token)> */
1669 if (unlikely(var20
== NULL
)) {
1670 if(catchStack
.cursor
>= 0){
1671 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1673 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _location");
1674 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 25);
1678 RET_LABEL19
:(void)0;
1682 { /* Inline location$Location$line_end (var18) on <var18:Location> */
1683 var23
= var18
->attrs
[COLOR_nitc__location__Location___line_end
].l
; /* _line_end on <var18:Location> */
1685 RET_LABEL22
:(void)0;
1690 if (var_cursor
== NULL
) {
1691 var26
= 0; /* is null */
1693 var26
= 1; /* arg is null and recv is not */
1696 { /* Inline kernel$Object$!= (var_cursor,((val*)NULL)) on <var_cursor:nullable Token> */
1697 var_other
= ((val
*)NULL
);
1699 var29
= ((short int(*)(val
* self
, val
* p0
))(var_cursor
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_cursor
, var_other
); /* == on <var_cursor:nullable Token(Token)>*/
1704 RET_LABEL28
:(void)0;
1711 { /* Inline kernel$Object$!= (var_cursor,var_n) on <var_cursor:nullable Token(Token)> */
1714 var33
= ((short int(*)(val
* self
, val
* p0
))(var_cursor
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_cursor
, var_other
); /* == on <var_cursor:nullable Token(Token)>*/
1719 RET_LABEL32
:(void)0;
1729 { /* Inline parser_nodes$ANode$location (var_cursor) on <var_cursor:nullable Token(Token)> */
1730 var38
= var_cursor
->attrs
[COLOR_nitc__parser_nodes__ANode___location
].val
; /* _location on <var_cursor:nullable Token(Token)> */
1731 if (unlikely(var38
== NULL
)) {
1732 if(catchStack
.cursor
>= 0){
1733 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1735 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _location");
1736 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 25);
1740 RET_LABEL37
:(void)0;
1744 { /* Inline location$Location$line_start (var36) on <var36:Location> */
1745 var41
= var36
->attrs
[COLOR_nitc__location__Location___line_start
].l
; /* _line_start on <var36:Location> */
1747 RET_LABEL40
:(void)0;
1751 { /* Inline kernel$Int$== (var_ltl,var39) on <var_ltl:Int> */
1752 var44
= var_ltl
== var39
;
1755 RET_LABEL43
:(void)0;
1764 { /* Inline parser_nodes$Token$is_loose= (var_cursor,1) on <var_cursor:nullable Token(Token)> */
1765 var_cursor
->attrs
[COLOR_nitc__parser_nodes__Token___is_loose
].s
= 1; /* _is_loose on <var_cursor:nullable Token(Token)> */
1766 RET_LABEL45
:(void)0;
1770 var46
= nitc___nitc__Token___next_looses(var_lt
);
1773 core___core__Array___core__abstract_collection__SimpleCollection__add(var46
, var_cursor
); /* Direct call array$Array$add on <var46:Array[Token]>*/
1776 { /* Inline parser_nodes$Token$next_token (var_cursor) on <var_cursor:nullable Token(Token)> */
1777 var49
= var_cursor
->attrs
[COLOR_nitc__parser_nodes__Token___next_token
].val
; /* _next_token on <var_cursor:nullable Token(Token)> */
1779 RET_LABEL48
:(void)0;
1787 BREAK_label
: (void)0;
1791 if (var_cursor
== NULL
) {
1792 var51
= 0; /* is null */
1794 var51
= 1; /* arg is null and recv is not */
1797 { /* Inline kernel$Object$!= (var_cursor,((val*)NULL)) on <var_cursor:nullable Token> */
1798 var_other
= ((val
*)NULL
);
1800 var54
= ((short int(*)(val
* self
, val
* p0
))(var_cursor
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_cursor
, var_other
); /* == on <var_cursor:nullable Token(Token)>*/
1805 RET_LABEL53
:(void)0;
1812 { /* Inline kernel$Object$!= (var_cursor,var_n) on <var_cursor:nullable Token(Token)> */
1815 var59
= ((short int(*)(val
* self
, val
* p0
))(var_cursor
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_cursor
, var_other
); /* == on <var_cursor:nullable Token(Token)>*/
1820 RET_LABEL58
:(void)0;
1829 { /* Inline parser_nodes$Token$is_loose= (var_cursor,1) on <var_cursor:nullable Token(Token)> */
1830 var_cursor
->attrs
[COLOR_nitc__parser_nodes__Token___is_loose
].s
= 1; /* _is_loose on <var_cursor:nullable Token(Token)> */
1831 RET_LABEL61
:(void)0;
1835 var62
= nitc___nitc__Token___prev_looses(var_n
);
1838 core___core__Array___core__abstract_collection__SimpleCollection__add(var62
, var_cursor
); /* Direct call array$Array$add on <var62:Array[Token]>*/
1841 { /* Inline parser_nodes$Token$next_token (var_cursor) on <var_cursor:nullable Token(Token)> */
1842 var65
= var_cursor
->attrs
[COLOR_nitc__parser_nodes__Token___next_token
].val
; /* _next_token on <var_cursor:nullable Token(Token)> */
1844 RET_LABEL64
:(void)0;
1852 BREAK_label66
: (void)0;
1856 { /* Inline parser_nodes$Token$next_token (var_n) on <var_n:ANode(Token)> */
1857 var69
= var_n
->attrs
[COLOR_nitc__parser_nodes__Token___next_token
].val
; /* _next_token on <var_n:ANode(Token)> */
1859 RET_LABEL68
:(void)0;
1863 { /* Inline parser_work$ComputeProdLocationVisitor$token= (self,var67) on <self:ComputeProdLocationVisitor> */
1864 self
->attrs
[COLOR_nitc__parser_work__ComputeProdLocationVisitor___token
].val
= var67
; /* _token on <self:ComputeProdLocationVisitor> */
1865 RET_LABEL70
:(void)0;
1868 var71
= var_n
->attrs
[COLOR_nitc__parser_nodes__ANode___location
].val
; /* _location on <var_n:ANode(Token)> */
1869 if (unlikely(var71
== NULL
)) {
1870 if(catchStack
.cursor
>= 0){
1871 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1873 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _location");
1874 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_work
, 227);
1878 self
->attrs
[COLOR_nitc__parser_work__ComputeProdLocationVisitor___last_token
].val
= var_n
; /* _last_token on <self:ComputeProdLocationVisitor> */
1879 var72
= self
->attrs
[COLOR_nitc__parser_work__ComputeProdLocationVisitor___need_first_prods
].val
; /* _need_first_prods on <self:ComputeProdLocationVisitor> */
1880 if (unlikely(var72
== NULL
)) {
1881 if(catchStack
.cursor
>= 0){
1882 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1884 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _need_first_prods");
1885 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_work
, 231);
1889 var73
= core___core__AbstractArrayRead___core__abstract_collection__Collection__is_empty(var72
);
1893 var75
= self
->attrs
[COLOR_nitc__parser_work__ComputeProdLocationVisitor___need_first_prods
].val
; /* _need_first_prods on <self:ComputeProdLocationVisitor> */
1894 if (unlikely(var75
== NULL
)) {
1895 if(catchStack
.cursor
>= 0){
1896 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1898 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _need_first_prods");
1899 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_work
, 232);
1904 var77
= core___core__AbstractArrayRead___core__abstract_collection__Collection__iterator(var_76
);
1909 var79
= ((short int(*)(val
* self
))((((long)var_78
&3)?class_info
[((long)var_78
&3)]:var_78
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_78
); /* is_ok on <var_78:IndexedIterator[Prod]>*/
1916 var81
= ((val
*(*)(val
* self
))((((long)var_78
&3)?class_info
[((long)var_78
&3)]:var_78
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_78
); /* item on <var_78:IndexedIterator[Prod]>*/
1919 var_no
->attrs
[COLOR_nitc__parser_work__Prod___first_location
].val
= var_loc
; /* _first_location on <var_no:Prod> */
1921 ((void(*)(val
* self
))((((long)var_78
&3)?class_info
[((long)var_78
&3)]:var_78
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_78
); /* next on <var_78:IndexedIterator[Prod]>*/
1924 BREAK_label80
: (void)0;
1926 ((void(*)(val
* self
))((((long)var_78
&3)?class_info
[((long)var_78
&3)]:var_78
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_78
); /* finish on <var_78:IndexedIterator[Prod]>*/
1928 var82
= self
->attrs
[COLOR_nitc__parser_work__ComputeProdLocationVisitor___need_first_prods
].val
; /* _need_first_prods on <self:ComputeProdLocationVisitor> */
1929 if (unlikely(var82
== NULL
)) {
1930 if(catchStack
.cursor
>= 0){
1931 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1933 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _need_first_prods");
1934 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_work
, 235);
1938 core___core__AbstractArray___core__abstract_collection__RemovableCollection__clear(var82
); /* Direct call array$AbstractArray$clear on <var82:Array[Prod]>*/
1942 var83
= self
->attrs
[COLOR_nitc__parser_work__ComputeProdLocationVisitor___need_after_epsilons
].val
; /* _need_after_epsilons on <self:ComputeProdLocationVisitor> */
1943 if (unlikely(var83
== NULL
)) {
1944 if(catchStack
.cursor
>= 0){
1945 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1947 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _need_after_epsilons");
1948 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_work
, 239);
1952 var84
= core___core__AbstractArrayRead___core__abstract_collection__Collection__is_empty(var83
);
1956 var86
= NEW_nitc__Location(&type_nitc__Location
);
1958 { /* Inline location$Location$file (var_loc) on <var_loc:Location> */
1959 var89
= var_loc
->attrs
[COLOR_nitc__location__Location___file
].val
; /* _file on <var_loc:Location> */
1961 RET_LABEL88
:(void)0;
1965 { /* Inline location$Location$line_start (var_loc) on <var_loc:Location> */
1966 var92
= var_loc
->attrs
[COLOR_nitc__location__Location___line_start
].l
; /* _line_start on <var_loc:Location> */
1968 RET_LABEL91
:(void)0;
1972 { /* Inline location$Location$line_start (var_loc) on <var_loc:Location> */
1973 var95
= var_loc
->attrs
[COLOR_nitc__location__Location___line_start
].l
; /* _line_start on <var_loc:Location> */
1975 RET_LABEL94
:(void)0;
1979 { /* Inline location$Location$column_start (var_loc) on <var_loc:Location> */
1980 var98
= var_loc
->attrs
[COLOR_nitc__location__Location___column_start
].l
; /* _column_start on <var_loc:Location> */
1982 RET_LABEL97
:(void)0;
1986 { /* Inline location$Location$column_start (var_loc) on <var_loc:Location> */
1987 var101
= var_loc
->attrs
[COLOR_nitc__location__Location___column_start
].l
; /* _column_start on <var_loc:Location> */
1989 RET_LABEL100
:(void)0;
1993 ((void(*)(val
* self
, val
* p0
))(var86
->class->vft
[COLOR_nitc__location__Location__file_61d
]))(var86
, var87
); /* file= on <var86:Location>*/
1996 ((void(*)(val
* self
, long p0
))(var86
->class->vft
[COLOR_nitc__location__Location__line_start_61d
]))(var86
, var90
); /* line_start= on <var86:Location>*/
1999 ((void(*)(val
* self
, long p0
))(var86
->class->vft
[COLOR_nitc__location__Location__line_end_61d
]))(var86
, var93
); /* line_end= on <var86:Location>*/
2002 ((void(*)(val
* self
, long p0
))(var86
->class->vft
[COLOR_nitc__location__Location__column_start_61d
]))(var86
, var96
); /* column_start= on <var86:Location>*/
2005 ((void(*)(val
* self
, long p0
))(var86
->class->vft
[COLOR_nitc__location__Location__column_end_61d
]))(var86
, var99
); /* column_end= on <var86:Location>*/
2008 ((void(*)(val
* self
))(var86
->class->vft
[COLOR_core__kernel__Object__init
]))(var86
); /* init on <var86:Location>*/
2011 var102
= self
->attrs
[COLOR_nitc__parser_work__ComputeProdLocationVisitor___need_after_epsilons
].val
; /* _need_after_epsilons on <self:ComputeProdLocationVisitor> */
2012 if (unlikely(var102
== NULL
)) {
2013 if(catchStack
.cursor
>= 0){
2014 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
2016 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _need_after_epsilons");
2017 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_work
, 241);
2022 var104
= core___core__AbstractArrayRead___core__abstract_collection__Collection__iterator(var_103
);
2027 var106
= ((short int(*)(val
* self
))((((long)var_105
&3)?class_info
[((long)var_105
&3)]:var_105
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_105
); /* is_ok on <var_105:IndexedIterator[Prod]>*/
2031 goto BREAK_label107
;
2034 var108
= ((val
*(*)(val
* self
))((((long)var_105
&3)?class_info
[((long)var_105
&3)]:var_105
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_105
); /* item on <var_105:IndexedIterator[Prod]>*/
2038 { /* Inline parser_nodes$ANode$location= (var_no109,var_loco) on <var_no109:Prod> */
2039 var_no109
->attrs
[COLOR_nitc__parser_nodes__ANode___location
].val
= var_loco
; /* _location on <var_no109:Prod> */
2040 RET_LABEL110
:(void)0;
2044 ((void(*)(val
* self
))((((long)var_105
&3)?class_info
[((long)var_105
&3)]:var_105
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_105
); /* next on <var_105:IndexedIterator[Prod]>*/
2047 BREAK_label107
: (void)0;
2049 ((void(*)(val
* self
))((((long)var_105
&3)?class_info
[((long)var_105
&3)]:var_105
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_105
); /* finish on <var_105:IndexedIterator[Prod]>*/
2051 var111
= self
->attrs
[COLOR_nitc__parser_work__ComputeProdLocationVisitor___need_after_epsilons
].val
; /* _need_after_epsilons on <self:ComputeProdLocationVisitor> */
2052 if (unlikely(var111
== NULL
)) {
2053 if(catchStack
.cursor
>= 0){
2054 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
2056 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _need_after_epsilons");
2057 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_work
, 244);
2061 core___core__AbstractArray___core__abstract_collection__RemovableCollection__clear(var111
); /* Direct call array$AbstractArray$clear on <var111:Array[Prod]>*/
2066 /* <var_n:ANode> isa Prod */
2067 cltype113
= type_nitc__Prod
.color
;
2068 idtype114
= type_nitc__Prod
.id
;
2069 if(cltype113
>= var_n
->type
->table_size
) {
2072 var112
= var_n
->type
->type_table
[cltype113
] == idtype114
;
2074 if (unlikely(!var112
)) {
2075 if(catchStack
.cursor
>= 0){
2076 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
2078 PRINT_ERROR("Runtime error: %s", "Assert failed");
2079 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_work
, 247);
2082 var115
= self
->attrs
[COLOR_nitc__parser_work__ComputeProdLocationVisitor___need_first_prods
].val
; /* _need_first_prods on <self:ComputeProdLocationVisitor> */
2083 if (unlikely(var115
== NULL
)) {
2084 if(catchStack
.cursor
>= 0){
2085 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
2087 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _need_first_prods");
2088 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_work
, 248);
2092 core___core__Array___core__abstract_collection__SimpleCollection__add(var115
, var_n
); /* Direct call array$Array$add on <var115:Array[Prod]>*/
2095 ((void(*)(val
* self
, val
* p0
))(var_n
->class->vft
[COLOR_nitc__parser_nodes__ANode__visit_all
]))(var_n
, self
); /* visit_all on <var_n:ANode(Prod)>*/
2097 var116
= var_n
->attrs
[COLOR_nitc__parser_work__Prod___first_location
].val
; /* _first_location on <var_n:ANode(Prod)> */
2098 var_startl
= var116
;
2099 if (var_startl
== NULL
) {
2100 var117
= 0; /* is null */
2102 var117
= 1; /* arg is null and recv is not */
2105 { /* Inline kernel$Object$!= (var_startl,((val*)NULL)) on <var_startl:nullable Location> */
2106 var_other
= ((val
*)NULL
);
2108 var120
= ((short int(*)(val
* self
, val
* p0
))(var_startl
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_startl
, var_other
); /* == on <var_startl:nullable Location(Location)>*/
2113 RET_LABEL119
:(void)0;
2118 var122
= self
->attrs
[COLOR_nitc__parser_work__ComputeProdLocationVisitor___last_token
].val
; /* _last_token on <self:ComputeProdLocationVisitor> */
2119 if (var122
== NULL
) {
2120 if(catchStack
.cursor
>= 0){
2121 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
2123 PRINT_ERROR("Runtime error: %s", "Receiver is null");
2124 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_work
, 255);
2127 { /* Inline parser_nodes$ANode$location (var122) on <var122:nullable Token> */
2128 if (unlikely(var122
== NULL
)) {
2129 if(catchStack
.cursor
>= 0){
2130 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
2132 PRINT_ERROR("Runtime error: %s", "Receiver is null");
2133 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 25);
2136 var125
= var122
->attrs
[COLOR_nitc__parser_nodes__ANode___location
].val
; /* _location on <var122:nullable Token> */
2137 if (unlikely(var125
== NULL
)) {
2138 if(catchStack
.cursor
>= 0){
2139 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
2141 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _location");
2142 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 25);
2146 RET_LABEL124
:(void)0;
2151 var126
= nitc___nitc__Location___core__kernel__Object___61d_61d(var_startl
, var_endl
);
2155 { /* Inline parser_nodes$ANode$location= (var_n,var_startl) on <var_n:ANode(Prod)> */
2156 var_n
->attrs
[COLOR_nitc__parser_nodes__ANode___location
].val
= var_startl
; /* _location on <var_n:ANode(Prod)> */
2157 RET_LABEL127
:(void)0;
2161 var128
= NEW_nitc__Location(&type_nitc__Location
);
2163 { /* Inline location$Location$file (var_startl) on <var_startl:nullable Location(Location)> */
2164 var131
= var_startl
->attrs
[COLOR_nitc__location__Location___file
].val
; /* _file on <var_startl:nullable Location(Location)> */
2166 RET_LABEL130
:(void)0;
2170 { /* Inline location$Location$line_start (var_startl) on <var_startl:nullable Location(Location)> */
2171 var134
= var_startl
->attrs
[COLOR_nitc__location__Location___line_start
].l
; /* _line_start on <var_startl:nullable Location(Location)> */
2173 RET_LABEL133
:(void)0;
2177 { /* Inline location$Location$line_end (var_endl) on <var_endl:Location> */
2178 var137
= var_endl
->attrs
[COLOR_nitc__location__Location___line_end
].l
; /* _line_end on <var_endl:Location> */
2180 RET_LABEL136
:(void)0;
2184 { /* Inline location$Location$column_start (var_startl) on <var_startl:nullable Location(Location)> */
2185 var140
= var_startl
->attrs
[COLOR_nitc__location__Location___column_start
].l
; /* _column_start on <var_startl:nullable Location(Location)> */
2187 RET_LABEL139
:(void)0;
2191 { /* Inline location$Location$column_end (var_endl) on <var_endl:Location> */
2192 var143
= var_endl
->attrs
[COLOR_nitc__location__Location___column_end
].l
; /* _column_end on <var_endl:Location> */
2194 RET_LABEL142
:(void)0;
2198 ((void(*)(val
* self
, val
* p0
))(var128
->class->vft
[COLOR_nitc__location__Location__file_61d
]))(var128
, var129
); /* file= on <var128:Location>*/
2201 ((void(*)(val
* self
, long p0
))(var128
->class->vft
[COLOR_nitc__location__Location__line_start_61d
]))(var128
, var132
); /* line_start= on <var128:Location>*/
2204 ((void(*)(val
* self
, long p0
))(var128
->class->vft
[COLOR_nitc__location__Location__line_end_61d
]))(var128
, var135
); /* line_end= on <var128:Location>*/
2207 ((void(*)(val
* self
, long p0
))(var128
->class->vft
[COLOR_nitc__location__Location__column_start_61d
]))(var128
, var138
); /* column_start= on <var128:Location>*/
2210 ((void(*)(val
* self
, long p0
))(var128
->class->vft
[COLOR_nitc__location__Location__column_end_61d
]))(var128
, var141
); /* column_end= on <var128:Location>*/
2213 ((void(*)(val
* self
))(var128
->class->vft
[COLOR_core__kernel__Object__init
]))(var128
); /* init on <var128:Location>*/
2216 { /* Inline parser_nodes$ANode$location= (var_n,var128) on <var_n:ANode(Prod)> */
2217 var_n
->attrs
[COLOR_nitc__parser_nodes__ANode___location
].val
= var128
; /* _location on <var_n:ANode(Prod)> */
2218 RET_LABEL144
:(void)0;
2222 var145
= self
->attrs
[COLOR_nitc__parser_work__ComputeProdLocationVisitor___need_after_epsilons
].val
; /* _need_after_epsilons on <self:ComputeProdLocationVisitor> */
2223 if (unlikely(var145
== NULL
)) {
2224 if(catchStack
.cursor
>= 0){
2225 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
2227 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _need_after_epsilons");
2228 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_work
, 263);
2232 var146
= core___core__AbstractArrayRead___core__abstract_collection__Collection__is_empty(var145
);
2236 var148
= NEW_nitc__Location(&type_nitc__Location
);
2238 { /* Inline location$Location$file (var_endl) on <var_endl:Location> */
2239 var151
= var_endl
->attrs
[COLOR_nitc__location__Location___file
].val
; /* _file on <var_endl:Location> */
2241 RET_LABEL150
:(void)0;
2245 { /* Inline location$Location$line_end (var_endl) on <var_endl:Location> */
2246 var154
= var_endl
->attrs
[COLOR_nitc__location__Location___line_end
].l
; /* _line_end on <var_endl:Location> */
2248 RET_LABEL153
:(void)0;
2252 { /* Inline location$Location$line_end (var_endl) on <var_endl:Location> */
2253 var157
= var_endl
->attrs
[COLOR_nitc__location__Location___line_end
].l
; /* _line_end on <var_endl:Location> */
2255 RET_LABEL156
:(void)0;
2259 { /* Inline location$Location$column_end (var_endl) on <var_endl:Location> */
2260 var160
= var_endl
->attrs
[COLOR_nitc__location__Location___column_end
].l
; /* _column_end on <var_endl:Location> */
2262 RET_LABEL159
:(void)0;
2266 { /* Inline location$Location$column_end (var_endl) on <var_endl:Location> */
2267 var163
= var_endl
->attrs
[COLOR_nitc__location__Location___column_end
].l
; /* _column_end on <var_endl:Location> */
2269 RET_LABEL162
:(void)0;
2273 ((void(*)(val
* self
, val
* p0
))(var148
->class->vft
[COLOR_nitc__location__Location__file_61d
]))(var148
, var149
); /* file= on <var148:Location>*/
2276 ((void(*)(val
* self
, long p0
))(var148
->class->vft
[COLOR_nitc__location__Location__line_start_61d
]))(var148
, var152
); /* line_start= on <var148:Location>*/
2279 ((void(*)(val
* self
, long p0
))(var148
->class->vft
[COLOR_nitc__location__Location__line_end_61d
]))(var148
, var155
); /* line_end= on <var148:Location>*/
2282 ((void(*)(val
* self
, long p0
))(var148
->class->vft
[COLOR_nitc__location__Location__column_start_61d
]))(var148
, var158
); /* column_start= on <var148:Location>*/
2285 ((void(*)(val
* self
, long p0
))(var148
->class->vft
[COLOR_nitc__location__Location__column_end_61d
]))(var148
, var161
); /* column_end= on <var148:Location>*/
2288 ((void(*)(val
* self
))(var148
->class->vft
[COLOR_core__kernel__Object__init
]))(var148
); /* init on <var148:Location>*/
2290 var_loc164
= var148
;
2291 var165
= self
->attrs
[COLOR_nitc__parser_work__ComputeProdLocationVisitor___need_after_epsilons
].val
; /* _need_after_epsilons on <self:ComputeProdLocationVisitor> */
2292 if (unlikely(var165
== NULL
)) {
2293 if(catchStack
.cursor
>= 0){
2294 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
2296 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _need_after_epsilons");
2297 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_work
, 265);
2302 var167
= core___core__AbstractArrayRead___core__abstract_collection__Collection__iterator(var_166
);
2307 var169
= ((short int(*)(val
* self
))((((long)var_168
&3)?class_info
[((long)var_168
&3)]:var_168
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_168
); /* is_ok on <var_168:IndexedIterator[Prod]>*/
2311 goto BREAK_label170
;
2314 var171
= ((val
*(*)(val
* self
))((((long)var_168
&3)?class_info
[((long)var_168
&3)]:var_168
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_168
); /* item on <var_168:IndexedIterator[Prod]>*/
2318 { /* Inline parser_nodes$ANode$location= (var_no172,var_loc164) on <var_no172:Prod> */
2319 var_no172
->attrs
[COLOR_nitc__parser_nodes__ANode___location
].val
= var_loc164
; /* _location on <var_no172:Prod> */
2320 RET_LABEL173
:(void)0;
2324 ((void(*)(val
* self
))((((long)var_168
&3)?class_info
[((long)var_168
&3)]:var_168
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_168
); /* next on <var_168:IndexedIterator[Prod]>*/
2327 BREAK_label170
: (void)0;
2329 ((void(*)(val
* self
))((((long)var_168
&3)?class_info
[((long)var_168
&3)]:var_168
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_168
); /* finish on <var_168:IndexedIterator[Prod]>*/
2331 var174
= self
->attrs
[COLOR_nitc__parser_work__ComputeProdLocationVisitor___need_after_epsilons
].val
; /* _need_after_epsilons on <self:ComputeProdLocationVisitor> */
2332 if (unlikely(var174
== NULL
)) {
2333 if(catchStack
.cursor
>= 0){
2334 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
2336 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _need_after_epsilons");
2337 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_work
, 269);
2341 core___core__AbstractArray___core__abstract_collection__RemovableCollection__clear(var174
); /* Direct call array$AbstractArray$clear on <var174:Array[Prod]>*/
2346 var175
= self
->attrs
[COLOR_nitc__parser_work__ComputeProdLocationVisitor___need_after_epsilons
].val
; /* _need_after_epsilons on <self:ComputeProdLocationVisitor> */
2347 if (unlikely(var175
== NULL
)) {
2348 if(catchStack
.cursor
>= 0){
2349 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
2351 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _need_after_epsilons");
2352 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_work
, 273);
2356 core___core__Array___core__abstract_collection__SimpleCollection__add(var175
, var_n
); /* Direct call array$Array$add on <var175:Array[Prod]>*/
2362 /* method parser_work$ComputeProdLocationVisitor$init for (self: ComputeProdLocationVisitor) */
2363 void nitc__parser_work___nitc__parser_work__ComputeProdLocationVisitor___core__kernel__Object__init(val
* self
) {
2365 ((void(*)(val
* self
))(self
->class->vft
[COLOR_nitc__parser_work___nitc__parser_work__ComputeProdLocationVisitor___core__kernel__Object__init
]))(self
); /* init on <self:ComputeProdLocationVisitor>*/
2369 /* method parser_work$TextCollectorVisitor$text for (self: TextCollectorVisitor): String */
2370 val
* nitc__parser_work___nitc__parser_work__TextCollectorVisitor___text(val
* self
) {
2371 val
* var
/* : String */;
2372 val
* var1
/* : String */;
2373 var1
= self
->attrs
[COLOR_nitc__parser_work__TextCollectorVisitor___text
].val
; /* _text on <self:TextCollectorVisitor> */
2374 if (unlikely(var1
== NULL
)) {
2375 if(catchStack
.cursor
>= 0){
2376 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
2378 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _text");
2379 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_work
, 281);
2386 /* method parser_work$TextCollectorVisitor$text= for (self: TextCollectorVisitor, String) */
2387 void nitc__parser_work___nitc__parser_work__TextCollectorVisitor___text_61d(val
* self
, val
* p0
) {
2388 self
->attrs
[COLOR_nitc__parser_work__TextCollectorVisitor___text
].val
= p0
; /* _text on <self:TextCollectorVisitor> */
2391 /* method parser_work$TextCollectorVisitor$visit for (self: TextCollectorVisitor, ANode) */
2392 void nitc__parser_work___nitc__parser_work__TextCollectorVisitor___nitc__parser_nodes__Visitor__visit(val
* self
, val
* p0
) {
2393 val
* var_n
/* var n: ANode */;
2394 short int var
/* : Bool */;
2397 val
* var_
/* var : TextCollectorVisitor */;
2398 val
* var1
/* : String */;
2399 val
* var3
/* : String */;
2400 val
* var4
/* : String */;
2401 val
* var5
/* : Text */;
2403 /* <var_n:ANode> isa Token */
2404 cltype
= type_nitc__Token
.color
;
2405 idtype
= type_nitc__Token
.id
;
2406 if(cltype
>= var_n
->type
->table_size
) {
2409 var
= var_n
->type
->type_table
[cltype
] == idtype
;
2414 { /* Inline parser_work$TextCollectorVisitor$text (var_) on <var_:TextCollectorVisitor> */
2415 var3
= var_
->attrs
[COLOR_nitc__parser_work__TextCollectorVisitor___text
].val
; /* _text on <var_:TextCollectorVisitor> */
2416 if (unlikely(var3
== NULL
)) {
2417 if(catchStack
.cursor
>= 0){
2418 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
2420 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _text");
2421 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_work
, 281);
2429 var4
= nitc__lexer_work___Token___text(var_n
);
2432 var5
= ((val
*(*)(val
* self
, val
* p0
))(var1
->class->vft
[COLOR_core__abstract_text__Text___43d
]))(var1
, var4
); /* + on <var1:String>*/
2435 { /* Inline parser_work$TextCollectorVisitor$text= (var_,var5) on <var_:TextCollectorVisitor> */
2436 var_
->attrs
[COLOR_nitc__parser_work__TextCollectorVisitor___text
].val
= var5
; /* _text on <var_:TextCollectorVisitor> */
2443 ((void(*)(val
* self
, val
* p0
))(var_n
->class->vft
[COLOR_nitc__parser_nodes__ANode__visit_all
]))(var_n
, self
); /* visit_all on <var_n:ANode>*/
2447 /* method parser_work$ReduceAction$concat for (self: ReduceAction, Array[Object], Array[Object]): Array[Object] */
2448 val
* nitc__parser_work___nitc__parser_work__ReduceAction___concat(val
* self
, val
* p0
, val
* p1
) {
2449 val
* var
/* : Array[Object] */;
2450 val
* var_l1
/* var l1: Array[Object] */;
2451 val
* var_l2
/* var l2: Array[Object] */;
2452 short int var1
/* : Bool */;
2456 var1
= core___core__AbstractArrayRead___core__abstract_collection__Collection__is_empty(var_l1
);
2464 core___core__Sequence___append(var_l1
, var_l2
); /* Direct call abstract_collection$Sequence$append on <var_l1:Array[Object]>*/
2471 /* method parser_work$ReduceAction$goto= for (self: ReduceAction, Int) */
2472 void nitc__parser_work___nitc__parser_work__ReduceAction___goto_61d(val
* self
, long p0
) {
2473 self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
= p0
; /* _goto on <self:ReduceAction> */
2476 /* method parser_work$ReduceAction$init for (self: ReduceAction) */
2477 void nitc__parser_work___nitc__parser_work__ReduceAction___core__kernel__Object__init(val
* self
) {
2479 ((void(*)(val
* self
))(self
->class->vft
[COLOR_nitc__parser_work___nitc__parser_work__ReduceAction___core__kernel__Object__init
]))(self
); /* init on <self:ReduceAction>*/
2483 /* method parser_work$AExpr$as_id for (self: AExpr): nullable String */
2484 val
* nitc__parser_work___AExpr___as_id(val
* self
) {
2485 val
* var
/* : nullable String */;
2486 short int var1
/* : Bool */;
2489 val
* var2
/* : String */;
2490 short int var3
/* : Bool */;
2493 short int var6
/* : Bool */;
2494 val
* var7
/* : AExpr */;
2495 val
* var9
/* : AExpr */;
2496 short int var10
/* : Bool */;
2499 short int var13
/* : Bool */;
2500 val
* var14
/* : AExprs */;
2501 val
* var16
/* : AExprs */;
2502 val
* var17
/* : ANodes[AExpr] */;
2503 val
* var19
/* : ANodes[AExpr] */;
2504 short int var20
/* : Bool */;
2505 short int var21
/* : Bool */;
2506 val
* var22
/* : AQid */;
2507 val
* var24
/* : AQid */;
2508 val
* var25
/* : TId */;
2509 val
* var27
/* : TId */;
2510 val
* var28
/* : String */;
2511 /* <self:AExpr> isa AMethidExpr */
2512 cltype
= type_nitc__AMethidExpr
.color
;
2513 idtype
= type_nitc__AMethidExpr
.id
;
2514 if(cltype
>= self
->type
->table_size
) {
2517 var1
= self
->type
->type_table
[cltype
] == idtype
;
2521 var2
= nitc__parser_work___Prod___collect_text(self
);
2527 /* <self:AExpr> isa ACallExpr */
2528 cltype4
= type_nitc__ACallExpr
.color
;
2529 idtype5
= type_nitc__ACallExpr
.id
;
2530 if(cltype4
>= self
->type
->table_size
) {
2533 var3
= self
->type
->type_table
[cltype4
] == idtype5
;
2542 { /* Inline parser_nodes$ASendExpr$n_expr (self) on <self:AExpr(ACallExpr)> */
2543 var9
= self
->attrs
[COLOR_nitc__parser_nodes__ASendExpr___n_expr
].val
; /* _n_expr on <self:AExpr(ACallExpr)> */
2544 if (unlikely(var9
== NULL
)) {
2545 if(catchStack
.cursor
>= 0){
2546 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
2548 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
2549 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2103);
2556 /* <var7:AExpr> isa AImplicitSelfExpr */
2557 cltype11
= type_nitc__AImplicitSelfExpr
.color
;
2558 idtype12
= type_nitc__AImplicitSelfExpr
.id
;
2559 if(cltype11
>= var7
->type
->table_size
) {
2562 var10
= var7
->type
->type_table
[cltype11
] == idtype12
;
2571 { /* Inline parser_nodes$ACallFormExpr$n_args (self) on <self:AExpr(ACallExpr)> */
2572 var16
= self
->attrs
[COLOR_nitc__parser_nodes__ACallFormExpr___n_args
].val
; /* _n_args on <self:AExpr(ACallExpr)> */
2573 if (unlikely(var16
== NULL
)) {
2574 if(catchStack
.cursor
>= 0){
2575 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
2577 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args");
2578 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2380);
2582 RET_LABEL15
:(void)0;
2586 { /* Inline parser_nodes$AExprs$n_exprs (var14) on <var14:AExprs> */
2587 var19
= var14
->attrs
[COLOR_nitc__parser_nodes__AExprs___n_exprs
].val
; /* _n_exprs on <var14:AExprs> */
2588 if (unlikely(var19
== NULL
)) {
2589 if(catchStack
.cursor
>= 0){
2590 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
2592 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_exprs");
2593 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2790);
2597 RET_LABEL18
:(void)0;
2601 var20
= nitc___nitc__ANodes___core__abstract_collection__Collection__is_empty(var17
);
2610 { /* Inline parser_nodes$ACallFormExpr$n_qid (self) on <self:AExpr(ACallExpr)> */
2611 var24
= self
->attrs
[COLOR_nitc__parser_nodes__ACallFormExpr___n_qid
].val
; /* _n_qid on <self:AExpr(ACallExpr)> */
2612 if (unlikely(var24
== NULL
)) {
2613 if(catchStack
.cursor
>= 0){
2614 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
2616 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_qid");
2617 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2377);
2621 RET_LABEL23
:(void)0;
2625 { /* Inline parser_nodes$AQid$n_id (var22) on <var22:AQid> */
2626 var27
= var22
->attrs
[COLOR_nitc__parser_nodes__AQid___n_id
].val
; /* _n_id on <var22:AQid> */
2627 if (unlikely(var27
== NULL
)) {
2628 if(catchStack
.cursor
>= 0){
2629 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
2631 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id");
2632 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1721);
2636 RET_LABEL26
:(void)0;
2640 var28
= nitc__lexer_work___Token___text(var25
);