1 #include "nit__parser.sep.0.h"
2 /* method parser#ReduceAction0#action for (self: ReduceAction0, Parser) */
3 void nit__parser___nit__parser__ReduceAction0___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
4 val
* var_p
/* var p: Parser */;
6 val
* var_node_list
/* var node_list: nullable Object */;
7 val
* var1
/* : nullable Object */;
8 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9 val
* var2
/* : Array[Object] */;
10 val
* var_listnode3
/* var listnode3: Array[Object] */;
11 val
* var3
/* : Array[Object] */;
12 val
* var_listnode4
/* var listnode4: Array[Object] */;
13 val
* var4
/* : Array[Object] */;
14 val
* var_listnode6
/* var listnode6: Array[Object] */;
15 val
* var_pclassdefnode5
/* var pclassdefnode5: nullable Object */;
16 short int var5
/* : Bool */;
19 val
* var6
/* : null */;
20 short int var7
/* : Bool */;
21 short int var8
/* : Bool */;
22 val
* var_other
/* var other: nullable Object */;
23 short int var10
/* : Bool */;
24 short int var11
/* : Bool */;
25 val
* var12
/* : AModule */;
26 val
* var13
/* : null */;
27 val
* var_pmodulenode1
/* var pmodulenode1: nullable AModule */;
28 long var14
/* : Int */;
29 long var15
/* : Int */;
34 var1
= nit___nit__Parser___pop(var_p
);
36 var_nodearraylist1
= var1
;
37 var2
= NEW_standard__Array(&type_standard__Array__standard__Object
);
39 standard___standard__Array___standard__kernel__Object__init(var2
); /* Direct call array#Array#init on <var2:Array[Object]>*/
42 var3
= NEW_standard__Array(&type_standard__Array__standard__Object
);
44 standard___standard__Array___standard__kernel__Object__init(var3
); /* Direct call array#Array#init on <var3:Array[Object]>*/
47 var4
= NEW_standard__Array(&type_standard__Array__standard__Object
);
49 standard___standard__Array___standard__kernel__Object__init(var4
); /* Direct call array#Array#init on <var4:Array[Object]>*/
52 var_pclassdefnode5
= var_nodearraylist1
;
53 /* <var_pclassdefnode5:nullable Object> isa nullable AClassdef */
54 cltype
= type_nullable__nit__AClassdef
.color
;
55 idtype
= type_nullable__nit__AClassdef
.id
;
56 if(var_pclassdefnode5
== NULL
) {
59 if(cltype
>= var_pclassdefnode5
->type
->table_size
) {
62 var5
= var_pclassdefnode5
->type
->type_table
[cltype
] == idtype
;
65 if (unlikely(!var5
)) {
66 PRINT_ERROR("Runtime error: %s", "Assert failed");
67 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1043);
71 if (var_pclassdefnode5
== NULL
) {
72 var7
= 0; /* is null */
74 var7
= 1; /* arg is null and recv is not */
77 { /* Inline kernel#Object#!= (var_pclassdefnode5,var6) on <var_pclassdefnode5:nullable Object(nullable AClassdef)> */
80 var10
= ((short int (*)(val
* self
, val
* p0
))(var_pclassdefnode5
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_pclassdefnode5
, var_other
) /* == on <var_pclassdefnode5:nullable AClassdef(AClassdef)>*/;
91 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_listnode6
, var_pclassdefnode5
); /* Direct call array#Array#add on <var_listnode6:Array[Object]>*/
95 var12
= NEW_nit__AModule(&type_nit__AModule
);
98 nit__parser_prod___AModule___init_amodule(var12
, var13
, var_listnode3
, var_listnode4
, var_listnode6
); /* Direct call parser_prod#AModule#init_amodule on <var12:AModule>*/
100 var_pmodulenode1
= var12
;
101 var_node_list
= var_pmodulenode1
;
102 var14
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction0> */
104 var15
= nit___nit__Parser___go_to(var_p
, var14
);
107 nit___nit__Parser___push(var_p
, var15
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
111 /* method parser#ReduceAction1#action for (self: ReduceAction1, Parser) */
112 void nit__parser___nit__parser__ReduceAction1___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
113 val
* var_p
/* var p: Parser */;
114 val
* var
/* : null */;
115 val
* var_node_list
/* var node_list: nullable Object */;
116 val
* var1
/* : nullable Object */;
117 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
118 val
* var2
/* : nullable Object */;
119 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
120 val
* var3
/* : Array[Object] */;
121 val
* var_listnode3
/* var listnode3: Array[Object] */;
122 val
* var4
/* : Array[Object] */;
123 val
* var_listnode4
/* var listnode4: Array[Object] */;
124 val
* var5
/* : Array[Object] */;
125 val
* var_listnode6
/* var listnode6: Array[Object] */;
126 val
* var_pmoduledeclnode2
/* var pmoduledeclnode2: nullable Object */;
127 short int var6
/* : Bool */;
130 val
* var_pclassdefnode5
/* var pclassdefnode5: nullable Object */;
131 short int var7
/* : Bool */;
134 val
* var10
/* : null */;
135 short int var11
/* : Bool */;
136 short int var12
/* : Bool */;
137 val
* var_other
/* var other: nullable Object */;
138 short int var14
/* : Bool */;
139 short int var15
/* : Bool */;
140 val
* var16
/* : AModule */;
141 val
* var_pmodulenode1
/* var pmodulenode1: nullable AModule */;
142 long var17
/* : Int */;
143 long var18
/* : Int */;
148 var1
= nit___nit__Parser___pop(var_p
);
150 var_nodearraylist2
= var1
;
152 var2
= nit___nit__Parser___pop(var_p
);
154 var_nodearraylist1
= var2
;
155 var3
= NEW_standard__Array(&type_standard__Array__standard__Object
);
157 standard___standard__Array___standard__kernel__Object__init(var3
); /* Direct call array#Array#init on <var3:Array[Object]>*/
159 var_listnode3
= var3
;
160 var4
= NEW_standard__Array(&type_standard__Array__standard__Object
);
162 standard___standard__Array___standard__kernel__Object__init(var4
); /* Direct call array#Array#init on <var4:Array[Object]>*/
164 var_listnode4
= var4
;
165 var5
= NEW_standard__Array(&type_standard__Array__standard__Object
);
167 standard___standard__Array___standard__kernel__Object__init(var5
); /* Direct call array#Array#init on <var5:Array[Object]>*/
169 var_listnode6
= var5
;
170 var_pmoduledeclnode2
= var_nodearraylist1
;
171 /* <var_pmoduledeclnode2:nullable Object> isa nullable AModuledecl */
172 cltype
= type_nullable__nit__AModuledecl
.color
;
173 idtype
= type_nullable__nit__AModuledecl
.id
;
174 if(var_pmoduledeclnode2
== NULL
) {
177 if(cltype
>= var_pmoduledeclnode2
->type
->table_size
) {
180 var6
= var_pmoduledeclnode2
->type
->type_table
[cltype
] == idtype
;
183 if (unlikely(!var6
)) {
184 PRINT_ERROR("Runtime error: %s", "Assert failed");
185 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1068);
188 var_pclassdefnode5
= var_nodearraylist2
;
189 /* <var_pclassdefnode5:nullable Object> isa nullable AClassdef */
190 cltype8
= type_nullable__nit__AClassdef
.color
;
191 idtype9
= type_nullable__nit__AClassdef
.id
;
192 if(var_pclassdefnode5
== NULL
) {
195 if(cltype8
>= var_pclassdefnode5
->type
->table_size
) {
198 var7
= var_pclassdefnode5
->type
->type_table
[cltype8
] == idtype9
;
201 if (unlikely(!var7
)) {
202 PRINT_ERROR("Runtime error: %s", "Assert failed");
203 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1070);
207 if (var_pclassdefnode5
== NULL
) {
208 var11
= 0; /* is null */
210 var11
= 1; /* arg is null and recv is not */
213 { /* Inline kernel#Object#!= (var_pclassdefnode5,var10) on <var_pclassdefnode5:nullable Object(nullable AClassdef)> */
216 var14
= ((short int (*)(val
* self
, val
* p0
))(var_pclassdefnode5
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_pclassdefnode5
, var_other
) /* == on <var_pclassdefnode5:nullable AClassdef(AClassdef)>*/;
227 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_listnode6
, var_pclassdefnode5
); /* Direct call array#Array#add on <var_listnode6:Array[Object]>*/
231 var16
= NEW_nit__AModule(&type_nit__AModule
);
233 nit__parser_prod___AModule___init_amodule(var16
, var_pmoduledeclnode2
, var_listnode3
, var_listnode4
, var_listnode6
); /* Direct call parser_prod#AModule#init_amodule on <var16:AModule>*/
235 var_pmodulenode1
= var16
;
236 var_node_list
= var_pmodulenode1
;
237 var17
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction1> */
239 var18
= nit___nit__Parser___go_to(var_p
, var17
);
242 nit___nit__Parser___push(var_p
, var18
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
246 /* method parser#ReduceAction2#action for (self: ReduceAction2, Parser) */
247 void nit__parser___nit__parser__ReduceAction2___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
248 val
* var_p
/* var p: Parser */;
249 val
* var
/* : null */;
250 val
* var_node_list
/* var node_list: nullable Object */;
251 val
* var1
/* : nullable Object */;
252 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
253 val
* var2
/* : nullable Object */;
254 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
255 val
* var3
/* : Array[Object] */;
256 val
* var_listnode4
/* var listnode4: Array[Object] */;
257 val
* var4
/* : Array[Object] */;
258 val
* var_listnode5
/* var listnode5: Array[Object] */;
259 val
* var5
/* : Array[Object] */;
260 val
* var_listnode7
/* var listnode7: Array[Object] */;
261 val
* var_listnode3
/* var listnode3: nullable Object */;
262 short int var6
/* : Bool */;
265 val
* var7
/* : Array[Object] */;
266 val
* var_pclassdefnode6
/* var pclassdefnode6: nullable Object */;
267 short int var8
/* : Bool */;
270 val
* var11
/* : null */;
271 short int var12
/* : Bool */;
272 short int var13
/* : Bool */;
273 val
* var_other
/* var other: nullable Object */;
274 short int var15
/* : Bool */;
275 short int var16
/* : Bool */;
276 val
* var17
/* : AModule */;
277 val
* var18
/* : null */;
278 val
* var_pmodulenode1
/* var pmodulenode1: nullable AModule */;
279 long var19
/* : Int */;
280 long var20
/* : Int */;
285 var1
= nit___nit__Parser___pop(var_p
);
287 var_nodearraylist2
= var1
;
289 var2
= nit___nit__Parser___pop(var_p
);
291 var_nodearraylist1
= var2
;
292 var3
= NEW_standard__Array(&type_standard__Array__standard__Object
);
294 standard___standard__Array___standard__kernel__Object__init(var3
); /* Direct call array#Array#init on <var3:Array[Object]>*/
296 var_listnode4
= var3
;
297 var4
= NEW_standard__Array(&type_standard__Array__standard__Object
);
299 standard___standard__Array___standard__kernel__Object__init(var4
); /* Direct call array#Array#init on <var4:Array[Object]>*/
301 var_listnode5
= var4
;
302 var5
= NEW_standard__Array(&type_standard__Array__standard__Object
);
304 standard___standard__Array___standard__kernel__Object__init(var5
); /* Direct call array#Array#init on <var5:Array[Object]>*/
306 var_listnode7
= var5
;
307 var_listnode3
= var_nodearraylist1
;
308 /* <var_listnode3:nullable Object> isa Array[Object] */
309 cltype
= type_standard__Array__standard__Object
.color
;
310 idtype
= type_standard__Array__standard__Object
.id
;
311 if(var_listnode3
== NULL
) {
314 if(cltype
>= var_listnode3
->type
->table_size
) {
317 var6
= var_listnode3
->type
->type_table
[cltype
] == idtype
;
320 if (unlikely(!var6
)) {
321 PRINT_ERROR("Runtime error: %s", "Assert failed");
322 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1095);
326 var7
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode4
, var_listnode3
);
328 var_listnode4
= var7
;
329 var_pclassdefnode6
= var_nodearraylist2
;
330 /* <var_pclassdefnode6:nullable Object> isa nullable AClassdef */
331 cltype9
= type_nullable__nit__AClassdef
.color
;
332 idtype10
= type_nullable__nit__AClassdef
.id
;
333 if(var_pclassdefnode6
== NULL
) {
336 if(cltype9
>= var_pclassdefnode6
->type
->table_size
) {
339 var8
= var_pclassdefnode6
->type
->type_table
[cltype9
] == idtype10
;
342 if (unlikely(!var8
)) {
343 PRINT_ERROR("Runtime error: %s", "Assert failed");
344 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1098);
348 if (var_pclassdefnode6
== NULL
) {
349 var12
= 0; /* is null */
351 var12
= 1; /* arg is null and recv is not */
354 { /* Inline kernel#Object#!= (var_pclassdefnode6,var11) on <var_pclassdefnode6:nullable Object(nullable AClassdef)> */
357 var15
= ((short int (*)(val
* self
, val
* p0
))(var_pclassdefnode6
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_pclassdefnode6
, var_other
) /* == on <var_pclassdefnode6:nullable AClassdef(AClassdef)>*/;
368 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_listnode7
, var_pclassdefnode6
); /* Direct call array#Array#add on <var_listnode7:Array[Object]>*/
372 var17
= NEW_nit__AModule(&type_nit__AModule
);
375 nit__parser_prod___AModule___init_amodule(var17
, var18
, var_listnode4
, var_listnode5
, var_listnode7
); /* Direct call parser_prod#AModule#init_amodule on <var17:AModule>*/
377 var_pmodulenode1
= var17
;
378 var_node_list
= var_pmodulenode1
;
379 var19
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction2> */
381 var20
= nit___nit__Parser___go_to(var_p
, var19
);
384 nit___nit__Parser___push(var_p
, var20
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
388 /* method parser#ReduceAction3#action for (self: ReduceAction3, Parser) */
389 void nit__parser___nit__parser__ReduceAction3___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
390 val
* var_p
/* var p: Parser */;
391 val
* var
/* : null */;
392 val
* var_node_list
/* var node_list: nullable Object */;
393 val
* var1
/* : nullable Object */;
394 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
395 val
* var2
/* : nullable Object */;
396 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
397 val
* var3
/* : nullable Object */;
398 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
399 val
* var4
/* : Array[Object] */;
400 val
* var_listnode4
/* var listnode4: Array[Object] */;
401 val
* var5
/* : Array[Object] */;
402 val
* var_listnode5
/* var listnode5: Array[Object] */;
403 val
* var6
/* : Array[Object] */;
404 val
* var_listnode7
/* var listnode7: Array[Object] */;
405 val
* var_pmoduledeclnode2
/* var pmoduledeclnode2: nullable Object */;
406 short int var7
/* : Bool */;
409 val
* var_listnode3
/* var listnode3: nullable Object */;
410 short int var8
/* : Bool */;
413 val
* var11
/* : Array[Object] */;
414 val
* var_pclassdefnode6
/* var pclassdefnode6: nullable Object */;
415 short int var12
/* : Bool */;
418 val
* var15
/* : null */;
419 short int var16
/* : Bool */;
420 short int var17
/* : Bool */;
421 val
* var_other
/* var other: nullable Object */;
422 short int var19
/* : Bool */;
423 short int var20
/* : Bool */;
424 val
* var21
/* : AModule */;
425 val
* var_pmodulenode1
/* var pmodulenode1: nullable AModule */;
426 long var22
/* : Int */;
427 long var23
/* : Int */;
432 var1
= nit___nit__Parser___pop(var_p
);
434 var_nodearraylist3
= var1
;
436 var2
= nit___nit__Parser___pop(var_p
);
438 var_nodearraylist2
= var2
;
440 var3
= nit___nit__Parser___pop(var_p
);
442 var_nodearraylist1
= var3
;
443 var4
= NEW_standard__Array(&type_standard__Array__standard__Object
);
445 standard___standard__Array___standard__kernel__Object__init(var4
); /* Direct call array#Array#init on <var4:Array[Object]>*/
447 var_listnode4
= var4
;
448 var5
= NEW_standard__Array(&type_standard__Array__standard__Object
);
450 standard___standard__Array___standard__kernel__Object__init(var5
); /* Direct call array#Array#init on <var5:Array[Object]>*/
452 var_listnode5
= var5
;
453 var6
= NEW_standard__Array(&type_standard__Array__standard__Object
);
455 standard___standard__Array___standard__kernel__Object__init(var6
); /* Direct call array#Array#init on <var6:Array[Object]>*/
457 var_listnode7
= var6
;
458 var_pmoduledeclnode2
= var_nodearraylist1
;
459 /* <var_pmoduledeclnode2:nullable Object> isa nullable AModuledecl */
460 cltype
= type_nullable__nit__AModuledecl
.color
;
461 idtype
= type_nullable__nit__AModuledecl
.id
;
462 if(var_pmoduledeclnode2
== NULL
) {
465 if(cltype
>= var_pmoduledeclnode2
->type
->table_size
) {
468 var7
= var_pmoduledeclnode2
->type
->type_table
[cltype
] == idtype
;
471 if (unlikely(!var7
)) {
472 PRINT_ERROR("Runtime error: %s", "Assert failed");
473 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1124);
476 var_listnode3
= var_nodearraylist2
;
477 /* <var_listnode3:nullable Object> isa Array[Object] */
478 cltype9
= type_standard__Array__standard__Object
.color
;
479 idtype10
= type_standard__Array__standard__Object
.id
;
480 if(var_listnode3
== NULL
) {
483 if(cltype9
>= var_listnode3
->type
->table_size
) {
486 var8
= var_listnode3
->type
->type_table
[cltype9
] == idtype10
;
489 if (unlikely(!var8
)) {
490 PRINT_ERROR("Runtime error: %s", "Assert failed");
491 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1126);
495 var11
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode4
, var_listnode3
);
497 var_listnode4
= var11
;
498 var_pclassdefnode6
= var_nodearraylist3
;
499 /* <var_pclassdefnode6:nullable Object> isa nullable AClassdef */
500 cltype13
= type_nullable__nit__AClassdef
.color
;
501 idtype14
= type_nullable__nit__AClassdef
.id
;
502 if(var_pclassdefnode6
== NULL
) {
505 if(cltype13
>= var_pclassdefnode6
->type
->table_size
) {
508 var12
= var_pclassdefnode6
->type
->type_table
[cltype13
] == idtype14
;
511 if (unlikely(!var12
)) {
512 PRINT_ERROR("Runtime error: %s", "Assert failed");
513 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1129);
517 if (var_pclassdefnode6
== NULL
) {
518 var16
= 0; /* is null */
520 var16
= 1; /* arg is null and recv is not */
523 { /* Inline kernel#Object#!= (var_pclassdefnode6,var15) on <var_pclassdefnode6:nullable Object(nullable AClassdef)> */
526 var19
= ((short int (*)(val
* self
, val
* p0
))(var_pclassdefnode6
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_pclassdefnode6
, var_other
) /* == on <var_pclassdefnode6:nullable AClassdef(AClassdef)>*/;
537 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_listnode7
, var_pclassdefnode6
); /* Direct call array#Array#add on <var_listnode7:Array[Object]>*/
541 var21
= NEW_nit__AModule(&type_nit__AModule
);
543 nit__parser_prod___AModule___init_amodule(var21
, var_pmoduledeclnode2
, var_listnode4
, var_listnode5
, var_listnode7
); /* Direct call parser_prod#AModule#init_amodule on <var21:AModule>*/
545 var_pmodulenode1
= var21
;
546 var_node_list
= var_pmodulenode1
;
547 var22
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction3> */
549 var23
= nit___nit__Parser___go_to(var_p
, var22
);
552 nit___nit__Parser___push(var_p
, var23
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
556 /* method parser#ReduceAction4#action for (self: ReduceAction4, Parser) */
557 void nit__parser___nit__parser__ReduceAction4___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
558 val
* var_p
/* var p: Parser */;
559 val
* var
/* : null */;
560 val
* var_node_list
/* var node_list: nullable Object */;
561 val
* var1
/* : nullable Object */;
562 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
563 val
* var2
/* : nullable Object */;
564 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
565 val
* var3
/* : Array[Object] */;
566 val
* var_listnode3
/* var listnode3: Array[Object] */;
567 val
* var4
/* : Array[Object] */;
568 val
* var_listnode5
/* var listnode5: Array[Object] */;
569 val
* var5
/* : Array[Object] */;
570 val
* var_listnode7
/* var listnode7: Array[Object] */;
571 val
* var_listnode4
/* var listnode4: nullable Object */;
572 short int var6
/* : Bool */;
575 val
* var7
/* : Array[Object] */;
576 val
* var_pclassdefnode6
/* var pclassdefnode6: nullable Object */;
577 short int var8
/* : Bool */;
580 val
* var11
/* : null */;
581 short int var12
/* : Bool */;
582 short int var13
/* : Bool */;
583 val
* var_other
/* var other: nullable Object */;
584 short int var15
/* : Bool */;
585 short int var16
/* : Bool */;
586 val
* var17
/* : AModule */;
587 val
* var18
/* : null */;
588 val
* var_pmodulenode1
/* var pmodulenode1: nullable AModule */;
589 long var19
/* : Int */;
590 long var20
/* : Int */;
595 var1
= nit___nit__Parser___pop(var_p
);
597 var_nodearraylist2
= var1
;
599 var2
= nit___nit__Parser___pop(var_p
);
601 var_nodearraylist1
= var2
;
602 var3
= NEW_standard__Array(&type_standard__Array__standard__Object
);
604 standard___standard__Array___standard__kernel__Object__init(var3
); /* Direct call array#Array#init on <var3:Array[Object]>*/
606 var_listnode3
= var3
;
607 var4
= NEW_standard__Array(&type_standard__Array__standard__Object
);
609 standard___standard__Array___standard__kernel__Object__init(var4
); /* Direct call array#Array#init on <var4:Array[Object]>*/
611 var_listnode5
= var4
;
612 var5
= NEW_standard__Array(&type_standard__Array__standard__Object
);
614 standard___standard__Array___standard__kernel__Object__init(var5
); /* Direct call array#Array#init on <var5:Array[Object]>*/
616 var_listnode7
= var5
;
617 var_listnode4
= var_nodearraylist1
;
618 /* <var_listnode4:nullable Object> isa Array[Object] */
619 cltype
= type_standard__Array__standard__Object
.color
;
620 idtype
= type_standard__Array__standard__Object
.id
;
621 if(var_listnode4
== NULL
) {
624 if(cltype
>= var_listnode4
->type
->table_size
) {
627 var6
= var_listnode4
->type
->type_table
[cltype
] == idtype
;
630 if (unlikely(!var6
)) {
631 PRINT_ERROR("Runtime error: %s", "Assert failed");
632 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1154);
636 var7
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode5
, var_listnode4
);
638 var_listnode5
= var7
;
639 var_pclassdefnode6
= var_nodearraylist2
;
640 /* <var_pclassdefnode6:nullable Object> isa nullable AClassdef */
641 cltype9
= type_nullable__nit__AClassdef
.color
;
642 idtype10
= type_nullable__nit__AClassdef
.id
;
643 if(var_pclassdefnode6
== NULL
) {
646 if(cltype9
>= var_pclassdefnode6
->type
->table_size
) {
649 var8
= var_pclassdefnode6
->type
->type_table
[cltype9
] == idtype10
;
652 if (unlikely(!var8
)) {
653 PRINT_ERROR("Runtime error: %s", "Assert failed");
654 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1157);
658 if (var_pclassdefnode6
== NULL
) {
659 var12
= 0; /* is null */
661 var12
= 1; /* arg is null and recv is not */
664 { /* Inline kernel#Object#!= (var_pclassdefnode6,var11) on <var_pclassdefnode6:nullable Object(nullable AClassdef)> */
667 var15
= ((short int (*)(val
* self
, val
* p0
))(var_pclassdefnode6
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_pclassdefnode6
, var_other
) /* == on <var_pclassdefnode6:nullable AClassdef(AClassdef)>*/;
678 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_listnode7
, var_pclassdefnode6
); /* Direct call array#Array#add on <var_listnode7:Array[Object]>*/
682 var17
= NEW_nit__AModule(&type_nit__AModule
);
685 nit__parser_prod___AModule___init_amodule(var17
, var18
, var_listnode3
, var_listnode5
, var_listnode7
); /* Direct call parser_prod#AModule#init_amodule on <var17:AModule>*/
687 var_pmodulenode1
= var17
;
688 var_node_list
= var_pmodulenode1
;
689 var19
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction4> */
691 var20
= nit___nit__Parser___go_to(var_p
, var19
);
694 nit___nit__Parser___push(var_p
, var20
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
698 /* method parser#ReduceAction5#action for (self: ReduceAction5, Parser) */
699 void nit__parser___nit__parser__ReduceAction5___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
700 val
* var_p
/* var p: Parser */;
701 val
* var
/* : null */;
702 val
* var_node_list
/* var node_list: nullable Object */;
703 val
* var1
/* : nullable Object */;
704 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
705 val
* var2
/* : nullable Object */;
706 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
707 val
* var3
/* : nullable Object */;
708 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
709 val
* var4
/* : Array[Object] */;
710 val
* var_listnode3
/* var listnode3: Array[Object] */;
711 val
* var5
/* : Array[Object] */;
712 val
* var_listnode5
/* var listnode5: Array[Object] */;
713 val
* var6
/* : Array[Object] */;
714 val
* var_listnode7
/* var listnode7: Array[Object] */;
715 val
* var_pmoduledeclnode2
/* var pmoduledeclnode2: nullable Object */;
716 short int var7
/* : Bool */;
719 val
* var_listnode4
/* var listnode4: nullable Object */;
720 short int var8
/* : Bool */;
723 val
* var11
/* : Array[Object] */;
724 val
* var_pclassdefnode6
/* var pclassdefnode6: nullable Object */;
725 short int var12
/* : Bool */;
728 val
* var15
/* : null */;
729 short int var16
/* : Bool */;
730 short int var17
/* : Bool */;
731 val
* var_other
/* var other: nullable Object */;
732 short int var19
/* : Bool */;
733 short int var20
/* : Bool */;
734 val
* var21
/* : AModule */;
735 val
* var_pmodulenode1
/* var pmodulenode1: nullable AModule */;
736 long var22
/* : Int */;
737 long var23
/* : Int */;
742 var1
= nit___nit__Parser___pop(var_p
);
744 var_nodearraylist3
= var1
;
746 var2
= nit___nit__Parser___pop(var_p
);
748 var_nodearraylist2
= var2
;
750 var3
= nit___nit__Parser___pop(var_p
);
752 var_nodearraylist1
= var3
;
753 var4
= NEW_standard__Array(&type_standard__Array__standard__Object
);
755 standard___standard__Array___standard__kernel__Object__init(var4
); /* Direct call array#Array#init on <var4:Array[Object]>*/
757 var_listnode3
= var4
;
758 var5
= NEW_standard__Array(&type_standard__Array__standard__Object
);
760 standard___standard__Array___standard__kernel__Object__init(var5
); /* Direct call array#Array#init on <var5:Array[Object]>*/
762 var_listnode5
= var5
;
763 var6
= NEW_standard__Array(&type_standard__Array__standard__Object
);
765 standard___standard__Array___standard__kernel__Object__init(var6
); /* Direct call array#Array#init on <var6:Array[Object]>*/
767 var_listnode7
= var6
;
768 var_pmoduledeclnode2
= var_nodearraylist1
;
769 /* <var_pmoduledeclnode2:nullable Object> isa nullable AModuledecl */
770 cltype
= type_nullable__nit__AModuledecl
.color
;
771 idtype
= type_nullable__nit__AModuledecl
.id
;
772 if(var_pmoduledeclnode2
== NULL
) {
775 if(cltype
>= var_pmoduledeclnode2
->type
->table_size
) {
778 var7
= var_pmoduledeclnode2
->type
->type_table
[cltype
] == idtype
;
781 if (unlikely(!var7
)) {
782 PRINT_ERROR("Runtime error: %s", "Assert failed");
783 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1183);
786 var_listnode4
= var_nodearraylist2
;
787 /* <var_listnode4:nullable Object> isa Array[Object] */
788 cltype9
= type_standard__Array__standard__Object
.color
;
789 idtype10
= type_standard__Array__standard__Object
.id
;
790 if(var_listnode4
== NULL
) {
793 if(cltype9
>= var_listnode4
->type
->table_size
) {
796 var8
= var_listnode4
->type
->type_table
[cltype9
] == idtype10
;
799 if (unlikely(!var8
)) {
800 PRINT_ERROR("Runtime error: %s", "Assert failed");
801 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1185);
805 var11
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode5
, var_listnode4
);
807 var_listnode5
= var11
;
808 var_pclassdefnode6
= var_nodearraylist3
;
809 /* <var_pclassdefnode6:nullable Object> isa nullable AClassdef */
810 cltype13
= type_nullable__nit__AClassdef
.color
;
811 idtype14
= type_nullable__nit__AClassdef
.id
;
812 if(var_pclassdefnode6
== NULL
) {
815 if(cltype13
>= var_pclassdefnode6
->type
->table_size
) {
818 var12
= var_pclassdefnode6
->type
->type_table
[cltype13
] == idtype14
;
821 if (unlikely(!var12
)) {
822 PRINT_ERROR("Runtime error: %s", "Assert failed");
823 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1188);
827 if (var_pclassdefnode6
== NULL
) {
828 var16
= 0; /* is null */
830 var16
= 1; /* arg is null and recv is not */
833 { /* Inline kernel#Object#!= (var_pclassdefnode6,var15) on <var_pclassdefnode6:nullable Object(nullable AClassdef)> */
836 var19
= ((short int (*)(val
* self
, val
* p0
))(var_pclassdefnode6
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_pclassdefnode6
, var_other
) /* == on <var_pclassdefnode6:nullable AClassdef(AClassdef)>*/;
847 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_listnode7
, var_pclassdefnode6
); /* Direct call array#Array#add on <var_listnode7:Array[Object]>*/
851 var21
= NEW_nit__AModule(&type_nit__AModule
);
853 nit__parser_prod___AModule___init_amodule(var21
, var_pmoduledeclnode2
, var_listnode3
, var_listnode5
, var_listnode7
); /* Direct call parser_prod#AModule#init_amodule on <var21:AModule>*/
855 var_pmodulenode1
= var21
;
856 var_node_list
= var_pmodulenode1
;
857 var22
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction5> */
859 var23
= nit___nit__Parser___go_to(var_p
, var22
);
862 nit___nit__Parser___push(var_p
, var23
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
866 /* method parser#ReduceAction6#action for (self: ReduceAction6, Parser) */
867 void nit__parser___nit__parser__ReduceAction6___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
868 val
* var_p
/* var p: Parser */;
869 val
* var
/* : null */;
870 val
* var_node_list
/* var node_list: nullable Object */;
871 val
* var1
/* : nullable Object */;
872 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
873 val
* var2
/* : nullable Object */;
874 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
875 val
* var3
/* : nullable Object */;
876 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
877 val
* var4
/* : Array[Object] */;
878 val
* var_listnode4
/* var listnode4: Array[Object] */;
879 val
* var5
/* : Array[Object] */;
880 val
* var_listnode6
/* var listnode6: Array[Object] */;
881 val
* var6
/* : Array[Object] */;
882 val
* var_listnode8
/* var listnode8: Array[Object] */;
883 val
* var_listnode3
/* var listnode3: nullable Object */;
884 short int var7
/* : Bool */;
887 val
* var8
/* : Array[Object] */;
888 val
* var_listnode5
/* var listnode5: nullable Object */;
889 short int var9
/* : Bool */;
892 val
* var12
/* : Array[Object] */;
893 val
* var_pclassdefnode7
/* var pclassdefnode7: nullable Object */;
894 short int var13
/* : Bool */;
897 val
* var16
/* : null */;
898 short int var17
/* : Bool */;
899 short int var18
/* : Bool */;
900 val
* var_other
/* var other: nullable Object */;
901 short int var20
/* : Bool */;
902 short int var21
/* : Bool */;
903 val
* var22
/* : AModule */;
904 val
* var23
/* : null */;
905 val
* var_pmodulenode1
/* var pmodulenode1: nullable AModule */;
906 long var24
/* : Int */;
907 long var25
/* : Int */;
912 var1
= nit___nit__Parser___pop(var_p
);
914 var_nodearraylist3
= var1
;
916 var2
= nit___nit__Parser___pop(var_p
);
918 var_nodearraylist2
= var2
;
920 var3
= nit___nit__Parser___pop(var_p
);
922 var_nodearraylist1
= var3
;
923 var4
= NEW_standard__Array(&type_standard__Array__standard__Object
);
925 standard___standard__Array___standard__kernel__Object__init(var4
); /* Direct call array#Array#init on <var4:Array[Object]>*/
927 var_listnode4
= var4
;
928 var5
= NEW_standard__Array(&type_standard__Array__standard__Object
);
930 standard___standard__Array___standard__kernel__Object__init(var5
); /* Direct call array#Array#init on <var5:Array[Object]>*/
932 var_listnode6
= var5
;
933 var6
= NEW_standard__Array(&type_standard__Array__standard__Object
);
935 standard___standard__Array___standard__kernel__Object__init(var6
); /* Direct call array#Array#init on <var6:Array[Object]>*/
937 var_listnode8
= var6
;
938 var_listnode3
= var_nodearraylist1
;
939 /* <var_listnode3:nullable Object> isa Array[Object] */
940 cltype
= type_standard__Array__standard__Object
.color
;
941 idtype
= type_standard__Array__standard__Object
.id
;
942 if(var_listnode3
== NULL
) {
945 if(cltype
>= var_listnode3
->type
->table_size
) {
948 var7
= var_listnode3
->type
->type_table
[cltype
] == idtype
;
951 if (unlikely(!var7
)) {
952 PRINT_ERROR("Runtime error: %s", "Assert failed");
953 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1214);
957 var8
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode4
, var_listnode3
);
959 var_listnode4
= var8
;
960 var_listnode5
= var_nodearraylist2
;
961 /* <var_listnode5:nullable Object> isa Array[Object] */
962 cltype10
= type_standard__Array__standard__Object
.color
;
963 idtype11
= type_standard__Array__standard__Object
.id
;
964 if(var_listnode5
== NULL
) {
967 if(cltype10
>= var_listnode5
->type
->table_size
) {
970 var9
= var_listnode5
->type
->type_table
[cltype10
] == idtype11
;
973 if (unlikely(!var9
)) {
974 PRINT_ERROR("Runtime error: %s", "Assert failed");
975 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1217);
979 var12
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode6
, var_listnode5
);
981 var_listnode6
= var12
;
982 var_pclassdefnode7
= var_nodearraylist3
;
983 /* <var_pclassdefnode7:nullable Object> isa nullable AClassdef */
984 cltype14
= type_nullable__nit__AClassdef
.color
;
985 idtype15
= type_nullable__nit__AClassdef
.id
;
986 if(var_pclassdefnode7
== NULL
) {
989 if(cltype14
>= var_pclassdefnode7
->type
->table_size
) {
992 var13
= var_pclassdefnode7
->type
->type_table
[cltype14
] == idtype15
;
995 if (unlikely(!var13
)) {
996 PRINT_ERROR("Runtime error: %s", "Assert failed");
997 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1220);
1001 if (var_pclassdefnode7
== NULL
) {
1002 var17
= 0; /* is null */
1004 var17
= 1; /* arg is null and recv is not */
1007 { /* Inline kernel#Object#!= (var_pclassdefnode7,var16) on <var_pclassdefnode7:nullable Object(nullable AClassdef)> */
1010 var20
= ((short int (*)(val
* self
, val
* p0
))(var_pclassdefnode7
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_pclassdefnode7
, var_other
) /* == on <var_pclassdefnode7:nullable AClassdef(AClassdef)>*/;
1015 RET_LABEL19
:(void)0;
1021 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_listnode8
, var_pclassdefnode7
); /* Direct call array#Array#add on <var_listnode8:Array[Object]>*/
1025 var22
= NEW_nit__AModule(&type_nit__AModule
);
1028 nit__parser_prod___AModule___init_amodule(var22
, var23
, var_listnode4
, var_listnode6
, var_listnode8
); /* Direct call parser_prod#AModule#init_amodule on <var22:AModule>*/
1030 var_pmodulenode1
= var22
;
1031 var_node_list
= var_pmodulenode1
;
1032 var24
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction6> */
1034 var25
= nit___nit__Parser___go_to(var_p
, var24
);
1037 nit___nit__Parser___push(var_p
, var25
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
1041 /* method parser#ReduceAction7#action for (self: ReduceAction7, Parser) */
1042 void nit__parser___nit__parser__ReduceAction7___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
1043 val
* var_p
/* var p: Parser */;
1044 val
* var
/* : null */;
1045 val
* var_node_list
/* var node_list: nullable Object */;
1046 val
* var1
/* : nullable Object */;
1047 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
1048 val
* var2
/* : nullable Object */;
1049 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
1050 val
* var3
/* : nullable Object */;
1051 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1052 val
* var4
/* : nullable Object */;
1053 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1054 val
* var5
/* : Array[Object] */;
1055 val
* var_listnode4
/* var listnode4: Array[Object] */;
1056 val
* var6
/* : Array[Object] */;
1057 val
* var_listnode6
/* var listnode6: Array[Object] */;
1058 val
* var7
/* : Array[Object] */;
1059 val
* var_listnode8
/* var listnode8: Array[Object] */;
1060 val
* var_pmoduledeclnode2
/* var pmoduledeclnode2: nullable Object */;
1061 short int var8
/* : Bool */;
1064 val
* var_listnode3
/* var listnode3: nullable Object */;
1065 short int var9
/* : Bool */;
1068 val
* var12
/* : Array[Object] */;
1069 val
* var_listnode5
/* var listnode5: nullable Object */;
1070 short int var13
/* : Bool */;
1073 val
* var16
/* : Array[Object] */;
1074 val
* var_pclassdefnode7
/* var pclassdefnode7: nullable Object */;
1075 short int var17
/* : Bool */;
1078 val
* var20
/* : null */;
1079 short int var21
/* : Bool */;
1080 short int var22
/* : Bool */;
1081 val
* var_other
/* var other: nullable Object */;
1082 short int var24
/* : Bool */;
1083 short int var25
/* : Bool */;
1084 val
* var26
/* : AModule */;
1085 val
* var_pmodulenode1
/* var pmodulenode1: nullable AModule */;
1086 long var27
/* : Int */;
1087 long var28
/* : Int */;
1090 var_node_list
= var
;
1092 var1
= nit___nit__Parser___pop(var_p
);
1094 var_nodearraylist4
= var1
;
1096 var2
= nit___nit__Parser___pop(var_p
);
1098 var_nodearraylist3
= var2
;
1100 var3
= nit___nit__Parser___pop(var_p
);
1102 var_nodearraylist2
= var3
;
1104 var4
= nit___nit__Parser___pop(var_p
);
1106 var_nodearraylist1
= var4
;
1107 var5
= NEW_standard__Array(&type_standard__Array__standard__Object
);
1109 standard___standard__Array___standard__kernel__Object__init(var5
); /* Direct call array#Array#init on <var5:Array[Object]>*/
1111 var_listnode4
= var5
;
1112 var6
= NEW_standard__Array(&type_standard__Array__standard__Object
);
1114 standard___standard__Array___standard__kernel__Object__init(var6
); /* Direct call array#Array#init on <var6:Array[Object]>*/
1116 var_listnode6
= var6
;
1117 var7
= NEW_standard__Array(&type_standard__Array__standard__Object
);
1119 standard___standard__Array___standard__kernel__Object__init(var7
); /* Direct call array#Array#init on <var7:Array[Object]>*/
1121 var_listnode8
= var7
;
1122 var_pmoduledeclnode2
= var_nodearraylist1
;
1123 /* <var_pmoduledeclnode2:nullable Object> isa nullable AModuledecl */
1124 cltype
= type_nullable__nit__AModuledecl
.color
;
1125 idtype
= type_nullable__nit__AModuledecl
.id
;
1126 if(var_pmoduledeclnode2
== NULL
) {
1129 if(cltype
>= var_pmoduledeclnode2
->type
->table_size
) {
1132 var8
= var_pmoduledeclnode2
->type
->type_table
[cltype
] == idtype
;
1135 if (unlikely(!var8
)) {
1136 PRINT_ERROR("Runtime error: %s", "Assert failed");
1137 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1247);
1140 var_listnode3
= var_nodearraylist2
;
1141 /* <var_listnode3:nullable Object> isa Array[Object] */
1142 cltype10
= type_standard__Array__standard__Object
.color
;
1143 idtype11
= type_standard__Array__standard__Object
.id
;
1144 if(var_listnode3
== NULL
) {
1147 if(cltype10
>= var_listnode3
->type
->table_size
) {
1150 var9
= var_listnode3
->type
->type_table
[cltype10
] == idtype11
;
1153 if (unlikely(!var9
)) {
1154 PRINT_ERROR("Runtime error: %s", "Assert failed");
1155 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1249);
1159 var12
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode4
, var_listnode3
);
1161 var_listnode4
= var12
;
1162 var_listnode5
= var_nodearraylist3
;
1163 /* <var_listnode5:nullable Object> isa Array[Object] */
1164 cltype14
= type_standard__Array__standard__Object
.color
;
1165 idtype15
= type_standard__Array__standard__Object
.id
;
1166 if(var_listnode5
== NULL
) {
1169 if(cltype14
>= var_listnode5
->type
->table_size
) {
1172 var13
= var_listnode5
->type
->type_table
[cltype14
] == idtype15
;
1175 if (unlikely(!var13
)) {
1176 PRINT_ERROR("Runtime error: %s", "Assert failed");
1177 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1252);
1181 var16
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode6
, var_listnode5
);
1183 var_listnode6
= var16
;
1184 var_pclassdefnode7
= var_nodearraylist4
;
1185 /* <var_pclassdefnode7:nullable Object> isa nullable AClassdef */
1186 cltype18
= type_nullable__nit__AClassdef
.color
;
1187 idtype19
= type_nullable__nit__AClassdef
.id
;
1188 if(var_pclassdefnode7
== NULL
) {
1191 if(cltype18
>= var_pclassdefnode7
->type
->table_size
) {
1194 var17
= var_pclassdefnode7
->type
->type_table
[cltype18
] == idtype19
;
1197 if (unlikely(!var17
)) {
1198 PRINT_ERROR("Runtime error: %s", "Assert failed");
1199 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1255);
1203 if (var_pclassdefnode7
== NULL
) {
1204 var21
= 0; /* is null */
1206 var21
= 1; /* arg is null and recv is not */
1209 { /* Inline kernel#Object#!= (var_pclassdefnode7,var20) on <var_pclassdefnode7:nullable Object(nullable AClassdef)> */
1212 var24
= ((short int (*)(val
* self
, val
* p0
))(var_pclassdefnode7
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_pclassdefnode7
, var_other
) /* == on <var_pclassdefnode7:nullable AClassdef(AClassdef)>*/;
1217 RET_LABEL23
:(void)0;
1223 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_listnode8
, var_pclassdefnode7
); /* Direct call array#Array#add on <var_listnode8:Array[Object]>*/
1227 var26
= NEW_nit__AModule(&type_nit__AModule
);
1229 nit__parser_prod___AModule___init_amodule(var26
, var_pmoduledeclnode2
, var_listnode4
, var_listnode6
, var_listnode8
); /* Direct call parser_prod#AModule#init_amodule on <var26:AModule>*/
1231 var_pmodulenode1
= var26
;
1232 var_node_list
= var_pmodulenode1
;
1233 var27
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction7> */
1235 var28
= nit___nit__Parser___go_to(var_p
, var27
);
1238 nit___nit__Parser___push(var_p
, var28
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
1242 /* method parser#ReduceAction8#action for (self: ReduceAction8, Parser) */
1243 void nit__parser___nit__parser__ReduceAction8___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
1244 val
* var_p
/* var p: Parser */;
1245 val
* var
/* : null */;
1246 val
* var_node_list
/* var node_list: nullable Object */;
1247 val
* var1
/* : nullable Object */;
1248 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1249 val
* var2
/* : nullable Object */;
1250 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1251 val
* var3
/* : Array[Object] */;
1252 val
* var_listnode3
/* var listnode3: Array[Object] */;
1253 val
* var4
/* : Array[Object] */;
1254 val
* var_listnode4
/* var listnode4: Array[Object] */;
1255 val
* var5
/* : Array[Object] */;
1256 val
* var_listnode7
/* var listnode7: Array[Object] */;
1257 val
* var_listnode5
/* var listnode5: nullable Object */;
1258 short int var6
/* : Bool */;
1261 val
* var_pclassdefnode6
/* var pclassdefnode6: nullable Object */;
1262 short int var7
/* : Bool */;
1265 val
* var10
/* : Array[Object] */;
1266 val
* var11
/* : null */;
1267 short int var12
/* : Bool */;
1268 short int var13
/* : Bool */;
1269 val
* var_other
/* var other: nullable Object */;
1270 short int var15
/* : Bool */;
1271 short int var16
/* : Bool */;
1272 val
* var17
/* : AModule */;
1273 val
* var18
/* : null */;
1274 val
* var_pmodulenode1
/* var pmodulenode1: nullable AModule */;
1275 long var19
/* : Int */;
1276 long var20
/* : Int */;
1279 var_node_list
= var
;
1281 var1
= nit___nit__Parser___pop(var_p
);
1283 var_nodearraylist2
= var1
;
1285 var2
= nit___nit__Parser___pop(var_p
);
1287 var_nodearraylist1
= var2
;
1288 var3
= NEW_standard__Array(&type_standard__Array__standard__Object
);
1290 standard___standard__Array___standard__kernel__Object__init(var3
); /* Direct call array#Array#init on <var3:Array[Object]>*/
1292 var_listnode3
= var3
;
1293 var4
= NEW_standard__Array(&type_standard__Array__standard__Object
);
1295 standard___standard__Array___standard__kernel__Object__init(var4
); /* Direct call array#Array#init on <var4:Array[Object]>*/
1297 var_listnode4
= var4
;
1298 var5
= NEW_standard__Array(&type_standard__Array__standard__Object
);
1300 standard___standard__Array___standard__kernel__Object__init(var5
); /* Direct call array#Array#init on <var5:Array[Object]>*/
1302 var_listnode7
= var5
;
1303 var_listnode5
= var_nodearraylist1
;
1304 /* <var_listnode5:nullable Object> isa Array[Object] */
1305 cltype
= type_standard__Array__standard__Object
.color
;
1306 idtype
= type_standard__Array__standard__Object
.id
;
1307 if(var_listnode5
== NULL
) {
1310 if(cltype
>= var_listnode5
->type
->table_size
) {
1313 var6
= var_listnode5
->type
->type_table
[cltype
] == idtype
;
1316 if (unlikely(!var6
)) {
1317 PRINT_ERROR("Runtime error: %s", "Assert failed");
1318 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1280);
1321 var_pclassdefnode6
= var_nodearraylist2
;
1322 /* <var_pclassdefnode6:nullable Object> isa nullable AClassdef */
1323 cltype8
= type_nullable__nit__AClassdef
.color
;
1324 idtype9
= type_nullable__nit__AClassdef
.id
;
1325 if(var_pclassdefnode6
== NULL
) {
1328 if(cltype8
>= var_pclassdefnode6
->type
->table_size
) {
1331 var7
= var_pclassdefnode6
->type
->type_table
[cltype8
] == idtype9
;
1334 if (unlikely(!var7
)) {
1335 PRINT_ERROR("Runtime error: %s", "Assert failed");
1336 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1282);
1340 var10
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode7
, var_listnode5
);
1342 var_listnode7
= var10
;
1344 if (var_pclassdefnode6
== NULL
) {
1345 var12
= 0; /* is null */
1347 var12
= 1; /* arg is null and recv is not */
1350 { /* Inline kernel#Object#!= (var_pclassdefnode6,var11) on <var_pclassdefnode6:nullable Object(nullable AClassdef)> */
1353 var15
= ((short int (*)(val
* self
, val
* p0
))(var_pclassdefnode6
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_pclassdefnode6
, var_other
) /* == on <var_pclassdefnode6:nullable AClassdef(AClassdef)>*/;
1358 RET_LABEL14
:(void)0;
1364 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_listnode7
, var_pclassdefnode6
); /* Direct call array#Array#add on <var_listnode7:Array[Object]>*/
1368 var17
= NEW_nit__AModule(&type_nit__AModule
);
1371 nit__parser_prod___AModule___init_amodule(var17
, var18
, var_listnode3
, var_listnode4
, var_listnode7
); /* Direct call parser_prod#AModule#init_amodule on <var17:AModule>*/
1373 var_pmodulenode1
= var17
;
1374 var_node_list
= var_pmodulenode1
;
1375 var19
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction8> */
1377 var20
= nit___nit__Parser___go_to(var_p
, var19
);
1380 nit___nit__Parser___push(var_p
, var20
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
1384 /* method parser#ReduceAction9#action for (self: ReduceAction9, Parser) */
1385 void nit__parser___nit__parser__ReduceAction9___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
1386 val
* var_p
/* var p: Parser */;
1387 val
* var
/* : null */;
1388 val
* var_node_list
/* var node_list: nullable Object */;
1389 val
* var1
/* : nullable Object */;
1390 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
1391 val
* var2
/* : nullable Object */;
1392 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1393 val
* var3
/* : nullable Object */;
1394 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1395 val
* var4
/* : Array[Object] */;
1396 val
* var_listnode3
/* var listnode3: Array[Object] */;
1397 val
* var5
/* : Array[Object] */;
1398 val
* var_listnode4
/* var listnode4: Array[Object] */;
1399 val
* var6
/* : Array[Object] */;
1400 val
* var_listnode7
/* var listnode7: Array[Object] */;
1401 val
* var_pmoduledeclnode2
/* var pmoduledeclnode2: nullable Object */;
1402 short int var7
/* : Bool */;
1405 val
* var_listnode5
/* var listnode5: nullable Object */;
1406 short int var8
/* : Bool */;
1409 val
* var_pclassdefnode6
/* var pclassdefnode6: nullable Object */;
1410 short int var11
/* : Bool */;
1413 val
* var14
/* : Array[Object] */;
1414 val
* var15
/* : null */;
1415 short int var16
/* : Bool */;
1416 short int var17
/* : Bool */;
1417 val
* var_other
/* var other: nullable Object */;
1418 short int var19
/* : Bool */;
1419 short int var20
/* : Bool */;
1420 val
* var21
/* : AModule */;
1421 val
* var_pmodulenode1
/* var pmodulenode1: nullable AModule */;
1422 long var22
/* : Int */;
1423 long var23
/* : Int */;
1426 var_node_list
= var
;
1428 var1
= nit___nit__Parser___pop(var_p
);
1430 var_nodearraylist3
= var1
;
1432 var2
= nit___nit__Parser___pop(var_p
);
1434 var_nodearraylist2
= var2
;
1436 var3
= nit___nit__Parser___pop(var_p
);
1438 var_nodearraylist1
= var3
;
1439 var4
= NEW_standard__Array(&type_standard__Array__standard__Object
);
1441 standard___standard__Array___standard__kernel__Object__init(var4
); /* Direct call array#Array#init on <var4:Array[Object]>*/
1443 var_listnode3
= var4
;
1444 var5
= NEW_standard__Array(&type_standard__Array__standard__Object
);
1446 standard___standard__Array___standard__kernel__Object__init(var5
); /* Direct call array#Array#init on <var5:Array[Object]>*/
1448 var_listnode4
= var5
;
1449 var6
= NEW_standard__Array(&type_standard__Array__standard__Object
);
1451 standard___standard__Array___standard__kernel__Object__init(var6
); /* Direct call array#Array#init on <var6:Array[Object]>*/
1453 var_listnode7
= var6
;
1454 var_pmoduledeclnode2
= var_nodearraylist1
;
1455 /* <var_pmoduledeclnode2:nullable Object> isa nullable AModuledecl */
1456 cltype
= type_nullable__nit__AModuledecl
.color
;
1457 idtype
= type_nullable__nit__AModuledecl
.id
;
1458 if(var_pmoduledeclnode2
== NULL
) {
1461 if(cltype
>= var_pmoduledeclnode2
->type
->table_size
) {
1464 var7
= var_pmoduledeclnode2
->type
->type_table
[cltype
] == idtype
;
1467 if (unlikely(!var7
)) {
1468 PRINT_ERROR("Runtime error: %s", "Assert failed");
1469 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1309);
1472 var_listnode5
= var_nodearraylist2
;
1473 /* <var_listnode5:nullable Object> isa Array[Object] */
1474 cltype9
= type_standard__Array__standard__Object
.color
;
1475 idtype10
= type_standard__Array__standard__Object
.id
;
1476 if(var_listnode5
== NULL
) {
1479 if(cltype9
>= var_listnode5
->type
->table_size
) {
1482 var8
= var_listnode5
->type
->type_table
[cltype9
] == idtype10
;
1485 if (unlikely(!var8
)) {
1486 PRINT_ERROR("Runtime error: %s", "Assert failed");
1487 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1311);
1490 var_pclassdefnode6
= var_nodearraylist3
;
1491 /* <var_pclassdefnode6:nullable Object> isa nullable AClassdef */
1492 cltype12
= type_nullable__nit__AClassdef
.color
;
1493 idtype13
= type_nullable__nit__AClassdef
.id
;
1494 if(var_pclassdefnode6
== NULL
) {
1497 if(cltype12
>= var_pclassdefnode6
->type
->table_size
) {
1500 var11
= var_pclassdefnode6
->type
->type_table
[cltype12
] == idtype13
;
1503 if (unlikely(!var11
)) {
1504 PRINT_ERROR("Runtime error: %s", "Assert failed");
1505 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1313);
1509 var14
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode7
, var_listnode5
);
1511 var_listnode7
= var14
;
1513 if (var_pclassdefnode6
== NULL
) {
1514 var16
= 0; /* is null */
1516 var16
= 1; /* arg is null and recv is not */
1519 { /* Inline kernel#Object#!= (var_pclassdefnode6,var15) on <var_pclassdefnode6:nullable Object(nullable AClassdef)> */
1522 var19
= ((short int (*)(val
* self
, val
* p0
))(var_pclassdefnode6
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_pclassdefnode6
, var_other
) /* == on <var_pclassdefnode6:nullable AClassdef(AClassdef)>*/;
1527 RET_LABEL18
:(void)0;
1533 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_listnode7
, var_pclassdefnode6
); /* Direct call array#Array#add on <var_listnode7:Array[Object]>*/
1537 var21
= NEW_nit__AModule(&type_nit__AModule
);
1539 nit__parser_prod___AModule___init_amodule(var21
, var_pmoduledeclnode2
, var_listnode3
, var_listnode4
, var_listnode7
); /* Direct call parser_prod#AModule#init_amodule on <var21:AModule>*/
1541 var_pmodulenode1
= var21
;
1542 var_node_list
= var_pmodulenode1
;
1543 var22
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction9> */
1545 var23
= nit___nit__Parser___go_to(var_p
, var22
);
1548 nit___nit__Parser___push(var_p
, var23
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
1552 /* method parser#ReduceAction10#action for (self: ReduceAction10, Parser) */
1553 void nit__parser___nit__parser__ReduceAction10___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
1554 val
* var_p
/* var p: Parser */;
1555 val
* var
/* : null */;
1556 val
* var_node_list
/* var node_list: nullable Object */;
1557 val
* var1
/* : nullable Object */;
1558 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
1559 val
* var2
/* : nullable Object */;
1560 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1561 val
* var3
/* : nullable Object */;
1562 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1563 val
* var4
/* : Array[Object] */;
1564 val
* var_listnode4
/* var listnode4: Array[Object] */;
1565 val
* var5
/* : Array[Object] */;
1566 val
* var_listnode5
/* var listnode5: Array[Object] */;
1567 val
* var6
/* : Array[Object] */;
1568 val
* var_listnode8
/* var listnode8: Array[Object] */;
1569 val
* var_listnode3
/* var listnode3: nullable Object */;
1570 short int var7
/* : Bool */;
1573 val
* var8
/* : Array[Object] */;
1574 val
* var_listnode6
/* var listnode6: nullable Object */;
1575 short int var9
/* : Bool */;
1578 val
* var_pclassdefnode7
/* var pclassdefnode7: nullable Object */;
1579 short int var12
/* : Bool */;
1582 val
* var15
/* : Array[Object] */;
1583 val
* var16
/* : null */;
1584 short int var17
/* : Bool */;
1585 short int var18
/* : Bool */;
1586 val
* var_other
/* var other: nullable Object */;
1587 short int var20
/* : Bool */;
1588 short int var21
/* : Bool */;
1589 val
* var22
/* : AModule */;
1590 val
* var23
/* : null */;
1591 val
* var_pmodulenode1
/* var pmodulenode1: nullable AModule */;
1592 long var24
/* : Int */;
1593 long var25
/* : Int */;
1596 var_node_list
= var
;
1598 var1
= nit___nit__Parser___pop(var_p
);
1600 var_nodearraylist3
= var1
;
1602 var2
= nit___nit__Parser___pop(var_p
);
1604 var_nodearraylist2
= var2
;
1606 var3
= nit___nit__Parser___pop(var_p
);
1608 var_nodearraylist1
= var3
;
1609 var4
= NEW_standard__Array(&type_standard__Array__standard__Object
);
1611 standard___standard__Array___standard__kernel__Object__init(var4
); /* Direct call array#Array#init on <var4:Array[Object]>*/
1613 var_listnode4
= var4
;
1614 var5
= NEW_standard__Array(&type_standard__Array__standard__Object
);
1616 standard___standard__Array___standard__kernel__Object__init(var5
); /* Direct call array#Array#init on <var5:Array[Object]>*/
1618 var_listnode5
= var5
;
1619 var6
= NEW_standard__Array(&type_standard__Array__standard__Object
);
1621 standard___standard__Array___standard__kernel__Object__init(var6
); /* Direct call array#Array#init on <var6:Array[Object]>*/
1623 var_listnode8
= var6
;
1624 var_listnode3
= var_nodearraylist1
;
1625 /* <var_listnode3:nullable Object> isa Array[Object] */
1626 cltype
= type_standard__Array__standard__Object
.color
;
1627 idtype
= type_standard__Array__standard__Object
.id
;
1628 if(var_listnode3
== NULL
) {
1631 if(cltype
>= var_listnode3
->type
->table_size
) {
1634 var7
= var_listnode3
->type
->type_table
[cltype
] == idtype
;
1637 if (unlikely(!var7
)) {
1638 PRINT_ERROR("Runtime error: %s", "Assert failed");
1639 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1340);
1643 var8
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode4
, var_listnode3
);
1645 var_listnode4
= var8
;
1646 var_listnode6
= var_nodearraylist2
;
1647 /* <var_listnode6:nullable Object> isa Array[Object] */
1648 cltype10
= type_standard__Array__standard__Object
.color
;
1649 idtype11
= type_standard__Array__standard__Object
.id
;
1650 if(var_listnode6
== NULL
) {
1653 if(cltype10
>= var_listnode6
->type
->table_size
) {
1656 var9
= var_listnode6
->type
->type_table
[cltype10
] == idtype11
;
1659 if (unlikely(!var9
)) {
1660 PRINT_ERROR("Runtime error: %s", "Assert failed");
1661 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1343);
1664 var_pclassdefnode7
= var_nodearraylist3
;
1665 /* <var_pclassdefnode7:nullable Object> isa nullable AClassdef */
1666 cltype13
= type_nullable__nit__AClassdef
.color
;
1667 idtype14
= type_nullable__nit__AClassdef
.id
;
1668 if(var_pclassdefnode7
== NULL
) {
1671 if(cltype13
>= var_pclassdefnode7
->type
->table_size
) {
1674 var12
= var_pclassdefnode7
->type
->type_table
[cltype13
] == idtype14
;
1677 if (unlikely(!var12
)) {
1678 PRINT_ERROR("Runtime error: %s", "Assert failed");
1679 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1345);
1683 var15
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode8
, var_listnode6
);
1685 var_listnode8
= var15
;
1687 if (var_pclassdefnode7
== NULL
) {
1688 var17
= 0; /* is null */
1690 var17
= 1; /* arg is null and recv is not */
1693 { /* Inline kernel#Object#!= (var_pclassdefnode7,var16) on <var_pclassdefnode7:nullable Object(nullable AClassdef)> */
1696 var20
= ((short int (*)(val
* self
, val
* p0
))(var_pclassdefnode7
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_pclassdefnode7
, var_other
) /* == on <var_pclassdefnode7:nullable AClassdef(AClassdef)>*/;
1701 RET_LABEL19
:(void)0;
1707 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_listnode8
, var_pclassdefnode7
); /* Direct call array#Array#add on <var_listnode8:Array[Object]>*/
1711 var22
= NEW_nit__AModule(&type_nit__AModule
);
1714 nit__parser_prod___AModule___init_amodule(var22
, var23
, var_listnode4
, var_listnode5
, var_listnode8
); /* Direct call parser_prod#AModule#init_amodule on <var22:AModule>*/
1716 var_pmodulenode1
= var22
;
1717 var_node_list
= var_pmodulenode1
;
1718 var24
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction10> */
1720 var25
= nit___nit__Parser___go_to(var_p
, var24
);
1723 nit___nit__Parser___push(var_p
, var25
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
1727 /* method parser#ReduceAction11#action for (self: ReduceAction11, Parser) */
1728 void nit__parser___nit__parser__ReduceAction11___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
1729 val
* var_p
/* var p: Parser */;
1730 val
* var
/* : null */;
1731 val
* var_node_list
/* var node_list: nullable Object */;
1732 val
* var1
/* : nullable Object */;
1733 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
1734 val
* var2
/* : nullable Object */;
1735 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
1736 val
* var3
/* : nullable Object */;
1737 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1738 val
* var4
/* : nullable Object */;
1739 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1740 val
* var5
/* : Array[Object] */;
1741 val
* var_listnode4
/* var listnode4: Array[Object] */;
1742 val
* var6
/* : Array[Object] */;
1743 val
* var_listnode5
/* var listnode5: Array[Object] */;
1744 val
* var7
/* : Array[Object] */;
1745 val
* var_listnode8
/* var listnode8: Array[Object] */;
1746 val
* var_pmoduledeclnode2
/* var pmoduledeclnode2: nullable Object */;
1747 short int var8
/* : Bool */;
1750 val
* var_listnode3
/* var listnode3: nullable Object */;
1751 short int var9
/* : Bool */;
1754 val
* var12
/* : Array[Object] */;
1755 val
* var_listnode6
/* var listnode6: nullable Object */;
1756 short int var13
/* : Bool */;
1759 val
* var_pclassdefnode7
/* var pclassdefnode7: nullable Object */;
1760 short int var16
/* : Bool */;
1763 val
* var19
/* : Array[Object] */;
1764 val
* var20
/* : null */;
1765 short int var21
/* : Bool */;
1766 short int var22
/* : Bool */;
1767 val
* var_other
/* var other: nullable Object */;
1768 short int var24
/* : Bool */;
1769 short int var25
/* : Bool */;
1770 val
* var26
/* : AModule */;
1771 val
* var_pmodulenode1
/* var pmodulenode1: nullable AModule */;
1772 long var27
/* : Int */;
1773 long var28
/* : Int */;
1776 var_node_list
= var
;
1778 var1
= nit___nit__Parser___pop(var_p
);
1780 var_nodearraylist4
= var1
;
1782 var2
= nit___nit__Parser___pop(var_p
);
1784 var_nodearraylist3
= var2
;
1786 var3
= nit___nit__Parser___pop(var_p
);
1788 var_nodearraylist2
= var3
;
1790 var4
= nit___nit__Parser___pop(var_p
);
1792 var_nodearraylist1
= var4
;
1793 var5
= NEW_standard__Array(&type_standard__Array__standard__Object
);
1795 standard___standard__Array___standard__kernel__Object__init(var5
); /* Direct call array#Array#init on <var5:Array[Object]>*/
1797 var_listnode4
= var5
;
1798 var6
= NEW_standard__Array(&type_standard__Array__standard__Object
);
1800 standard___standard__Array___standard__kernel__Object__init(var6
); /* Direct call array#Array#init on <var6:Array[Object]>*/
1802 var_listnode5
= var6
;
1803 var7
= NEW_standard__Array(&type_standard__Array__standard__Object
);
1805 standard___standard__Array___standard__kernel__Object__init(var7
); /* Direct call array#Array#init on <var7:Array[Object]>*/
1807 var_listnode8
= var7
;
1808 var_pmoduledeclnode2
= var_nodearraylist1
;
1809 /* <var_pmoduledeclnode2:nullable Object> isa nullable AModuledecl */
1810 cltype
= type_nullable__nit__AModuledecl
.color
;
1811 idtype
= type_nullable__nit__AModuledecl
.id
;
1812 if(var_pmoduledeclnode2
== NULL
) {
1815 if(cltype
>= var_pmoduledeclnode2
->type
->table_size
) {
1818 var8
= var_pmoduledeclnode2
->type
->type_table
[cltype
] == idtype
;
1821 if (unlikely(!var8
)) {
1822 PRINT_ERROR("Runtime error: %s", "Assert failed");
1823 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1373);
1826 var_listnode3
= var_nodearraylist2
;
1827 /* <var_listnode3:nullable Object> isa Array[Object] */
1828 cltype10
= type_standard__Array__standard__Object
.color
;
1829 idtype11
= type_standard__Array__standard__Object
.id
;
1830 if(var_listnode3
== NULL
) {
1833 if(cltype10
>= var_listnode3
->type
->table_size
) {
1836 var9
= var_listnode3
->type
->type_table
[cltype10
] == idtype11
;
1839 if (unlikely(!var9
)) {
1840 PRINT_ERROR("Runtime error: %s", "Assert failed");
1841 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1375);
1845 var12
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode4
, var_listnode3
);
1847 var_listnode4
= var12
;
1848 var_listnode6
= var_nodearraylist3
;
1849 /* <var_listnode6:nullable Object> isa Array[Object] */
1850 cltype14
= type_standard__Array__standard__Object
.color
;
1851 idtype15
= type_standard__Array__standard__Object
.id
;
1852 if(var_listnode6
== NULL
) {
1855 if(cltype14
>= var_listnode6
->type
->table_size
) {
1858 var13
= var_listnode6
->type
->type_table
[cltype14
] == idtype15
;
1861 if (unlikely(!var13
)) {
1862 PRINT_ERROR("Runtime error: %s", "Assert failed");
1863 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1378);
1866 var_pclassdefnode7
= var_nodearraylist4
;
1867 /* <var_pclassdefnode7:nullable Object> isa nullable AClassdef */
1868 cltype17
= type_nullable__nit__AClassdef
.color
;
1869 idtype18
= type_nullable__nit__AClassdef
.id
;
1870 if(var_pclassdefnode7
== NULL
) {
1873 if(cltype17
>= var_pclassdefnode7
->type
->table_size
) {
1876 var16
= var_pclassdefnode7
->type
->type_table
[cltype17
] == idtype18
;
1879 if (unlikely(!var16
)) {
1880 PRINT_ERROR("Runtime error: %s", "Assert failed");
1881 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1380);
1885 var19
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode8
, var_listnode6
);
1887 var_listnode8
= var19
;
1889 if (var_pclassdefnode7
== NULL
) {
1890 var21
= 0; /* is null */
1892 var21
= 1; /* arg is null and recv is not */
1895 { /* Inline kernel#Object#!= (var_pclassdefnode7,var20) on <var_pclassdefnode7:nullable Object(nullable AClassdef)> */
1898 var24
= ((short int (*)(val
* self
, val
* p0
))(var_pclassdefnode7
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_pclassdefnode7
, var_other
) /* == on <var_pclassdefnode7:nullable AClassdef(AClassdef)>*/;
1903 RET_LABEL23
:(void)0;
1909 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_listnode8
, var_pclassdefnode7
); /* Direct call array#Array#add on <var_listnode8:Array[Object]>*/
1913 var26
= NEW_nit__AModule(&type_nit__AModule
);
1915 nit__parser_prod___AModule___init_amodule(var26
, var_pmoduledeclnode2
, var_listnode4
, var_listnode5
, var_listnode8
); /* Direct call parser_prod#AModule#init_amodule on <var26:AModule>*/
1917 var_pmodulenode1
= var26
;
1918 var_node_list
= var_pmodulenode1
;
1919 var27
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction11> */
1921 var28
= nit___nit__Parser___go_to(var_p
, var27
);
1924 nit___nit__Parser___push(var_p
, var28
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
1928 /* method parser#ReduceAction12#action for (self: ReduceAction12, Parser) */
1929 void nit__parser___nit__parser__ReduceAction12___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
1930 val
* var_p
/* var p: Parser */;
1931 val
* var
/* : null */;
1932 val
* var_node_list
/* var node_list: nullable Object */;
1933 val
* var1
/* : nullable Object */;
1934 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
1935 val
* var2
/* : nullable Object */;
1936 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1937 val
* var3
/* : nullable Object */;
1938 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1939 val
* var4
/* : Array[Object] */;
1940 val
* var_listnode3
/* var listnode3: Array[Object] */;
1941 val
* var5
/* : Array[Object] */;
1942 val
* var_listnode5
/* var listnode5: Array[Object] */;
1943 val
* var6
/* : Array[Object] */;
1944 val
* var_listnode8
/* var listnode8: Array[Object] */;
1945 val
* var_listnode4
/* var listnode4: nullable Object */;
1946 short int var7
/* : Bool */;
1949 val
* var8
/* : Array[Object] */;
1950 val
* var_listnode6
/* var listnode6: nullable Object */;
1951 short int var9
/* : Bool */;
1954 val
* var_pclassdefnode7
/* var pclassdefnode7: nullable Object */;
1955 short int var12
/* : Bool */;
1958 val
* var15
/* : Array[Object] */;
1959 val
* var16
/* : null */;
1960 short int var17
/* : Bool */;
1961 short int var18
/* : Bool */;
1962 val
* var_other
/* var other: nullable Object */;
1963 short int var20
/* : Bool */;
1964 short int var21
/* : Bool */;
1965 val
* var22
/* : AModule */;
1966 val
* var23
/* : null */;
1967 val
* var_pmodulenode1
/* var pmodulenode1: nullable AModule */;
1968 long var24
/* : Int */;
1969 long var25
/* : Int */;
1972 var_node_list
= var
;
1974 var1
= nit___nit__Parser___pop(var_p
);
1976 var_nodearraylist3
= var1
;
1978 var2
= nit___nit__Parser___pop(var_p
);
1980 var_nodearraylist2
= var2
;
1982 var3
= nit___nit__Parser___pop(var_p
);
1984 var_nodearraylist1
= var3
;
1985 var4
= NEW_standard__Array(&type_standard__Array__standard__Object
);
1987 standard___standard__Array___standard__kernel__Object__init(var4
); /* Direct call array#Array#init on <var4:Array[Object]>*/
1989 var_listnode3
= var4
;
1990 var5
= NEW_standard__Array(&type_standard__Array__standard__Object
);
1992 standard___standard__Array___standard__kernel__Object__init(var5
); /* Direct call array#Array#init on <var5:Array[Object]>*/
1994 var_listnode5
= var5
;
1995 var6
= NEW_standard__Array(&type_standard__Array__standard__Object
);
1997 standard___standard__Array___standard__kernel__Object__init(var6
); /* Direct call array#Array#init on <var6:Array[Object]>*/
1999 var_listnode8
= var6
;
2000 var_listnode4
= var_nodearraylist1
;
2001 /* <var_listnode4:nullable Object> isa Array[Object] */
2002 cltype
= type_standard__Array__standard__Object
.color
;
2003 idtype
= type_standard__Array__standard__Object
.id
;
2004 if(var_listnode4
== NULL
) {
2007 if(cltype
>= var_listnode4
->type
->table_size
) {
2010 var7
= var_listnode4
->type
->type_table
[cltype
] == idtype
;
2013 if (unlikely(!var7
)) {
2014 PRINT_ERROR("Runtime error: %s", "Assert failed");
2015 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1407);
2019 var8
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode5
, var_listnode4
);
2021 var_listnode5
= var8
;
2022 var_listnode6
= var_nodearraylist2
;
2023 /* <var_listnode6:nullable Object> isa Array[Object] */
2024 cltype10
= type_standard__Array__standard__Object
.color
;
2025 idtype11
= type_standard__Array__standard__Object
.id
;
2026 if(var_listnode6
== NULL
) {
2029 if(cltype10
>= var_listnode6
->type
->table_size
) {
2032 var9
= var_listnode6
->type
->type_table
[cltype10
] == idtype11
;
2035 if (unlikely(!var9
)) {
2036 PRINT_ERROR("Runtime error: %s", "Assert failed");
2037 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1410);
2040 var_pclassdefnode7
= var_nodearraylist3
;
2041 /* <var_pclassdefnode7:nullable Object> isa nullable AClassdef */
2042 cltype13
= type_nullable__nit__AClassdef
.color
;
2043 idtype14
= type_nullable__nit__AClassdef
.id
;
2044 if(var_pclassdefnode7
== NULL
) {
2047 if(cltype13
>= var_pclassdefnode7
->type
->table_size
) {
2050 var12
= var_pclassdefnode7
->type
->type_table
[cltype13
] == idtype14
;
2053 if (unlikely(!var12
)) {
2054 PRINT_ERROR("Runtime error: %s", "Assert failed");
2055 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1412);
2059 var15
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode8
, var_listnode6
);
2061 var_listnode8
= var15
;
2063 if (var_pclassdefnode7
== NULL
) {
2064 var17
= 0; /* is null */
2066 var17
= 1; /* arg is null and recv is not */
2069 { /* Inline kernel#Object#!= (var_pclassdefnode7,var16) on <var_pclassdefnode7:nullable Object(nullable AClassdef)> */
2072 var20
= ((short int (*)(val
* self
, val
* p0
))(var_pclassdefnode7
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_pclassdefnode7
, var_other
) /* == on <var_pclassdefnode7:nullable AClassdef(AClassdef)>*/;
2077 RET_LABEL19
:(void)0;
2083 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_listnode8
, var_pclassdefnode7
); /* Direct call array#Array#add on <var_listnode8:Array[Object]>*/
2087 var22
= NEW_nit__AModule(&type_nit__AModule
);
2090 nit__parser_prod___AModule___init_amodule(var22
, var23
, var_listnode3
, var_listnode5
, var_listnode8
); /* Direct call parser_prod#AModule#init_amodule on <var22:AModule>*/
2092 var_pmodulenode1
= var22
;
2093 var_node_list
= var_pmodulenode1
;
2094 var24
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction12> */
2096 var25
= nit___nit__Parser___go_to(var_p
, var24
);
2099 nit___nit__Parser___push(var_p
, var25
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
2103 /* method parser#ReduceAction13#action for (self: ReduceAction13, Parser) */
2104 void nit__parser___nit__parser__ReduceAction13___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
2105 val
* var_p
/* var p: Parser */;
2106 val
* var
/* : null */;
2107 val
* var_node_list
/* var node_list: nullable Object */;
2108 val
* var1
/* : nullable Object */;
2109 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
2110 val
* var2
/* : nullable Object */;
2111 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
2112 val
* var3
/* : nullable Object */;
2113 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2114 val
* var4
/* : nullable Object */;
2115 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2116 val
* var5
/* : Array[Object] */;
2117 val
* var_listnode3
/* var listnode3: Array[Object] */;
2118 val
* var6
/* : Array[Object] */;
2119 val
* var_listnode5
/* var listnode5: Array[Object] */;
2120 val
* var7
/* : Array[Object] */;
2121 val
* var_listnode8
/* var listnode8: Array[Object] */;
2122 val
* var_pmoduledeclnode2
/* var pmoduledeclnode2: nullable Object */;
2123 short int var8
/* : Bool */;
2126 val
* var_listnode4
/* var listnode4: nullable Object */;
2127 short int var9
/* : Bool */;
2130 val
* var12
/* : Array[Object] */;
2131 val
* var_listnode6
/* var listnode6: nullable Object */;
2132 short int var13
/* : Bool */;
2135 val
* var_pclassdefnode7
/* var pclassdefnode7: nullable Object */;
2136 short int var16
/* : Bool */;
2139 val
* var19
/* : Array[Object] */;
2140 val
* var20
/* : null */;
2141 short int var21
/* : Bool */;
2142 short int var22
/* : Bool */;
2143 val
* var_other
/* var other: nullable Object */;
2144 short int var24
/* : Bool */;
2145 short int var25
/* : Bool */;
2146 val
* var26
/* : AModule */;
2147 val
* var_pmodulenode1
/* var pmodulenode1: nullable AModule */;
2148 long var27
/* : Int */;
2149 long var28
/* : Int */;
2152 var_node_list
= var
;
2154 var1
= nit___nit__Parser___pop(var_p
);
2156 var_nodearraylist4
= var1
;
2158 var2
= nit___nit__Parser___pop(var_p
);
2160 var_nodearraylist3
= var2
;
2162 var3
= nit___nit__Parser___pop(var_p
);
2164 var_nodearraylist2
= var3
;
2166 var4
= nit___nit__Parser___pop(var_p
);
2168 var_nodearraylist1
= var4
;
2169 var5
= NEW_standard__Array(&type_standard__Array__standard__Object
);
2171 standard___standard__Array___standard__kernel__Object__init(var5
); /* Direct call array#Array#init on <var5:Array[Object]>*/
2173 var_listnode3
= var5
;
2174 var6
= NEW_standard__Array(&type_standard__Array__standard__Object
);
2176 standard___standard__Array___standard__kernel__Object__init(var6
); /* Direct call array#Array#init on <var6:Array[Object]>*/
2178 var_listnode5
= var6
;
2179 var7
= NEW_standard__Array(&type_standard__Array__standard__Object
);
2181 standard___standard__Array___standard__kernel__Object__init(var7
); /* Direct call array#Array#init on <var7:Array[Object]>*/
2183 var_listnode8
= var7
;
2184 var_pmoduledeclnode2
= var_nodearraylist1
;
2185 /* <var_pmoduledeclnode2:nullable Object> isa nullable AModuledecl */
2186 cltype
= type_nullable__nit__AModuledecl
.color
;
2187 idtype
= type_nullable__nit__AModuledecl
.id
;
2188 if(var_pmoduledeclnode2
== NULL
) {
2191 if(cltype
>= var_pmoduledeclnode2
->type
->table_size
) {
2194 var8
= var_pmoduledeclnode2
->type
->type_table
[cltype
] == idtype
;
2197 if (unlikely(!var8
)) {
2198 PRINT_ERROR("Runtime error: %s", "Assert failed");
2199 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1440);
2202 var_listnode4
= var_nodearraylist2
;
2203 /* <var_listnode4:nullable Object> isa Array[Object] */
2204 cltype10
= type_standard__Array__standard__Object
.color
;
2205 idtype11
= type_standard__Array__standard__Object
.id
;
2206 if(var_listnode4
== NULL
) {
2209 if(cltype10
>= var_listnode4
->type
->table_size
) {
2212 var9
= var_listnode4
->type
->type_table
[cltype10
] == idtype11
;
2215 if (unlikely(!var9
)) {
2216 PRINT_ERROR("Runtime error: %s", "Assert failed");
2217 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1442);
2221 var12
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode5
, var_listnode4
);
2223 var_listnode5
= var12
;
2224 var_listnode6
= var_nodearraylist3
;
2225 /* <var_listnode6:nullable Object> isa Array[Object] */
2226 cltype14
= type_standard__Array__standard__Object
.color
;
2227 idtype15
= type_standard__Array__standard__Object
.id
;
2228 if(var_listnode6
== NULL
) {
2231 if(cltype14
>= var_listnode6
->type
->table_size
) {
2234 var13
= var_listnode6
->type
->type_table
[cltype14
] == idtype15
;
2237 if (unlikely(!var13
)) {
2238 PRINT_ERROR("Runtime error: %s", "Assert failed");
2239 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1445);
2242 var_pclassdefnode7
= var_nodearraylist4
;
2243 /* <var_pclassdefnode7:nullable Object> isa nullable AClassdef */
2244 cltype17
= type_nullable__nit__AClassdef
.color
;
2245 idtype18
= type_nullable__nit__AClassdef
.id
;
2246 if(var_pclassdefnode7
== NULL
) {
2249 if(cltype17
>= var_pclassdefnode7
->type
->table_size
) {
2252 var16
= var_pclassdefnode7
->type
->type_table
[cltype17
] == idtype18
;
2255 if (unlikely(!var16
)) {
2256 PRINT_ERROR("Runtime error: %s", "Assert failed");
2257 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1447);
2261 var19
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode8
, var_listnode6
);
2263 var_listnode8
= var19
;
2265 if (var_pclassdefnode7
== NULL
) {
2266 var21
= 0; /* is null */
2268 var21
= 1; /* arg is null and recv is not */
2271 { /* Inline kernel#Object#!= (var_pclassdefnode7,var20) on <var_pclassdefnode7:nullable Object(nullable AClassdef)> */
2274 var24
= ((short int (*)(val
* self
, val
* p0
))(var_pclassdefnode7
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_pclassdefnode7
, var_other
) /* == on <var_pclassdefnode7:nullable AClassdef(AClassdef)>*/;
2279 RET_LABEL23
:(void)0;
2285 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_listnode8
, var_pclassdefnode7
); /* Direct call array#Array#add on <var_listnode8:Array[Object]>*/
2289 var26
= NEW_nit__AModule(&type_nit__AModule
);
2291 nit__parser_prod___AModule___init_amodule(var26
, var_pmoduledeclnode2
, var_listnode3
, var_listnode5
, var_listnode8
); /* Direct call parser_prod#AModule#init_amodule on <var26:AModule>*/
2293 var_pmodulenode1
= var26
;
2294 var_node_list
= var_pmodulenode1
;
2295 var27
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction13> */
2297 var28
= nit___nit__Parser___go_to(var_p
, var27
);
2300 nit___nit__Parser___push(var_p
, var28
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
2304 /* method parser#ReduceAction14#action for (self: ReduceAction14, Parser) */
2305 void nit__parser___nit__parser__ReduceAction14___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
2306 val
* var_p
/* var p: Parser */;
2307 val
* var
/* : null */;
2308 val
* var_node_list
/* var node_list: nullable Object */;
2309 val
* var1
/* : nullable Object */;
2310 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
2311 val
* var2
/* : nullable Object */;
2312 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
2313 val
* var3
/* : nullable Object */;
2314 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2315 val
* var4
/* : nullable Object */;
2316 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2317 val
* var5
/* : Array[Object] */;
2318 val
* var_listnode4
/* var listnode4: Array[Object] */;
2319 val
* var6
/* : Array[Object] */;
2320 val
* var_listnode6
/* var listnode6: Array[Object] */;
2321 val
* var7
/* : Array[Object] */;
2322 val
* var_listnode9
/* var listnode9: Array[Object] */;
2323 val
* var_listnode3
/* var listnode3: nullable Object */;
2324 short int var8
/* : Bool */;
2327 val
* var9
/* : Array[Object] */;
2328 val
* var_listnode5
/* var listnode5: nullable Object */;
2329 short int var10
/* : Bool */;
2332 val
* var13
/* : Array[Object] */;
2333 val
* var_listnode7
/* var listnode7: nullable Object */;
2334 short int var14
/* : Bool */;
2337 val
* var_pclassdefnode8
/* var pclassdefnode8: nullable Object */;
2338 short int var17
/* : Bool */;
2341 val
* var20
/* : Array[Object] */;
2342 val
* var21
/* : null */;
2343 short int var22
/* : Bool */;
2344 short int var23
/* : Bool */;
2345 val
* var_other
/* var other: nullable Object */;
2346 short int var25
/* : Bool */;
2347 short int var26
/* : Bool */;
2348 val
* var27
/* : AModule */;
2349 val
* var28
/* : null */;
2350 val
* var_pmodulenode1
/* var pmodulenode1: nullable AModule */;
2351 long var29
/* : Int */;
2352 long var30
/* : Int */;
2355 var_node_list
= var
;
2357 var1
= nit___nit__Parser___pop(var_p
);
2359 var_nodearraylist4
= var1
;
2361 var2
= nit___nit__Parser___pop(var_p
);
2363 var_nodearraylist3
= var2
;
2365 var3
= nit___nit__Parser___pop(var_p
);
2367 var_nodearraylist2
= var3
;
2369 var4
= nit___nit__Parser___pop(var_p
);
2371 var_nodearraylist1
= var4
;
2372 var5
= NEW_standard__Array(&type_standard__Array__standard__Object
);
2374 standard___standard__Array___standard__kernel__Object__init(var5
); /* Direct call array#Array#init on <var5:Array[Object]>*/
2376 var_listnode4
= var5
;
2377 var6
= NEW_standard__Array(&type_standard__Array__standard__Object
);
2379 standard___standard__Array___standard__kernel__Object__init(var6
); /* Direct call array#Array#init on <var6:Array[Object]>*/
2381 var_listnode6
= var6
;
2382 var7
= NEW_standard__Array(&type_standard__Array__standard__Object
);
2384 standard___standard__Array___standard__kernel__Object__init(var7
); /* Direct call array#Array#init on <var7:Array[Object]>*/
2386 var_listnode9
= var7
;
2387 var_listnode3
= var_nodearraylist1
;
2388 /* <var_listnode3:nullable Object> isa Array[Object] */
2389 cltype
= type_standard__Array__standard__Object
.color
;
2390 idtype
= type_standard__Array__standard__Object
.id
;
2391 if(var_listnode3
== NULL
) {
2394 if(cltype
>= var_listnode3
->type
->table_size
) {
2397 var8
= var_listnode3
->type
->type_table
[cltype
] == idtype
;
2400 if (unlikely(!var8
)) {
2401 PRINT_ERROR("Runtime error: %s", "Assert failed");
2402 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1475);
2406 var9
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode4
, var_listnode3
);
2408 var_listnode4
= var9
;
2409 var_listnode5
= var_nodearraylist2
;
2410 /* <var_listnode5:nullable Object> isa Array[Object] */
2411 cltype11
= type_standard__Array__standard__Object
.color
;
2412 idtype12
= type_standard__Array__standard__Object
.id
;
2413 if(var_listnode5
== NULL
) {
2416 if(cltype11
>= var_listnode5
->type
->table_size
) {
2419 var10
= var_listnode5
->type
->type_table
[cltype11
] == idtype12
;
2422 if (unlikely(!var10
)) {
2423 PRINT_ERROR("Runtime error: %s", "Assert failed");
2424 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1478);
2428 var13
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode6
, var_listnode5
);
2430 var_listnode6
= var13
;
2431 var_listnode7
= var_nodearraylist3
;
2432 /* <var_listnode7:nullable Object> isa Array[Object] */
2433 cltype15
= type_standard__Array__standard__Object
.color
;
2434 idtype16
= type_standard__Array__standard__Object
.id
;
2435 if(var_listnode7
== NULL
) {
2438 if(cltype15
>= var_listnode7
->type
->table_size
) {
2441 var14
= var_listnode7
->type
->type_table
[cltype15
] == idtype16
;
2444 if (unlikely(!var14
)) {
2445 PRINT_ERROR("Runtime error: %s", "Assert failed");
2446 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1481);
2449 var_pclassdefnode8
= var_nodearraylist4
;
2450 /* <var_pclassdefnode8:nullable Object> isa nullable AClassdef */
2451 cltype18
= type_nullable__nit__AClassdef
.color
;
2452 idtype19
= type_nullable__nit__AClassdef
.id
;
2453 if(var_pclassdefnode8
== NULL
) {
2456 if(cltype18
>= var_pclassdefnode8
->type
->table_size
) {
2459 var17
= var_pclassdefnode8
->type
->type_table
[cltype18
] == idtype19
;
2462 if (unlikely(!var17
)) {
2463 PRINT_ERROR("Runtime error: %s", "Assert failed");
2464 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1483);
2468 var20
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode9
, var_listnode7
);
2470 var_listnode9
= var20
;
2472 if (var_pclassdefnode8
== NULL
) {
2473 var22
= 0; /* is null */
2475 var22
= 1; /* arg is null and recv is not */
2478 { /* Inline kernel#Object#!= (var_pclassdefnode8,var21) on <var_pclassdefnode8:nullable Object(nullable AClassdef)> */
2481 var25
= ((short int (*)(val
* self
, val
* p0
))(var_pclassdefnode8
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_pclassdefnode8
, var_other
) /* == on <var_pclassdefnode8:nullable AClassdef(AClassdef)>*/;
2486 RET_LABEL24
:(void)0;
2492 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_listnode9
, var_pclassdefnode8
); /* Direct call array#Array#add on <var_listnode9:Array[Object]>*/
2496 var27
= NEW_nit__AModule(&type_nit__AModule
);
2499 nit__parser_prod___AModule___init_amodule(var27
, var28
, var_listnode4
, var_listnode6
, var_listnode9
); /* Direct call parser_prod#AModule#init_amodule on <var27:AModule>*/
2501 var_pmodulenode1
= var27
;
2502 var_node_list
= var_pmodulenode1
;
2503 var29
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction14> */
2505 var30
= nit___nit__Parser___go_to(var_p
, var29
);
2508 nit___nit__Parser___push(var_p
, var30
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
2512 /* method parser#ReduceAction15#action for (self: ReduceAction15, Parser) */
2513 void nit__parser___nit__parser__ReduceAction15___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
2514 val
* var_p
/* var p: Parser */;
2515 val
* var
/* : null */;
2516 val
* var_node_list
/* var node_list: nullable Object */;
2517 val
* var1
/* : nullable Object */;
2518 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
2519 val
* var2
/* : nullable Object */;
2520 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
2521 val
* var3
/* : nullable Object */;
2522 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
2523 val
* var4
/* : nullable Object */;
2524 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2525 val
* var5
/* : nullable Object */;
2526 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2527 val
* var6
/* : Array[Object] */;
2528 val
* var_listnode4
/* var listnode4: Array[Object] */;
2529 val
* var7
/* : Array[Object] */;
2530 val
* var_listnode6
/* var listnode6: Array[Object] */;
2531 val
* var8
/* : Array[Object] */;
2532 val
* var_listnode9
/* var listnode9: Array[Object] */;
2533 val
* var_pmoduledeclnode2
/* var pmoduledeclnode2: nullable Object */;
2534 short int var9
/* : Bool */;
2537 val
* var_listnode3
/* var listnode3: nullable Object */;
2538 short int var10
/* : Bool */;
2541 val
* var13
/* : Array[Object] */;
2542 val
* var_listnode5
/* var listnode5: nullable Object */;
2543 short int var14
/* : Bool */;
2546 val
* var17
/* : Array[Object] */;
2547 val
* var_listnode7
/* var listnode7: nullable Object */;
2548 short int var18
/* : Bool */;
2551 val
* var_pclassdefnode8
/* var pclassdefnode8: nullable Object */;
2552 short int var21
/* : Bool */;
2555 val
* var24
/* : Array[Object] */;
2556 val
* var25
/* : null */;
2557 short int var26
/* : Bool */;
2558 short int var27
/* : Bool */;
2559 val
* var_other
/* var other: nullable Object */;
2560 short int var29
/* : Bool */;
2561 short int var30
/* : Bool */;
2562 val
* var31
/* : AModule */;
2563 val
* var_pmodulenode1
/* var pmodulenode1: nullable AModule */;
2564 long var32
/* : Int */;
2565 long var33
/* : Int */;
2568 var_node_list
= var
;
2570 var1
= nit___nit__Parser___pop(var_p
);
2572 var_nodearraylist5
= var1
;
2574 var2
= nit___nit__Parser___pop(var_p
);
2576 var_nodearraylist4
= var2
;
2578 var3
= nit___nit__Parser___pop(var_p
);
2580 var_nodearraylist3
= var3
;
2582 var4
= nit___nit__Parser___pop(var_p
);
2584 var_nodearraylist2
= var4
;
2586 var5
= nit___nit__Parser___pop(var_p
);
2588 var_nodearraylist1
= var5
;
2589 var6
= NEW_standard__Array(&type_standard__Array__standard__Object
);
2591 standard___standard__Array___standard__kernel__Object__init(var6
); /* Direct call array#Array#init on <var6:Array[Object]>*/
2593 var_listnode4
= var6
;
2594 var7
= NEW_standard__Array(&type_standard__Array__standard__Object
);
2596 standard___standard__Array___standard__kernel__Object__init(var7
); /* Direct call array#Array#init on <var7:Array[Object]>*/
2598 var_listnode6
= var7
;
2599 var8
= NEW_standard__Array(&type_standard__Array__standard__Object
);
2601 standard___standard__Array___standard__kernel__Object__init(var8
); /* Direct call array#Array#init on <var8:Array[Object]>*/
2603 var_listnode9
= var8
;
2604 var_pmoduledeclnode2
= var_nodearraylist1
;
2605 /* <var_pmoduledeclnode2:nullable Object> isa nullable AModuledecl */
2606 cltype
= type_nullable__nit__AModuledecl
.color
;
2607 idtype
= type_nullable__nit__AModuledecl
.id
;
2608 if(var_pmoduledeclnode2
== NULL
) {
2611 if(cltype
>= var_pmoduledeclnode2
->type
->table_size
) {
2614 var9
= var_pmoduledeclnode2
->type
->type_table
[cltype
] == idtype
;
2617 if (unlikely(!var9
)) {
2618 PRINT_ERROR("Runtime error: %s", "Assert failed");
2619 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1512);
2622 var_listnode3
= var_nodearraylist2
;
2623 /* <var_listnode3:nullable Object> isa Array[Object] */
2624 cltype11
= type_standard__Array__standard__Object
.color
;
2625 idtype12
= type_standard__Array__standard__Object
.id
;
2626 if(var_listnode3
== NULL
) {
2629 if(cltype11
>= var_listnode3
->type
->table_size
) {
2632 var10
= var_listnode3
->type
->type_table
[cltype11
] == idtype12
;
2635 if (unlikely(!var10
)) {
2636 PRINT_ERROR("Runtime error: %s", "Assert failed");
2637 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1514);
2641 var13
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode4
, var_listnode3
);
2643 var_listnode4
= var13
;
2644 var_listnode5
= var_nodearraylist3
;
2645 /* <var_listnode5:nullable Object> isa Array[Object] */
2646 cltype15
= type_standard__Array__standard__Object
.color
;
2647 idtype16
= type_standard__Array__standard__Object
.id
;
2648 if(var_listnode5
== NULL
) {
2651 if(cltype15
>= var_listnode5
->type
->table_size
) {
2654 var14
= var_listnode5
->type
->type_table
[cltype15
] == idtype16
;
2657 if (unlikely(!var14
)) {
2658 PRINT_ERROR("Runtime error: %s", "Assert failed");
2659 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1517);
2663 var17
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode6
, var_listnode5
);
2665 var_listnode6
= var17
;
2666 var_listnode7
= var_nodearraylist4
;
2667 /* <var_listnode7:nullable Object> isa Array[Object] */
2668 cltype19
= type_standard__Array__standard__Object
.color
;
2669 idtype20
= type_standard__Array__standard__Object
.id
;
2670 if(var_listnode7
== NULL
) {
2673 if(cltype19
>= var_listnode7
->type
->table_size
) {
2676 var18
= var_listnode7
->type
->type_table
[cltype19
] == idtype20
;
2679 if (unlikely(!var18
)) {
2680 PRINT_ERROR("Runtime error: %s", "Assert failed");
2681 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1520);
2684 var_pclassdefnode8
= var_nodearraylist5
;
2685 /* <var_pclassdefnode8:nullable Object> isa nullable AClassdef */
2686 cltype22
= type_nullable__nit__AClassdef
.color
;
2687 idtype23
= type_nullable__nit__AClassdef
.id
;
2688 if(var_pclassdefnode8
== NULL
) {
2691 if(cltype22
>= var_pclassdefnode8
->type
->table_size
) {
2694 var21
= var_pclassdefnode8
->type
->type_table
[cltype22
] == idtype23
;
2697 if (unlikely(!var21
)) {
2698 PRINT_ERROR("Runtime error: %s", "Assert failed");
2699 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1522);
2703 var24
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode9
, var_listnode7
);
2705 var_listnode9
= var24
;
2707 if (var_pclassdefnode8
== NULL
) {
2708 var26
= 0; /* is null */
2710 var26
= 1; /* arg is null and recv is not */
2713 { /* Inline kernel#Object#!= (var_pclassdefnode8,var25) on <var_pclassdefnode8:nullable Object(nullable AClassdef)> */
2716 var29
= ((short int (*)(val
* self
, val
* p0
))(var_pclassdefnode8
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_pclassdefnode8
, var_other
) /* == on <var_pclassdefnode8:nullable AClassdef(AClassdef)>*/;
2721 RET_LABEL28
:(void)0;
2727 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_listnode9
, var_pclassdefnode8
); /* Direct call array#Array#add on <var_listnode9:Array[Object]>*/
2731 var31
= NEW_nit__AModule(&type_nit__AModule
);
2733 nit__parser_prod___AModule___init_amodule(var31
, var_pmoduledeclnode2
, var_listnode4
, var_listnode6
, var_listnode9
); /* Direct call parser_prod#AModule#init_amodule on <var31:AModule>*/
2735 var_pmodulenode1
= var31
;
2736 var_node_list
= var_pmodulenode1
;
2737 var32
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction15> */
2739 var33
= nit___nit__Parser___go_to(var_p
, var32
);
2742 nit___nit__Parser___push(var_p
, var33
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
2746 /* method parser#ReduceAction16#action for (self: ReduceAction16, Parser) */
2747 void nit__parser___nit__parser__ReduceAction16___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
2748 val
* var_p
/* var p: Parser */;
2749 val
* var
/* : null */;
2750 val
* var_node_list
/* var node_list: nullable Object */;
2751 val
* var1
/* : nullable Object */;
2752 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
2753 val
* var2
/* : nullable Object */;
2754 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
2755 val
* var3
/* : nullable Object */;
2756 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
2757 val
* var4
/* : nullable Object */;
2758 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
2759 val
* var5
/* : nullable Object */;
2760 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
2761 val
* var6
/* : nullable Object */;
2762 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
2763 val
* var7
/* : nullable Object */;
2764 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2765 val
* var8
/* : nullable Object */;
2766 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2767 val
* var_pdocnode2
/* var pdocnode2: nullable Object */;
2768 short int var9
/* : Bool */;
2771 val
* var_tkwredefnode3
/* var tkwredefnode3: nullable Object */;
2772 short int var10
/* : Bool */;
2775 val
* var_pvisibilitynode4
/* var pvisibilitynode4: nullable Object */;
2776 short int var13
/* : Bool */;
2779 val
* var_tkwmodulenode5
/* var tkwmodulenode5: nullable Object */;
2780 short int var16
/* : Bool */;
2783 val
* var_pmodulenamenode6
/* var pmodulenamenode6: nullable Object */;
2784 short int var19
/* : Bool */;
2787 val
* var_pannotationsnode7
/* var pannotationsnode7: nullable Object */;
2788 short int var22
/* : Bool */;
2791 val
* var25
/* : AModuledecl */;
2792 val
* var_pmoduledeclnode1
/* var pmoduledeclnode1: nullable AModuledecl */;
2793 long var26
/* : Int */;
2794 long var27
/* : Int */;
2797 var_node_list
= var
;
2799 var1
= nit___nit__Parser___pop(var_p
);
2801 var_nodearraylist8
= var1
;
2803 var2
= nit___nit__Parser___pop(var_p
);
2805 var_nodearraylist7
= var2
;
2807 var3
= nit___nit__Parser___pop(var_p
);
2809 var_nodearraylist6
= var3
;
2811 var4
= nit___nit__Parser___pop(var_p
);
2813 var_nodearraylist5
= var4
;
2815 var5
= nit___nit__Parser___pop(var_p
);
2817 var_nodearraylist4
= var5
;
2819 var6
= nit___nit__Parser___pop(var_p
);
2821 var_nodearraylist3
= var6
;
2823 var7
= nit___nit__Parser___pop(var_p
);
2825 var_nodearraylist2
= var7
;
2827 var8
= nit___nit__Parser___pop(var_p
);
2829 var_nodearraylist1
= var8
;
2830 var_pdocnode2
= var_nodearraylist1
;
2831 /* <var_pdocnode2:nullable Object> isa nullable ADoc */
2832 cltype
= type_nullable__nit__ADoc
.color
;
2833 idtype
= type_nullable__nit__ADoc
.id
;
2834 if(var_pdocnode2
== NULL
) {
2837 if(cltype
>= var_pdocnode2
->type
->table_size
) {
2840 var9
= var_pdocnode2
->type
->type_table
[cltype
] == idtype
;
2843 if (unlikely(!var9
)) {
2844 PRINT_ERROR("Runtime error: %s", "Assert failed");
2845 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1551);
2848 var_tkwredefnode3
= var_nodearraylist2
;
2849 /* <var_tkwredefnode3:nullable Object> isa nullable TKwredef */
2850 cltype11
= type_nullable__nit__TKwredef
.color
;
2851 idtype12
= type_nullable__nit__TKwredef
.id
;
2852 if(var_tkwredefnode3
== NULL
) {
2855 if(cltype11
>= var_tkwredefnode3
->type
->table_size
) {
2858 var10
= var_tkwredefnode3
->type
->type_table
[cltype11
] == idtype12
;
2861 if (unlikely(!var10
)) {
2862 PRINT_ERROR("Runtime error: %s", "Assert failed");
2863 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1553);
2866 var_pvisibilitynode4
= var_nodearraylist3
;
2867 /* <var_pvisibilitynode4:nullable Object> isa nullable AVisibility */
2868 cltype14
= type_nullable__nit__AVisibility
.color
;
2869 idtype15
= type_nullable__nit__AVisibility
.id
;
2870 if(var_pvisibilitynode4
== NULL
) {
2873 if(cltype14
>= var_pvisibilitynode4
->type
->table_size
) {
2876 var13
= var_pvisibilitynode4
->type
->type_table
[cltype14
] == idtype15
;
2879 if (unlikely(!var13
)) {
2880 PRINT_ERROR("Runtime error: %s", "Assert failed");
2881 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1555);
2884 var_tkwmodulenode5
= var_nodearraylist4
;
2885 /* <var_tkwmodulenode5:nullable Object> isa nullable TKwmodule */
2886 cltype17
= type_nullable__nit__TKwmodule
.color
;
2887 idtype18
= type_nullable__nit__TKwmodule
.id
;
2888 if(var_tkwmodulenode5
== NULL
) {
2891 if(cltype17
>= var_tkwmodulenode5
->type
->table_size
) {
2894 var16
= var_tkwmodulenode5
->type
->type_table
[cltype17
] == idtype18
;
2897 if (unlikely(!var16
)) {
2898 PRINT_ERROR("Runtime error: %s", "Assert failed");
2899 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1557);
2902 var_pmodulenamenode6
= var_nodearraylist6
;
2903 /* <var_pmodulenamenode6:nullable Object> isa nullable AModuleName */
2904 cltype20
= type_nullable__nit__AModuleName
.color
;
2905 idtype21
= type_nullable__nit__AModuleName
.id
;
2906 if(var_pmodulenamenode6
== NULL
) {
2909 if(cltype20
>= var_pmodulenamenode6
->type
->table_size
) {
2912 var19
= var_pmodulenamenode6
->type
->type_table
[cltype20
] == idtype21
;
2915 if (unlikely(!var19
)) {
2916 PRINT_ERROR("Runtime error: %s", "Assert failed");
2917 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1559);
2920 var_pannotationsnode7
= var_nodearraylist7
;
2921 /* <var_pannotationsnode7:nullable Object> isa nullable AAnnotations */
2922 cltype23
= type_nullable__nit__AAnnotations
.color
;
2923 idtype24
= type_nullable__nit__AAnnotations
.id
;
2924 if(var_pannotationsnode7
== NULL
) {
2927 if(cltype23
>= var_pannotationsnode7
->type
->table_size
) {
2930 var22
= var_pannotationsnode7
->type
->type_table
[cltype23
] == idtype24
;
2933 if (unlikely(!var22
)) {
2934 PRINT_ERROR("Runtime error: %s", "Assert failed");
2935 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1561);
2938 var25
= NEW_nit__AModuledecl(&type_nit__AModuledecl
);
2940 nit__parser_prod___AModuledecl___init_amoduledecl(var25
, var_pdocnode2
, var_tkwredefnode3
, var_pvisibilitynode4
, var_tkwmodulenode5
, var_pmodulenamenode6
, var_pannotationsnode7
); /* Direct call parser_prod#AModuledecl#init_amoduledecl on <var25:AModuledecl>*/
2942 var_pmoduledeclnode1
= var25
;
2943 var_node_list
= var_pmoduledeclnode1
;
2944 var26
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction16> */
2946 var27
= nit___nit__Parser___go_to(var_p
, var26
);
2949 nit___nit__Parser___push(var_p
, var27
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
2953 /* method parser#ReduceAction17#action for (self: ReduceAction17, Parser) */
2954 void nit__parser___nit__parser__ReduceAction17___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
2955 val
* var_p
/* var p: Parser */;
2956 val
* var
/* : null */;
2957 val
* var_node_list
/* var node_list: nullable Object */;
2958 val
* var1
/* : nullable Object */;
2959 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
2960 val
* var2
/* : nullable Object */;
2961 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
2962 val
* var3
/* : nullable Object */;
2963 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
2964 val
* var4
/* : nullable Object */;
2965 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
2966 val
* var5
/* : nullable Object */;
2967 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
2968 val
* var6
/* : nullable Object */;
2969 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
2970 val
* var7
/* : nullable Object */;
2971 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2972 val
* var8
/* : nullable Object */;
2973 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2974 val
* var_pvisibilitynode2
/* var pvisibilitynode2: nullable Object */;
2975 short int var9
/* : Bool */;
2978 val
* var_tkwimportnode3
/* var tkwimportnode3: nullable Object */;
2979 short int var10
/* : Bool */;
2982 val
* var_pmodulenamenode4
/* var pmodulenamenode4: nullable Object */;
2983 short int var13
/* : Bool */;
2986 val
* var_pannotationsnode5
/* var pannotationsnode5: nullable Object */;
2987 short int var16
/* : Bool */;
2990 val
* var19
/* : AStdImport */;
2991 val
* var_pimportnode1
/* var pimportnode1: nullable AStdImport */;
2992 long var20
/* : Int */;
2993 long var21
/* : Int */;
2996 var_node_list
= var
;
2998 var1
= nit___nit__Parser___pop(var_p
);
3000 var_nodearraylist8
= var1
;
3002 var2
= nit___nit__Parser___pop(var_p
);
3004 var_nodearraylist7
= var2
;
3006 var3
= nit___nit__Parser___pop(var_p
);
3008 var_nodearraylist6
= var3
;
3010 var4
= nit___nit__Parser___pop(var_p
);
3012 var_nodearraylist5
= var4
;
3014 var5
= nit___nit__Parser___pop(var_p
);
3016 var_nodearraylist4
= var5
;
3018 var6
= nit___nit__Parser___pop(var_p
);
3020 var_nodearraylist3
= var6
;
3022 var7
= nit___nit__Parser___pop(var_p
);
3024 var_nodearraylist2
= var7
;
3026 var8
= nit___nit__Parser___pop(var_p
);
3028 var_nodearraylist1
= var8
;
3029 var_pvisibilitynode2
= var_nodearraylist3
;
3030 /* <var_pvisibilitynode2:nullable Object> isa nullable AVisibility */
3031 cltype
= type_nullable__nit__AVisibility
.color
;
3032 idtype
= type_nullable__nit__AVisibility
.id
;
3033 if(var_pvisibilitynode2
== NULL
) {
3036 if(cltype
>= var_pvisibilitynode2
->type
->table_size
) {
3039 var9
= var_pvisibilitynode2
->type
->type_table
[cltype
] == idtype
;
3042 if (unlikely(!var9
)) {
3043 PRINT_ERROR("Runtime error: %s", "Assert failed");
3044 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1588);
3047 var_tkwimportnode3
= var_nodearraylist4
;
3048 /* <var_tkwimportnode3:nullable Object> isa nullable TKwimport */
3049 cltype11
= type_nullable__nit__TKwimport
.color
;
3050 idtype12
= type_nullable__nit__TKwimport
.id
;
3051 if(var_tkwimportnode3
== NULL
) {
3054 if(cltype11
>= var_tkwimportnode3
->type
->table_size
) {
3057 var10
= var_tkwimportnode3
->type
->type_table
[cltype11
] == idtype12
;
3060 if (unlikely(!var10
)) {
3061 PRINT_ERROR("Runtime error: %s", "Assert failed");
3062 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1590);
3065 var_pmodulenamenode4
= var_nodearraylist6
;
3066 /* <var_pmodulenamenode4:nullable Object> isa nullable AModuleName */
3067 cltype14
= type_nullable__nit__AModuleName
.color
;
3068 idtype15
= type_nullable__nit__AModuleName
.id
;
3069 if(var_pmodulenamenode4
== NULL
) {
3072 if(cltype14
>= var_pmodulenamenode4
->type
->table_size
) {
3075 var13
= var_pmodulenamenode4
->type
->type_table
[cltype14
] == idtype15
;
3078 if (unlikely(!var13
)) {
3079 PRINT_ERROR("Runtime error: %s", "Assert failed");
3080 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1592);
3083 var_pannotationsnode5
= var_nodearraylist7
;
3084 /* <var_pannotationsnode5:nullable Object> isa nullable AAnnotations */
3085 cltype17
= type_nullable__nit__AAnnotations
.color
;
3086 idtype18
= type_nullable__nit__AAnnotations
.id
;
3087 if(var_pannotationsnode5
== NULL
) {
3090 if(cltype17
>= var_pannotationsnode5
->type
->table_size
) {
3093 var16
= var_pannotationsnode5
->type
->type_table
[cltype17
] == idtype18
;
3096 if (unlikely(!var16
)) {
3097 PRINT_ERROR("Runtime error: %s", "Assert failed");
3098 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1594);
3101 var19
= NEW_nit__AStdImport(&type_nit__AStdImport
);
3103 nit__parser_prod___AStdImport___init_astdimport(var19
, var_pvisibilitynode2
, var_tkwimportnode3
, var_pmodulenamenode4
, var_pannotationsnode5
); /* Direct call parser_prod#AStdImport#init_astdimport on <var19:AStdImport>*/
3105 var_pimportnode1
= var19
;
3106 var_node_list
= var_pimportnode1
;
3107 var20
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction17> */
3109 var21
= nit___nit__Parser___go_to(var_p
, var20
);
3112 nit___nit__Parser___push(var_p
, var21
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
3116 /* method parser#ReduceAction18#action for (self: ReduceAction18, Parser) */
3117 void nit__parser___nit__parser__ReduceAction18___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
3118 val
* var_p
/* var p: Parser */;
3119 val
* var
/* : null */;
3120 val
* var_node_list
/* var node_list: nullable Object */;
3121 val
* var1
/* : nullable Object */;
3122 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
3123 val
* var2
/* : nullable Object */;
3124 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
3125 val
* var3
/* : nullable Object */;
3126 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
3127 val
* var4
/* : nullable Object */;
3128 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
3129 val
* var5
/* : nullable Object */;
3130 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
3131 val
* var6
/* : nullable Object */;
3132 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3133 val
* var7
/* : nullable Object */;
3134 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3135 val
* var_pvisibilitynode2
/* var pvisibilitynode2: nullable Object */;
3136 short int var8
/* : Bool */;
3139 val
* var_tkwimportnode3
/* var tkwimportnode3: nullable Object */;
3140 short int var9
/* : Bool */;
3143 val
* var_tkwendnode4
/* var tkwendnode4: nullable Object */;
3144 short int var12
/* : Bool */;
3147 val
* var15
/* : ANoImport */;
3148 val
* var_pimportnode1
/* var pimportnode1: nullable ANoImport */;
3149 long var16
/* : Int */;
3150 long var17
/* : Int */;
3153 var_node_list
= var
;
3155 var1
= nit___nit__Parser___pop(var_p
);
3157 var_nodearraylist7
= var1
;
3159 var2
= nit___nit__Parser___pop(var_p
);
3161 var_nodearraylist6
= var2
;
3163 var3
= nit___nit__Parser___pop(var_p
);
3165 var_nodearraylist5
= var3
;
3167 var4
= nit___nit__Parser___pop(var_p
);
3169 var_nodearraylist4
= var4
;
3171 var5
= nit___nit__Parser___pop(var_p
);
3173 var_nodearraylist3
= var5
;
3175 var6
= nit___nit__Parser___pop(var_p
);
3177 var_nodearraylist2
= var6
;
3179 var7
= nit___nit__Parser___pop(var_p
);
3181 var_nodearraylist1
= var7
;
3182 var_pvisibilitynode2
= var_nodearraylist3
;
3183 /* <var_pvisibilitynode2:nullable Object> isa nullable AVisibility */
3184 cltype
= type_nullable__nit__AVisibility
.color
;
3185 idtype
= type_nullable__nit__AVisibility
.id
;
3186 if(var_pvisibilitynode2
== NULL
) {
3189 if(cltype
>= var_pvisibilitynode2
->type
->table_size
) {
3192 var8
= var_pvisibilitynode2
->type
->type_table
[cltype
] == idtype
;
3195 if (unlikely(!var8
)) {
3196 PRINT_ERROR("Runtime error: %s", "Assert failed");
3197 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1618);
3200 var_tkwimportnode3
= var_nodearraylist4
;
3201 /* <var_tkwimportnode3:nullable Object> isa nullable TKwimport */
3202 cltype10
= type_nullable__nit__TKwimport
.color
;
3203 idtype11
= type_nullable__nit__TKwimport
.id
;
3204 if(var_tkwimportnode3
== NULL
) {
3207 if(cltype10
>= var_tkwimportnode3
->type
->table_size
) {
3210 var9
= var_tkwimportnode3
->type
->type_table
[cltype10
] == idtype11
;
3213 if (unlikely(!var9
)) {
3214 PRINT_ERROR("Runtime error: %s", "Assert failed");
3215 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1620);
3218 var_tkwendnode4
= var_nodearraylist6
;
3219 /* <var_tkwendnode4:nullable Object> isa nullable TKwend */
3220 cltype13
= type_nullable__nit__TKwend
.color
;
3221 idtype14
= type_nullable__nit__TKwend
.id
;
3222 if(var_tkwendnode4
== NULL
) {
3225 if(cltype13
>= var_tkwendnode4
->type
->table_size
) {
3228 var12
= var_tkwendnode4
->type
->type_table
[cltype13
] == idtype14
;
3231 if (unlikely(!var12
)) {
3232 PRINT_ERROR("Runtime error: %s", "Assert failed");
3233 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1622);
3236 var15
= NEW_nit__ANoImport(&type_nit__ANoImport
);
3238 nit__parser_prod___ANoImport___init_anoimport(var15
, var_pvisibilitynode2
, var_tkwimportnode3
, var_tkwendnode4
); /* Direct call parser_prod#ANoImport#init_anoimport on <var15:ANoImport>*/
3240 var_pimportnode1
= var15
;
3241 var_node_list
= var_pimportnode1
;
3242 var16
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction18> */
3244 var17
= nit___nit__Parser___go_to(var_p
, var16
);
3247 nit___nit__Parser___push(var_p
, var17
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
3251 /* method parser#ReduceAction19#action for (self: ReduceAction19, Parser) */
3252 void nit__parser___nit__parser__ReduceAction19___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
3253 val
* var_p
/* var p: Parser */;
3254 val
* var
/* : null */;
3255 val
* var_node_list
/* var node_list: nullable Object */;
3256 val
* var1
/* : nullable Object */;
3257 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3258 val
* var_pclassdefnode1
/* var pclassdefnode1: nullable Object */;
3259 long var2
/* : Int */;
3260 long var3
/* : Int */;
3263 var_node_list
= var
;
3265 var1
= nit___nit__Parser___pop(var_p
);
3267 var_nodearraylist1
= var1
;
3268 var_pclassdefnode1
= var_nodearraylist1
;
3269 var_node_list
= var_pclassdefnode1
;
3270 var2
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction19> */
3272 var3
= nit___nit__Parser___go_to(var_p
, var2
);
3275 nit___nit__Parser___push(var_p
, var3
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
3279 /* method parser#ReduceAction20#action for (self: ReduceAction20, Parser) */
3280 void nit__parser___nit__parser__ReduceAction20___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
3281 val
* var_p
/* var p: Parser */;
3282 val
* var
/* : null */;
3283 val
* var_node_list
/* var node_list: nullable Object */;
3284 val
* var1
/* : nullable Object */;
3285 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3286 val
* var2
/* : Array[Object] */;
3287 val
* var_listnode3
/* var listnode3: Array[Object] */;
3288 val
* var_ppropdefnode2
/* var ppropdefnode2: nullable Object */;
3289 short int var3
/* : Bool */;
3292 val
* var4
/* : null */;
3293 short int var5
/* : Bool */;
3294 short int var6
/* : Bool */;
3295 val
* var_other
/* var other: nullable Object */;
3296 short int var8
/* : Bool */;
3297 short int var9
/* : Bool */;
3298 val
* var10
/* : ATopClassdef */;
3299 val
* var_pclassdefnode1
/* var pclassdefnode1: nullable ATopClassdef */;
3300 long var11
/* : Int */;
3301 long var12
/* : Int */;
3304 var_node_list
= var
;
3306 var1
= nit___nit__Parser___pop(var_p
);
3308 var_nodearraylist1
= var1
;
3309 var2
= NEW_standard__Array(&type_standard__Array__standard__Object
);
3311 standard___standard__Array___standard__kernel__Object__init(var2
); /* Direct call array#Array#init on <var2:Array[Object]>*/
3313 var_listnode3
= var2
;
3314 var_ppropdefnode2
= var_nodearraylist1
;
3315 /* <var_ppropdefnode2:nullable Object> isa nullable APropdef */
3316 cltype
= type_nullable__nit__APropdef
.color
;
3317 idtype
= type_nullable__nit__APropdef
.id
;
3318 if(var_ppropdefnode2
== NULL
) {
3321 if(cltype
>= var_ppropdefnode2
->type
->table_size
) {
3324 var3
= var_ppropdefnode2
->type
->type_table
[cltype
] == idtype
;
3327 if (unlikely(!var3
)) {
3328 PRINT_ERROR("Runtime error: %s", "Assert failed");
3329 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1651);
3333 if (var_ppropdefnode2
== NULL
) {
3334 var5
= 0; /* is null */
3336 var5
= 1; /* arg is null and recv is not */
3339 { /* Inline kernel#Object#!= (var_ppropdefnode2,var4) on <var_ppropdefnode2:nullable Object(nullable APropdef)> */
3342 var8
= ((short int (*)(val
* self
, val
* p0
))(var_ppropdefnode2
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_ppropdefnode2
, var_other
) /* == on <var_ppropdefnode2:nullable APropdef(APropdef)>*/;
3353 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_listnode3
, var_ppropdefnode2
); /* Direct call array#Array#add on <var_listnode3:Array[Object]>*/
3357 var10
= NEW_nit__ATopClassdef(&type_nit__ATopClassdef
);
3359 nit__parser_prod___ATopClassdef___init_atopclassdef(var10
, var_listnode3
); /* Direct call parser_prod#ATopClassdef#init_atopclassdef on <var10:ATopClassdef>*/
3361 var_pclassdefnode1
= var10
;
3362 var_node_list
= var_pclassdefnode1
;
3363 var11
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction20> */
3365 var12
= nit___nit__Parser___go_to(var_p
, var11
);
3368 nit___nit__Parser___push(var_p
, var12
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
3372 /* method parser#ReduceAction21#action for (self: ReduceAction21, Parser) */
3373 void nit__parser___nit__parser__ReduceAction21___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
3374 val
* var_p
/* var p: Parser */;
3375 val
* var
/* : null */;
3376 val
* var_node_list
/* var node_list: nullable Object */;
3377 val
* var1
/* : nullable Object */;
3378 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3379 val
* var2
/* : Array[Object] */;
3380 val
* var_listnode3
/* var listnode3: Array[Object] */;
3381 val
* var_ppropdefnode2
/* var ppropdefnode2: nullable Object */;
3382 short int var3
/* : Bool */;
3385 val
* var4
/* : null */;
3386 short int var5
/* : Bool */;
3387 short int var6
/* : Bool */;
3388 val
* var_other
/* var other: nullable Object */;
3389 short int var8
/* : Bool */;
3390 short int var9
/* : Bool */;
3391 val
* var10
/* : AMainClassdef */;
3392 val
* var_pclassdefnode1
/* var pclassdefnode1: nullable AMainClassdef */;
3393 long var11
/* : Int */;
3394 long var12
/* : Int */;
3397 var_node_list
= var
;
3399 var1
= nit___nit__Parser___pop(var_p
);
3401 var_nodearraylist1
= var1
;
3402 var2
= NEW_standard__Array(&type_standard__Array__standard__Object
);
3404 standard___standard__Array___standard__kernel__Object__init(var2
); /* Direct call array#Array#init on <var2:Array[Object]>*/
3406 var_listnode3
= var2
;
3407 var_ppropdefnode2
= var_nodearraylist1
;
3408 /* <var_ppropdefnode2:nullable Object> isa nullable APropdef */
3409 cltype
= type_nullable__nit__APropdef
.color
;
3410 idtype
= type_nullable__nit__APropdef
.id
;
3411 if(var_ppropdefnode2
== NULL
) {
3414 if(cltype
>= var_ppropdefnode2
->type
->table_size
) {
3417 var3
= var_ppropdefnode2
->type
->type_table
[cltype
] == idtype
;
3420 if (unlikely(!var3
)) {
3421 PRINT_ERROR("Runtime error: %s", "Assert failed");
3422 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1670);
3426 if (var_ppropdefnode2
== NULL
) {
3427 var5
= 0; /* is null */
3429 var5
= 1; /* arg is null and recv is not */
3432 { /* Inline kernel#Object#!= (var_ppropdefnode2,var4) on <var_ppropdefnode2:nullable Object(nullable APropdef)> */
3435 var8
= ((short int (*)(val
* self
, val
* p0
))(var_ppropdefnode2
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_ppropdefnode2
, var_other
) /* == on <var_ppropdefnode2:nullable APropdef(APropdef)>*/;
3446 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_listnode3
, var_ppropdefnode2
); /* Direct call array#Array#add on <var_listnode3:Array[Object]>*/
3450 var10
= NEW_nit__AMainClassdef(&type_nit__AMainClassdef
);
3452 nit__parser_prod___AMainClassdef___init_amainclassdef(var10
, var_listnode3
); /* Direct call parser_prod#AMainClassdef#init_amainclassdef on <var10:AMainClassdef>*/
3454 var_pclassdefnode1
= var10
;
3455 var_node_list
= var_pclassdefnode1
;
3456 var11
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction21> */
3458 var12
= nit___nit__Parser___go_to(var_p
, var11
);
3461 nit___nit__Parser___push(var_p
, var12
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
3465 /* method parser#ReduceAction22#action for (self: ReduceAction22, Parser) */
3466 void nit__parser___nit__parser__ReduceAction22___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
3467 val
* var_p
/* var p: Parser */;
3468 val
* var
/* : null */;
3469 val
* var_node_list
/* var node_list: nullable Object */;
3470 val
* var1
/* : null */;
3471 long var2
/* : Int */;
3472 long var3
/* : Int */;
3475 var_node_list
= var
;
3477 var_node_list
= var1
;
3478 var2
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction22> */
3480 var3
= nit___nit__Parser___go_to(var_p
, var2
);
3483 nit___nit__Parser___push(var_p
, var3
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
3487 /* method parser#ReduceAction23#action for (self: ReduceAction23, Parser) */
3488 void nit__parser___nit__parser__ReduceAction23___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
3489 val
* var_p
/* var p: Parser */;
3490 val
* var
/* : null */;
3491 val
* var_node_list
/* var node_list: nullable Object */;
3492 val
* var1
/* : nullable Object */;
3493 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3494 val
* var2
/* : null */;
3495 long var3
/* : Int */;
3496 long var4
/* : Int */;
3499 var_node_list
= var
;
3501 var1
= nit___nit__Parser___pop(var_p
);
3503 var_nodearraylist1
= var1
;
3505 var_node_list
= var2
;
3506 var3
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction23> */
3508 var4
= nit___nit__Parser___go_to(var_p
, var3
);
3511 nit___nit__Parser___push(var_p
, var4
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
3515 /* method parser#ReduceAction24#action for (self: ReduceAction24, Parser) */
3516 void nit__parser___nit__parser__ReduceAction24___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
3517 val
* var_p
/* var p: Parser */;
3518 val
* var
/* : null */;
3519 val
* var_node_list
/* var node_list: nullable Object */;
3520 val
* var1
/* : nullable Object */;
3521 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3522 val
* var2
/* : nullable Object */;
3523 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3524 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
3525 short int var3
/* : Bool */;
3528 val
* var4
/* : AMainMethPropdef */;
3529 val
* var5
/* : null */;
3530 val
* var_ppropdefnode1
/* var ppropdefnode1: nullable AMainMethPropdef */;
3531 long var6
/* : Int */;
3532 long var7
/* : Int */;
3535 var_node_list
= var
;
3537 var1
= nit___nit__Parser___pop(var_p
);
3539 var_nodearraylist2
= var1
;
3541 var2
= nit___nit__Parser___pop(var_p
);
3543 var_nodearraylist1
= var2
;
3544 var_pexprnode3
= var_nodearraylist2
;
3545 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
3546 cltype
= type_nullable__nit__AExpr
.color
;
3547 idtype
= type_nullable__nit__AExpr
.id
;
3548 if(var_pexprnode3
== NULL
) {
3551 if(cltype
>= var_pexprnode3
->type
->table_size
) {
3554 var3
= var_pexprnode3
->type
->type_table
[cltype
] == idtype
;
3557 if (unlikely(!var3
)) {
3558 PRINT_ERROR("Runtime error: %s", "Assert failed");
3559 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1708);
3562 var4
= NEW_nit__AMainMethPropdef(&type_nit__AMainMethPropdef
);
3565 nit__parser_prod___AMainMethPropdef___init_amainmethpropdef(var4
, var5
, var_pexprnode3
); /* Direct call parser_prod#AMainMethPropdef#init_amainmethpropdef on <var4:AMainMethPropdef>*/
3567 var_ppropdefnode1
= var4
;
3568 var_node_list
= var_ppropdefnode1
;
3569 var6
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction24> */
3571 var7
= nit___nit__Parser___go_to(var_p
, var6
);
3574 nit___nit__Parser___push(var_p
, var7
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
3578 /* method parser#ReduceAction26#action for (self: ReduceAction26, Parser) */
3579 void nit__parser___nit__parser__ReduceAction26___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
3580 val
* var_p
/* var p: Parser */;
3581 val
* var
/* : null */;
3582 val
* var_node_list
/* var node_list: nullable Object */;
3583 val
* var1
/* : nullable Object */;
3584 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
3585 val
* var2
/* : nullable Object */;
3586 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
3587 val
* var3
/* : nullable Object */;
3588 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
3589 val
* var4
/* : nullable Object */;
3590 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
3591 val
* var5
/* : nullable Object */;
3592 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
3593 val
* var6
/* : nullable Object */;
3594 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
3595 val
* var7
/* : nullable Object */;
3596 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
3597 val
* var8
/* : nullable Object */;
3598 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3599 val
* var9
/* : nullable Object */;
3600 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3601 val
* var10
/* : Array[Object] */;
3602 val
* var_listnode8
/* var listnode8: Array[Object] */;
3603 val
* var11
/* : Array[Object] */;
3604 val
* var_listnode11
/* var listnode11: Array[Object] */;
3605 val
* var12
/* : Array[Object] */;
3606 val
* var_listnode12
/* var listnode12: Array[Object] */;
3607 val
* var_pdocnode2
/* var pdocnode2: nullable Object */;
3608 short int var13
/* : Bool */;
3611 val
* var_tkwredefnode3
/* var tkwredefnode3: nullable Object */;
3612 short int var14
/* : Bool */;
3615 val
* var_pvisibilitynode4
/* var pvisibilitynode4: nullable Object */;
3616 short int var17
/* : Bool */;
3619 val
* var_pclasskindnode5
/* var pclasskindnode5: nullable Object */;
3620 short int var20
/* : Bool */;
3623 val
* var_tclassidnode6
/* var tclassidnode6: nullable Object */;
3624 short int var23
/* : Bool */;
3627 val
* var_listnode7
/* var listnode7: nullable Object */;
3628 short int var26
/* : Bool */;
3631 val
* var29
/* : Array[Object] */;
3632 val
* var_tkwendnode13
/* var tkwendnode13: nullable Object */;
3633 short int var30
/* : Bool */;
3636 val
* var33
/* : AStdClassdef */;
3637 val
* var34
/* : null */;
3638 val
* var35
/* : null */;
3639 val
* var_pclassdefnode1
/* var pclassdefnode1: nullable AStdClassdef */;
3640 long var36
/* : Int */;
3641 long var37
/* : Int */;
3644 var_node_list
= var
;
3646 var1
= nit___nit__Parser___pop(var_p
);
3648 var_nodearraylist9
= var1
;
3650 var2
= nit___nit__Parser___pop(var_p
);
3652 var_nodearraylist8
= var2
;
3654 var3
= nit___nit__Parser___pop(var_p
);
3656 var_nodearraylist7
= var3
;
3658 var4
= nit___nit__Parser___pop(var_p
);
3660 var_nodearraylist6
= var4
;
3662 var5
= nit___nit__Parser___pop(var_p
);
3664 var_nodearraylist5
= var5
;
3666 var6
= nit___nit__Parser___pop(var_p
);
3668 var_nodearraylist4
= var6
;
3670 var7
= nit___nit__Parser___pop(var_p
);
3672 var_nodearraylist3
= var7
;
3674 var8
= nit___nit__Parser___pop(var_p
);
3676 var_nodearraylist2
= var8
;
3678 var9
= nit___nit__Parser___pop(var_p
);
3680 var_nodearraylist1
= var9
;
3681 var10
= NEW_standard__Array(&type_standard__Array__standard__Object
);
3683 standard___standard__Array___standard__kernel__Object__init(var10
); /* Direct call array#Array#init on <var10:Array[Object]>*/
3685 var_listnode8
= var10
;
3686 var11
= NEW_standard__Array(&type_standard__Array__standard__Object
);
3688 standard___standard__Array___standard__kernel__Object__init(var11
); /* Direct call array#Array#init on <var11:Array[Object]>*/
3690 var_listnode11
= var11
;
3691 var12
= NEW_standard__Array(&type_standard__Array__standard__Object
);
3693 standard___standard__Array___standard__kernel__Object__init(var12
); /* Direct call array#Array#init on <var12:Array[Object]>*/
3695 var_listnode12
= var12
;
3696 var_pdocnode2
= var_nodearraylist1
;
3697 /* <var_pdocnode2:nullable Object> isa nullable ADoc */
3698 cltype
= type_nullable__nit__ADoc
.color
;
3699 idtype
= type_nullable__nit__ADoc
.id
;
3700 if(var_pdocnode2
== NULL
) {
3703 if(cltype
>= var_pdocnode2
->type
->table_size
) {
3706 var13
= var_pdocnode2
->type
->type_table
[cltype
] == idtype
;
3709 if (unlikely(!var13
)) {
3710 PRINT_ERROR("Runtime error: %s", "Assert failed");
3711 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1735);
3714 var_tkwredefnode3
= var_nodearraylist2
;
3715 /* <var_tkwredefnode3:nullable Object> isa nullable TKwredef */
3716 cltype15
= type_nullable__nit__TKwredef
.color
;
3717 idtype16
= type_nullable__nit__TKwredef
.id
;
3718 if(var_tkwredefnode3
== NULL
) {
3721 if(cltype15
>= var_tkwredefnode3
->type
->table_size
) {
3724 var14
= var_tkwredefnode3
->type
->type_table
[cltype15
] == idtype16
;
3727 if (unlikely(!var14
)) {
3728 PRINT_ERROR("Runtime error: %s", "Assert failed");
3729 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1737);
3732 var_pvisibilitynode4
= var_nodearraylist3
;
3733 /* <var_pvisibilitynode4:nullable Object> isa nullable AVisibility */
3734 cltype18
= type_nullable__nit__AVisibility
.color
;
3735 idtype19
= type_nullable__nit__AVisibility
.id
;
3736 if(var_pvisibilitynode4
== NULL
) {
3739 if(cltype18
>= var_pvisibilitynode4
->type
->table_size
) {
3742 var17
= var_pvisibilitynode4
->type
->type_table
[cltype18
] == idtype19
;
3745 if (unlikely(!var17
)) {
3746 PRINT_ERROR("Runtime error: %s", "Assert failed");
3747 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1739);
3750 var_pclasskindnode5
= var_nodearraylist4
;
3751 /* <var_pclasskindnode5:nullable Object> isa nullable AClasskind */
3752 cltype21
= type_nullable__nit__AClasskind
.color
;
3753 idtype22
= type_nullable__nit__AClasskind
.id
;
3754 if(var_pclasskindnode5
== NULL
) {
3757 if(cltype21
>= var_pclasskindnode5
->type
->table_size
) {
3760 var20
= var_pclasskindnode5
->type
->type_table
[cltype21
] == idtype22
;
3763 if (unlikely(!var20
)) {
3764 PRINT_ERROR("Runtime error: %s", "Assert failed");
3765 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1741);
3768 var_tclassidnode6
= var_nodearraylist6
;
3769 /* <var_tclassidnode6:nullable Object> isa nullable TClassid */
3770 cltype24
= type_nullable__nit__TClassid
.color
;
3771 idtype25
= type_nullable__nit__TClassid
.id
;
3772 if(var_tclassidnode6
== NULL
) {
3775 if(cltype24
>= var_tclassidnode6
->type
->table_size
) {
3778 var23
= var_tclassidnode6
->type
->type_table
[cltype24
] == idtype25
;
3781 if (unlikely(!var23
)) {
3782 PRINT_ERROR("Runtime error: %s", "Assert failed");
3783 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1743);
3786 var_listnode7
= var_nodearraylist7
;
3787 /* <var_listnode7:nullable Object> isa Array[Object] */
3788 cltype27
= type_standard__Array__standard__Object
.color
;
3789 idtype28
= type_standard__Array__standard__Object
.id
;
3790 if(var_listnode7
== NULL
) {
3793 if(cltype27
>= var_listnode7
->type
->table_size
) {
3796 var26
= var_listnode7
->type
->type_table
[cltype27
] == idtype28
;
3799 if (unlikely(!var26
)) {
3800 PRINT_ERROR("Runtime error: %s", "Assert failed");
3801 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1745);
3805 var29
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode8
, var_listnode7
);
3807 var_listnode8
= var29
;
3808 var_tkwendnode13
= var_nodearraylist9
;
3809 /* <var_tkwendnode13:nullable Object> isa nullable TKwend */
3810 cltype31
= type_nullable__nit__TKwend
.color
;
3811 idtype32
= type_nullable__nit__TKwend
.id
;
3812 if(var_tkwendnode13
== NULL
) {
3815 if(cltype31
>= var_tkwendnode13
->type
->table_size
) {
3818 var30
= var_tkwendnode13
->type
->type_table
[cltype31
] == idtype32
;
3821 if (unlikely(!var30
)) {
3822 PRINT_ERROR("Runtime error: %s", "Assert failed");
3823 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1748);
3826 var33
= NEW_nit__AStdClassdef(&type_nit__AStdClassdef
);
3830 nit__parser_prod___AStdClassdef___init_astdclassdef(var33
, var_pdocnode2
, var_tkwredefnode3
, var_pvisibilitynode4
, var_pclasskindnode5
, var_tclassidnode6
, var_listnode8
, var34
, var35
, var_listnode11
, var_listnode12
, var_tkwendnode13
); /* Direct call parser_prod#AStdClassdef#init_astdclassdef on <var33:AStdClassdef>*/
3832 var_pclassdefnode1
= var33
;
3833 var_node_list
= var_pclassdefnode1
;
3834 var36
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction26> */
3836 var37
= nit___nit__Parser___go_to(var_p
, var36
);
3839 nit___nit__Parser___push(var_p
, var37
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
3843 /* method parser#ReduceAction27#action for (self: ReduceAction27, Parser) */
3844 void nit__parser___nit__parser__ReduceAction27___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
3845 val
* var_p
/* var p: Parser */;
3846 val
* var
/* : null */;
3847 val
* var_node_list
/* var node_list: nullable Object */;
3848 val
* var1
/* : nullable Object */;
3849 val
* var_nodearraylist10
/* var nodearraylist10: nullable Object */;
3850 val
* var2
/* : nullable Object */;
3851 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
3852 val
* var3
/* : nullable Object */;
3853 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
3854 val
* var4
/* : nullable Object */;
3855 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
3856 val
* var5
/* : nullable Object */;
3857 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
3858 val
* var6
/* : nullable Object */;
3859 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
3860 val
* var7
/* : nullable Object */;
3861 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
3862 val
* var8
/* : nullable Object */;
3863 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
3864 val
* var9
/* : nullable Object */;
3865 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3866 val
* var10
/* : nullable Object */;
3867 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3868 val
* var11
/* : Array[Object] */;
3869 val
* var_listnode8
/* var listnode8: Array[Object] */;
3870 val
* var12
/* : Array[Object] */;
3871 val
* var_listnode16
/* var listnode16: Array[Object] */;
3872 val
* var13
/* : Array[Object] */;
3873 val
* var_listnode17
/* var listnode17: Array[Object] */;
3874 val
* var_pdocnode2
/* var pdocnode2: nullable Object */;
3875 short int var14
/* : Bool */;
3878 val
* var_tkwredefnode3
/* var tkwredefnode3: nullable Object */;
3879 short int var15
/* : Bool */;
3882 val
* var_pvisibilitynode4
/* var pvisibilitynode4: nullable Object */;
3883 short int var18
/* : Bool */;
3886 val
* var_pclasskindnode5
/* var pclasskindnode5: nullable Object */;
3887 short int var21
/* : Bool */;
3890 val
* var_tclassidnode6
/* var tclassidnode6: nullable Object */;
3891 short int var24
/* : Bool */;
3894 val
* var_listnode7
/* var listnode7: nullable Object */;
3895 short int var27
/* : Bool */;
3898 val
* var30
/* : Array[Object] */;
3899 val
* var31
/* : Array[Object] */;
3900 val
* var_listnode13
/* var listnode13: Array[Object] */;
3901 val
* var_listnode12
/* var listnode12: nullable Object */;
3902 short int var32
/* : Bool */;
3905 val
* var35
/* : Array[Object] */;
3906 val
* var36
/* : AAnnotations */;
3907 val
* var37
/* : null */;
3908 val
* var38
/* : null */;
3909 val
* var39
/* : null */;
3910 val
* var_pannotationsnode9
/* var pannotationsnode9: nullable AAnnotations */;
3911 val
* var_tkwendnode18
/* var tkwendnode18: nullable Object */;
3912 short int var40
/* : Bool */;
3915 val
* var43
/* : AStdClassdef */;
3916 val
* var44
/* : null */;
3917 val
* var_pclassdefnode1
/* var pclassdefnode1: nullable AStdClassdef */;
3918 long var45
/* : Int */;
3919 long var46
/* : Int */;
3922 var_node_list
= var
;
3924 var1
= nit___nit__Parser___pop(var_p
);
3926 var_nodearraylist10
= var1
;
3928 var2
= nit___nit__Parser___pop(var_p
);
3930 var_nodearraylist9
= var2
;
3932 var3
= nit___nit__Parser___pop(var_p
);
3934 var_nodearraylist8
= var3
;
3936 var4
= nit___nit__Parser___pop(var_p
);
3938 var_nodearraylist7
= var4
;
3940 var5
= nit___nit__Parser___pop(var_p
);
3942 var_nodearraylist6
= var5
;
3944 var6
= nit___nit__Parser___pop(var_p
);
3946 var_nodearraylist5
= var6
;
3948 var7
= nit___nit__Parser___pop(var_p
);
3950 var_nodearraylist4
= var7
;
3952 var8
= nit___nit__Parser___pop(var_p
);
3954 var_nodearraylist3
= var8
;
3956 var9
= nit___nit__Parser___pop(var_p
);
3958 var_nodearraylist2
= var9
;
3960 var10
= nit___nit__Parser___pop(var_p
);
3962 var_nodearraylist1
= var10
;
3963 var11
= NEW_standard__Array(&type_standard__Array__standard__Object
);
3965 standard___standard__Array___standard__kernel__Object__init(var11
); /* Direct call array#Array#init on <var11:Array[Object]>*/
3967 var_listnode8
= var11
;
3968 var12
= NEW_standard__Array(&type_standard__Array__standard__Object
);
3970 standard___standard__Array___standard__kernel__Object__init(var12
); /* Direct call array#Array#init on <var12:Array[Object]>*/
3972 var_listnode16
= var12
;
3973 var13
= NEW_standard__Array(&type_standard__Array__standard__Object
);
3975 standard___standard__Array___standard__kernel__Object__init(var13
); /* Direct call array#Array#init on <var13:Array[Object]>*/
3977 var_listnode17
= var13
;
3978 var_pdocnode2
= var_nodearraylist1
;
3979 /* <var_pdocnode2:nullable Object> isa nullable ADoc */
3980 cltype
= type_nullable__nit__ADoc
.color
;
3981 idtype
= type_nullable__nit__ADoc
.id
;
3982 if(var_pdocnode2
== NULL
) {
3985 if(cltype
>= var_pdocnode2
->type
->table_size
) {
3988 var14
= var_pdocnode2
->type
->type_table
[cltype
] == idtype
;
3991 if (unlikely(!var14
)) {
3992 PRINT_ERROR("Runtime error: %s", "Assert failed");
3993 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1785);
3996 var_tkwredefnode3
= var_nodearraylist2
;
3997 /* <var_tkwredefnode3:nullable Object> isa nullable TKwredef */
3998 cltype16
= type_nullable__nit__TKwredef
.color
;
3999 idtype17
= type_nullable__nit__TKwredef
.id
;
4000 if(var_tkwredefnode3
== NULL
) {
4003 if(cltype16
>= var_tkwredefnode3
->type
->table_size
) {
4006 var15
= var_tkwredefnode3
->type
->type_table
[cltype16
] == idtype17
;
4009 if (unlikely(!var15
)) {
4010 PRINT_ERROR("Runtime error: %s", "Assert failed");
4011 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1787);
4014 var_pvisibilitynode4
= var_nodearraylist3
;
4015 /* <var_pvisibilitynode4:nullable Object> isa nullable AVisibility */
4016 cltype19
= type_nullable__nit__AVisibility
.color
;
4017 idtype20
= type_nullable__nit__AVisibility
.id
;
4018 if(var_pvisibilitynode4
== NULL
) {
4021 if(cltype19
>= var_pvisibilitynode4
->type
->table_size
) {
4024 var18
= var_pvisibilitynode4
->type
->type_table
[cltype19
] == idtype20
;
4027 if (unlikely(!var18
)) {
4028 PRINT_ERROR("Runtime error: %s", "Assert failed");
4029 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1789);
4032 var_pclasskindnode5
= var_nodearraylist4
;
4033 /* <var_pclasskindnode5:nullable Object> isa nullable AClasskind */
4034 cltype22
= type_nullable__nit__AClasskind
.color
;
4035 idtype23
= type_nullable__nit__AClasskind
.id
;
4036 if(var_pclasskindnode5
== NULL
) {
4039 if(cltype22
>= var_pclasskindnode5
->type
->table_size
) {
4042 var21
= var_pclasskindnode5
->type
->type_table
[cltype22
] == idtype23
;
4045 if (unlikely(!var21
)) {
4046 PRINT_ERROR("Runtime error: %s", "Assert failed");
4047 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1791);
4050 var_tclassidnode6
= var_nodearraylist6
;
4051 /* <var_tclassidnode6:nullable Object> isa nullable TClassid */
4052 cltype25
= type_nullable__nit__TClassid
.color
;
4053 idtype26
= type_nullable__nit__TClassid
.id
;
4054 if(var_tclassidnode6
== NULL
) {
4057 if(cltype25
>= var_tclassidnode6
->type
->table_size
) {
4060 var24
= var_tclassidnode6
->type
->type_table
[cltype25
] == idtype26
;
4063 if (unlikely(!var24
)) {
4064 PRINT_ERROR("Runtime error: %s", "Assert failed");
4065 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1793);
4068 var_listnode7
= var_nodearraylist7
;
4069 /* <var_listnode7:nullable Object> isa Array[Object] */
4070 cltype28
= type_standard__Array__standard__Object
.color
;
4071 idtype29
= type_standard__Array__standard__Object
.id
;
4072 if(var_listnode7
== NULL
) {
4075 if(cltype28
>= var_listnode7
->type
->table_size
) {
4078 var27
= var_listnode7
->type
->type_table
[cltype28
] == idtype29
;
4081 if (unlikely(!var27
)) {
4082 PRINT_ERROR("Runtime error: %s", "Assert failed");
4083 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1795);
4087 var30
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode8
, var_listnode7
);
4089 var_listnode8
= var30
;
4090 var31
= NEW_standard__Array(&type_standard__Array__standard__Object
);
4092 standard___standard__Array___standard__kernel__Object__init(var31
); /* Direct call array#Array#init on <var31:Array[Object]>*/
4094 var_listnode13
= var31
;
4095 var_listnode12
= var_nodearraylist8
;
4096 /* <var_listnode12:nullable Object> isa Array[Object] */
4097 cltype33
= type_standard__Array__standard__Object
.color
;
4098 idtype34
= type_standard__Array__standard__Object
.id
;
4099 if(var_listnode12
== NULL
) {
4102 if(cltype33
>= var_listnode12
->type
->table_size
) {
4105 var32
= var_listnode12
->type
->type_table
[cltype33
] == idtype34
;
4108 if (unlikely(!var32
)) {
4109 PRINT_ERROR("Runtime error: %s", "Assert failed");
4110 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1799);
4114 var35
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode13
, var_listnode12
);
4116 var_listnode13
= var35
;
4117 var36
= NEW_nit__AAnnotations(&type_nit__AAnnotations
);
4122 nit__parser_prod___AAnnotations___init_aannotations(var36
, var37
, var38
, var_listnode13
, var39
); /* Direct call parser_prod#AAnnotations#init_aannotations on <var36:AAnnotations>*/
4124 var_pannotationsnode9
= var36
;
4125 var_tkwendnode18
= var_nodearraylist10
;
4126 /* <var_tkwendnode18:nullable Object> isa nullable TKwend */
4127 cltype41
= type_nullable__nit__TKwend
.color
;
4128 idtype42
= type_nullable__nit__TKwend
.id
;
4129 if(var_tkwendnode18
== NULL
) {
4132 if(cltype41
>= var_tkwendnode18
->type
->table_size
) {
4135 var40
= var_tkwendnode18
->type
->type_table
[cltype41
] == idtype42
;
4138 if (unlikely(!var40
)) {
4139 PRINT_ERROR("Runtime error: %s", "Assert failed");
4140 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1808);
4143 var43
= NEW_nit__AStdClassdef(&type_nit__AStdClassdef
);
4146 nit__parser_prod___AStdClassdef___init_astdclassdef(var43
, var_pdocnode2
, var_tkwredefnode3
, var_pvisibilitynode4
, var_pclasskindnode5
, var_tclassidnode6
, var_listnode8
, var_pannotationsnode9
, var44
, var_listnode16
, var_listnode17
, var_tkwendnode18
); /* Direct call parser_prod#AStdClassdef#init_astdclassdef on <var43:AStdClassdef>*/
4148 var_pclassdefnode1
= var43
;
4149 var_node_list
= var_pclassdefnode1
;
4150 var45
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction27> */
4152 var46
= nit___nit__Parser___go_to(var_p
, var45
);
4155 nit___nit__Parser___push(var_p
, var46
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
4159 /* method parser#ReduceAction28#action for (self: ReduceAction28, Parser) */
4160 void nit__parser___nit__parser__ReduceAction28___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
4161 val
* var_p
/* var p: Parser */;
4162 val
* var
/* : null */;
4163 val
* var_node_list
/* var node_list: nullable Object */;
4164 val
* var1
/* : nullable Object */;
4165 val
* var_nodearraylist10
/* var nodearraylist10: nullable Object */;
4166 val
* var2
/* : nullable Object */;
4167 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
4168 val
* var3
/* : nullable Object */;
4169 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
4170 val
* var4
/* : nullable Object */;
4171 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
4172 val
* var5
/* : nullable Object */;
4173 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
4174 val
* var6
/* : nullable Object */;
4175 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
4176 val
* var7
/* : nullable Object */;
4177 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
4178 val
* var8
/* : nullable Object */;
4179 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
4180 val
* var9
/* : nullable Object */;
4181 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4182 val
* var10
/* : nullable Object */;
4183 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4184 val
* var11
/* : Array[Object] */;
4185 val
* var_listnode8
/* var listnode8: Array[Object] */;
4186 val
* var12
/* : Array[Object] */;
4187 val
* var_listnode11
/* var listnode11: Array[Object] */;
4188 val
* var13
/* : Array[Object] */;
4189 val
* var_listnode12
/* var listnode12: Array[Object] */;
4190 val
* var_pdocnode2
/* var pdocnode2: nullable Object */;
4191 short int var14
/* : Bool */;
4194 val
* var_tkwredefnode3
/* var tkwredefnode3: nullable Object */;
4195 short int var15
/* : Bool */;
4198 val
* var_pvisibilitynode4
/* var pvisibilitynode4: nullable Object */;
4199 short int var18
/* : Bool */;
4202 val
* var_pclasskindnode5
/* var pclasskindnode5: nullable Object */;
4203 short int var21
/* : Bool */;
4206 val
* var_tclassidnode6
/* var tclassidnode6: nullable Object */;
4207 short int var24
/* : Bool */;
4210 val
* var_listnode7
/* var listnode7: nullable Object */;
4211 short int var27
/* : Bool */;
4214 val
* var30
/* : Array[Object] */;
4215 val
* var_pexterncodeblocknode10
/* var pexterncodeblocknode10: nullable Object */;
4216 short int var31
/* : Bool */;
4219 val
* var_tkwendnode13
/* var tkwendnode13: nullable Object */;
4220 short int var34
/* : Bool */;
4223 val
* var37
/* : AStdClassdef */;
4224 val
* var38
/* : null */;
4225 val
* var_pclassdefnode1
/* var pclassdefnode1: nullable AStdClassdef */;
4226 long var39
/* : Int */;
4227 long var40
/* : Int */;
4230 var_node_list
= var
;
4232 var1
= nit___nit__Parser___pop(var_p
);
4234 var_nodearraylist10
= var1
;
4236 var2
= nit___nit__Parser___pop(var_p
);
4238 var_nodearraylist9
= var2
;
4240 var3
= nit___nit__Parser___pop(var_p
);
4242 var_nodearraylist8
= var3
;
4244 var4
= nit___nit__Parser___pop(var_p
);
4246 var_nodearraylist7
= var4
;
4248 var5
= nit___nit__Parser___pop(var_p
);
4250 var_nodearraylist6
= var5
;
4252 var6
= nit___nit__Parser___pop(var_p
);
4254 var_nodearraylist5
= var6
;
4256 var7
= nit___nit__Parser___pop(var_p
);
4258 var_nodearraylist4
= var7
;
4260 var8
= nit___nit__Parser___pop(var_p
);
4262 var_nodearraylist3
= var8
;
4264 var9
= nit___nit__Parser___pop(var_p
);
4266 var_nodearraylist2
= var9
;
4268 var10
= nit___nit__Parser___pop(var_p
);
4270 var_nodearraylist1
= var10
;
4271 var11
= NEW_standard__Array(&type_standard__Array__standard__Object
);
4273 standard___standard__Array___standard__kernel__Object__init(var11
); /* Direct call array#Array#init on <var11:Array[Object]>*/
4275 var_listnode8
= var11
;
4276 var12
= NEW_standard__Array(&type_standard__Array__standard__Object
);
4278 standard___standard__Array___standard__kernel__Object__init(var12
); /* Direct call array#Array#init on <var12:Array[Object]>*/
4280 var_listnode11
= var12
;
4281 var13
= NEW_standard__Array(&type_standard__Array__standard__Object
);
4283 standard___standard__Array___standard__kernel__Object__init(var13
); /* Direct call array#Array#init on <var13:Array[Object]>*/
4285 var_listnode12
= var13
;
4286 var_pdocnode2
= var_nodearraylist1
;
4287 /* <var_pdocnode2:nullable Object> isa nullable ADoc */
4288 cltype
= type_nullable__nit__ADoc
.color
;
4289 idtype
= type_nullable__nit__ADoc
.id
;
4290 if(var_pdocnode2
== NULL
) {
4293 if(cltype
>= var_pdocnode2
->type
->table_size
) {
4296 var14
= var_pdocnode2
->type
->type_table
[cltype
] == idtype
;
4299 if (unlikely(!var14
)) {
4300 PRINT_ERROR("Runtime error: %s", "Assert failed");
4301 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1845);
4304 var_tkwredefnode3
= var_nodearraylist2
;
4305 /* <var_tkwredefnode3:nullable Object> isa nullable TKwredef */
4306 cltype16
= type_nullable__nit__TKwredef
.color
;
4307 idtype17
= type_nullable__nit__TKwredef
.id
;
4308 if(var_tkwredefnode3
== NULL
) {
4311 if(cltype16
>= var_tkwredefnode3
->type
->table_size
) {
4314 var15
= var_tkwredefnode3
->type
->type_table
[cltype16
] == idtype17
;
4317 if (unlikely(!var15
)) {
4318 PRINT_ERROR("Runtime error: %s", "Assert failed");
4319 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1847);
4322 var_pvisibilitynode4
= var_nodearraylist3
;
4323 /* <var_pvisibilitynode4:nullable Object> isa nullable AVisibility */
4324 cltype19
= type_nullable__nit__AVisibility
.color
;
4325 idtype20
= type_nullable__nit__AVisibility
.id
;
4326 if(var_pvisibilitynode4
== NULL
) {
4329 if(cltype19
>= var_pvisibilitynode4
->type
->table_size
) {
4332 var18
= var_pvisibilitynode4
->type
->type_table
[cltype19
] == idtype20
;
4335 if (unlikely(!var18
)) {
4336 PRINT_ERROR("Runtime error: %s", "Assert failed");
4337 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1849);
4340 var_pclasskindnode5
= var_nodearraylist4
;
4341 /* <var_pclasskindnode5:nullable Object> isa nullable AClasskind */
4342 cltype22
= type_nullable__nit__AClasskind
.color
;
4343 idtype23
= type_nullable__nit__AClasskind
.id
;
4344 if(var_pclasskindnode5
== NULL
) {
4347 if(cltype22
>= var_pclasskindnode5
->type
->table_size
) {
4350 var21
= var_pclasskindnode5
->type
->type_table
[cltype22
] == idtype23
;
4353 if (unlikely(!var21
)) {
4354 PRINT_ERROR("Runtime error: %s", "Assert failed");
4355 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1851);
4358 var_tclassidnode6
= var_nodearraylist6
;
4359 /* <var_tclassidnode6:nullable Object> isa nullable TClassid */
4360 cltype25
= type_nullable__nit__TClassid
.color
;
4361 idtype26
= type_nullable__nit__TClassid
.id
;
4362 if(var_tclassidnode6
== NULL
) {
4365 if(cltype25
>= var_tclassidnode6
->type
->table_size
) {
4368 var24
= var_tclassidnode6
->type
->type_table
[cltype25
] == idtype26
;
4371 if (unlikely(!var24
)) {
4372 PRINT_ERROR("Runtime error: %s", "Assert failed");
4373 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1853);
4376 var_listnode7
= var_nodearraylist7
;
4377 /* <var_listnode7:nullable Object> isa Array[Object] */
4378 cltype28
= type_standard__Array__standard__Object
.color
;
4379 idtype29
= type_standard__Array__standard__Object
.id
;
4380 if(var_listnode7
== NULL
) {
4383 if(cltype28
>= var_listnode7
->type
->table_size
) {
4386 var27
= var_listnode7
->type
->type_table
[cltype28
] == idtype29
;
4389 if (unlikely(!var27
)) {
4390 PRINT_ERROR("Runtime error: %s", "Assert failed");
4391 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1855);
4395 var30
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode8
, var_listnode7
);
4397 var_listnode8
= var30
;
4398 var_pexterncodeblocknode10
= var_nodearraylist8
;
4399 /* <var_pexterncodeblocknode10:nullable Object> isa nullable AExternCodeBlock */
4400 cltype32
= type_nullable__nit__AExternCodeBlock
.color
;
4401 idtype33
= type_nullable__nit__AExternCodeBlock
.id
;
4402 if(var_pexterncodeblocknode10
== NULL
) {
4405 if(cltype32
>= var_pexterncodeblocknode10
->type
->table_size
) {
4408 var31
= var_pexterncodeblocknode10
->type
->type_table
[cltype32
] == idtype33
;
4411 if (unlikely(!var31
)) {
4412 PRINT_ERROR("Runtime error: %s", "Assert failed");
4413 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1858);
4416 var_tkwendnode13
= var_nodearraylist10
;
4417 /* <var_tkwendnode13:nullable Object> isa nullable TKwend */
4418 cltype35
= type_nullable__nit__TKwend
.color
;
4419 idtype36
= type_nullable__nit__TKwend
.id
;
4420 if(var_tkwendnode13
== NULL
) {
4423 if(cltype35
>= var_tkwendnode13
->type
->table_size
) {
4426 var34
= var_tkwendnode13
->type
->type_table
[cltype35
] == idtype36
;
4429 if (unlikely(!var34
)) {
4430 PRINT_ERROR("Runtime error: %s", "Assert failed");
4431 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1860);
4434 var37
= NEW_nit__AStdClassdef(&type_nit__AStdClassdef
);
4437 nit__parser_prod___AStdClassdef___init_astdclassdef(var37
, var_pdocnode2
, var_tkwredefnode3
, var_pvisibilitynode4
, var_pclasskindnode5
, var_tclassidnode6
, var_listnode8
, var38
, var_pexterncodeblocknode10
, var_listnode11
, var_listnode12
, var_tkwendnode13
); /* Direct call parser_prod#AStdClassdef#init_astdclassdef on <var37:AStdClassdef>*/
4439 var_pclassdefnode1
= var37
;
4440 var_node_list
= var_pclassdefnode1
;
4441 var39
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction28> */
4443 var40
= nit___nit__Parser___go_to(var_p
, var39
);
4446 nit___nit__Parser___push(var_p
, var40
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
4450 /* method parser#ReduceAction29#action for (self: ReduceAction29, Parser) */
4451 void nit__parser___nit__parser__ReduceAction29___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
4452 val
* var_p
/* var p: Parser */;
4453 val
* var
/* : null */;
4454 val
* var_node_list
/* var node_list: nullable Object */;
4455 val
* var1
/* : nullable Object */;
4456 val
* var_nodearraylist11
/* var nodearraylist11: nullable Object */;
4457 val
* var2
/* : nullable Object */;
4458 val
* var_nodearraylist10
/* var nodearraylist10: nullable Object */;
4459 val
* var3
/* : nullable Object */;
4460 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
4461 val
* var4
/* : nullable Object */;
4462 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
4463 val
* var5
/* : nullable Object */;
4464 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
4465 val
* var6
/* : nullable Object */;
4466 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
4467 val
* var7
/* : nullable Object */;
4468 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
4469 val
* var8
/* : nullable Object */;
4470 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
4471 val
* var9
/* : nullable Object */;
4472 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
4473 val
* var10
/* : nullable Object */;
4474 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4475 val
* var11
/* : nullable Object */;
4476 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4477 val
* var12
/* : Array[Object] */;
4478 val
* var_listnode8
/* var listnode8: Array[Object] */;
4479 val
* var13
/* : Array[Object] */;
4480 val
* var_listnode16
/* var listnode16: Array[Object] */;
4481 val
* var14
/* : Array[Object] */;
4482 val
* var_listnode17
/* var listnode17: Array[Object] */;
4483 val
* var_pdocnode2
/* var pdocnode2: nullable Object */;
4484 short int var15
/* : Bool */;
4487 val
* var_tkwredefnode3
/* var tkwredefnode3: nullable Object */;
4488 short int var16
/* : Bool */;
4491 val
* var_pvisibilitynode4
/* var pvisibilitynode4: nullable Object */;
4492 short int var19
/* : Bool */;
4495 val
* var_pclasskindnode5
/* var pclasskindnode5: nullable Object */;
4496 short int var22
/* : Bool */;
4499 val
* var_tclassidnode6
/* var tclassidnode6: nullable Object */;
4500 short int var25
/* : Bool */;
4503 val
* var_listnode7
/* var listnode7: nullable Object */;
4504 short int var28
/* : Bool */;
4507 val
* var31
/* : Array[Object] */;
4508 val
* var32
/* : Array[Object] */;
4509 val
* var_listnode13
/* var listnode13: Array[Object] */;
4510 val
* var_listnode12
/* var listnode12: nullable Object */;
4511 short int var33
/* : Bool */;
4514 val
* var36
/* : Array[Object] */;
4515 val
* var37
/* : AAnnotations */;
4516 val
* var38
/* : null */;
4517 val
* var39
/* : null */;
4518 val
* var40
/* : null */;
4519 val
* var_pannotationsnode9
/* var pannotationsnode9: nullable AAnnotations */;
4520 val
* var_pexterncodeblocknode15
/* var pexterncodeblocknode15: nullable Object */;
4521 short int var41
/* : Bool */;
4524 val
* var_tkwendnode18
/* var tkwendnode18: nullable Object */;
4525 short int var44
/* : Bool */;
4528 val
* var47
/* : AStdClassdef */;
4529 val
* var_pclassdefnode1
/* var pclassdefnode1: nullable AStdClassdef */;
4530 long var48
/* : Int */;
4531 long var49
/* : Int */;
4534 var_node_list
= var
;
4536 var1
= nit___nit__Parser___pop(var_p
);
4538 var_nodearraylist11
= var1
;
4540 var2
= nit___nit__Parser___pop(var_p
);
4542 var_nodearraylist10
= var2
;
4544 var3
= nit___nit__Parser___pop(var_p
);
4546 var_nodearraylist9
= var3
;
4548 var4
= nit___nit__Parser___pop(var_p
);
4550 var_nodearraylist8
= var4
;
4552 var5
= nit___nit__Parser___pop(var_p
);
4554 var_nodearraylist7
= var5
;
4556 var6
= nit___nit__Parser___pop(var_p
);
4558 var_nodearraylist6
= var6
;
4560 var7
= nit___nit__Parser___pop(var_p
);
4562 var_nodearraylist5
= var7
;
4564 var8
= nit___nit__Parser___pop(var_p
);
4566 var_nodearraylist4
= var8
;
4568 var9
= nit___nit__Parser___pop(var_p
);
4570 var_nodearraylist3
= var9
;
4572 var10
= nit___nit__Parser___pop(var_p
);
4574 var_nodearraylist2
= var10
;
4576 var11
= nit___nit__Parser___pop(var_p
);
4578 var_nodearraylist1
= var11
;
4579 var12
= NEW_standard__Array(&type_standard__Array__standard__Object
);
4581 standard___standard__Array___standard__kernel__Object__init(var12
); /* Direct call array#Array#init on <var12:Array[Object]>*/
4583 var_listnode8
= var12
;
4584 var13
= NEW_standard__Array(&type_standard__Array__standard__Object
);
4586 standard___standard__Array___standard__kernel__Object__init(var13
); /* Direct call array#Array#init on <var13:Array[Object]>*/
4588 var_listnode16
= var13
;
4589 var14
= NEW_standard__Array(&type_standard__Array__standard__Object
);
4591 standard___standard__Array___standard__kernel__Object__init(var14
); /* Direct call array#Array#init on <var14:Array[Object]>*/
4593 var_listnode17
= var14
;
4594 var_pdocnode2
= var_nodearraylist1
;
4595 /* <var_pdocnode2:nullable Object> isa nullable ADoc */
4596 cltype
= type_nullable__nit__ADoc
.color
;
4597 idtype
= type_nullable__nit__ADoc
.id
;
4598 if(var_pdocnode2
== NULL
) {
4601 if(cltype
>= var_pdocnode2
->type
->table_size
) {
4604 var15
= var_pdocnode2
->type
->type_table
[cltype
] == idtype
;
4607 if (unlikely(!var15
)) {
4608 PRINT_ERROR("Runtime error: %s", "Assert failed");
4609 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1898);
4612 var_tkwredefnode3
= var_nodearraylist2
;
4613 /* <var_tkwredefnode3:nullable Object> isa nullable TKwredef */
4614 cltype17
= type_nullable__nit__TKwredef
.color
;
4615 idtype18
= type_nullable__nit__TKwredef
.id
;
4616 if(var_tkwredefnode3
== NULL
) {
4619 if(cltype17
>= var_tkwredefnode3
->type
->table_size
) {
4622 var16
= var_tkwredefnode3
->type
->type_table
[cltype17
] == idtype18
;
4625 if (unlikely(!var16
)) {
4626 PRINT_ERROR("Runtime error: %s", "Assert failed");
4627 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1900);
4630 var_pvisibilitynode4
= var_nodearraylist3
;
4631 /* <var_pvisibilitynode4:nullable Object> isa nullable AVisibility */
4632 cltype20
= type_nullable__nit__AVisibility
.color
;
4633 idtype21
= type_nullable__nit__AVisibility
.id
;
4634 if(var_pvisibilitynode4
== NULL
) {
4637 if(cltype20
>= var_pvisibilitynode4
->type
->table_size
) {
4640 var19
= var_pvisibilitynode4
->type
->type_table
[cltype20
] == idtype21
;
4643 if (unlikely(!var19
)) {
4644 PRINT_ERROR("Runtime error: %s", "Assert failed");
4645 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1902);
4648 var_pclasskindnode5
= var_nodearraylist4
;
4649 /* <var_pclasskindnode5:nullable Object> isa nullable AClasskind */
4650 cltype23
= type_nullable__nit__AClasskind
.color
;
4651 idtype24
= type_nullable__nit__AClasskind
.id
;
4652 if(var_pclasskindnode5
== NULL
) {
4655 if(cltype23
>= var_pclasskindnode5
->type
->table_size
) {
4658 var22
= var_pclasskindnode5
->type
->type_table
[cltype23
] == idtype24
;
4661 if (unlikely(!var22
)) {
4662 PRINT_ERROR("Runtime error: %s", "Assert failed");
4663 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1904);
4666 var_tclassidnode6
= var_nodearraylist6
;
4667 /* <var_tclassidnode6:nullable Object> isa nullable TClassid */
4668 cltype26
= type_nullable__nit__TClassid
.color
;
4669 idtype27
= type_nullable__nit__TClassid
.id
;
4670 if(var_tclassidnode6
== NULL
) {
4673 if(cltype26
>= var_tclassidnode6
->type
->table_size
) {
4676 var25
= var_tclassidnode6
->type
->type_table
[cltype26
] == idtype27
;
4679 if (unlikely(!var25
)) {
4680 PRINT_ERROR("Runtime error: %s", "Assert failed");
4681 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1906);
4684 var_listnode7
= var_nodearraylist7
;
4685 /* <var_listnode7:nullable Object> isa Array[Object] */
4686 cltype29
= type_standard__Array__standard__Object
.color
;
4687 idtype30
= type_standard__Array__standard__Object
.id
;
4688 if(var_listnode7
== NULL
) {
4691 if(cltype29
>= var_listnode7
->type
->table_size
) {
4694 var28
= var_listnode7
->type
->type_table
[cltype29
] == idtype30
;
4697 if (unlikely(!var28
)) {
4698 PRINT_ERROR("Runtime error: %s", "Assert failed");
4699 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1908);
4703 var31
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode8
, var_listnode7
);
4705 var_listnode8
= var31
;
4706 var32
= NEW_standard__Array(&type_standard__Array__standard__Object
);
4708 standard___standard__Array___standard__kernel__Object__init(var32
); /* Direct call array#Array#init on <var32:Array[Object]>*/
4710 var_listnode13
= var32
;
4711 var_listnode12
= var_nodearraylist8
;
4712 /* <var_listnode12:nullable Object> isa Array[Object] */
4713 cltype34
= type_standard__Array__standard__Object
.color
;
4714 idtype35
= type_standard__Array__standard__Object
.id
;
4715 if(var_listnode12
== NULL
) {
4718 if(cltype34
>= var_listnode12
->type
->table_size
) {
4721 var33
= var_listnode12
->type
->type_table
[cltype34
] == idtype35
;
4724 if (unlikely(!var33
)) {
4725 PRINT_ERROR("Runtime error: %s", "Assert failed");
4726 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1912);
4730 var36
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode13
, var_listnode12
);
4732 var_listnode13
= var36
;
4733 var37
= NEW_nit__AAnnotations(&type_nit__AAnnotations
);
4738 nit__parser_prod___AAnnotations___init_aannotations(var37
, var38
, var39
, var_listnode13
, var40
); /* Direct call parser_prod#AAnnotations#init_aannotations on <var37:AAnnotations>*/
4740 var_pannotationsnode9
= var37
;
4741 var_pexterncodeblocknode15
= var_nodearraylist9
;
4742 /* <var_pexterncodeblocknode15:nullable Object> isa nullable AExternCodeBlock */
4743 cltype42
= type_nullable__nit__AExternCodeBlock
.color
;
4744 idtype43
= type_nullable__nit__AExternCodeBlock
.id
;
4745 if(var_pexterncodeblocknode15
== NULL
) {
4748 if(cltype42
>= var_pexterncodeblocknode15
->type
->table_size
) {
4751 var41
= var_pexterncodeblocknode15
->type
->type_table
[cltype42
] == idtype43
;
4754 if (unlikely(!var41
)) {
4755 PRINT_ERROR("Runtime error: %s", "Assert failed");
4756 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1921);
4759 var_tkwendnode18
= var_nodearraylist11
;
4760 /* <var_tkwendnode18:nullable Object> isa nullable TKwend */
4761 cltype45
= type_nullable__nit__TKwend
.color
;
4762 idtype46
= type_nullable__nit__TKwend
.id
;
4763 if(var_tkwendnode18
== NULL
) {
4766 if(cltype45
>= var_tkwendnode18
->type
->table_size
) {
4769 var44
= var_tkwendnode18
->type
->type_table
[cltype45
] == idtype46
;
4772 if (unlikely(!var44
)) {
4773 PRINT_ERROR("Runtime error: %s", "Assert failed");
4774 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1923);
4777 var47
= NEW_nit__AStdClassdef(&type_nit__AStdClassdef
);
4779 nit__parser_prod___AStdClassdef___init_astdclassdef(var47
, var_pdocnode2
, var_tkwredefnode3
, var_pvisibilitynode4
, var_pclasskindnode5
, var_tclassidnode6
, var_listnode8
, var_pannotationsnode9
, var_pexterncodeblocknode15
, var_listnode16
, var_listnode17
, var_tkwendnode18
); /* Direct call parser_prod#AStdClassdef#init_astdclassdef on <var47:AStdClassdef>*/
4781 var_pclassdefnode1
= var47
;
4782 var_node_list
= var_pclassdefnode1
;
4783 var48
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction29> */
4785 var49
= nit___nit__Parser___go_to(var_p
, var48
);
4788 nit___nit__Parser___push(var_p
, var49
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
4792 /* method parser#ReduceAction30#action for (self: ReduceAction30, Parser) */
4793 void nit__parser___nit__parser__ReduceAction30___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
4794 val
* var_p
/* var p: Parser */;
4795 val
* var
/* : null */;
4796 val
* var_node_list
/* var node_list: nullable Object */;
4797 val
* var1
/* : nullable Object */;
4798 val
* var_nodearraylist10
/* var nodearraylist10: nullable Object */;
4799 val
* var2
/* : nullable Object */;
4800 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
4801 val
* var3
/* : nullable Object */;
4802 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
4803 val
* var4
/* : nullable Object */;
4804 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
4805 val
* var5
/* : nullable Object */;
4806 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
4807 val
* var6
/* : nullable Object */;
4808 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
4809 val
* var7
/* : nullable Object */;
4810 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
4811 val
* var8
/* : nullable Object */;
4812 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
4813 val
* var9
/* : nullable Object */;
4814 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4815 val
* var10
/* : nullable Object */;
4816 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4817 val
* var11
/* : Array[Object] */;
4818 val
* var_listnode8
/* var listnode8: Array[Object] */;
4819 val
* var12
/* : Array[Object] */;
4820 val
* var_listnode12
/* var listnode12: Array[Object] */;
4821 val
* var13
/* : Array[Object] */;
4822 val
* var_listnode13
/* var listnode13: Array[Object] */;
4823 val
* var_pdocnode2
/* var pdocnode2: nullable Object */;
4824 short int var14
/* : Bool */;
4827 val
* var_tkwredefnode3
/* var tkwredefnode3: nullable Object */;
4828 short int var15
/* : Bool */;
4831 val
* var_pvisibilitynode4
/* var pvisibilitynode4: nullable Object */;
4832 short int var18
/* : Bool */;
4835 val
* var_pclasskindnode5
/* var pclasskindnode5: nullable Object */;
4836 short int var21
/* : Bool */;
4839 val
* var_tclassidnode6
/* var tclassidnode6: nullable Object */;
4840 short int var24
/* : Bool */;
4843 val
* var_listnode7
/* var listnode7: nullable Object */;
4844 short int var27
/* : Bool */;
4847 val
* var30
/* : Array[Object] */;
4848 val
* var_listnode11
/* var listnode11: nullable Object */;
4849 short int var31
/* : Bool */;
4852 val
* var34
/* : Array[Object] */;
4853 val
* var_tkwendnode14
/* var tkwendnode14: nullable Object */;
4854 short int var35
/* : Bool */;
4857 val
* var38
/* : AStdClassdef */;
4858 val
* var39
/* : null */;
4859 val
* var40
/* : null */;
4860 val
* var_pclassdefnode1
/* var pclassdefnode1: nullable AStdClassdef */;
4861 long var41
/* : Int */;
4862 long var42
/* : Int */;
4865 var_node_list
= var
;
4867 var1
= nit___nit__Parser___pop(var_p
);
4869 var_nodearraylist10
= var1
;
4871 var2
= nit___nit__Parser___pop(var_p
);
4873 var_nodearraylist9
= var2
;
4875 var3
= nit___nit__Parser___pop(var_p
);
4877 var_nodearraylist8
= var3
;
4879 var4
= nit___nit__Parser___pop(var_p
);
4881 var_nodearraylist7
= var4
;
4883 var5
= nit___nit__Parser___pop(var_p
);
4885 var_nodearraylist6
= var5
;
4887 var6
= nit___nit__Parser___pop(var_p
);
4889 var_nodearraylist5
= var6
;
4891 var7
= nit___nit__Parser___pop(var_p
);
4893 var_nodearraylist4
= var7
;
4895 var8
= nit___nit__Parser___pop(var_p
);
4897 var_nodearraylist3
= var8
;
4899 var9
= nit___nit__Parser___pop(var_p
);
4901 var_nodearraylist2
= var9
;
4903 var10
= nit___nit__Parser___pop(var_p
);
4905 var_nodearraylist1
= var10
;
4906 var11
= NEW_standard__Array(&type_standard__Array__standard__Object
);
4908 standard___standard__Array___standard__kernel__Object__init(var11
); /* Direct call array#Array#init on <var11:Array[Object]>*/
4910 var_listnode8
= var11
;
4911 var12
= NEW_standard__Array(&type_standard__Array__standard__Object
);
4913 standard___standard__Array___standard__kernel__Object__init(var12
); /* Direct call array#Array#init on <var12:Array[Object]>*/
4915 var_listnode12
= var12
;
4916 var13
= NEW_standard__Array(&type_standard__Array__standard__Object
);
4918 standard___standard__Array___standard__kernel__Object__init(var13
); /* Direct call array#Array#init on <var13:Array[Object]>*/
4920 var_listnode13
= var13
;
4921 var_pdocnode2
= var_nodearraylist1
;
4922 /* <var_pdocnode2:nullable Object> isa nullable ADoc */
4923 cltype
= type_nullable__nit__ADoc
.color
;
4924 idtype
= type_nullable__nit__ADoc
.id
;
4925 if(var_pdocnode2
== NULL
) {
4928 if(cltype
>= var_pdocnode2
->type
->table_size
) {
4931 var14
= var_pdocnode2
->type
->type_table
[cltype
] == idtype
;
4934 if (unlikely(!var14
)) {
4935 PRINT_ERROR("Runtime error: %s", "Assert failed");
4936 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1960);
4939 var_tkwredefnode3
= var_nodearraylist2
;
4940 /* <var_tkwredefnode3:nullable Object> isa nullable TKwredef */
4941 cltype16
= type_nullable__nit__TKwredef
.color
;
4942 idtype17
= type_nullable__nit__TKwredef
.id
;
4943 if(var_tkwredefnode3
== NULL
) {
4946 if(cltype16
>= var_tkwredefnode3
->type
->table_size
) {
4949 var15
= var_tkwredefnode3
->type
->type_table
[cltype16
] == idtype17
;
4952 if (unlikely(!var15
)) {
4953 PRINT_ERROR("Runtime error: %s", "Assert failed");
4954 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1962);
4957 var_pvisibilitynode4
= var_nodearraylist3
;
4958 /* <var_pvisibilitynode4:nullable Object> isa nullable AVisibility */
4959 cltype19
= type_nullable__nit__AVisibility
.color
;
4960 idtype20
= type_nullable__nit__AVisibility
.id
;
4961 if(var_pvisibilitynode4
== NULL
) {
4964 if(cltype19
>= var_pvisibilitynode4
->type
->table_size
) {
4967 var18
= var_pvisibilitynode4
->type
->type_table
[cltype19
] == idtype20
;
4970 if (unlikely(!var18
)) {
4971 PRINT_ERROR("Runtime error: %s", "Assert failed");
4972 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1964);
4975 var_pclasskindnode5
= var_nodearraylist4
;
4976 /* <var_pclasskindnode5:nullable Object> isa nullable AClasskind */
4977 cltype22
= type_nullable__nit__AClasskind
.color
;
4978 idtype23
= type_nullable__nit__AClasskind
.id
;
4979 if(var_pclasskindnode5
== NULL
) {
4982 if(cltype22
>= var_pclasskindnode5
->type
->table_size
) {
4985 var21
= var_pclasskindnode5
->type
->type_table
[cltype22
] == idtype23
;
4988 if (unlikely(!var21
)) {
4989 PRINT_ERROR("Runtime error: %s", "Assert failed");
4990 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1966);
4993 var_tclassidnode6
= var_nodearraylist6
;
4994 /* <var_tclassidnode6:nullable Object> isa nullable TClassid */
4995 cltype25
= type_nullable__nit__TClassid
.color
;
4996 idtype26
= type_nullable__nit__TClassid
.id
;
4997 if(var_tclassidnode6
== NULL
) {
5000 if(cltype25
>= var_tclassidnode6
->type
->table_size
) {
5003 var24
= var_tclassidnode6
->type
->type_table
[cltype25
] == idtype26
;
5006 if (unlikely(!var24
)) {
5007 PRINT_ERROR("Runtime error: %s", "Assert failed");
5008 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1968);
5011 var_listnode7
= var_nodearraylist7
;
5012 /* <var_listnode7:nullable Object> isa Array[Object] */
5013 cltype28
= type_standard__Array__standard__Object
.color
;
5014 idtype29
= type_standard__Array__standard__Object
.id
;
5015 if(var_listnode7
== NULL
) {
5018 if(cltype28
>= var_listnode7
->type
->table_size
) {
5021 var27
= var_listnode7
->type
->type_table
[cltype28
] == idtype29
;
5024 if (unlikely(!var27
)) {
5025 PRINT_ERROR("Runtime error: %s", "Assert failed");
5026 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1970);
5030 var30
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode8
, var_listnode7
);
5032 var_listnode8
= var30
;
5033 var_listnode11
= var_nodearraylist8
;
5034 /* <var_listnode11:nullable Object> isa Array[Object] */
5035 cltype32
= type_standard__Array__standard__Object
.color
;
5036 idtype33
= type_standard__Array__standard__Object
.id
;
5037 if(var_listnode11
== NULL
) {
5040 if(cltype32
>= var_listnode11
->type
->table_size
) {
5043 var31
= var_listnode11
->type
->type_table
[cltype32
] == idtype33
;
5046 if (unlikely(!var31
)) {
5047 PRINT_ERROR("Runtime error: %s", "Assert failed");
5048 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1973);
5052 var34
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode12
, var_listnode11
);
5054 var_listnode12
= var34
;
5055 var_tkwendnode14
= var_nodearraylist10
;
5056 /* <var_tkwendnode14:nullable Object> isa nullable TKwend */
5057 cltype36
= type_nullable__nit__TKwend
.color
;
5058 idtype37
= type_nullable__nit__TKwend
.id
;
5059 if(var_tkwendnode14
== NULL
) {
5062 if(cltype36
>= var_tkwendnode14
->type
->table_size
) {
5065 var35
= var_tkwendnode14
->type
->type_table
[cltype36
] == idtype37
;
5068 if (unlikely(!var35
)) {
5069 PRINT_ERROR("Runtime error: %s", "Assert failed");
5070 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1976);
5073 var38
= NEW_nit__AStdClassdef(&type_nit__AStdClassdef
);
5077 nit__parser_prod___AStdClassdef___init_astdclassdef(var38
, var_pdocnode2
, var_tkwredefnode3
, var_pvisibilitynode4
, var_pclasskindnode5
, var_tclassidnode6
, var_listnode8
, var39
, var40
, var_listnode12
, var_listnode13
, var_tkwendnode14
); /* Direct call parser_prod#AStdClassdef#init_astdclassdef on <var38:AStdClassdef>*/
5079 var_pclassdefnode1
= var38
;
5080 var_node_list
= var_pclassdefnode1
;
5081 var41
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction30> */
5083 var42
= nit___nit__Parser___go_to(var_p
, var41
);
5086 nit___nit__Parser___push(var_p
, var42
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
5090 /* method parser#ReduceAction31#action for (self: ReduceAction31, Parser) */
5091 void nit__parser___nit__parser__ReduceAction31___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
5092 val
* var_p
/* var p: Parser */;
5093 val
* var
/* : null */;
5094 val
* var_node_list
/* var node_list: nullable Object */;
5095 val
* var1
/* : nullable Object */;
5096 val
* var_nodearraylist11
/* var nodearraylist11: nullable Object */;
5097 val
* var2
/* : nullable Object */;
5098 val
* var_nodearraylist10
/* var nodearraylist10: nullable Object */;
5099 val
* var3
/* : nullable Object */;
5100 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
5101 val
* var4
/* : nullable Object */;
5102 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
5103 val
* var5
/* : nullable Object */;
5104 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
5105 val
* var6
/* : nullable Object */;
5106 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
5107 val
* var7
/* : nullable Object */;
5108 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
5109 val
* var8
/* : nullable Object */;
5110 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
5111 val
* var9
/* : nullable Object */;
5112 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
5113 val
* var10
/* : nullable Object */;
5114 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5115 val
* var11
/* : nullable Object */;
5116 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5117 val
* var12
/* : Array[Object] */;
5118 val
* var_listnode8
/* var listnode8: Array[Object] */;
5119 val
* var13
/* : Array[Object] */;
5120 val
* var_listnode17
/* var listnode17: Array[Object] */;
5121 val
* var14
/* : Array[Object] */;
5122 val
* var_listnode18
/* var listnode18: Array[Object] */;
5123 val
* var_pdocnode2
/* var pdocnode2: nullable Object */;
5124 short int var15
/* : Bool */;
5127 val
* var_tkwredefnode3
/* var tkwredefnode3: nullable Object */;
5128 short int var16
/* : Bool */;
5131 val
* var_pvisibilitynode4
/* var pvisibilitynode4: nullable Object */;
5132 short int var19
/* : Bool */;
5135 val
* var_pclasskindnode5
/* var pclasskindnode5: nullable Object */;
5136 short int var22
/* : Bool */;
5139 val
* var_tclassidnode6
/* var tclassidnode6: nullable Object */;
5140 short int var25
/* : Bool */;
5143 val
* var_listnode7
/* var listnode7: nullable Object */;
5144 short int var28
/* : Bool */;
5147 val
* var31
/* : Array[Object] */;
5148 val
* var32
/* : Array[Object] */;
5149 val
* var_listnode13
/* var listnode13: Array[Object] */;
5150 val
* var_listnode12
/* var listnode12: nullable Object */;
5151 short int var33
/* : Bool */;
5154 val
* var36
/* : Array[Object] */;
5155 val
* var37
/* : AAnnotations */;
5156 val
* var38
/* : null */;
5157 val
* var39
/* : null */;
5158 val
* var40
/* : null */;
5159 val
* var_pannotationsnode9
/* var pannotationsnode9: nullable AAnnotations */;
5160 val
* var_listnode16
/* var listnode16: nullable Object */;
5161 short int var41
/* : Bool */;
5164 val
* var44
/* : Array[Object] */;
5165 val
* var_tkwendnode19
/* var tkwendnode19: nullable Object */;
5166 short int var45
/* : Bool */;
5169 val
* var48
/* : AStdClassdef */;
5170 val
* var49
/* : null */;
5171 val
* var_pclassdefnode1
/* var pclassdefnode1: nullable AStdClassdef */;
5172 long var50
/* : Int */;
5173 long var51
/* : Int */;
5176 var_node_list
= var
;
5178 var1
= nit___nit__Parser___pop(var_p
);
5180 var_nodearraylist11
= var1
;
5182 var2
= nit___nit__Parser___pop(var_p
);
5184 var_nodearraylist10
= var2
;
5186 var3
= nit___nit__Parser___pop(var_p
);
5188 var_nodearraylist9
= var3
;
5190 var4
= nit___nit__Parser___pop(var_p
);
5192 var_nodearraylist8
= var4
;
5194 var5
= nit___nit__Parser___pop(var_p
);
5196 var_nodearraylist7
= var5
;
5198 var6
= nit___nit__Parser___pop(var_p
);
5200 var_nodearraylist6
= var6
;
5202 var7
= nit___nit__Parser___pop(var_p
);
5204 var_nodearraylist5
= var7
;
5206 var8
= nit___nit__Parser___pop(var_p
);
5208 var_nodearraylist4
= var8
;
5210 var9
= nit___nit__Parser___pop(var_p
);
5212 var_nodearraylist3
= var9
;
5214 var10
= nit___nit__Parser___pop(var_p
);
5216 var_nodearraylist2
= var10
;
5218 var11
= nit___nit__Parser___pop(var_p
);
5220 var_nodearraylist1
= var11
;
5221 var12
= NEW_standard__Array(&type_standard__Array__standard__Object
);
5223 standard___standard__Array___standard__kernel__Object__init(var12
); /* Direct call array#Array#init on <var12:Array[Object]>*/
5225 var_listnode8
= var12
;
5226 var13
= NEW_standard__Array(&type_standard__Array__standard__Object
);
5228 standard___standard__Array___standard__kernel__Object__init(var13
); /* Direct call array#Array#init on <var13:Array[Object]>*/
5230 var_listnode17
= var13
;
5231 var14
= NEW_standard__Array(&type_standard__Array__standard__Object
);
5233 standard___standard__Array___standard__kernel__Object__init(var14
); /* Direct call array#Array#init on <var14:Array[Object]>*/
5235 var_listnode18
= var14
;
5236 var_pdocnode2
= var_nodearraylist1
;
5237 /* <var_pdocnode2:nullable Object> isa nullable ADoc */
5238 cltype
= type_nullable__nit__ADoc
.color
;
5239 idtype
= type_nullable__nit__ADoc
.id
;
5240 if(var_pdocnode2
== NULL
) {
5243 if(cltype
>= var_pdocnode2
->type
->table_size
) {
5246 var15
= var_pdocnode2
->type
->type_table
[cltype
] == idtype
;
5249 if (unlikely(!var15
)) {
5250 PRINT_ERROR("Runtime error: %s", "Assert failed");
5251 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2014);
5254 var_tkwredefnode3
= var_nodearraylist2
;
5255 /* <var_tkwredefnode3:nullable Object> isa nullable TKwredef */
5256 cltype17
= type_nullable__nit__TKwredef
.color
;
5257 idtype18
= type_nullable__nit__TKwredef
.id
;
5258 if(var_tkwredefnode3
== NULL
) {
5261 if(cltype17
>= var_tkwredefnode3
->type
->table_size
) {
5264 var16
= var_tkwredefnode3
->type
->type_table
[cltype17
] == idtype18
;
5267 if (unlikely(!var16
)) {
5268 PRINT_ERROR("Runtime error: %s", "Assert failed");
5269 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2016);
5272 var_pvisibilitynode4
= var_nodearraylist3
;
5273 /* <var_pvisibilitynode4:nullable Object> isa nullable AVisibility */
5274 cltype20
= type_nullable__nit__AVisibility
.color
;
5275 idtype21
= type_nullable__nit__AVisibility
.id
;
5276 if(var_pvisibilitynode4
== NULL
) {
5279 if(cltype20
>= var_pvisibilitynode4
->type
->table_size
) {
5282 var19
= var_pvisibilitynode4
->type
->type_table
[cltype20
] == idtype21
;
5285 if (unlikely(!var19
)) {
5286 PRINT_ERROR("Runtime error: %s", "Assert failed");
5287 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2018);
5290 var_pclasskindnode5
= var_nodearraylist4
;
5291 /* <var_pclasskindnode5:nullable Object> isa nullable AClasskind */
5292 cltype23
= type_nullable__nit__AClasskind
.color
;
5293 idtype24
= type_nullable__nit__AClasskind
.id
;
5294 if(var_pclasskindnode5
== NULL
) {
5297 if(cltype23
>= var_pclasskindnode5
->type
->table_size
) {
5300 var22
= var_pclasskindnode5
->type
->type_table
[cltype23
] == idtype24
;
5303 if (unlikely(!var22
)) {
5304 PRINT_ERROR("Runtime error: %s", "Assert failed");
5305 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2020);
5308 var_tclassidnode6
= var_nodearraylist6
;
5309 /* <var_tclassidnode6:nullable Object> isa nullable TClassid */
5310 cltype26
= type_nullable__nit__TClassid
.color
;
5311 idtype27
= type_nullable__nit__TClassid
.id
;
5312 if(var_tclassidnode6
== NULL
) {
5315 if(cltype26
>= var_tclassidnode6
->type
->table_size
) {
5318 var25
= var_tclassidnode6
->type
->type_table
[cltype26
] == idtype27
;
5321 if (unlikely(!var25
)) {
5322 PRINT_ERROR("Runtime error: %s", "Assert failed");
5323 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2022);
5326 var_listnode7
= var_nodearraylist7
;
5327 /* <var_listnode7:nullable Object> isa Array[Object] */
5328 cltype29
= type_standard__Array__standard__Object
.color
;
5329 idtype30
= type_standard__Array__standard__Object
.id
;
5330 if(var_listnode7
== NULL
) {
5333 if(cltype29
>= var_listnode7
->type
->table_size
) {
5336 var28
= var_listnode7
->type
->type_table
[cltype29
] == idtype30
;
5339 if (unlikely(!var28
)) {
5340 PRINT_ERROR("Runtime error: %s", "Assert failed");
5341 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2024);
5345 var31
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode8
, var_listnode7
);
5347 var_listnode8
= var31
;
5348 var32
= NEW_standard__Array(&type_standard__Array__standard__Object
);
5350 standard___standard__Array___standard__kernel__Object__init(var32
); /* Direct call array#Array#init on <var32:Array[Object]>*/
5352 var_listnode13
= var32
;
5353 var_listnode12
= var_nodearraylist8
;
5354 /* <var_listnode12:nullable Object> isa Array[Object] */
5355 cltype34
= type_standard__Array__standard__Object
.color
;
5356 idtype35
= type_standard__Array__standard__Object
.id
;
5357 if(var_listnode12
== NULL
) {
5360 if(cltype34
>= var_listnode12
->type
->table_size
) {
5363 var33
= var_listnode12
->type
->type_table
[cltype34
] == idtype35
;
5366 if (unlikely(!var33
)) {
5367 PRINT_ERROR("Runtime error: %s", "Assert failed");
5368 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2028);
5372 var36
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode13
, var_listnode12
);
5374 var_listnode13
= var36
;
5375 var37
= NEW_nit__AAnnotations(&type_nit__AAnnotations
);
5380 nit__parser_prod___AAnnotations___init_aannotations(var37
, var38
, var39
, var_listnode13
, var40
); /* Direct call parser_prod#AAnnotations#init_aannotations on <var37:AAnnotations>*/
5382 var_pannotationsnode9
= var37
;
5383 var_listnode16
= var_nodearraylist9
;
5384 /* <var_listnode16:nullable Object> isa Array[Object] */
5385 cltype42
= type_standard__Array__standard__Object
.color
;
5386 idtype43
= type_standard__Array__standard__Object
.id
;
5387 if(var_listnode16
== NULL
) {
5390 if(cltype42
>= var_listnode16
->type
->table_size
) {
5393 var41
= var_listnode16
->type
->type_table
[cltype42
] == idtype43
;
5396 if (unlikely(!var41
)) {
5397 PRINT_ERROR("Runtime error: %s", "Assert failed");
5398 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2037);
5402 var44
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode17
, var_listnode16
);
5404 var_listnode17
= var44
;
5405 var_tkwendnode19
= var_nodearraylist11
;
5406 /* <var_tkwendnode19:nullable Object> isa nullable TKwend */
5407 cltype46
= type_nullable__nit__TKwend
.color
;
5408 idtype47
= type_nullable__nit__TKwend
.id
;
5409 if(var_tkwendnode19
== NULL
) {
5412 if(cltype46
>= var_tkwendnode19
->type
->table_size
) {
5415 var45
= var_tkwendnode19
->type
->type_table
[cltype46
] == idtype47
;
5418 if (unlikely(!var45
)) {
5419 PRINT_ERROR("Runtime error: %s", "Assert failed");
5420 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2040);
5423 var48
= NEW_nit__AStdClassdef(&type_nit__AStdClassdef
);
5426 nit__parser_prod___AStdClassdef___init_astdclassdef(var48
, var_pdocnode2
, var_tkwredefnode3
, var_pvisibilitynode4
, var_pclasskindnode5
, var_tclassidnode6
, var_listnode8
, var_pannotationsnode9
, var49
, var_listnode17
, var_listnode18
, var_tkwendnode19
); /* Direct call parser_prod#AStdClassdef#init_astdclassdef on <var48:AStdClassdef>*/
5428 var_pclassdefnode1
= var48
;
5429 var_node_list
= var_pclassdefnode1
;
5430 var50
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction31> */
5432 var51
= nit___nit__Parser___go_to(var_p
, var50
);
5435 nit___nit__Parser___push(var_p
, var51
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
5439 /* method parser#ReduceAction32#action for (self: ReduceAction32, Parser) */
5440 void nit__parser___nit__parser__ReduceAction32___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
5441 val
* var_p
/* var p: Parser */;
5442 val
* var
/* : null */;
5443 val
* var_node_list
/* var node_list: nullable Object */;
5444 val
* var1
/* : nullable Object */;
5445 val
* var_nodearraylist11
/* var nodearraylist11: nullable Object */;
5446 val
* var2
/* : nullable Object */;
5447 val
* var_nodearraylist10
/* var nodearraylist10: nullable Object */;
5448 val
* var3
/* : nullable Object */;
5449 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
5450 val
* var4
/* : nullable Object */;
5451 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
5452 val
* var5
/* : nullable Object */;
5453 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
5454 val
* var6
/* : nullable Object */;
5455 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
5456 val
* var7
/* : nullable Object */;
5457 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
5458 val
* var8
/* : nullable Object */;
5459 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
5460 val
* var9
/* : nullable Object */;
5461 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
5462 val
* var10
/* : nullable Object */;
5463 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5464 val
* var11
/* : nullable Object */;
5465 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5466 val
* var12
/* : Array[Object] */;
5467 val
* var_listnode8
/* var listnode8: Array[Object] */;
5468 val
* var13
/* : Array[Object] */;
5469 val
* var_listnode12
/* var listnode12: Array[Object] */;
5470 val
* var14
/* : Array[Object] */;
5471 val
* var_listnode13
/* var listnode13: Array[Object] */;
5472 val
* var_pdocnode2
/* var pdocnode2: nullable Object */;
5473 short int var15
/* : Bool */;
5476 val
* var_tkwredefnode3
/* var tkwredefnode3: nullable Object */;
5477 short int var16
/* : Bool */;
5480 val
* var_pvisibilitynode4
/* var pvisibilitynode4: nullable Object */;
5481 short int var19
/* : Bool */;
5484 val
* var_pclasskindnode5
/* var pclasskindnode5: nullable Object */;
5485 short int var22
/* : Bool */;
5488 val
* var_tclassidnode6
/* var tclassidnode6: nullable Object */;
5489 short int var25
/* : Bool */;
5492 val
* var_listnode7
/* var listnode7: nullable Object */;
5493 short int var28
/* : Bool */;
5496 val
* var31
/* : Array[Object] */;
5497 val
* var_pexterncodeblocknode10
/* var pexterncodeblocknode10: nullable Object */;
5498 short int var32
/* : Bool */;
5501 val
* var_listnode11
/* var listnode11: nullable Object */;
5502 short int var35
/* : Bool */;
5505 val
* var38
/* : Array[Object] */;
5506 val
* var_tkwendnode14
/* var tkwendnode14: nullable Object */;
5507 short int var39
/* : Bool */;
5510 val
* var42
/* : AStdClassdef */;
5511 val
* var43
/* : null */;
5512 val
* var_pclassdefnode1
/* var pclassdefnode1: nullable AStdClassdef */;
5513 long var44
/* : Int */;
5514 long var45
/* : Int */;
5517 var_node_list
= var
;
5519 var1
= nit___nit__Parser___pop(var_p
);
5521 var_nodearraylist11
= var1
;
5523 var2
= nit___nit__Parser___pop(var_p
);
5525 var_nodearraylist10
= var2
;
5527 var3
= nit___nit__Parser___pop(var_p
);
5529 var_nodearraylist9
= var3
;
5531 var4
= nit___nit__Parser___pop(var_p
);
5533 var_nodearraylist8
= var4
;
5535 var5
= nit___nit__Parser___pop(var_p
);
5537 var_nodearraylist7
= var5
;
5539 var6
= nit___nit__Parser___pop(var_p
);
5541 var_nodearraylist6
= var6
;
5543 var7
= nit___nit__Parser___pop(var_p
);
5545 var_nodearraylist5
= var7
;
5547 var8
= nit___nit__Parser___pop(var_p
);
5549 var_nodearraylist4
= var8
;
5551 var9
= nit___nit__Parser___pop(var_p
);
5553 var_nodearraylist3
= var9
;
5555 var10
= nit___nit__Parser___pop(var_p
);
5557 var_nodearraylist2
= var10
;
5559 var11
= nit___nit__Parser___pop(var_p
);
5561 var_nodearraylist1
= var11
;
5562 var12
= NEW_standard__Array(&type_standard__Array__standard__Object
);
5564 standard___standard__Array___standard__kernel__Object__init(var12
); /* Direct call array#Array#init on <var12:Array[Object]>*/
5566 var_listnode8
= var12
;
5567 var13
= NEW_standard__Array(&type_standard__Array__standard__Object
);
5569 standard___standard__Array___standard__kernel__Object__init(var13
); /* Direct call array#Array#init on <var13:Array[Object]>*/
5571 var_listnode12
= var13
;
5572 var14
= NEW_standard__Array(&type_standard__Array__standard__Object
);
5574 standard___standard__Array___standard__kernel__Object__init(var14
); /* Direct call array#Array#init on <var14:Array[Object]>*/
5576 var_listnode13
= var14
;
5577 var_pdocnode2
= var_nodearraylist1
;
5578 /* <var_pdocnode2:nullable Object> isa nullable ADoc */
5579 cltype
= type_nullable__nit__ADoc
.color
;
5580 idtype
= type_nullable__nit__ADoc
.id
;
5581 if(var_pdocnode2
== NULL
) {
5584 if(cltype
>= var_pdocnode2
->type
->table_size
) {
5587 var15
= var_pdocnode2
->type
->type_table
[cltype
] == idtype
;
5590 if (unlikely(!var15
)) {
5591 PRINT_ERROR("Runtime error: %s", "Assert failed");
5592 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2078);
5595 var_tkwredefnode3
= var_nodearraylist2
;
5596 /* <var_tkwredefnode3:nullable Object> isa nullable TKwredef */
5597 cltype17
= type_nullable__nit__TKwredef
.color
;
5598 idtype18
= type_nullable__nit__TKwredef
.id
;
5599 if(var_tkwredefnode3
== NULL
) {
5602 if(cltype17
>= var_tkwredefnode3
->type
->table_size
) {
5605 var16
= var_tkwredefnode3
->type
->type_table
[cltype17
] == idtype18
;
5608 if (unlikely(!var16
)) {
5609 PRINT_ERROR("Runtime error: %s", "Assert failed");
5610 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2080);
5613 var_pvisibilitynode4
= var_nodearraylist3
;
5614 /* <var_pvisibilitynode4:nullable Object> isa nullable AVisibility */
5615 cltype20
= type_nullable__nit__AVisibility
.color
;
5616 idtype21
= type_nullable__nit__AVisibility
.id
;
5617 if(var_pvisibilitynode4
== NULL
) {
5620 if(cltype20
>= var_pvisibilitynode4
->type
->table_size
) {
5623 var19
= var_pvisibilitynode4
->type
->type_table
[cltype20
] == idtype21
;
5626 if (unlikely(!var19
)) {
5627 PRINT_ERROR("Runtime error: %s", "Assert failed");
5628 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2082);
5631 var_pclasskindnode5
= var_nodearraylist4
;
5632 /* <var_pclasskindnode5:nullable Object> isa nullable AClasskind */
5633 cltype23
= type_nullable__nit__AClasskind
.color
;
5634 idtype24
= type_nullable__nit__AClasskind
.id
;
5635 if(var_pclasskindnode5
== NULL
) {
5638 if(cltype23
>= var_pclasskindnode5
->type
->table_size
) {
5641 var22
= var_pclasskindnode5
->type
->type_table
[cltype23
] == idtype24
;
5644 if (unlikely(!var22
)) {
5645 PRINT_ERROR("Runtime error: %s", "Assert failed");
5646 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2084);
5649 var_tclassidnode6
= var_nodearraylist6
;
5650 /* <var_tclassidnode6:nullable Object> isa nullable TClassid */
5651 cltype26
= type_nullable__nit__TClassid
.color
;
5652 idtype27
= type_nullable__nit__TClassid
.id
;
5653 if(var_tclassidnode6
== NULL
) {
5656 if(cltype26
>= var_tclassidnode6
->type
->table_size
) {
5659 var25
= var_tclassidnode6
->type
->type_table
[cltype26
] == idtype27
;
5662 if (unlikely(!var25
)) {
5663 PRINT_ERROR("Runtime error: %s", "Assert failed");
5664 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2086);
5667 var_listnode7
= var_nodearraylist7
;
5668 /* <var_listnode7:nullable Object> isa Array[Object] */
5669 cltype29
= type_standard__Array__standard__Object
.color
;
5670 idtype30
= type_standard__Array__standard__Object
.id
;
5671 if(var_listnode7
== NULL
) {
5674 if(cltype29
>= var_listnode7
->type
->table_size
) {
5677 var28
= var_listnode7
->type
->type_table
[cltype29
] == idtype30
;
5680 if (unlikely(!var28
)) {
5681 PRINT_ERROR("Runtime error: %s", "Assert failed");
5682 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2088);
5686 var31
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode8
, var_listnode7
);
5688 var_listnode8
= var31
;
5689 var_pexterncodeblocknode10
= var_nodearraylist8
;
5690 /* <var_pexterncodeblocknode10:nullable Object> isa nullable AExternCodeBlock */
5691 cltype33
= type_nullable__nit__AExternCodeBlock
.color
;
5692 idtype34
= type_nullable__nit__AExternCodeBlock
.id
;
5693 if(var_pexterncodeblocknode10
== NULL
) {
5696 if(cltype33
>= var_pexterncodeblocknode10
->type
->table_size
) {
5699 var32
= var_pexterncodeblocknode10
->type
->type_table
[cltype33
] == idtype34
;
5702 if (unlikely(!var32
)) {
5703 PRINT_ERROR("Runtime error: %s", "Assert failed");
5704 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2091);
5707 var_listnode11
= var_nodearraylist9
;
5708 /* <var_listnode11:nullable Object> isa Array[Object] */
5709 cltype36
= type_standard__Array__standard__Object
.color
;
5710 idtype37
= type_standard__Array__standard__Object
.id
;
5711 if(var_listnode11
== NULL
) {
5714 if(cltype36
>= var_listnode11
->type
->table_size
) {
5717 var35
= var_listnode11
->type
->type_table
[cltype36
] == idtype37
;
5720 if (unlikely(!var35
)) {
5721 PRINT_ERROR("Runtime error: %s", "Assert failed");
5722 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2093);
5726 var38
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode12
, var_listnode11
);
5728 var_listnode12
= var38
;
5729 var_tkwendnode14
= var_nodearraylist11
;
5730 /* <var_tkwendnode14:nullable Object> isa nullable TKwend */
5731 cltype40
= type_nullable__nit__TKwend
.color
;
5732 idtype41
= type_nullable__nit__TKwend
.id
;
5733 if(var_tkwendnode14
== NULL
) {
5736 if(cltype40
>= var_tkwendnode14
->type
->table_size
) {
5739 var39
= var_tkwendnode14
->type
->type_table
[cltype40
] == idtype41
;
5742 if (unlikely(!var39
)) {
5743 PRINT_ERROR("Runtime error: %s", "Assert failed");
5744 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2096);
5747 var42
= NEW_nit__AStdClassdef(&type_nit__AStdClassdef
);
5750 nit__parser_prod___AStdClassdef___init_astdclassdef(var42
, var_pdocnode2
, var_tkwredefnode3
, var_pvisibilitynode4
, var_pclasskindnode5
, var_tclassidnode6
, var_listnode8
, var43
, var_pexterncodeblocknode10
, var_listnode12
, var_listnode13
, var_tkwendnode14
); /* Direct call parser_prod#AStdClassdef#init_astdclassdef on <var42:AStdClassdef>*/
5752 var_pclassdefnode1
= var42
;
5753 var_node_list
= var_pclassdefnode1
;
5754 var44
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction32> */
5756 var45
= nit___nit__Parser___go_to(var_p
, var44
);
5759 nit___nit__Parser___push(var_p
, var45
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
5763 /* method parser#ReduceAction33#action for (self: ReduceAction33, Parser) */
5764 void nit__parser___nit__parser__ReduceAction33___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
5765 val
* var_p
/* var p: Parser */;
5766 val
* var
/* : null */;
5767 val
* var_node_list
/* var node_list: nullable Object */;
5768 val
* var1
/* : nullable Object */;
5769 val
* var_nodearraylist12
/* var nodearraylist12: nullable Object */;
5770 val
* var2
/* : nullable Object */;
5771 val
* var_nodearraylist11
/* var nodearraylist11: nullable Object */;
5772 val
* var3
/* : nullable Object */;
5773 val
* var_nodearraylist10
/* var nodearraylist10: nullable Object */;
5774 val
* var4
/* : nullable Object */;
5775 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
5776 val
* var5
/* : nullable Object */;
5777 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
5778 val
* var6
/* : nullable Object */;
5779 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
5780 val
* var7
/* : nullable Object */;
5781 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
5782 val
* var8
/* : nullable Object */;
5783 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
5784 val
* var9
/* : nullable Object */;
5785 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
5786 val
* var10
/* : nullable Object */;
5787 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
5788 val
* var11
/* : nullable Object */;
5789 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5790 val
* var12
/* : nullable Object */;
5791 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5792 val
* var13
/* : Array[Object] */;
5793 val
* var_listnode8
/* var listnode8: Array[Object] */;
5794 val
* var14
/* : Array[Object] */;
5795 val
* var_listnode17
/* var listnode17: Array[Object] */;
5796 val
* var15
/* : Array[Object] */;
5797 val
* var_listnode18
/* var listnode18: Array[Object] */;
5798 val
* var_pdocnode2
/* var pdocnode2: nullable Object */;
5799 short int var16
/* : Bool */;
5802 val
* var_tkwredefnode3
/* var tkwredefnode3: nullable Object */;
5803 short int var17
/* : Bool */;
5806 val
* var_pvisibilitynode4
/* var pvisibilitynode4: nullable Object */;
5807 short int var20
/* : Bool */;
5810 val
* var_pclasskindnode5
/* var pclasskindnode5: nullable Object */;
5811 short int var23
/* : Bool */;
5814 val
* var_tclassidnode6
/* var tclassidnode6: nullable Object */;
5815 short int var26
/* : Bool */;
5818 val
* var_listnode7
/* var listnode7: nullable Object */;
5819 short int var29
/* : Bool */;
5822 val
* var32
/* : Array[Object] */;
5823 val
* var33
/* : Array[Object] */;
5824 val
* var_listnode13
/* var listnode13: Array[Object] */;
5825 val
* var_listnode12
/* var listnode12: nullable Object */;
5826 short int var34
/* : Bool */;
5829 val
* var37
/* : Array[Object] */;
5830 val
* var38
/* : AAnnotations */;
5831 val
* var39
/* : null */;
5832 val
* var40
/* : null */;
5833 val
* var41
/* : null */;
5834 val
* var_pannotationsnode9
/* var pannotationsnode9: nullable AAnnotations */;
5835 val
* var_pexterncodeblocknode15
/* var pexterncodeblocknode15: nullable Object */;
5836 short int var42
/* : Bool */;
5839 val
* var_listnode16
/* var listnode16: nullable Object */;
5840 short int var45
/* : Bool */;
5843 val
* var48
/* : Array[Object] */;
5844 val
* var_tkwendnode19
/* var tkwendnode19: nullable Object */;
5845 short int var49
/* : Bool */;
5848 val
* var52
/* : AStdClassdef */;
5849 val
* var_pclassdefnode1
/* var pclassdefnode1: nullable AStdClassdef */;
5850 long var53
/* : Int */;
5851 long var54
/* : Int */;
5854 var_node_list
= var
;
5856 var1
= nit___nit__Parser___pop(var_p
);
5858 var_nodearraylist12
= var1
;
5860 var2
= nit___nit__Parser___pop(var_p
);
5862 var_nodearraylist11
= var2
;
5864 var3
= nit___nit__Parser___pop(var_p
);
5866 var_nodearraylist10
= var3
;
5868 var4
= nit___nit__Parser___pop(var_p
);
5870 var_nodearraylist9
= var4
;
5872 var5
= nit___nit__Parser___pop(var_p
);
5874 var_nodearraylist8
= var5
;
5876 var6
= nit___nit__Parser___pop(var_p
);
5878 var_nodearraylist7
= var6
;
5880 var7
= nit___nit__Parser___pop(var_p
);
5882 var_nodearraylist6
= var7
;
5884 var8
= nit___nit__Parser___pop(var_p
);
5886 var_nodearraylist5
= var8
;
5888 var9
= nit___nit__Parser___pop(var_p
);
5890 var_nodearraylist4
= var9
;
5892 var10
= nit___nit__Parser___pop(var_p
);
5894 var_nodearraylist3
= var10
;
5896 var11
= nit___nit__Parser___pop(var_p
);
5898 var_nodearraylist2
= var11
;
5900 var12
= nit___nit__Parser___pop(var_p
);
5902 var_nodearraylist1
= var12
;
5903 var13
= NEW_standard__Array(&type_standard__Array__standard__Object
);
5905 standard___standard__Array___standard__kernel__Object__init(var13
); /* Direct call array#Array#init on <var13:Array[Object]>*/
5907 var_listnode8
= var13
;
5908 var14
= NEW_standard__Array(&type_standard__Array__standard__Object
);
5910 standard___standard__Array___standard__kernel__Object__init(var14
); /* Direct call array#Array#init on <var14:Array[Object]>*/
5912 var_listnode17
= var14
;
5913 var15
= NEW_standard__Array(&type_standard__Array__standard__Object
);
5915 standard___standard__Array___standard__kernel__Object__init(var15
); /* Direct call array#Array#init on <var15:Array[Object]>*/
5917 var_listnode18
= var15
;
5918 var_pdocnode2
= var_nodearraylist1
;
5919 /* <var_pdocnode2:nullable Object> isa nullable ADoc */
5920 cltype
= type_nullable__nit__ADoc
.color
;
5921 idtype
= type_nullable__nit__ADoc
.id
;
5922 if(var_pdocnode2
== NULL
) {
5925 if(cltype
>= var_pdocnode2
->type
->table_size
) {
5928 var16
= var_pdocnode2
->type
->type_table
[cltype
] == idtype
;
5931 if (unlikely(!var16
)) {
5932 PRINT_ERROR("Runtime error: %s", "Assert failed");
5933 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2135);
5936 var_tkwredefnode3
= var_nodearraylist2
;
5937 /* <var_tkwredefnode3:nullable Object> isa nullable TKwredef */
5938 cltype18
= type_nullable__nit__TKwredef
.color
;
5939 idtype19
= type_nullable__nit__TKwredef
.id
;
5940 if(var_tkwredefnode3
== NULL
) {
5943 if(cltype18
>= var_tkwredefnode3
->type
->table_size
) {
5946 var17
= var_tkwredefnode3
->type
->type_table
[cltype18
] == idtype19
;
5949 if (unlikely(!var17
)) {
5950 PRINT_ERROR("Runtime error: %s", "Assert failed");
5951 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2137);
5954 var_pvisibilitynode4
= var_nodearraylist3
;
5955 /* <var_pvisibilitynode4:nullable Object> isa nullable AVisibility */
5956 cltype21
= type_nullable__nit__AVisibility
.color
;
5957 idtype22
= type_nullable__nit__AVisibility
.id
;
5958 if(var_pvisibilitynode4
== NULL
) {
5961 if(cltype21
>= var_pvisibilitynode4
->type
->table_size
) {
5964 var20
= var_pvisibilitynode4
->type
->type_table
[cltype21
] == idtype22
;
5967 if (unlikely(!var20
)) {
5968 PRINT_ERROR("Runtime error: %s", "Assert failed");
5969 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2139);
5972 var_pclasskindnode5
= var_nodearraylist4
;
5973 /* <var_pclasskindnode5:nullable Object> isa nullable AClasskind */
5974 cltype24
= type_nullable__nit__AClasskind
.color
;
5975 idtype25
= type_nullable__nit__AClasskind
.id
;
5976 if(var_pclasskindnode5
== NULL
) {
5979 if(cltype24
>= var_pclasskindnode5
->type
->table_size
) {
5982 var23
= var_pclasskindnode5
->type
->type_table
[cltype24
] == idtype25
;
5985 if (unlikely(!var23
)) {
5986 PRINT_ERROR("Runtime error: %s", "Assert failed");
5987 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2141);
5990 var_tclassidnode6
= var_nodearraylist6
;
5991 /* <var_tclassidnode6:nullable Object> isa nullable TClassid */
5992 cltype27
= type_nullable__nit__TClassid
.color
;
5993 idtype28
= type_nullable__nit__TClassid
.id
;
5994 if(var_tclassidnode6
== NULL
) {
5997 if(cltype27
>= var_tclassidnode6
->type
->table_size
) {
6000 var26
= var_tclassidnode6
->type
->type_table
[cltype27
] == idtype28
;
6003 if (unlikely(!var26
)) {
6004 PRINT_ERROR("Runtime error: %s", "Assert failed");
6005 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2143);
6008 var_listnode7
= var_nodearraylist7
;
6009 /* <var_listnode7:nullable Object> isa Array[Object] */
6010 cltype30
= type_standard__Array__standard__Object
.color
;
6011 idtype31
= type_standard__Array__standard__Object
.id
;
6012 if(var_listnode7
== NULL
) {
6015 if(cltype30
>= var_listnode7
->type
->table_size
) {
6018 var29
= var_listnode7
->type
->type_table
[cltype30
] == idtype31
;
6021 if (unlikely(!var29
)) {
6022 PRINT_ERROR("Runtime error: %s", "Assert failed");
6023 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2145);
6027 var32
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode8
, var_listnode7
);
6029 var_listnode8
= var32
;
6030 var33
= NEW_standard__Array(&type_standard__Array__standard__Object
);
6032 standard___standard__Array___standard__kernel__Object__init(var33
); /* Direct call array#Array#init on <var33:Array[Object]>*/
6034 var_listnode13
= var33
;
6035 var_listnode12
= var_nodearraylist8
;
6036 /* <var_listnode12:nullable Object> isa Array[Object] */
6037 cltype35
= type_standard__Array__standard__Object
.color
;
6038 idtype36
= type_standard__Array__standard__Object
.id
;
6039 if(var_listnode12
== NULL
) {
6042 if(cltype35
>= var_listnode12
->type
->table_size
) {
6045 var34
= var_listnode12
->type
->type_table
[cltype35
] == idtype36
;
6048 if (unlikely(!var34
)) {
6049 PRINT_ERROR("Runtime error: %s", "Assert failed");
6050 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2149);
6054 var37
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode13
, var_listnode12
);
6056 var_listnode13
= var37
;
6057 var38
= NEW_nit__AAnnotations(&type_nit__AAnnotations
);
6062 nit__parser_prod___AAnnotations___init_aannotations(var38
, var39
, var40
, var_listnode13
, var41
); /* Direct call parser_prod#AAnnotations#init_aannotations on <var38:AAnnotations>*/
6064 var_pannotationsnode9
= var38
;
6065 var_pexterncodeblocknode15
= var_nodearraylist9
;
6066 /* <var_pexterncodeblocknode15:nullable Object> isa nullable AExternCodeBlock */
6067 cltype43
= type_nullable__nit__AExternCodeBlock
.color
;
6068 idtype44
= type_nullable__nit__AExternCodeBlock
.id
;
6069 if(var_pexterncodeblocknode15
== NULL
) {
6072 if(cltype43
>= var_pexterncodeblocknode15
->type
->table_size
) {
6075 var42
= var_pexterncodeblocknode15
->type
->type_table
[cltype43
] == idtype44
;
6078 if (unlikely(!var42
)) {
6079 PRINT_ERROR("Runtime error: %s", "Assert failed");
6080 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2158);
6083 var_listnode16
= var_nodearraylist10
;
6084 /* <var_listnode16:nullable Object> isa Array[Object] */
6085 cltype46
= type_standard__Array__standard__Object
.color
;
6086 idtype47
= type_standard__Array__standard__Object
.id
;
6087 if(var_listnode16
== NULL
) {
6090 if(cltype46
>= var_listnode16
->type
->table_size
) {
6093 var45
= var_listnode16
->type
->type_table
[cltype46
] == idtype47
;
6096 if (unlikely(!var45
)) {
6097 PRINT_ERROR("Runtime error: %s", "Assert failed");
6098 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2160);
6102 var48
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode17
, var_listnode16
);
6104 var_listnode17
= var48
;
6105 var_tkwendnode19
= var_nodearraylist12
;
6106 /* <var_tkwendnode19:nullable Object> isa nullable TKwend */
6107 cltype50
= type_nullable__nit__TKwend
.color
;
6108 idtype51
= type_nullable__nit__TKwend
.id
;
6109 if(var_tkwendnode19
== NULL
) {
6112 if(cltype50
>= var_tkwendnode19
->type
->table_size
) {
6115 var49
= var_tkwendnode19
->type
->type_table
[cltype50
] == idtype51
;
6118 if (unlikely(!var49
)) {
6119 PRINT_ERROR("Runtime error: %s", "Assert failed");
6120 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2163);
6123 var52
= NEW_nit__AStdClassdef(&type_nit__AStdClassdef
);
6125 nit__parser_prod___AStdClassdef___init_astdclassdef(var52
, var_pdocnode2
, var_tkwredefnode3
, var_pvisibilitynode4
, var_pclasskindnode5
, var_tclassidnode6
, var_listnode8
, var_pannotationsnode9
, var_pexterncodeblocknode15
, var_listnode17
, var_listnode18
, var_tkwendnode19
); /* Direct call parser_prod#AStdClassdef#init_astdclassdef on <var52:AStdClassdef>*/
6127 var_pclassdefnode1
= var52
;
6128 var_node_list
= var_pclassdefnode1
;
6129 var53
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction33> */
6131 var54
= nit___nit__Parser___go_to(var_p
, var53
);
6134 nit___nit__Parser___push(var_p
, var54
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
6138 /* method parser#ReduceAction34#action for (self: ReduceAction34, Parser) */
6139 void nit__parser___nit__parser__ReduceAction34___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
6140 val
* var_p
/* var p: Parser */;
6141 val
* var
/* : null */;
6142 val
* var_node_list
/* var node_list: nullable Object */;
6143 val
* var1
/* : nullable Object */;
6144 val
* var_nodearraylist10
/* var nodearraylist10: nullable Object */;
6145 val
* var2
/* : nullable Object */;
6146 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
6147 val
* var3
/* : nullable Object */;
6148 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
6149 val
* var4
/* : nullable Object */;
6150 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
6151 val
* var5
/* : nullable Object */;
6152 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
6153 val
* var6
/* : nullable Object */;
6154 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
6155 val
* var7
/* : nullable Object */;
6156 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
6157 val
* var8
/* : nullable Object */;
6158 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
6159 val
* var9
/* : nullable Object */;
6160 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6161 val
* var10
/* : nullable Object */;
6162 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6163 val
* var11
/* : Array[Object] */;
6164 val
* var_listnode8
/* var listnode8: Array[Object] */;
6165 val
* var12
/* : Array[Object] */;
6166 val
* var_listnode11
/* var listnode11: Array[Object] */;
6167 val
* var13
/* : Array[Object] */;
6168 val
* var_listnode13
/* var listnode13: Array[Object] */;
6169 val
* var_pdocnode2
/* var pdocnode2: nullable Object */;
6170 short int var14
/* : Bool */;
6173 val
* var_tkwredefnode3
/* var tkwredefnode3: nullable Object */;
6174 short int var15
/* : Bool */;
6177 val
* var_pvisibilitynode4
/* var pvisibilitynode4: nullable Object */;
6178 short int var18
/* : Bool */;
6181 val
* var_pclasskindnode5
/* var pclasskindnode5: nullable Object */;
6182 short int var21
/* : Bool */;
6185 val
* var_tclassidnode6
/* var tclassidnode6: nullable Object */;
6186 short int var24
/* : Bool */;
6189 val
* var_listnode7
/* var listnode7: nullable Object */;
6190 short int var27
/* : Bool */;
6193 val
* var30
/* : Array[Object] */;
6194 val
* var_listnode12
/* var listnode12: nullable Object */;
6195 short int var31
/* : Bool */;
6198 val
* var34
/* : Array[Object] */;
6199 val
* var_tkwendnode14
/* var tkwendnode14: nullable Object */;
6200 short int var35
/* : Bool */;
6203 val
* var38
/* : AStdClassdef */;
6204 val
* var39
/* : null */;
6205 val
* var40
/* : null */;
6206 val
* var_pclassdefnode1
/* var pclassdefnode1: nullable AStdClassdef */;
6207 long var41
/* : Int */;
6208 long var42
/* : Int */;
6211 var_node_list
= var
;
6213 var1
= nit___nit__Parser___pop(var_p
);
6215 var_nodearraylist10
= var1
;
6217 var2
= nit___nit__Parser___pop(var_p
);
6219 var_nodearraylist9
= var2
;
6221 var3
= nit___nit__Parser___pop(var_p
);
6223 var_nodearraylist8
= var3
;
6225 var4
= nit___nit__Parser___pop(var_p
);
6227 var_nodearraylist7
= var4
;
6229 var5
= nit___nit__Parser___pop(var_p
);
6231 var_nodearraylist6
= var5
;
6233 var6
= nit___nit__Parser___pop(var_p
);
6235 var_nodearraylist5
= var6
;
6237 var7
= nit___nit__Parser___pop(var_p
);
6239 var_nodearraylist4
= var7
;
6241 var8
= nit___nit__Parser___pop(var_p
);
6243 var_nodearraylist3
= var8
;
6245 var9
= nit___nit__Parser___pop(var_p
);
6247 var_nodearraylist2
= var9
;
6249 var10
= nit___nit__Parser___pop(var_p
);
6251 var_nodearraylist1
= var10
;
6252 var11
= NEW_standard__Array(&type_standard__Array__standard__Object
);
6254 standard___standard__Array___standard__kernel__Object__init(var11
); /* Direct call array#Array#init on <var11:Array[Object]>*/
6256 var_listnode8
= var11
;
6257 var12
= NEW_standard__Array(&type_standard__Array__standard__Object
);
6259 standard___standard__Array___standard__kernel__Object__init(var12
); /* Direct call array#Array#init on <var12:Array[Object]>*/
6261 var_listnode11
= var12
;
6262 var13
= NEW_standard__Array(&type_standard__Array__standard__Object
);
6264 standard___standard__Array___standard__kernel__Object__init(var13
); /* Direct call array#Array#init on <var13:Array[Object]>*/
6266 var_listnode13
= var13
;
6267 var_pdocnode2
= var_nodearraylist1
;
6268 /* <var_pdocnode2:nullable Object> isa nullable ADoc */
6269 cltype
= type_nullable__nit__ADoc
.color
;
6270 idtype
= type_nullable__nit__ADoc
.id
;
6271 if(var_pdocnode2
== NULL
) {
6274 if(cltype
>= var_pdocnode2
->type
->table_size
) {
6277 var14
= var_pdocnode2
->type
->type_table
[cltype
] == idtype
;
6280 if (unlikely(!var14
)) {
6281 PRINT_ERROR("Runtime error: %s", "Assert failed");
6282 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2200);
6285 var_tkwredefnode3
= var_nodearraylist2
;
6286 /* <var_tkwredefnode3:nullable Object> isa nullable TKwredef */
6287 cltype16
= type_nullable__nit__TKwredef
.color
;
6288 idtype17
= type_nullable__nit__TKwredef
.id
;
6289 if(var_tkwredefnode3
== NULL
) {
6292 if(cltype16
>= var_tkwredefnode3
->type
->table_size
) {
6295 var15
= var_tkwredefnode3
->type
->type_table
[cltype16
] == idtype17
;
6298 if (unlikely(!var15
)) {
6299 PRINT_ERROR("Runtime error: %s", "Assert failed");
6300 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2202);
6303 var_pvisibilitynode4
= var_nodearraylist3
;
6304 /* <var_pvisibilitynode4:nullable Object> isa nullable AVisibility */
6305 cltype19
= type_nullable__nit__AVisibility
.color
;
6306 idtype20
= type_nullable__nit__AVisibility
.id
;
6307 if(var_pvisibilitynode4
== NULL
) {
6310 if(cltype19
>= var_pvisibilitynode4
->type
->table_size
) {
6313 var18
= var_pvisibilitynode4
->type
->type_table
[cltype19
] == idtype20
;
6316 if (unlikely(!var18
)) {
6317 PRINT_ERROR("Runtime error: %s", "Assert failed");
6318 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2204);
6321 var_pclasskindnode5
= var_nodearraylist4
;
6322 /* <var_pclasskindnode5:nullable Object> isa nullable AClasskind */
6323 cltype22
= type_nullable__nit__AClasskind
.color
;
6324 idtype23
= type_nullable__nit__AClasskind
.id
;
6325 if(var_pclasskindnode5
== NULL
) {
6328 if(cltype22
>= var_pclasskindnode5
->type
->table_size
) {
6331 var21
= var_pclasskindnode5
->type
->type_table
[cltype22
] == idtype23
;
6334 if (unlikely(!var21
)) {
6335 PRINT_ERROR("Runtime error: %s", "Assert failed");
6336 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2206);
6339 var_tclassidnode6
= var_nodearraylist6
;
6340 /* <var_tclassidnode6:nullable Object> isa nullable TClassid */
6341 cltype25
= type_nullable__nit__TClassid
.color
;
6342 idtype26
= type_nullable__nit__TClassid
.id
;
6343 if(var_tclassidnode6
== NULL
) {
6346 if(cltype25
>= var_tclassidnode6
->type
->table_size
) {
6349 var24
= var_tclassidnode6
->type
->type_table
[cltype25
] == idtype26
;
6352 if (unlikely(!var24
)) {
6353 PRINT_ERROR("Runtime error: %s", "Assert failed");
6354 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2208);
6357 var_listnode7
= var_nodearraylist7
;
6358 /* <var_listnode7:nullable Object> isa Array[Object] */
6359 cltype28
= type_standard__Array__standard__Object
.color
;
6360 idtype29
= type_standard__Array__standard__Object
.id
;
6361 if(var_listnode7
== NULL
) {
6364 if(cltype28
>= var_listnode7
->type
->table_size
) {
6367 var27
= var_listnode7
->type
->type_table
[cltype28
] == idtype29
;
6370 if (unlikely(!var27
)) {
6371 PRINT_ERROR("Runtime error: %s", "Assert failed");
6372 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2210);
6376 var30
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode8
, var_listnode7
);
6378 var_listnode8
= var30
;
6379 var_listnode12
= var_nodearraylist8
;
6380 /* <var_listnode12:nullable Object> isa Array[Object] */
6381 cltype32
= type_standard__Array__standard__Object
.color
;
6382 idtype33
= type_standard__Array__standard__Object
.id
;
6383 if(var_listnode12
== NULL
) {
6386 if(cltype32
>= var_listnode12
->type
->table_size
) {
6389 var31
= var_listnode12
->type
->type_table
[cltype32
] == idtype33
;
6392 if (unlikely(!var31
)) {
6393 PRINT_ERROR("Runtime error: %s", "Assert failed");
6394 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2213);
6398 var34
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode13
, var_listnode12
);
6400 var_listnode13
= var34
;
6401 var_tkwendnode14
= var_nodearraylist10
;
6402 /* <var_tkwendnode14:nullable Object> isa nullable TKwend */
6403 cltype36
= type_nullable__nit__TKwend
.color
;
6404 idtype37
= type_nullable__nit__TKwend
.id
;
6405 if(var_tkwendnode14
== NULL
) {
6408 if(cltype36
>= var_tkwendnode14
->type
->table_size
) {
6411 var35
= var_tkwendnode14
->type
->type_table
[cltype36
] == idtype37
;
6414 if (unlikely(!var35
)) {
6415 PRINT_ERROR("Runtime error: %s", "Assert failed");
6416 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2216);
6419 var38
= NEW_nit__AStdClassdef(&type_nit__AStdClassdef
);
6423 nit__parser_prod___AStdClassdef___init_astdclassdef(var38
, var_pdocnode2
, var_tkwredefnode3
, var_pvisibilitynode4
, var_pclasskindnode5
, var_tclassidnode6
, var_listnode8
, var39
, var40
, var_listnode11
, var_listnode13
, var_tkwendnode14
); /* Direct call parser_prod#AStdClassdef#init_astdclassdef on <var38:AStdClassdef>*/
6425 var_pclassdefnode1
= var38
;
6426 var_node_list
= var_pclassdefnode1
;
6427 var41
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction34> */
6429 var42
= nit___nit__Parser___go_to(var_p
, var41
);
6432 nit___nit__Parser___push(var_p
, var42
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
6436 /* method parser#ReduceAction35#action for (self: ReduceAction35, Parser) */
6437 void nit__parser___nit__parser__ReduceAction35___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
6438 val
* var_p
/* var p: Parser */;
6439 val
* var
/* : null */;
6440 val
* var_node_list
/* var node_list: nullable Object */;
6441 val
* var1
/* : nullable Object */;
6442 val
* var_nodearraylist11
/* var nodearraylist11: nullable Object */;
6443 val
* var2
/* : nullable Object */;
6444 val
* var_nodearraylist10
/* var nodearraylist10: nullable Object */;
6445 val
* var3
/* : nullable Object */;
6446 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
6447 val
* var4
/* : nullable Object */;
6448 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
6449 val
* var5
/* : nullable Object */;
6450 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
6451 val
* var6
/* : nullable Object */;
6452 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
6453 val
* var7
/* : nullable Object */;
6454 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
6455 val
* var8
/* : nullable Object */;
6456 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
6457 val
* var9
/* : nullable Object */;
6458 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
6459 val
* var10
/* : nullable Object */;
6460 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6461 val
* var11
/* : nullable Object */;
6462 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6463 val
* var12
/* : Array[Object] */;
6464 val
* var_listnode8
/* var listnode8: Array[Object] */;
6465 val
* var13
/* : Array[Object] */;
6466 val
* var_listnode16
/* var listnode16: Array[Object] */;
6467 val
* var14
/* : Array[Object] */;
6468 val
* var_listnode18
/* var listnode18: Array[Object] */;
6469 val
* var_pdocnode2
/* var pdocnode2: nullable Object */;
6470 short int var15
/* : Bool */;
6473 val
* var_tkwredefnode3
/* var tkwredefnode3: nullable Object */;
6474 short int var16
/* : Bool */;
6477 val
* var_pvisibilitynode4
/* var pvisibilitynode4: nullable Object */;
6478 short int var19
/* : Bool */;
6481 val
* var_pclasskindnode5
/* var pclasskindnode5: nullable Object */;
6482 short int var22
/* : Bool */;
6485 val
* var_tclassidnode6
/* var tclassidnode6: nullable Object */;
6486 short int var25
/* : Bool */;
6489 val
* var_listnode7
/* var listnode7: nullable Object */;
6490 short int var28
/* : Bool */;
6493 val
* var31
/* : Array[Object] */;
6494 val
* var32
/* : Array[Object] */;
6495 val
* var_listnode13
/* var listnode13: Array[Object] */;
6496 val
* var_listnode12
/* var listnode12: nullable Object */;
6497 short int var33
/* : Bool */;
6500 val
* var36
/* : Array[Object] */;
6501 val
* var37
/* : AAnnotations */;
6502 val
* var38
/* : null */;
6503 val
* var39
/* : null */;
6504 val
* var40
/* : null */;
6505 val
* var_pannotationsnode9
/* var pannotationsnode9: nullable AAnnotations */;
6506 val
* var_listnode17
/* var listnode17: nullable Object */;
6507 short int var41
/* : Bool */;
6510 val
* var44
/* : Array[Object] */;
6511 val
* var_tkwendnode19
/* var tkwendnode19: nullable Object */;
6512 short int var45
/* : Bool */;
6515 val
* var48
/* : AStdClassdef */;
6516 val
* var49
/* : null */;
6517 val
* var_pclassdefnode1
/* var pclassdefnode1: nullable AStdClassdef */;
6518 long var50
/* : Int */;
6519 long var51
/* : Int */;
6522 var_node_list
= var
;
6524 var1
= nit___nit__Parser___pop(var_p
);
6526 var_nodearraylist11
= var1
;
6528 var2
= nit___nit__Parser___pop(var_p
);
6530 var_nodearraylist10
= var2
;
6532 var3
= nit___nit__Parser___pop(var_p
);
6534 var_nodearraylist9
= var3
;
6536 var4
= nit___nit__Parser___pop(var_p
);
6538 var_nodearraylist8
= var4
;
6540 var5
= nit___nit__Parser___pop(var_p
);
6542 var_nodearraylist7
= var5
;
6544 var6
= nit___nit__Parser___pop(var_p
);
6546 var_nodearraylist6
= var6
;
6548 var7
= nit___nit__Parser___pop(var_p
);
6550 var_nodearraylist5
= var7
;
6552 var8
= nit___nit__Parser___pop(var_p
);
6554 var_nodearraylist4
= var8
;
6556 var9
= nit___nit__Parser___pop(var_p
);
6558 var_nodearraylist3
= var9
;
6560 var10
= nit___nit__Parser___pop(var_p
);
6562 var_nodearraylist2
= var10
;
6564 var11
= nit___nit__Parser___pop(var_p
);
6566 var_nodearraylist1
= var11
;
6567 var12
= NEW_standard__Array(&type_standard__Array__standard__Object
);
6569 standard___standard__Array___standard__kernel__Object__init(var12
); /* Direct call array#Array#init on <var12:Array[Object]>*/
6571 var_listnode8
= var12
;
6572 var13
= NEW_standard__Array(&type_standard__Array__standard__Object
);
6574 standard___standard__Array___standard__kernel__Object__init(var13
); /* Direct call array#Array#init on <var13:Array[Object]>*/
6576 var_listnode16
= var13
;
6577 var14
= NEW_standard__Array(&type_standard__Array__standard__Object
);
6579 standard___standard__Array___standard__kernel__Object__init(var14
); /* Direct call array#Array#init on <var14:Array[Object]>*/
6581 var_listnode18
= var14
;
6582 var_pdocnode2
= var_nodearraylist1
;
6583 /* <var_pdocnode2:nullable Object> isa nullable ADoc */
6584 cltype
= type_nullable__nit__ADoc
.color
;
6585 idtype
= type_nullable__nit__ADoc
.id
;
6586 if(var_pdocnode2
== NULL
) {
6589 if(cltype
>= var_pdocnode2
->type
->table_size
) {
6592 var15
= var_pdocnode2
->type
->type_table
[cltype
] == idtype
;
6595 if (unlikely(!var15
)) {
6596 PRINT_ERROR("Runtime error: %s", "Assert failed");
6597 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2254);
6600 var_tkwredefnode3
= var_nodearraylist2
;
6601 /* <var_tkwredefnode3:nullable Object> isa nullable TKwredef */
6602 cltype17
= type_nullable__nit__TKwredef
.color
;
6603 idtype18
= type_nullable__nit__TKwredef
.id
;
6604 if(var_tkwredefnode3
== NULL
) {
6607 if(cltype17
>= var_tkwredefnode3
->type
->table_size
) {
6610 var16
= var_tkwredefnode3
->type
->type_table
[cltype17
] == idtype18
;
6613 if (unlikely(!var16
)) {
6614 PRINT_ERROR("Runtime error: %s", "Assert failed");
6615 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2256);
6618 var_pvisibilitynode4
= var_nodearraylist3
;
6619 /* <var_pvisibilitynode4:nullable Object> isa nullable AVisibility */
6620 cltype20
= type_nullable__nit__AVisibility
.color
;
6621 idtype21
= type_nullable__nit__AVisibility
.id
;
6622 if(var_pvisibilitynode4
== NULL
) {
6625 if(cltype20
>= var_pvisibilitynode4
->type
->table_size
) {
6628 var19
= var_pvisibilitynode4
->type
->type_table
[cltype20
] == idtype21
;
6631 if (unlikely(!var19
)) {
6632 PRINT_ERROR("Runtime error: %s", "Assert failed");
6633 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2258);
6636 var_pclasskindnode5
= var_nodearraylist4
;
6637 /* <var_pclasskindnode5:nullable Object> isa nullable AClasskind */
6638 cltype23
= type_nullable__nit__AClasskind
.color
;
6639 idtype24
= type_nullable__nit__AClasskind
.id
;
6640 if(var_pclasskindnode5
== NULL
) {
6643 if(cltype23
>= var_pclasskindnode5
->type
->table_size
) {
6646 var22
= var_pclasskindnode5
->type
->type_table
[cltype23
] == idtype24
;
6649 if (unlikely(!var22
)) {
6650 PRINT_ERROR("Runtime error: %s", "Assert failed");
6651 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2260);
6654 var_tclassidnode6
= var_nodearraylist6
;
6655 /* <var_tclassidnode6:nullable Object> isa nullable TClassid */
6656 cltype26
= type_nullable__nit__TClassid
.color
;
6657 idtype27
= type_nullable__nit__TClassid
.id
;
6658 if(var_tclassidnode6
== NULL
) {
6661 if(cltype26
>= var_tclassidnode6
->type
->table_size
) {
6664 var25
= var_tclassidnode6
->type
->type_table
[cltype26
] == idtype27
;
6667 if (unlikely(!var25
)) {
6668 PRINT_ERROR("Runtime error: %s", "Assert failed");
6669 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2262);
6672 var_listnode7
= var_nodearraylist7
;
6673 /* <var_listnode7:nullable Object> isa Array[Object] */
6674 cltype29
= type_standard__Array__standard__Object
.color
;
6675 idtype30
= type_standard__Array__standard__Object
.id
;
6676 if(var_listnode7
== NULL
) {
6679 if(cltype29
>= var_listnode7
->type
->table_size
) {
6682 var28
= var_listnode7
->type
->type_table
[cltype29
] == idtype30
;
6685 if (unlikely(!var28
)) {
6686 PRINT_ERROR("Runtime error: %s", "Assert failed");
6687 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2264);
6691 var31
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode8
, var_listnode7
);
6693 var_listnode8
= var31
;
6694 var32
= NEW_standard__Array(&type_standard__Array__standard__Object
);
6696 standard___standard__Array___standard__kernel__Object__init(var32
); /* Direct call array#Array#init on <var32:Array[Object]>*/
6698 var_listnode13
= var32
;
6699 var_listnode12
= var_nodearraylist8
;
6700 /* <var_listnode12:nullable Object> isa Array[Object] */
6701 cltype34
= type_standard__Array__standard__Object
.color
;
6702 idtype35
= type_standard__Array__standard__Object
.id
;
6703 if(var_listnode12
== NULL
) {
6706 if(cltype34
>= var_listnode12
->type
->table_size
) {
6709 var33
= var_listnode12
->type
->type_table
[cltype34
] == idtype35
;
6712 if (unlikely(!var33
)) {
6713 PRINT_ERROR("Runtime error: %s", "Assert failed");
6714 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2268);
6718 var36
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode13
, var_listnode12
);
6720 var_listnode13
= var36
;
6721 var37
= NEW_nit__AAnnotations(&type_nit__AAnnotations
);
6726 nit__parser_prod___AAnnotations___init_aannotations(var37
, var38
, var39
, var_listnode13
, var40
); /* Direct call parser_prod#AAnnotations#init_aannotations on <var37:AAnnotations>*/
6728 var_pannotationsnode9
= var37
;
6729 var_listnode17
= var_nodearraylist9
;
6730 /* <var_listnode17:nullable Object> isa Array[Object] */
6731 cltype42
= type_standard__Array__standard__Object
.color
;
6732 idtype43
= type_standard__Array__standard__Object
.id
;
6733 if(var_listnode17
== NULL
) {
6736 if(cltype42
>= var_listnode17
->type
->table_size
) {
6739 var41
= var_listnode17
->type
->type_table
[cltype42
] == idtype43
;
6742 if (unlikely(!var41
)) {
6743 PRINT_ERROR("Runtime error: %s", "Assert failed");
6744 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2277);
6748 var44
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode18
, var_listnode17
);
6750 var_listnode18
= var44
;
6751 var_tkwendnode19
= var_nodearraylist11
;
6752 /* <var_tkwendnode19:nullable Object> isa nullable TKwend */
6753 cltype46
= type_nullable__nit__TKwend
.color
;
6754 idtype47
= type_nullable__nit__TKwend
.id
;
6755 if(var_tkwendnode19
== NULL
) {
6758 if(cltype46
>= var_tkwendnode19
->type
->table_size
) {
6761 var45
= var_tkwendnode19
->type
->type_table
[cltype46
] == idtype47
;
6764 if (unlikely(!var45
)) {
6765 PRINT_ERROR("Runtime error: %s", "Assert failed");
6766 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2280);
6769 var48
= NEW_nit__AStdClassdef(&type_nit__AStdClassdef
);
6772 nit__parser_prod___AStdClassdef___init_astdclassdef(var48
, var_pdocnode2
, var_tkwredefnode3
, var_pvisibilitynode4
, var_pclasskindnode5
, var_tclassidnode6
, var_listnode8
, var_pannotationsnode9
, var49
, var_listnode16
, var_listnode18
, var_tkwendnode19
); /* Direct call parser_prod#AStdClassdef#init_astdclassdef on <var48:AStdClassdef>*/
6774 var_pclassdefnode1
= var48
;
6775 var_node_list
= var_pclassdefnode1
;
6776 var50
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction35> */
6778 var51
= nit___nit__Parser___go_to(var_p
, var50
);
6781 nit___nit__Parser___push(var_p
, var51
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
6785 /* method parser#ReduceAction36#action for (self: ReduceAction36, Parser) */
6786 void nit__parser___nit__parser__ReduceAction36___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
6787 val
* var_p
/* var p: Parser */;
6788 val
* var
/* : null */;
6789 val
* var_node_list
/* var node_list: nullable Object */;
6790 val
* var1
/* : nullable Object */;
6791 val
* var_nodearraylist11
/* var nodearraylist11: nullable Object */;
6792 val
* var2
/* : nullable Object */;
6793 val
* var_nodearraylist10
/* var nodearraylist10: nullable Object */;
6794 val
* var3
/* : nullable Object */;
6795 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
6796 val
* var4
/* : nullable Object */;
6797 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
6798 val
* var5
/* : nullable Object */;
6799 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
6800 val
* var6
/* : nullable Object */;
6801 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
6802 val
* var7
/* : nullable Object */;
6803 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
6804 val
* var8
/* : nullable Object */;
6805 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
6806 val
* var9
/* : nullable Object */;
6807 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
6808 val
* var10
/* : nullable Object */;
6809 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6810 val
* var11
/* : nullable Object */;
6811 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6812 val
* var12
/* : Array[Object] */;
6813 val
* var_listnode8
/* var listnode8: Array[Object] */;
6814 val
* var13
/* : Array[Object] */;
6815 val
* var_listnode11
/* var listnode11: Array[Object] */;
6816 val
* var14
/* : Array[Object] */;
6817 val
* var_listnode13
/* var listnode13: Array[Object] */;
6818 val
* var_pdocnode2
/* var pdocnode2: nullable Object */;
6819 short int var15
/* : Bool */;
6822 val
* var_tkwredefnode3
/* var tkwredefnode3: nullable Object */;
6823 short int var16
/* : Bool */;
6826 val
* var_pvisibilitynode4
/* var pvisibilitynode4: nullable Object */;
6827 short int var19
/* : Bool */;
6830 val
* var_pclasskindnode5
/* var pclasskindnode5: nullable Object */;
6831 short int var22
/* : Bool */;
6834 val
* var_tclassidnode6
/* var tclassidnode6: nullable Object */;
6835 short int var25
/* : Bool */;
6838 val
* var_listnode7
/* var listnode7: nullable Object */;
6839 short int var28
/* : Bool */;
6842 val
* var31
/* : Array[Object] */;
6843 val
* var_pexterncodeblocknode10
/* var pexterncodeblocknode10: nullable Object */;
6844 short int var32
/* : Bool */;
6847 val
* var_listnode12
/* var listnode12: nullable Object */;
6848 short int var35
/* : Bool */;
6851 val
* var38
/* : Array[Object] */;
6852 val
* var_tkwendnode14
/* var tkwendnode14: nullable Object */;
6853 short int var39
/* : Bool */;
6856 val
* var42
/* : AStdClassdef */;
6857 val
* var43
/* : null */;
6858 val
* var_pclassdefnode1
/* var pclassdefnode1: nullable AStdClassdef */;
6859 long var44
/* : Int */;
6860 long var45
/* : Int */;
6863 var_node_list
= var
;
6865 var1
= nit___nit__Parser___pop(var_p
);
6867 var_nodearraylist11
= var1
;
6869 var2
= nit___nit__Parser___pop(var_p
);
6871 var_nodearraylist10
= var2
;
6873 var3
= nit___nit__Parser___pop(var_p
);
6875 var_nodearraylist9
= var3
;
6877 var4
= nit___nit__Parser___pop(var_p
);
6879 var_nodearraylist8
= var4
;
6881 var5
= nit___nit__Parser___pop(var_p
);
6883 var_nodearraylist7
= var5
;
6885 var6
= nit___nit__Parser___pop(var_p
);
6887 var_nodearraylist6
= var6
;
6889 var7
= nit___nit__Parser___pop(var_p
);
6891 var_nodearraylist5
= var7
;
6893 var8
= nit___nit__Parser___pop(var_p
);
6895 var_nodearraylist4
= var8
;
6897 var9
= nit___nit__Parser___pop(var_p
);
6899 var_nodearraylist3
= var9
;
6901 var10
= nit___nit__Parser___pop(var_p
);
6903 var_nodearraylist2
= var10
;
6905 var11
= nit___nit__Parser___pop(var_p
);
6907 var_nodearraylist1
= var11
;
6908 var12
= NEW_standard__Array(&type_standard__Array__standard__Object
);
6910 standard___standard__Array___standard__kernel__Object__init(var12
); /* Direct call array#Array#init on <var12:Array[Object]>*/
6912 var_listnode8
= var12
;
6913 var13
= NEW_standard__Array(&type_standard__Array__standard__Object
);
6915 standard___standard__Array___standard__kernel__Object__init(var13
); /* Direct call array#Array#init on <var13:Array[Object]>*/
6917 var_listnode11
= var13
;
6918 var14
= NEW_standard__Array(&type_standard__Array__standard__Object
);
6920 standard___standard__Array___standard__kernel__Object__init(var14
); /* Direct call array#Array#init on <var14:Array[Object]>*/
6922 var_listnode13
= var14
;
6923 var_pdocnode2
= var_nodearraylist1
;
6924 /* <var_pdocnode2:nullable Object> isa nullable ADoc */
6925 cltype
= type_nullable__nit__ADoc
.color
;
6926 idtype
= type_nullable__nit__ADoc
.id
;
6927 if(var_pdocnode2
== NULL
) {
6930 if(cltype
>= var_pdocnode2
->type
->table_size
) {
6933 var15
= var_pdocnode2
->type
->type_table
[cltype
] == idtype
;
6936 if (unlikely(!var15
)) {
6937 PRINT_ERROR("Runtime error: %s", "Assert failed");
6938 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2318);
6941 var_tkwredefnode3
= var_nodearraylist2
;
6942 /* <var_tkwredefnode3:nullable Object> isa nullable TKwredef */
6943 cltype17
= type_nullable__nit__TKwredef
.color
;
6944 idtype18
= type_nullable__nit__TKwredef
.id
;
6945 if(var_tkwredefnode3
== NULL
) {
6948 if(cltype17
>= var_tkwredefnode3
->type
->table_size
) {
6951 var16
= var_tkwredefnode3
->type
->type_table
[cltype17
] == idtype18
;
6954 if (unlikely(!var16
)) {
6955 PRINT_ERROR("Runtime error: %s", "Assert failed");
6956 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2320);
6959 var_pvisibilitynode4
= var_nodearraylist3
;
6960 /* <var_pvisibilitynode4:nullable Object> isa nullable AVisibility */
6961 cltype20
= type_nullable__nit__AVisibility
.color
;
6962 idtype21
= type_nullable__nit__AVisibility
.id
;
6963 if(var_pvisibilitynode4
== NULL
) {
6966 if(cltype20
>= var_pvisibilitynode4
->type
->table_size
) {
6969 var19
= var_pvisibilitynode4
->type
->type_table
[cltype20
] == idtype21
;
6972 if (unlikely(!var19
)) {
6973 PRINT_ERROR("Runtime error: %s", "Assert failed");
6974 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2322);
6977 var_pclasskindnode5
= var_nodearraylist4
;
6978 /* <var_pclasskindnode5:nullable Object> isa nullable AClasskind */
6979 cltype23
= type_nullable__nit__AClasskind
.color
;
6980 idtype24
= type_nullable__nit__AClasskind
.id
;
6981 if(var_pclasskindnode5
== NULL
) {
6984 if(cltype23
>= var_pclasskindnode5
->type
->table_size
) {
6987 var22
= var_pclasskindnode5
->type
->type_table
[cltype23
] == idtype24
;
6990 if (unlikely(!var22
)) {
6991 PRINT_ERROR("Runtime error: %s", "Assert failed");
6992 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2324);
6995 var_tclassidnode6
= var_nodearraylist6
;
6996 /* <var_tclassidnode6:nullable Object> isa nullable TClassid */
6997 cltype26
= type_nullable__nit__TClassid
.color
;
6998 idtype27
= type_nullable__nit__TClassid
.id
;
6999 if(var_tclassidnode6
== NULL
) {
7002 if(cltype26
>= var_tclassidnode6
->type
->table_size
) {
7005 var25
= var_tclassidnode6
->type
->type_table
[cltype26
] == idtype27
;
7008 if (unlikely(!var25
)) {
7009 PRINT_ERROR("Runtime error: %s", "Assert failed");
7010 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2326);
7013 var_listnode7
= var_nodearraylist7
;
7014 /* <var_listnode7:nullable Object> isa Array[Object] */
7015 cltype29
= type_standard__Array__standard__Object
.color
;
7016 idtype30
= type_standard__Array__standard__Object
.id
;
7017 if(var_listnode7
== NULL
) {
7020 if(cltype29
>= var_listnode7
->type
->table_size
) {
7023 var28
= var_listnode7
->type
->type_table
[cltype29
] == idtype30
;
7026 if (unlikely(!var28
)) {
7027 PRINT_ERROR("Runtime error: %s", "Assert failed");
7028 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2328);
7032 var31
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode8
, var_listnode7
);
7034 var_listnode8
= var31
;
7035 var_pexterncodeblocknode10
= var_nodearraylist8
;
7036 /* <var_pexterncodeblocknode10:nullable Object> isa nullable AExternCodeBlock */
7037 cltype33
= type_nullable__nit__AExternCodeBlock
.color
;
7038 idtype34
= type_nullable__nit__AExternCodeBlock
.id
;
7039 if(var_pexterncodeblocknode10
== NULL
) {
7042 if(cltype33
>= var_pexterncodeblocknode10
->type
->table_size
) {
7045 var32
= var_pexterncodeblocknode10
->type
->type_table
[cltype33
] == idtype34
;
7048 if (unlikely(!var32
)) {
7049 PRINT_ERROR("Runtime error: %s", "Assert failed");
7050 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2331);
7053 var_listnode12
= var_nodearraylist9
;
7054 /* <var_listnode12:nullable Object> isa Array[Object] */
7055 cltype36
= type_standard__Array__standard__Object
.color
;
7056 idtype37
= type_standard__Array__standard__Object
.id
;
7057 if(var_listnode12
== NULL
) {
7060 if(cltype36
>= var_listnode12
->type
->table_size
) {
7063 var35
= var_listnode12
->type
->type_table
[cltype36
] == idtype37
;
7066 if (unlikely(!var35
)) {
7067 PRINT_ERROR("Runtime error: %s", "Assert failed");
7068 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2333);
7072 var38
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode13
, var_listnode12
);
7074 var_listnode13
= var38
;
7075 var_tkwendnode14
= var_nodearraylist11
;
7076 /* <var_tkwendnode14:nullable Object> isa nullable TKwend */
7077 cltype40
= type_nullable__nit__TKwend
.color
;
7078 idtype41
= type_nullable__nit__TKwend
.id
;
7079 if(var_tkwendnode14
== NULL
) {
7082 if(cltype40
>= var_tkwendnode14
->type
->table_size
) {
7085 var39
= var_tkwendnode14
->type
->type_table
[cltype40
] == idtype41
;
7088 if (unlikely(!var39
)) {
7089 PRINT_ERROR("Runtime error: %s", "Assert failed");
7090 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2336);
7093 var42
= NEW_nit__AStdClassdef(&type_nit__AStdClassdef
);
7096 nit__parser_prod___AStdClassdef___init_astdclassdef(var42
, var_pdocnode2
, var_tkwredefnode3
, var_pvisibilitynode4
, var_pclasskindnode5
, var_tclassidnode6
, var_listnode8
, var43
, var_pexterncodeblocknode10
, var_listnode11
, var_listnode13
, var_tkwendnode14
); /* Direct call parser_prod#AStdClassdef#init_astdclassdef on <var42:AStdClassdef>*/
7098 var_pclassdefnode1
= var42
;
7099 var_node_list
= var_pclassdefnode1
;
7100 var44
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction36> */
7102 var45
= nit___nit__Parser___go_to(var_p
, var44
);
7105 nit___nit__Parser___push(var_p
, var45
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
7109 /* method parser#ReduceAction37#action for (self: ReduceAction37, Parser) */
7110 void nit__parser___nit__parser__ReduceAction37___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
7111 val
* var_p
/* var p: Parser */;
7112 val
* var
/* : null */;
7113 val
* var_node_list
/* var node_list: nullable Object */;
7114 val
* var1
/* : nullable Object */;
7115 val
* var_nodearraylist12
/* var nodearraylist12: nullable Object */;
7116 val
* var2
/* : nullable Object */;
7117 val
* var_nodearraylist11
/* var nodearraylist11: nullable Object */;
7118 val
* var3
/* : nullable Object */;
7119 val
* var_nodearraylist10
/* var nodearraylist10: nullable Object */;
7120 val
* var4
/* : nullable Object */;
7121 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
7122 val
* var5
/* : nullable Object */;
7123 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
7124 val
* var6
/* : nullable Object */;
7125 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
7126 val
* var7
/* : nullable Object */;
7127 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
7128 val
* var8
/* : nullable Object */;
7129 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
7130 val
* var9
/* : nullable Object */;
7131 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
7132 val
* var10
/* : nullable Object */;
7133 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
7134 val
* var11
/* : nullable Object */;
7135 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7136 val
* var12
/* : nullable Object */;
7137 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7138 val
* var13
/* : Array[Object] */;
7139 val
* var_listnode8
/* var listnode8: Array[Object] */;
7140 val
* var14
/* : Array[Object] */;
7141 val
* var_listnode16
/* var listnode16: Array[Object] */;
7142 val
* var15
/* : Array[Object] */;
7143 val
* var_listnode18
/* var listnode18: Array[Object] */;
7144 val
* var_pdocnode2
/* var pdocnode2: nullable Object */;
7145 short int var16
/* : Bool */;
7148 val
* var_tkwredefnode3
/* var tkwredefnode3: nullable Object */;
7149 short int var17
/* : Bool */;
7152 val
* var_pvisibilitynode4
/* var pvisibilitynode4: nullable Object */;
7153 short int var20
/* : Bool */;
7156 val
* var_pclasskindnode5
/* var pclasskindnode5: nullable Object */;
7157 short int var23
/* : Bool */;
7160 val
* var_tclassidnode6
/* var tclassidnode6: nullable Object */;
7161 short int var26
/* : Bool */;
7164 val
* var_listnode7
/* var listnode7: nullable Object */;
7165 short int var29
/* : Bool */;
7168 val
* var32
/* : Array[Object] */;
7169 val
* var33
/* : Array[Object] */;
7170 val
* var_listnode13
/* var listnode13: Array[Object] */;
7171 val
* var_listnode12
/* var listnode12: nullable Object */;
7172 short int var34
/* : Bool */;
7175 val
* var37
/* : Array[Object] */;
7176 val
* var38
/* : AAnnotations */;
7177 val
* var39
/* : null */;
7178 val
* var40
/* : null */;
7179 val
* var41
/* : null */;
7180 val
* var_pannotationsnode9
/* var pannotationsnode9: nullable AAnnotations */;
7181 val
* var_pexterncodeblocknode15
/* var pexterncodeblocknode15: nullable Object */;
7182 short int var42
/* : Bool */;
7185 val
* var_listnode17
/* var listnode17: nullable Object */;
7186 short int var45
/* : Bool */;
7189 val
* var48
/* : Array[Object] */;
7190 val
* var_tkwendnode19
/* var tkwendnode19: nullable Object */;
7191 short int var49
/* : Bool */;
7194 val
* var52
/* : AStdClassdef */;
7195 val
* var_pclassdefnode1
/* var pclassdefnode1: nullable AStdClassdef */;
7196 long var53
/* : Int */;
7197 long var54
/* : Int */;
7200 var_node_list
= var
;
7202 var1
= nit___nit__Parser___pop(var_p
);
7204 var_nodearraylist12
= var1
;
7206 var2
= nit___nit__Parser___pop(var_p
);
7208 var_nodearraylist11
= var2
;
7210 var3
= nit___nit__Parser___pop(var_p
);
7212 var_nodearraylist10
= var3
;
7214 var4
= nit___nit__Parser___pop(var_p
);
7216 var_nodearraylist9
= var4
;
7218 var5
= nit___nit__Parser___pop(var_p
);
7220 var_nodearraylist8
= var5
;
7222 var6
= nit___nit__Parser___pop(var_p
);
7224 var_nodearraylist7
= var6
;
7226 var7
= nit___nit__Parser___pop(var_p
);
7228 var_nodearraylist6
= var7
;
7230 var8
= nit___nit__Parser___pop(var_p
);
7232 var_nodearraylist5
= var8
;
7234 var9
= nit___nit__Parser___pop(var_p
);
7236 var_nodearraylist4
= var9
;
7238 var10
= nit___nit__Parser___pop(var_p
);
7240 var_nodearraylist3
= var10
;
7242 var11
= nit___nit__Parser___pop(var_p
);
7244 var_nodearraylist2
= var11
;
7246 var12
= nit___nit__Parser___pop(var_p
);
7248 var_nodearraylist1
= var12
;
7249 var13
= NEW_standard__Array(&type_standard__Array__standard__Object
);
7251 standard___standard__Array___standard__kernel__Object__init(var13
); /* Direct call array#Array#init on <var13:Array[Object]>*/
7253 var_listnode8
= var13
;
7254 var14
= NEW_standard__Array(&type_standard__Array__standard__Object
);
7256 standard___standard__Array___standard__kernel__Object__init(var14
); /* Direct call array#Array#init on <var14:Array[Object]>*/
7258 var_listnode16
= var14
;
7259 var15
= NEW_standard__Array(&type_standard__Array__standard__Object
);
7261 standard___standard__Array___standard__kernel__Object__init(var15
); /* Direct call array#Array#init on <var15:Array[Object]>*/
7263 var_listnode18
= var15
;
7264 var_pdocnode2
= var_nodearraylist1
;
7265 /* <var_pdocnode2:nullable Object> isa nullable ADoc */
7266 cltype
= type_nullable__nit__ADoc
.color
;
7267 idtype
= type_nullable__nit__ADoc
.id
;
7268 if(var_pdocnode2
== NULL
) {
7271 if(cltype
>= var_pdocnode2
->type
->table_size
) {
7274 var16
= var_pdocnode2
->type
->type_table
[cltype
] == idtype
;
7277 if (unlikely(!var16
)) {
7278 PRINT_ERROR("Runtime error: %s", "Assert failed");
7279 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2375);
7282 var_tkwredefnode3
= var_nodearraylist2
;
7283 /* <var_tkwredefnode3:nullable Object> isa nullable TKwredef */
7284 cltype18
= type_nullable__nit__TKwredef
.color
;
7285 idtype19
= type_nullable__nit__TKwredef
.id
;
7286 if(var_tkwredefnode3
== NULL
) {
7289 if(cltype18
>= var_tkwredefnode3
->type
->table_size
) {
7292 var17
= var_tkwredefnode3
->type
->type_table
[cltype18
] == idtype19
;
7295 if (unlikely(!var17
)) {
7296 PRINT_ERROR("Runtime error: %s", "Assert failed");
7297 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2377);
7300 var_pvisibilitynode4
= var_nodearraylist3
;
7301 /* <var_pvisibilitynode4:nullable Object> isa nullable AVisibility */
7302 cltype21
= type_nullable__nit__AVisibility
.color
;
7303 idtype22
= type_nullable__nit__AVisibility
.id
;
7304 if(var_pvisibilitynode4
== NULL
) {
7307 if(cltype21
>= var_pvisibilitynode4
->type
->table_size
) {
7310 var20
= var_pvisibilitynode4
->type
->type_table
[cltype21
] == idtype22
;
7313 if (unlikely(!var20
)) {
7314 PRINT_ERROR("Runtime error: %s", "Assert failed");
7315 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2379);
7318 var_pclasskindnode5
= var_nodearraylist4
;
7319 /* <var_pclasskindnode5:nullable Object> isa nullable AClasskind */
7320 cltype24
= type_nullable__nit__AClasskind
.color
;
7321 idtype25
= type_nullable__nit__AClasskind
.id
;
7322 if(var_pclasskindnode5
== NULL
) {
7325 if(cltype24
>= var_pclasskindnode5
->type
->table_size
) {
7328 var23
= var_pclasskindnode5
->type
->type_table
[cltype24
] == idtype25
;
7331 if (unlikely(!var23
)) {
7332 PRINT_ERROR("Runtime error: %s", "Assert failed");
7333 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2381);
7336 var_tclassidnode6
= var_nodearraylist6
;
7337 /* <var_tclassidnode6:nullable Object> isa nullable TClassid */
7338 cltype27
= type_nullable__nit__TClassid
.color
;
7339 idtype28
= type_nullable__nit__TClassid
.id
;
7340 if(var_tclassidnode6
== NULL
) {
7343 if(cltype27
>= var_tclassidnode6
->type
->table_size
) {
7346 var26
= var_tclassidnode6
->type
->type_table
[cltype27
] == idtype28
;
7349 if (unlikely(!var26
)) {
7350 PRINT_ERROR("Runtime error: %s", "Assert failed");
7351 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2383);
7354 var_listnode7
= var_nodearraylist7
;
7355 /* <var_listnode7:nullable Object> isa Array[Object] */
7356 cltype30
= type_standard__Array__standard__Object
.color
;
7357 idtype31
= type_standard__Array__standard__Object
.id
;
7358 if(var_listnode7
== NULL
) {
7361 if(cltype30
>= var_listnode7
->type
->table_size
) {
7364 var29
= var_listnode7
->type
->type_table
[cltype30
] == idtype31
;
7367 if (unlikely(!var29
)) {
7368 PRINT_ERROR("Runtime error: %s", "Assert failed");
7369 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2385);
7373 var32
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode8
, var_listnode7
);
7375 var_listnode8
= var32
;
7376 var33
= NEW_standard__Array(&type_standard__Array__standard__Object
);
7378 standard___standard__Array___standard__kernel__Object__init(var33
); /* Direct call array#Array#init on <var33:Array[Object]>*/
7380 var_listnode13
= var33
;
7381 var_listnode12
= var_nodearraylist8
;
7382 /* <var_listnode12:nullable Object> isa Array[Object] */
7383 cltype35
= type_standard__Array__standard__Object
.color
;
7384 idtype36
= type_standard__Array__standard__Object
.id
;
7385 if(var_listnode12
== NULL
) {
7388 if(cltype35
>= var_listnode12
->type
->table_size
) {
7391 var34
= var_listnode12
->type
->type_table
[cltype35
] == idtype36
;
7394 if (unlikely(!var34
)) {
7395 PRINT_ERROR("Runtime error: %s", "Assert failed");
7396 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2389);
7400 var37
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode13
, var_listnode12
);
7402 var_listnode13
= var37
;
7403 var38
= NEW_nit__AAnnotations(&type_nit__AAnnotations
);
7408 nit__parser_prod___AAnnotations___init_aannotations(var38
, var39
, var40
, var_listnode13
, var41
); /* Direct call parser_prod#AAnnotations#init_aannotations on <var38:AAnnotations>*/
7410 var_pannotationsnode9
= var38
;
7411 var_pexterncodeblocknode15
= var_nodearraylist9
;
7412 /* <var_pexterncodeblocknode15:nullable Object> isa nullable AExternCodeBlock */
7413 cltype43
= type_nullable__nit__AExternCodeBlock
.color
;
7414 idtype44
= type_nullable__nit__AExternCodeBlock
.id
;
7415 if(var_pexterncodeblocknode15
== NULL
) {
7418 if(cltype43
>= var_pexterncodeblocknode15
->type
->table_size
) {
7421 var42
= var_pexterncodeblocknode15
->type
->type_table
[cltype43
] == idtype44
;
7424 if (unlikely(!var42
)) {
7425 PRINT_ERROR("Runtime error: %s", "Assert failed");
7426 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2398);
7429 var_listnode17
= var_nodearraylist10
;
7430 /* <var_listnode17:nullable Object> isa Array[Object] */
7431 cltype46
= type_standard__Array__standard__Object
.color
;
7432 idtype47
= type_standard__Array__standard__Object
.id
;
7433 if(var_listnode17
== NULL
) {
7436 if(cltype46
>= var_listnode17
->type
->table_size
) {
7439 var45
= var_listnode17
->type
->type_table
[cltype46
] == idtype47
;
7442 if (unlikely(!var45
)) {
7443 PRINT_ERROR("Runtime error: %s", "Assert failed");
7444 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2400);
7448 var48
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode18
, var_listnode17
);
7450 var_listnode18
= var48
;
7451 var_tkwendnode19
= var_nodearraylist12
;
7452 /* <var_tkwendnode19:nullable Object> isa nullable TKwend */
7453 cltype50
= type_nullable__nit__TKwend
.color
;
7454 idtype51
= type_nullable__nit__TKwend
.id
;
7455 if(var_tkwendnode19
== NULL
) {
7458 if(cltype50
>= var_tkwendnode19
->type
->table_size
) {
7461 var49
= var_tkwendnode19
->type
->type_table
[cltype50
] == idtype51
;
7464 if (unlikely(!var49
)) {
7465 PRINT_ERROR("Runtime error: %s", "Assert failed");
7466 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2403);
7469 var52
= NEW_nit__AStdClassdef(&type_nit__AStdClassdef
);
7471 nit__parser_prod___AStdClassdef___init_astdclassdef(var52
, var_pdocnode2
, var_tkwredefnode3
, var_pvisibilitynode4
, var_pclasskindnode5
, var_tclassidnode6
, var_listnode8
, var_pannotationsnode9
, var_pexterncodeblocknode15
, var_listnode16
, var_listnode18
, var_tkwendnode19
); /* Direct call parser_prod#AStdClassdef#init_astdclassdef on <var52:AStdClassdef>*/
7473 var_pclassdefnode1
= var52
;
7474 var_node_list
= var_pclassdefnode1
;
7475 var53
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction37> */
7477 var54
= nit___nit__Parser___go_to(var_p
, var53
);
7480 nit___nit__Parser___push(var_p
, var54
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
7484 /* method parser#ReduceAction38#action for (self: ReduceAction38, Parser) */
7485 void nit__parser___nit__parser__ReduceAction38___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
7486 val
* var_p
/* var p: Parser */;
7487 val
* var
/* : null */;
7488 val
* var_node_list
/* var node_list: nullable Object */;
7489 val
* var1
/* : nullable Object */;
7490 val
* var_nodearraylist11
/* var nodearraylist11: nullable Object */;
7491 val
* var2
/* : nullable Object */;
7492 val
* var_nodearraylist10
/* var nodearraylist10: nullable Object */;
7493 val
* var3
/* : nullable Object */;
7494 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
7495 val
* var4
/* : nullable Object */;
7496 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
7497 val
* var5
/* : nullable Object */;
7498 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
7499 val
* var6
/* : nullable Object */;
7500 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
7501 val
* var7
/* : nullable Object */;
7502 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
7503 val
* var8
/* : nullable Object */;
7504 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
7505 val
* var9
/* : nullable Object */;
7506 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
7507 val
* var10
/* : nullable Object */;
7508 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7509 val
* var11
/* : nullable Object */;
7510 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7511 val
* var12
/* : Array[Object] */;
7512 val
* var_listnode8
/* var listnode8: Array[Object] */;
7513 val
* var13
/* : Array[Object] */;
7514 val
* var_listnode12
/* var listnode12: Array[Object] */;
7515 val
* var14
/* : Array[Object] */;
7516 val
* var_listnode14
/* var listnode14: Array[Object] */;
7517 val
* var_pdocnode2
/* var pdocnode2: nullable Object */;
7518 short int var15
/* : Bool */;
7521 val
* var_tkwredefnode3
/* var tkwredefnode3: nullable Object */;
7522 short int var16
/* : Bool */;
7525 val
* var_pvisibilitynode4
/* var pvisibilitynode4: nullable Object */;
7526 short int var19
/* : Bool */;
7529 val
* var_pclasskindnode5
/* var pclasskindnode5: nullable Object */;
7530 short int var22
/* : Bool */;
7533 val
* var_tclassidnode6
/* var tclassidnode6: nullable Object */;
7534 short int var25
/* : Bool */;
7537 val
* var_listnode7
/* var listnode7: nullable Object */;
7538 short int var28
/* : Bool */;
7541 val
* var31
/* : Array[Object] */;
7542 val
* var_listnode11
/* var listnode11: nullable Object */;
7543 short int var32
/* : Bool */;
7546 val
* var35
/* : Array[Object] */;
7547 val
* var_listnode13
/* var listnode13: nullable Object */;
7548 short int var36
/* : Bool */;
7551 val
* var39
/* : Array[Object] */;
7552 val
* var_tkwendnode15
/* var tkwendnode15: nullable Object */;
7553 short int var40
/* : Bool */;
7556 val
* var43
/* : AStdClassdef */;
7557 val
* var44
/* : null */;
7558 val
* var45
/* : null */;
7559 val
* var_pclassdefnode1
/* var pclassdefnode1: nullable AStdClassdef */;
7560 long var46
/* : Int */;
7561 long var47
/* : Int */;
7564 var_node_list
= var
;
7566 var1
= nit___nit__Parser___pop(var_p
);
7568 var_nodearraylist11
= var1
;
7570 var2
= nit___nit__Parser___pop(var_p
);
7572 var_nodearraylist10
= var2
;
7574 var3
= nit___nit__Parser___pop(var_p
);
7576 var_nodearraylist9
= var3
;
7578 var4
= nit___nit__Parser___pop(var_p
);
7580 var_nodearraylist8
= var4
;
7582 var5
= nit___nit__Parser___pop(var_p
);
7584 var_nodearraylist7
= var5
;
7586 var6
= nit___nit__Parser___pop(var_p
);
7588 var_nodearraylist6
= var6
;
7590 var7
= nit___nit__Parser___pop(var_p
);
7592 var_nodearraylist5
= var7
;
7594 var8
= nit___nit__Parser___pop(var_p
);
7596 var_nodearraylist4
= var8
;
7598 var9
= nit___nit__Parser___pop(var_p
);
7600 var_nodearraylist3
= var9
;
7602 var10
= nit___nit__Parser___pop(var_p
);
7604 var_nodearraylist2
= var10
;
7606 var11
= nit___nit__Parser___pop(var_p
);
7608 var_nodearraylist1
= var11
;
7609 var12
= NEW_standard__Array(&type_standard__Array__standard__Object
);
7611 standard___standard__Array___standard__kernel__Object__init(var12
); /* Direct call array#Array#init on <var12:Array[Object]>*/
7613 var_listnode8
= var12
;
7614 var13
= NEW_standard__Array(&type_standard__Array__standard__Object
);
7616 standard___standard__Array___standard__kernel__Object__init(var13
); /* Direct call array#Array#init on <var13:Array[Object]>*/
7618 var_listnode12
= var13
;
7619 var14
= NEW_standard__Array(&type_standard__Array__standard__Object
);
7621 standard___standard__Array___standard__kernel__Object__init(var14
); /* Direct call array#Array#init on <var14:Array[Object]>*/
7623 var_listnode14
= var14
;
7624 var_pdocnode2
= var_nodearraylist1
;
7625 /* <var_pdocnode2:nullable Object> isa nullable ADoc */
7626 cltype
= type_nullable__nit__ADoc
.color
;
7627 idtype
= type_nullable__nit__ADoc
.id
;
7628 if(var_pdocnode2
== NULL
) {
7631 if(cltype
>= var_pdocnode2
->type
->table_size
) {
7634 var15
= var_pdocnode2
->type
->type_table
[cltype
] == idtype
;
7637 if (unlikely(!var15
)) {
7638 PRINT_ERROR("Runtime error: %s", "Assert failed");
7639 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2441);
7642 var_tkwredefnode3
= var_nodearraylist2
;
7643 /* <var_tkwredefnode3:nullable Object> isa nullable TKwredef */
7644 cltype17
= type_nullable__nit__TKwredef
.color
;
7645 idtype18
= type_nullable__nit__TKwredef
.id
;
7646 if(var_tkwredefnode3
== NULL
) {
7649 if(cltype17
>= var_tkwredefnode3
->type
->table_size
) {
7652 var16
= var_tkwredefnode3
->type
->type_table
[cltype17
] == idtype18
;
7655 if (unlikely(!var16
)) {
7656 PRINT_ERROR("Runtime error: %s", "Assert failed");
7657 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2443);
7660 var_pvisibilitynode4
= var_nodearraylist3
;
7661 /* <var_pvisibilitynode4:nullable Object> isa nullable AVisibility */
7662 cltype20
= type_nullable__nit__AVisibility
.color
;
7663 idtype21
= type_nullable__nit__AVisibility
.id
;
7664 if(var_pvisibilitynode4
== NULL
) {
7667 if(cltype20
>= var_pvisibilitynode4
->type
->table_size
) {
7670 var19
= var_pvisibilitynode4
->type
->type_table
[cltype20
] == idtype21
;
7673 if (unlikely(!var19
)) {
7674 PRINT_ERROR("Runtime error: %s", "Assert failed");
7675 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2445);
7678 var_pclasskindnode5
= var_nodearraylist4
;
7679 /* <var_pclasskindnode5:nullable Object> isa nullable AClasskind */
7680 cltype23
= type_nullable__nit__AClasskind
.color
;
7681 idtype24
= type_nullable__nit__AClasskind
.id
;
7682 if(var_pclasskindnode5
== NULL
) {
7685 if(cltype23
>= var_pclasskindnode5
->type
->table_size
) {
7688 var22
= var_pclasskindnode5
->type
->type_table
[cltype23
] == idtype24
;
7691 if (unlikely(!var22
)) {
7692 PRINT_ERROR("Runtime error: %s", "Assert failed");
7693 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2447);
7696 var_tclassidnode6
= var_nodearraylist6
;
7697 /* <var_tclassidnode6:nullable Object> isa nullable TClassid */
7698 cltype26
= type_nullable__nit__TClassid
.color
;
7699 idtype27
= type_nullable__nit__TClassid
.id
;
7700 if(var_tclassidnode6
== NULL
) {
7703 if(cltype26
>= var_tclassidnode6
->type
->table_size
) {
7706 var25
= var_tclassidnode6
->type
->type_table
[cltype26
] == idtype27
;
7709 if (unlikely(!var25
)) {
7710 PRINT_ERROR("Runtime error: %s", "Assert failed");
7711 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2449);
7714 var_listnode7
= var_nodearraylist7
;
7715 /* <var_listnode7:nullable Object> isa Array[Object] */
7716 cltype29
= type_standard__Array__standard__Object
.color
;
7717 idtype30
= type_standard__Array__standard__Object
.id
;
7718 if(var_listnode7
== NULL
) {
7721 if(cltype29
>= var_listnode7
->type
->table_size
) {
7724 var28
= var_listnode7
->type
->type_table
[cltype29
] == idtype30
;
7727 if (unlikely(!var28
)) {
7728 PRINT_ERROR("Runtime error: %s", "Assert failed");
7729 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2451);
7733 var31
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode8
, var_listnode7
);
7735 var_listnode8
= var31
;
7736 var_listnode11
= var_nodearraylist8
;
7737 /* <var_listnode11:nullable Object> isa Array[Object] */
7738 cltype33
= type_standard__Array__standard__Object
.color
;
7739 idtype34
= type_standard__Array__standard__Object
.id
;
7740 if(var_listnode11
== NULL
) {
7743 if(cltype33
>= var_listnode11
->type
->table_size
) {
7746 var32
= var_listnode11
->type
->type_table
[cltype33
] == idtype34
;
7749 if (unlikely(!var32
)) {
7750 PRINT_ERROR("Runtime error: %s", "Assert failed");
7751 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2454);
7755 var35
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode12
, var_listnode11
);
7757 var_listnode12
= var35
;
7758 var_listnode13
= var_nodearraylist9
;
7759 /* <var_listnode13:nullable Object> isa Array[Object] */
7760 cltype37
= type_standard__Array__standard__Object
.color
;
7761 idtype38
= type_standard__Array__standard__Object
.id
;
7762 if(var_listnode13
== NULL
) {
7765 if(cltype37
>= var_listnode13
->type
->table_size
) {
7768 var36
= var_listnode13
->type
->type_table
[cltype37
] == idtype38
;
7771 if (unlikely(!var36
)) {
7772 PRINT_ERROR("Runtime error: %s", "Assert failed");
7773 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2457);
7777 var39
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode14
, var_listnode13
);
7779 var_listnode14
= var39
;
7780 var_tkwendnode15
= var_nodearraylist11
;
7781 /* <var_tkwendnode15:nullable Object> isa nullable TKwend */
7782 cltype41
= type_nullable__nit__TKwend
.color
;
7783 idtype42
= type_nullable__nit__TKwend
.id
;
7784 if(var_tkwendnode15
== NULL
) {
7787 if(cltype41
>= var_tkwendnode15
->type
->table_size
) {
7790 var40
= var_tkwendnode15
->type
->type_table
[cltype41
] == idtype42
;
7793 if (unlikely(!var40
)) {
7794 PRINT_ERROR("Runtime error: %s", "Assert failed");
7795 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2460);
7798 var43
= NEW_nit__AStdClassdef(&type_nit__AStdClassdef
);
7802 nit__parser_prod___AStdClassdef___init_astdclassdef(var43
, var_pdocnode2
, var_tkwredefnode3
, var_pvisibilitynode4
, var_pclasskindnode5
, var_tclassidnode6
, var_listnode8
, var44
, var45
, var_listnode12
, var_listnode14
, var_tkwendnode15
); /* Direct call parser_prod#AStdClassdef#init_astdclassdef on <var43:AStdClassdef>*/
7804 var_pclassdefnode1
= var43
;
7805 var_node_list
= var_pclassdefnode1
;
7806 var46
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction38> */
7808 var47
= nit___nit__Parser___go_to(var_p
, var46
);
7811 nit___nit__Parser___push(var_p
, var47
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
7815 /* method parser#ReduceAction39#action for (self: ReduceAction39, Parser) */
7816 void nit__parser___nit__parser__ReduceAction39___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
7817 val
* var_p
/* var p: Parser */;
7818 val
* var
/* : null */;
7819 val
* var_node_list
/* var node_list: nullable Object */;
7820 val
* var1
/* : nullable Object */;
7821 val
* var_nodearraylist12
/* var nodearraylist12: nullable Object */;
7822 val
* var2
/* : nullable Object */;
7823 val
* var_nodearraylist11
/* var nodearraylist11: nullable Object */;
7824 val
* var3
/* : nullable Object */;
7825 val
* var_nodearraylist10
/* var nodearraylist10: nullable Object */;
7826 val
* var4
/* : nullable Object */;
7827 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
7828 val
* var5
/* : nullable Object */;
7829 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
7830 val
* var6
/* : nullable Object */;
7831 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
7832 val
* var7
/* : nullable Object */;
7833 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
7834 val
* var8
/* : nullable Object */;
7835 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
7836 val
* var9
/* : nullable Object */;
7837 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
7838 val
* var10
/* : nullable Object */;
7839 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
7840 val
* var11
/* : nullable Object */;
7841 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7842 val
* var12
/* : nullable Object */;
7843 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7844 val
* var13
/* : Array[Object] */;
7845 val
* var_listnode8
/* var listnode8: Array[Object] */;
7846 val
* var14
/* : Array[Object] */;
7847 val
* var_listnode17
/* var listnode17: Array[Object] */;
7848 val
* var15
/* : Array[Object] */;
7849 val
* var_listnode19
/* var listnode19: Array[Object] */;
7850 val
* var_pdocnode2
/* var pdocnode2: nullable Object */;
7851 short int var16
/* : Bool */;
7854 val
* var_tkwredefnode3
/* var tkwredefnode3: nullable Object */;
7855 short int var17
/* : Bool */;
7858 val
* var_pvisibilitynode4
/* var pvisibilitynode4: nullable Object */;
7859 short int var20
/* : Bool */;
7862 val
* var_pclasskindnode5
/* var pclasskindnode5: nullable Object */;
7863 short int var23
/* : Bool */;
7866 val
* var_tclassidnode6
/* var tclassidnode6: nullable Object */;
7867 short int var26
/* : Bool */;
7870 val
* var_listnode7
/* var listnode7: nullable Object */;
7871 short int var29
/* : Bool */;
7874 val
* var32
/* : Array[Object] */;
7875 val
* var33
/* : Array[Object] */;
7876 val
* var_listnode13
/* var listnode13: Array[Object] */;
7877 val
* var_listnode12
/* var listnode12: nullable Object */;
7878 short int var34
/* : Bool */;
7881 val
* var37
/* : Array[Object] */;
7882 val
* var38
/* : AAnnotations */;
7883 val
* var39
/* : null */;
7884 val
* var40
/* : null */;
7885 val
* var41
/* : null */;
7886 val
* var_pannotationsnode9
/* var pannotationsnode9: nullable AAnnotations */;
7887 val
* var_listnode16
/* var listnode16: nullable Object */;
7888 short int var42
/* : Bool */;
7891 val
* var45
/* : Array[Object] */;
7892 val
* var_listnode18
/* var listnode18: nullable Object */;
7893 short int var46
/* : Bool */;
7896 val
* var49
/* : Array[Object] */;
7897 val
* var_tkwendnode20
/* var tkwendnode20: nullable Object */;
7898 short int var50
/* : Bool */;
7901 val
* var53
/* : AStdClassdef */;
7902 val
* var54
/* : null */;
7903 val
* var_pclassdefnode1
/* var pclassdefnode1: nullable AStdClassdef */;
7904 long var55
/* : Int */;
7905 long var56
/* : Int */;
7908 var_node_list
= var
;
7910 var1
= nit___nit__Parser___pop(var_p
);
7912 var_nodearraylist12
= var1
;
7914 var2
= nit___nit__Parser___pop(var_p
);
7916 var_nodearraylist11
= var2
;
7918 var3
= nit___nit__Parser___pop(var_p
);
7920 var_nodearraylist10
= var3
;
7922 var4
= nit___nit__Parser___pop(var_p
);
7924 var_nodearraylist9
= var4
;
7926 var5
= nit___nit__Parser___pop(var_p
);
7928 var_nodearraylist8
= var5
;
7930 var6
= nit___nit__Parser___pop(var_p
);
7932 var_nodearraylist7
= var6
;
7934 var7
= nit___nit__Parser___pop(var_p
);
7936 var_nodearraylist6
= var7
;
7938 var8
= nit___nit__Parser___pop(var_p
);
7940 var_nodearraylist5
= var8
;
7942 var9
= nit___nit__Parser___pop(var_p
);
7944 var_nodearraylist4
= var9
;
7946 var10
= nit___nit__Parser___pop(var_p
);
7948 var_nodearraylist3
= var10
;
7950 var11
= nit___nit__Parser___pop(var_p
);
7952 var_nodearraylist2
= var11
;
7954 var12
= nit___nit__Parser___pop(var_p
);
7956 var_nodearraylist1
= var12
;
7957 var13
= NEW_standard__Array(&type_standard__Array__standard__Object
);
7959 standard___standard__Array___standard__kernel__Object__init(var13
); /* Direct call array#Array#init on <var13:Array[Object]>*/
7961 var_listnode8
= var13
;
7962 var14
= NEW_standard__Array(&type_standard__Array__standard__Object
);
7964 standard___standard__Array___standard__kernel__Object__init(var14
); /* Direct call array#Array#init on <var14:Array[Object]>*/
7966 var_listnode17
= var14
;
7967 var15
= NEW_standard__Array(&type_standard__Array__standard__Object
);
7969 standard___standard__Array___standard__kernel__Object__init(var15
); /* Direct call array#Array#init on <var15:Array[Object]>*/
7971 var_listnode19
= var15
;
7972 var_pdocnode2
= var_nodearraylist1
;
7973 /* <var_pdocnode2:nullable Object> isa nullable ADoc */
7974 cltype
= type_nullable__nit__ADoc
.color
;
7975 idtype
= type_nullable__nit__ADoc
.id
;
7976 if(var_pdocnode2
== NULL
) {
7979 if(cltype
>= var_pdocnode2
->type
->table_size
) {
7982 var16
= var_pdocnode2
->type
->type_table
[cltype
] == idtype
;
7985 if (unlikely(!var16
)) {
7986 PRINT_ERROR("Runtime error: %s", "Assert failed");
7987 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2499);
7990 var_tkwredefnode3
= var_nodearraylist2
;
7991 /* <var_tkwredefnode3:nullable Object> isa nullable TKwredef */
7992 cltype18
= type_nullable__nit__TKwredef
.color
;
7993 idtype19
= type_nullable__nit__TKwredef
.id
;
7994 if(var_tkwredefnode3
== NULL
) {
7997 if(cltype18
>= var_tkwredefnode3
->type
->table_size
) {
8000 var17
= var_tkwredefnode3
->type
->type_table
[cltype18
] == idtype19
;
8003 if (unlikely(!var17
)) {
8004 PRINT_ERROR("Runtime error: %s", "Assert failed");
8005 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2501);
8008 var_pvisibilitynode4
= var_nodearraylist3
;
8009 /* <var_pvisibilitynode4:nullable Object> isa nullable AVisibility */
8010 cltype21
= type_nullable__nit__AVisibility
.color
;
8011 idtype22
= type_nullable__nit__AVisibility
.id
;
8012 if(var_pvisibilitynode4
== NULL
) {
8015 if(cltype21
>= var_pvisibilitynode4
->type
->table_size
) {
8018 var20
= var_pvisibilitynode4
->type
->type_table
[cltype21
] == idtype22
;
8021 if (unlikely(!var20
)) {
8022 PRINT_ERROR("Runtime error: %s", "Assert failed");
8023 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2503);
8026 var_pclasskindnode5
= var_nodearraylist4
;
8027 /* <var_pclasskindnode5:nullable Object> isa nullable AClasskind */
8028 cltype24
= type_nullable__nit__AClasskind
.color
;
8029 idtype25
= type_nullable__nit__AClasskind
.id
;
8030 if(var_pclasskindnode5
== NULL
) {
8033 if(cltype24
>= var_pclasskindnode5
->type
->table_size
) {
8036 var23
= var_pclasskindnode5
->type
->type_table
[cltype24
] == idtype25
;
8039 if (unlikely(!var23
)) {
8040 PRINT_ERROR("Runtime error: %s", "Assert failed");
8041 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2505);
8044 var_tclassidnode6
= var_nodearraylist6
;
8045 /* <var_tclassidnode6:nullable Object> isa nullable TClassid */
8046 cltype27
= type_nullable__nit__TClassid
.color
;
8047 idtype28
= type_nullable__nit__TClassid
.id
;
8048 if(var_tclassidnode6
== NULL
) {
8051 if(cltype27
>= var_tclassidnode6
->type
->table_size
) {
8054 var26
= var_tclassidnode6
->type
->type_table
[cltype27
] == idtype28
;
8057 if (unlikely(!var26
)) {
8058 PRINT_ERROR("Runtime error: %s", "Assert failed");
8059 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2507);
8062 var_listnode7
= var_nodearraylist7
;
8063 /* <var_listnode7:nullable Object> isa Array[Object] */
8064 cltype30
= type_standard__Array__standard__Object
.color
;
8065 idtype31
= type_standard__Array__standard__Object
.id
;
8066 if(var_listnode7
== NULL
) {
8069 if(cltype30
>= var_listnode7
->type
->table_size
) {
8072 var29
= var_listnode7
->type
->type_table
[cltype30
] == idtype31
;
8075 if (unlikely(!var29
)) {
8076 PRINT_ERROR("Runtime error: %s", "Assert failed");
8077 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2509);
8081 var32
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode8
, var_listnode7
);
8083 var_listnode8
= var32
;
8084 var33
= NEW_standard__Array(&type_standard__Array__standard__Object
);
8086 standard___standard__Array___standard__kernel__Object__init(var33
); /* Direct call array#Array#init on <var33:Array[Object]>*/
8088 var_listnode13
= var33
;
8089 var_listnode12
= var_nodearraylist8
;
8090 /* <var_listnode12:nullable Object> isa Array[Object] */
8091 cltype35
= type_standard__Array__standard__Object
.color
;
8092 idtype36
= type_standard__Array__standard__Object
.id
;
8093 if(var_listnode12
== NULL
) {
8096 if(cltype35
>= var_listnode12
->type
->table_size
) {
8099 var34
= var_listnode12
->type
->type_table
[cltype35
] == idtype36
;
8102 if (unlikely(!var34
)) {
8103 PRINT_ERROR("Runtime error: %s", "Assert failed");
8104 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2513);
8108 var37
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode13
, var_listnode12
);
8110 var_listnode13
= var37
;
8111 var38
= NEW_nit__AAnnotations(&type_nit__AAnnotations
);
8116 nit__parser_prod___AAnnotations___init_aannotations(var38
, var39
, var40
, var_listnode13
, var41
); /* Direct call parser_prod#AAnnotations#init_aannotations on <var38:AAnnotations>*/
8118 var_pannotationsnode9
= var38
;
8119 var_listnode16
= var_nodearraylist9
;
8120 /* <var_listnode16:nullable Object> isa Array[Object] */
8121 cltype43
= type_standard__Array__standard__Object
.color
;
8122 idtype44
= type_standard__Array__standard__Object
.id
;
8123 if(var_listnode16
== NULL
) {
8126 if(cltype43
>= var_listnode16
->type
->table_size
) {
8129 var42
= var_listnode16
->type
->type_table
[cltype43
] == idtype44
;
8132 if (unlikely(!var42
)) {
8133 PRINT_ERROR("Runtime error: %s", "Assert failed");
8134 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2522);
8138 var45
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode17
, var_listnode16
);
8140 var_listnode17
= var45
;
8141 var_listnode18
= var_nodearraylist10
;
8142 /* <var_listnode18:nullable Object> isa Array[Object] */
8143 cltype47
= type_standard__Array__standard__Object
.color
;
8144 idtype48
= type_standard__Array__standard__Object
.id
;
8145 if(var_listnode18
== NULL
) {
8148 if(cltype47
>= var_listnode18
->type
->table_size
) {
8151 var46
= var_listnode18
->type
->type_table
[cltype47
] == idtype48
;
8154 if (unlikely(!var46
)) {
8155 PRINT_ERROR("Runtime error: %s", "Assert failed");
8156 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2525);
8160 var49
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode19
, var_listnode18
);
8162 var_listnode19
= var49
;
8163 var_tkwendnode20
= var_nodearraylist12
;
8164 /* <var_tkwendnode20:nullable Object> isa nullable TKwend */
8165 cltype51
= type_nullable__nit__TKwend
.color
;
8166 idtype52
= type_nullable__nit__TKwend
.id
;
8167 if(var_tkwendnode20
== NULL
) {
8170 if(cltype51
>= var_tkwendnode20
->type
->table_size
) {
8173 var50
= var_tkwendnode20
->type
->type_table
[cltype51
] == idtype52
;
8176 if (unlikely(!var50
)) {
8177 PRINT_ERROR("Runtime error: %s", "Assert failed");
8178 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2528);
8181 var53
= NEW_nit__AStdClassdef(&type_nit__AStdClassdef
);
8184 nit__parser_prod___AStdClassdef___init_astdclassdef(var53
, var_pdocnode2
, var_tkwredefnode3
, var_pvisibilitynode4
, var_pclasskindnode5
, var_tclassidnode6
, var_listnode8
, var_pannotationsnode9
, var54
, var_listnode17
, var_listnode19
, var_tkwendnode20
); /* Direct call parser_prod#AStdClassdef#init_astdclassdef on <var53:AStdClassdef>*/
8186 var_pclassdefnode1
= var53
;
8187 var_node_list
= var_pclassdefnode1
;
8188 var55
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction39> */
8190 var56
= nit___nit__Parser___go_to(var_p
, var55
);
8193 nit___nit__Parser___push(var_p
, var56
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
8197 /* method parser#ReduceAction40#action for (self: ReduceAction40, Parser) */
8198 void nit__parser___nit__parser__ReduceAction40___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
8199 val
* var_p
/* var p: Parser */;
8200 val
* var
/* : null */;
8201 val
* var_node_list
/* var node_list: nullable Object */;
8202 val
* var1
/* : nullable Object */;
8203 val
* var_nodearraylist12
/* var nodearraylist12: nullable Object */;
8204 val
* var2
/* : nullable Object */;
8205 val
* var_nodearraylist11
/* var nodearraylist11: nullable Object */;
8206 val
* var3
/* : nullable Object */;
8207 val
* var_nodearraylist10
/* var nodearraylist10: nullable Object */;
8208 val
* var4
/* : nullable Object */;
8209 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
8210 val
* var5
/* : nullable Object */;
8211 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
8212 val
* var6
/* : nullable Object */;
8213 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
8214 val
* var7
/* : nullable Object */;
8215 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
8216 val
* var8
/* : nullable Object */;
8217 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
8218 val
* var9
/* : nullable Object */;
8219 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
8220 val
* var10
/* : nullable Object */;
8221 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
8222 val
* var11
/* : nullable Object */;
8223 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8224 val
* var12
/* : nullable Object */;
8225 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8226 val
* var13
/* : Array[Object] */;
8227 val
* var_listnode8
/* var listnode8: Array[Object] */;
8228 val
* var14
/* : Array[Object] */;
8229 val
* var_listnode12
/* var listnode12: Array[Object] */;
8230 val
* var15
/* : Array[Object] */;
8231 val
* var_listnode14
/* var listnode14: Array[Object] */;
8232 val
* var_pdocnode2
/* var pdocnode2: nullable Object */;
8233 short int var16
/* : Bool */;
8236 val
* var_tkwredefnode3
/* var tkwredefnode3: nullable Object */;
8237 short int var17
/* : Bool */;
8240 val
* var_pvisibilitynode4
/* var pvisibilitynode4: nullable Object */;
8241 short int var20
/* : Bool */;
8244 val
* var_pclasskindnode5
/* var pclasskindnode5: nullable Object */;
8245 short int var23
/* : Bool */;
8248 val
* var_tclassidnode6
/* var tclassidnode6: nullable Object */;
8249 short int var26
/* : Bool */;
8252 val
* var_listnode7
/* var listnode7: nullable Object */;
8253 short int var29
/* : Bool */;
8256 val
* var32
/* : Array[Object] */;
8257 val
* var_pexterncodeblocknode10
/* var pexterncodeblocknode10: nullable Object */;
8258 short int var33
/* : Bool */;
8261 val
* var_listnode11
/* var listnode11: nullable Object */;
8262 short int var36
/* : Bool */;
8265 val
* var39
/* : Array[Object] */;
8266 val
* var_listnode13
/* var listnode13: nullable Object */;
8267 short int var40
/* : Bool */;
8270 val
* var43
/* : Array[Object] */;
8271 val
* var_tkwendnode15
/* var tkwendnode15: nullable Object */;
8272 short int var44
/* : Bool */;
8275 val
* var47
/* : AStdClassdef */;
8276 val
* var48
/* : null */;
8277 val
* var_pclassdefnode1
/* var pclassdefnode1: nullable AStdClassdef */;
8278 long var49
/* : Int */;
8279 long var50
/* : Int */;
8282 var_node_list
= var
;
8284 var1
= nit___nit__Parser___pop(var_p
);
8286 var_nodearraylist12
= var1
;
8288 var2
= nit___nit__Parser___pop(var_p
);
8290 var_nodearraylist11
= var2
;
8292 var3
= nit___nit__Parser___pop(var_p
);
8294 var_nodearraylist10
= var3
;
8296 var4
= nit___nit__Parser___pop(var_p
);
8298 var_nodearraylist9
= var4
;
8300 var5
= nit___nit__Parser___pop(var_p
);
8302 var_nodearraylist8
= var5
;
8304 var6
= nit___nit__Parser___pop(var_p
);
8306 var_nodearraylist7
= var6
;
8308 var7
= nit___nit__Parser___pop(var_p
);
8310 var_nodearraylist6
= var7
;
8312 var8
= nit___nit__Parser___pop(var_p
);
8314 var_nodearraylist5
= var8
;
8316 var9
= nit___nit__Parser___pop(var_p
);
8318 var_nodearraylist4
= var9
;
8320 var10
= nit___nit__Parser___pop(var_p
);
8322 var_nodearraylist3
= var10
;
8324 var11
= nit___nit__Parser___pop(var_p
);
8326 var_nodearraylist2
= var11
;
8328 var12
= nit___nit__Parser___pop(var_p
);
8330 var_nodearraylist1
= var12
;
8331 var13
= NEW_standard__Array(&type_standard__Array__standard__Object
);
8333 standard___standard__Array___standard__kernel__Object__init(var13
); /* Direct call array#Array#init on <var13:Array[Object]>*/
8335 var_listnode8
= var13
;
8336 var14
= NEW_standard__Array(&type_standard__Array__standard__Object
);
8338 standard___standard__Array___standard__kernel__Object__init(var14
); /* Direct call array#Array#init on <var14:Array[Object]>*/
8340 var_listnode12
= var14
;
8341 var15
= NEW_standard__Array(&type_standard__Array__standard__Object
);
8343 standard___standard__Array___standard__kernel__Object__init(var15
); /* Direct call array#Array#init on <var15:Array[Object]>*/
8345 var_listnode14
= var15
;
8346 var_pdocnode2
= var_nodearraylist1
;
8347 /* <var_pdocnode2:nullable Object> isa nullable ADoc */
8348 cltype
= type_nullable__nit__ADoc
.color
;
8349 idtype
= type_nullable__nit__ADoc
.id
;
8350 if(var_pdocnode2
== NULL
) {
8353 if(cltype
>= var_pdocnode2
->type
->table_size
) {
8356 var16
= var_pdocnode2
->type
->type_table
[cltype
] == idtype
;
8359 if (unlikely(!var16
)) {
8360 PRINT_ERROR("Runtime error: %s", "Assert failed");
8361 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2567);
8364 var_tkwredefnode3
= var_nodearraylist2
;
8365 /* <var_tkwredefnode3:nullable Object> isa nullable TKwredef */
8366 cltype18
= type_nullable__nit__TKwredef
.color
;
8367 idtype19
= type_nullable__nit__TKwredef
.id
;
8368 if(var_tkwredefnode3
== NULL
) {
8371 if(cltype18
>= var_tkwredefnode3
->type
->table_size
) {
8374 var17
= var_tkwredefnode3
->type
->type_table
[cltype18
] == idtype19
;
8377 if (unlikely(!var17
)) {
8378 PRINT_ERROR("Runtime error: %s", "Assert failed");
8379 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2569);
8382 var_pvisibilitynode4
= var_nodearraylist3
;
8383 /* <var_pvisibilitynode4:nullable Object> isa nullable AVisibility */
8384 cltype21
= type_nullable__nit__AVisibility
.color
;
8385 idtype22
= type_nullable__nit__AVisibility
.id
;
8386 if(var_pvisibilitynode4
== NULL
) {
8389 if(cltype21
>= var_pvisibilitynode4
->type
->table_size
) {
8392 var20
= var_pvisibilitynode4
->type
->type_table
[cltype21
] == idtype22
;
8395 if (unlikely(!var20
)) {
8396 PRINT_ERROR("Runtime error: %s", "Assert failed");
8397 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2571);
8400 var_pclasskindnode5
= var_nodearraylist4
;
8401 /* <var_pclasskindnode5:nullable Object> isa nullable AClasskind */
8402 cltype24
= type_nullable__nit__AClasskind
.color
;
8403 idtype25
= type_nullable__nit__AClasskind
.id
;
8404 if(var_pclasskindnode5
== NULL
) {
8407 if(cltype24
>= var_pclasskindnode5
->type
->table_size
) {
8410 var23
= var_pclasskindnode5
->type
->type_table
[cltype24
] == idtype25
;
8413 if (unlikely(!var23
)) {
8414 PRINT_ERROR("Runtime error: %s", "Assert failed");
8415 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2573);
8418 var_tclassidnode6
= var_nodearraylist6
;
8419 /* <var_tclassidnode6:nullable Object> isa nullable TClassid */
8420 cltype27
= type_nullable__nit__TClassid
.color
;
8421 idtype28
= type_nullable__nit__TClassid
.id
;
8422 if(var_tclassidnode6
== NULL
) {
8425 if(cltype27
>= var_tclassidnode6
->type
->table_size
) {
8428 var26
= var_tclassidnode6
->type
->type_table
[cltype27
] == idtype28
;
8431 if (unlikely(!var26
)) {
8432 PRINT_ERROR("Runtime error: %s", "Assert failed");
8433 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2575);
8436 var_listnode7
= var_nodearraylist7
;
8437 /* <var_listnode7:nullable Object> isa Array[Object] */
8438 cltype30
= type_standard__Array__standard__Object
.color
;
8439 idtype31
= type_standard__Array__standard__Object
.id
;
8440 if(var_listnode7
== NULL
) {
8443 if(cltype30
>= var_listnode7
->type
->table_size
) {
8446 var29
= var_listnode7
->type
->type_table
[cltype30
] == idtype31
;
8449 if (unlikely(!var29
)) {
8450 PRINT_ERROR("Runtime error: %s", "Assert failed");
8451 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2577);
8455 var32
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode8
, var_listnode7
);
8457 var_listnode8
= var32
;
8458 var_pexterncodeblocknode10
= var_nodearraylist8
;
8459 /* <var_pexterncodeblocknode10:nullable Object> isa nullable AExternCodeBlock */
8460 cltype34
= type_nullable__nit__AExternCodeBlock
.color
;
8461 idtype35
= type_nullable__nit__AExternCodeBlock
.id
;
8462 if(var_pexterncodeblocknode10
== NULL
) {
8465 if(cltype34
>= var_pexterncodeblocknode10
->type
->table_size
) {
8468 var33
= var_pexterncodeblocknode10
->type
->type_table
[cltype34
] == idtype35
;
8471 if (unlikely(!var33
)) {
8472 PRINT_ERROR("Runtime error: %s", "Assert failed");
8473 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2580);
8476 var_listnode11
= var_nodearraylist9
;
8477 /* <var_listnode11:nullable Object> isa Array[Object] */
8478 cltype37
= type_standard__Array__standard__Object
.color
;
8479 idtype38
= type_standard__Array__standard__Object
.id
;
8480 if(var_listnode11
== NULL
) {
8483 if(cltype37
>= var_listnode11
->type
->table_size
) {
8486 var36
= var_listnode11
->type
->type_table
[cltype37
] == idtype38
;
8489 if (unlikely(!var36
)) {
8490 PRINT_ERROR("Runtime error: %s", "Assert failed");
8491 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2582);
8495 var39
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode12
, var_listnode11
);
8497 var_listnode12
= var39
;
8498 var_listnode13
= var_nodearraylist10
;
8499 /* <var_listnode13:nullable Object> isa Array[Object] */
8500 cltype41
= type_standard__Array__standard__Object
.color
;
8501 idtype42
= type_standard__Array__standard__Object
.id
;
8502 if(var_listnode13
== NULL
) {
8505 if(cltype41
>= var_listnode13
->type
->table_size
) {
8508 var40
= var_listnode13
->type
->type_table
[cltype41
] == idtype42
;
8511 if (unlikely(!var40
)) {
8512 PRINT_ERROR("Runtime error: %s", "Assert failed");
8513 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2585);
8517 var43
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode14
, var_listnode13
);
8519 var_listnode14
= var43
;
8520 var_tkwendnode15
= var_nodearraylist12
;
8521 /* <var_tkwendnode15:nullable Object> isa nullable TKwend */
8522 cltype45
= type_nullable__nit__TKwend
.color
;
8523 idtype46
= type_nullable__nit__TKwend
.id
;
8524 if(var_tkwendnode15
== NULL
) {
8527 if(cltype45
>= var_tkwendnode15
->type
->table_size
) {
8530 var44
= var_tkwendnode15
->type
->type_table
[cltype45
] == idtype46
;
8533 if (unlikely(!var44
)) {
8534 PRINT_ERROR("Runtime error: %s", "Assert failed");
8535 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2588);
8538 var47
= NEW_nit__AStdClassdef(&type_nit__AStdClassdef
);
8541 nit__parser_prod___AStdClassdef___init_astdclassdef(var47
, var_pdocnode2
, var_tkwredefnode3
, var_pvisibilitynode4
, var_pclasskindnode5
, var_tclassidnode6
, var_listnode8
, var48
, var_pexterncodeblocknode10
, var_listnode12
, var_listnode14
, var_tkwendnode15
); /* Direct call parser_prod#AStdClassdef#init_astdclassdef on <var47:AStdClassdef>*/
8543 var_pclassdefnode1
= var47
;
8544 var_node_list
= var_pclassdefnode1
;
8545 var49
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction40> */
8547 var50
= nit___nit__Parser___go_to(var_p
, var49
);
8550 nit___nit__Parser___push(var_p
, var50
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
8554 /* method parser#ReduceAction41#action for (self: ReduceAction41, Parser) */
8555 void nit__parser___nit__parser__ReduceAction41___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
8556 val
* var_p
/* var p: Parser */;
8557 val
* var
/* : null */;
8558 val
* var_node_list
/* var node_list: nullable Object */;
8559 val
* var1
/* : nullable Object */;
8560 val
* var_nodearraylist13
/* var nodearraylist13: nullable Object */;
8561 val
* var2
/* : nullable Object */;
8562 val
* var_nodearraylist12
/* var nodearraylist12: nullable Object */;
8563 val
* var3
/* : nullable Object */;
8564 val
* var_nodearraylist11
/* var nodearraylist11: nullable Object */;
8565 val
* var4
/* : nullable Object */;
8566 val
* var_nodearraylist10
/* var nodearraylist10: nullable Object */;
8567 val
* var5
/* : nullable Object */;
8568 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
8569 val
* var6
/* : nullable Object */;
8570 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
8571 val
* var7
/* : nullable Object */;
8572 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
8573 val
* var8
/* : nullable Object */;
8574 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
8575 val
* var9
/* : nullable Object */;
8576 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
8577 val
* var10
/* : nullable Object */;
8578 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
8579 val
* var11
/* : nullable Object */;
8580 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
8581 val
* var12
/* : nullable Object */;
8582 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8583 val
* var13
/* : nullable Object */;
8584 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8585 val
* var14
/* : Array[Object] */;
8586 val
* var_listnode8
/* var listnode8: Array[Object] */;
8587 val
* var15
/* : Array[Object] */;
8588 val
* var_listnode17
/* var listnode17: Array[Object] */;
8589 val
* var16
/* : Array[Object] */;
8590 val
* var_listnode19
/* var listnode19: Array[Object] */;
8591 val
* var_pdocnode2
/* var pdocnode2: nullable Object */;
8592 short int var17
/* : Bool */;
8595 val
* var_tkwredefnode3
/* var tkwredefnode3: nullable Object */;
8596 short int var18
/* : Bool */;
8599 val
* var_pvisibilitynode4
/* var pvisibilitynode4: nullable Object */;
8600 short int var21
/* : Bool */;
8603 val
* var_pclasskindnode5
/* var pclasskindnode5: nullable Object */;
8604 short int var24
/* : Bool */;
8607 val
* var_tclassidnode6
/* var tclassidnode6: nullable Object */;
8608 short int var27
/* : Bool */;
8611 val
* var_listnode7
/* var listnode7: nullable Object */;
8612 short int var30
/* : Bool */;
8615 val
* var33
/* : Array[Object] */;
8616 val
* var34
/* : Array[Object] */;
8617 val
* var_listnode13
/* var listnode13: Array[Object] */;
8618 val
* var_listnode12
/* var listnode12: nullable Object */;
8619 short int var35
/* : Bool */;
8622 val
* var38
/* : Array[Object] */;
8623 val
* var39
/* : AAnnotations */;
8624 val
* var40
/* : null */;
8625 val
* var41
/* : null */;
8626 val
* var42
/* : null */;
8627 val
* var_pannotationsnode9
/* var pannotationsnode9: nullable AAnnotations */;
8628 val
* var_pexterncodeblocknode15
/* var pexterncodeblocknode15: nullable Object */;
8629 short int var43
/* : Bool */;
8632 val
* var_listnode16
/* var listnode16: nullable Object */;
8633 short int var46
/* : Bool */;
8636 val
* var49
/* : Array[Object] */;
8637 val
* var_listnode18
/* var listnode18: nullable Object */;
8638 short int var50
/* : Bool */;
8641 val
* var53
/* : Array[Object] */;
8642 val
* var_tkwendnode20
/* var tkwendnode20: nullable Object */;
8643 short int var54
/* : Bool */;
8646 val
* var57
/* : AStdClassdef */;
8647 val
* var_pclassdefnode1
/* var pclassdefnode1: nullable AStdClassdef */;
8648 long var58
/* : Int */;
8649 long var59
/* : Int */;
8652 var_node_list
= var
;
8654 var1
= nit___nit__Parser___pop(var_p
);
8656 var_nodearraylist13
= var1
;
8658 var2
= nit___nit__Parser___pop(var_p
);
8660 var_nodearraylist12
= var2
;
8662 var3
= nit___nit__Parser___pop(var_p
);
8664 var_nodearraylist11
= var3
;
8666 var4
= nit___nit__Parser___pop(var_p
);
8668 var_nodearraylist10
= var4
;
8670 var5
= nit___nit__Parser___pop(var_p
);
8672 var_nodearraylist9
= var5
;
8674 var6
= nit___nit__Parser___pop(var_p
);
8676 var_nodearraylist8
= var6
;
8678 var7
= nit___nit__Parser___pop(var_p
);
8680 var_nodearraylist7
= var7
;
8682 var8
= nit___nit__Parser___pop(var_p
);
8684 var_nodearraylist6
= var8
;
8686 var9
= nit___nit__Parser___pop(var_p
);
8688 var_nodearraylist5
= var9
;
8690 var10
= nit___nit__Parser___pop(var_p
);
8692 var_nodearraylist4
= var10
;
8694 var11
= nit___nit__Parser___pop(var_p
);
8696 var_nodearraylist3
= var11
;
8698 var12
= nit___nit__Parser___pop(var_p
);
8700 var_nodearraylist2
= var12
;
8702 var13
= nit___nit__Parser___pop(var_p
);
8704 var_nodearraylist1
= var13
;
8705 var14
= NEW_standard__Array(&type_standard__Array__standard__Object
);
8707 standard___standard__Array___standard__kernel__Object__init(var14
); /* Direct call array#Array#init on <var14:Array[Object]>*/
8709 var_listnode8
= var14
;
8710 var15
= NEW_standard__Array(&type_standard__Array__standard__Object
);
8712 standard___standard__Array___standard__kernel__Object__init(var15
); /* Direct call array#Array#init on <var15:Array[Object]>*/
8714 var_listnode17
= var15
;
8715 var16
= NEW_standard__Array(&type_standard__Array__standard__Object
);
8717 standard___standard__Array___standard__kernel__Object__init(var16
); /* Direct call array#Array#init on <var16:Array[Object]>*/
8719 var_listnode19
= var16
;
8720 var_pdocnode2
= var_nodearraylist1
;
8721 /* <var_pdocnode2:nullable Object> isa nullable ADoc */
8722 cltype
= type_nullable__nit__ADoc
.color
;
8723 idtype
= type_nullable__nit__ADoc
.id
;
8724 if(var_pdocnode2
== NULL
) {
8727 if(cltype
>= var_pdocnode2
->type
->table_size
) {
8730 var17
= var_pdocnode2
->type
->type_table
[cltype
] == idtype
;
8733 if (unlikely(!var17
)) {
8734 PRINT_ERROR("Runtime error: %s", "Assert failed");
8735 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2628);
8738 var_tkwredefnode3
= var_nodearraylist2
;
8739 /* <var_tkwredefnode3:nullable Object> isa nullable TKwredef */
8740 cltype19
= type_nullable__nit__TKwredef
.color
;
8741 idtype20
= type_nullable__nit__TKwredef
.id
;
8742 if(var_tkwredefnode3
== NULL
) {
8745 if(cltype19
>= var_tkwredefnode3
->type
->table_size
) {
8748 var18
= var_tkwredefnode3
->type
->type_table
[cltype19
] == idtype20
;
8751 if (unlikely(!var18
)) {
8752 PRINT_ERROR("Runtime error: %s", "Assert failed");
8753 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2630);
8756 var_pvisibilitynode4
= var_nodearraylist3
;
8757 /* <var_pvisibilitynode4:nullable Object> isa nullable AVisibility */
8758 cltype22
= type_nullable__nit__AVisibility
.color
;
8759 idtype23
= type_nullable__nit__AVisibility
.id
;
8760 if(var_pvisibilitynode4
== NULL
) {
8763 if(cltype22
>= var_pvisibilitynode4
->type
->table_size
) {
8766 var21
= var_pvisibilitynode4
->type
->type_table
[cltype22
] == idtype23
;
8769 if (unlikely(!var21
)) {
8770 PRINT_ERROR("Runtime error: %s", "Assert failed");
8771 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2632);
8774 var_pclasskindnode5
= var_nodearraylist4
;
8775 /* <var_pclasskindnode5:nullable Object> isa nullable AClasskind */
8776 cltype25
= type_nullable__nit__AClasskind
.color
;
8777 idtype26
= type_nullable__nit__AClasskind
.id
;
8778 if(var_pclasskindnode5
== NULL
) {
8781 if(cltype25
>= var_pclasskindnode5
->type
->table_size
) {
8784 var24
= var_pclasskindnode5
->type
->type_table
[cltype25
] == idtype26
;
8787 if (unlikely(!var24
)) {
8788 PRINT_ERROR("Runtime error: %s", "Assert failed");
8789 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2634);
8792 var_tclassidnode6
= var_nodearraylist6
;
8793 /* <var_tclassidnode6:nullable Object> isa nullable TClassid */
8794 cltype28
= type_nullable__nit__TClassid
.color
;
8795 idtype29
= type_nullable__nit__TClassid
.id
;
8796 if(var_tclassidnode6
== NULL
) {
8799 if(cltype28
>= var_tclassidnode6
->type
->table_size
) {
8802 var27
= var_tclassidnode6
->type
->type_table
[cltype28
] == idtype29
;
8805 if (unlikely(!var27
)) {
8806 PRINT_ERROR("Runtime error: %s", "Assert failed");
8807 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2636);
8810 var_listnode7
= var_nodearraylist7
;
8811 /* <var_listnode7:nullable Object> isa Array[Object] */
8812 cltype31
= type_standard__Array__standard__Object
.color
;
8813 idtype32
= type_standard__Array__standard__Object
.id
;
8814 if(var_listnode7
== NULL
) {
8817 if(cltype31
>= var_listnode7
->type
->table_size
) {
8820 var30
= var_listnode7
->type
->type_table
[cltype31
] == idtype32
;
8823 if (unlikely(!var30
)) {
8824 PRINT_ERROR("Runtime error: %s", "Assert failed");
8825 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2638);
8829 var33
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode8
, var_listnode7
);
8831 var_listnode8
= var33
;
8832 var34
= NEW_standard__Array(&type_standard__Array__standard__Object
);
8834 standard___standard__Array___standard__kernel__Object__init(var34
); /* Direct call array#Array#init on <var34:Array[Object]>*/
8836 var_listnode13
= var34
;
8837 var_listnode12
= var_nodearraylist8
;
8838 /* <var_listnode12:nullable Object> isa Array[Object] */
8839 cltype36
= type_standard__Array__standard__Object
.color
;
8840 idtype37
= type_standard__Array__standard__Object
.id
;
8841 if(var_listnode12
== NULL
) {
8844 if(cltype36
>= var_listnode12
->type
->table_size
) {
8847 var35
= var_listnode12
->type
->type_table
[cltype36
] == idtype37
;
8850 if (unlikely(!var35
)) {
8851 PRINT_ERROR("Runtime error: %s", "Assert failed");
8852 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2642);
8856 var38
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode13
, var_listnode12
);
8858 var_listnode13
= var38
;
8859 var39
= NEW_nit__AAnnotations(&type_nit__AAnnotations
);
8864 nit__parser_prod___AAnnotations___init_aannotations(var39
, var40
, var41
, var_listnode13
, var42
); /* Direct call parser_prod#AAnnotations#init_aannotations on <var39:AAnnotations>*/
8866 var_pannotationsnode9
= var39
;
8867 var_pexterncodeblocknode15
= var_nodearraylist9
;
8868 /* <var_pexterncodeblocknode15:nullable Object> isa nullable AExternCodeBlock */
8869 cltype44
= type_nullable__nit__AExternCodeBlock
.color
;
8870 idtype45
= type_nullable__nit__AExternCodeBlock
.id
;
8871 if(var_pexterncodeblocknode15
== NULL
) {
8874 if(cltype44
>= var_pexterncodeblocknode15
->type
->table_size
) {
8877 var43
= var_pexterncodeblocknode15
->type
->type_table
[cltype44
] == idtype45
;
8880 if (unlikely(!var43
)) {
8881 PRINT_ERROR("Runtime error: %s", "Assert failed");
8882 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2651);
8885 var_listnode16
= var_nodearraylist10
;
8886 /* <var_listnode16:nullable Object> isa Array[Object] */
8887 cltype47
= type_standard__Array__standard__Object
.color
;
8888 idtype48
= type_standard__Array__standard__Object
.id
;
8889 if(var_listnode16
== NULL
) {
8892 if(cltype47
>= var_listnode16
->type
->table_size
) {
8895 var46
= var_listnode16
->type
->type_table
[cltype47
] == idtype48
;
8898 if (unlikely(!var46
)) {
8899 PRINT_ERROR("Runtime error: %s", "Assert failed");
8900 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2653);
8904 var49
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode17
, var_listnode16
);
8906 var_listnode17
= var49
;
8907 var_listnode18
= var_nodearraylist11
;
8908 /* <var_listnode18:nullable Object> isa Array[Object] */
8909 cltype51
= type_standard__Array__standard__Object
.color
;
8910 idtype52
= type_standard__Array__standard__Object
.id
;
8911 if(var_listnode18
== NULL
) {
8914 if(cltype51
>= var_listnode18
->type
->table_size
) {
8917 var50
= var_listnode18
->type
->type_table
[cltype51
] == idtype52
;
8920 if (unlikely(!var50
)) {
8921 PRINT_ERROR("Runtime error: %s", "Assert failed");
8922 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2656);
8926 var53
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode19
, var_listnode18
);
8928 var_listnode19
= var53
;
8929 var_tkwendnode20
= var_nodearraylist13
;
8930 /* <var_tkwendnode20:nullable Object> isa nullable TKwend */
8931 cltype55
= type_nullable__nit__TKwend
.color
;
8932 idtype56
= type_nullable__nit__TKwend
.id
;
8933 if(var_tkwendnode20
== NULL
) {
8936 if(cltype55
>= var_tkwendnode20
->type
->table_size
) {
8939 var54
= var_tkwendnode20
->type
->type_table
[cltype55
] == idtype56
;
8942 if (unlikely(!var54
)) {
8943 PRINT_ERROR("Runtime error: %s", "Assert failed");
8944 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2659);
8947 var57
= NEW_nit__AStdClassdef(&type_nit__AStdClassdef
);
8949 nit__parser_prod___AStdClassdef___init_astdclassdef(var57
, var_pdocnode2
, var_tkwredefnode3
, var_pvisibilitynode4
, var_pclasskindnode5
, var_tclassidnode6
, var_listnode8
, var_pannotationsnode9
, var_pexterncodeblocknode15
, var_listnode17
, var_listnode19
, var_tkwendnode20
); /* Direct call parser_prod#AStdClassdef#init_astdclassdef on <var57:AStdClassdef>*/
8951 var_pclassdefnode1
= var57
;
8952 var_node_list
= var_pclassdefnode1
;
8953 var58
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction41> */
8955 var59
= nit___nit__Parser___go_to(var_p
, var58
);
8958 nit___nit__Parser___push(var_p
, var59
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
8962 /* method parser#ReduceAction43#action for (self: ReduceAction43, Parser) */
8963 void nit__parser___nit__parser__ReduceAction43___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
8964 val
* var_p
/* var p: Parser */;
8965 val
* var
/* : null */;
8966 val
* var_node_list
/* var node_list: nullable Object */;
8967 val
* var1
/* : nullable Object */;
8968 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8969 val
* var_tkwredefnode1
/* var tkwredefnode1: nullable Object */;
8970 long var2
/* : Int */;
8971 long var3
/* : Int */;
8974 var_node_list
= var
;
8976 var1
= nit___nit__Parser___pop(var_p
);
8978 var_nodearraylist1
= var1
;
8979 var_tkwredefnode1
= var_nodearraylist1
;
8980 var_node_list
= var_tkwredefnode1
;
8981 var2
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction43> */
8983 var3
= nit___nit__Parser___go_to(var_p
, var2
);
8986 nit___nit__Parser___push(var_p
, var3
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
8990 /* method parser#ReduceAction44#action for (self: ReduceAction44, Parser) */
8991 void nit__parser___nit__parser__ReduceAction44___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
8992 val
* var_p
/* var p: Parser */;
8993 val
* var
/* : null */;
8994 val
* var_node_list
/* var node_list: nullable Object */;
8995 val
* var1
/* : nullable Object */;
8996 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8997 val
* var_tkwclassnode2
/* var tkwclassnode2: nullable Object */;
8998 short int var2
/* : Bool */;
9001 val
* var3
/* : AConcreteClasskind */;
9002 val
* var_pclasskindnode1
/* var pclasskindnode1: nullable AConcreteClasskind */;
9003 long var4
/* : Int */;
9004 long var5
/* : Int */;
9007 var_node_list
= var
;
9009 var1
= nit___nit__Parser___pop(var_p
);
9011 var_nodearraylist1
= var1
;
9012 var_tkwclassnode2
= var_nodearraylist1
;
9013 /* <var_tkwclassnode2:nullable Object> isa nullable TKwclass */
9014 cltype
= type_nullable__nit__TKwclass
.color
;
9015 idtype
= type_nullable__nit__TKwclass
.id
;
9016 if(var_tkwclassnode2
== NULL
) {
9019 if(cltype
>= var_tkwclassnode2
->type
->table_size
) {
9022 var2
= var_tkwclassnode2
->type
->type_table
[cltype
] == idtype
;
9025 if (unlikely(!var2
)) {
9026 PRINT_ERROR("Runtime error: %s", "Assert failed");
9027 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2695);
9030 var3
= NEW_nit__AConcreteClasskind(&type_nit__AConcreteClasskind
);
9032 nit__parser_prod___AConcreteClasskind___init_aconcreteclasskind(var3
, var_tkwclassnode2
); /* Direct call parser_prod#AConcreteClasskind#init_aconcreteclasskind on <var3:AConcreteClasskind>*/
9034 var_pclasskindnode1
= var3
;
9035 var_node_list
= var_pclasskindnode1
;
9036 var4
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction44> */
9038 var5
= nit___nit__Parser___go_to(var_p
, var4
);
9041 nit___nit__Parser___push(var_p
, var5
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
9045 /* method parser#ReduceAction45#action for (self: ReduceAction45, Parser) */
9046 void nit__parser___nit__parser__ReduceAction45___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
9047 val
* var_p
/* var p: Parser */;
9048 val
* var
/* : null */;
9049 val
* var_node_list
/* var node_list: nullable Object */;
9050 val
* var1
/* : nullable Object */;
9051 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9052 val
* var2
/* : nullable Object */;
9053 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9054 val
* var_tkwabstractnode2
/* var tkwabstractnode2: nullable Object */;
9055 short int var3
/* : Bool */;
9058 val
* var_tkwclassnode3
/* var tkwclassnode3: nullable Object */;
9059 short int var4
/* : Bool */;
9062 val
* var7
/* : AAbstractClasskind */;
9063 val
* var_pclasskindnode1
/* var pclasskindnode1: nullable AAbstractClasskind */;
9064 long var8
/* : Int */;
9065 long var9
/* : Int */;
9068 var_node_list
= var
;
9070 var1
= nit___nit__Parser___pop(var_p
);
9072 var_nodearraylist2
= var1
;
9074 var2
= nit___nit__Parser___pop(var_p
);
9076 var_nodearraylist1
= var2
;
9077 var_tkwabstractnode2
= var_nodearraylist1
;
9078 /* <var_tkwabstractnode2:nullable Object> isa nullable TKwabstract */
9079 cltype
= type_nullable__nit__TKwabstract
.color
;
9080 idtype
= type_nullable__nit__TKwabstract
.id
;
9081 if(var_tkwabstractnode2
== NULL
) {
9084 if(cltype
>= var_tkwabstractnode2
->type
->table_size
) {
9087 var3
= var_tkwabstractnode2
->type
->type_table
[cltype
] == idtype
;
9090 if (unlikely(!var3
)) {
9091 PRINT_ERROR("Runtime error: %s", "Assert failed");
9092 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2711);
9095 var_tkwclassnode3
= var_nodearraylist2
;
9096 /* <var_tkwclassnode3:nullable Object> isa nullable TKwclass */
9097 cltype5
= type_nullable__nit__TKwclass
.color
;
9098 idtype6
= type_nullable__nit__TKwclass
.id
;
9099 if(var_tkwclassnode3
== NULL
) {
9102 if(cltype5
>= var_tkwclassnode3
->type
->table_size
) {
9105 var4
= var_tkwclassnode3
->type
->type_table
[cltype5
] == idtype6
;
9108 if (unlikely(!var4
)) {
9109 PRINT_ERROR("Runtime error: %s", "Assert failed");
9110 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2713);
9113 var7
= NEW_nit__AAbstractClasskind(&type_nit__AAbstractClasskind
);
9115 nit__parser_prod___AAbstractClasskind___init_aabstractclasskind(var7
, var_tkwabstractnode2
, var_tkwclassnode3
); /* Direct call parser_prod#AAbstractClasskind#init_aabstractclasskind on <var7:AAbstractClasskind>*/
9117 var_pclasskindnode1
= var7
;
9118 var_node_list
= var_pclasskindnode1
;
9119 var8
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction45> */
9121 var9
= nit___nit__Parser___go_to(var_p
, var8
);
9124 nit___nit__Parser___push(var_p
, var9
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
9128 /* method parser#ReduceAction46#action for (self: ReduceAction46, Parser) */
9129 void nit__parser___nit__parser__ReduceAction46___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
9130 val
* var_p
/* var p: Parser */;
9131 val
* var
/* : null */;
9132 val
* var_node_list
/* var node_list: nullable Object */;
9133 val
* var1
/* : nullable Object */;
9134 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9135 val
* var_tkwinterfacenode2
/* var tkwinterfacenode2: nullable Object */;
9136 short int var2
/* : Bool */;
9139 val
* var3
/* : AInterfaceClasskind */;
9140 val
* var_pclasskindnode1
/* var pclasskindnode1: nullable AInterfaceClasskind */;
9141 long var4
/* : Int */;
9142 long var5
/* : Int */;
9145 var_node_list
= var
;
9147 var1
= nit___nit__Parser___pop(var_p
);
9149 var_nodearraylist1
= var1
;
9150 var_tkwinterfacenode2
= var_nodearraylist1
;
9151 /* <var_tkwinterfacenode2:nullable Object> isa nullable TKwinterface */
9152 cltype
= type_nullable__nit__TKwinterface
.color
;
9153 idtype
= type_nullable__nit__TKwinterface
.id
;
9154 if(var_tkwinterfacenode2
== NULL
) {
9157 if(cltype
>= var_tkwinterfacenode2
->type
->table_size
) {
9160 var2
= var_tkwinterfacenode2
->type
->type_table
[cltype
] == idtype
;
9163 if (unlikely(!var2
)) {
9164 PRINT_ERROR("Runtime error: %s", "Assert failed");
9165 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2729);
9168 var3
= NEW_nit__AInterfaceClasskind(&type_nit__AInterfaceClasskind
);
9170 nit__parser_prod___AInterfaceClasskind___init_ainterfaceclasskind(var3
, var_tkwinterfacenode2
); /* Direct call parser_prod#AInterfaceClasskind#init_ainterfaceclasskind on <var3:AInterfaceClasskind>*/
9172 var_pclasskindnode1
= var3
;
9173 var_node_list
= var_pclasskindnode1
;
9174 var4
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction46> */
9176 var5
= nit___nit__Parser___go_to(var_p
, var4
);
9179 nit___nit__Parser___push(var_p
, var5
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
9183 /* method parser#ReduceAction47#action for (self: ReduceAction47, Parser) */
9184 void nit__parser___nit__parser__ReduceAction47___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
9185 val
* var_p
/* var p: Parser */;
9186 val
* var
/* : null */;
9187 val
* var_node_list
/* var node_list: nullable Object */;
9188 val
* var1
/* : nullable Object */;
9189 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9190 val
* var_tkwenumnode2
/* var tkwenumnode2: nullable Object */;
9191 short int var2
/* : Bool */;
9194 val
* var3
/* : AEnumClasskind */;
9195 val
* var_pclasskindnode1
/* var pclasskindnode1: nullable AEnumClasskind */;
9196 long var4
/* : Int */;
9197 long var5
/* : Int */;
9200 var_node_list
= var
;
9202 var1
= nit___nit__Parser___pop(var_p
);
9204 var_nodearraylist1
= var1
;
9205 var_tkwenumnode2
= var_nodearraylist1
;
9206 /* <var_tkwenumnode2:nullable Object> isa nullable TKwenum */
9207 cltype
= type_nullable__nit__TKwenum
.color
;
9208 idtype
= type_nullable__nit__TKwenum
.id
;
9209 if(var_tkwenumnode2
== NULL
) {
9212 if(cltype
>= var_tkwenumnode2
->type
->table_size
) {
9215 var2
= var_tkwenumnode2
->type
->type_table
[cltype
] == idtype
;
9218 if (unlikely(!var2
)) {
9219 PRINT_ERROR("Runtime error: %s", "Assert failed");
9220 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2744);
9223 var3
= NEW_nit__AEnumClasskind(&type_nit__AEnumClasskind
);
9225 nit__parser_prod___AEnumClasskind___init_aenumclasskind(var3
, var_tkwenumnode2
); /* Direct call parser_prod#AEnumClasskind#init_aenumclasskind on <var3:AEnumClasskind>*/
9227 var_pclasskindnode1
= var3
;
9228 var_node_list
= var_pclasskindnode1
;
9229 var4
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction47> */
9231 var5
= nit___nit__Parser___go_to(var_p
, var4
);
9234 nit___nit__Parser___push(var_p
, var5
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
9238 /* method parser#ReduceAction48#action for (self: ReduceAction48, Parser) */
9239 void nit__parser___nit__parser__ReduceAction48___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
9240 val
* var_p
/* var p: Parser */;
9241 val
* var
/* : null */;
9242 val
* var_node_list
/* var node_list: nullable Object */;
9243 val
* var1
/* : nullable Object */;
9244 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9245 val
* var2
/* : nullable Object */;
9246 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9247 val
* var_tkwexternnode2
/* var tkwexternnode2: nullable Object */;
9248 short int var3
/* : Bool */;
9251 val
* var_tkwclassnode3
/* var tkwclassnode3: nullable Object */;
9252 short int var4
/* : Bool */;
9255 val
* var7
/* : AExternClasskind */;
9256 val
* var_pclasskindnode1
/* var pclasskindnode1: nullable AExternClasskind */;
9257 long var8
/* : Int */;
9258 long var9
/* : Int */;
9261 var_node_list
= var
;
9263 var1
= nit___nit__Parser___pop(var_p
);
9265 var_nodearraylist2
= var1
;
9267 var2
= nit___nit__Parser___pop(var_p
);
9269 var_nodearraylist1
= var2
;
9270 var_tkwexternnode2
= var_nodearraylist1
;
9271 /* <var_tkwexternnode2:nullable Object> isa nullable TKwextern */
9272 cltype
= type_nullable__nit__TKwextern
.color
;
9273 idtype
= type_nullable__nit__TKwextern
.id
;
9274 if(var_tkwexternnode2
== NULL
) {
9277 if(cltype
>= var_tkwexternnode2
->type
->table_size
) {
9280 var3
= var_tkwexternnode2
->type
->type_table
[cltype
] == idtype
;
9283 if (unlikely(!var3
)) {
9284 PRINT_ERROR("Runtime error: %s", "Assert failed");
9285 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2760);
9288 var_tkwclassnode3
= var_nodearraylist2
;
9289 /* <var_tkwclassnode3:nullable Object> isa nullable TKwclass */
9290 cltype5
= type_nullable__nit__TKwclass
.color
;
9291 idtype6
= type_nullable__nit__TKwclass
.id
;
9292 if(var_tkwclassnode3
== NULL
) {
9295 if(cltype5
>= var_tkwclassnode3
->type
->table_size
) {
9298 var4
= var_tkwclassnode3
->type
->type_table
[cltype5
] == idtype6
;
9301 if (unlikely(!var4
)) {
9302 PRINT_ERROR("Runtime error: %s", "Assert failed");
9303 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2762);
9306 var7
= NEW_nit__AExternClasskind(&type_nit__AExternClasskind
);
9308 nit__parser_prod___AExternClasskind___init_aexternclasskind(var7
, var_tkwexternnode2
, var_tkwclassnode3
); /* Direct call parser_prod#AExternClasskind#init_aexternclasskind on <var7:AExternClasskind>*/
9310 var_pclasskindnode1
= var7
;
9311 var_node_list
= var_pclasskindnode1
;
9312 var8
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction48> */
9314 var9
= nit___nit__Parser___go_to(var_p
, var8
);
9317 nit___nit__Parser___push(var_p
, var9
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
9321 /* method parser#ReduceAction49#action for (self: ReduceAction49, Parser) */
9322 void nit__parser___nit__parser__ReduceAction49___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
9323 val
* var_p
/* var p: Parser */;
9324 val
* var
/* : null */;
9325 val
* var_node_list
/* var node_list: nullable Object */;
9326 val
* var1
/* : nullable Object */;
9327 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
9328 val
* var2
/* : nullable Object */;
9329 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
9330 val
* var3
/* : nullable Object */;
9331 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
9332 val
* var4
/* : nullable Object */;
9333 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9334 val
* var5
/* : nullable Object */;
9335 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9336 val
* var6
/* : Array[Object] */;
9337 val
* var_listnode2
/* var listnode2: Array[Object] */;
9338 val
* var_pformaldefnode1
/* var pformaldefnode1: nullable Object */;
9339 val
* var7
/* : null */;
9340 short int var8
/* : Bool */;
9341 short int var9
/* : Bool */;
9342 long var10
/* : Int */;
9343 long var11
/* : Int */;
9346 var_node_list
= var
;
9348 var1
= nit___nit__Parser___pop(var_p
);
9350 var_nodearraylist5
= var1
;
9352 var2
= nit___nit__Parser___pop(var_p
);
9354 var_nodearraylist4
= var2
;
9356 var3
= nit___nit__Parser___pop(var_p
);
9358 var_nodearraylist3
= var3
;
9360 var4
= nit___nit__Parser___pop(var_p
);
9362 var_nodearraylist2
= var4
;
9364 var5
= nit___nit__Parser___pop(var_p
);
9366 var_nodearraylist1
= var5
;
9367 var6
= NEW_standard__Array(&type_standard__Array__standard__Object
);
9369 standard___standard__Array___standard__kernel__Object__init(var6
); /* Direct call array#Array#init on <var6:Array[Object]>*/
9371 var_listnode2
= var6
;
9372 var_pformaldefnode1
= var_nodearraylist3
;
9374 if (var_pformaldefnode1
== NULL
) {
9375 var8
= 0; /* is null */
9377 var8
= 1; /* arg is null and recv is not */
9380 var9
= ((short int (*)(val
* self
, val
* p0
))(var_pformaldefnode1
->class->vft
[COLOR_standard__kernel__Object___33d_61d
]))(var_pformaldefnode1
, var7
) /* != on <var_pformaldefnode1:nullable Object>*/;
9385 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_listnode2
, var_pformaldefnode1
); /* Direct call array#Array#add on <var_listnode2:Array[Object]>*/
9389 var_node_list
= var_listnode2
;
9390 var10
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction49> */
9392 var11
= nit___nit__Parser___go_to(var_p
, var10
);
9395 nit___nit__Parser___push(var_p
, var11
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
9399 /* method parser#ReduceAction50#action for (self: ReduceAction50, Parser) */
9400 void nit__parser___nit__parser__ReduceAction50___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
9401 val
* var_p
/* var p: Parser */;
9402 val
* var
/* : null */;
9403 val
* var_node_list
/* var node_list: nullable Object */;
9404 val
* var1
/* : nullable Object */;
9405 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
9406 val
* var2
/* : nullable Object */;
9407 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
9408 val
* var3
/* : nullable Object */;
9409 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
9410 val
* var4
/* : nullable Object */;
9411 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
9412 val
* var5
/* : nullable Object */;
9413 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9414 val
* var6
/* : nullable Object */;
9415 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9416 val
* var7
/* : Array[Object] */;
9417 val
* var_listnode3
/* var listnode3: Array[Object] */;
9418 val
* var_pformaldefnode1
/* var pformaldefnode1: nullable Object */;
9419 val
* var_listnode2
/* var listnode2: nullable Object */;
9420 short int var8
/* : Bool */;
9423 val
* var9
/* : null */;
9424 short int var10
/* : Bool */;
9425 short int var11
/* : Bool */;
9426 val
* var12
/* : Array[Object] */;
9427 long var13
/* : Int */;
9428 long var14
/* : Int */;
9431 var_node_list
= var
;
9433 var1
= nit___nit__Parser___pop(var_p
);
9435 var_nodearraylist6
= var1
;
9437 var2
= nit___nit__Parser___pop(var_p
);
9439 var_nodearraylist5
= var2
;
9441 var3
= nit___nit__Parser___pop(var_p
);
9443 var_nodearraylist4
= var3
;
9445 var4
= nit___nit__Parser___pop(var_p
);
9447 var_nodearraylist3
= var4
;
9449 var5
= nit___nit__Parser___pop(var_p
);
9451 var_nodearraylist2
= var5
;
9453 var6
= nit___nit__Parser___pop(var_p
);
9455 var_nodearraylist1
= var6
;
9456 var7
= NEW_standard__Array(&type_standard__Array__standard__Object
);
9458 standard___standard__Array___standard__kernel__Object__init(var7
); /* Direct call array#Array#init on <var7:Array[Object]>*/
9460 var_listnode3
= var7
;
9461 var_pformaldefnode1
= var_nodearraylist3
;
9462 var_listnode2
= var_nodearraylist4
;
9463 /* <var_listnode2:nullable Object> isa Array[Object] */
9464 cltype
= type_standard__Array__standard__Object
.color
;
9465 idtype
= type_standard__Array__standard__Object
.id
;
9466 if(var_listnode2
== NULL
) {
9469 if(cltype
>= var_listnode2
->type
->table_size
) {
9472 var8
= var_listnode2
->type
->type_table
[cltype
] == idtype
;
9475 if (unlikely(!var8
)) {
9476 PRINT_ERROR("Runtime error: %s", "Assert failed");
9477 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2804);
9481 if (var_pformaldefnode1
== NULL
) {
9482 var10
= 0; /* is null */
9484 var10
= 1; /* arg is null and recv is not */
9487 var11
= ((short int (*)(val
* self
, val
* p0
))(var_pformaldefnode1
->class->vft
[COLOR_standard__kernel__Object___33d_61d
]))(var_pformaldefnode1
, var9
) /* != on <var_pformaldefnode1:nullable Object>*/;
9492 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_listnode3
, var_pformaldefnode1
); /* Direct call array#Array#add on <var_listnode3:Array[Object]>*/
9497 var12
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode3
, var_listnode2
);
9499 var_listnode3
= var12
;
9500 var_node_list
= var_listnode3
;
9501 var13
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction50> */
9503 var14
= nit___nit__Parser___go_to(var_p
, var13
);
9506 nit___nit__Parser___push(var_p
, var14
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
9510 /* method parser#ReduceAction51#action for (self: ReduceAction51, Parser) */
9511 void nit__parser___nit__parser__ReduceAction51___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
9512 val
* var_p
/* var p: Parser */;
9513 val
* var
/* : null */;
9514 val
* var_node_list
/* var node_list: nullable Object */;
9515 val
* var1
/* : Array[Object] */;
9516 val
* var_listnode1
/* var listnode1: Array[Object] */;
9517 long var2
/* : Int */;
9518 long var3
/* : Int */;
9521 var_node_list
= var
;
9522 var1
= NEW_standard__Array(&type_standard__Array__standard__Object
);
9524 standard___standard__Array___standard__kernel__Object__init(var1
); /* Direct call array#Array#init on <var1:Array[Object]>*/
9526 var_listnode1
= var1
;
9527 var_node_list
= var_listnode1
;
9528 var2
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction51> */
9530 var3
= nit___nit__Parser___go_to(var_p
, var2
);
9533 nit___nit__Parser___push(var_p
, var3
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
9537 /* method parser#ReduceAction52#action for (self: ReduceAction52, Parser) */
9538 void nit__parser___nit__parser__ReduceAction52___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
9539 val
* var_p
/* var p: Parser */;
9540 val
* var
/* : null */;
9541 val
* var_node_list
/* var node_list: nullable Object */;
9542 val
* var1
/* : nullable Object */;
9543 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
9544 val
* var2
/* : nullable Object */;
9545 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9546 val
* var3
/* : nullable Object */;
9547 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9548 val
* var_pformaldefnode1
/* var pformaldefnode1: nullable Object */;
9549 long var4
/* : Int */;
9550 long var5
/* : Int */;
9553 var_node_list
= var
;
9555 var1
= nit___nit__Parser___pop(var_p
);
9557 var_nodearraylist3
= var1
;
9559 var2
= nit___nit__Parser___pop(var_p
);
9561 var_nodearraylist2
= var2
;
9563 var3
= nit___nit__Parser___pop(var_p
);
9565 var_nodearraylist1
= var3
;
9566 var_pformaldefnode1
= var_nodearraylist3
;
9567 var_node_list
= var_pformaldefnode1
;
9568 var4
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction52> */
9570 var5
= nit___nit__Parser___go_to(var_p
, var4
);
9573 nit___nit__Parser___push(var_p
, var5
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
9577 /* method parser#ReduceAction53#action for (self: ReduceAction53, Parser) */
9578 void nit__parser___nit__parser__ReduceAction53___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
9579 val
* var_p
/* var p: Parser */;
9580 val
* var
/* : null */;
9581 val
* var_node_list
/* var node_list: nullable Object */;
9582 val
* var1
/* : nullable Object */;
9583 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9584 val
* var2
/* : nullable Object */;
9585 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9586 val
* var_tclassidnode2
/* var tclassidnode2: nullable Object */;
9587 short int var3
/* : Bool */;
9590 val
* var_ptypenode3
/* var ptypenode3: nullable Object */;
9591 short int var4
/* : Bool */;
9594 val
* var7
/* : AFormaldef */;
9595 val
* var8
/* : null */;
9596 val
* var_pformaldefnode1
/* var pformaldefnode1: nullable AFormaldef */;
9597 long var9
/* : Int */;
9598 long var10
/* : Int */;
9601 var_node_list
= var
;
9603 var1
= nit___nit__Parser___pop(var_p
);
9605 var_nodearraylist2
= var1
;
9607 var2
= nit___nit__Parser___pop(var_p
);
9609 var_nodearraylist1
= var2
;
9610 var_tclassidnode2
= var_nodearraylist1
;
9611 /* <var_tclassidnode2:nullable Object> isa nullable TClassid */
9612 cltype
= type_nullable__nit__TClassid
.color
;
9613 idtype
= type_nullable__nit__TClassid
.id
;
9614 if(var_tclassidnode2
== NULL
) {
9617 if(cltype
>= var_tclassidnode2
->type
->table_size
) {
9620 var3
= var_tclassidnode2
->type
->type_table
[cltype
] == idtype
;
9623 if (unlikely(!var3
)) {
9624 PRINT_ERROR("Runtime error: %s", "Assert failed");
9625 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2844);
9628 var_ptypenode3
= var_nodearraylist2
;
9629 /* <var_ptypenode3:nullable Object> isa nullable AType */
9630 cltype5
= type_nullable__nit__AType
.color
;
9631 idtype6
= type_nullable__nit__AType
.id
;
9632 if(var_ptypenode3
== NULL
) {
9635 if(cltype5
>= var_ptypenode3
->type
->table_size
) {
9638 var4
= var_ptypenode3
->type
->type_table
[cltype5
] == idtype6
;
9641 if (unlikely(!var4
)) {
9642 PRINT_ERROR("Runtime error: %s", "Assert failed");
9643 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2846);
9646 var7
= NEW_nit__AFormaldef(&type_nit__AFormaldef
);
9649 nit__parser_prod___AFormaldef___init_aformaldef(var7
, var_tclassidnode2
, var_ptypenode3
, var8
); /* Direct call parser_prod#AFormaldef#init_aformaldef on <var7:AFormaldef>*/
9651 var_pformaldefnode1
= var7
;
9652 var_node_list
= var_pformaldefnode1
;
9653 var9
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction53> */
9655 var10
= nit___nit__Parser___go_to(var_p
, var9
);
9658 nit___nit__Parser___push(var_p
, var10
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
9662 /* method parser#ReduceAction54#action for (self: ReduceAction54, Parser) */
9663 void nit__parser___nit__parser__ReduceAction54___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
9664 val
* var_p
/* var p: Parser */;
9665 val
* var
/* : null */;
9666 val
* var_node_list
/* var node_list: nullable Object */;
9667 val
* var1
/* : nullable Object */;
9668 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
9669 val
* var2
/* : nullable Object */;
9670 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9671 val
* var3
/* : nullable Object */;
9672 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9673 val
* var_tclassidnode2
/* var tclassidnode2: nullable Object */;
9674 short int var4
/* : Bool */;
9677 val
* var_ptypenode3
/* var ptypenode3: nullable Object */;
9678 short int var5
/* : Bool */;
9681 val
* var_pannotationsnode4
/* var pannotationsnode4: nullable Object */;
9682 short int var8
/* : Bool */;
9685 val
* var11
/* : AFormaldef */;
9686 val
* var_pformaldefnode1
/* var pformaldefnode1: nullable AFormaldef */;
9687 long var12
/* : Int */;
9688 long var13
/* : Int */;
9691 var_node_list
= var
;
9693 var1
= nit___nit__Parser___pop(var_p
);
9695 var_nodearraylist3
= var1
;
9697 var2
= nit___nit__Parser___pop(var_p
);
9699 var_nodearraylist2
= var2
;
9701 var3
= nit___nit__Parser___pop(var_p
);
9703 var_nodearraylist1
= var3
;
9704 var_tclassidnode2
= var_nodearraylist1
;
9705 /* <var_tclassidnode2:nullable Object> isa nullable TClassid */
9706 cltype
= type_nullable__nit__TClassid
.color
;
9707 idtype
= type_nullable__nit__TClassid
.id
;
9708 if(var_tclassidnode2
== NULL
) {
9711 if(cltype
>= var_tclassidnode2
->type
->table_size
) {
9714 var4
= var_tclassidnode2
->type
->type_table
[cltype
] == idtype
;
9717 if (unlikely(!var4
)) {
9718 PRINT_ERROR("Runtime error: %s", "Assert failed");
9719 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2865);
9722 var_ptypenode3
= var_nodearraylist3
;
9723 /* <var_ptypenode3:nullable Object> isa nullable AType */
9724 cltype6
= type_nullable__nit__AType
.color
;
9725 idtype7
= type_nullable__nit__AType
.id
;
9726 if(var_ptypenode3
== NULL
) {
9729 if(cltype6
>= var_ptypenode3
->type
->table_size
) {
9732 var5
= var_ptypenode3
->type
->type_table
[cltype6
] == idtype7
;
9735 if (unlikely(!var5
)) {
9736 PRINT_ERROR("Runtime error: %s", "Assert failed");
9737 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2867);
9740 var_pannotationsnode4
= var_nodearraylist2
;
9741 /* <var_pannotationsnode4:nullable Object> isa nullable AAnnotations */
9742 cltype9
= type_nullable__nit__AAnnotations
.color
;
9743 idtype10
= type_nullable__nit__AAnnotations
.id
;
9744 if(var_pannotationsnode4
== NULL
) {
9747 if(cltype9
>= var_pannotationsnode4
->type
->table_size
) {
9750 var8
= var_pannotationsnode4
->type
->type_table
[cltype9
] == idtype10
;
9753 if (unlikely(!var8
)) {
9754 PRINT_ERROR("Runtime error: %s", "Assert failed");
9755 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2869);
9758 var11
= NEW_nit__AFormaldef(&type_nit__AFormaldef
);
9760 nit__parser_prod___AFormaldef___init_aformaldef(var11
, var_tclassidnode2
, var_ptypenode3
, var_pannotationsnode4
); /* Direct call parser_prod#AFormaldef#init_aformaldef on <var11:AFormaldef>*/
9762 var_pformaldefnode1
= var11
;
9763 var_node_list
= var_pformaldefnode1
;
9764 var12
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction54> */
9766 var13
= nit___nit__Parser___go_to(var_p
, var12
);
9769 nit___nit__Parser___push(var_p
, var13
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
9773 /* method parser#ReduceAction55#action for (self: ReduceAction55, Parser) */
9774 void nit__parser___nit__parser__ReduceAction55___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
9775 val
* var_p
/* var p: Parser */;
9776 val
* var
/* : null */;
9777 val
* var_node_list
/* var node_list: nullable Object */;
9778 val
* var1
/* : nullable Object */;
9779 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
9780 val
* var2
/* : nullable Object */;
9781 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
9782 val
* var3
/* : nullable Object */;
9783 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
9784 val
* var4
/* : nullable Object */;
9785 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9786 val
* var5
/* : nullable Object */;
9787 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9788 val
* var_tkwsupernode2
/* var tkwsupernode2: nullable Object */;
9789 short int var6
/* : Bool */;
9792 val
* var_ptypenode3
/* var ptypenode3: nullable Object */;
9793 short int var7
/* : Bool */;
9796 val
* var_pannotationsnode4
/* var pannotationsnode4: nullable Object */;
9797 short int var10
/* : Bool */;
9800 val
* var13
/* : ASuperclass */;
9801 val
* var_psuperclassnode1
/* var psuperclassnode1: nullable ASuperclass */;
9802 long var14
/* : Int */;
9803 long var15
/* : Int */;
9806 var_node_list
= var
;
9808 var1
= nit___nit__Parser___pop(var_p
);
9810 var_nodearraylist5
= var1
;
9812 var2
= nit___nit__Parser___pop(var_p
);
9814 var_nodearraylist4
= var2
;
9816 var3
= nit___nit__Parser___pop(var_p
);
9818 var_nodearraylist3
= var3
;
9820 var4
= nit___nit__Parser___pop(var_p
);
9822 var_nodearraylist2
= var4
;
9824 var5
= nit___nit__Parser___pop(var_p
);
9826 var_nodearraylist1
= var5
;
9827 var_tkwsupernode2
= var_nodearraylist2
;
9828 /* <var_tkwsupernode2:nullable Object> isa nullable TKwsuper */
9829 cltype
= type_nullable__nit__TKwsuper
.color
;
9830 idtype
= type_nullable__nit__TKwsuper
.id
;
9831 if(var_tkwsupernode2
== NULL
) {
9834 if(cltype
>= var_tkwsupernode2
->type
->table_size
) {
9837 var6
= var_tkwsupernode2
->type
->type_table
[cltype
] == idtype
;
9840 if (unlikely(!var6
)) {
9841 PRINT_ERROR("Runtime error: %s", "Assert failed");
9842 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2890);
9845 var_ptypenode3
= var_nodearraylist4
;
9846 /* <var_ptypenode3:nullable Object> isa nullable AType */
9847 cltype8
= type_nullable__nit__AType
.color
;
9848 idtype9
= type_nullable__nit__AType
.id
;
9849 if(var_ptypenode3
== NULL
) {
9852 if(cltype8
>= var_ptypenode3
->type
->table_size
) {
9855 var7
= var_ptypenode3
->type
->type_table
[cltype8
] == idtype9
;
9858 if (unlikely(!var7
)) {
9859 PRINT_ERROR("Runtime error: %s", "Assert failed");
9860 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2892);
9863 var_pannotationsnode4
= var_nodearraylist5
;
9864 /* <var_pannotationsnode4:nullable Object> isa nullable AAnnotations */
9865 cltype11
= type_nullable__nit__AAnnotations
.color
;
9866 idtype12
= type_nullable__nit__AAnnotations
.id
;
9867 if(var_pannotationsnode4
== NULL
) {
9870 if(cltype11
>= var_pannotationsnode4
->type
->table_size
) {
9873 var10
= var_pannotationsnode4
->type
->type_table
[cltype11
] == idtype12
;
9876 if (unlikely(!var10
)) {
9877 PRINT_ERROR("Runtime error: %s", "Assert failed");
9878 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2894);
9881 var13
= NEW_nit__ASuperclass(&type_nit__ASuperclass
);
9883 nit__parser_prod___ASuperclass___init_asuperclass(var13
, var_tkwsupernode2
, var_ptypenode3
, var_pannotationsnode4
); /* Direct call parser_prod#ASuperclass#init_asuperclass on <var13:ASuperclass>*/
9885 var_psuperclassnode1
= var13
;
9886 var_node_list
= var_psuperclassnode1
;
9887 var14
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction55> */
9889 var15
= nit___nit__Parser___go_to(var_p
, var14
);
9892 nit___nit__Parser___push(var_p
, var15
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
9896 /* method parser#ReduceAction56#action for (self: ReduceAction56, Parser) */
9897 void nit__parser___nit__parser__ReduceAction56___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
9898 val
* var_p
/* var p: Parser */;
9899 val
* var
/* : null */;
9900 val
* var_node_list
/* var node_list: nullable Object */;
9901 val
* var1
/* : nullable Object */;
9902 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9903 val
* var2
/* : nullable Object */;
9904 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9905 val
* var_ppropdefnode1
/* var ppropdefnode1: nullable Object */;
9906 long var3
/* : Int */;
9907 long var4
/* : Int */;
9910 var_node_list
= var
;
9912 var1
= nit___nit__Parser___pop(var_p
);
9914 var_nodearraylist2
= var1
;
9916 var2
= nit___nit__Parser___pop(var_p
);
9918 var_nodearraylist1
= var2
;
9919 var_ppropdefnode1
= var_nodearraylist1
;
9920 var_node_list
= var_ppropdefnode1
;
9921 var3
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction56> */
9923 var4
= nit___nit__Parser___go_to(var_p
, var3
);
9926 nit___nit__Parser___push(var_p
, var4
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/