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 */;
5 val
* var_node_list
/* var node_list: nullable Object */;
6 val
* var
/* : nullable Object */;
7 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8 val
* var1
/* : Array[Object] */;
9 val
* var_listnode3
/* var listnode3: Array[Object] */;
10 val
* var2
/* : Array[Object] */;
11 val
* var_listnode4
/* var listnode4: Array[Object] */;
12 val
* var3
/* : Array[Object] */;
13 val
* var_listnode6
/* var listnode6: Array[Object] */;
14 val
* var_pclassdefnode5
/* var pclassdefnode5: nullable Object */;
15 short int var4
/* : Bool */;
18 short int var5
/* : Bool */;
19 short int var6
/* : Bool */;
20 val
* var_other
/* var other: nullable Object */;
21 short int var8
/* : Bool */;
22 short int var9
/* : Bool */;
23 val
* var10
/* : AModule */;
24 val
* var_pmodulenode1
/* var pmodulenode1: nullable AModule */;
25 long var11
/* : Int */;
26 long var12
/* : Int */;
28 var_node_list
= ((val
*)NULL
);
30 var
= nit___nit__Parser___pop(var_p
);
32 var_nodearraylist1
= var
;
33 var1
= NEW_standard__Array(&type_standard__Array__standard__Object
);
35 standard___standard__Array___standard__kernel__Object__init(var1
); /* Direct call array#Array#init on <var1:Array[Object]>*/
38 var2
= NEW_standard__Array(&type_standard__Array__standard__Object
);
40 standard___standard__Array___standard__kernel__Object__init(var2
); /* Direct call array#Array#init on <var2:Array[Object]>*/
43 var3
= NEW_standard__Array(&type_standard__Array__standard__Object
);
45 standard___standard__Array___standard__kernel__Object__init(var3
); /* Direct call array#Array#init on <var3:Array[Object]>*/
48 var_pclassdefnode5
= var_nodearraylist1
;
49 /* <var_pclassdefnode5:nullable Object> isa nullable AClassdef */
50 cltype
= type_nullable__nit__AClassdef
.color
;
51 idtype
= type_nullable__nit__AClassdef
.id
;
52 if(var_pclassdefnode5
== NULL
) {
55 if(cltype
>= (((long)var_pclassdefnode5
&3)?type_info
[((long)var_pclassdefnode5
&3)]:var_pclassdefnode5
->type
)->table_size
) {
58 var4
= (((long)var_pclassdefnode5
&3)?type_info
[((long)var_pclassdefnode5
&3)]:var_pclassdefnode5
->type
)->type_table
[cltype
] == idtype
;
61 if (unlikely(!var4
)) {
62 PRINT_ERROR("Runtime error: %s", "Assert failed");
63 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1143);
66 if (var_pclassdefnode5
== NULL
) {
67 var5
= 0; /* is null */
69 var5
= 1; /* arg is null and recv is not */
72 { /* Inline kernel#Object#!= (var_pclassdefnode5,((val*)NULL)) on <var_pclassdefnode5:nullable Object(nullable AClassdef)> */
73 var_other
= ((val
*)NULL
);
75 var8
= ((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)>*/
86 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_listnode6
, var_pclassdefnode5
); /* Direct call array#Array#add on <var_listnode6:Array[Object]>*/
90 var10
= NEW_nit__AModule(&type_nit__AModule
);
92 nit__parser_prod___AModule___init_amodule(var10
, ((val
*)NULL
), var_listnode3
, var_listnode4
, var_listnode6
); /* Direct call parser_prod#AModule#init_amodule on <var10:AModule>*/
94 var_pmodulenode1
= var10
;
95 var_node_list
= var_pmodulenode1
;
96 var11
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction0> */
98 var12
= nit___nit__Parser___go_to(var_p
, var11
);
101 nit___nit__Parser___push(var_p
, var12
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
105 /* method parser#ReduceAction1#action for (self: ReduceAction1, Parser) */
106 void nit__parser___nit__parser__ReduceAction1___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
107 val
* var_p
/* var p: Parser */;
108 val
* var_node_list
/* var node_list: nullable Object */;
109 val
* var
/* : nullable Object */;
110 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
111 val
* var1
/* : nullable Object */;
112 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
113 val
* var2
/* : Array[Object] */;
114 val
* var_listnode3
/* var listnode3: Array[Object] */;
115 val
* var3
/* : Array[Object] */;
116 val
* var_listnode4
/* var listnode4: Array[Object] */;
117 val
* var4
/* : Array[Object] */;
118 val
* var_listnode6
/* var listnode6: Array[Object] */;
119 val
* var_pmoduledeclnode2
/* var pmoduledeclnode2: nullable Object */;
120 short int var5
/* : Bool */;
123 val
* var_pclassdefnode5
/* var pclassdefnode5: nullable Object */;
124 short int var6
/* : Bool */;
127 short int var9
/* : Bool */;
128 short int var10
/* : Bool */;
129 val
* var_other
/* var other: nullable Object */;
130 short int var12
/* : Bool */;
131 short int var13
/* : Bool */;
132 val
* var14
/* : AModule */;
133 val
* var_pmodulenode1
/* var pmodulenode1: nullable AModule */;
134 long var15
/* : Int */;
135 long var16
/* : Int */;
137 var_node_list
= ((val
*)NULL
);
139 var
= nit___nit__Parser___pop(var_p
);
141 var_nodearraylist2
= var
;
143 var1
= nit___nit__Parser___pop(var_p
);
145 var_nodearraylist1
= var1
;
146 var2
= NEW_standard__Array(&type_standard__Array__standard__Object
);
148 standard___standard__Array___standard__kernel__Object__init(var2
); /* Direct call array#Array#init on <var2:Array[Object]>*/
150 var_listnode3
= var2
;
151 var3
= NEW_standard__Array(&type_standard__Array__standard__Object
);
153 standard___standard__Array___standard__kernel__Object__init(var3
); /* Direct call array#Array#init on <var3:Array[Object]>*/
155 var_listnode4
= var3
;
156 var4
= NEW_standard__Array(&type_standard__Array__standard__Object
);
158 standard___standard__Array___standard__kernel__Object__init(var4
); /* Direct call array#Array#init on <var4:Array[Object]>*/
160 var_listnode6
= var4
;
161 var_pmoduledeclnode2
= var_nodearraylist1
;
162 /* <var_pmoduledeclnode2:nullable Object> isa nullable AModuledecl */
163 cltype
= type_nullable__nit__AModuledecl
.color
;
164 idtype
= type_nullable__nit__AModuledecl
.id
;
165 if(var_pmoduledeclnode2
== NULL
) {
168 if(cltype
>= (((long)var_pmoduledeclnode2
&3)?type_info
[((long)var_pmoduledeclnode2
&3)]:var_pmoduledeclnode2
->type
)->table_size
) {
171 var5
= (((long)var_pmoduledeclnode2
&3)?type_info
[((long)var_pmoduledeclnode2
&3)]:var_pmoduledeclnode2
->type
)->type_table
[cltype
] == idtype
;
174 if (unlikely(!var5
)) {
175 PRINT_ERROR("Runtime error: %s", "Assert failed");
176 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1168);
179 var_pclassdefnode5
= var_nodearraylist2
;
180 /* <var_pclassdefnode5:nullable Object> isa nullable AClassdef */
181 cltype7
= type_nullable__nit__AClassdef
.color
;
182 idtype8
= type_nullable__nit__AClassdef
.id
;
183 if(var_pclassdefnode5
== NULL
) {
186 if(cltype7
>= (((long)var_pclassdefnode5
&3)?type_info
[((long)var_pclassdefnode5
&3)]:var_pclassdefnode5
->type
)->table_size
) {
189 var6
= (((long)var_pclassdefnode5
&3)?type_info
[((long)var_pclassdefnode5
&3)]:var_pclassdefnode5
->type
)->type_table
[cltype7
] == idtype8
;
192 if (unlikely(!var6
)) {
193 PRINT_ERROR("Runtime error: %s", "Assert failed");
194 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1170);
197 if (var_pclassdefnode5
== NULL
) {
198 var9
= 0; /* is null */
200 var9
= 1; /* arg is null and recv is not */
203 { /* Inline kernel#Object#!= (var_pclassdefnode5,((val*)NULL)) on <var_pclassdefnode5:nullable Object(nullable AClassdef)> */
204 var_other
= ((val
*)NULL
);
206 var12
= ((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)>*/
217 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_listnode6
, var_pclassdefnode5
); /* Direct call array#Array#add on <var_listnode6:Array[Object]>*/
221 var14
= NEW_nit__AModule(&type_nit__AModule
);
223 nit__parser_prod___AModule___init_amodule(var14
, var_pmoduledeclnode2
, var_listnode3
, var_listnode4
, var_listnode6
); /* Direct call parser_prod#AModule#init_amodule on <var14:AModule>*/
225 var_pmodulenode1
= var14
;
226 var_node_list
= var_pmodulenode1
;
227 var15
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction1> */
229 var16
= nit___nit__Parser___go_to(var_p
, var15
);
232 nit___nit__Parser___push(var_p
, var16
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
236 /* method parser#ReduceAction2#action for (self: ReduceAction2, Parser) */
237 void nit__parser___nit__parser__ReduceAction2___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
238 val
* var_p
/* var p: Parser */;
239 val
* var_node_list
/* var node_list: nullable Object */;
240 val
* var
/* : nullable Object */;
241 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
242 val
* var1
/* : nullable Object */;
243 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
244 val
* var2
/* : Array[Object] */;
245 val
* var_listnode4
/* var listnode4: Array[Object] */;
246 val
* var3
/* : Array[Object] */;
247 val
* var_listnode5
/* var listnode5: Array[Object] */;
248 val
* var4
/* : Array[Object] */;
249 val
* var_listnode7
/* var listnode7: Array[Object] */;
250 val
* var_listnode3
/* var listnode3: nullable Object */;
251 short int var5
/* : Bool */;
254 val
* var6
/* : Array[Object] */;
255 val
* var_pclassdefnode6
/* var pclassdefnode6: nullable Object */;
256 short int var7
/* : Bool */;
259 short int var10
/* : Bool */;
260 short int var11
/* : Bool */;
261 val
* var_other
/* var other: nullable Object */;
262 short int var13
/* : Bool */;
263 short int var14
/* : Bool */;
264 val
* var15
/* : AModule */;
265 val
* var_pmodulenode1
/* var pmodulenode1: nullable AModule */;
266 long var16
/* : Int */;
267 long var17
/* : Int */;
269 var_node_list
= ((val
*)NULL
);
271 var
= nit___nit__Parser___pop(var_p
);
273 var_nodearraylist2
= var
;
275 var1
= nit___nit__Parser___pop(var_p
);
277 var_nodearraylist1
= var1
;
278 var2
= NEW_standard__Array(&type_standard__Array__standard__Object
);
280 standard___standard__Array___standard__kernel__Object__init(var2
); /* Direct call array#Array#init on <var2:Array[Object]>*/
282 var_listnode4
= var2
;
283 var3
= NEW_standard__Array(&type_standard__Array__standard__Object
);
285 standard___standard__Array___standard__kernel__Object__init(var3
); /* Direct call array#Array#init on <var3:Array[Object]>*/
287 var_listnode5
= var3
;
288 var4
= NEW_standard__Array(&type_standard__Array__standard__Object
);
290 standard___standard__Array___standard__kernel__Object__init(var4
); /* Direct call array#Array#init on <var4:Array[Object]>*/
292 var_listnode7
= var4
;
293 var_listnode3
= var_nodearraylist1
;
294 /* <var_listnode3:nullable Object> isa Array[Object] */
295 cltype
= type_standard__Array__standard__Object
.color
;
296 idtype
= type_standard__Array__standard__Object
.id
;
297 if(var_listnode3
== NULL
) {
300 if(cltype
>= (((long)var_listnode3
&3)?type_info
[((long)var_listnode3
&3)]:var_listnode3
->type
)->table_size
) {
303 var5
= (((long)var_listnode3
&3)?type_info
[((long)var_listnode3
&3)]:var_listnode3
->type
)->type_table
[cltype
] == idtype
;
306 if (unlikely(!var5
)) {
307 PRINT_ERROR("Runtime error: %s", "Assert failed");
308 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1195);
312 var6
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode4
, var_listnode3
);
314 var_listnode4
= var6
;
315 var_pclassdefnode6
= var_nodearraylist2
;
316 /* <var_pclassdefnode6:nullable Object> isa nullable AClassdef */
317 cltype8
= type_nullable__nit__AClassdef
.color
;
318 idtype9
= type_nullable__nit__AClassdef
.id
;
319 if(var_pclassdefnode6
== NULL
) {
322 if(cltype8
>= (((long)var_pclassdefnode6
&3)?type_info
[((long)var_pclassdefnode6
&3)]:var_pclassdefnode6
->type
)->table_size
) {
325 var7
= (((long)var_pclassdefnode6
&3)?type_info
[((long)var_pclassdefnode6
&3)]:var_pclassdefnode6
->type
)->type_table
[cltype8
] == idtype9
;
328 if (unlikely(!var7
)) {
329 PRINT_ERROR("Runtime error: %s", "Assert failed");
330 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1198);
333 if (var_pclassdefnode6
== NULL
) {
334 var10
= 0; /* is null */
336 var10
= 1; /* arg is null and recv is not */
339 { /* Inline kernel#Object#!= (var_pclassdefnode6,((val*)NULL)) on <var_pclassdefnode6:nullable Object(nullable AClassdef)> */
340 var_other
= ((val
*)NULL
);
342 var13
= ((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)>*/
353 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_listnode7
, var_pclassdefnode6
); /* Direct call array#Array#add on <var_listnode7:Array[Object]>*/
357 var15
= NEW_nit__AModule(&type_nit__AModule
);
359 nit__parser_prod___AModule___init_amodule(var15
, ((val
*)NULL
), var_listnode4
, var_listnode5
, var_listnode7
); /* Direct call parser_prod#AModule#init_amodule on <var15:AModule>*/
361 var_pmodulenode1
= var15
;
362 var_node_list
= var_pmodulenode1
;
363 var16
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction2> */
365 var17
= nit___nit__Parser___go_to(var_p
, var16
);
368 nit___nit__Parser___push(var_p
, var17
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
372 /* method parser#ReduceAction3#action for (self: ReduceAction3, Parser) */
373 void nit__parser___nit__parser__ReduceAction3___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
374 val
* var_p
/* var p: Parser */;
375 val
* var_node_list
/* var node_list: nullable Object */;
376 val
* var
/* : nullable Object */;
377 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
378 val
* var1
/* : nullable Object */;
379 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
380 val
* var2
/* : nullable Object */;
381 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
382 val
* var3
/* : Array[Object] */;
383 val
* var_listnode4
/* var listnode4: Array[Object] */;
384 val
* var4
/* : Array[Object] */;
385 val
* var_listnode5
/* var listnode5: Array[Object] */;
386 val
* var5
/* : Array[Object] */;
387 val
* var_listnode7
/* var listnode7: Array[Object] */;
388 val
* var_pmoduledeclnode2
/* var pmoduledeclnode2: nullable Object */;
389 short int var6
/* : Bool */;
392 val
* var_listnode3
/* var listnode3: nullable Object */;
393 short int var7
/* : Bool */;
396 val
* var10
/* : Array[Object] */;
397 val
* var_pclassdefnode6
/* var pclassdefnode6: nullable Object */;
398 short int var11
/* : Bool */;
401 short int var14
/* : Bool */;
402 short int var15
/* : Bool */;
403 val
* var_other
/* var other: nullable Object */;
404 short int var17
/* : Bool */;
405 short int var18
/* : Bool */;
406 val
* var19
/* : AModule */;
407 val
* var_pmodulenode1
/* var pmodulenode1: nullable AModule */;
408 long var20
/* : Int */;
409 long var21
/* : Int */;
411 var_node_list
= ((val
*)NULL
);
413 var
= nit___nit__Parser___pop(var_p
);
415 var_nodearraylist3
= var
;
417 var1
= nit___nit__Parser___pop(var_p
);
419 var_nodearraylist2
= var1
;
421 var2
= nit___nit__Parser___pop(var_p
);
423 var_nodearraylist1
= var2
;
424 var3
= NEW_standard__Array(&type_standard__Array__standard__Object
);
426 standard___standard__Array___standard__kernel__Object__init(var3
); /* Direct call array#Array#init on <var3:Array[Object]>*/
428 var_listnode4
= var3
;
429 var4
= NEW_standard__Array(&type_standard__Array__standard__Object
);
431 standard___standard__Array___standard__kernel__Object__init(var4
); /* Direct call array#Array#init on <var4:Array[Object]>*/
433 var_listnode5
= var4
;
434 var5
= NEW_standard__Array(&type_standard__Array__standard__Object
);
436 standard___standard__Array___standard__kernel__Object__init(var5
); /* Direct call array#Array#init on <var5:Array[Object]>*/
438 var_listnode7
= var5
;
439 var_pmoduledeclnode2
= var_nodearraylist1
;
440 /* <var_pmoduledeclnode2:nullable Object> isa nullable AModuledecl */
441 cltype
= type_nullable__nit__AModuledecl
.color
;
442 idtype
= type_nullable__nit__AModuledecl
.id
;
443 if(var_pmoduledeclnode2
== NULL
) {
446 if(cltype
>= (((long)var_pmoduledeclnode2
&3)?type_info
[((long)var_pmoduledeclnode2
&3)]:var_pmoduledeclnode2
->type
)->table_size
) {
449 var6
= (((long)var_pmoduledeclnode2
&3)?type_info
[((long)var_pmoduledeclnode2
&3)]:var_pmoduledeclnode2
->type
)->type_table
[cltype
] == idtype
;
452 if (unlikely(!var6
)) {
453 PRINT_ERROR("Runtime error: %s", "Assert failed");
454 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1224);
457 var_listnode3
= var_nodearraylist2
;
458 /* <var_listnode3:nullable Object> isa Array[Object] */
459 cltype8
= type_standard__Array__standard__Object
.color
;
460 idtype9
= type_standard__Array__standard__Object
.id
;
461 if(var_listnode3
== NULL
) {
464 if(cltype8
>= (((long)var_listnode3
&3)?type_info
[((long)var_listnode3
&3)]:var_listnode3
->type
)->table_size
) {
467 var7
= (((long)var_listnode3
&3)?type_info
[((long)var_listnode3
&3)]:var_listnode3
->type
)->type_table
[cltype8
] == idtype9
;
470 if (unlikely(!var7
)) {
471 PRINT_ERROR("Runtime error: %s", "Assert failed");
472 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1226);
476 var10
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode4
, var_listnode3
);
478 var_listnode4
= var10
;
479 var_pclassdefnode6
= var_nodearraylist3
;
480 /* <var_pclassdefnode6:nullable Object> isa nullable AClassdef */
481 cltype12
= type_nullable__nit__AClassdef
.color
;
482 idtype13
= type_nullable__nit__AClassdef
.id
;
483 if(var_pclassdefnode6
== NULL
) {
486 if(cltype12
>= (((long)var_pclassdefnode6
&3)?type_info
[((long)var_pclassdefnode6
&3)]:var_pclassdefnode6
->type
)->table_size
) {
489 var11
= (((long)var_pclassdefnode6
&3)?type_info
[((long)var_pclassdefnode6
&3)]:var_pclassdefnode6
->type
)->type_table
[cltype12
] == idtype13
;
492 if (unlikely(!var11
)) {
493 PRINT_ERROR("Runtime error: %s", "Assert failed");
494 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1229);
497 if (var_pclassdefnode6
== NULL
) {
498 var14
= 0; /* is null */
500 var14
= 1; /* arg is null and recv is not */
503 { /* Inline kernel#Object#!= (var_pclassdefnode6,((val*)NULL)) on <var_pclassdefnode6:nullable Object(nullable AClassdef)> */
504 var_other
= ((val
*)NULL
);
506 var17
= ((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)>*/
517 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_listnode7
, var_pclassdefnode6
); /* Direct call array#Array#add on <var_listnode7:Array[Object]>*/
521 var19
= NEW_nit__AModule(&type_nit__AModule
);
523 nit__parser_prod___AModule___init_amodule(var19
, var_pmoduledeclnode2
, var_listnode4
, var_listnode5
, var_listnode7
); /* Direct call parser_prod#AModule#init_amodule on <var19:AModule>*/
525 var_pmodulenode1
= var19
;
526 var_node_list
= var_pmodulenode1
;
527 var20
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction3> */
529 var21
= nit___nit__Parser___go_to(var_p
, var20
);
532 nit___nit__Parser___push(var_p
, var21
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
536 /* method parser#ReduceAction4#action for (self: ReduceAction4, Parser) */
537 void nit__parser___nit__parser__ReduceAction4___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
538 val
* var_p
/* var p: Parser */;
539 val
* var_node_list
/* var node_list: nullable Object */;
540 val
* var
/* : nullable Object */;
541 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
542 val
* var1
/* : nullable Object */;
543 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
544 val
* var2
/* : Array[Object] */;
545 val
* var_listnode3
/* var listnode3: Array[Object] */;
546 val
* var3
/* : Array[Object] */;
547 val
* var_listnode5
/* var listnode5: Array[Object] */;
548 val
* var4
/* : Array[Object] */;
549 val
* var_listnode7
/* var listnode7: Array[Object] */;
550 val
* var_listnode4
/* var listnode4: nullable Object */;
551 short int var5
/* : Bool */;
554 val
* var6
/* : Array[Object] */;
555 val
* var_pclassdefnode6
/* var pclassdefnode6: nullable Object */;
556 short int var7
/* : Bool */;
559 short int var10
/* : Bool */;
560 short int var11
/* : Bool */;
561 val
* var_other
/* var other: nullable Object */;
562 short int var13
/* : Bool */;
563 short int var14
/* : Bool */;
564 val
* var15
/* : AModule */;
565 val
* var_pmodulenode1
/* var pmodulenode1: nullable AModule */;
566 long var16
/* : Int */;
567 long var17
/* : Int */;
569 var_node_list
= ((val
*)NULL
);
571 var
= nit___nit__Parser___pop(var_p
);
573 var_nodearraylist2
= var
;
575 var1
= nit___nit__Parser___pop(var_p
);
577 var_nodearraylist1
= var1
;
578 var2
= NEW_standard__Array(&type_standard__Array__standard__Object
);
580 standard___standard__Array___standard__kernel__Object__init(var2
); /* Direct call array#Array#init on <var2:Array[Object]>*/
582 var_listnode3
= var2
;
583 var3
= NEW_standard__Array(&type_standard__Array__standard__Object
);
585 standard___standard__Array___standard__kernel__Object__init(var3
); /* Direct call array#Array#init on <var3:Array[Object]>*/
587 var_listnode5
= var3
;
588 var4
= NEW_standard__Array(&type_standard__Array__standard__Object
);
590 standard___standard__Array___standard__kernel__Object__init(var4
); /* Direct call array#Array#init on <var4:Array[Object]>*/
592 var_listnode7
= var4
;
593 var_listnode4
= var_nodearraylist1
;
594 /* <var_listnode4:nullable Object> isa Array[Object] */
595 cltype
= type_standard__Array__standard__Object
.color
;
596 idtype
= type_standard__Array__standard__Object
.id
;
597 if(var_listnode4
== NULL
) {
600 if(cltype
>= (((long)var_listnode4
&3)?type_info
[((long)var_listnode4
&3)]:var_listnode4
->type
)->table_size
) {
603 var5
= (((long)var_listnode4
&3)?type_info
[((long)var_listnode4
&3)]:var_listnode4
->type
)->type_table
[cltype
] == idtype
;
606 if (unlikely(!var5
)) {
607 PRINT_ERROR("Runtime error: %s", "Assert failed");
608 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1254);
612 var6
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode5
, var_listnode4
);
614 var_listnode5
= var6
;
615 var_pclassdefnode6
= var_nodearraylist2
;
616 /* <var_pclassdefnode6:nullable Object> isa nullable AClassdef */
617 cltype8
= type_nullable__nit__AClassdef
.color
;
618 idtype9
= type_nullable__nit__AClassdef
.id
;
619 if(var_pclassdefnode6
== NULL
) {
622 if(cltype8
>= (((long)var_pclassdefnode6
&3)?type_info
[((long)var_pclassdefnode6
&3)]:var_pclassdefnode6
->type
)->table_size
) {
625 var7
= (((long)var_pclassdefnode6
&3)?type_info
[((long)var_pclassdefnode6
&3)]:var_pclassdefnode6
->type
)->type_table
[cltype8
] == idtype9
;
628 if (unlikely(!var7
)) {
629 PRINT_ERROR("Runtime error: %s", "Assert failed");
630 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1257);
633 if (var_pclassdefnode6
== NULL
) {
634 var10
= 0; /* is null */
636 var10
= 1; /* arg is null and recv is not */
639 { /* Inline kernel#Object#!= (var_pclassdefnode6,((val*)NULL)) on <var_pclassdefnode6:nullable Object(nullable AClassdef)> */
640 var_other
= ((val
*)NULL
);
642 var13
= ((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)>*/
653 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_listnode7
, var_pclassdefnode6
); /* Direct call array#Array#add on <var_listnode7:Array[Object]>*/
657 var15
= NEW_nit__AModule(&type_nit__AModule
);
659 nit__parser_prod___AModule___init_amodule(var15
, ((val
*)NULL
), var_listnode3
, var_listnode5
, var_listnode7
); /* Direct call parser_prod#AModule#init_amodule on <var15:AModule>*/
661 var_pmodulenode1
= var15
;
662 var_node_list
= var_pmodulenode1
;
663 var16
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction4> */
665 var17
= nit___nit__Parser___go_to(var_p
, var16
);
668 nit___nit__Parser___push(var_p
, var17
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
672 /* method parser#ReduceAction5#action for (self: ReduceAction5, Parser) */
673 void nit__parser___nit__parser__ReduceAction5___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
674 val
* var_p
/* var p: Parser */;
675 val
* var_node_list
/* var node_list: nullable Object */;
676 val
* var
/* : nullable Object */;
677 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
678 val
* var1
/* : nullable Object */;
679 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
680 val
* var2
/* : nullable Object */;
681 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
682 val
* var3
/* : Array[Object] */;
683 val
* var_listnode3
/* var listnode3: Array[Object] */;
684 val
* var4
/* : Array[Object] */;
685 val
* var_listnode5
/* var listnode5: Array[Object] */;
686 val
* var5
/* : Array[Object] */;
687 val
* var_listnode7
/* var listnode7: Array[Object] */;
688 val
* var_pmoduledeclnode2
/* var pmoduledeclnode2: nullable Object */;
689 short int var6
/* : Bool */;
692 val
* var_listnode4
/* var listnode4: nullable Object */;
693 short int var7
/* : Bool */;
696 val
* var10
/* : Array[Object] */;
697 val
* var_pclassdefnode6
/* var pclassdefnode6: nullable Object */;
698 short int var11
/* : Bool */;
701 short int var14
/* : Bool */;
702 short int var15
/* : Bool */;
703 val
* var_other
/* var other: nullable Object */;
704 short int var17
/* : Bool */;
705 short int var18
/* : Bool */;
706 val
* var19
/* : AModule */;
707 val
* var_pmodulenode1
/* var pmodulenode1: nullable AModule */;
708 long var20
/* : Int */;
709 long var21
/* : Int */;
711 var_node_list
= ((val
*)NULL
);
713 var
= nit___nit__Parser___pop(var_p
);
715 var_nodearraylist3
= var
;
717 var1
= nit___nit__Parser___pop(var_p
);
719 var_nodearraylist2
= var1
;
721 var2
= nit___nit__Parser___pop(var_p
);
723 var_nodearraylist1
= var2
;
724 var3
= NEW_standard__Array(&type_standard__Array__standard__Object
);
726 standard___standard__Array___standard__kernel__Object__init(var3
); /* Direct call array#Array#init on <var3:Array[Object]>*/
728 var_listnode3
= var3
;
729 var4
= NEW_standard__Array(&type_standard__Array__standard__Object
);
731 standard___standard__Array___standard__kernel__Object__init(var4
); /* Direct call array#Array#init on <var4:Array[Object]>*/
733 var_listnode5
= var4
;
734 var5
= NEW_standard__Array(&type_standard__Array__standard__Object
);
736 standard___standard__Array___standard__kernel__Object__init(var5
); /* Direct call array#Array#init on <var5:Array[Object]>*/
738 var_listnode7
= var5
;
739 var_pmoduledeclnode2
= var_nodearraylist1
;
740 /* <var_pmoduledeclnode2:nullable Object> isa nullable AModuledecl */
741 cltype
= type_nullable__nit__AModuledecl
.color
;
742 idtype
= type_nullable__nit__AModuledecl
.id
;
743 if(var_pmoduledeclnode2
== NULL
) {
746 if(cltype
>= (((long)var_pmoduledeclnode2
&3)?type_info
[((long)var_pmoduledeclnode2
&3)]:var_pmoduledeclnode2
->type
)->table_size
) {
749 var6
= (((long)var_pmoduledeclnode2
&3)?type_info
[((long)var_pmoduledeclnode2
&3)]:var_pmoduledeclnode2
->type
)->type_table
[cltype
] == idtype
;
752 if (unlikely(!var6
)) {
753 PRINT_ERROR("Runtime error: %s", "Assert failed");
754 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1283);
757 var_listnode4
= var_nodearraylist2
;
758 /* <var_listnode4:nullable Object> isa Array[Object] */
759 cltype8
= type_standard__Array__standard__Object
.color
;
760 idtype9
= type_standard__Array__standard__Object
.id
;
761 if(var_listnode4
== NULL
) {
764 if(cltype8
>= (((long)var_listnode4
&3)?type_info
[((long)var_listnode4
&3)]:var_listnode4
->type
)->table_size
) {
767 var7
= (((long)var_listnode4
&3)?type_info
[((long)var_listnode4
&3)]:var_listnode4
->type
)->type_table
[cltype8
] == idtype9
;
770 if (unlikely(!var7
)) {
771 PRINT_ERROR("Runtime error: %s", "Assert failed");
772 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1285);
776 var10
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode5
, var_listnode4
);
778 var_listnode5
= var10
;
779 var_pclassdefnode6
= var_nodearraylist3
;
780 /* <var_pclassdefnode6:nullable Object> isa nullable AClassdef */
781 cltype12
= type_nullable__nit__AClassdef
.color
;
782 idtype13
= type_nullable__nit__AClassdef
.id
;
783 if(var_pclassdefnode6
== NULL
) {
786 if(cltype12
>= (((long)var_pclassdefnode6
&3)?type_info
[((long)var_pclassdefnode6
&3)]:var_pclassdefnode6
->type
)->table_size
) {
789 var11
= (((long)var_pclassdefnode6
&3)?type_info
[((long)var_pclassdefnode6
&3)]:var_pclassdefnode6
->type
)->type_table
[cltype12
] == idtype13
;
792 if (unlikely(!var11
)) {
793 PRINT_ERROR("Runtime error: %s", "Assert failed");
794 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1288);
797 if (var_pclassdefnode6
== NULL
) {
798 var14
= 0; /* is null */
800 var14
= 1; /* arg is null and recv is not */
803 { /* Inline kernel#Object#!= (var_pclassdefnode6,((val*)NULL)) on <var_pclassdefnode6:nullable Object(nullable AClassdef)> */
804 var_other
= ((val
*)NULL
);
806 var17
= ((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)>*/
817 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_listnode7
, var_pclassdefnode6
); /* Direct call array#Array#add on <var_listnode7:Array[Object]>*/
821 var19
= NEW_nit__AModule(&type_nit__AModule
);
823 nit__parser_prod___AModule___init_amodule(var19
, var_pmoduledeclnode2
, var_listnode3
, var_listnode5
, var_listnode7
); /* Direct call parser_prod#AModule#init_amodule on <var19:AModule>*/
825 var_pmodulenode1
= var19
;
826 var_node_list
= var_pmodulenode1
;
827 var20
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction5> */
829 var21
= nit___nit__Parser___go_to(var_p
, var20
);
832 nit___nit__Parser___push(var_p
, var21
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
836 /* method parser#ReduceAction6#action for (self: ReduceAction6, Parser) */
837 void nit__parser___nit__parser__ReduceAction6___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
838 val
* var_p
/* var p: Parser */;
839 val
* var_node_list
/* var node_list: nullable Object */;
840 val
* var
/* : nullable Object */;
841 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
842 val
* var1
/* : nullable Object */;
843 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
844 val
* var2
/* : nullable Object */;
845 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
846 val
* var3
/* : Array[Object] */;
847 val
* var_listnode4
/* var listnode4: Array[Object] */;
848 val
* var4
/* : Array[Object] */;
849 val
* var_listnode6
/* var listnode6: Array[Object] */;
850 val
* var5
/* : Array[Object] */;
851 val
* var_listnode8
/* var listnode8: Array[Object] */;
852 val
* var_listnode3
/* var listnode3: nullable Object */;
853 short int var6
/* : Bool */;
856 val
* var7
/* : Array[Object] */;
857 val
* var_listnode5
/* var listnode5: nullable Object */;
858 short int var8
/* : Bool */;
861 val
* var11
/* : Array[Object] */;
862 val
* var_pclassdefnode7
/* var pclassdefnode7: nullable Object */;
863 short int var12
/* : Bool */;
866 short int var15
/* : Bool */;
867 short int var16
/* : Bool */;
868 val
* var_other
/* var other: nullable Object */;
869 short int var18
/* : Bool */;
870 short int var19
/* : Bool */;
871 val
* var20
/* : AModule */;
872 val
* var_pmodulenode1
/* var pmodulenode1: nullable AModule */;
873 long var21
/* : Int */;
874 long var22
/* : Int */;
876 var_node_list
= ((val
*)NULL
);
878 var
= nit___nit__Parser___pop(var_p
);
880 var_nodearraylist3
= var
;
882 var1
= nit___nit__Parser___pop(var_p
);
884 var_nodearraylist2
= var1
;
886 var2
= nit___nit__Parser___pop(var_p
);
888 var_nodearraylist1
= var2
;
889 var3
= NEW_standard__Array(&type_standard__Array__standard__Object
);
891 standard___standard__Array___standard__kernel__Object__init(var3
); /* Direct call array#Array#init on <var3:Array[Object]>*/
893 var_listnode4
= var3
;
894 var4
= NEW_standard__Array(&type_standard__Array__standard__Object
);
896 standard___standard__Array___standard__kernel__Object__init(var4
); /* Direct call array#Array#init on <var4:Array[Object]>*/
898 var_listnode6
= var4
;
899 var5
= NEW_standard__Array(&type_standard__Array__standard__Object
);
901 standard___standard__Array___standard__kernel__Object__init(var5
); /* Direct call array#Array#init on <var5:Array[Object]>*/
903 var_listnode8
= var5
;
904 var_listnode3
= var_nodearraylist1
;
905 /* <var_listnode3:nullable Object> isa Array[Object] */
906 cltype
= type_standard__Array__standard__Object
.color
;
907 idtype
= type_standard__Array__standard__Object
.id
;
908 if(var_listnode3
== NULL
) {
911 if(cltype
>= (((long)var_listnode3
&3)?type_info
[((long)var_listnode3
&3)]:var_listnode3
->type
)->table_size
) {
914 var6
= (((long)var_listnode3
&3)?type_info
[((long)var_listnode3
&3)]:var_listnode3
->type
)->type_table
[cltype
] == idtype
;
917 if (unlikely(!var6
)) {
918 PRINT_ERROR("Runtime error: %s", "Assert failed");
919 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1314);
923 var7
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode4
, var_listnode3
);
925 var_listnode4
= var7
;
926 var_listnode5
= var_nodearraylist2
;
927 /* <var_listnode5:nullable Object> isa Array[Object] */
928 cltype9
= type_standard__Array__standard__Object
.color
;
929 idtype10
= type_standard__Array__standard__Object
.id
;
930 if(var_listnode5
== NULL
) {
933 if(cltype9
>= (((long)var_listnode5
&3)?type_info
[((long)var_listnode5
&3)]:var_listnode5
->type
)->table_size
) {
936 var8
= (((long)var_listnode5
&3)?type_info
[((long)var_listnode5
&3)]:var_listnode5
->type
)->type_table
[cltype9
] == idtype10
;
939 if (unlikely(!var8
)) {
940 PRINT_ERROR("Runtime error: %s", "Assert failed");
941 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1317);
945 var11
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode6
, var_listnode5
);
947 var_listnode6
= var11
;
948 var_pclassdefnode7
= var_nodearraylist3
;
949 /* <var_pclassdefnode7:nullable Object> isa nullable AClassdef */
950 cltype13
= type_nullable__nit__AClassdef
.color
;
951 idtype14
= type_nullable__nit__AClassdef
.id
;
952 if(var_pclassdefnode7
== NULL
) {
955 if(cltype13
>= (((long)var_pclassdefnode7
&3)?type_info
[((long)var_pclassdefnode7
&3)]:var_pclassdefnode7
->type
)->table_size
) {
958 var12
= (((long)var_pclassdefnode7
&3)?type_info
[((long)var_pclassdefnode7
&3)]:var_pclassdefnode7
->type
)->type_table
[cltype13
] == idtype14
;
961 if (unlikely(!var12
)) {
962 PRINT_ERROR("Runtime error: %s", "Assert failed");
963 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1320);
966 if (var_pclassdefnode7
== NULL
) {
967 var15
= 0; /* is null */
969 var15
= 1; /* arg is null and recv is not */
972 { /* Inline kernel#Object#!= (var_pclassdefnode7,((val*)NULL)) on <var_pclassdefnode7:nullable Object(nullable AClassdef)> */
973 var_other
= ((val
*)NULL
);
975 var18
= ((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)>*/
986 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_listnode8
, var_pclassdefnode7
); /* Direct call array#Array#add on <var_listnode8:Array[Object]>*/
990 var20
= NEW_nit__AModule(&type_nit__AModule
);
992 nit__parser_prod___AModule___init_amodule(var20
, ((val
*)NULL
), var_listnode4
, var_listnode6
, var_listnode8
); /* Direct call parser_prod#AModule#init_amodule on <var20:AModule>*/
994 var_pmodulenode1
= var20
;
995 var_node_list
= var_pmodulenode1
;
996 var21
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction6> */
998 var22
= nit___nit__Parser___go_to(var_p
, var21
);
1001 nit___nit__Parser___push(var_p
, var22
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
1005 /* method parser#ReduceAction7#action for (self: ReduceAction7, Parser) */
1006 void nit__parser___nit__parser__ReduceAction7___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
1007 val
* var_p
/* var p: Parser */;
1008 val
* var_node_list
/* var node_list: nullable Object */;
1009 val
* var
/* : nullable Object */;
1010 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
1011 val
* var1
/* : nullable Object */;
1012 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
1013 val
* var2
/* : nullable Object */;
1014 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1015 val
* var3
/* : nullable Object */;
1016 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1017 val
* var4
/* : Array[Object] */;
1018 val
* var_listnode4
/* var listnode4: Array[Object] */;
1019 val
* var5
/* : Array[Object] */;
1020 val
* var_listnode6
/* var listnode6: Array[Object] */;
1021 val
* var6
/* : Array[Object] */;
1022 val
* var_listnode8
/* var listnode8: Array[Object] */;
1023 val
* var_pmoduledeclnode2
/* var pmoduledeclnode2: nullable Object */;
1024 short int var7
/* : Bool */;
1027 val
* var_listnode3
/* var listnode3: nullable Object */;
1028 short int var8
/* : Bool */;
1031 val
* var11
/* : Array[Object] */;
1032 val
* var_listnode5
/* var listnode5: nullable Object */;
1033 short int var12
/* : Bool */;
1036 val
* var15
/* : Array[Object] */;
1037 val
* var_pclassdefnode7
/* var pclassdefnode7: nullable Object */;
1038 short int var16
/* : Bool */;
1041 short int var19
/* : Bool */;
1042 short int var20
/* : Bool */;
1043 val
* var_other
/* var other: nullable Object */;
1044 short int var22
/* : Bool */;
1045 short int var23
/* : Bool */;
1046 val
* var24
/* : AModule */;
1047 val
* var_pmodulenode1
/* var pmodulenode1: nullable AModule */;
1048 long var25
/* : Int */;
1049 long var26
/* : Int */;
1051 var_node_list
= ((val
*)NULL
);
1053 var
= nit___nit__Parser___pop(var_p
);
1055 var_nodearraylist4
= var
;
1057 var1
= nit___nit__Parser___pop(var_p
);
1059 var_nodearraylist3
= var1
;
1061 var2
= nit___nit__Parser___pop(var_p
);
1063 var_nodearraylist2
= var2
;
1065 var3
= nit___nit__Parser___pop(var_p
);
1067 var_nodearraylist1
= var3
;
1068 var4
= NEW_standard__Array(&type_standard__Array__standard__Object
);
1070 standard___standard__Array___standard__kernel__Object__init(var4
); /* Direct call array#Array#init on <var4:Array[Object]>*/
1072 var_listnode4
= var4
;
1073 var5
= NEW_standard__Array(&type_standard__Array__standard__Object
);
1075 standard___standard__Array___standard__kernel__Object__init(var5
); /* Direct call array#Array#init on <var5:Array[Object]>*/
1077 var_listnode6
= var5
;
1078 var6
= NEW_standard__Array(&type_standard__Array__standard__Object
);
1080 standard___standard__Array___standard__kernel__Object__init(var6
); /* Direct call array#Array#init on <var6:Array[Object]>*/
1082 var_listnode8
= var6
;
1083 var_pmoduledeclnode2
= var_nodearraylist1
;
1084 /* <var_pmoduledeclnode2:nullable Object> isa nullable AModuledecl */
1085 cltype
= type_nullable__nit__AModuledecl
.color
;
1086 idtype
= type_nullable__nit__AModuledecl
.id
;
1087 if(var_pmoduledeclnode2
== NULL
) {
1090 if(cltype
>= (((long)var_pmoduledeclnode2
&3)?type_info
[((long)var_pmoduledeclnode2
&3)]:var_pmoduledeclnode2
->type
)->table_size
) {
1093 var7
= (((long)var_pmoduledeclnode2
&3)?type_info
[((long)var_pmoduledeclnode2
&3)]:var_pmoduledeclnode2
->type
)->type_table
[cltype
] == idtype
;
1096 if (unlikely(!var7
)) {
1097 PRINT_ERROR("Runtime error: %s", "Assert failed");
1098 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1347);
1101 var_listnode3
= var_nodearraylist2
;
1102 /* <var_listnode3:nullable Object> isa Array[Object] */
1103 cltype9
= type_standard__Array__standard__Object
.color
;
1104 idtype10
= type_standard__Array__standard__Object
.id
;
1105 if(var_listnode3
== NULL
) {
1108 if(cltype9
>= (((long)var_listnode3
&3)?type_info
[((long)var_listnode3
&3)]:var_listnode3
->type
)->table_size
) {
1111 var8
= (((long)var_listnode3
&3)?type_info
[((long)var_listnode3
&3)]:var_listnode3
->type
)->type_table
[cltype9
] == idtype10
;
1114 if (unlikely(!var8
)) {
1115 PRINT_ERROR("Runtime error: %s", "Assert failed");
1116 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1349);
1120 var11
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode4
, var_listnode3
);
1122 var_listnode4
= var11
;
1123 var_listnode5
= var_nodearraylist3
;
1124 /* <var_listnode5:nullable Object> isa Array[Object] */
1125 cltype13
= type_standard__Array__standard__Object
.color
;
1126 idtype14
= type_standard__Array__standard__Object
.id
;
1127 if(var_listnode5
== NULL
) {
1130 if(cltype13
>= (((long)var_listnode5
&3)?type_info
[((long)var_listnode5
&3)]:var_listnode5
->type
)->table_size
) {
1133 var12
= (((long)var_listnode5
&3)?type_info
[((long)var_listnode5
&3)]:var_listnode5
->type
)->type_table
[cltype13
] == idtype14
;
1136 if (unlikely(!var12
)) {
1137 PRINT_ERROR("Runtime error: %s", "Assert failed");
1138 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1352);
1142 var15
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode6
, var_listnode5
);
1144 var_listnode6
= var15
;
1145 var_pclassdefnode7
= var_nodearraylist4
;
1146 /* <var_pclassdefnode7:nullable Object> isa nullable AClassdef */
1147 cltype17
= type_nullable__nit__AClassdef
.color
;
1148 idtype18
= type_nullable__nit__AClassdef
.id
;
1149 if(var_pclassdefnode7
== NULL
) {
1152 if(cltype17
>= (((long)var_pclassdefnode7
&3)?type_info
[((long)var_pclassdefnode7
&3)]:var_pclassdefnode7
->type
)->table_size
) {
1155 var16
= (((long)var_pclassdefnode7
&3)?type_info
[((long)var_pclassdefnode7
&3)]:var_pclassdefnode7
->type
)->type_table
[cltype17
] == idtype18
;
1158 if (unlikely(!var16
)) {
1159 PRINT_ERROR("Runtime error: %s", "Assert failed");
1160 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1355);
1163 if (var_pclassdefnode7
== NULL
) {
1164 var19
= 0; /* is null */
1166 var19
= 1; /* arg is null and recv is not */
1169 { /* Inline kernel#Object#!= (var_pclassdefnode7,((val*)NULL)) on <var_pclassdefnode7:nullable Object(nullable AClassdef)> */
1170 var_other
= ((val
*)NULL
);
1172 var22
= ((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)>*/
1177 RET_LABEL21
:(void)0;
1183 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_listnode8
, var_pclassdefnode7
); /* Direct call array#Array#add on <var_listnode8:Array[Object]>*/
1187 var24
= NEW_nit__AModule(&type_nit__AModule
);
1189 nit__parser_prod___AModule___init_amodule(var24
, var_pmoduledeclnode2
, var_listnode4
, var_listnode6
, var_listnode8
); /* Direct call parser_prod#AModule#init_amodule on <var24:AModule>*/
1191 var_pmodulenode1
= var24
;
1192 var_node_list
= var_pmodulenode1
;
1193 var25
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction7> */
1195 var26
= nit___nit__Parser___go_to(var_p
, var25
);
1198 nit___nit__Parser___push(var_p
, var26
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
1202 /* method parser#ReduceAction8#action for (self: ReduceAction8, Parser) */
1203 void nit__parser___nit__parser__ReduceAction8___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
1204 val
* var_p
/* var p: Parser */;
1205 val
* var_node_list
/* var node_list: nullable Object */;
1206 val
* var
/* : nullable Object */;
1207 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1208 val
* var1
/* : nullable Object */;
1209 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1210 val
* var2
/* : Array[Object] */;
1211 val
* var_listnode3
/* var listnode3: Array[Object] */;
1212 val
* var3
/* : Array[Object] */;
1213 val
* var_listnode4
/* var listnode4: Array[Object] */;
1214 val
* var4
/* : Array[Object] */;
1215 val
* var_listnode7
/* var listnode7: Array[Object] */;
1216 val
* var_listnode5
/* var listnode5: nullable Object */;
1217 short int var5
/* : Bool */;
1220 val
* var_pclassdefnode6
/* var pclassdefnode6: nullable Object */;
1221 short int var6
/* : Bool */;
1224 val
* var9
/* : Array[Object] */;
1225 short int var10
/* : Bool */;
1226 short int var11
/* : Bool */;
1227 val
* var_other
/* var other: nullable Object */;
1228 short int var13
/* : Bool */;
1229 short int var14
/* : Bool */;
1230 val
* var15
/* : AModule */;
1231 val
* var_pmodulenode1
/* var pmodulenode1: nullable AModule */;
1232 long var16
/* : Int */;
1233 long var17
/* : Int */;
1235 var_node_list
= ((val
*)NULL
);
1237 var
= nit___nit__Parser___pop(var_p
);
1239 var_nodearraylist2
= var
;
1241 var1
= nit___nit__Parser___pop(var_p
);
1243 var_nodearraylist1
= var1
;
1244 var2
= NEW_standard__Array(&type_standard__Array__standard__Object
);
1246 standard___standard__Array___standard__kernel__Object__init(var2
); /* Direct call array#Array#init on <var2:Array[Object]>*/
1248 var_listnode3
= var2
;
1249 var3
= NEW_standard__Array(&type_standard__Array__standard__Object
);
1251 standard___standard__Array___standard__kernel__Object__init(var3
); /* Direct call array#Array#init on <var3:Array[Object]>*/
1253 var_listnode4
= var3
;
1254 var4
= NEW_standard__Array(&type_standard__Array__standard__Object
);
1256 standard___standard__Array___standard__kernel__Object__init(var4
); /* Direct call array#Array#init on <var4:Array[Object]>*/
1258 var_listnode7
= var4
;
1259 var_listnode5
= var_nodearraylist1
;
1260 /* <var_listnode5:nullable Object> isa Array[Object] */
1261 cltype
= type_standard__Array__standard__Object
.color
;
1262 idtype
= type_standard__Array__standard__Object
.id
;
1263 if(var_listnode5
== NULL
) {
1266 if(cltype
>= (((long)var_listnode5
&3)?type_info
[((long)var_listnode5
&3)]:var_listnode5
->type
)->table_size
) {
1269 var5
= (((long)var_listnode5
&3)?type_info
[((long)var_listnode5
&3)]:var_listnode5
->type
)->type_table
[cltype
] == idtype
;
1272 if (unlikely(!var5
)) {
1273 PRINT_ERROR("Runtime error: %s", "Assert failed");
1274 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1380);
1277 var_pclassdefnode6
= var_nodearraylist2
;
1278 /* <var_pclassdefnode6:nullable Object> isa nullable AClassdef */
1279 cltype7
= type_nullable__nit__AClassdef
.color
;
1280 idtype8
= type_nullable__nit__AClassdef
.id
;
1281 if(var_pclassdefnode6
== NULL
) {
1284 if(cltype7
>= (((long)var_pclassdefnode6
&3)?type_info
[((long)var_pclassdefnode6
&3)]:var_pclassdefnode6
->type
)->table_size
) {
1287 var6
= (((long)var_pclassdefnode6
&3)?type_info
[((long)var_pclassdefnode6
&3)]:var_pclassdefnode6
->type
)->type_table
[cltype7
] == idtype8
;
1290 if (unlikely(!var6
)) {
1291 PRINT_ERROR("Runtime error: %s", "Assert failed");
1292 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1382);
1296 var9
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode7
, var_listnode5
);
1298 var_listnode7
= var9
;
1299 if (var_pclassdefnode6
== NULL
) {
1300 var10
= 0; /* is null */
1302 var10
= 1; /* arg is null and recv is not */
1305 { /* Inline kernel#Object#!= (var_pclassdefnode6,((val*)NULL)) on <var_pclassdefnode6:nullable Object(nullable AClassdef)> */
1306 var_other
= ((val
*)NULL
);
1308 var13
= ((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)>*/
1313 RET_LABEL12
:(void)0;
1319 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_listnode7
, var_pclassdefnode6
); /* Direct call array#Array#add on <var_listnode7:Array[Object]>*/
1323 var15
= NEW_nit__AModule(&type_nit__AModule
);
1325 nit__parser_prod___AModule___init_amodule(var15
, ((val
*)NULL
), var_listnode3
, var_listnode4
, var_listnode7
); /* Direct call parser_prod#AModule#init_amodule on <var15:AModule>*/
1327 var_pmodulenode1
= var15
;
1328 var_node_list
= var_pmodulenode1
;
1329 var16
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction8> */
1331 var17
= nit___nit__Parser___go_to(var_p
, var16
);
1334 nit___nit__Parser___push(var_p
, var17
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
1338 /* method parser#ReduceAction9#action for (self: ReduceAction9, Parser) */
1339 void nit__parser___nit__parser__ReduceAction9___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
1340 val
* var_p
/* var p: Parser */;
1341 val
* var_node_list
/* var node_list: nullable Object */;
1342 val
* var
/* : nullable Object */;
1343 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
1344 val
* var1
/* : nullable Object */;
1345 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1346 val
* var2
/* : nullable Object */;
1347 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1348 val
* var3
/* : Array[Object] */;
1349 val
* var_listnode3
/* var listnode3: Array[Object] */;
1350 val
* var4
/* : Array[Object] */;
1351 val
* var_listnode4
/* var listnode4: Array[Object] */;
1352 val
* var5
/* : Array[Object] */;
1353 val
* var_listnode7
/* var listnode7: Array[Object] */;
1354 val
* var_pmoduledeclnode2
/* var pmoduledeclnode2: nullable Object */;
1355 short int var6
/* : Bool */;
1358 val
* var_listnode5
/* var listnode5: nullable Object */;
1359 short int var7
/* : Bool */;
1362 val
* var_pclassdefnode6
/* var pclassdefnode6: nullable Object */;
1363 short int var10
/* : Bool */;
1366 val
* var13
/* : Array[Object] */;
1367 short int var14
/* : Bool */;
1368 short int var15
/* : Bool */;
1369 val
* var_other
/* var other: nullable Object */;
1370 short int var17
/* : Bool */;
1371 short int var18
/* : Bool */;
1372 val
* var19
/* : AModule */;
1373 val
* var_pmodulenode1
/* var pmodulenode1: nullable AModule */;
1374 long var20
/* : Int */;
1375 long var21
/* : Int */;
1377 var_node_list
= ((val
*)NULL
);
1379 var
= nit___nit__Parser___pop(var_p
);
1381 var_nodearraylist3
= var
;
1383 var1
= nit___nit__Parser___pop(var_p
);
1385 var_nodearraylist2
= var1
;
1387 var2
= nit___nit__Parser___pop(var_p
);
1389 var_nodearraylist1
= var2
;
1390 var3
= NEW_standard__Array(&type_standard__Array__standard__Object
);
1392 standard___standard__Array___standard__kernel__Object__init(var3
); /* Direct call array#Array#init on <var3:Array[Object]>*/
1394 var_listnode3
= var3
;
1395 var4
= NEW_standard__Array(&type_standard__Array__standard__Object
);
1397 standard___standard__Array___standard__kernel__Object__init(var4
); /* Direct call array#Array#init on <var4:Array[Object]>*/
1399 var_listnode4
= var4
;
1400 var5
= NEW_standard__Array(&type_standard__Array__standard__Object
);
1402 standard___standard__Array___standard__kernel__Object__init(var5
); /* Direct call array#Array#init on <var5:Array[Object]>*/
1404 var_listnode7
= var5
;
1405 var_pmoduledeclnode2
= var_nodearraylist1
;
1406 /* <var_pmoduledeclnode2:nullable Object> isa nullable AModuledecl */
1407 cltype
= type_nullable__nit__AModuledecl
.color
;
1408 idtype
= type_nullable__nit__AModuledecl
.id
;
1409 if(var_pmoduledeclnode2
== NULL
) {
1412 if(cltype
>= (((long)var_pmoduledeclnode2
&3)?type_info
[((long)var_pmoduledeclnode2
&3)]:var_pmoduledeclnode2
->type
)->table_size
) {
1415 var6
= (((long)var_pmoduledeclnode2
&3)?type_info
[((long)var_pmoduledeclnode2
&3)]:var_pmoduledeclnode2
->type
)->type_table
[cltype
] == idtype
;
1418 if (unlikely(!var6
)) {
1419 PRINT_ERROR("Runtime error: %s", "Assert failed");
1420 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1409);
1423 var_listnode5
= var_nodearraylist2
;
1424 /* <var_listnode5:nullable Object> isa Array[Object] */
1425 cltype8
= type_standard__Array__standard__Object
.color
;
1426 idtype9
= type_standard__Array__standard__Object
.id
;
1427 if(var_listnode5
== NULL
) {
1430 if(cltype8
>= (((long)var_listnode5
&3)?type_info
[((long)var_listnode5
&3)]:var_listnode5
->type
)->table_size
) {
1433 var7
= (((long)var_listnode5
&3)?type_info
[((long)var_listnode5
&3)]:var_listnode5
->type
)->type_table
[cltype8
] == idtype9
;
1436 if (unlikely(!var7
)) {
1437 PRINT_ERROR("Runtime error: %s", "Assert failed");
1438 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1411);
1441 var_pclassdefnode6
= var_nodearraylist3
;
1442 /* <var_pclassdefnode6:nullable Object> isa nullable AClassdef */
1443 cltype11
= type_nullable__nit__AClassdef
.color
;
1444 idtype12
= type_nullable__nit__AClassdef
.id
;
1445 if(var_pclassdefnode6
== NULL
) {
1448 if(cltype11
>= (((long)var_pclassdefnode6
&3)?type_info
[((long)var_pclassdefnode6
&3)]:var_pclassdefnode6
->type
)->table_size
) {
1451 var10
= (((long)var_pclassdefnode6
&3)?type_info
[((long)var_pclassdefnode6
&3)]:var_pclassdefnode6
->type
)->type_table
[cltype11
] == idtype12
;
1454 if (unlikely(!var10
)) {
1455 PRINT_ERROR("Runtime error: %s", "Assert failed");
1456 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1413);
1460 var13
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode7
, var_listnode5
);
1462 var_listnode7
= var13
;
1463 if (var_pclassdefnode6
== NULL
) {
1464 var14
= 0; /* is null */
1466 var14
= 1; /* arg is null and recv is not */
1469 { /* Inline kernel#Object#!= (var_pclassdefnode6,((val*)NULL)) on <var_pclassdefnode6:nullable Object(nullable AClassdef)> */
1470 var_other
= ((val
*)NULL
);
1472 var17
= ((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)>*/
1477 RET_LABEL16
:(void)0;
1483 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_listnode7
, var_pclassdefnode6
); /* Direct call array#Array#add on <var_listnode7:Array[Object]>*/
1487 var19
= NEW_nit__AModule(&type_nit__AModule
);
1489 nit__parser_prod___AModule___init_amodule(var19
, var_pmoduledeclnode2
, var_listnode3
, var_listnode4
, var_listnode7
); /* Direct call parser_prod#AModule#init_amodule on <var19:AModule>*/
1491 var_pmodulenode1
= var19
;
1492 var_node_list
= var_pmodulenode1
;
1493 var20
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction9> */
1495 var21
= nit___nit__Parser___go_to(var_p
, var20
);
1498 nit___nit__Parser___push(var_p
, var21
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
1502 /* method parser#ReduceAction10#action for (self: ReduceAction10, Parser) */
1503 void nit__parser___nit__parser__ReduceAction10___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
1504 val
* var_p
/* var p: Parser */;
1505 val
* var_node_list
/* var node_list: nullable Object */;
1506 val
* var
/* : nullable Object */;
1507 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
1508 val
* var1
/* : nullable Object */;
1509 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1510 val
* var2
/* : nullable Object */;
1511 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1512 val
* var3
/* : Array[Object] */;
1513 val
* var_listnode4
/* var listnode4: Array[Object] */;
1514 val
* var4
/* : Array[Object] */;
1515 val
* var_listnode5
/* var listnode5: Array[Object] */;
1516 val
* var5
/* : Array[Object] */;
1517 val
* var_listnode8
/* var listnode8: Array[Object] */;
1518 val
* var_listnode3
/* var listnode3: nullable Object */;
1519 short int var6
/* : Bool */;
1522 val
* var7
/* : Array[Object] */;
1523 val
* var_listnode6
/* var listnode6: nullable Object */;
1524 short int var8
/* : Bool */;
1527 val
* var_pclassdefnode7
/* var pclassdefnode7: nullable Object */;
1528 short int var11
/* : Bool */;
1531 val
* var14
/* : Array[Object] */;
1532 short int var15
/* : Bool */;
1533 short int var16
/* : Bool */;
1534 val
* var_other
/* var other: nullable Object */;
1535 short int var18
/* : Bool */;
1536 short int var19
/* : Bool */;
1537 val
* var20
/* : AModule */;
1538 val
* var_pmodulenode1
/* var pmodulenode1: nullable AModule */;
1539 long var21
/* : Int */;
1540 long var22
/* : Int */;
1542 var_node_list
= ((val
*)NULL
);
1544 var
= nit___nit__Parser___pop(var_p
);
1546 var_nodearraylist3
= var
;
1548 var1
= nit___nit__Parser___pop(var_p
);
1550 var_nodearraylist2
= var1
;
1552 var2
= nit___nit__Parser___pop(var_p
);
1554 var_nodearraylist1
= var2
;
1555 var3
= NEW_standard__Array(&type_standard__Array__standard__Object
);
1557 standard___standard__Array___standard__kernel__Object__init(var3
); /* Direct call array#Array#init on <var3:Array[Object]>*/
1559 var_listnode4
= var3
;
1560 var4
= NEW_standard__Array(&type_standard__Array__standard__Object
);
1562 standard___standard__Array___standard__kernel__Object__init(var4
); /* Direct call array#Array#init on <var4:Array[Object]>*/
1564 var_listnode5
= var4
;
1565 var5
= NEW_standard__Array(&type_standard__Array__standard__Object
);
1567 standard___standard__Array___standard__kernel__Object__init(var5
); /* Direct call array#Array#init on <var5:Array[Object]>*/
1569 var_listnode8
= var5
;
1570 var_listnode3
= var_nodearraylist1
;
1571 /* <var_listnode3:nullable Object> isa Array[Object] */
1572 cltype
= type_standard__Array__standard__Object
.color
;
1573 idtype
= type_standard__Array__standard__Object
.id
;
1574 if(var_listnode3
== NULL
) {
1577 if(cltype
>= (((long)var_listnode3
&3)?type_info
[((long)var_listnode3
&3)]:var_listnode3
->type
)->table_size
) {
1580 var6
= (((long)var_listnode3
&3)?type_info
[((long)var_listnode3
&3)]:var_listnode3
->type
)->type_table
[cltype
] == idtype
;
1583 if (unlikely(!var6
)) {
1584 PRINT_ERROR("Runtime error: %s", "Assert failed");
1585 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1440);
1589 var7
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode4
, var_listnode3
);
1591 var_listnode4
= var7
;
1592 var_listnode6
= var_nodearraylist2
;
1593 /* <var_listnode6:nullable Object> isa Array[Object] */
1594 cltype9
= type_standard__Array__standard__Object
.color
;
1595 idtype10
= type_standard__Array__standard__Object
.id
;
1596 if(var_listnode6
== NULL
) {
1599 if(cltype9
>= (((long)var_listnode6
&3)?type_info
[((long)var_listnode6
&3)]:var_listnode6
->type
)->table_size
) {
1602 var8
= (((long)var_listnode6
&3)?type_info
[((long)var_listnode6
&3)]:var_listnode6
->type
)->type_table
[cltype9
] == idtype10
;
1605 if (unlikely(!var8
)) {
1606 PRINT_ERROR("Runtime error: %s", "Assert failed");
1607 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1443);
1610 var_pclassdefnode7
= var_nodearraylist3
;
1611 /* <var_pclassdefnode7:nullable Object> isa nullable AClassdef */
1612 cltype12
= type_nullable__nit__AClassdef
.color
;
1613 idtype13
= type_nullable__nit__AClassdef
.id
;
1614 if(var_pclassdefnode7
== NULL
) {
1617 if(cltype12
>= (((long)var_pclassdefnode7
&3)?type_info
[((long)var_pclassdefnode7
&3)]:var_pclassdefnode7
->type
)->table_size
) {
1620 var11
= (((long)var_pclassdefnode7
&3)?type_info
[((long)var_pclassdefnode7
&3)]:var_pclassdefnode7
->type
)->type_table
[cltype12
] == idtype13
;
1623 if (unlikely(!var11
)) {
1624 PRINT_ERROR("Runtime error: %s", "Assert failed");
1625 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1445);
1629 var14
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode8
, var_listnode6
);
1631 var_listnode8
= var14
;
1632 if (var_pclassdefnode7
== NULL
) {
1633 var15
= 0; /* is null */
1635 var15
= 1; /* arg is null and recv is not */
1638 { /* Inline kernel#Object#!= (var_pclassdefnode7,((val*)NULL)) on <var_pclassdefnode7:nullable Object(nullable AClassdef)> */
1639 var_other
= ((val
*)NULL
);
1641 var18
= ((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)>*/
1646 RET_LABEL17
:(void)0;
1652 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_listnode8
, var_pclassdefnode7
); /* Direct call array#Array#add on <var_listnode8:Array[Object]>*/
1656 var20
= NEW_nit__AModule(&type_nit__AModule
);
1658 nit__parser_prod___AModule___init_amodule(var20
, ((val
*)NULL
), var_listnode4
, var_listnode5
, var_listnode8
); /* Direct call parser_prod#AModule#init_amodule on <var20:AModule>*/
1660 var_pmodulenode1
= var20
;
1661 var_node_list
= var_pmodulenode1
;
1662 var21
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction10> */
1664 var22
= nit___nit__Parser___go_to(var_p
, var21
);
1667 nit___nit__Parser___push(var_p
, var22
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
1671 /* method parser#ReduceAction11#action for (self: ReduceAction11, Parser) */
1672 void nit__parser___nit__parser__ReduceAction11___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
1673 val
* var_p
/* var p: Parser */;
1674 val
* var_node_list
/* var node_list: nullable Object */;
1675 val
* var
/* : nullable Object */;
1676 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
1677 val
* var1
/* : nullable Object */;
1678 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
1679 val
* var2
/* : nullable Object */;
1680 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1681 val
* var3
/* : nullable Object */;
1682 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1683 val
* var4
/* : Array[Object] */;
1684 val
* var_listnode4
/* var listnode4: Array[Object] */;
1685 val
* var5
/* : Array[Object] */;
1686 val
* var_listnode5
/* var listnode5: Array[Object] */;
1687 val
* var6
/* : Array[Object] */;
1688 val
* var_listnode8
/* var listnode8: Array[Object] */;
1689 val
* var_pmoduledeclnode2
/* var pmoduledeclnode2: nullable Object */;
1690 short int var7
/* : Bool */;
1693 val
* var_listnode3
/* var listnode3: nullable Object */;
1694 short int var8
/* : Bool */;
1697 val
* var11
/* : Array[Object] */;
1698 val
* var_listnode6
/* var listnode6: nullable Object */;
1699 short int var12
/* : Bool */;
1702 val
* var_pclassdefnode7
/* var pclassdefnode7: nullable Object */;
1703 short int var15
/* : Bool */;
1706 val
* var18
/* : Array[Object] */;
1707 short int var19
/* : Bool */;
1708 short int var20
/* : Bool */;
1709 val
* var_other
/* var other: nullable Object */;
1710 short int var22
/* : Bool */;
1711 short int var23
/* : Bool */;
1712 val
* var24
/* : AModule */;
1713 val
* var_pmodulenode1
/* var pmodulenode1: nullable AModule */;
1714 long var25
/* : Int */;
1715 long var26
/* : Int */;
1717 var_node_list
= ((val
*)NULL
);
1719 var
= nit___nit__Parser___pop(var_p
);
1721 var_nodearraylist4
= var
;
1723 var1
= nit___nit__Parser___pop(var_p
);
1725 var_nodearraylist3
= var1
;
1727 var2
= nit___nit__Parser___pop(var_p
);
1729 var_nodearraylist2
= var2
;
1731 var3
= nit___nit__Parser___pop(var_p
);
1733 var_nodearraylist1
= var3
;
1734 var4
= NEW_standard__Array(&type_standard__Array__standard__Object
);
1736 standard___standard__Array___standard__kernel__Object__init(var4
); /* Direct call array#Array#init on <var4:Array[Object]>*/
1738 var_listnode4
= var4
;
1739 var5
= NEW_standard__Array(&type_standard__Array__standard__Object
);
1741 standard___standard__Array___standard__kernel__Object__init(var5
); /* Direct call array#Array#init on <var5:Array[Object]>*/
1743 var_listnode5
= var5
;
1744 var6
= NEW_standard__Array(&type_standard__Array__standard__Object
);
1746 standard___standard__Array___standard__kernel__Object__init(var6
); /* Direct call array#Array#init on <var6:Array[Object]>*/
1748 var_listnode8
= var6
;
1749 var_pmoduledeclnode2
= var_nodearraylist1
;
1750 /* <var_pmoduledeclnode2:nullable Object> isa nullable AModuledecl */
1751 cltype
= type_nullable__nit__AModuledecl
.color
;
1752 idtype
= type_nullable__nit__AModuledecl
.id
;
1753 if(var_pmoduledeclnode2
== NULL
) {
1756 if(cltype
>= (((long)var_pmoduledeclnode2
&3)?type_info
[((long)var_pmoduledeclnode2
&3)]:var_pmoduledeclnode2
->type
)->table_size
) {
1759 var7
= (((long)var_pmoduledeclnode2
&3)?type_info
[((long)var_pmoduledeclnode2
&3)]:var_pmoduledeclnode2
->type
)->type_table
[cltype
] == idtype
;
1762 if (unlikely(!var7
)) {
1763 PRINT_ERROR("Runtime error: %s", "Assert failed");
1764 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1473);
1767 var_listnode3
= var_nodearraylist2
;
1768 /* <var_listnode3:nullable Object> isa Array[Object] */
1769 cltype9
= type_standard__Array__standard__Object
.color
;
1770 idtype10
= type_standard__Array__standard__Object
.id
;
1771 if(var_listnode3
== NULL
) {
1774 if(cltype9
>= (((long)var_listnode3
&3)?type_info
[((long)var_listnode3
&3)]:var_listnode3
->type
)->table_size
) {
1777 var8
= (((long)var_listnode3
&3)?type_info
[((long)var_listnode3
&3)]:var_listnode3
->type
)->type_table
[cltype9
] == idtype10
;
1780 if (unlikely(!var8
)) {
1781 PRINT_ERROR("Runtime error: %s", "Assert failed");
1782 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1475);
1786 var11
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode4
, var_listnode3
);
1788 var_listnode4
= var11
;
1789 var_listnode6
= var_nodearraylist3
;
1790 /* <var_listnode6:nullable Object> isa Array[Object] */
1791 cltype13
= type_standard__Array__standard__Object
.color
;
1792 idtype14
= type_standard__Array__standard__Object
.id
;
1793 if(var_listnode6
== NULL
) {
1796 if(cltype13
>= (((long)var_listnode6
&3)?type_info
[((long)var_listnode6
&3)]:var_listnode6
->type
)->table_size
) {
1799 var12
= (((long)var_listnode6
&3)?type_info
[((long)var_listnode6
&3)]:var_listnode6
->type
)->type_table
[cltype13
] == idtype14
;
1802 if (unlikely(!var12
)) {
1803 PRINT_ERROR("Runtime error: %s", "Assert failed");
1804 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1478);
1807 var_pclassdefnode7
= var_nodearraylist4
;
1808 /* <var_pclassdefnode7:nullable Object> isa nullable AClassdef */
1809 cltype16
= type_nullable__nit__AClassdef
.color
;
1810 idtype17
= type_nullable__nit__AClassdef
.id
;
1811 if(var_pclassdefnode7
== NULL
) {
1814 if(cltype16
>= (((long)var_pclassdefnode7
&3)?type_info
[((long)var_pclassdefnode7
&3)]:var_pclassdefnode7
->type
)->table_size
) {
1817 var15
= (((long)var_pclassdefnode7
&3)?type_info
[((long)var_pclassdefnode7
&3)]:var_pclassdefnode7
->type
)->type_table
[cltype16
] == idtype17
;
1820 if (unlikely(!var15
)) {
1821 PRINT_ERROR("Runtime error: %s", "Assert failed");
1822 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1480);
1826 var18
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode8
, var_listnode6
);
1828 var_listnode8
= var18
;
1829 if (var_pclassdefnode7
== NULL
) {
1830 var19
= 0; /* is null */
1832 var19
= 1; /* arg is null and recv is not */
1835 { /* Inline kernel#Object#!= (var_pclassdefnode7,((val*)NULL)) on <var_pclassdefnode7:nullable Object(nullable AClassdef)> */
1836 var_other
= ((val
*)NULL
);
1838 var22
= ((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)>*/
1843 RET_LABEL21
:(void)0;
1849 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_listnode8
, var_pclassdefnode7
); /* Direct call array#Array#add on <var_listnode8:Array[Object]>*/
1853 var24
= NEW_nit__AModule(&type_nit__AModule
);
1855 nit__parser_prod___AModule___init_amodule(var24
, var_pmoduledeclnode2
, var_listnode4
, var_listnode5
, var_listnode8
); /* Direct call parser_prod#AModule#init_amodule on <var24:AModule>*/
1857 var_pmodulenode1
= var24
;
1858 var_node_list
= var_pmodulenode1
;
1859 var25
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction11> */
1861 var26
= nit___nit__Parser___go_to(var_p
, var25
);
1864 nit___nit__Parser___push(var_p
, var26
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
1868 /* method parser#ReduceAction12#action for (self: ReduceAction12, Parser) */
1869 void nit__parser___nit__parser__ReduceAction12___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
1870 val
* var_p
/* var p: Parser */;
1871 val
* var_node_list
/* var node_list: nullable Object */;
1872 val
* var
/* : nullable Object */;
1873 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
1874 val
* var1
/* : nullable Object */;
1875 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1876 val
* var2
/* : nullable Object */;
1877 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1878 val
* var3
/* : Array[Object] */;
1879 val
* var_listnode3
/* var listnode3: Array[Object] */;
1880 val
* var4
/* : Array[Object] */;
1881 val
* var_listnode5
/* var listnode5: Array[Object] */;
1882 val
* var5
/* : Array[Object] */;
1883 val
* var_listnode8
/* var listnode8: Array[Object] */;
1884 val
* var_listnode4
/* var listnode4: nullable Object */;
1885 short int var6
/* : Bool */;
1888 val
* var7
/* : Array[Object] */;
1889 val
* var_listnode6
/* var listnode6: nullable Object */;
1890 short int var8
/* : Bool */;
1893 val
* var_pclassdefnode7
/* var pclassdefnode7: nullable Object */;
1894 short int var11
/* : Bool */;
1897 val
* var14
/* : Array[Object] */;
1898 short int var15
/* : Bool */;
1899 short int var16
/* : Bool */;
1900 val
* var_other
/* var other: nullable Object */;
1901 short int var18
/* : Bool */;
1902 short int var19
/* : Bool */;
1903 val
* var20
/* : AModule */;
1904 val
* var_pmodulenode1
/* var pmodulenode1: nullable AModule */;
1905 long var21
/* : Int */;
1906 long var22
/* : Int */;
1908 var_node_list
= ((val
*)NULL
);
1910 var
= nit___nit__Parser___pop(var_p
);
1912 var_nodearraylist3
= var
;
1914 var1
= nit___nit__Parser___pop(var_p
);
1916 var_nodearraylist2
= var1
;
1918 var2
= nit___nit__Parser___pop(var_p
);
1920 var_nodearraylist1
= var2
;
1921 var3
= NEW_standard__Array(&type_standard__Array__standard__Object
);
1923 standard___standard__Array___standard__kernel__Object__init(var3
); /* Direct call array#Array#init on <var3:Array[Object]>*/
1925 var_listnode3
= var3
;
1926 var4
= NEW_standard__Array(&type_standard__Array__standard__Object
);
1928 standard___standard__Array___standard__kernel__Object__init(var4
); /* Direct call array#Array#init on <var4:Array[Object]>*/
1930 var_listnode5
= var4
;
1931 var5
= NEW_standard__Array(&type_standard__Array__standard__Object
);
1933 standard___standard__Array___standard__kernel__Object__init(var5
); /* Direct call array#Array#init on <var5:Array[Object]>*/
1935 var_listnode8
= var5
;
1936 var_listnode4
= var_nodearraylist1
;
1937 /* <var_listnode4:nullable Object> isa Array[Object] */
1938 cltype
= type_standard__Array__standard__Object
.color
;
1939 idtype
= type_standard__Array__standard__Object
.id
;
1940 if(var_listnode4
== NULL
) {
1943 if(cltype
>= (((long)var_listnode4
&3)?type_info
[((long)var_listnode4
&3)]:var_listnode4
->type
)->table_size
) {
1946 var6
= (((long)var_listnode4
&3)?type_info
[((long)var_listnode4
&3)]:var_listnode4
->type
)->type_table
[cltype
] == idtype
;
1949 if (unlikely(!var6
)) {
1950 PRINT_ERROR("Runtime error: %s", "Assert failed");
1951 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1507);
1955 var7
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode5
, var_listnode4
);
1957 var_listnode5
= var7
;
1958 var_listnode6
= var_nodearraylist2
;
1959 /* <var_listnode6:nullable Object> isa Array[Object] */
1960 cltype9
= type_standard__Array__standard__Object
.color
;
1961 idtype10
= type_standard__Array__standard__Object
.id
;
1962 if(var_listnode6
== NULL
) {
1965 if(cltype9
>= (((long)var_listnode6
&3)?type_info
[((long)var_listnode6
&3)]:var_listnode6
->type
)->table_size
) {
1968 var8
= (((long)var_listnode6
&3)?type_info
[((long)var_listnode6
&3)]:var_listnode6
->type
)->type_table
[cltype9
] == idtype10
;
1971 if (unlikely(!var8
)) {
1972 PRINT_ERROR("Runtime error: %s", "Assert failed");
1973 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1510);
1976 var_pclassdefnode7
= var_nodearraylist3
;
1977 /* <var_pclassdefnode7:nullable Object> isa nullable AClassdef */
1978 cltype12
= type_nullable__nit__AClassdef
.color
;
1979 idtype13
= type_nullable__nit__AClassdef
.id
;
1980 if(var_pclassdefnode7
== NULL
) {
1983 if(cltype12
>= (((long)var_pclassdefnode7
&3)?type_info
[((long)var_pclassdefnode7
&3)]:var_pclassdefnode7
->type
)->table_size
) {
1986 var11
= (((long)var_pclassdefnode7
&3)?type_info
[((long)var_pclassdefnode7
&3)]:var_pclassdefnode7
->type
)->type_table
[cltype12
] == idtype13
;
1989 if (unlikely(!var11
)) {
1990 PRINT_ERROR("Runtime error: %s", "Assert failed");
1991 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1512);
1995 var14
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode8
, var_listnode6
);
1997 var_listnode8
= var14
;
1998 if (var_pclassdefnode7
== NULL
) {
1999 var15
= 0; /* is null */
2001 var15
= 1; /* arg is null and recv is not */
2004 { /* Inline kernel#Object#!= (var_pclassdefnode7,((val*)NULL)) on <var_pclassdefnode7:nullable Object(nullable AClassdef)> */
2005 var_other
= ((val
*)NULL
);
2007 var18
= ((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)>*/
2012 RET_LABEL17
:(void)0;
2018 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_listnode8
, var_pclassdefnode7
); /* Direct call array#Array#add on <var_listnode8:Array[Object]>*/
2022 var20
= NEW_nit__AModule(&type_nit__AModule
);
2024 nit__parser_prod___AModule___init_amodule(var20
, ((val
*)NULL
), var_listnode3
, var_listnode5
, var_listnode8
); /* Direct call parser_prod#AModule#init_amodule on <var20:AModule>*/
2026 var_pmodulenode1
= var20
;
2027 var_node_list
= var_pmodulenode1
;
2028 var21
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction12> */
2030 var22
= nit___nit__Parser___go_to(var_p
, var21
);
2033 nit___nit__Parser___push(var_p
, var22
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
2037 /* method parser#ReduceAction13#action for (self: ReduceAction13, Parser) */
2038 void nit__parser___nit__parser__ReduceAction13___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
2039 val
* var_p
/* var p: Parser */;
2040 val
* var_node_list
/* var node_list: nullable Object */;
2041 val
* var
/* : nullable Object */;
2042 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
2043 val
* var1
/* : nullable Object */;
2044 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
2045 val
* var2
/* : nullable Object */;
2046 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2047 val
* var3
/* : nullable Object */;
2048 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2049 val
* var4
/* : Array[Object] */;
2050 val
* var_listnode3
/* var listnode3: Array[Object] */;
2051 val
* var5
/* : Array[Object] */;
2052 val
* var_listnode5
/* var listnode5: Array[Object] */;
2053 val
* var6
/* : Array[Object] */;
2054 val
* var_listnode8
/* var listnode8: Array[Object] */;
2055 val
* var_pmoduledeclnode2
/* var pmoduledeclnode2: nullable Object */;
2056 short int var7
/* : Bool */;
2059 val
* var_listnode4
/* var listnode4: nullable Object */;
2060 short int var8
/* : Bool */;
2063 val
* var11
/* : Array[Object] */;
2064 val
* var_listnode6
/* var listnode6: nullable Object */;
2065 short int var12
/* : Bool */;
2068 val
* var_pclassdefnode7
/* var pclassdefnode7: nullable Object */;
2069 short int var15
/* : Bool */;
2072 val
* var18
/* : Array[Object] */;
2073 short int var19
/* : Bool */;
2074 short int var20
/* : Bool */;
2075 val
* var_other
/* var other: nullable Object */;
2076 short int var22
/* : Bool */;
2077 short int var23
/* : Bool */;
2078 val
* var24
/* : AModule */;
2079 val
* var_pmodulenode1
/* var pmodulenode1: nullable AModule */;
2080 long var25
/* : Int */;
2081 long var26
/* : Int */;
2083 var_node_list
= ((val
*)NULL
);
2085 var
= nit___nit__Parser___pop(var_p
);
2087 var_nodearraylist4
= var
;
2089 var1
= nit___nit__Parser___pop(var_p
);
2091 var_nodearraylist3
= var1
;
2093 var2
= nit___nit__Parser___pop(var_p
);
2095 var_nodearraylist2
= var2
;
2097 var3
= nit___nit__Parser___pop(var_p
);
2099 var_nodearraylist1
= var3
;
2100 var4
= NEW_standard__Array(&type_standard__Array__standard__Object
);
2102 standard___standard__Array___standard__kernel__Object__init(var4
); /* Direct call array#Array#init on <var4:Array[Object]>*/
2104 var_listnode3
= var4
;
2105 var5
= NEW_standard__Array(&type_standard__Array__standard__Object
);
2107 standard___standard__Array___standard__kernel__Object__init(var5
); /* Direct call array#Array#init on <var5:Array[Object]>*/
2109 var_listnode5
= var5
;
2110 var6
= NEW_standard__Array(&type_standard__Array__standard__Object
);
2112 standard___standard__Array___standard__kernel__Object__init(var6
); /* Direct call array#Array#init on <var6:Array[Object]>*/
2114 var_listnode8
= var6
;
2115 var_pmoduledeclnode2
= var_nodearraylist1
;
2116 /* <var_pmoduledeclnode2:nullable Object> isa nullable AModuledecl */
2117 cltype
= type_nullable__nit__AModuledecl
.color
;
2118 idtype
= type_nullable__nit__AModuledecl
.id
;
2119 if(var_pmoduledeclnode2
== NULL
) {
2122 if(cltype
>= (((long)var_pmoduledeclnode2
&3)?type_info
[((long)var_pmoduledeclnode2
&3)]:var_pmoduledeclnode2
->type
)->table_size
) {
2125 var7
= (((long)var_pmoduledeclnode2
&3)?type_info
[((long)var_pmoduledeclnode2
&3)]:var_pmoduledeclnode2
->type
)->type_table
[cltype
] == idtype
;
2128 if (unlikely(!var7
)) {
2129 PRINT_ERROR("Runtime error: %s", "Assert failed");
2130 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1540);
2133 var_listnode4
= var_nodearraylist2
;
2134 /* <var_listnode4:nullable Object> isa Array[Object] */
2135 cltype9
= type_standard__Array__standard__Object
.color
;
2136 idtype10
= type_standard__Array__standard__Object
.id
;
2137 if(var_listnode4
== NULL
) {
2140 if(cltype9
>= (((long)var_listnode4
&3)?type_info
[((long)var_listnode4
&3)]:var_listnode4
->type
)->table_size
) {
2143 var8
= (((long)var_listnode4
&3)?type_info
[((long)var_listnode4
&3)]:var_listnode4
->type
)->type_table
[cltype9
] == idtype10
;
2146 if (unlikely(!var8
)) {
2147 PRINT_ERROR("Runtime error: %s", "Assert failed");
2148 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1542);
2152 var11
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode5
, var_listnode4
);
2154 var_listnode5
= var11
;
2155 var_listnode6
= var_nodearraylist3
;
2156 /* <var_listnode6:nullable Object> isa Array[Object] */
2157 cltype13
= type_standard__Array__standard__Object
.color
;
2158 idtype14
= type_standard__Array__standard__Object
.id
;
2159 if(var_listnode6
== NULL
) {
2162 if(cltype13
>= (((long)var_listnode6
&3)?type_info
[((long)var_listnode6
&3)]:var_listnode6
->type
)->table_size
) {
2165 var12
= (((long)var_listnode6
&3)?type_info
[((long)var_listnode6
&3)]:var_listnode6
->type
)->type_table
[cltype13
] == idtype14
;
2168 if (unlikely(!var12
)) {
2169 PRINT_ERROR("Runtime error: %s", "Assert failed");
2170 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1545);
2173 var_pclassdefnode7
= var_nodearraylist4
;
2174 /* <var_pclassdefnode7:nullable Object> isa nullable AClassdef */
2175 cltype16
= type_nullable__nit__AClassdef
.color
;
2176 idtype17
= type_nullable__nit__AClassdef
.id
;
2177 if(var_pclassdefnode7
== NULL
) {
2180 if(cltype16
>= (((long)var_pclassdefnode7
&3)?type_info
[((long)var_pclassdefnode7
&3)]:var_pclassdefnode7
->type
)->table_size
) {
2183 var15
= (((long)var_pclassdefnode7
&3)?type_info
[((long)var_pclassdefnode7
&3)]:var_pclassdefnode7
->type
)->type_table
[cltype16
] == idtype17
;
2186 if (unlikely(!var15
)) {
2187 PRINT_ERROR("Runtime error: %s", "Assert failed");
2188 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1547);
2192 var18
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode8
, var_listnode6
);
2194 var_listnode8
= var18
;
2195 if (var_pclassdefnode7
== NULL
) {
2196 var19
= 0; /* is null */
2198 var19
= 1; /* arg is null and recv is not */
2201 { /* Inline kernel#Object#!= (var_pclassdefnode7,((val*)NULL)) on <var_pclassdefnode7:nullable Object(nullable AClassdef)> */
2202 var_other
= ((val
*)NULL
);
2204 var22
= ((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)>*/
2209 RET_LABEL21
:(void)0;
2215 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_listnode8
, var_pclassdefnode7
); /* Direct call array#Array#add on <var_listnode8:Array[Object]>*/
2219 var24
= NEW_nit__AModule(&type_nit__AModule
);
2221 nit__parser_prod___AModule___init_amodule(var24
, var_pmoduledeclnode2
, var_listnode3
, var_listnode5
, var_listnode8
); /* Direct call parser_prod#AModule#init_amodule on <var24:AModule>*/
2223 var_pmodulenode1
= var24
;
2224 var_node_list
= var_pmodulenode1
;
2225 var25
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction13> */
2227 var26
= nit___nit__Parser___go_to(var_p
, var25
);
2230 nit___nit__Parser___push(var_p
, var26
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
2234 /* method parser#ReduceAction14#action for (self: ReduceAction14, Parser) */
2235 void nit__parser___nit__parser__ReduceAction14___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
2236 val
* var_p
/* var p: Parser */;
2237 val
* var_node_list
/* var node_list: nullable Object */;
2238 val
* var
/* : nullable Object */;
2239 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
2240 val
* var1
/* : nullable Object */;
2241 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
2242 val
* var2
/* : nullable Object */;
2243 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2244 val
* var3
/* : nullable Object */;
2245 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2246 val
* var4
/* : Array[Object] */;
2247 val
* var_listnode4
/* var listnode4: Array[Object] */;
2248 val
* var5
/* : Array[Object] */;
2249 val
* var_listnode6
/* var listnode6: Array[Object] */;
2250 val
* var6
/* : Array[Object] */;
2251 val
* var_listnode9
/* var listnode9: Array[Object] */;
2252 val
* var_listnode3
/* var listnode3: nullable Object */;
2253 short int var7
/* : Bool */;
2256 val
* var8
/* : Array[Object] */;
2257 val
* var_listnode5
/* var listnode5: nullable Object */;
2258 short int var9
/* : Bool */;
2261 val
* var12
/* : Array[Object] */;
2262 val
* var_listnode7
/* var listnode7: nullable Object */;
2263 short int var13
/* : Bool */;
2266 val
* var_pclassdefnode8
/* var pclassdefnode8: nullable Object */;
2267 short int var16
/* : Bool */;
2270 val
* var19
/* : Array[Object] */;
2271 short int var20
/* : Bool */;
2272 short int var21
/* : Bool */;
2273 val
* var_other
/* var other: nullable Object */;
2274 short int var23
/* : Bool */;
2275 short int var24
/* : Bool */;
2276 val
* var25
/* : AModule */;
2277 val
* var_pmodulenode1
/* var pmodulenode1: nullable AModule */;
2278 long var26
/* : Int */;
2279 long var27
/* : Int */;
2281 var_node_list
= ((val
*)NULL
);
2283 var
= nit___nit__Parser___pop(var_p
);
2285 var_nodearraylist4
= var
;
2287 var1
= nit___nit__Parser___pop(var_p
);
2289 var_nodearraylist3
= var1
;
2291 var2
= nit___nit__Parser___pop(var_p
);
2293 var_nodearraylist2
= var2
;
2295 var3
= nit___nit__Parser___pop(var_p
);
2297 var_nodearraylist1
= var3
;
2298 var4
= NEW_standard__Array(&type_standard__Array__standard__Object
);
2300 standard___standard__Array___standard__kernel__Object__init(var4
); /* Direct call array#Array#init on <var4:Array[Object]>*/
2302 var_listnode4
= var4
;
2303 var5
= NEW_standard__Array(&type_standard__Array__standard__Object
);
2305 standard___standard__Array___standard__kernel__Object__init(var5
); /* Direct call array#Array#init on <var5:Array[Object]>*/
2307 var_listnode6
= var5
;
2308 var6
= NEW_standard__Array(&type_standard__Array__standard__Object
);
2310 standard___standard__Array___standard__kernel__Object__init(var6
); /* Direct call array#Array#init on <var6:Array[Object]>*/
2312 var_listnode9
= var6
;
2313 var_listnode3
= var_nodearraylist1
;
2314 /* <var_listnode3:nullable Object> isa Array[Object] */
2315 cltype
= type_standard__Array__standard__Object
.color
;
2316 idtype
= type_standard__Array__standard__Object
.id
;
2317 if(var_listnode3
== NULL
) {
2320 if(cltype
>= (((long)var_listnode3
&3)?type_info
[((long)var_listnode3
&3)]:var_listnode3
->type
)->table_size
) {
2323 var7
= (((long)var_listnode3
&3)?type_info
[((long)var_listnode3
&3)]:var_listnode3
->type
)->type_table
[cltype
] == idtype
;
2326 if (unlikely(!var7
)) {
2327 PRINT_ERROR("Runtime error: %s", "Assert failed");
2328 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1575);
2332 var8
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode4
, var_listnode3
);
2334 var_listnode4
= var8
;
2335 var_listnode5
= var_nodearraylist2
;
2336 /* <var_listnode5:nullable Object> isa Array[Object] */
2337 cltype10
= type_standard__Array__standard__Object
.color
;
2338 idtype11
= type_standard__Array__standard__Object
.id
;
2339 if(var_listnode5
== NULL
) {
2342 if(cltype10
>= (((long)var_listnode5
&3)?type_info
[((long)var_listnode5
&3)]:var_listnode5
->type
)->table_size
) {
2345 var9
= (((long)var_listnode5
&3)?type_info
[((long)var_listnode5
&3)]:var_listnode5
->type
)->type_table
[cltype10
] == idtype11
;
2348 if (unlikely(!var9
)) {
2349 PRINT_ERROR("Runtime error: %s", "Assert failed");
2350 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1578);
2354 var12
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode6
, var_listnode5
);
2356 var_listnode6
= var12
;
2357 var_listnode7
= var_nodearraylist3
;
2358 /* <var_listnode7:nullable Object> isa Array[Object] */
2359 cltype14
= type_standard__Array__standard__Object
.color
;
2360 idtype15
= type_standard__Array__standard__Object
.id
;
2361 if(var_listnode7
== NULL
) {
2364 if(cltype14
>= (((long)var_listnode7
&3)?type_info
[((long)var_listnode7
&3)]:var_listnode7
->type
)->table_size
) {
2367 var13
= (((long)var_listnode7
&3)?type_info
[((long)var_listnode7
&3)]:var_listnode7
->type
)->type_table
[cltype14
] == idtype15
;
2370 if (unlikely(!var13
)) {
2371 PRINT_ERROR("Runtime error: %s", "Assert failed");
2372 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1581);
2375 var_pclassdefnode8
= var_nodearraylist4
;
2376 /* <var_pclassdefnode8:nullable Object> isa nullable AClassdef */
2377 cltype17
= type_nullable__nit__AClassdef
.color
;
2378 idtype18
= type_nullable__nit__AClassdef
.id
;
2379 if(var_pclassdefnode8
== NULL
) {
2382 if(cltype17
>= (((long)var_pclassdefnode8
&3)?type_info
[((long)var_pclassdefnode8
&3)]:var_pclassdefnode8
->type
)->table_size
) {
2385 var16
= (((long)var_pclassdefnode8
&3)?type_info
[((long)var_pclassdefnode8
&3)]:var_pclassdefnode8
->type
)->type_table
[cltype17
] == idtype18
;
2388 if (unlikely(!var16
)) {
2389 PRINT_ERROR("Runtime error: %s", "Assert failed");
2390 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1583);
2394 var19
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode9
, var_listnode7
);
2396 var_listnode9
= var19
;
2397 if (var_pclassdefnode8
== NULL
) {
2398 var20
= 0; /* is null */
2400 var20
= 1; /* arg is null and recv is not */
2403 { /* Inline kernel#Object#!= (var_pclassdefnode8,((val*)NULL)) on <var_pclassdefnode8:nullable Object(nullable AClassdef)> */
2404 var_other
= ((val
*)NULL
);
2406 var23
= ((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)>*/
2411 RET_LABEL22
:(void)0;
2417 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_listnode9
, var_pclassdefnode8
); /* Direct call array#Array#add on <var_listnode9:Array[Object]>*/
2421 var25
= NEW_nit__AModule(&type_nit__AModule
);
2423 nit__parser_prod___AModule___init_amodule(var25
, ((val
*)NULL
), var_listnode4
, var_listnode6
, var_listnode9
); /* Direct call parser_prod#AModule#init_amodule on <var25:AModule>*/
2425 var_pmodulenode1
= var25
;
2426 var_node_list
= var_pmodulenode1
;
2427 var26
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction14> */
2429 var27
= nit___nit__Parser___go_to(var_p
, var26
);
2432 nit___nit__Parser___push(var_p
, var27
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
2436 /* method parser#ReduceAction15#action for (self: ReduceAction15, Parser) */
2437 void nit__parser___nit__parser__ReduceAction15___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
2438 val
* var_p
/* var p: Parser */;
2439 val
* var_node_list
/* var node_list: nullable Object */;
2440 val
* var
/* : nullable Object */;
2441 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
2442 val
* var1
/* : nullable Object */;
2443 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
2444 val
* var2
/* : nullable Object */;
2445 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
2446 val
* var3
/* : nullable Object */;
2447 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2448 val
* var4
/* : nullable Object */;
2449 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2450 val
* var5
/* : Array[Object] */;
2451 val
* var_listnode4
/* var listnode4: Array[Object] */;
2452 val
* var6
/* : Array[Object] */;
2453 val
* var_listnode6
/* var listnode6: Array[Object] */;
2454 val
* var7
/* : Array[Object] */;
2455 val
* var_listnode9
/* var listnode9: Array[Object] */;
2456 val
* var_pmoduledeclnode2
/* var pmoduledeclnode2: nullable Object */;
2457 short int var8
/* : Bool */;
2460 val
* var_listnode3
/* var listnode3: nullable Object */;
2461 short int var9
/* : Bool */;
2464 val
* var12
/* : Array[Object] */;
2465 val
* var_listnode5
/* var listnode5: nullable Object */;
2466 short int var13
/* : Bool */;
2469 val
* var16
/* : Array[Object] */;
2470 val
* var_listnode7
/* var listnode7: nullable Object */;
2471 short int var17
/* : Bool */;
2474 val
* var_pclassdefnode8
/* var pclassdefnode8: nullable Object */;
2475 short int var20
/* : Bool */;
2478 val
* var23
/* : Array[Object] */;
2479 short int var24
/* : Bool */;
2480 short int var25
/* : Bool */;
2481 val
* var_other
/* var other: nullable Object */;
2482 short int var27
/* : Bool */;
2483 short int var28
/* : Bool */;
2484 val
* var29
/* : AModule */;
2485 val
* var_pmodulenode1
/* var pmodulenode1: nullable AModule */;
2486 long var30
/* : Int */;
2487 long var31
/* : Int */;
2489 var_node_list
= ((val
*)NULL
);
2491 var
= nit___nit__Parser___pop(var_p
);
2493 var_nodearraylist5
= var
;
2495 var1
= nit___nit__Parser___pop(var_p
);
2497 var_nodearraylist4
= var1
;
2499 var2
= nit___nit__Parser___pop(var_p
);
2501 var_nodearraylist3
= var2
;
2503 var3
= nit___nit__Parser___pop(var_p
);
2505 var_nodearraylist2
= var3
;
2507 var4
= nit___nit__Parser___pop(var_p
);
2509 var_nodearraylist1
= var4
;
2510 var5
= NEW_standard__Array(&type_standard__Array__standard__Object
);
2512 standard___standard__Array___standard__kernel__Object__init(var5
); /* Direct call array#Array#init on <var5:Array[Object]>*/
2514 var_listnode4
= var5
;
2515 var6
= NEW_standard__Array(&type_standard__Array__standard__Object
);
2517 standard___standard__Array___standard__kernel__Object__init(var6
); /* Direct call array#Array#init on <var6:Array[Object]>*/
2519 var_listnode6
= var6
;
2520 var7
= NEW_standard__Array(&type_standard__Array__standard__Object
);
2522 standard___standard__Array___standard__kernel__Object__init(var7
); /* Direct call array#Array#init on <var7:Array[Object]>*/
2524 var_listnode9
= var7
;
2525 var_pmoduledeclnode2
= var_nodearraylist1
;
2526 /* <var_pmoduledeclnode2:nullable Object> isa nullable AModuledecl */
2527 cltype
= type_nullable__nit__AModuledecl
.color
;
2528 idtype
= type_nullable__nit__AModuledecl
.id
;
2529 if(var_pmoduledeclnode2
== NULL
) {
2532 if(cltype
>= (((long)var_pmoduledeclnode2
&3)?type_info
[((long)var_pmoduledeclnode2
&3)]:var_pmoduledeclnode2
->type
)->table_size
) {
2535 var8
= (((long)var_pmoduledeclnode2
&3)?type_info
[((long)var_pmoduledeclnode2
&3)]:var_pmoduledeclnode2
->type
)->type_table
[cltype
] == idtype
;
2538 if (unlikely(!var8
)) {
2539 PRINT_ERROR("Runtime error: %s", "Assert failed");
2540 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1612);
2543 var_listnode3
= var_nodearraylist2
;
2544 /* <var_listnode3:nullable Object> isa Array[Object] */
2545 cltype10
= type_standard__Array__standard__Object
.color
;
2546 idtype11
= type_standard__Array__standard__Object
.id
;
2547 if(var_listnode3
== NULL
) {
2550 if(cltype10
>= (((long)var_listnode3
&3)?type_info
[((long)var_listnode3
&3)]:var_listnode3
->type
)->table_size
) {
2553 var9
= (((long)var_listnode3
&3)?type_info
[((long)var_listnode3
&3)]:var_listnode3
->type
)->type_table
[cltype10
] == idtype11
;
2556 if (unlikely(!var9
)) {
2557 PRINT_ERROR("Runtime error: %s", "Assert failed");
2558 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1614);
2562 var12
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode4
, var_listnode3
);
2564 var_listnode4
= var12
;
2565 var_listnode5
= var_nodearraylist3
;
2566 /* <var_listnode5:nullable Object> isa Array[Object] */
2567 cltype14
= type_standard__Array__standard__Object
.color
;
2568 idtype15
= type_standard__Array__standard__Object
.id
;
2569 if(var_listnode5
== NULL
) {
2572 if(cltype14
>= (((long)var_listnode5
&3)?type_info
[((long)var_listnode5
&3)]:var_listnode5
->type
)->table_size
) {
2575 var13
= (((long)var_listnode5
&3)?type_info
[((long)var_listnode5
&3)]:var_listnode5
->type
)->type_table
[cltype14
] == idtype15
;
2578 if (unlikely(!var13
)) {
2579 PRINT_ERROR("Runtime error: %s", "Assert failed");
2580 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1617);
2584 var16
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode6
, var_listnode5
);
2586 var_listnode6
= var16
;
2587 var_listnode7
= var_nodearraylist4
;
2588 /* <var_listnode7:nullable Object> isa Array[Object] */
2589 cltype18
= type_standard__Array__standard__Object
.color
;
2590 idtype19
= type_standard__Array__standard__Object
.id
;
2591 if(var_listnode7
== NULL
) {
2594 if(cltype18
>= (((long)var_listnode7
&3)?type_info
[((long)var_listnode7
&3)]:var_listnode7
->type
)->table_size
) {
2597 var17
= (((long)var_listnode7
&3)?type_info
[((long)var_listnode7
&3)]:var_listnode7
->type
)->type_table
[cltype18
] == idtype19
;
2600 if (unlikely(!var17
)) {
2601 PRINT_ERROR("Runtime error: %s", "Assert failed");
2602 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1620);
2605 var_pclassdefnode8
= var_nodearraylist5
;
2606 /* <var_pclassdefnode8:nullable Object> isa nullable AClassdef */
2607 cltype21
= type_nullable__nit__AClassdef
.color
;
2608 idtype22
= type_nullable__nit__AClassdef
.id
;
2609 if(var_pclassdefnode8
== NULL
) {
2612 if(cltype21
>= (((long)var_pclassdefnode8
&3)?type_info
[((long)var_pclassdefnode8
&3)]:var_pclassdefnode8
->type
)->table_size
) {
2615 var20
= (((long)var_pclassdefnode8
&3)?type_info
[((long)var_pclassdefnode8
&3)]:var_pclassdefnode8
->type
)->type_table
[cltype21
] == idtype22
;
2618 if (unlikely(!var20
)) {
2619 PRINT_ERROR("Runtime error: %s", "Assert failed");
2620 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1622);
2624 var23
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode9
, var_listnode7
);
2626 var_listnode9
= var23
;
2627 if (var_pclassdefnode8
== NULL
) {
2628 var24
= 0; /* is null */
2630 var24
= 1; /* arg is null and recv is not */
2633 { /* Inline kernel#Object#!= (var_pclassdefnode8,((val*)NULL)) on <var_pclassdefnode8:nullable Object(nullable AClassdef)> */
2634 var_other
= ((val
*)NULL
);
2636 var27
= ((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)>*/
2641 RET_LABEL26
:(void)0;
2647 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_listnode9
, var_pclassdefnode8
); /* Direct call array#Array#add on <var_listnode9:Array[Object]>*/
2651 var29
= NEW_nit__AModule(&type_nit__AModule
);
2653 nit__parser_prod___AModule___init_amodule(var29
, var_pmoduledeclnode2
, var_listnode4
, var_listnode6
, var_listnode9
); /* Direct call parser_prod#AModule#init_amodule on <var29:AModule>*/
2655 var_pmodulenode1
= var29
;
2656 var_node_list
= var_pmodulenode1
;
2657 var30
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction15> */
2659 var31
= nit___nit__Parser___go_to(var_p
, var30
);
2662 nit___nit__Parser___push(var_p
, var31
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
2666 /* method parser#ReduceAction16#action for (self: ReduceAction16, Parser) */
2667 void nit__parser___nit__parser__ReduceAction16___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
2668 val
* var_p
/* var p: Parser */;
2669 val
* var_node_list
/* var node_list: nullable Object */;
2670 val
* var
/* : nullable Object */;
2671 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
2672 val
* var1
/* : nullable Object */;
2673 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
2674 val
* var2
/* : nullable Object */;
2675 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
2676 val
* var3
/* : nullable Object */;
2677 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
2678 val
* var4
/* : nullable Object */;
2679 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
2680 val
* var5
/* : nullable Object */;
2681 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
2682 val
* var6
/* : nullable Object */;
2683 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2684 val
* var7
/* : nullable Object */;
2685 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2686 val
* var_pdocnode2
/* var pdocnode2: nullable Object */;
2687 short int var8
/* : Bool */;
2690 val
* var_tkwredefnode3
/* var tkwredefnode3: nullable Object */;
2691 short int var9
/* : Bool */;
2694 val
* var_pvisibilitynode4
/* var pvisibilitynode4: nullable Object */;
2695 short int var12
/* : Bool */;
2698 val
* var_tkwmodulenode5
/* var tkwmodulenode5: nullable Object */;
2699 short int var15
/* : Bool */;
2702 val
* var_pmodulenamenode6
/* var pmodulenamenode6: nullable Object */;
2703 short int var18
/* : Bool */;
2706 val
* var_pannotationsnode7
/* var pannotationsnode7: nullable Object */;
2707 short int var21
/* : Bool */;
2710 val
* var24
/* : AModuledecl */;
2711 val
* var_pmoduledeclnode1
/* var pmoduledeclnode1: nullable AModuledecl */;
2712 long var25
/* : Int */;
2713 long var26
/* : Int */;
2715 var_node_list
= ((val
*)NULL
);
2717 var
= nit___nit__Parser___pop(var_p
);
2719 var_nodearraylist8
= var
;
2721 var1
= nit___nit__Parser___pop(var_p
);
2723 var_nodearraylist7
= var1
;
2725 var2
= nit___nit__Parser___pop(var_p
);
2727 var_nodearraylist6
= var2
;
2729 var3
= nit___nit__Parser___pop(var_p
);
2731 var_nodearraylist5
= var3
;
2733 var4
= nit___nit__Parser___pop(var_p
);
2735 var_nodearraylist4
= var4
;
2737 var5
= nit___nit__Parser___pop(var_p
);
2739 var_nodearraylist3
= var5
;
2741 var6
= nit___nit__Parser___pop(var_p
);
2743 var_nodearraylist2
= var6
;
2745 var7
= nit___nit__Parser___pop(var_p
);
2747 var_nodearraylist1
= var7
;
2748 var_pdocnode2
= var_nodearraylist1
;
2749 /* <var_pdocnode2:nullable Object> isa nullable ADoc */
2750 cltype
= type_nullable__nit__ADoc
.color
;
2751 idtype
= type_nullable__nit__ADoc
.id
;
2752 if(var_pdocnode2
== NULL
) {
2755 if(cltype
>= (((long)var_pdocnode2
&3)?type_info
[((long)var_pdocnode2
&3)]:var_pdocnode2
->type
)->table_size
) {
2758 var8
= (((long)var_pdocnode2
&3)?type_info
[((long)var_pdocnode2
&3)]:var_pdocnode2
->type
)->type_table
[cltype
] == idtype
;
2761 if (unlikely(!var8
)) {
2762 PRINT_ERROR("Runtime error: %s", "Assert failed");
2763 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1651);
2766 var_tkwredefnode3
= var_nodearraylist2
;
2767 /* <var_tkwredefnode3:nullable Object> isa nullable TKwredef */
2768 cltype10
= type_nullable__nit__TKwredef
.color
;
2769 idtype11
= type_nullable__nit__TKwredef
.id
;
2770 if(var_tkwredefnode3
== NULL
) {
2773 if(cltype10
>= (((long)var_tkwredefnode3
&3)?type_info
[((long)var_tkwredefnode3
&3)]:var_tkwredefnode3
->type
)->table_size
) {
2776 var9
= (((long)var_tkwredefnode3
&3)?type_info
[((long)var_tkwredefnode3
&3)]:var_tkwredefnode3
->type
)->type_table
[cltype10
] == idtype11
;
2779 if (unlikely(!var9
)) {
2780 PRINT_ERROR("Runtime error: %s", "Assert failed");
2781 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1653);
2784 var_pvisibilitynode4
= var_nodearraylist3
;
2785 /* <var_pvisibilitynode4:nullable Object> isa nullable AVisibility */
2786 cltype13
= type_nullable__nit__AVisibility
.color
;
2787 idtype14
= type_nullable__nit__AVisibility
.id
;
2788 if(var_pvisibilitynode4
== NULL
) {
2791 if(cltype13
>= (((long)var_pvisibilitynode4
&3)?type_info
[((long)var_pvisibilitynode4
&3)]:var_pvisibilitynode4
->type
)->table_size
) {
2794 var12
= (((long)var_pvisibilitynode4
&3)?type_info
[((long)var_pvisibilitynode4
&3)]:var_pvisibilitynode4
->type
)->type_table
[cltype13
] == idtype14
;
2797 if (unlikely(!var12
)) {
2798 PRINT_ERROR("Runtime error: %s", "Assert failed");
2799 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1655);
2802 var_tkwmodulenode5
= var_nodearraylist4
;
2803 /* <var_tkwmodulenode5:nullable Object> isa nullable TKwmodule */
2804 cltype16
= type_nullable__nit__TKwmodule
.color
;
2805 idtype17
= type_nullable__nit__TKwmodule
.id
;
2806 if(var_tkwmodulenode5
== NULL
) {
2809 if(cltype16
>= (((long)var_tkwmodulenode5
&3)?type_info
[((long)var_tkwmodulenode5
&3)]:var_tkwmodulenode5
->type
)->table_size
) {
2812 var15
= (((long)var_tkwmodulenode5
&3)?type_info
[((long)var_tkwmodulenode5
&3)]:var_tkwmodulenode5
->type
)->type_table
[cltype16
] == idtype17
;
2815 if (unlikely(!var15
)) {
2816 PRINT_ERROR("Runtime error: %s", "Assert failed");
2817 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1657);
2820 var_pmodulenamenode6
= var_nodearraylist6
;
2821 /* <var_pmodulenamenode6:nullable Object> isa nullable AModuleName */
2822 cltype19
= type_nullable__nit__AModuleName
.color
;
2823 idtype20
= type_nullable__nit__AModuleName
.id
;
2824 if(var_pmodulenamenode6
== NULL
) {
2827 if(cltype19
>= (((long)var_pmodulenamenode6
&3)?type_info
[((long)var_pmodulenamenode6
&3)]:var_pmodulenamenode6
->type
)->table_size
) {
2830 var18
= (((long)var_pmodulenamenode6
&3)?type_info
[((long)var_pmodulenamenode6
&3)]:var_pmodulenamenode6
->type
)->type_table
[cltype19
] == idtype20
;
2833 if (unlikely(!var18
)) {
2834 PRINT_ERROR("Runtime error: %s", "Assert failed");
2835 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1659);
2838 var_pannotationsnode7
= var_nodearraylist7
;
2839 /* <var_pannotationsnode7:nullable Object> isa nullable AAnnotations */
2840 cltype22
= type_nullable__nit__AAnnotations
.color
;
2841 idtype23
= type_nullable__nit__AAnnotations
.id
;
2842 if(var_pannotationsnode7
== NULL
) {
2845 if(cltype22
>= (((long)var_pannotationsnode7
&3)?type_info
[((long)var_pannotationsnode7
&3)]:var_pannotationsnode7
->type
)->table_size
) {
2848 var21
= (((long)var_pannotationsnode7
&3)?type_info
[((long)var_pannotationsnode7
&3)]:var_pannotationsnode7
->type
)->type_table
[cltype22
] == idtype23
;
2851 if (unlikely(!var21
)) {
2852 PRINT_ERROR("Runtime error: %s", "Assert failed");
2853 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1661);
2856 var24
= NEW_nit__AModuledecl(&type_nit__AModuledecl
);
2858 nit__parser_prod___AModuledecl___init_amoduledecl(var24
, var_pdocnode2
, var_tkwredefnode3
, var_pvisibilitynode4
, var_tkwmodulenode5
, var_pmodulenamenode6
, var_pannotationsnode7
); /* Direct call parser_prod#AModuledecl#init_amoduledecl on <var24:AModuledecl>*/
2860 var_pmoduledeclnode1
= var24
;
2861 var_node_list
= var_pmoduledeclnode1
;
2862 var25
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction16> */
2864 var26
= nit___nit__Parser___go_to(var_p
, var25
);
2867 nit___nit__Parser___push(var_p
, var26
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
2871 /* method parser#ReduceAction17#action for (self: ReduceAction17, Parser) */
2872 void nit__parser___nit__parser__ReduceAction17___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
2873 val
* var_p
/* var p: Parser */;
2874 val
* var_node_list
/* var node_list: nullable Object */;
2875 val
* var
/* : nullable Object */;
2876 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
2877 val
* var1
/* : nullable Object */;
2878 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
2879 val
* var2
/* : nullable Object */;
2880 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
2881 val
* var3
/* : nullable Object */;
2882 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
2883 val
* var4
/* : nullable Object */;
2884 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
2885 val
* var5
/* : nullable Object */;
2886 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
2887 val
* var6
/* : nullable Object */;
2888 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2889 val
* var7
/* : nullable Object */;
2890 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2891 val
* var_pvisibilitynode2
/* var pvisibilitynode2: nullable Object */;
2892 short int var8
/* : Bool */;
2895 val
* var_tkwimportnode3
/* var tkwimportnode3: nullable Object */;
2896 short int var9
/* : Bool */;
2899 val
* var_pmodulenamenode4
/* var pmodulenamenode4: nullable Object */;
2900 short int var12
/* : Bool */;
2903 val
* var_pannotationsnode5
/* var pannotationsnode5: nullable Object */;
2904 short int var15
/* : Bool */;
2907 val
* var18
/* : AStdImport */;
2908 val
* var_pimportnode1
/* var pimportnode1: nullable AStdImport */;
2909 long var19
/* : Int */;
2910 long var20
/* : Int */;
2912 var_node_list
= ((val
*)NULL
);
2914 var
= nit___nit__Parser___pop(var_p
);
2916 var_nodearraylist8
= var
;
2918 var1
= nit___nit__Parser___pop(var_p
);
2920 var_nodearraylist7
= var1
;
2922 var2
= nit___nit__Parser___pop(var_p
);
2924 var_nodearraylist6
= var2
;
2926 var3
= nit___nit__Parser___pop(var_p
);
2928 var_nodearraylist5
= var3
;
2930 var4
= nit___nit__Parser___pop(var_p
);
2932 var_nodearraylist4
= var4
;
2934 var5
= nit___nit__Parser___pop(var_p
);
2936 var_nodearraylist3
= var5
;
2938 var6
= nit___nit__Parser___pop(var_p
);
2940 var_nodearraylist2
= var6
;
2942 var7
= nit___nit__Parser___pop(var_p
);
2944 var_nodearraylist1
= var7
;
2945 var_pvisibilitynode2
= var_nodearraylist3
;
2946 /* <var_pvisibilitynode2:nullable Object> isa nullable AVisibility */
2947 cltype
= type_nullable__nit__AVisibility
.color
;
2948 idtype
= type_nullable__nit__AVisibility
.id
;
2949 if(var_pvisibilitynode2
== NULL
) {
2952 if(cltype
>= (((long)var_pvisibilitynode2
&3)?type_info
[((long)var_pvisibilitynode2
&3)]:var_pvisibilitynode2
->type
)->table_size
) {
2955 var8
= (((long)var_pvisibilitynode2
&3)?type_info
[((long)var_pvisibilitynode2
&3)]:var_pvisibilitynode2
->type
)->type_table
[cltype
] == idtype
;
2958 if (unlikely(!var8
)) {
2959 PRINT_ERROR("Runtime error: %s", "Assert failed");
2960 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1688);
2963 var_tkwimportnode3
= var_nodearraylist4
;
2964 /* <var_tkwimportnode3:nullable Object> isa nullable TKwimport */
2965 cltype10
= type_nullable__nit__TKwimport
.color
;
2966 idtype11
= type_nullable__nit__TKwimport
.id
;
2967 if(var_tkwimportnode3
== NULL
) {
2970 if(cltype10
>= (((long)var_tkwimportnode3
&3)?type_info
[((long)var_tkwimportnode3
&3)]:var_tkwimportnode3
->type
)->table_size
) {
2973 var9
= (((long)var_tkwimportnode3
&3)?type_info
[((long)var_tkwimportnode3
&3)]:var_tkwimportnode3
->type
)->type_table
[cltype10
] == idtype11
;
2976 if (unlikely(!var9
)) {
2977 PRINT_ERROR("Runtime error: %s", "Assert failed");
2978 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1690);
2981 var_pmodulenamenode4
= var_nodearraylist6
;
2982 /* <var_pmodulenamenode4:nullable Object> isa nullable AModuleName */
2983 cltype13
= type_nullable__nit__AModuleName
.color
;
2984 idtype14
= type_nullable__nit__AModuleName
.id
;
2985 if(var_pmodulenamenode4
== NULL
) {
2988 if(cltype13
>= (((long)var_pmodulenamenode4
&3)?type_info
[((long)var_pmodulenamenode4
&3)]:var_pmodulenamenode4
->type
)->table_size
) {
2991 var12
= (((long)var_pmodulenamenode4
&3)?type_info
[((long)var_pmodulenamenode4
&3)]:var_pmodulenamenode4
->type
)->type_table
[cltype13
] == idtype14
;
2994 if (unlikely(!var12
)) {
2995 PRINT_ERROR("Runtime error: %s", "Assert failed");
2996 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1692);
2999 var_pannotationsnode5
= var_nodearraylist7
;
3000 /* <var_pannotationsnode5:nullable Object> isa nullable AAnnotations */
3001 cltype16
= type_nullable__nit__AAnnotations
.color
;
3002 idtype17
= type_nullable__nit__AAnnotations
.id
;
3003 if(var_pannotationsnode5
== NULL
) {
3006 if(cltype16
>= (((long)var_pannotationsnode5
&3)?type_info
[((long)var_pannotationsnode5
&3)]:var_pannotationsnode5
->type
)->table_size
) {
3009 var15
= (((long)var_pannotationsnode5
&3)?type_info
[((long)var_pannotationsnode5
&3)]:var_pannotationsnode5
->type
)->type_table
[cltype16
] == idtype17
;
3012 if (unlikely(!var15
)) {
3013 PRINT_ERROR("Runtime error: %s", "Assert failed");
3014 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1694);
3017 var18
= NEW_nit__AStdImport(&type_nit__AStdImport
);
3019 nit__parser_prod___AStdImport___init_astdimport(var18
, var_pvisibilitynode2
, var_tkwimportnode3
, var_pmodulenamenode4
, var_pannotationsnode5
); /* Direct call parser_prod#AStdImport#init_astdimport on <var18:AStdImport>*/
3021 var_pimportnode1
= var18
;
3022 var_node_list
= var_pimportnode1
;
3023 var19
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction17> */
3025 var20
= nit___nit__Parser___go_to(var_p
, var19
);
3028 nit___nit__Parser___push(var_p
, var20
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
3032 /* method parser#ReduceAction18#action for (self: ReduceAction18, Parser) */
3033 void nit__parser___nit__parser__ReduceAction18___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
3034 val
* var_p
/* var p: Parser */;
3035 val
* var_node_list
/* var node_list: nullable Object */;
3036 val
* var
/* : nullable Object */;
3037 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
3038 val
* var1
/* : nullable Object */;
3039 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
3040 val
* var2
/* : nullable Object */;
3041 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
3042 val
* var3
/* : nullable Object */;
3043 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
3044 val
* var4
/* : nullable Object */;
3045 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
3046 val
* var5
/* : nullable Object */;
3047 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3048 val
* var6
/* : nullable Object */;
3049 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3050 val
* var_pvisibilitynode2
/* var pvisibilitynode2: nullable Object */;
3051 short int var7
/* : Bool */;
3054 val
* var_tkwimportnode3
/* var tkwimportnode3: nullable Object */;
3055 short int var8
/* : Bool */;
3058 val
* var_tkwendnode4
/* var tkwendnode4: nullable Object */;
3059 short int var11
/* : Bool */;
3062 val
* var14
/* : ANoImport */;
3063 val
* var_pimportnode1
/* var pimportnode1: nullable ANoImport */;
3064 long var15
/* : Int */;
3065 long var16
/* : Int */;
3067 var_node_list
= ((val
*)NULL
);
3069 var
= nit___nit__Parser___pop(var_p
);
3071 var_nodearraylist7
= var
;
3073 var1
= nit___nit__Parser___pop(var_p
);
3075 var_nodearraylist6
= var1
;
3077 var2
= nit___nit__Parser___pop(var_p
);
3079 var_nodearraylist5
= var2
;
3081 var3
= nit___nit__Parser___pop(var_p
);
3083 var_nodearraylist4
= var3
;
3085 var4
= nit___nit__Parser___pop(var_p
);
3087 var_nodearraylist3
= var4
;
3089 var5
= nit___nit__Parser___pop(var_p
);
3091 var_nodearraylist2
= var5
;
3093 var6
= nit___nit__Parser___pop(var_p
);
3095 var_nodearraylist1
= var6
;
3096 var_pvisibilitynode2
= var_nodearraylist3
;
3097 /* <var_pvisibilitynode2:nullable Object> isa nullable AVisibility */
3098 cltype
= type_nullable__nit__AVisibility
.color
;
3099 idtype
= type_nullable__nit__AVisibility
.id
;
3100 if(var_pvisibilitynode2
== NULL
) {
3103 if(cltype
>= (((long)var_pvisibilitynode2
&3)?type_info
[((long)var_pvisibilitynode2
&3)]:var_pvisibilitynode2
->type
)->table_size
) {
3106 var7
= (((long)var_pvisibilitynode2
&3)?type_info
[((long)var_pvisibilitynode2
&3)]:var_pvisibilitynode2
->type
)->type_table
[cltype
] == idtype
;
3109 if (unlikely(!var7
)) {
3110 PRINT_ERROR("Runtime error: %s", "Assert failed");
3111 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1718);
3114 var_tkwimportnode3
= var_nodearraylist4
;
3115 /* <var_tkwimportnode3:nullable Object> isa nullable TKwimport */
3116 cltype9
= type_nullable__nit__TKwimport
.color
;
3117 idtype10
= type_nullable__nit__TKwimport
.id
;
3118 if(var_tkwimportnode3
== NULL
) {
3121 if(cltype9
>= (((long)var_tkwimportnode3
&3)?type_info
[((long)var_tkwimportnode3
&3)]:var_tkwimportnode3
->type
)->table_size
) {
3124 var8
= (((long)var_tkwimportnode3
&3)?type_info
[((long)var_tkwimportnode3
&3)]:var_tkwimportnode3
->type
)->type_table
[cltype9
] == idtype10
;
3127 if (unlikely(!var8
)) {
3128 PRINT_ERROR("Runtime error: %s", "Assert failed");
3129 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1720);
3132 var_tkwendnode4
= var_nodearraylist6
;
3133 /* <var_tkwendnode4:nullable Object> isa nullable TKwend */
3134 cltype12
= type_nullable__nit__TKwend
.color
;
3135 idtype13
= type_nullable__nit__TKwend
.id
;
3136 if(var_tkwendnode4
== NULL
) {
3139 if(cltype12
>= (((long)var_tkwendnode4
&3)?type_info
[((long)var_tkwendnode4
&3)]:var_tkwendnode4
->type
)->table_size
) {
3142 var11
= (((long)var_tkwendnode4
&3)?type_info
[((long)var_tkwendnode4
&3)]:var_tkwendnode4
->type
)->type_table
[cltype12
] == idtype13
;
3145 if (unlikely(!var11
)) {
3146 PRINT_ERROR("Runtime error: %s", "Assert failed");
3147 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1722);
3150 var14
= NEW_nit__ANoImport(&type_nit__ANoImport
);
3152 nit__parser_prod___ANoImport___init_anoimport(var14
, var_pvisibilitynode2
, var_tkwimportnode3
, var_tkwendnode4
); /* Direct call parser_prod#ANoImport#init_anoimport on <var14:ANoImport>*/
3154 var_pimportnode1
= var14
;
3155 var_node_list
= var_pimportnode1
;
3156 var15
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction18> */
3158 var16
= nit___nit__Parser___go_to(var_p
, var15
);
3161 nit___nit__Parser___push(var_p
, var16
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
3165 /* method parser#ReduceAction19#action for (self: ReduceAction19, Parser) */
3166 void nit__parser___nit__parser__ReduceAction19___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
3167 val
* var_p
/* var p: Parser */;
3168 val
* var_node_list
/* var node_list: nullable Object */;
3169 val
* var
/* : nullable Object */;
3170 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3171 val
* var_pclassdefnode1
/* var pclassdefnode1: nullable Object */;
3172 long var1
/* : Int */;
3173 long var2
/* : Int */;
3175 var_node_list
= ((val
*)NULL
);
3177 var
= nit___nit__Parser___pop(var_p
);
3179 var_nodearraylist1
= var
;
3180 var_pclassdefnode1
= var_nodearraylist1
;
3181 var_node_list
= var_pclassdefnode1
;
3182 var1
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction19> */
3184 var2
= nit___nit__Parser___go_to(var_p
, var1
);
3187 nit___nit__Parser___push(var_p
, var2
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
3191 /* method parser#ReduceAction20#action for (self: ReduceAction20, Parser) */
3192 void nit__parser___nit__parser__ReduceAction20___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
3193 val
* var_p
/* var p: Parser */;
3194 val
* var_node_list
/* var node_list: nullable Object */;
3195 val
* var
/* : nullable Object */;
3196 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3197 val
* var1
/* : nullable Object */;
3198 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3199 val
* var2
/* : Array[Object] */;
3200 val
* var_listnode3
/* var listnode3: Array[Object] */;
3201 val
* var_ppropdefnode2
/* var ppropdefnode2: nullable Object */;
3202 short int var3
/* : Bool */;
3205 short int var4
/* : Bool */;
3206 short int var5
/* : Bool */;
3207 val
* var_other
/* var other: nullable Object */;
3208 short int var7
/* : Bool */;
3209 short int var8
/* : Bool */;
3210 val
* var9
/* : ATopClassdef */;
3211 val
* var_pclassdefnode1
/* var pclassdefnode1: nullable ATopClassdef */;
3212 long var10
/* : Int */;
3213 long var11
/* : Int */;
3215 var_node_list
= ((val
*)NULL
);
3217 var
= nit___nit__Parser___pop(var_p
);
3219 var_nodearraylist2
= var
;
3221 var1
= nit___nit__Parser___pop(var_p
);
3223 var_nodearraylist1
= var1
;
3224 var2
= NEW_standard__Array(&type_standard__Array__standard__Object
);
3226 standard___standard__Array___standard__kernel__Object__init(var2
); /* Direct call array#Array#init on <var2:Array[Object]>*/
3228 var_listnode3
= var2
;
3229 var_ppropdefnode2
= var_nodearraylist1
;
3230 /* <var_ppropdefnode2:nullable Object> isa nullable APropdef */
3231 cltype
= type_nullable__nit__APropdef
.color
;
3232 idtype
= type_nullable__nit__APropdef
.id
;
3233 if(var_ppropdefnode2
== NULL
) {
3236 if(cltype
>= (((long)var_ppropdefnode2
&3)?type_info
[((long)var_ppropdefnode2
&3)]:var_ppropdefnode2
->type
)->table_size
) {
3239 var3
= (((long)var_ppropdefnode2
&3)?type_info
[((long)var_ppropdefnode2
&3)]:var_ppropdefnode2
->type
)->type_table
[cltype
] == idtype
;
3242 if (unlikely(!var3
)) {
3243 PRINT_ERROR("Runtime error: %s", "Assert failed");
3244 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1752);
3247 if (var_ppropdefnode2
== NULL
) {
3248 var4
= 0; /* is null */
3250 var4
= 1; /* arg is null and recv is not */
3253 { /* Inline kernel#Object#!= (var_ppropdefnode2,((val*)NULL)) on <var_ppropdefnode2:nullable Object(nullable APropdef)> */
3254 var_other
= ((val
*)NULL
);
3256 var7
= ((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)>*/
3267 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_listnode3
, var_ppropdefnode2
); /* Direct call array#Array#add on <var_listnode3:Array[Object]>*/
3271 var9
= NEW_nit__ATopClassdef(&type_nit__ATopClassdef
);
3273 nit__parser_prod___ATopClassdef___init_atopclassdef(var9
, var_listnode3
); /* Direct call parser_prod#ATopClassdef#init_atopclassdef on <var9:ATopClassdef>*/
3275 var_pclassdefnode1
= var9
;
3276 var_node_list
= var_pclassdefnode1
;
3277 var10
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction20> */
3279 var11
= nit___nit__Parser___go_to(var_p
, var10
);
3282 nit___nit__Parser___push(var_p
, var11
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
3286 /* method parser#ReduceAction21#action for (self: ReduceAction21, Parser) */
3287 void nit__parser___nit__parser__ReduceAction21___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
3288 val
* var_p
/* var p: Parser */;
3289 val
* var_node_list
/* var node_list: nullable Object */;
3290 val
* var
/* : nullable Object */;
3291 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3292 val
* var1
/* : Array[Object] */;
3293 val
* var_listnode3
/* var listnode3: Array[Object] */;
3294 val
* var_ppropdefnode2
/* var ppropdefnode2: nullable Object */;
3295 short int var2
/* : Bool */;
3298 short int var3
/* : Bool */;
3299 short int var4
/* : Bool */;
3300 val
* var_other
/* var other: nullable Object */;
3301 short int var6
/* : Bool */;
3302 short int var7
/* : Bool */;
3303 val
* var8
/* : AMainClassdef */;
3304 val
* var_pclassdefnode1
/* var pclassdefnode1: nullable AMainClassdef */;
3305 long var9
/* : Int */;
3306 long var10
/* : Int */;
3308 var_node_list
= ((val
*)NULL
);
3310 var
= nit___nit__Parser___pop(var_p
);
3312 var_nodearraylist1
= var
;
3313 var1
= NEW_standard__Array(&type_standard__Array__standard__Object
);
3315 standard___standard__Array___standard__kernel__Object__init(var1
); /* Direct call array#Array#init on <var1:Array[Object]>*/
3317 var_listnode3
= var1
;
3318 var_ppropdefnode2
= var_nodearraylist1
;
3319 /* <var_ppropdefnode2:nullable Object> isa nullable APropdef */
3320 cltype
= type_nullable__nit__APropdef
.color
;
3321 idtype
= type_nullable__nit__APropdef
.id
;
3322 if(var_ppropdefnode2
== NULL
) {
3325 if(cltype
>= (((long)var_ppropdefnode2
&3)?type_info
[((long)var_ppropdefnode2
&3)]:var_ppropdefnode2
->type
)->table_size
) {
3328 var2
= (((long)var_ppropdefnode2
&3)?type_info
[((long)var_ppropdefnode2
&3)]:var_ppropdefnode2
->type
)->type_table
[cltype
] == idtype
;
3331 if (unlikely(!var2
)) {
3332 PRINT_ERROR("Runtime error: %s", "Assert failed");
3333 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1771);
3336 if (var_ppropdefnode2
== NULL
) {
3337 var3
= 0; /* is null */
3339 var3
= 1; /* arg is null and recv is not */
3342 { /* Inline kernel#Object#!= (var_ppropdefnode2,((val*)NULL)) on <var_ppropdefnode2:nullable Object(nullable APropdef)> */
3343 var_other
= ((val
*)NULL
);
3345 var6
= ((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)>*/
3356 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_listnode3
, var_ppropdefnode2
); /* Direct call array#Array#add on <var_listnode3:Array[Object]>*/
3360 var8
= NEW_nit__AMainClassdef(&type_nit__AMainClassdef
);
3362 nit__parser_prod___AMainClassdef___init_amainclassdef(var8
, var_listnode3
); /* Direct call parser_prod#AMainClassdef#init_amainclassdef on <var8:AMainClassdef>*/
3364 var_pclassdefnode1
= var8
;
3365 var_node_list
= var_pclassdefnode1
;
3366 var9
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction21> */
3368 var10
= nit___nit__Parser___go_to(var_p
, var9
);
3371 nit___nit__Parser___push(var_p
, var10
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
3375 /* method parser#ReduceAction22#action for (self: ReduceAction22, Parser) */
3376 void nit__parser___nit__parser__ReduceAction22___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
3377 val
* var_p
/* var p: Parser */;
3378 val
* var_node_list
/* var node_list: nullable Object */;
3379 long var
/* : Int */;
3380 long var1
/* : Int */;
3382 var_node_list
= ((val
*)NULL
);
3383 var_node_list
= ((val
*)NULL
);
3384 var
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction22> */
3386 var1
= nit___nit__Parser___go_to(var_p
, var
);
3389 nit___nit__Parser___push(var_p
, var1
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
3393 /* method parser#ReduceAction23#action for (self: ReduceAction23, Parser) */
3394 void nit__parser___nit__parser__ReduceAction23___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
3395 val
* var_p
/* var p: Parser */;
3396 val
* var_node_list
/* var node_list: nullable Object */;
3397 val
* var
/* : nullable Object */;
3398 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3399 long var1
/* : Int */;
3400 long var2
/* : Int */;
3402 var_node_list
= ((val
*)NULL
);
3404 var
= nit___nit__Parser___pop(var_p
);
3406 var_nodearraylist1
= var
;
3407 var_node_list
= ((val
*)NULL
);
3408 var1
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction23> */
3410 var2
= nit___nit__Parser___go_to(var_p
, var1
);
3413 nit___nit__Parser___push(var_p
, var2
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
3417 /* method parser#ReduceAction24#action for (self: ReduceAction24, Parser) */
3418 void nit__parser___nit__parser__ReduceAction24___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
3419 val
* var_p
/* var p: Parser */;
3420 val
* var_node_list
/* var node_list: nullable Object */;
3421 val
* var
/* : nullable Object */;
3422 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3423 val
* var1
/* : nullable Object */;
3424 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3425 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
3426 short int var2
/* : Bool */;
3429 val
* var3
/* : AMainMethPropdef */;
3430 val
* var_ppropdefnode1
/* var ppropdefnode1: nullable AMainMethPropdef */;
3431 long var4
/* : Int */;
3432 long var5
/* : Int */;
3434 var_node_list
= ((val
*)NULL
);
3436 var
= nit___nit__Parser___pop(var_p
);
3438 var_nodearraylist2
= var
;
3440 var1
= nit___nit__Parser___pop(var_p
);
3442 var_nodearraylist1
= var1
;
3443 var_pexprnode3
= var_nodearraylist2
;
3444 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
3445 cltype
= type_nullable__nit__AExpr
.color
;
3446 idtype
= type_nullable__nit__AExpr
.id
;
3447 if(var_pexprnode3
== NULL
) {
3450 if(cltype
>= (((long)var_pexprnode3
&3)?type_info
[((long)var_pexprnode3
&3)]:var_pexprnode3
->type
)->table_size
) {
3453 var2
= (((long)var_pexprnode3
&3)?type_info
[((long)var_pexprnode3
&3)]:var_pexprnode3
->type
)->type_table
[cltype
] == idtype
;
3456 if (unlikely(!var2
)) {
3457 PRINT_ERROR("Runtime error: %s", "Assert failed");
3458 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1809);
3461 var3
= NEW_nit__AMainMethPropdef(&type_nit__AMainMethPropdef
);
3463 nit__parser_prod___AMainMethPropdef___init_amainmethpropdef(var3
, ((val
*)NULL
), var_pexprnode3
); /* Direct call parser_prod#AMainMethPropdef#init_amainmethpropdef on <var3:AMainMethPropdef>*/
3465 var_ppropdefnode1
= var3
;
3466 var_node_list
= var_ppropdefnode1
;
3467 var4
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction24> */
3469 var5
= nit___nit__Parser___go_to(var_p
, var4
);
3472 nit___nit__Parser___push(var_p
, var5
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
3476 /* method parser#ReduceAction26#action for (self: ReduceAction26, Parser) */
3477 void nit__parser___nit__parser__ReduceAction26___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
3478 val
* var_p
/* var p: Parser */;
3479 val
* var_node_list
/* var node_list: nullable Object */;
3480 val
* var
/* : nullable Object */;
3481 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
3482 val
* var1
/* : nullable Object */;
3483 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
3484 val
* var2
/* : nullable Object */;
3485 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
3486 val
* var3
/* : nullable Object */;
3487 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
3488 val
* var4
/* : nullable Object */;
3489 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
3490 val
* var5
/* : nullable Object */;
3491 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
3492 val
* var6
/* : nullable Object */;
3493 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3494 val
* var7
/* : nullable Object */;
3495 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3496 val
* var8
/* : Array[Object] */;
3497 val
* var_listnode8
/* var listnode8: Array[Object] */;
3498 val
* var9
/* : Array[Object] */;
3499 val
* var_listnode12
/* var listnode12: Array[Object] */;
3500 val
* var_pdocnode2
/* var pdocnode2: nullable Object */;
3501 short int var10
/* : Bool */;
3504 val
* var_tkwredefnode3
/* var tkwredefnode3: nullable Object */;
3505 short int var11
/* : Bool */;
3508 val
* var_pvisibilitynode4
/* var pvisibilitynode4: nullable Object */;
3509 short int var14
/* : Bool */;
3512 val
* var_pclasskindnode5
/* var pclasskindnode5: nullable Object */;
3513 short int var17
/* : Bool */;
3516 val
* var_tclassidnode6
/* var tclassidnode6: nullable Object */;
3517 short int var20
/* : Bool */;
3520 val
* var_listnode11
/* var listnode11: nullable Object */;
3521 short int var23
/* : Bool */;
3524 val
* var26
/* : Array[Object] */;
3525 val
* var_tkwendnode13
/* var tkwendnode13: nullable Object */;
3526 short int var27
/* : Bool */;
3529 val
* var30
/* : AStdClassdef */;
3530 val
* var_pclassdefnode1
/* var pclassdefnode1: nullable AStdClassdef */;
3531 long var31
/* : Int */;
3532 long var32
/* : Int */;
3534 var_node_list
= ((val
*)NULL
);
3536 var
= nit___nit__Parser___pop(var_p
);
3538 var_nodearraylist8
= var
;
3540 var1
= nit___nit__Parser___pop(var_p
);
3542 var_nodearraylist7
= var1
;
3544 var2
= nit___nit__Parser___pop(var_p
);
3546 var_nodearraylist6
= var2
;
3548 var3
= nit___nit__Parser___pop(var_p
);
3550 var_nodearraylist5
= var3
;
3552 var4
= nit___nit__Parser___pop(var_p
);
3554 var_nodearraylist4
= var4
;
3556 var5
= nit___nit__Parser___pop(var_p
);
3558 var_nodearraylist3
= var5
;
3560 var6
= nit___nit__Parser___pop(var_p
);
3562 var_nodearraylist2
= var6
;
3564 var7
= nit___nit__Parser___pop(var_p
);
3566 var_nodearraylist1
= var7
;
3567 var8
= NEW_standard__Array(&type_standard__Array__standard__Object
);
3569 standard___standard__Array___standard__kernel__Object__init(var8
); /* Direct call array#Array#init on <var8:Array[Object]>*/
3571 var_listnode8
= var8
;
3572 var9
= NEW_standard__Array(&type_standard__Array__standard__Object
);
3574 standard___standard__Array___standard__kernel__Object__init(var9
); /* Direct call array#Array#init on <var9:Array[Object]>*/
3576 var_listnode12
= var9
;
3577 var_pdocnode2
= var_nodearraylist1
;
3578 /* <var_pdocnode2:nullable Object> isa nullable ADoc */
3579 cltype
= type_nullable__nit__ADoc
.color
;
3580 idtype
= type_nullable__nit__ADoc
.id
;
3581 if(var_pdocnode2
== NULL
) {
3584 if(cltype
>= (((long)var_pdocnode2
&3)?type_info
[((long)var_pdocnode2
&3)]:var_pdocnode2
->type
)->table_size
) {
3587 var10
= (((long)var_pdocnode2
&3)?type_info
[((long)var_pdocnode2
&3)]:var_pdocnode2
->type
)->type_table
[cltype
] == idtype
;
3590 if (unlikely(!var10
)) {
3591 PRINT_ERROR("Runtime error: %s", "Assert failed");
3592 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1834);
3595 var_tkwredefnode3
= var_nodearraylist2
;
3596 /* <var_tkwredefnode3:nullable Object> isa nullable TKwredef */
3597 cltype12
= type_nullable__nit__TKwredef
.color
;
3598 idtype13
= type_nullable__nit__TKwredef
.id
;
3599 if(var_tkwredefnode3
== NULL
) {
3602 if(cltype12
>= (((long)var_tkwredefnode3
&3)?type_info
[((long)var_tkwredefnode3
&3)]:var_tkwredefnode3
->type
)->table_size
) {
3605 var11
= (((long)var_tkwredefnode3
&3)?type_info
[((long)var_tkwredefnode3
&3)]:var_tkwredefnode3
->type
)->type_table
[cltype12
] == idtype13
;
3608 if (unlikely(!var11
)) {
3609 PRINT_ERROR("Runtime error: %s", "Assert failed");
3610 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1836);
3613 var_pvisibilitynode4
= var_nodearraylist3
;
3614 /* <var_pvisibilitynode4:nullable Object> isa nullable AVisibility */
3615 cltype15
= type_nullable__nit__AVisibility
.color
;
3616 idtype16
= type_nullable__nit__AVisibility
.id
;
3617 if(var_pvisibilitynode4
== NULL
) {
3620 if(cltype15
>= (((long)var_pvisibilitynode4
&3)?type_info
[((long)var_pvisibilitynode4
&3)]:var_pvisibilitynode4
->type
)->table_size
) {
3623 var14
= (((long)var_pvisibilitynode4
&3)?type_info
[((long)var_pvisibilitynode4
&3)]:var_pvisibilitynode4
->type
)->type_table
[cltype15
] == idtype16
;
3626 if (unlikely(!var14
)) {
3627 PRINT_ERROR("Runtime error: %s", "Assert failed");
3628 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1838);
3631 var_pclasskindnode5
= var_nodearraylist4
;
3632 /* <var_pclasskindnode5:nullable Object> isa nullable AClasskind */
3633 cltype18
= type_nullable__nit__AClasskind
.color
;
3634 idtype19
= type_nullable__nit__AClasskind
.id
;
3635 if(var_pclasskindnode5
== NULL
) {
3638 if(cltype18
>= (((long)var_pclasskindnode5
&3)?type_info
[((long)var_pclasskindnode5
&3)]:var_pclasskindnode5
->type
)->table_size
) {
3641 var17
= (((long)var_pclasskindnode5
&3)?type_info
[((long)var_pclasskindnode5
&3)]:var_pclasskindnode5
->type
)->type_table
[cltype18
] == idtype19
;
3644 if (unlikely(!var17
)) {
3645 PRINT_ERROR("Runtime error: %s", "Assert failed");
3646 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1840);
3649 var_tclassidnode6
= var_nodearraylist6
;
3650 /* <var_tclassidnode6:nullable Object> isa nullable TClassid */
3651 cltype21
= type_nullable__nit__TClassid
.color
;
3652 idtype22
= type_nullable__nit__TClassid
.id
;
3653 if(var_tclassidnode6
== NULL
) {
3656 if(cltype21
>= (((long)var_tclassidnode6
&3)?type_info
[((long)var_tclassidnode6
&3)]:var_tclassidnode6
->type
)->table_size
) {
3659 var20
= (((long)var_tclassidnode6
&3)?type_info
[((long)var_tclassidnode6
&3)]:var_tclassidnode6
->type
)->type_table
[cltype21
] == idtype22
;
3662 if (unlikely(!var20
)) {
3663 PRINT_ERROR("Runtime error: %s", "Assert failed");
3664 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1842);
3667 var_listnode11
= var_nodearraylist7
;
3668 /* <var_listnode11:nullable Object> isa Array[Object] */
3669 cltype24
= type_standard__Array__standard__Object
.color
;
3670 idtype25
= type_standard__Array__standard__Object
.id
;
3671 if(var_listnode11
== NULL
) {
3674 if(cltype24
>= (((long)var_listnode11
&3)?type_info
[((long)var_listnode11
&3)]:var_listnode11
->type
)->table_size
) {
3677 var23
= (((long)var_listnode11
&3)?type_info
[((long)var_listnode11
&3)]:var_listnode11
->type
)->type_table
[cltype24
] == idtype25
;
3680 if (unlikely(!var23
)) {
3681 PRINT_ERROR("Runtime error: %s", "Assert failed");
3682 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1844);
3686 var26
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode12
, var_listnode11
);
3688 var_listnode12
= var26
;
3689 var_tkwendnode13
= var_nodearraylist8
;
3690 /* <var_tkwendnode13:nullable Object> isa nullable TKwend */
3691 cltype28
= type_nullable__nit__TKwend
.color
;
3692 idtype29
= type_nullable__nit__TKwend
.id
;
3693 if(var_tkwendnode13
== NULL
) {
3696 if(cltype28
>= (((long)var_tkwendnode13
&3)?type_info
[((long)var_tkwendnode13
&3)]:var_tkwendnode13
->type
)->table_size
) {
3699 var27
= (((long)var_tkwendnode13
&3)?type_info
[((long)var_tkwendnode13
&3)]:var_tkwendnode13
->type
)->type_table
[cltype28
] == idtype29
;
3702 if (unlikely(!var27
)) {
3703 PRINT_ERROR("Runtime error: %s", "Assert failed");
3704 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1847);
3707 var30
= NEW_nit__AStdClassdef(&type_nit__AStdClassdef
);
3709 nit__parser_prod___AStdClassdef___init_astdclassdef(var30
, var_pdocnode2
, var_tkwredefnode3
, var_pvisibilitynode4
, var_pclasskindnode5
, var_tclassidnode6
, ((val
*)NULL
), var_listnode8
, ((val
*)NULL
), ((val
*)NULL
), var_listnode12
, var_tkwendnode13
); /* Direct call parser_prod#AStdClassdef#init_astdclassdef on <var30:AStdClassdef>*/
3711 var_pclassdefnode1
= var30
;
3712 var_node_list
= var_pclassdefnode1
;
3713 var31
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction26> */
3715 var32
= nit___nit__Parser___go_to(var_p
, var31
);
3718 nit___nit__Parser___push(var_p
, var32
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
3722 /* method parser#ReduceAction27#action for (self: ReduceAction27, Parser) */
3723 void nit__parser___nit__parser__ReduceAction27___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
3724 val
* var_p
/* var p: Parser */;
3725 val
* var_node_list
/* var node_list: nullable Object */;
3726 val
* var
/* : nullable Object */;
3727 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
3728 val
* var1
/* : nullable Object */;
3729 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
3730 val
* var2
/* : nullable Object */;
3731 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
3732 val
* var3
/* : nullable Object */;
3733 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
3734 val
* var4
/* : nullable Object */;
3735 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
3736 val
* var5
/* : nullable Object */;
3737 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
3738 val
* var6
/* : nullable Object */;
3739 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
3740 val
* var7
/* : nullable Object */;
3741 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3742 val
* var8
/* : nullable Object */;
3743 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3744 val
* var9
/* : Array[Object] */;
3745 val
* var_listnode8
/* var listnode8: Array[Object] */;
3746 val
* var10
/* : Array[Object] */;
3747 val
* var_listnode12
/* var listnode12: Array[Object] */;
3748 val
* var_pdocnode2
/* var pdocnode2: nullable Object */;
3749 short int var11
/* : Bool */;
3752 val
* var_tkwredefnode3
/* var tkwredefnode3: nullable Object */;
3753 short int var12
/* : Bool */;
3756 val
* var_pvisibilitynode4
/* var pvisibilitynode4: nullable Object */;
3757 short int var15
/* : Bool */;
3760 val
* var_pclasskindnode5
/* var pclasskindnode5: nullable Object */;
3761 short int var18
/* : Bool */;
3764 val
* var_tclassidnode6
/* var tclassidnode6: nullable Object */;
3765 short int var21
/* : Bool */;
3768 val
* var_pexterncodeblocknode10
/* var pexterncodeblocknode10: nullable Object */;
3769 short int var24
/* : Bool */;
3772 val
* var_listnode11
/* var listnode11: nullable Object */;
3773 short int var27
/* : Bool */;
3776 val
* var30
/* : Array[Object] */;
3777 val
* var_tkwendnode13
/* var tkwendnode13: nullable Object */;
3778 short int var31
/* : Bool */;
3781 val
* var34
/* : AStdClassdef */;
3782 val
* var_pclassdefnode1
/* var pclassdefnode1: nullable AStdClassdef */;
3783 long var35
/* : Int */;
3784 long var36
/* : Int */;
3786 var_node_list
= ((val
*)NULL
);
3788 var
= nit___nit__Parser___pop(var_p
);
3790 var_nodearraylist9
= var
;
3792 var1
= nit___nit__Parser___pop(var_p
);
3794 var_nodearraylist8
= var1
;
3796 var2
= nit___nit__Parser___pop(var_p
);
3798 var_nodearraylist7
= var2
;
3800 var3
= nit___nit__Parser___pop(var_p
);
3802 var_nodearraylist6
= var3
;
3804 var4
= nit___nit__Parser___pop(var_p
);
3806 var_nodearraylist5
= var4
;
3808 var5
= nit___nit__Parser___pop(var_p
);
3810 var_nodearraylist4
= var5
;
3812 var6
= nit___nit__Parser___pop(var_p
);
3814 var_nodearraylist3
= var6
;
3816 var7
= nit___nit__Parser___pop(var_p
);
3818 var_nodearraylist2
= var7
;
3820 var8
= nit___nit__Parser___pop(var_p
);
3822 var_nodearraylist1
= var8
;
3823 var9
= NEW_standard__Array(&type_standard__Array__standard__Object
);
3825 standard___standard__Array___standard__kernel__Object__init(var9
); /* Direct call array#Array#init on <var9:Array[Object]>*/
3827 var_listnode8
= var9
;
3828 var10
= NEW_standard__Array(&type_standard__Array__standard__Object
);
3830 standard___standard__Array___standard__kernel__Object__init(var10
); /* Direct call array#Array#init on <var10:Array[Object]>*/
3832 var_listnode12
= var10
;
3833 var_pdocnode2
= var_nodearraylist1
;
3834 /* <var_pdocnode2:nullable Object> isa nullable ADoc */
3835 cltype
= type_nullable__nit__ADoc
.color
;
3836 idtype
= type_nullable__nit__ADoc
.id
;
3837 if(var_pdocnode2
== NULL
) {
3840 if(cltype
>= (((long)var_pdocnode2
&3)?type_info
[((long)var_pdocnode2
&3)]:var_pdocnode2
->type
)->table_size
) {
3843 var11
= (((long)var_pdocnode2
&3)?type_info
[((long)var_pdocnode2
&3)]:var_pdocnode2
->type
)->type_table
[cltype
] == idtype
;
3846 if (unlikely(!var11
)) {
3847 PRINT_ERROR("Runtime error: %s", "Assert failed");
3848 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1882);
3851 var_tkwredefnode3
= var_nodearraylist2
;
3852 /* <var_tkwredefnode3:nullable Object> isa nullable TKwredef */
3853 cltype13
= type_nullable__nit__TKwredef
.color
;
3854 idtype14
= type_nullable__nit__TKwredef
.id
;
3855 if(var_tkwredefnode3
== NULL
) {
3858 if(cltype13
>= (((long)var_tkwredefnode3
&3)?type_info
[((long)var_tkwredefnode3
&3)]:var_tkwredefnode3
->type
)->table_size
) {
3861 var12
= (((long)var_tkwredefnode3
&3)?type_info
[((long)var_tkwredefnode3
&3)]:var_tkwredefnode3
->type
)->type_table
[cltype13
] == idtype14
;
3864 if (unlikely(!var12
)) {
3865 PRINT_ERROR("Runtime error: %s", "Assert failed");
3866 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1884);
3869 var_pvisibilitynode4
= var_nodearraylist3
;
3870 /* <var_pvisibilitynode4:nullable Object> isa nullable AVisibility */
3871 cltype16
= type_nullable__nit__AVisibility
.color
;
3872 idtype17
= type_nullable__nit__AVisibility
.id
;
3873 if(var_pvisibilitynode4
== NULL
) {
3876 if(cltype16
>= (((long)var_pvisibilitynode4
&3)?type_info
[((long)var_pvisibilitynode4
&3)]:var_pvisibilitynode4
->type
)->table_size
) {
3879 var15
= (((long)var_pvisibilitynode4
&3)?type_info
[((long)var_pvisibilitynode4
&3)]:var_pvisibilitynode4
->type
)->type_table
[cltype16
] == idtype17
;
3882 if (unlikely(!var15
)) {
3883 PRINT_ERROR("Runtime error: %s", "Assert failed");
3884 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1886);
3887 var_pclasskindnode5
= var_nodearraylist4
;
3888 /* <var_pclasskindnode5:nullable Object> isa nullable AClasskind */
3889 cltype19
= type_nullable__nit__AClasskind
.color
;
3890 idtype20
= type_nullable__nit__AClasskind
.id
;
3891 if(var_pclasskindnode5
== NULL
) {
3894 if(cltype19
>= (((long)var_pclasskindnode5
&3)?type_info
[((long)var_pclasskindnode5
&3)]:var_pclasskindnode5
->type
)->table_size
) {
3897 var18
= (((long)var_pclasskindnode5
&3)?type_info
[((long)var_pclasskindnode5
&3)]:var_pclasskindnode5
->type
)->type_table
[cltype19
] == idtype20
;
3900 if (unlikely(!var18
)) {
3901 PRINT_ERROR("Runtime error: %s", "Assert failed");
3902 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1888);
3905 var_tclassidnode6
= var_nodearraylist6
;
3906 /* <var_tclassidnode6:nullable Object> isa nullable TClassid */
3907 cltype22
= type_nullable__nit__TClassid
.color
;
3908 idtype23
= type_nullable__nit__TClassid
.id
;
3909 if(var_tclassidnode6
== NULL
) {
3912 if(cltype22
>= (((long)var_tclassidnode6
&3)?type_info
[((long)var_tclassidnode6
&3)]:var_tclassidnode6
->type
)->table_size
) {
3915 var21
= (((long)var_tclassidnode6
&3)?type_info
[((long)var_tclassidnode6
&3)]:var_tclassidnode6
->type
)->type_table
[cltype22
] == idtype23
;
3918 if (unlikely(!var21
)) {
3919 PRINT_ERROR("Runtime error: %s", "Assert failed");
3920 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1890);
3923 var_pexterncodeblocknode10
= var_nodearraylist7
;
3924 /* <var_pexterncodeblocknode10:nullable Object> isa nullable AExternCodeBlock */
3925 cltype25
= type_nullable__nit__AExternCodeBlock
.color
;
3926 idtype26
= type_nullable__nit__AExternCodeBlock
.id
;
3927 if(var_pexterncodeblocknode10
== NULL
) {
3930 if(cltype25
>= (((long)var_pexterncodeblocknode10
&3)?type_info
[((long)var_pexterncodeblocknode10
&3)]:var_pexterncodeblocknode10
->type
)->table_size
) {
3933 var24
= (((long)var_pexterncodeblocknode10
&3)?type_info
[((long)var_pexterncodeblocknode10
&3)]:var_pexterncodeblocknode10
->type
)->type_table
[cltype25
] == idtype26
;
3936 if (unlikely(!var24
)) {
3937 PRINT_ERROR("Runtime error: %s", "Assert failed");
3938 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1892);
3941 var_listnode11
= var_nodearraylist8
;
3942 /* <var_listnode11:nullable Object> isa Array[Object] */
3943 cltype28
= type_standard__Array__standard__Object
.color
;
3944 idtype29
= type_standard__Array__standard__Object
.id
;
3945 if(var_listnode11
== NULL
) {
3948 if(cltype28
>= (((long)var_listnode11
&3)?type_info
[((long)var_listnode11
&3)]:var_listnode11
->type
)->table_size
) {
3951 var27
= (((long)var_listnode11
&3)?type_info
[((long)var_listnode11
&3)]:var_listnode11
->type
)->type_table
[cltype28
] == idtype29
;
3954 if (unlikely(!var27
)) {
3955 PRINT_ERROR("Runtime error: %s", "Assert failed");
3956 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1894);
3960 var30
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode12
, var_listnode11
);
3962 var_listnode12
= var30
;
3963 var_tkwendnode13
= var_nodearraylist9
;
3964 /* <var_tkwendnode13:nullable Object> isa nullable TKwend */
3965 cltype32
= type_nullable__nit__TKwend
.color
;
3966 idtype33
= type_nullable__nit__TKwend
.id
;
3967 if(var_tkwendnode13
== NULL
) {
3970 if(cltype32
>= (((long)var_tkwendnode13
&3)?type_info
[((long)var_tkwendnode13
&3)]:var_tkwendnode13
->type
)->table_size
) {
3973 var31
= (((long)var_tkwendnode13
&3)?type_info
[((long)var_tkwendnode13
&3)]:var_tkwendnode13
->type
)->type_table
[cltype32
] == idtype33
;
3976 if (unlikely(!var31
)) {
3977 PRINT_ERROR("Runtime error: %s", "Assert failed");
3978 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1897);
3981 var34
= NEW_nit__AStdClassdef(&type_nit__AStdClassdef
);
3983 nit__parser_prod___AStdClassdef___init_astdclassdef(var34
, var_pdocnode2
, var_tkwredefnode3
, var_pvisibilitynode4
, var_pclasskindnode5
, var_tclassidnode6
, ((val
*)NULL
), var_listnode8
, ((val
*)NULL
), var_pexterncodeblocknode10
, var_listnode12
, var_tkwendnode13
); /* Direct call parser_prod#AStdClassdef#init_astdclassdef on <var34:AStdClassdef>*/
3985 var_pclassdefnode1
= var34
;
3986 var_node_list
= var_pclassdefnode1
;
3987 var35
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction27> */
3989 var36
= nit___nit__Parser___go_to(var_p
, var35
);
3992 nit___nit__Parser___push(var_p
, var36
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
3996 /* method parser#ReduceAction28#action for (self: ReduceAction28, Parser) */
3997 void nit__parser___nit__parser__ReduceAction28___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
3998 val
* var_p
/* var p: Parser */;
3999 val
* var_node_list
/* var node_list: nullable Object */;
4000 val
* var
/* : nullable Object */;
4001 val
* var_nodearraylist12
/* var nodearraylist12: nullable Object */;
4002 val
* var1
/* : nullable Object */;
4003 val
* var_nodearraylist11
/* var nodearraylist11: nullable Object */;
4004 val
* var2
/* : nullable Object */;
4005 val
* var_nodearraylist10
/* var nodearraylist10: nullable Object */;
4006 val
* var3
/* : nullable Object */;
4007 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
4008 val
* var4
/* : nullable Object */;
4009 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
4010 val
* var5
/* : nullable Object */;
4011 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
4012 val
* var6
/* : nullable Object */;
4013 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
4014 val
* var7
/* : nullable Object */;
4015 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
4016 val
* var8
/* : nullable Object */;
4017 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
4018 val
* var9
/* : nullable Object */;
4019 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
4020 val
* var10
/* : nullable Object */;
4021 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4022 val
* var11
/* : nullable Object */;
4023 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4024 val
* var12
/* : Array[Object] */;
4025 val
* var_listnode9
/* var listnode9: Array[Object] */;
4026 val
* var13
/* : Array[Object] */;
4027 val
* var_listnode13
/* var listnode13: Array[Object] */;
4028 val
* var_pdocnode2
/* var pdocnode2: nullable Object */;
4029 short int var14
/* : Bool */;
4032 val
* var_tkwredefnode3
/* var tkwredefnode3: nullable Object */;
4033 short int var15
/* : Bool */;
4036 val
* var_pvisibilitynode4
/* var pvisibilitynode4: nullable Object */;
4037 short int var18
/* : Bool */;
4040 val
* var_pclasskindnode5
/* var pclasskindnode5: nullable Object */;
4041 short int var21
/* : Bool */;
4044 val
* var_tclassidnode6
/* var tclassidnode6: nullable Object */;
4045 short int var24
/* : Bool */;
4048 val
* var_tobranode7
/* var tobranode7: nullable Object */;
4049 short int var27
/* : Bool */;
4052 val
* var_listnode8
/* var listnode8: nullable Object */;
4053 short int var30
/* : Bool */;
4056 val
* var33
/* : Array[Object] */;
4057 val
* var_tcbranode10
/* var tcbranode10: nullable Object */;
4058 short int var34
/* : Bool */;
4061 val
* var_listnode12
/* var listnode12: nullable Object */;
4062 short int var37
/* : Bool */;
4065 val
* var40
/* : Array[Object] */;
4066 val
* var_tkwendnode14
/* var tkwendnode14: nullable Object */;
4067 short int var41
/* : Bool */;
4070 val
* var44
/* : AStdClassdef */;
4071 val
* var_pclassdefnode1
/* var pclassdefnode1: nullable AStdClassdef */;
4072 long var45
/* : Int */;
4073 long var46
/* : Int */;
4075 var_node_list
= ((val
*)NULL
);
4077 var
= nit___nit__Parser___pop(var_p
);
4079 var_nodearraylist12
= var
;
4081 var1
= nit___nit__Parser___pop(var_p
);
4083 var_nodearraylist11
= var1
;
4085 var2
= nit___nit__Parser___pop(var_p
);
4087 var_nodearraylist10
= var2
;
4089 var3
= nit___nit__Parser___pop(var_p
);
4091 var_nodearraylist9
= var3
;
4093 var4
= nit___nit__Parser___pop(var_p
);
4095 var_nodearraylist8
= var4
;
4097 var5
= nit___nit__Parser___pop(var_p
);
4099 var_nodearraylist7
= var5
;
4101 var6
= nit___nit__Parser___pop(var_p
);
4103 var_nodearraylist6
= var6
;
4105 var7
= nit___nit__Parser___pop(var_p
);
4107 var_nodearraylist5
= var7
;
4109 var8
= nit___nit__Parser___pop(var_p
);
4111 var_nodearraylist4
= var8
;
4113 var9
= nit___nit__Parser___pop(var_p
);
4115 var_nodearraylist3
= var9
;
4117 var10
= nit___nit__Parser___pop(var_p
);
4119 var_nodearraylist2
= var10
;
4121 var11
= nit___nit__Parser___pop(var_p
);
4123 var_nodearraylist1
= var11
;
4124 var12
= NEW_standard__Array(&type_standard__Array__standard__Object
);
4126 standard___standard__Array___standard__kernel__Object__init(var12
); /* Direct call array#Array#init on <var12:Array[Object]>*/
4128 var_listnode9
= var12
;
4129 var13
= NEW_standard__Array(&type_standard__Array__standard__Object
);
4131 standard___standard__Array___standard__kernel__Object__init(var13
); /* Direct call array#Array#init on <var13:Array[Object]>*/
4133 var_listnode13
= var13
;
4134 var_pdocnode2
= var_nodearraylist1
;
4135 /* <var_pdocnode2:nullable Object> isa nullable ADoc */
4136 cltype
= type_nullable__nit__ADoc
.color
;
4137 idtype
= type_nullable__nit__ADoc
.id
;
4138 if(var_pdocnode2
== NULL
) {
4141 if(cltype
>= (((long)var_pdocnode2
&3)?type_info
[((long)var_pdocnode2
&3)]:var_pdocnode2
->type
)->table_size
) {
4144 var14
= (((long)var_pdocnode2
&3)?type_info
[((long)var_pdocnode2
&3)]:var_pdocnode2
->type
)->type_table
[cltype
] == idtype
;
4147 if (unlikely(!var14
)) {
4148 PRINT_ERROR("Runtime error: %s", "Assert failed");
4149 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1935);
4152 var_tkwredefnode3
= var_nodearraylist2
;
4153 /* <var_tkwredefnode3:nullable Object> isa nullable TKwredef */
4154 cltype16
= type_nullable__nit__TKwredef
.color
;
4155 idtype17
= type_nullable__nit__TKwredef
.id
;
4156 if(var_tkwredefnode3
== NULL
) {
4159 if(cltype16
>= (((long)var_tkwredefnode3
&3)?type_info
[((long)var_tkwredefnode3
&3)]:var_tkwredefnode3
->type
)->table_size
) {
4162 var15
= (((long)var_tkwredefnode3
&3)?type_info
[((long)var_tkwredefnode3
&3)]:var_tkwredefnode3
->type
)->type_table
[cltype16
] == idtype17
;
4165 if (unlikely(!var15
)) {
4166 PRINT_ERROR("Runtime error: %s", "Assert failed");
4167 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1937);
4170 var_pvisibilitynode4
= var_nodearraylist3
;
4171 /* <var_pvisibilitynode4:nullable Object> isa nullable AVisibility */
4172 cltype19
= type_nullable__nit__AVisibility
.color
;
4173 idtype20
= type_nullable__nit__AVisibility
.id
;
4174 if(var_pvisibilitynode4
== NULL
) {
4177 if(cltype19
>= (((long)var_pvisibilitynode4
&3)?type_info
[((long)var_pvisibilitynode4
&3)]:var_pvisibilitynode4
->type
)->table_size
) {
4180 var18
= (((long)var_pvisibilitynode4
&3)?type_info
[((long)var_pvisibilitynode4
&3)]:var_pvisibilitynode4
->type
)->type_table
[cltype19
] == idtype20
;
4183 if (unlikely(!var18
)) {
4184 PRINT_ERROR("Runtime error: %s", "Assert failed");
4185 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1939);
4188 var_pclasskindnode5
= var_nodearraylist4
;
4189 /* <var_pclasskindnode5:nullable Object> isa nullable AClasskind */
4190 cltype22
= type_nullable__nit__AClasskind
.color
;
4191 idtype23
= type_nullable__nit__AClasskind
.id
;
4192 if(var_pclasskindnode5
== NULL
) {
4195 if(cltype22
>= (((long)var_pclasskindnode5
&3)?type_info
[((long)var_pclasskindnode5
&3)]:var_pclasskindnode5
->type
)->table_size
) {
4198 var21
= (((long)var_pclasskindnode5
&3)?type_info
[((long)var_pclasskindnode5
&3)]:var_pclasskindnode5
->type
)->type_table
[cltype22
] == idtype23
;
4201 if (unlikely(!var21
)) {
4202 PRINT_ERROR("Runtime error: %s", "Assert failed");
4203 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1941);
4206 var_tclassidnode6
= var_nodearraylist6
;
4207 /* <var_tclassidnode6:nullable Object> isa nullable TClassid */
4208 cltype25
= type_nullable__nit__TClassid
.color
;
4209 idtype26
= type_nullable__nit__TClassid
.id
;
4210 if(var_tclassidnode6
== NULL
) {
4213 if(cltype25
>= (((long)var_tclassidnode6
&3)?type_info
[((long)var_tclassidnode6
&3)]:var_tclassidnode6
->type
)->table_size
) {
4216 var24
= (((long)var_tclassidnode6
&3)?type_info
[((long)var_tclassidnode6
&3)]:var_tclassidnode6
->type
)->type_table
[cltype25
] == idtype26
;
4219 if (unlikely(!var24
)) {
4220 PRINT_ERROR("Runtime error: %s", "Assert failed");
4221 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1943);
4224 var_tobranode7
= var_nodearraylist7
;
4225 /* <var_tobranode7:nullable Object> isa nullable TObra */
4226 cltype28
= type_nullable__nit__TObra
.color
;
4227 idtype29
= type_nullable__nit__TObra
.id
;
4228 if(var_tobranode7
== NULL
) {
4231 if(cltype28
>= (((long)var_tobranode7
&3)?type_info
[((long)var_tobranode7
&3)]:var_tobranode7
->type
)->table_size
) {
4234 var27
= (((long)var_tobranode7
&3)?type_info
[((long)var_tobranode7
&3)]:var_tobranode7
->type
)->type_table
[cltype28
] == idtype29
;
4237 if (unlikely(!var27
)) {
4238 PRINT_ERROR("Runtime error: %s", "Assert failed");
4239 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1945);
4242 var_listnode8
= var_nodearraylist9
;
4243 /* <var_listnode8:nullable Object> isa Array[Object] */
4244 cltype31
= type_standard__Array__standard__Object
.color
;
4245 idtype32
= type_standard__Array__standard__Object
.id
;
4246 if(var_listnode8
== NULL
) {
4249 if(cltype31
>= (((long)var_listnode8
&3)?type_info
[((long)var_listnode8
&3)]:var_listnode8
->type
)->table_size
) {
4252 var30
= (((long)var_listnode8
&3)?type_info
[((long)var_listnode8
&3)]:var_listnode8
->type
)->type_table
[cltype31
] == idtype32
;
4255 if (unlikely(!var30
)) {
4256 PRINT_ERROR("Runtime error: %s", "Assert failed");
4257 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1947);
4261 var33
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode9
, var_listnode8
);
4263 var_listnode9
= var33
;
4264 var_tcbranode10
= var_nodearraylist10
;
4265 /* <var_tcbranode10:nullable Object> isa nullable TCbra */
4266 cltype35
= type_nullable__nit__TCbra
.color
;
4267 idtype36
= type_nullable__nit__TCbra
.id
;
4268 if(var_tcbranode10
== NULL
) {
4271 if(cltype35
>= (((long)var_tcbranode10
&3)?type_info
[((long)var_tcbranode10
&3)]:var_tcbranode10
->type
)->table_size
) {
4274 var34
= (((long)var_tcbranode10
&3)?type_info
[((long)var_tcbranode10
&3)]:var_tcbranode10
->type
)->type_table
[cltype35
] == idtype36
;
4277 if (unlikely(!var34
)) {
4278 PRINT_ERROR("Runtime error: %s", "Assert failed");
4279 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1950);
4282 var_listnode12
= var_nodearraylist11
;
4283 /* <var_listnode12:nullable Object> isa Array[Object] */
4284 cltype38
= type_standard__Array__standard__Object
.color
;
4285 idtype39
= type_standard__Array__standard__Object
.id
;
4286 if(var_listnode12
== NULL
) {
4289 if(cltype38
>= (((long)var_listnode12
&3)?type_info
[((long)var_listnode12
&3)]:var_listnode12
->type
)->table_size
) {
4292 var37
= (((long)var_listnode12
&3)?type_info
[((long)var_listnode12
&3)]:var_listnode12
->type
)->type_table
[cltype38
] == idtype39
;
4295 if (unlikely(!var37
)) {
4296 PRINT_ERROR("Runtime error: %s", "Assert failed");
4297 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1952);
4301 var40
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode13
, var_listnode12
);
4303 var_listnode13
= var40
;
4304 var_tkwendnode14
= var_nodearraylist12
;
4305 /* <var_tkwendnode14:nullable Object> isa nullable TKwend */
4306 cltype42
= type_nullable__nit__TKwend
.color
;
4307 idtype43
= type_nullable__nit__TKwend
.id
;
4308 if(var_tkwendnode14
== NULL
) {
4311 if(cltype42
>= (((long)var_tkwendnode14
&3)?type_info
[((long)var_tkwendnode14
&3)]:var_tkwendnode14
->type
)->table_size
) {
4314 var41
= (((long)var_tkwendnode14
&3)?type_info
[((long)var_tkwendnode14
&3)]:var_tkwendnode14
->type
)->type_table
[cltype42
] == idtype43
;
4317 if (unlikely(!var41
)) {
4318 PRINT_ERROR("Runtime error: %s", "Assert failed");
4319 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1955);
4322 var44
= NEW_nit__AStdClassdef(&type_nit__AStdClassdef
);
4324 nit__parser_prod___AStdClassdef___init_astdclassdef(var44
, var_pdocnode2
, var_tkwredefnode3
, var_pvisibilitynode4
, var_pclasskindnode5
, var_tclassidnode6
, var_tobranode7
, var_listnode9
, var_tcbranode10
, ((val
*)NULL
), var_listnode13
, var_tkwendnode14
); /* Direct call parser_prod#AStdClassdef#init_astdclassdef on <var44:AStdClassdef>*/
4326 var_pclassdefnode1
= var44
;
4327 var_node_list
= var_pclassdefnode1
;
4328 var45
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction28> */
4330 var46
= nit___nit__Parser___go_to(var_p
, var45
);
4333 nit___nit__Parser___push(var_p
, var46
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
4337 /* method parser#ReduceAction29#action for (self: ReduceAction29, Parser) */
4338 void nit__parser___nit__parser__ReduceAction29___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
4339 val
* var_p
/* var p: Parser */;
4340 val
* var_node_list
/* var node_list: nullable Object */;
4341 val
* var
/* : nullable Object */;
4342 val
* var_nodearraylist13
/* var nodearraylist13: nullable Object */;
4343 val
* var1
/* : nullable Object */;
4344 val
* var_nodearraylist12
/* var nodearraylist12: nullable Object */;
4345 val
* var2
/* : nullable Object */;
4346 val
* var_nodearraylist11
/* var nodearraylist11: nullable Object */;
4347 val
* var3
/* : nullable Object */;
4348 val
* var_nodearraylist10
/* var nodearraylist10: nullable Object */;
4349 val
* var4
/* : nullable Object */;
4350 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
4351 val
* var5
/* : nullable Object */;
4352 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
4353 val
* var6
/* : nullable Object */;
4354 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
4355 val
* var7
/* : nullable Object */;
4356 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
4357 val
* var8
/* : nullable Object */;
4358 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
4359 val
* var9
/* : nullable Object */;
4360 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
4361 val
* var10
/* : nullable Object */;
4362 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
4363 val
* var11
/* : nullable Object */;
4364 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4365 val
* var12
/* : nullable Object */;
4366 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4367 val
* var13
/* : Array[Object] */;
4368 val
* var_listnode9
/* var listnode9: Array[Object] */;
4369 val
* var14
/* : Array[Object] */;
4370 val
* var_listnode13
/* var listnode13: Array[Object] */;
4371 val
* var_pdocnode2
/* var pdocnode2: nullable Object */;
4372 short int var15
/* : Bool */;
4375 val
* var_tkwredefnode3
/* var tkwredefnode3: nullable Object */;
4376 short int var16
/* : Bool */;
4379 val
* var_pvisibilitynode4
/* var pvisibilitynode4: nullable Object */;
4380 short int var19
/* : Bool */;
4383 val
* var_pclasskindnode5
/* var pclasskindnode5: nullable Object */;
4384 short int var22
/* : Bool */;
4387 val
* var_tclassidnode6
/* var tclassidnode6: nullable Object */;
4388 short int var25
/* : Bool */;
4391 val
* var_tobranode7
/* var tobranode7: nullable Object */;
4392 short int var28
/* : Bool */;
4395 val
* var_listnode8
/* var listnode8: nullable Object */;
4396 short int var31
/* : Bool */;
4399 val
* var34
/* : Array[Object] */;
4400 val
* var_tcbranode10
/* var tcbranode10: nullable Object */;
4401 short int var35
/* : Bool */;
4404 val
* var_pexterncodeblocknode11
/* var pexterncodeblocknode11: nullable Object */;
4405 short int var38
/* : Bool */;
4408 val
* var_listnode12
/* var listnode12: nullable Object */;
4409 short int var41
/* : Bool */;
4412 val
* var44
/* : Array[Object] */;
4413 val
* var_tkwendnode14
/* var tkwendnode14: nullable Object */;
4414 short int var45
/* : Bool */;
4417 val
* var48
/* : AStdClassdef */;
4418 val
* var_pclassdefnode1
/* var pclassdefnode1: nullable AStdClassdef */;
4419 long var49
/* : Int */;
4420 long var50
/* : Int */;
4422 var_node_list
= ((val
*)NULL
);
4424 var
= nit___nit__Parser___pop(var_p
);
4426 var_nodearraylist13
= var
;
4428 var1
= nit___nit__Parser___pop(var_p
);
4430 var_nodearraylist12
= var1
;
4432 var2
= nit___nit__Parser___pop(var_p
);
4434 var_nodearraylist11
= var2
;
4436 var3
= nit___nit__Parser___pop(var_p
);
4438 var_nodearraylist10
= var3
;
4440 var4
= nit___nit__Parser___pop(var_p
);
4442 var_nodearraylist9
= var4
;
4444 var5
= nit___nit__Parser___pop(var_p
);
4446 var_nodearraylist8
= var5
;
4448 var6
= nit___nit__Parser___pop(var_p
);
4450 var_nodearraylist7
= var6
;
4452 var7
= nit___nit__Parser___pop(var_p
);
4454 var_nodearraylist6
= var7
;
4456 var8
= nit___nit__Parser___pop(var_p
);
4458 var_nodearraylist5
= var8
;
4460 var9
= nit___nit__Parser___pop(var_p
);
4462 var_nodearraylist4
= var9
;
4464 var10
= nit___nit__Parser___pop(var_p
);
4466 var_nodearraylist3
= var10
;
4468 var11
= nit___nit__Parser___pop(var_p
);
4470 var_nodearraylist2
= var11
;
4472 var12
= nit___nit__Parser___pop(var_p
);
4474 var_nodearraylist1
= var12
;
4475 var13
= NEW_standard__Array(&type_standard__Array__standard__Object
);
4477 standard___standard__Array___standard__kernel__Object__init(var13
); /* Direct call array#Array#init on <var13:Array[Object]>*/
4479 var_listnode9
= var13
;
4480 var14
= NEW_standard__Array(&type_standard__Array__standard__Object
);
4482 standard___standard__Array___standard__kernel__Object__init(var14
); /* Direct call array#Array#init on <var14:Array[Object]>*/
4484 var_listnode13
= var14
;
4485 var_pdocnode2
= var_nodearraylist1
;
4486 /* <var_pdocnode2:nullable Object> isa nullable ADoc */
4487 cltype
= type_nullable__nit__ADoc
.color
;
4488 idtype
= type_nullable__nit__ADoc
.id
;
4489 if(var_pdocnode2
== NULL
) {
4492 if(cltype
>= (((long)var_pdocnode2
&3)?type_info
[((long)var_pdocnode2
&3)]:var_pdocnode2
->type
)->table_size
) {
4495 var15
= (((long)var_pdocnode2
&3)?type_info
[((long)var_pdocnode2
&3)]:var_pdocnode2
->type
)->type_table
[cltype
] == idtype
;
4498 if (unlikely(!var15
)) {
4499 PRINT_ERROR("Runtime error: %s", "Assert failed");
4500 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1994);
4503 var_tkwredefnode3
= var_nodearraylist2
;
4504 /* <var_tkwredefnode3:nullable Object> isa nullable TKwredef */
4505 cltype17
= type_nullable__nit__TKwredef
.color
;
4506 idtype18
= type_nullable__nit__TKwredef
.id
;
4507 if(var_tkwredefnode3
== NULL
) {
4510 if(cltype17
>= (((long)var_tkwredefnode3
&3)?type_info
[((long)var_tkwredefnode3
&3)]:var_tkwredefnode3
->type
)->table_size
) {
4513 var16
= (((long)var_tkwredefnode3
&3)?type_info
[((long)var_tkwredefnode3
&3)]:var_tkwredefnode3
->type
)->type_table
[cltype17
] == idtype18
;
4516 if (unlikely(!var16
)) {
4517 PRINT_ERROR("Runtime error: %s", "Assert failed");
4518 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1996);
4521 var_pvisibilitynode4
= var_nodearraylist3
;
4522 /* <var_pvisibilitynode4:nullable Object> isa nullable AVisibility */
4523 cltype20
= type_nullable__nit__AVisibility
.color
;
4524 idtype21
= type_nullable__nit__AVisibility
.id
;
4525 if(var_pvisibilitynode4
== NULL
) {
4528 if(cltype20
>= (((long)var_pvisibilitynode4
&3)?type_info
[((long)var_pvisibilitynode4
&3)]:var_pvisibilitynode4
->type
)->table_size
) {
4531 var19
= (((long)var_pvisibilitynode4
&3)?type_info
[((long)var_pvisibilitynode4
&3)]:var_pvisibilitynode4
->type
)->type_table
[cltype20
] == idtype21
;
4534 if (unlikely(!var19
)) {
4535 PRINT_ERROR("Runtime error: %s", "Assert failed");
4536 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 1998);
4539 var_pclasskindnode5
= var_nodearraylist4
;
4540 /* <var_pclasskindnode5:nullable Object> isa nullable AClasskind */
4541 cltype23
= type_nullable__nit__AClasskind
.color
;
4542 idtype24
= type_nullable__nit__AClasskind
.id
;
4543 if(var_pclasskindnode5
== NULL
) {
4546 if(cltype23
>= (((long)var_pclasskindnode5
&3)?type_info
[((long)var_pclasskindnode5
&3)]:var_pclasskindnode5
->type
)->table_size
) {
4549 var22
= (((long)var_pclasskindnode5
&3)?type_info
[((long)var_pclasskindnode5
&3)]:var_pclasskindnode5
->type
)->type_table
[cltype23
] == idtype24
;
4552 if (unlikely(!var22
)) {
4553 PRINT_ERROR("Runtime error: %s", "Assert failed");
4554 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2000);
4557 var_tclassidnode6
= var_nodearraylist6
;
4558 /* <var_tclassidnode6:nullable Object> isa nullable TClassid */
4559 cltype26
= type_nullable__nit__TClassid
.color
;
4560 idtype27
= type_nullable__nit__TClassid
.id
;
4561 if(var_tclassidnode6
== NULL
) {
4564 if(cltype26
>= (((long)var_tclassidnode6
&3)?type_info
[((long)var_tclassidnode6
&3)]:var_tclassidnode6
->type
)->table_size
) {
4567 var25
= (((long)var_tclassidnode6
&3)?type_info
[((long)var_tclassidnode6
&3)]:var_tclassidnode6
->type
)->type_table
[cltype26
] == idtype27
;
4570 if (unlikely(!var25
)) {
4571 PRINT_ERROR("Runtime error: %s", "Assert failed");
4572 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2002);
4575 var_tobranode7
= var_nodearraylist7
;
4576 /* <var_tobranode7:nullable Object> isa nullable TObra */
4577 cltype29
= type_nullable__nit__TObra
.color
;
4578 idtype30
= type_nullable__nit__TObra
.id
;
4579 if(var_tobranode7
== NULL
) {
4582 if(cltype29
>= (((long)var_tobranode7
&3)?type_info
[((long)var_tobranode7
&3)]:var_tobranode7
->type
)->table_size
) {
4585 var28
= (((long)var_tobranode7
&3)?type_info
[((long)var_tobranode7
&3)]:var_tobranode7
->type
)->type_table
[cltype29
] == idtype30
;
4588 if (unlikely(!var28
)) {
4589 PRINT_ERROR("Runtime error: %s", "Assert failed");
4590 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2004);
4593 var_listnode8
= var_nodearraylist9
;
4594 /* <var_listnode8:nullable Object> isa Array[Object] */
4595 cltype32
= type_standard__Array__standard__Object
.color
;
4596 idtype33
= type_standard__Array__standard__Object
.id
;
4597 if(var_listnode8
== NULL
) {
4600 if(cltype32
>= (((long)var_listnode8
&3)?type_info
[((long)var_listnode8
&3)]:var_listnode8
->type
)->table_size
) {
4603 var31
= (((long)var_listnode8
&3)?type_info
[((long)var_listnode8
&3)]:var_listnode8
->type
)->type_table
[cltype32
] == idtype33
;
4606 if (unlikely(!var31
)) {
4607 PRINT_ERROR("Runtime error: %s", "Assert failed");
4608 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2006);
4612 var34
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode9
, var_listnode8
);
4614 var_listnode9
= var34
;
4615 var_tcbranode10
= var_nodearraylist10
;
4616 /* <var_tcbranode10:nullable Object> isa nullable TCbra */
4617 cltype36
= type_nullable__nit__TCbra
.color
;
4618 idtype37
= type_nullable__nit__TCbra
.id
;
4619 if(var_tcbranode10
== NULL
) {
4622 if(cltype36
>= (((long)var_tcbranode10
&3)?type_info
[((long)var_tcbranode10
&3)]:var_tcbranode10
->type
)->table_size
) {
4625 var35
= (((long)var_tcbranode10
&3)?type_info
[((long)var_tcbranode10
&3)]:var_tcbranode10
->type
)->type_table
[cltype36
] == idtype37
;
4628 if (unlikely(!var35
)) {
4629 PRINT_ERROR("Runtime error: %s", "Assert failed");
4630 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2009);
4633 var_pexterncodeblocknode11
= var_nodearraylist11
;
4634 /* <var_pexterncodeblocknode11:nullable Object> isa nullable AExternCodeBlock */
4635 cltype39
= type_nullable__nit__AExternCodeBlock
.color
;
4636 idtype40
= type_nullable__nit__AExternCodeBlock
.id
;
4637 if(var_pexterncodeblocknode11
== NULL
) {
4640 if(cltype39
>= (((long)var_pexterncodeblocknode11
&3)?type_info
[((long)var_pexterncodeblocknode11
&3)]:var_pexterncodeblocknode11
->type
)->table_size
) {
4643 var38
= (((long)var_pexterncodeblocknode11
&3)?type_info
[((long)var_pexterncodeblocknode11
&3)]:var_pexterncodeblocknode11
->type
)->type_table
[cltype39
] == idtype40
;
4646 if (unlikely(!var38
)) {
4647 PRINT_ERROR("Runtime error: %s", "Assert failed");
4648 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2011);
4651 var_listnode12
= var_nodearraylist12
;
4652 /* <var_listnode12:nullable Object> isa Array[Object] */
4653 cltype42
= type_standard__Array__standard__Object
.color
;
4654 idtype43
= type_standard__Array__standard__Object
.id
;
4655 if(var_listnode12
== NULL
) {
4658 if(cltype42
>= (((long)var_listnode12
&3)?type_info
[((long)var_listnode12
&3)]:var_listnode12
->type
)->table_size
) {
4661 var41
= (((long)var_listnode12
&3)?type_info
[((long)var_listnode12
&3)]:var_listnode12
->type
)->type_table
[cltype42
] == idtype43
;
4664 if (unlikely(!var41
)) {
4665 PRINT_ERROR("Runtime error: %s", "Assert failed");
4666 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2013);
4670 var44
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode13
, var_listnode12
);
4672 var_listnode13
= var44
;
4673 var_tkwendnode14
= var_nodearraylist13
;
4674 /* <var_tkwendnode14:nullable Object> isa nullable TKwend */
4675 cltype46
= type_nullable__nit__TKwend
.color
;
4676 idtype47
= type_nullable__nit__TKwend
.id
;
4677 if(var_tkwendnode14
== NULL
) {
4680 if(cltype46
>= (((long)var_tkwendnode14
&3)?type_info
[((long)var_tkwendnode14
&3)]:var_tkwendnode14
->type
)->table_size
) {
4683 var45
= (((long)var_tkwendnode14
&3)?type_info
[((long)var_tkwendnode14
&3)]:var_tkwendnode14
->type
)->type_table
[cltype46
] == idtype47
;
4686 if (unlikely(!var45
)) {
4687 PRINT_ERROR("Runtime error: %s", "Assert failed");
4688 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2016);
4691 var48
= NEW_nit__AStdClassdef(&type_nit__AStdClassdef
);
4693 nit__parser_prod___AStdClassdef___init_astdclassdef(var48
, var_pdocnode2
, var_tkwredefnode3
, var_pvisibilitynode4
, var_pclasskindnode5
, var_tclassidnode6
, var_tobranode7
, var_listnode9
, var_tcbranode10
, var_pexterncodeblocknode11
, var_listnode13
, var_tkwendnode14
); /* Direct call parser_prod#AStdClassdef#init_astdclassdef on <var48:AStdClassdef>*/
4695 var_pclassdefnode1
= var48
;
4696 var_node_list
= var_pclassdefnode1
;
4697 var49
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction29> */
4699 var50
= nit___nit__Parser___go_to(var_p
, var49
);
4702 nit___nit__Parser___push(var_p
, var50
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
4706 /* method parser#ReduceAction31#action for (self: ReduceAction31, Parser) */
4707 void nit__parser___nit__parser__ReduceAction31___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
4708 val
* var_p
/* var p: Parser */;
4709 val
* var_node_list
/* var node_list: nullable Object */;
4710 val
* var
/* : nullable Object */;
4711 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4712 val
* var_tkwredefnode1
/* var tkwredefnode1: nullable Object */;
4713 long var1
/* : Int */;
4714 long var2
/* : Int */;
4716 var_node_list
= ((val
*)NULL
);
4718 var
= nit___nit__Parser___pop(var_p
);
4720 var_nodearraylist1
= var
;
4721 var_tkwredefnode1
= var_nodearraylist1
;
4722 var_node_list
= var_tkwredefnode1
;
4723 var1
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction31> */
4725 var2
= nit___nit__Parser___go_to(var_p
, var1
);
4728 nit___nit__Parser___push(var_p
, var2
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
4732 /* method parser#ReduceAction32#action for (self: ReduceAction32, Parser) */
4733 void nit__parser___nit__parser__ReduceAction32___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
4734 val
* var_p
/* var p: Parser */;
4735 val
* var_node_list
/* var node_list: nullable Object */;
4736 val
* var
/* : nullable Object */;
4737 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4738 val
* var_tkwclassnode2
/* var tkwclassnode2: nullable Object */;
4739 short int var1
/* : Bool */;
4742 val
* var2
/* : AConcreteClasskind */;
4743 val
* var_pclasskindnode1
/* var pclasskindnode1: nullable AConcreteClasskind */;
4744 long var3
/* : Int */;
4745 long var4
/* : Int */;
4747 var_node_list
= ((val
*)NULL
);
4749 var
= nit___nit__Parser___pop(var_p
);
4751 var_nodearraylist1
= var
;
4752 var_tkwclassnode2
= var_nodearraylist1
;
4753 /* <var_tkwclassnode2:nullable Object> isa nullable TKwclass */
4754 cltype
= type_nullable__nit__TKwclass
.color
;
4755 idtype
= type_nullable__nit__TKwclass
.id
;
4756 if(var_tkwclassnode2
== NULL
) {
4759 if(cltype
>= (((long)var_tkwclassnode2
&3)?type_info
[((long)var_tkwclassnode2
&3)]:var_tkwclassnode2
->type
)->table_size
) {
4762 var1
= (((long)var_tkwclassnode2
&3)?type_info
[((long)var_tkwclassnode2
&3)]:var_tkwclassnode2
->type
)->type_table
[cltype
] == idtype
;
4765 if (unlikely(!var1
)) {
4766 PRINT_ERROR("Runtime error: %s", "Assert failed");
4767 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2052);
4770 var2
= NEW_nit__AConcreteClasskind(&type_nit__AConcreteClasskind
);
4772 nit__parser_prod___AConcreteClasskind___init_aconcreteclasskind(var2
, var_tkwclassnode2
); /* Direct call parser_prod#AConcreteClasskind#init_aconcreteclasskind on <var2:AConcreteClasskind>*/
4774 var_pclasskindnode1
= var2
;
4775 var_node_list
= var_pclasskindnode1
;
4776 var3
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction32> */
4778 var4
= nit___nit__Parser___go_to(var_p
, var3
);
4781 nit___nit__Parser___push(var_p
, var4
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
4785 /* method parser#ReduceAction33#action for (self: ReduceAction33, Parser) */
4786 void nit__parser___nit__parser__ReduceAction33___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
4787 val
* var_p
/* var p: Parser */;
4788 val
* var_node_list
/* var node_list: nullable Object */;
4789 val
* var
/* : nullable Object */;
4790 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4791 val
* var1
/* : nullable Object */;
4792 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4793 val
* var_tkwabstractnode2
/* var tkwabstractnode2: nullable Object */;
4794 short int var2
/* : Bool */;
4797 val
* var_tkwclassnode3
/* var tkwclassnode3: nullable Object */;
4798 short int var3
/* : Bool */;
4801 val
* var6
/* : AAbstractClasskind */;
4802 val
* var_pclasskindnode1
/* var pclasskindnode1: nullable AAbstractClasskind */;
4803 long var7
/* : Int */;
4804 long var8
/* : Int */;
4806 var_node_list
= ((val
*)NULL
);
4808 var
= nit___nit__Parser___pop(var_p
);
4810 var_nodearraylist2
= var
;
4812 var1
= nit___nit__Parser___pop(var_p
);
4814 var_nodearraylist1
= var1
;
4815 var_tkwabstractnode2
= var_nodearraylist1
;
4816 /* <var_tkwabstractnode2:nullable Object> isa nullable TKwabstract */
4817 cltype
= type_nullable__nit__TKwabstract
.color
;
4818 idtype
= type_nullable__nit__TKwabstract
.id
;
4819 if(var_tkwabstractnode2
== NULL
) {
4822 if(cltype
>= (((long)var_tkwabstractnode2
&3)?type_info
[((long)var_tkwabstractnode2
&3)]:var_tkwabstractnode2
->type
)->table_size
) {
4825 var2
= (((long)var_tkwabstractnode2
&3)?type_info
[((long)var_tkwabstractnode2
&3)]:var_tkwabstractnode2
->type
)->type_table
[cltype
] == idtype
;
4828 if (unlikely(!var2
)) {
4829 PRINT_ERROR("Runtime error: %s", "Assert failed");
4830 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2068);
4833 var_tkwclassnode3
= var_nodearraylist2
;
4834 /* <var_tkwclassnode3:nullable Object> isa nullable TKwclass */
4835 cltype4
= type_nullable__nit__TKwclass
.color
;
4836 idtype5
= type_nullable__nit__TKwclass
.id
;
4837 if(var_tkwclassnode3
== NULL
) {
4840 if(cltype4
>= (((long)var_tkwclassnode3
&3)?type_info
[((long)var_tkwclassnode3
&3)]:var_tkwclassnode3
->type
)->table_size
) {
4843 var3
= (((long)var_tkwclassnode3
&3)?type_info
[((long)var_tkwclassnode3
&3)]:var_tkwclassnode3
->type
)->type_table
[cltype4
] == idtype5
;
4846 if (unlikely(!var3
)) {
4847 PRINT_ERROR("Runtime error: %s", "Assert failed");
4848 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2070);
4851 var6
= NEW_nit__AAbstractClasskind(&type_nit__AAbstractClasskind
);
4853 nit__parser_prod___AAbstractClasskind___init_aabstractclasskind(var6
, var_tkwabstractnode2
, var_tkwclassnode3
); /* Direct call parser_prod#AAbstractClasskind#init_aabstractclasskind on <var6:AAbstractClasskind>*/
4855 var_pclasskindnode1
= var6
;
4856 var_node_list
= var_pclasskindnode1
;
4857 var7
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction33> */
4859 var8
= nit___nit__Parser___go_to(var_p
, var7
);
4862 nit___nit__Parser___push(var_p
, var8
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
4866 /* method parser#ReduceAction34#action for (self: ReduceAction34, Parser) */
4867 void nit__parser___nit__parser__ReduceAction34___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
4868 val
* var_p
/* var p: Parser */;
4869 val
* var_node_list
/* var node_list: nullable Object */;
4870 val
* var
/* : nullable Object */;
4871 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4872 val
* var_tkwinterfacenode2
/* var tkwinterfacenode2: nullable Object */;
4873 short int var1
/* : Bool */;
4876 val
* var2
/* : AInterfaceClasskind */;
4877 val
* var_pclasskindnode1
/* var pclasskindnode1: nullable AInterfaceClasskind */;
4878 long var3
/* : Int */;
4879 long var4
/* : Int */;
4881 var_node_list
= ((val
*)NULL
);
4883 var
= nit___nit__Parser___pop(var_p
);
4885 var_nodearraylist1
= var
;
4886 var_tkwinterfacenode2
= var_nodearraylist1
;
4887 /* <var_tkwinterfacenode2:nullable Object> isa nullable TKwinterface */
4888 cltype
= type_nullable__nit__TKwinterface
.color
;
4889 idtype
= type_nullable__nit__TKwinterface
.id
;
4890 if(var_tkwinterfacenode2
== NULL
) {
4893 if(cltype
>= (((long)var_tkwinterfacenode2
&3)?type_info
[((long)var_tkwinterfacenode2
&3)]:var_tkwinterfacenode2
->type
)->table_size
) {
4896 var1
= (((long)var_tkwinterfacenode2
&3)?type_info
[((long)var_tkwinterfacenode2
&3)]:var_tkwinterfacenode2
->type
)->type_table
[cltype
] == idtype
;
4899 if (unlikely(!var1
)) {
4900 PRINT_ERROR("Runtime error: %s", "Assert failed");
4901 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2086);
4904 var2
= NEW_nit__AInterfaceClasskind(&type_nit__AInterfaceClasskind
);
4906 nit__parser_prod___AInterfaceClasskind___init_ainterfaceclasskind(var2
, var_tkwinterfacenode2
); /* Direct call parser_prod#AInterfaceClasskind#init_ainterfaceclasskind on <var2:AInterfaceClasskind>*/
4908 var_pclasskindnode1
= var2
;
4909 var_node_list
= var_pclasskindnode1
;
4910 var3
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction34> */
4912 var4
= nit___nit__Parser___go_to(var_p
, var3
);
4915 nit___nit__Parser___push(var_p
, var4
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
4919 /* method parser#ReduceAction35#action for (self: ReduceAction35, Parser) */
4920 void nit__parser___nit__parser__ReduceAction35___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
4921 val
* var_p
/* var p: Parser */;
4922 val
* var_node_list
/* var node_list: nullable Object */;
4923 val
* var
/* : nullable Object */;
4924 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4925 val
* var_tkwenumnode2
/* var tkwenumnode2: nullable Object */;
4926 short int var1
/* : Bool */;
4929 val
* var2
/* : AEnumClasskind */;
4930 val
* var_pclasskindnode1
/* var pclasskindnode1: nullable AEnumClasskind */;
4931 long var3
/* : Int */;
4932 long var4
/* : Int */;
4934 var_node_list
= ((val
*)NULL
);
4936 var
= nit___nit__Parser___pop(var_p
);
4938 var_nodearraylist1
= var
;
4939 var_tkwenumnode2
= var_nodearraylist1
;
4940 /* <var_tkwenumnode2:nullable Object> isa nullable TKwenum */
4941 cltype
= type_nullable__nit__TKwenum
.color
;
4942 idtype
= type_nullable__nit__TKwenum
.id
;
4943 if(var_tkwenumnode2
== NULL
) {
4946 if(cltype
>= (((long)var_tkwenumnode2
&3)?type_info
[((long)var_tkwenumnode2
&3)]:var_tkwenumnode2
->type
)->table_size
) {
4949 var1
= (((long)var_tkwenumnode2
&3)?type_info
[((long)var_tkwenumnode2
&3)]:var_tkwenumnode2
->type
)->type_table
[cltype
] == idtype
;
4952 if (unlikely(!var1
)) {
4953 PRINT_ERROR("Runtime error: %s", "Assert failed");
4954 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2101);
4957 var2
= NEW_nit__AEnumClasskind(&type_nit__AEnumClasskind
);
4959 nit__parser_prod___AEnumClasskind___init_aenumclasskind(var2
, var_tkwenumnode2
); /* Direct call parser_prod#AEnumClasskind#init_aenumclasskind on <var2:AEnumClasskind>*/
4961 var_pclasskindnode1
= var2
;
4962 var_node_list
= var_pclasskindnode1
;
4963 var3
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction35> */
4965 var4
= nit___nit__Parser___go_to(var_p
, var3
);
4968 nit___nit__Parser___push(var_p
, var4
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
4972 /* method parser#ReduceAction36#action for (self: ReduceAction36, Parser) */
4973 void nit__parser___nit__parser__ReduceAction36___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
4974 val
* var_p
/* var p: Parser */;
4975 val
* var_node_list
/* var node_list: nullable Object */;
4976 val
* var
/* : nullable Object */;
4977 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4978 val
* var1
/* : nullable Object */;
4979 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4980 val
* var_tkwexternnode2
/* var tkwexternnode2: nullable Object */;
4981 short int var2
/* : Bool */;
4984 val
* var_tkwclassnode3
/* var tkwclassnode3: nullable Object */;
4985 short int var3
/* : Bool */;
4988 val
* var6
/* : AExternClasskind */;
4989 val
* var_pclasskindnode1
/* var pclasskindnode1: nullable AExternClasskind */;
4990 long var7
/* : Int */;
4991 long var8
/* : Int */;
4993 var_node_list
= ((val
*)NULL
);
4995 var
= nit___nit__Parser___pop(var_p
);
4997 var_nodearraylist2
= var
;
4999 var1
= nit___nit__Parser___pop(var_p
);
5001 var_nodearraylist1
= var1
;
5002 var_tkwexternnode2
= var_nodearraylist1
;
5003 /* <var_tkwexternnode2:nullable Object> isa nullable TKwextern */
5004 cltype
= type_nullable__nit__TKwextern
.color
;
5005 idtype
= type_nullable__nit__TKwextern
.id
;
5006 if(var_tkwexternnode2
== NULL
) {
5009 if(cltype
>= (((long)var_tkwexternnode2
&3)?type_info
[((long)var_tkwexternnode2
&3)]:var_tkwexternnode2
->type
)->table_size
) {
5012 var2
= (((long)var_tkwexternnode2
&3)?type_info
[((long)var_tkwexternnode2
&3)]:var_tkwexternnode2
->type
)->type_table
[cltype
] == idtype
;
5015 if (unlikely(!var2
)) {
5016 PRINT_ERROR("Runtime error: %s", "Assert failed");
5017 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2117);
5020 var_tkwclassnode3
= var_nodearraylist2
;
5021 /* <var_tkwclassnode3:nullable Object> isa nullable TKwclass */
5022 cltype4
= type_nullable__nit__TKwclass
.color
;
5023 idtype5
= type_nullable__nit__TKwclass
.id
;
5024 if(var_tkwclassnode3
== NULL
) {
5027 if(cltype4
>= (((long)var_tkwclassnode3
&3)?type_info
[((long)var_tkwclassnode3
&3)]:var_tkwclassnode3
->type
)->table_size
) {
5030 var3
= (((long)var_tkwclassnode3
&3)?type_info
[((long)var_tkwclassnode3
&3)]:var_tkwclassnode3
->type
)->type_table
[cltype4
] == idtype5
;
5033 if (unlikely(!var3
)) {
5034 PRINT_ERROR("Runtime error: %s", "Assert failed");
5035 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2119);
5038 var6
= NEW_nit__AExternClasskind(&type_nit__AExternClasskind
);
5040 nit__parser_prod___AExternClasskind___init_aexternclasskind(var6
, var_tkwexternnode2
, var_tkwclassnode3
); /* Direct call parser_prod#AExternClasskind#init_aexternclasskind on <var6:AExternClasskind>*/
5042 var_pclasskindnode1
= var6
;
5043 var_node_list
= var_pclasskindnode1
;
5044 var7
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction36> */
5046 var8
= nit___nit__Parser___go_to(var_p
, var7
);
5049 nit___nit__Parser___push(var_p
, var8
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
5053 /* method parser#ReduceAction37#action for (self: ReduceAction37, Parser) */
5054 void nit__parser___nit__parser__ReduceAction37___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
5055 val
* var_p
/* var p: Parser */;
5056 val
* var_node_list
/* var node_list: nullable Object */;
5057 val
* var
/* : nullable Object */;
5058 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5059 val
* var1
/* : Array[Object] */;
5060 val
* var_listnode2
/* var listnode2: Array[Object] */;
5061 val
* var_pformaldefnode1
/* var pformaldefnode1: nullable Object */;
5062 short int var2
/* : Bool */;
5063 short int var3
/* : Bool */;
5064 long var4
/* : Int */;
5065 long var5
/* : Int */;
5067 var_node_list
= ((val
*)NULL
);
5069 var
= nit___nit__Parser___pop(var_p
);
5071 var_nodearraylist1
= var
;
5072 var1
= NEW_standard__Array(&type_standard__Array__standard__Object
);
5074 standard___standard__Array___standard__kernel__Object__init(var1
); /* Direct call array#Array#init on <var1:Array[Object]>*/
5076 var_listnode2
= var1
;
5077 var_pformaldefnode1
= var_nodearraylist1
;
5078 if (var_pformaldefnode1
== NULL
) {
5079 var2
= 0; /* is null */
5081 var2
= 1; /* arg is null and recv is not */
5084 var3
= ((short int(*)(val
* self
, val
* p0
))((((long)var_pformaldefnode1
&3)?class_info
[((long)var_pformaldefnode1
&3)]:var_pformaldefnode1
->class)->vft
[COLOR_standard__kernel__Object___33d_61d
]))(var_pformaldefnode1
, ((val
*)NULL
)); /* != on <var_pformaldefnode1:nullable Object>*/
5089 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_listnode2
, var_pformaldefnode1
); /* Direct call array#Array#add on <var_listnode2:Array[Object]>*/
5093 var_node_list
= var_listnode2
;
5094 var4
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction37> */
5096 var5
= nit___nit__Parser___go_to(var_p
, var4
);
5099 nit___nit__Parser___push(var_p
, var5
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
5103 /* method parser#ReduceAction38#action for (self: ReduceAction38, Parser) */
5104 void nit__parser___nit__parser__ReduceAction38___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
5105 val
* var_p
/* var p: Parser */;
5106 val
* var_node_list
/* var node_list: nullable Object */;
5107 val
* var
/* : nullable Object */;
5108 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5109 val
* var1
/* : nullable Object */;
5110 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5111 val
* var2
/* : Array[Object] */;
5112 val
* var_listnode3
/* var listnode3: Array[Object] */;
5113 val
* var_pformaldefnode1
/* var pformaldefnode1: nullable Object */;
5114 val
* var_listnode2
/* var listnode2: nullable Object */;
5115 short int var3
/* : Bool */;
5118 short int var4
/* : Bool */;
5119 short int var5
/* : Bool */;
5120 val
* var6
/* : Array[Object] */;
5121 long var7
/* : Int */;
5122 long var8
/* : Int */;
5124 var_node_list
= ((val
*)NULL
);
5126 var
= nit___nit__Parser___pop(var_p
);
5128 var_nodearraylist2
= var
;
5130 var1
= nit___nit__Parser___pop(var_p
);
5132 var_nodearraylist1
= var1
;
5133 var2
= NEW_standard__Array(&type_standard__Array__standard__Object
);
5135 standard___standard__Array___standard__kernel__Object__init(var2
); /* Direct call array#Array#init on <var2:Array[Object]>*/
5137 var_listnode3
= var2
;
5138 var_pformaldefnode1
= var_nodearraylist1
;
5139 var_listnode2
= var_nodearraylist2
;
5140 /* <var_listnode2:nullable Object> isa Array[Object] */
5141 cltype
= type_standard__Array__standard__Object
.color
;
5142 idtype
= type_standard__Array__standard__Object
.id
;
5143 if(var_listnode2
== NULL
) {
5146 if(cltype
>= (((long)var_listnode2
&3)?type_info
[((long)var_listnode2
&3)]:var_listnode2
->type
)->table_size
) {
5149 var3
= (((long)var_listnode2
&3)?type_info
[((long)var_listnode2
&3)]:var_listnode2
->type
)->type_table
[cltype
] == idtype
;
5152 if (unlikely(!var3
)) {
5153 PRINT_ERROR("Runtime error: %s", "Assert failed");
5154 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2153);
5157 if (var_pformaldefnode1
== NULL
) {
5158 var4
= 0; /* is null */
5160 var4
= 1; /* arg is null and recv is not */
5163 var5
= ((short int(*)(val
* self
, val
* p0
))((((long)var_pformaldefnode1
&3)?class_info
[((long)var_pformaldefnode1
&3)]:var_pformaldefnode1
->class)->vft
[COLOR_standard__kernel__Object___33d_61d
]))(var_pformaldefnode1
, ((val
*)NULL
)); /* != on <var_pformaldefnode1:nullable Object>*/
5168 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_listnode3
, var_pformaldefnode1
); /* Direct call array#Array#add on <var_listnode3:Array[Object]>*/
5173 var6
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode3
, var_listnode2
);
5175 var_listnode3
= var6
;
5176 var_node_list
= var_listnode3
;
5177 var7
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction38> */
5179 var8
= nit___nit__Parser___go_to(var_p
, var7
);
5182 nit___nit__Parser___push(var_p
, var8
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
5186 /* method parser#ReduceAction39#action for (self: ReduceAction39, Parser) */
5187 void nit__parser___nit__parser__ReduceAction39___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
5188 val
* var_p
/* var p: Parser */;
5189 val
* var_node_list
/* var node_list: nullable Object */;
5190 val
* var
/* : Array[Object] */;
5191 val
* var_listnode1
/* var listnode1: Array[Object] */;
5192 long var1
/* : Int */;
5193 long var2
/* : Int */;
5195 var_node_list
= ((val
*)NULL
);
5196 var
= NEW_standard__Array(&type_standard__Array__standard__Object
);
5198 standard___standard__Array___standard__kernel__Object__init(var
); /* Direct call array#Array#init on <var:Array[Object]>*/
5200 var_listnode1
= var
;
5201 var_node_list
= var_listnode1
;
5202 var1
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction39> */
5204 var2
= nit___nit__Parser___go_to(var_p
, var1
);
5207 nit___nit__Parser___push(var_p
, var2
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
5211 /* method parser#ReduceAction40#action for (self: ReduceAction40, Parser) */
5212 void nit__parser___nit__parser__ReduceAction40___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
5213 val
* var_p
/* var p: Parser */;
5214 val
* var_node_list
/* var node_list: nullable Object */;
5215 val
* var
/* : nullable Object */;
5216 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
5217 val
* var1
/* : nullable Object */;
5218 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5219 val
* var2
/* : nullable Object */;
5220 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5221 val
* var_pformaldefnode1
/* var pformaldefnode1: nullable Object */;
5222 long var3
/* : Int */;
5223 long var4
/* : Int */;
5225 var_node_list
= ((val
*)NULL
);
5227 var
= nit___nit__Parser___pop(var_p
);
5229 var_nodearraylist3
= var
;
5231 var1
= nit___nit__Parser___pop(var_p
);
5233 var_nodearraylist2
= var1
;
5235 var2
= nit___nit__Parser___pop(var_p
);
5237 var_nodearraylist1
= var2
;
5238 var_pformaldefnode1
= var_nodearraylist3
;
5239 var_node_list
= var_pformaldefnode1
;
5240 var3
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction40> */
5242 var4
= nit___nit__Parser___go_to(var_p
, var3
);
5245 nit___nit__Parser___push(var_p
, var4
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
5249 /* method parser#ReduceAction41#action for (self: ReduceAction41, Parser) */
5250 void nit__parser___nit__parser__ReduceAction41___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
5251 val
* var_p
/* var p: Parser */;
5252 val
* var_node_list
/* var node_list: nullable Object */;
5253 val
* var
/* : nullable Object */;
5254 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
5255 val
* var1
/* : nullable Object */;
5256 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5257 val
* var2
/* : nullable Object */;
5258 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5259 val
* var_tclassidnode2
/* var tclassidnode2: nullable Object */;
5260 short int var3
/* : Bool */;
5263 val
* var_ptypenode3
/* var ptypenode3: nullable Object */;
5264 short int var4
/* : Bool */;
5267 val
* var7
/* : AFormaldef */;
5268 val
* var_pformaldefnode1
/* var pformaldefnode1: nullable AFormaldef */;
5269 long var8
/* : Int */;
5270 long var9
/* : Int */;
5272 var_node_list
= ((val
*)NULL
);
5274 var
= nit___nit__Parser___pop(var_p
);
5276 var_nodearraylist3
= var
;
5278 var1
= nit___nit__Parser___pop(var_p
);
5280 var_nodearraylist2
= var1
;
5282 var2
= nit___nit__Parser___pop(var_p
);
5284 var_nodearraylist1
= var2
;
5285 var_tclassidnode2
= var_nodearraylist1
;
5286 /* <var_tclassidnode2:nullable Object> isa nullable TClassid */
5287 cltype
= type_nullable__nit__TClassid
.color
;
5288 idtype
= type_nullable__nit__TClassid
.id
;
5289 if(var_tclassidnode2
== NULL
) {
5292 if(cltype
>= (((long)var_tclassidnode2
&3)?type_info
[((long)var_tclassidnode2
&3)]:var_tclassidnode2
->type
)->table_size
) {
5295 var3
= (((long)var_tclassidnode2
&3)?type_info
[((long)var_tclassidnode2
&3)]:var_tclassidnode2
->type
)->type_table
[cltype
] == idtype
;
5298 if (unlikely(!var3
)) {
5299 PRINT_ERROR("Runtime error: %s", "Assert failed");
5300 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2194);
5303 var_ptypenode3
= var_nodearraylist2
;
5304 /* <var_ptypenode3:nullable Object> isa nullable AType */
5305 cltype5
= type_nullable__nit__AType
.color
;
5306 idtype6
= type_nullable__nit__AType
.id
;
5307 if(var_ptypenode3
== NULL
) {
5310 if(cltype5
>= (((long)var_ptypenode3
&3)?type_info
[((long)var_ptypenode3
&3)]:var_ptypenode3
->type
)->table_size
) {
5313 var4
= (((long)var_ptypenode3
&3)?type_info
[((long)var_ptypenode3
&3)]:var_ptypenode3
->type
)->type_table
[cltype5
] == idtype6
;
5316 if (unlikely(!var4
)) {
5317 PRINT_ERROR("Runtime error: %s", "Assert failed");
5318 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2196);
5321 var7
= NEW_nit__AFormaldef(&type_nit__AFormaldef
);
5323 nit__parser_prod___AFormaldef___init_aformaldef(var7
, var_tclassidnode2
, var_ptypenode3
, ((val
*)NULL
)); /* Direct call parser_prod#AFormaldef#init_aformaldef on <var7:AFormaldef>*/
5325 var_pformaldefnode1
= var7
;
5326 var_node_list
= var_pformaldefnode1
;
5327 var8
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction41> */
5329 var9
= nit___nit__Parser___go_to(var_p
, var8
);
5332 nit___nit__Parser___push(var_p
, var9
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
5336 /* method parser#ReduceAction42#action for (self: ReduceAction42, Parser) */
5337 void nit__parser___nit__parser__ReduceAction42___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
5338 val
* var_p
/* var p: Parser */;
5339 val
* var_node_list
/* var node_list: nullable Object */;
5340 val
* var
/* : nullable Object */;
5341 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
5342 val
* var1
/* : nullable Object */;
5343 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
5344 val
* var2
/* : nullable Object */;
5345 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5346 val
* var3
/* : nullable Object */;
5347 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5348 val
* var_tclassidnode2
/* var tclassidnode2: nullable Object */;
5349 short int var4
/* : Bool */;
5352 val
* var_ptypenode3
/* var ptypenode3: nullable Object */;
5353 short int var5
/* : Bool */;
5356 val
* var_pannotationsnode4
/* var pannotationsnode4: nullable Object */;
5357 short int var8
/* : Bool */;
5360 val
* var11
/* : AFormaldef */;
5361 val
* var_pformaldefnode1
/* var pformaldefnode1: nullable AFormaldef */;
5362 long var12
/* : Int */;
5363 long var13
/* : Int */;
5365 var_node_list
= ((val
*)NULL
);
5367 var
= nit___nit__Parser___pop(var_p
);
5369 var_nodearraylist4
= var
;
5371 var1
= nit___nit__Parser___pop(var_p
);
5373 var_nodearraylist3
= var1
;
5375 var2
= nit___nit__Parser___pop(var_p
);
5377 var_nodearraylist2
= var2
;
5379 var3
= nit___nit__Parser___pop(var_p
);
5381 var_nodearraylist1
= var3
;
5382 var_tclassidnode2
= var_nodearraylist1
;
5383 /* <var_tclassidnode2:nullable Object> isa nullable TClassid */
5384 cltype
= type_nullable__nit__TClassid
.color
;
5385 idtype
= type_nullable__nit__TClassid
.id
;
5386 if(var_tclassidnode2
== NULL
) {
5389 if(cltype
>= (((long)var_tclassidnode2
&3)?type_info
[((long)var_tclassidnode2
&3)]:var_tclassidnode2
->type
)->table_size
) {
5392 var4
= (((long)var_tclassidnode2
&3)?type_info
[((long)var_tclassidnode2
&3)]:var_tclassidnode2
->type
)->type_table
[cltype
] == idtype
;
5395 if (unlikely(!var4
)) {
5396 PRINT_ERROR("Runtime error: %s", "Assert failed");
5397 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2216);
5400 var_ptypenode3
= var_nodearraylist3
;
5401 /* <var_ptypenode3:nullable Object> isa nullable AType */
5402 cltype6
= type_nullable__nit__AType
.color
;
5403 idtype7
= type_nullable__nit__AType
.id
;
5404 if(var_ptypenode3
== NULL
) {
5407 if(cltype6
>= (((long)var_ptypenode3
&3)?type_info
[((long)var_ptypenode3
&3)]:var_ptypenode3
->type
)->table_size
) {
5410 var5
= (((long)var_ptypenode3
&3)?type_info
[((long)var_ptypenode3
&3)]:var_ptypenode3
->type
)->type_table
[cltype6
] == idtype7
;
5413 if (unlikely(!var5
)) {
5414 PRINT_ERROR("Runtime error: %s", "Assert failed");
5415 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2218);
5418 var_pannotationsnode4
= var_nodearraylist2
;
5419 /* <var_pannotationsnode4:nullable Object> isa nullable AAnnotations */
5420 cltype9
= type_nullable__nit__AAnnotations
.color
;
5421 idtype10
= type_nullable__nit__AAnnotations
.id
;
5422 if(var_pannotationsnode4
== NULL
) {
5425 if(cltype9
>= (((long)var_pannotationsnode4
&3)?type_info
[((long)var_pannotationsnode4
&3)]:var_pannotationsnode4
->type
)->table_size
) {
5428 var8
= (((long)var_pannotationsnode4
&3)?type_info
[((long)var_pannotationsnode4
&3)]:var_pannotationsnode4
->type
)->type_table
[cltype9
] == idtype10
;
5431 if (unlikely(!var8
)) {
5432 PRINT_ERROR("Runtime error: %s", "Assert failed");
5433 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2220);
5436 var11
= NEW_nit__AFormaldef(&type_nit__AFormaldef
);
5438 nit__parser_prod___AFormaldef___init_aformaldef(var11
, var_tclassidnode2
, var_ptypenode3
, var_pannotationsnode4
); /* Direct call parser_prod#AFormaldef#init_aformaldef on <var11:AFormaldef>*/
5440 var_pformaldefnode1
= var11
;
5441 var_node_list
= var_pformaldefnode1
;
5442 var12
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction42> */
5444 var13
= nit___nit__Parser___go_to(var_p
, var12
);
5447 nit___nit__Parser___push(var_p
, var13
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
5451 /* method parser#ReduceAction43#action for (self: ReduceAction43, Parser) */
5452 void nit__parser___nit__parser__ReduceAction43___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
5453 val
* var_p
/* var p: Parser */;
5454 val
* var_node_list
/* var node_list: nullable Object */;
5455 val
* var
/* : nullable Object */;
5456 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
5457 val
* var1
/* : nullable Object */;
5458 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
5459 val
* var2
/* : nullable Object */;
5460 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
5461 val
* var3
/* : nullable Object */;
5462 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
5463 val
* var4
/* : nullable Object */;
5464 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
5465 val
* var5
/* : nullable Object */;
5466 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5467 val
* var6
/* : nullable Object */;
5468 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5469 val
* var_pdocnode2
/* var pdocnode2: nullable Object */;
5470 short int var7
/* : Bool */;
5473 val
* var_tkwredefnode3
/* var tkwredefnode3: nullable Object */;
5474 short int var8
/* : Bool */;
5477 val
* var_pvisibilitynode4
/* var pvisibilitynode4: nullable Object */;
5478 short int var11
/* : Bool */;
5481 val
* var_tkwsupernode5
/* var tkwsupernode5: nullable Object */;
5482 short int var14
/* : Bool */;
5485 val
* var_ptypenode6
/* var ptypenode6: nullable Object */;
5486 short int var17
/* : Bool */;
5489 val
* var_pannotationsnode7
/* var pannotationsnode7: nullable Object */;
5490 short int var20
/* : Bool */;
5493 val
* var23
/* : ASuperPropdef */;
5494 val
* var_ppropdefnode1
/* var ppropdefnode1: nullable ASuperPropdef */;
5495 long var24
/* : Int */;
5496 long var25
/* : Int */;
5498 var_node_list
= ((val
*)NULL
);
5500 var
= nit___nit__Parser___pop(var_p
);
5502 var_nodearraylist7
= var
;
5504 var1
= nit___nit__Parser___pop(var_p
);
5506 var_nodearraylist6
= var1
;
5508 var2
= nit___nit__Parser___pop(var_p
);
5510 var_nodearraylist5
= var2
;
5512 var3
= nit___nit__Parser___pop(var_p
);
5514 var_nodearraylist4
= var3
;
5516 var4
= nit___nit__Parser___pop(var_p
);
5518 var_nodearraylist3
= var4
;
5520 var5
= nit___nit__Parser___pop(var_p
);
5522 var_nodearraylist2
= var5
;
5524 var6
= nit___nit__Parser___pop(var_p
);
5526 var_nodearraylist1
= var6
;
5527 var_pdocnode2
= var_nodearraylist1
;
5528 /* <var_pdocnode2:nullable Object> isa nullable ADoc */
5529 cltype
= type_nullable__nit__ADoc
.color
;
5530 idtype
= type_nullable__nit__ADoc
.id
;
5531 if(var_pdocnode2
== NULL
) {
5534 if(cltype
>= (((long)var_pdocnode2
&3)?type_info
[((long)var_pdocnode2
&3)]:var_pdocnode2
->type
)->table_size
) {
5537 var7
= (((long)var_pdocnode2
&3)?type_info
[((long)var_pdocnode2
&3)]:var_pdocnode2
->type
)->type_table
[cltype
] == idtype
;
5540 if (unlikely(!var7
)) {
5541 PRINT_ERROR("Runtime error: %s", "Assert failed");
5542 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2243);
5545 var_tkwredefnode3
= var_nodearraylist2
;
5546 /* <var_tkwredefnode3:nullable Object> isa nullable TKwredef */
5547 cltype9
= type_nullable__nit__TKwredef
.color
;
5548 idtype10
= type_nullable__nit__TKwredef
.id
;
5549 if(var_tkwredefnode3
== NULL
) {
5552 if(cltype9
>= (((long)var_tkwredefnode3
&3)?type_info
[((long)var_tkwredefnode3
&3)]:var_tkwredefnode3
->type
)->table_size
) {
5555 var8
= (((long)var_tkwredefnode3
&3)?type_info
[((long)var_tkwredefnode3
&3)]:var_tkwredefnode3
->type
)->type_table
[cltype9
] == idtype10
;
5558 if (unlikely(!var8
)) {
5559 PRINT_ERROR("Runtime error: %s", "Assert failed");
5560 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2245);
5563 var_pvisibilitynode4
= var_nodearraylist3
;
5564 /* <var_pvisibilitynode4:nullable Object> isa nullable AVisibility */
5565 cltype12
= type_nullable__nit__AVisibility
.color
;
5566 idtype13
= type_nullable__nit__AVisibility
.id
;
5567 if(var_pvisibilitynode4
== NULL
) {
5570 if(cltype12
>= (((long)var_pvisibilitynode4
&3)?type_info
[((long)var_pvisibilitynode4
&3)]:var_pvisibilitynode4
->type
)->table_size
) {
5573 var11
= (((long)var_pvisibilitynode4
&3)?type_info
[((long)var_pvisibilitynode4
&3)]:var_pvisibilitynode4
->type
)->type_table
[cltype12
] == idtype13
;
5576 if (unlikely(!var11
)) {
5577 PRINT_ERROR("Runtime error: %s", "Assert failed");
5578 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2247);
5581 var_tkwsupernode5
= var_nodearraylist4
;
5582 /* <var_tkwsupernode5:nullable Object> isa nullable TKwsuper */
5583 cltype15
= type_nullable__nit__TKwsuper
.color
;
5584 idtype16
= type_nullable__nit__TKwsuper
.id
;
5585 if(var_tkwsupernode5
== NULL
) {
5588 if(cltype15
>= (((long)var_tkwsupernode5
&3)?type_info
[((long)var_tkwsupernode5
&3)]:var_tkwsupernode5
->type
)->table_size
) {
5591 var14
= (((long)var_tkwsupernode5
&3)?type_info
[((long)var_tkwsupernode5
&3)]:var_tkwsupernode5
->type
)->type_table
[cltype15
] == idtype16
;
5594 if (unlikely(!var14
)) {
5595 PRINT_ERROR("Runtime error: %s", "Assert failed");
5596 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2249);
5599 var_ptypenode6
= var_nodearraylist6
;
5600 /* <var_ptypenode6:nullable Object> isa nullable AType */
5601 cltype18
= type_nullable__nit__AType
.color
;
5602 idtype19
= type_nullable__nit__AType
.id
;
5603 if(var_ptypenode6
== NULL
) {
5606 if(cltype18
>= (((long)var_ptypenode6
&3)?type_info
[((long)var_ptypenode6
&3)]:var_ptypenode6
->type
)->table_size
) {
5609 var17
= (((long)var_ptypenode6
&3)?type_info
[((long)var_ptypenode6
&3)]:var_ptypenode6
->type
)->type_table
[cltype18
] == idtype19
;
5612 if (unlikely(!var17
)) {
5613 PRINT_ERROR("Runtime error: %s", "Assert failed");
5614 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2251);
5617 var_pannotationsnode7
= var_nodearraylist7
;
5618 /* <var_pannotationsnode7:nullable Object> isa nullable AAnnotations */
5619 cltype21
= type_nullable__nit__AAnnotations
.color
;
5620 idtype22
= type_nullable__nit__AAnnotations
.id
;
5621 if(var_pannotationsnode7
== NULL
) {
5624 if(cltype21
>= (((long)var_pannotationsnode7
&3)?type_info
[((long)var_pannotationsnode7
&3)]:var_pannotationsnode7
->type
)->table_size
) {
5627 var20
= (((long)var_pannotationsnode7
&3)?type_info
[((long)var_pannotationsnode7
&3)]:var_pannotationsnode7
->type
)->type_table
[cltype21
] == idtype22
;
5630 if (unlikely(!var20
)) {
5631 PRINT_ERROR("Runtime error: %s", "Assert failed");
5632 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2253);
5635 var23
= NEW_nit__ASuperPropdef(&type_nit__ASuperPropdef
);
5637 nit__parser_prod___ASuperPropdef___init_asuperpropdef(var23
, var_pdocnode2
, var_tkwredefnode3
, var_pvisibilitynode4
, var_tkwsupernode5
, var_ptypenode6
, var_pannotationsnode7
); /* Direct call parser_prod#ASuperPropdef#init_asuperpropdef on <var23:ASuperPropdef>*/
5639 var_ppropdefnode1
= var23
;
5640 var_node_list
= var_ppropdefnode1
;
5641 var24
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction43> */
5643 var25
= nit___nit__Parser___go_to(var_p
, var24
);
5646 nit___nit__Parser___push(var_p
, var25
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
5650 /* method parser#ReduceAction44#action for (self: ReduceAction44, Parser) */
5651 void nit__parser___nit__parser__ReduceAction44___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
5652 val
* var_p
/* var p: Parser */;
5653 val
* var_node_list
/* var node_list: nullable Object */;
5654 val
* var
/* : nullable Object */;
5655 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5656 val
* var1
/* : nullable Object */;
5657 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5658 val
* var2
/* : Array[Object] */;
5659 val
* var_listnode2
/* var listnode2: Array[Object] */;
5660 val
* var_listnode1
/* var listnode1: nullable Object */;
5661 short int var3
/* : Bool */;
5664 val
* var4
/* : Array[Object] */;
5665 long var5
/* : Int */;
5666 long var6
/* : Int */;
5668 var_node_list
= ((val
*)NULL
);
5670 var
= nit___nit__Parser___pop(var_p
);
5672 var_nodearraylist2
= var
;
5674 var1
= nit___nit__Parser___pop(var_p
);
5676 var_nodearraylist1
= var1
;
5677 var2
= NEW_standard__Array(&type_standard__Array__standard__Object
);
5679 standard___standard__Array___standard__kernel__Object__init(var2
); /* Direct call array#Array#init on <var2:Array[Object]>*/
5681 var_listnode2
= var2
;
5682 var_listnode1
= var_nodearraylist1
;
5683 /* <var_listnode1:nullable Object> isa Array[Object] */
5684 cltype
= type_standard__Array__standard__Object
.color
;
5685 idtype
= type_standard__Array__standard__Object
.id
;
5686 if(var_listnode1
== NULL
) {
5689 if(cltype
>= (((long)var_listnode1
&3)?type_info
[((long)var_listnode1
&3)]:var_listnode1
->type
)->table_size
) {
5692 var3
= (((long)var_listnode1
&3)?type_info
[((long)var_listnode1
&3)]:var_listnode1
->type
)->type_table
[cltype
] == idtype
;
5695 if (unlikely(!var3
)) {
5696 PRINT_ERROR("Runtime error: %s", "Assert failed");
5697 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2275);
5701 var4
= nit__parser_work___nit__parser_work__ReduceAction___concat(self
, var_listnode2
, var_listnode1
);
5703 var_listnode2
= var4
;
5704 var_node_list
= var_listnode2
;
5705 var5
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction44> */
5707 var6
= nit___nit__Parser___go_to(var_p
, var5
);
5710 nit___nit__Parser___push(var_p
, var6
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
5714 /* method parser#ReduceAction45#action for (self: ReduceAction45, Parser) */
5715 void nit__parser___nit__parser__ReduceAction45___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
5716 val
* var_p
/* var p: Parser */;
5717 val
* var_node_list
/* var node_list: nullable Object */;
5718 val
* var
/* : nullable Object */;
5719 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5720 val
* var1
/* : Array[Object] */;
5721 val
* var_listnode2
/* var listnode2: Array[Object] */;
5722 val
* var_ppropdefnode1
/* var ppropdefnode1: nullable Object */;
5723 short int var2
/* : Bool */;
5724 short int var3
/* : Bool */;
5725 long var4
/* : Int */;
5726 long var5
/* : Int */;
5728 var_node_list
= ((val
*)NULL
);
5730 var
= nit___nit__Parser___pop(var_p
);
5732 var_nodearraylist1
= var
;
5733 var1
= NEW_standard__Array(&type_standard__Array__standard__Object
);
5735 standard___standard__Array___standard__kernel__Object__init(var1
); /* Direct call array#Array#init on <var1:Array[Object]>*/
5737 var_listnode2
= var1
;
5738 var_ppropdefnode1
= var_nodearraylist1
;
5739 if (var_ppropdefnode1
== NULL
) {
5740 var2
= 0; /* is null */
5742 var2
= 1; /* arg is null and recv is not */
5745 var3
= ((short int(*)(val
* self
, val
* p0
))((((long)var_ppropdefnode1
&3)?class_info
[((long)var_ppropdefnode1
&3)]:var_ppropdefnode1
->class)->vft
[COLOR_standard__kernel__Object___33d_61d
]))(var_ppropdefnode1
, ((val
*)NULL
)); /* != on <var_ppropdefnode1:nullable Object>*/
5750 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_listnode2
, var_ppropdefnode1
); /* Direct call array#Array#add on <var_listnode2:Array[Object]>*/
5754 var_node_list
= var_listnode2
;
5755 var4
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction45> */
5757 var5
= nit___nit__Parser___go_to(var_p
, var4
);
5760 nit___nit__Parser___push(var_p
, var5
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
5764 /* method parser#ReduceAction46#action for (self: ReduceAction46, Parser) */
5765 void nit__parser___nit__parser__ReduceAction46___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
5766 val
* var_p
/* var p: Parser */;
5767 val
* var_node_list
/* var node_list: nullable Object */;
5768 val
* var
/* : nullable Object */;
5769 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5770 val
* var1
/* : Array[Object] */;
5771 val
* var_listnode1
/* var listnode1: Array[Object] */;
5772 long var2
/* : Int */;
5773 long var3
/* : Int */;
5775 var_node_list
= ((val
*)NULL
);
5777 var
= nit___nit__Parser___pop(var_p
);
5779 var_nodearraylist1
= var
;
5780 var1
= NEW_standard__Array(&type_standard__Array__standard__Object
);
5782 standard___standard__Array___standard__kernel__Object__init(var1
); /* Direct call array#Array#init on <var1:Array[Object]>*/
5784 var_listnode1
= var1
;
5785 var_node_list
= var_listnode1
;
5786 var2
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction46> */
5788 var3
= nit___nit__Parser___go_to(var_p
, var2
);
5791 nit___nit__Parser___push(var_p
, var3
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
5795 /* method parser#ReduceAction47#action for (self: ReduceAction47, Parser) */
5796 void nit__parser___nit__parser__ReduceAction47___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
5797 val
* var_p
/* var p: Parser */;
5798 val
* var_node_list
/* var node_list: nullable Object */;
5799 val
* var
/* : nullable Object */;
5800 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5801 val
* var1
/* : nullable Object */;
5802 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5803 val
* var_ppropdefnode1
/* var ppropdefnode1: nullable Object */;
5804 long var2
/* : Int */;
5805 long var3
/* : Int */;
5807 var_node_list
= ((val
*)NULL
);
5809 var
= nit___nit__Parser___pop(var_p
);
5811 var_nodearraylist2
= var
;
5813 var1
= nit___nit__Parser___pop(var_p
);
5815 var_nodearraylist1
= var1
;
5816 var_ppropdefnode1
= var_nodearraylist1
;
5817 var_node_list
= var_ppropdefnode1
;
5818 var2
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction47> */
5820 var3
= nit___nit__Parser___go_to(var_p
, var2
);
5823 nit___nit__Parser___push(var_p
, var3
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
5827 /* method parser#ReduceAction48#action for (self: ReduceAction48, Parser) */
5828 void nit__parser___nit__parser__ReduceAction48___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
5829 val
* var_p
/* var p: Parser */;
5830 val
* var_node_list
/* var node_list: nullable Object */;
5831 val
* var
/* : nullable Object */;
5832 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
5833 val
* var1
/* : nullable Object */;
5834 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
5835 val
* var2
/* : nullable Object */;
5836 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
5837 val
* var3
/* : nullable Object */;
5838 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
5839 val
* var4
/* : nullable Object */;
5840 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
5841 val
* var5
/* : nullable Object */;
5842 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
5843 val
* var6
/* : nullable Object */;
5844 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
5845 val
* var7
/* : nullable Object */;
5846 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5847 val
* var8
/* : nullable Object */;
5848 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5849 val
* var_pdocnode2
/* var pdocnode2: nullable Object */;
5850 short int var9
/* : Bool */;
5853 val
* var_tkwredefnode3
/* var tkwredefnode3: nullable Object */;
5854 short int var10
/* : Bool */;
5857 val
* var_pvisibilitynode4
/* var pvisibilitynode4: nullable Object */;
5858 short int var13
/* : Bool */;
5861 val
* var_tkwmethnode5
/* var tkwmethnode5: nullable Object */;
5862 short int var16
/* : Bool */;
5865 val
* var_pmethidnode8
/* var pmethidnode8: nullable Object */;
5866 short int var19
/* : Bool */;
5869 val
* var_psignaturenode9
/* var psignaturenode9: nullable Object */;
5870 short int var22
/* : Bool */;
5873 val
* var_tkwdonode13
/* var tkwdonode13: nullable Object */;
5874 short int var25
/* : Bool */;
5877 val
* var_pexprnode14
/* var pexprnode14: nullable Object */;
5878 short int var28
/* : Bool */;
5881 val
* var_tkwendnode15
/* var tkwendnode15: nullable Object */;
5882 short int var31
/* : Bool */;
5885 val
* var34
/* : AMethPropdef */;
5886 val
* var_ppropdefnode1
/* var ppropdefnode1: nullable AMethPropdef */;
5887 long var35
/* : Int */;
5888 long var36
/* : Int */;
5890 var_node_list
= ((val
*)NULL
);
5892 var
= nit___nit__Parser___pop(var_p
);
5894 var_nodearraylist9
= var
;
5896 var1
= nit___nit__Parser___pop(var_p
);
5898 var_nodearraylist8
= var1
;
5900 var2
= nit___nit__Parser___pop(var_p
);
5902 var_nodearraylist7
= var2
;
5904 var3
= nit___nit__Parser___pop(var_p
);
5906 var_nodearraylist6
= var3
;
5908 var4
= nit___nit__Parser___pop(var_p
);
5910 var_nodearraylist5
= var4
;
5912 var5
= nit___nit__Parser___pop(var_p
);
5914 var_nodearraylist4
= var5
;
5916 var6
= nit___nit__Parser___pop(var_p
);
5918 var_nodearraylist3
= var6
;
5920 var7
= nit___nit__Parser___pop(var_p
);
5922 var_nodearraylist2
= var7
;
5924 var8
= nit___nit__Parser___pop(var_p
);
5926 var_nodearraylist1
= var8
;
5927 var_pdocnode2
= var_nodearraylist1
;
5928 /* <var_pdocnode2:nullable Object> isa nullable ADoc */
5929 cltype
= type_nullable__nit__ADoc
.color
;
5930 idtype
= type_nullable__nit__ADoc
.id
;
5931 if(var_pdocnode2
== NULL
) {
5934 if(cltype
>= (((long)var_pdocnode2
&3)?type_info
[((long)var_pdocnode2
&3)]:var_pdocnode2
->type
)->table_size
) {
5937 var9
= (((long)var_pdocnode2
&3)?type_info
[((long)var_pdocnode2
&3)]:var_pdocnode2
->type
)->type_table
[cltype
] == idtype
;
5940 if (unlikely(!var9
)) {
5941 PRINT_ERROR("Runtime error: %s", "Assert failed");
5942 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2334);
5945 var_tkwredefnode3
= var_nodearraylist2
;
5946 /* <var_tkwredefnode3:nullable Object> isa nullable TKwredef */
5947 cltype11
= type_nullable__nit__TKwredef
.color
;
5948 idtype12
= type_nullable__nit__TKwredef
.id
;
5949 if(var_tkwredefnode3
== NULL
) {
5952 if(cltype11
>= (((long)var_tkwredefnode3
&3)?type_info
[((long)var_tkwredefnode3
&3)]:var_tkwredefnode3
->type
)->table_size
) {
5955 var10
= (((long)var_tkwredefnode3
&3)?type_info
[((long)var_tkwredefnode3
&3)]:var_tkwredefnode3
->type
)->type_table
[cltype11
] == idtype12
;
5958 if (unlikely(!var10
)) {
5959 PRINT_ERROR("Runtime error: %s", "Assert failed");
5960 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2336);
5963 var_pvisibilitynode4
= var_nodearraylist3
;
5964 /* <var_pvisibilitynode4:nullable Object> isa nullable AVisibility */
5965 cltype14
= type_nullable__nit__AVisibility
.color
;
5966 idtype15
= type_nullable__nit__AVisibility
.id
;
5967 if(var_pvisibilitynode4
== NULL
) {
5970 if(cltype14
>= (((long)var_pvisibilitynode4
&3)?type_info
[((long)var_pvisibilitynode4
&3)]:var_pvisibilitynode4
->type
)->table_size
) {
5973 var13
= (((long)var_pvisibilitynode4
&3)?type_info
[((long)var_pvisibilitynode4
&3)]:var_pvisibilitynode4
->type
)->type_table
[cltype14
] == idtype15
;
5976 if (unlikely(!var13
)) {
5977 PRINT_ERROR("Runtime error: %s", "Assert failed");
5978 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2338);
5981 var_tkwmethnode5
= var_nodearraylist4
;
5982 /* <var_tkwmethnode5:nullable Object> isa nullable TKwmeth */
5983 cltype17
= type_nullable__nit__TKwmeth
.color
;
5984 idtype18
= type_nullable__nit__TKwmeth
.id
;
5985 if(var_tkwmethnode5
== NULL
) {
5988 if(cltype17
>= (((long)var_tkwmethnode5
&3)?type_info
[((long)var_tkwmethnode5
&3)]:var_tkwmethnode5
->type
)->table_size
) {
5991 var16
= (((long)var_tkwmethnode5
&3)?type_info
[((long)var_tkwmethnode5
&3)]:var_tkwmethnode5
->type
)->type_table
[cltype17
] == idtype18
;
5994 if (unlikely(!var16
)) {
5995 PRINT_ERROR("Runtime error: %s", "Assert failed");
5996 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2340);
5999 var_pmethidnode8
= var_nodearraylist5
;
6000 /* <var_pmethidnode8:nullable Object> isa nullable AMethid */
6001 cltype20
= type_nullable__nit__AMethid
.color
;
6002 idtype21
= type_nullable__nit__AMethid
.id
;
6003 if(var_pmethidnode8
== NULL
) {
6006 if(cltype20
>= (((long)var_pmethidnode8
&3)?type_info
[((long)var_pmethidnode8
&3)]:var_pmethidnode8
->type
)->table_size
) {
6009 var19
= (((long)var_pmethidnode8
&3)?type_info
[((long)var_pmethidnode8
&3)]:var_pmethidnode8
->type
)->type_table
[cltype20
] == idtype21
;
6012 if (unlikely(!var19
)) {
6013 PRINT_ERROR("Runtime error: %s", "Assert failed");
6014 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2342);
6017 var_psignaturenode9
= var_nodearraylist6
;
6018 /* <var_psignaturenode9:nullable Object> isa nullable ASignature */
6019 cltype23
= type_nullable__nit__ASignature
.color
;
6020 idtype24
= type_nullable__nit__ASignature
.id
;
6021 if(var_psignaturenode9
== NULL
) {
6024 if(cltype23
>= (((long)var_psignaturenode9
&3)?type_info
[((long)var_psignaturenode9
&3)]:var_psignaturenode9
->type
)->table_size
) {
6027 var22
= (((long)var_psignaturenode9
&3)?type_info
[((long)var_psignaturenode9
&3)]:var_psignaturenode9
->type
)->type_table
[cltype23
] == idtype24
;
6030 if (unlikely(!var22
)) {
6031 PRINT_ERROR("Runtime error: %s", "Assert failed");
6032 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2344);
6035 var_tkwdonode13
= var_nodearraylist7
;
6036 /* <var_tkwdonode13:nullable Object> isa nullable TKwdo */
6037 cltype26
= type_nullable__nit__TKwdo
.color
;
6038 idtype27
= type_nullable__nit__TKwdo
.id
;
6039 if(var_tkwdonode13
== NULL
) {
6042 if(cltype26
>= (((long)var_tkwdonode13
&3)?type_info
[((long)var_tkwdonode13
&3)]:var_tkwdonode13
->type
)->table_size
) {
6045 var25
= (((long)var_tkwdonode13
&3)?type_info
[((long)var_tkwdonode13
&3)]:var_tkwdonode13
->type
)->type_table
[cltype26
] == idtype27
;
6048 if (unlikely(!var25
)) {
6049 PRINT_ERROR("Runtime error: %s", "Assert failed");
6050 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2346);
6053 var_pexprnode14
= var_nodearraylist8
;
6054 /* <var_pexprnode14:nullable Object> isa nullable AExpr */
6055 cltype29
= type_nullable__nit__AExpr
.color
;
6056 idtype30
= type_nullable__nit__AExpr
.id
;
6057 if(var_pexprnode14
== NULL
) {
6060 if(cltype29
>= (((long)var_pexprnode14
&3)?type_info
[((long)var_pexprnode14
&3)]:var_pexprnode14
->type
)->table_size
) {
6063 var28
= (((long)var_pexprnode14
&3)?type_info
[((long)var_pexprnode14
&3)]:var_pexprnode14
->type
)->type_table
[cltype29
] == idtype30
;
6066 if (unlikely(!var28
)) {
6067 PRINT_ERROR("Runtime error: %s", "Assert failed");
6068 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2348);
6071 var_tkwendnode15
= var_nodearraylist9
;
6072 /* <var_tkwendnode15:nullable Object> isa nullable TKwend */
6073 cltype32
= type_nullable__nit__TKwend
.color
;
6074 idtype33
= type_nullable__nit__TKwend
.id
;
6075 if(var_tkwendnode15
== NULL
) {
6078 if(cltype32
>= (((long)var_tkwendnode15
&3)?type_info
[((long)var_tkwendnode15
&3)]:var_tkwendnode15
->type
)->table_size
) {
6081 var31
= (((long)var_tkwendnode15
&3)?type_info
[((long)var_tkwendnode15
&3)]:var_tkwendnode15
->type
)->type_table
[cltype32
] == idtype33
;
6084 if (unlikely(!var31
)) {
6085 PRINT_ERROR("Runtime error: %s", "Assert failed");
6086 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2350);
6089 var34
= NEW_nit__AMethPropdef(&type_nit__AMethPropdef
);
6091 nit__parser_prod___AMethPropdef___init_amethpropdef(var34
, var_pdocnode2
, var_tkwredefnode3
, var_pvisibilitynode4
, var_tkwmethnode5
, ((val
*)NULL
), ((val
*)NULL
), var_pmethidnode8
, var_psignaturenode9
, ((val
*)NULL
), ((val
*)NULL
), ((val
*)NULL
), var_tkwdonode13
, var_pexprnode14
, var_tkwendnode15
); /* Direct call parser_prod#AMethPropdef#init_amethpropdef on <var34:AMethPropdef>*/
6093 var_ppropdefnode1
= var34
;
6094 var_node_list
= var_ppropdefnode1
;
6095 var35
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction48> */
6097 var36
= nit___nit__Parser___go_to(var_p
, var35
);
6100 nit___nit__Parser___push(var_p
, var36
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
6104 /* method parser#ReduceAction49#action for (self: ReduceAction49, Parser) */
6105 void nit__parser___nit__parser__ReduceAction49___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
6106 val
* var_p
/* var p: Parser */;
6107 val
* var_node_list
/* var node_list: nullable Object */;
6108 val
* var
/* : nullable Object */;
6109 val
* var_nodearraylist10
/* var nodearraylist10: nullable Object */;
6110 val
* var1
/* : nullable Object */;
6111 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
6112 val
* var2
/* : nullable Object */;
6113 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
6114 val
* var3
/* : nullable Object */;
6115 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
6116 val
* var4
/* : nullable Object */;
6117 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
6118 val
* var5
/* : nullable Object */;
6119 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
6120 val
* var6
/* : nullable Object */;
6121 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
6122 val
* var7
/* : nullable Object */;
6123 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
6124 val
* var8
/* : nullable Object */;
6125 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6126 val
* var9
/* : nullable Object */;
6127 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6128 val
* var_pdocnode2
/* var pdocnode2: nullable Object */;
6129 short int var10
/* : Bool */;
6132 val
* var_tkwredefnode3
/* var tkwredefnode3: nullable Object */;
6133 short int var11
/* : Bool */;
6136 val
* var_pvisibilitynode4
/* var pvisibilitynode4: nullable Object */;
6137 short int var14
/* : Bool */;
6140 val
* var_tkwmethnode5
/* var tkwmethnode5: nullable Object */;
6141 short int var17
/* : Bool */;
6144 val
* var_pmethidnode8
/* var pmethidnode8: nullable Object */;
6145 short int var20
/* : Bool */;
6148 val
* var_psignaturenode9
/* var psignaturenode9: nullable Object */;
6149 short int var23
/* : Bool */;
6152 val
* var_pannotationsnode10
/* var pannotationsnode10: nullable Object */;
6153 short int var26
/* : Bool */;
6156 val
* var_tkwdonode13
/* var tkwdonode13: nullable Object */;
6157 short int var29
/* : Bool */;
6160 val
* var_pexprnode14
/* var pexprnode14: nullable Object */;
6161 short int var32
/* : Bool */;
6164 val
* var_tkwendnode15
/* var tkwendnode15: nullable Object */;
6165 short int var35
/* : Bool */;
6168 val
* var38
/* : AMethPropdef */;
6169 val
* var_ppropdefnode1
/* var ppropdefnode1: nullable AMethPropdef */;
6170 long var39
/* : Int */;
6171 long var40
/* : Int */;
6173 var_node_list
= ((val
*)NULL
);
6175 var
= nit___nit__Parser___pop(var_p
);
6177 var_nodearraylist10
= var
;
6179 var1
= nit___nit__Parser___pop(var_p
);
6181 var_nodearraylist9
= var1
;
6183 var2
= nit___nit__Parser___pop(var_p
);
6185 var_nodearraylist8
= var2
;
6187 var3
= nit___nit__Parser___pop(var_p
);
6189 var_nodearraylist7
= var3
;
6191 var4
= nit___nit__Parser___pop(var_p
);
6193 var_nodearraylist6
= var4
;
6195 var5
= nit___nit__Parser___pop(var_p
);
6197 var_nodearraylist5
= var5
;
6199 var6
= nit___nit__Parser___pop(var_p
);
6201 var_nodearraylist4
= var6
;
6203 var7
= nit___nit__Parser___pop(var_p
);
6205 var_nodearraylist3
= var7
;
6207 var8
= nit___nit__Parser___pop(var_p
);
6209 var_nodearraylist2
= var8
;
6211 var9
= nit___nit__Parser___pop(var_p
);
6213 var_nodearraylist1
= var9
;
6214 var_pdocnode2
= var_nodearraylist1
;
6215 /* <var_pdocnode2:nullable Object> isa nullable ADoc */
6216 cltype
= type_nullable__nit__ADoc
.color
;
6217 idtype
= type_nullable__nit__ADoc
.id
;
6218 if(var_pdocnode2
== NULL
) {
6221 if(cltype
>= (((long)var_pdocnode2
&3)?type_info
[((long)var_pdocnode2
&3)]:var_pdocnode2
->type
)->table_size
) {
6224 var10
= (((long)var_pdocnode2
&3)?type_info
[((long)var_pdocnode2
&3)]:var_pdocnode2
->type
)->type_table
[cltype
] == idtype
;
6227 if (unlikely(!var10
)) {
6228 PRINT_ERROR("Runtime error: %s", "Assert failed");
6229 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2387);
6232 var_tkwredefnode3
= var_nodearraylist2
;
6233 /* <var_tkwredefnode3:nullable Object> isa nullable TKwredef */
6234 cltype12
= type_nullable__nit__TKwredef
.color
;
6235 idtype13
= type_nullable__nit__TKwredef
.id
;
6236 if(var_tkwredefnode3
== NULL
) {
6239 if(cltype12
>= (((long)var_tkwredefnode3
&3)?type_info
[((long)var_tkwredefnode3
&3)]:var_tkwredefnode3
->type
)->table_size
) {
6242 var11
= (((long)var_tkwredefnode3
&3)?type_info
[((long)var_tkwredefnode3
&3)]:var_tkwredefnode3
->type
)->type_table
[cltype12
] == idtype13
;
6245 if (unlikely(!var11
)) {
6246 PRINT_ERROR("Runtime error: %s", "Assert failed");
6247 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2389);
6250 var_pvisibilitynode4
= var_nodearraylist3
;
6251 /* <var_pvisibilitynode4:nullable Object> isa nullable AVisibility */
6252 cltype15
= type_nullable__nit__AVisibility
.color
;
6253 idtype16
= type_nullable__nit__AVisibility
.id
;
6254 if(var_pvisibilitynode4
== NULL
) {
6257 if(cltype15
>= (((long)var_pvisibilitynode4
&3)?type_info
[((long)var_pvisibilitynode4
&3)]:var_pvisibilitynode4
->type
)->table_size
) {
6260 var14
= (((long)var_pvisibilitynode4
&3)?type_info
[((long)var_pvisibilitynode4
&3)]:var_pvisibilitynode4
->type
)->type_table
[cltype15
] == idtype16
;
6263 if (unlikely(!var14
)) {
6264 PRINT_ERROR("Runtime error: %s", "Assert failed");
6265 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2391);
6268 var_tkwmethnode5
= var_nodearraylist4
;
6269 /* <var_tkwmethnode5:nullable Object> isa nullable TKwmeth */
6270 cltype18
= type_nullable__nit__TKwmeth
.color
;
6271 idtype19
= type_nullable__nit__TKwmeth
.id
;
6272 if(var_tkwmethnode5
== NULL
) {
6275 if(cltype18
>= (((long)var_tkwmethnode5
&3)?type_info
[((long)var_tkwmethnode5
&3)]:var_tkwmethnode5
->type
)->table_size
) {
6278 var17
= (((long)var_tkwmethnode5
&3)?type_info
[((long)var_tkwmethnode5
&3)]:var_tkwmethnode5
->type
)->type_table
[cltype18
] == idtype19
;
6281 if (unlikely(!var17
)) {
6282 PRINT_ERROR("Runtime error: %s", "Assert failed");
6283 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2393);
6286 var_pmethidnode8
= var_nodearraylist5
;
6287 /* <var_pmethidnode8:nullable Object> isa nullable AMethid */
6288 cltype21
= type_nullable__nit__AMethid
.color
;
6289 idtype22
= type_nullable__nit__AMethid
.id
;
6290 if(var_pmethidnode8
== NULL
) {
6293 if(cltype21
>= (((long)var_pmethidnode8
&3)?type_info
[((long)var_pmethidnode8
&3)]:var_pmethidnode8
->type
)->table_size
) {
6296 var20
= (((long)var_pmethidnode8
&3)?type_info
[((long)var_pmethidnode8
&3)]:var_pmethidnode8
->type
)->type_table
[cltype21
] == idtype22
;
6299 if (unlikely(!var20
)) {
6300 PRINT_ERROR("Runtime error: %s", "Assert failed");
6301 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2395);
6304 var_psignaturenode9
= var_nodearraylist6
;
6305 /* <var_psignaturenode9:nullable Object> isa nullable ASignature */
6306 cltype24
= type_nullable__nit__ASignature
.color
;
6307 idtype25
= type_nullable__nit__ASignature
.id
;
6308 if(var_psignaturenode9
== NULL
) {
6311 if(cltype24
>= (((long)var_psignaturenode9
&3)?type_info
[((long)var_psignaturenode9
&3)]:var_psignaturenode9
->type
)->table_size
) {
6314 var23
= (((long)var_psignaturenode9
&3)?type_info
[((long)var_psignaturenode9
&3)]:var_psignaturenode9
->type
)->type_table
[cltype24
] == idtype25
;
6317 if (unlikely(!var23
)) {
6318 PRINT_ERROR("Runtime error: %s", "Assert failed");
6319 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2397);
6322 var_pannotationsnode10
= var_nodearraylist7
;
6323 /* <var_pannotationsnode10:nullable Object> isa nullable AAnnotations */
6324 cltype27
= type_nullable__nit__AAnnotations
.color
;
6325 idtype28
= type_nullable__nit__AAnnotations
.id
;
6326 if(var_pannotationsnode10
== NULL
) {
6329 if(cltype27
>= (((long)var_pannotationsnode10
&3)?type_info
[((long)var_pannotationsnode10
&3)]:var_pannotationsnode10
->type
)->table_size
) {
6332 var26
= (((long)var_pannotationsnode10
&3)?type_info
[((long)var_pannotationsnode10
&3)]:var_pannotationsnode10
->type
)->type_table
[cltype27
] == idtype28
;
6335 if (unlikely(!var26
)) {
6336 PRINT_ERROR("Runtime error: %s", "Assert failed");
6337 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2399);
6340 var_tkwdonode13
= var_nodearraylist8
;
6341 /* <var_tkwdonode13:nullable Object> isa nullable TKwdo */
6342 cltype30
= type_nullable__nit__TKwdo
.color
;
6343 idtype31
= type_nullable__nit__TKwdo
.id
;
6344 if(var_tkwdonode13
== NULL
) {
6347 if(cltype30
>= (((long)var_tkwdonode13
&3)?type_info
[((long)var_tkwdonode13
&3)]:var_tkwdonode13
->type
)->table_size
) {
6350 var29
= (((long)var_tkwdonode13
&3)?type_info
[((long)var_tkwdonode13
&3)]:var_tkwdonode13
->type
)->type_table
[cltype30
] == idtype31
;
6353 if (unlikely(!var29
)) {
6354 PRINT_ERROR("Runtime error: %s", "Assert failed");
6355 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2401);
6358 var_pexprnode14
= var_nodearraylist9
;
6359 /* <var_pexprnode14:nullable Object> isa nullable AExpr */
6360 cltype33
= type_nullable__nit__AExpr
.color
;
6361 idtype34
= type_nullable__nit__AExpr
.id
;
6362 if(var_pexprnode14
== NULL
) {
6365 if(cltype33
>= (((long)var_pexprnode14
&3)?type_info
[((long)var_pexprnode14
&3)]:var_pexprnode14
->type
)->table_size
) {
6368 var32
= (((long)var_pexprnode14
&3)?type_info
[((long)var_pexprnode14
&3)]:var_pexprnode14
->type
)->type_table
[cltype33
] == idtype34
;
6371 if (unlikely(!var32
)) {
6372 PRINT_ERROR("Runtime error: %s", "Assert failed");
6373 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2403);
6376 var_tkwendnode15
= var_nodearraylist10
;
6377 /* <var_tkwendnode15:nullable Object> isa nullable TKwend */
6378 cltype36
= type_nullable__nit__TKwend
.color
;
6379 idtype37
= type_nullable__nit__TKwend
.id
;
6380 if(var_tkwendnode15
== NULL
) {
6383 if(cltype36
>= (((long)var_tkwendnode15
&3)?type_info
[((long)var_tkwendnode15
&3)]:var_tkwendnode15
->type
)->table_size
) {
6386 var35
= (((long)var_tkwendnode15
&3)?type_info
[((long)var_tkwendnode15
&3)]:var_tkwendnode15
->type
)->type_table
[cltype36
] == idtype37
;
6389 if (unlikely(!var35
)) {
6390 PRINT_ERROR("Runtime error: %s", "Assert failed");
6391 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2405);
6394 var38
= NEW_nit__AMethPropdef(&type_nit__AMethPropdef
);
6396 nit__parser_prod___AMethPropdef___init_amethpropdef(var38
, var_pdocnode2
, var_tkwredefnode3
, var_pvisibilitynode4
, var_tkwmethnode5
, ((val
*)NULL
), ((val
*)NULL
), var_pmethidnode8
, var_psignaturenode9
, var_pannotationsnode10
, ((val
*)NULL
), ((val
*)NULL
), var_tkwdonode13
, var_pexprnode14
, var_tkwendnode15
); /* Direct call parser_prod#AMethPropdef#init_amethpropdef on <var38:AMethPropdef>*/
6398 var_ppropdefnode1
= var38
;
6399 var_node_list
= var_ppropdefnode1
;
6400 var39
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction49> */
6402 var40
= nit___nit__Parser___go_to(var_p
, var39
);
6405 nit___nit__Parser___push(var_p
, var40
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
6409 /* method parser#ReduceAction50#action for (self: ReduceAction50, Parser) */
6410 void nit__parser___nit__parser__ReduceAction50___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
6411 val
* var_p
/* var p: Parser */;
6412 val
* var_node_list
/* var node_list: nullable Object */;
6413 val
* var
/* : nullable Object */;
6414 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
6415 val
* var1
/* : nullable Object */;
6416 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
6417 val
* var2
/* : nullable Object */;
6418 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
6419 val
* var3
/* : nullable Object */;
6420 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
6421 val
* var4
/* : nullable Object */;
6422 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
6423 val
* var5
/* : nullable Object */;
6424 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6425 val
* var6
/* : nullable Object */;
6426 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6427 val
* var_pdocnode2
/* var pdocnode2: nullable Object */;
6428 short int var7
/* : Bool */;
6431 val
* var_tkwredefnode3
/* var tkwredefnode3: nullable Object */;
6432 short int var8
/* : Bool */;
6435 val
* var_pvisibilitynode4
/* var pvisibilitynode4: nullable Object */;
6436 short int var11
/* : Bool */;
6439 val
* var_tkwmethnode5
/* var tkwmethnode5: nullable Object */;
6440 short int var14
/* : Bool */;
6443 val
* var_pmethidnode8
/* var pmethidnode8: nullable Object */;
6444 short int var17
/* : Bool */;
6447 val
* var_psignaturenode9
/* var psignaturenode9: nullable Object */;
6448 short int var20
/* : Bool */;
6451 val
* var_pannotationsnode10
/* var pannotationsnode10: nullable Object */;
6452 short int var23
/* : Bool */;
6455 val
* var26
/* : AMethPropdef */;
6456 val
* var_ppropdefnode1
/* var ppropdefnode1: nullable AMethPropdef */;
6457 long var27
/* : Int */;
6458 long var28
/* : Int */;
6460 var_node_list
= ((val
*)NULL
);
6462 var
= nit___nit__Parser___pop(var_p
);
6464 var_nodearraylist7
= var
;
6466 var1
= nit___nit__Parser___pop(var_p
);
6468 var_nodearraylist6
= var1
;
6470 var2
= nit___nit__Parser___pop(var_p
);
6472 var_nodearraylist5
= var2
;
6474 var3
= nit___nit__Parser___pop(var_p
);
6476 var_nodearraylist4
= var3
;
6478 var4
= nit___nit__Parser___pop(var_p
);
6480 var_nodearraylist3
= var4
;
6482 var5
= nit___nit__Parser___pop(var_p
);
6484 var_nodearraylist2
= var5
;
6486 var6
= nit___nit__Parser___pop(var_p
);
6488 var_nodearraylist1
= var6
;
6489 var_pdocnode2
= var_nodearraylist1
;
6490 /* <var_pdocnode2:nullable Object> isa nullable ADoc */
6491 cltype
= type_nullable__nit__ADoc
.color
;
6492 idtype
= type_nullable__nit__ADoc
.id
;
6493 if(var_pdocnode2
== NULL
) {
6496 if(cltype
>= (((long)var_pdocnode2
&3)?type_info
[((long)var_pdocnode2
&3)]:var_pdocnode2
->type
)->table_size
) {
6499 var7
= (((long)var_pdocnode2
&3)?type_info
[((long)var_pdocnode2
&3)]:var_pdocnode2
->type
)->type_table
[cltype
] == idtype
;
6502 if (unlikely(!var7
)) {
6503 PRINT_ERROR("Runtime error: %s", "Assert failed");
6504 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2439);
6507 var_tkwredefnode3
= var_nodearraylist2
;
6508 /* <var_tkwredefnode3:nullable Object> isa nullable TKwredef */
6509 cltype9
= type_nullable__nit__TKwredef
.color
;
6510 idtype10
= type_nullable__nit__TKwredef
.id
;
6511 if(var_tkwredefnode3
== NULL
) {
6514 if(cltype9
>= (((long)var_tkwredefnode3
&3)?type_info
[((long)var_tkwredefnode3
&3)]:var_tkwredefnode3
->type
)->table_size
) {
6517 var8
= (((long)var_tkwredefnode3
&3)?type_info
[((long)var_tkwredefnode3
&3)]:var_tkwredefnode3
->type
)->type_table
[cltype9
] == idtype10
;
6520 if (unlikely(!var8
)) {
6521 PRINT_ERROR("Runtime error: %s", "Assert failed");
6522 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2441);
6525 var_pvisibilitynode4
= var_nodearraylist3
;
6526 /* <var_pvisibilitynode4:nullable Object> isa nullable AVisibility */
6527 cltype12
= type_nullable__nit__AVisibility
.color
;
6528 idtype13
= type_nullable__nit__AVisibility
.id
;
6529 if(var_pvisibilitynode4
== NULL
) {
6532 if(cltype12
>= (((long)var_pvisibilitynode4
&3)?type_info
[((long)var_pvisibilitynode4
&3)]:var_pvisibilitynode4
->type
)->table_size
) {
6535 var11
= (((long)var_pvisibilitynode4
&3)?type_info
[((long)var_pvisibilitynode4
&3)]:var_pvisibilitynode4
->type
)->type_table
[cltype12
] == idtype13
;
6538 if (unlikely(!var11
)) {
6539 PRINT_ERROR("Runtime error: %s", "Assert failed");
6540 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2443);
6543 var_tkwmethnode5
= var_nodearraylist4
;
6544 /* <var_tkwmethnode5:nullable Object> isa nullable TKwmeth */
6545 cltype15
= type_nullable__nit__TKwmeth
.color
;
6546 idtype16
= type_nullable__nit__TKwmeth
.id
;
6547 if(var_tkwmethnode5
== NULL
) {
6550 if(cltype15
>= (((long)var_tkwmethnode5
&3)?type_info
[((long)var_tkwmethnode5
&3)]:var_tkwmethnode5
->type
)->table_size
) {
6553 var14
= (((long)var_tkwmethnode5
&3)?type_info
[((long)var_tkwmethnode5
&3)]:var_tkwmethnode5
->type
)->type_table
[cltype15
] == idtype16
;
6556 if (unlikely(!var14
)) {
6557 PRINT_ERROR("Runtime error: %s", "Assert failed");
6558 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2445);
6561 var_pmethidnode8
= var_nodearraylist5
;
6562 /* <var_pmethidnode8:nullable Object> isa nullable AMethid */
6563 cltype18
= type_nullable__nit__AMethid
.color
;
6564 idtype19
= type_nullable__nit__AMethid
.id
;
6565 if(var_pmethidnode8
== NULL
) {
6568 if(cltype18
>= (((long)var_pmethidnode8
&3)?type_info
[((long)var_pmethidnode8
&3)]:var_pmethidnode8
->type
)->table_size
) {
6571 var17
= (((long)var_pmethidnode8
&3)?type_info
[((long)var_pmethidnode8
&3)]:var_pmethidnode8
->type
)->type_table
[cltype18
] == idtype19
;
6574 if (unlikely(!var17
)) {
6575 PRINT_ERROR("Runtime error: %s", "Assert failed");
6576 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2447);
6579 var_psignaturenode9
= var_nodearraylist6
;
6580 /* <var_psignaturenode9:nullable Object> isa nullable ASignature */
6581 cltype21
= type_nullable__nit__ASignature
.color
;
6582 idtype22
= type_nullable__nit__ASignature
.id
;
6583 if(var_psignaturenode9
== NULL
) {
6586 if(cltype21
>= (((long)var_psignaturenode9
&3)?type_info
[((long)var_psignaturenode9
&3)]:var_psignaturenode9
->type
)->table_size
) {
6589 var20
= (((long)var_psignaturenode9
&3)?type_info
[((long)var_psignaturenode9
&3)]:var_psignaturenode9
->type
)->type_table
[cltype21
] == idtype22
;
6592 if (unlikely(!var20
)) {
6593 PRINT_ERROR("Runtime error: %s", "Assert failed");
6594 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2449);
6597 var_pannotationsnode10
= var_nodearraylist7
;
6598 /* <var_pannotationsnode10:nullable Object> isa nullable AAnnotations */
6599 cltype24
= type_nullable__nit__AAnnotations
.color
;
6600 idtype25
= type_nullable__nit__AAnnotations
.id
;
6601 if(var_pannotationsnode10
== NULL
) {
6604 if(cltype24
>= (((long)var_pannotationsnode10
&3)?type_info
[((long)var_pannotationsnode10
&3)]:var_pannotationsnode10
->type
)->table_size
) {
6607 var23
= (((long)var_pannotationsnode10
&3)?type_info
[((long)var_pannotationsnode10
&3)]:var_pannotationsnode10
->type
)->type_table
[cltype24
] == idtype25
;
6610 if (unlikely(!var23
)) {
6611 PRINT_ERROR("Runtime error: %s", "Assert failed");
6612 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2451);
6615 var26
= NEW_nit__AMethPropdef(&type_nit__AMethPropdef
);
6617 nit__parser_prod___AMethPropdef___init_amethpropdef(var26
, var_pdocnode2
, var_tkwredefnode3
, var_pvisibilitynode4
, var_tkwmethnode5
, ((val
*)NULL
), ((val
*)NULL
), var_pmethidnode8
, var_psignaturenode9
, var_pannotationsnode10
, ((val
*)NULL
), ((val
*)NULL
), ((val
*)NULL
), ((val
*)NULL
), ((val
*)NULL
)); /* Direct call parser_prod#AMethPropdef#init_amethpropdef on <var26:AMethPropdef>*/
6619 var_ppropdefnode1
= var26
;
6620 var_node_list
= var_ppropdefnode1
;
6621 var27
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction50> */
6623 var28
= nit___nit__Parser___go_to(var_p
, var27
);
6626 nit___nit__Parser___push(var_p
, var28
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
6630 /* method parser#ReduceAction51#action for (self: ReduceAction51, Parser) */
6631 void nit__parser___nit__parser__ReduceAction51___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
6632 val
* var_p
/* var p: Parser */;
6633 val
* var_node_list
/* var node_list: nullable Object */;
6634 val
* var
/* : nullable Object */;
6635 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
6636 val
* var1
/* : nullable Object */;
6637 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
6638 val
* var2
/* : nullable Object */;
6639 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
6640 val
* var3
/* : nullable Object */;
6641 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
6642 val
* var4
/* : nullable Object */;
6643 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6644 val
* var5
/* : nullable Object */;
6645 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6646 val
* var_pdocnode2
/* var pdocnode2: nullable Object */;
6647 short int var6
/* : Bool */;
6650 val
* var_tkwredefnode3
/* var tkwredefnode3: nullable Object */;
6651 short int var7
/* : Bool */;
6654 val
* var_pvisibilitynode4
/* var pvisibilitynode4: nullable Object */;
6655 short int var10
/* : Bool */;
6658 val
* var_tkwnewnode7
/* var tkwnewnode7: nullable Object */;
6659 short int var13
/* : Bool */;
6662 val
* var_psignaturenode9
/* var psignaturenode9: nullable Object */;
6663 short int var16
/* : Bool */;
6666 val
* var_pannotationsnode10
/* var pannotationsnode10: nullable Object */;
6667 short int var19
/* : Bool */;
6670 val
* var22
/* : AMethPropdef */;
6671 val
* var_ppropdefnode1
/* var ppropdefnode1: nullable AMethPropdef */;
6672 long var23
/* : Int */;
6673 long var24
/* : Int */;
6675 var_node_list
= ((val
*)NULL
);
6677 var
= nit___nit__Parser___pop(var_p
);
6679 var_nodearraylist6
= var
;
6681 var1
= nit___nit__Parser___pop(var_p
);
6683 var_nodearraylist5
= var1
;
6685 var2
= nit___nit__Parser___pop(var_p
);
6687 var_nodearraylist4
= var2
;
6689 var3
= nit___nit__Parser___pop(var_p
);
6691 var_nodearraylist3
= var3
;
6693 var4
= nit___nit__Parser___pop(var_p
);
6695 var_nodearraylist2
= var4
;
6697 var5
= nit___nit__Parser___pop(var_p
);
6699 var_nodearraylist1
= var5
;
6700 var_pdocnode2
= var_nodearraylist1
;
6701 /* <var_pdocnode2:nullable Object> isa nullable ADoc */
6702 cltype
= type_nullable__nit__ADoc
.color
;
6703 idtype
= type_nullable__nit__ADoc
.id
;
6704 if(var_pdocnode2
== NULL
) {
6707 if(cltype
>= (((long)var_pdocnode2
&3)?type_info
[((long)var_pdocnode2
&3)]:var_pdocnode2
->type
)->table_size
) {
6710 var6
= (((long)var_pdocnode2
&3)?type_info
[((long)var_pdocnode2
&3)]:var_pdocnode2
->type
)->type_table
[cltype
] == idtype
;
6713 if (unlikely(!var6
)) {
6714 PRINT_ERROR("Runtime error: %s", "Assert failed");
6715 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2484);
6718 var_tkwredefnode3
= var_nodearraylist2
;
6719 /* <var_tkwredefnode3:nullable Object> isa nullable TKwredef */
6720 cltype8
= type_nullable__nit__TKwredef
.color
;
6721 idtype9
= type_nullable__nit__TKwredef
.id
;
6722 if(var_tkwredefnode3
== NULL
) {
6725 if(cltype8
>= (((long)var_tkwredefnode3
&3)?type_info
[((long)var_tkwredefnode3
&3)]:var_tkwredefnode3
->type
)->table_size
) {
6728 var7
= (((long)var_tkwredefnode3
&3)?type_info
[((long)var_tkwredefnode3
&3)]:var_tkwredefnode3
->type
)->type_table
[cltype8
] == idtype9
;
6731 if (unlikely(!var7
)) {
6732 PRINT_ERROR("Runtime error: %s", "Assert failed");
6733 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2486);
6736 var_pvisibilitynode4
= var_nodearraylist3
;
6737 /* <var_pvisibilitynode4:nullable Object> isa nullable AVisibility */
6738 cltype11
= type_nullable__nit__AVisibility
.color
;
6739 idtype12
= type_nullable__nit__AVisibility
.id
;
6740 if(var_pvisibilitynode4
== NULL
) {
6743 if(cltype11
>= (((long)var_pvisibilitynode4
&3)?type_info
[((long)var_pvisibilitynode4
&3)]:var_pvisibilitynode4
->type
)->table_size
) {
6746 var10
= (((long)var_pvisibilitynode4
&3)?type_info
[((long)var_pvisibilitynode4
&3)]:var_pvisibilitynode4
->type
)->type_table
[cltype11
] == idtype12
;
6749 if (unlikely(!var10
)) {
6750 PRINT_ERROR("Runtime error: %s", "Assert failed");
6751 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2488);
6754 var_tkwnewnode7
= var_nodearraylist4
;
6755 /* <var_tkwnewnode7:nullable Object> isa nullable TKwnew */
6756 cltype14
= type_nullable__nit__TKwnew
.color
;
6757 idtype15
= type_nullable__nit__TKwnew
.id
;
6758 if(var_tkwnewnode7
== NULL
) {
6761 if(cltype14
>= (((long)var_tkwnewnode7
&3)?type_info
[((long)var_tkwnewnode7
&3)]:var_tkwnewnode7
->type
)->table_size
) {
6764 var13
= (((long)var_tkwnewnode7
&3)?type_info
[((long)var_tkwnewnode7
&3)]:var_tkwnewnode7
->type
)->type_table
[cltype14
] == idtype15
;
6767 if (unlikely(!var13
)) {
6768 PRINT_ERROR("Runtime error: %s", "Assert failed");
6769 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2490);
6772 var_psignaturenode9
= var_nodearraylist5
;
6773 /* <var_psignaturenode9:nullable Object> isa nullable ASignature */
6774 cltype17
= type_nullable__nit__ASignature
.color
;
6775 idtype18
= type_nullable__nit__ASignature
.id
;
6776 if(var_psignaturenode9
== NULL
) {
6779 if(cltype17
>= (((long)var_psignaturenode9
&3)?type_info
[((long)var_psignaturenode9
&3)]:var_psignaturenode9
->type
)->table_size
) {
6782 var16
= (((long)var_psignaturenode9
&3)?type_info
[((long)var_psignaturenode9
&3)]:var_psignaturenode9
->type
)->type_table
[cltype17
] == idtype18
;
6785 if (unlikely(!var16
)) {
6786 PRINT_ERROR("Runtime error: %s", "Assert failed");
6787 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2492);
6790 var_pannotationsnode10
= var_nodearraylist6
;
6791 /* <var_pannotationsnode10:nullable Object> isa nullable AAnnotations */
6792 cltype20
= type_nullable__nit__AAnnotations
.color
;
6793 idtype21
= type_nullable__nit__AAnnotations
.id
;
6794 if(var_pannotationsnode10
== NULL
) {
6797 if(cltype20
>= (((long)var_pannotationsnode10
&3)?type_info
[((long)var_pannotationsnode10
&3)]:var_pannotationsnode10
->type
)->table_size
) {
6800 var19
= (((long)var_pannotationsnode10
&3)?type_info
[((long)var_pannotationsnode10
&3)]:var_pannotationsnode10
->type
)->type_table
[cltype20
] == idtype21
;
6803 if (unlikely(!var19
)) {
6804 PRINT_ERROR("Runtime error: %s", "Assert failed");
6805 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2494);
6808 var22
= NEW_nit__AMethPropdef(&type_nit__AMethPropdef
);
6810 nit__parser_prod___AMethPropdef___init_amethpropdef(var22
, var_pdocnode2
, var_tkwredefnode3
, var_pvisibilitynode4
, ((val
*)NULL
), ((val
*)NULL
), var_tkwnewnode7
, ((val
*)NULL
), var_psignaturenode9
, var_pannotationsnode10
, ((val
*)NULL
), ((val
*)NULL
), ((val
*)NULL
), ((val
*)NULL
), ((val
*)NULL
)); /* Direct call parser_prod#AMethPropdef#init_amethpropdef on <var22:AMethPropdef>*/
6812 var_ppropdefnode1
= var22
;
6813 var_node_list
= var_ppropdefnode1
;
6814 var23
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction51> */
6816 var24
= nit___nit__Parser___go_to(var_p
, var23
);
6819 nit___nit__Parser___push(var_p
, var24
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
6823 /* method parser#ReduceAction52#action for (self: ReduceAction52, Parser) */
6824 void nit__parser___nit__parser__ReduceAction52___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
6825 val
* var_p
/* var p: Parser */;
6826 val
* var_node_list
/* var node_list: nullable Object */;
6827 val
* var
/* : nullable Object */;
6828 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
6829 val
* var1
/* : nullable Object */;
6830 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
6831 val
* var2
/* : nullable Object */;
6832 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
6833 val
* var3
/* : nullable Object */;
6834 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
6835 val
* var4
/* : nullable Object */;
6836 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
6837 val
* var5
/* : nullable Object */;
6838 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6839 val
* var6
/* : nullable Object */;
6840 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6841 val
* var_pdocnode2
/* var pdocnode2: nullable Object */;
6842 short int var7
/* : Bool */;
6845 val
* var_tkwredefnode3
/* var tkwredefnode3: nullable Object */;
6846 short int var8
/* : Bool */;
6849 val
* var_pvisibilitynode4
/* var pvisibilitynode4: nullable Object */;
6850 short int var11
/* : Bool */;
6853 val
* var_tkwnewnode7
/* var tkwnewnode7: nullable Object */;
6854 short int var14
/* : Bool */;
6857 val
* var_pmethidnode8
/* var pmethidnode8: nullable Object */;
6858 short int var17
/* : Bool */;
6861 val
* var_psignaturenode9
/* var psignaturenode9: nullable Object */;
6862 short int var20
/* : Bool */;
6865 val
* var_pannotationsnode10
/* var pannotationsnode10: nullable Object */;
6866 short int var23
/* : Bool */;
6869 val
* var26
/* : AMethPropdef */;
6870 val
* var_ppropdefnode1
/* var ppropdefnode1: nullable AMethPropdef */;
6871 long var27
/* : Int */;
6872 long var28
/* : Int */;
6874 var_node_list
= ((val
*)NULL
);
6876 var
= nit___nit__Parser___pop(var_p
);
6878 var_nodearraylist7
= var
;
6880 var1
= nit___nit__Parser___pop(var_p
);
6882 var_nodearraylist6
= var1
;
6884 var2
= nit___nit__Parser___pop(var_p
);
6886 var_nodearraylist5
= var2
;
6888 var3
= nit___nit__Parser___pop(var_p
);
6890 var_nodearraylist4
= var3
;
6892 var4
= nit___nit__Parser___pop(var_p
);
6894 var_nodearraylist3
= var4
;
6896 var5
= nit___nit__Parser___pop(var_p
);
6898 var_nodearraylist2
= var5
;
6900 var6
= nit___nit__Parser___pop(var_p
);
6902 var_nodearraylist1
= var6
;
6903 var_pdocnode2
= var_nodearraylist1
;
6904 /* <var_pdocnode2:nullable Object> isa nullable ADoc */
6905 cltype
= type_nullable__nit__ADoc
.color
;
6906 idtype
= type_nullable__nit__ADoc
.id
;
6907 if(var_pdocnode2
== NULL
) {
6910 if(cltype
>= (((long)var_pdocnode2
&3)?type_info
[((long)var_pdocnode2
&3)]:var_pdocnode2
->type
)->table_size
) {
6913 var7
= (((long)var_pdocnode2
&3)?type_info
[((long)var_pdocnode2
&3)]:var_pdocnode2
->type
)->type_table
[cltype
] == idtype
;
6916 if (unlikely(!var7
)) {
6917 PRINT_ERROR("Runtime error: %s", "Assert failed");
6918 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2528);
6921 var_tkwredefnode3
= var_nodearraylist2
;
6922 /* <var_tkwredefnode3:nullable Object> isa nullable TKwredef */
6923 cltype9
= type_nullable__nit__TKwredef
.color
;
6924 idtype10
= type_nullable__nit__TKwredef
.id
;
6925 if(var_tkwredefnode3
== NULL
) {
6928 if(cltype9
>= (((long)var_tkwredefnode3
&3)?type_info
[((long)var_tkwredefnode3
&3)]:var_tkwredefnode3
->type
)->table_size
) {
6931 var8
= (((long)var_tkwredefnode3
&3)?type_info
[((long)var_tkwredefnode3
&3)]:var_tkwredefnode3
->type
)->type_table
[cltype9
] == idtype10
;
6934 if (unlikely(!var8
)) {
6935 PRINT_ERROR("Runtime error: %s", "Assert failed");
6936 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2530);
6939 var_pvisibilitynode4
= var_nodearraylist3
;
6940 /* <var_pvisibilitynode4:nullable Object> isa nullable AVisibility */
6941 cltype12
= type_nullable__nit__AVisibility
.color
;
6942 idtype13
= type_nullable__nit__AVisibility
.id
;
6943 if(var_pvisibilitynode4
== NULL
) {
6946 if(cltype12
>= (((long)var_pvisibilitynode4
&3)?type_info
[((long)var_pvisibilitynode4
&3)]:var_pvisibilitynode4
->type
)->table_size
) {
6949 var11
= (((long)var_pvisibilitynode4
&3)?type_info
[((long)var_pvisibilitynode4
&3)]:var_pvisibilitynode4
->type
)->type_table
[cltype12
] == idtype13
;
6952 if (unlikely(!var11
)) {
6953 PRINT_ERROR("Runtime error: %s", "Assert failed");
6954 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2532);
6957 var_tkwnewnode7
= var_nodearraylist4
;
6958 /* <var_tkwnewnode7:nullable Object> isa nullable TKwnew */
6959 cltype15
= type_nullable__nit__TKwnew
.color
;
6960 idtype16
= type_nullable__nit__TKwnew
.id
;
6961 if(var_tkwnewnode7
== NULL
) {
6964 if(cltype15
>= (((long)var_tkwnewnode7
&3)?type_info
[((long)var_tkwnewnode7
&3)]:var_tkwnewnode7
->type
)->table_size
) {
6967 var14
= (((long)var_tkwnewnode7
&3)?type_info
[((long)var_tkwnewnode7
&3)]:var_tkwnewnode7
->type
)->type_table
[cltype15
] == idtype16
;
6970 if (unlikely(!var14
)) {
6971 PRINT_ERROR("Runtime error: %s", "Assert failed");
6972 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2534);
6975 var_pmethidnode8
= var_nodearraylist5
;
6976 /* <var_pmethidnode8:nullable Object> isa nullable AMethid */
6977 cltype18
= type_nullable__nit__AMethid
.color
;
6978 idtype19
= type_nullable__nit__AMethid
.id
;
6979 if(var_pmethidnode8
== NULL
) {
6982 if(cltype18
>= (((long)var_pmethidnode8
&3)?type_info
[((long)var_pmethidnode8
&3)]:var_pmethidnode8
->type
)->table_size
) {
6985 var17
= (((long)var_pmethidnode8
&3)?type_info
[((long)var_pmethidnode8
&3)]:var_pmethidnode8
->type
)->type_table
[cltype18
] == idtype19
;
6988 if (unlikely(!var17
)) {
6989 PRINT_ERROR("Runtime error: %s", "Assert failed");
6990 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2536);
6993 var_psignaturenode9
= var_nodearraylist6
;
6994 /* <var_psignaturenode9:nullable Object> isa nullable ASignature */
6995 cltype21
= type_nullable__nit__ASignature
.color
;
6996 idtype22
= type_nullable__nit__ASignature
.id
;
6997 if(var_psignaturenode9
== NULL
) {
7000 if(cltype21
>= (((long)var_psignaturenode9
&3)?type_info
[((long)var_psignaturenode9
&3)]:var_psignaturenode9
->type
)->table_size
) {
7003 var20
= (((long)var_psignaturenode9
&3)?type_info
[((long)var_psignaturenode9
&3)]:var_psignaturenode9
->type
)->type_table
[cltype21
] == idtype22
;
7006 if (unlikely(!var20
)) {
7007 PRINT_ERROR("Runtime error: %s", "Assert failed");
7008 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2538);
7011 var_pannotationsnode10
= var_nodearraylist7
;
7012 /* <var_pannotationsnode10:nullable Object> isa nullable AAnnotations */
7013 cltype24
= type_nullable__nit__AAnnotations
.color
;
7014 idtype25
= type_nullable__nit__AAnnotations
.id
;
7015 if(var_pannotationsnode10
== NULL
) {
7018 if(cltype24
>= (((long)var_pannotationsnode10
&3)?type_info
[((long)var_pannotationsnode10
&3)]:var_pannotationsnode10
->type
)->table_size
) {
7021 var23
= (((long)var_pannotationsnode10
&3)?type_info
[((long)var_pannotationsnode10
&3)]:var_pannotationsnode10
->type
)->type_table
[cltype24
] == idtype25
;
7024 if (unlikely(!var23
)) {
7025 PRINT_ERROR("Runtime error: %s", "Assert failed");
7026 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2540);
7029 var26
= NEW_nit__AMethPropdef(&type_nit__AMethPropdef
);
7031 nit__parser_prod___AMethPropdef___init_amethpropdef(var26
, var_pdocnode2
, var_tkwredefnode3
, var_pvisibilitynode4
, ((val
*)NULL
), ((val
*)NULL
), var_tkwnewnode7
, var_pmethidnode8
, var_psignaturenode9
, var_pannotationsnode10
, ((val
*)NULL
), ((val
*)NULL
), ((val
*)NULL
), ((val
*)NULL
), ((val
*)NULL
)); /* Direct call parser_prod#AMethPropdef#init_amethpropdef on <var26:AMethPropdef>*/
7033 var_ppropdefnode1
= var26
;
7034 var_node_list
= var_ppropdefnode1
;
7035 var27
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction52> */
7037 var28
= nit___nit__Parser___go_to(var_p
, var27
);
7040 nit___nit__Parser___push(var_p
, var28
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
7044 /* method parser#ReduceAction53#action for (self: ReduceAction53, Parser) */
7045 void nit__parser___nit__parser__ReduceAction53___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
7046 val
* var_p
/* var p: Parser */;
7047 val
* var_node_list
/* var node_list: nullable Object */;
7048 val
* var
/* : nullable Object */;
7049 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
7050 val
* var1
/* : nullable Object */;
7051 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
7052 val
* var2
/* : nullable Object */;
7053 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
7054 val
* var3
/* : nullable Object */;
7055 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
7056 val
* var4
/* : nullable Object */;
7057 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
7058 val
* var5
/* : nullable Object */;
7059 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
7060 val
* var6
/* : nullable Object */;
7061 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7062 val
* var7
/* : nullable Object */;
7063 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7064 val
* var_pdocnode2
/* var pdocnode2: nullable Object */;
7065 short int var8
/* : Bool */;
7068 val
* var_tkwredefnode3
/* var tkwredefnode3: nullable Object */;
7069 short int var9
/* : Bool */;
7072 val
* var_pvisibilitynode4
/* var pvisibilitynode4: nullable Object */;
7073 short int var12
/* : Bool */;
7076 val
* var_tkwnewnode7
/* var tkwnewnode7: nullable Object */;
7077 short int var15
/* : Bool */;
7080 val
* var_psignaturenode9
/* var psignaturenode9: nullable Object */;
7081 short int var18
/* : Bool */;
7084 val
* var_tkwdonode13
/* var tkwdonode13: nullable Object */;
7085 short int var21
/* : Bool */;
7088 val
* var_pexprnode14
/* var pexprnode14: nullable Object */;
7089 short int var24
/* : Bool */;
7092 val
* var_tkwendnode15
/* var tkwendnode15: nullable Object */;
7093 short int var27
/* : Bool */;
7096 val
* var30
/* : AMethPropdef */;
7097 val
* var_ppropdefnode1
/* var ppropdefnode1: nullable AMethPropdef */;
7098 long var31
/* : Int */;
7099 long var32
/* : Int */;
7101 var_node_list
= ((val
*)NULL
);
7103 var
= nit___nit__Parser___pop(var_p
);
7105 var_nodearraylist8
= var
;
7107 var1
= nit___nit__Parser___pop(var_p
);
7109 var_nodearraylist7
= var1
;
7111 var2
= nit___nit__Parser___pop(var_p
);
7113 var_nodearraylist6
= var2
;
7115 var3
= nit___nit__Parser___pop(var_p
);
7117 var_nodearraylist5
= var3
;
7119 var4
= nit___nit__Parser___pop(var_p
);
7121 var_nodearraylist4
= var4
;
7123 var5
= nit___nit__Parser___pop(var_p
);
7125 var_nodearraylist3
= var5
;
7127 var6
= nit___nit__Parser___pop(var_p
);
7129 var_nodearraylist2
= var6
;
7131 var7
= nit___nit__Parser___pop(var_p
);
7133 var_nodearraylist1
= var7
;
7134 var_pdocnode2
= var_nodearraylist1
;
7135 /* <var_pdocnode2:nullable Object> isa nullable ADoc */
7136 cltype
= type_nullable__nit__ADoc
.color
;
7137 idtype
= type_nullable__nit__ADoc
.id
;
7138 if(var_pdocnode2
== NULL
) {
7141 if(cltype
>= (((long)var_pdocnode2
&3)?type_info
[((long)var_pdocnode2
&3)]:var_pdocnode2
->type
)->table_size
) {
7144 var8
= (((long)var_pdocnode2
&3)?type_info
[((long)var_pdocnode2
&3)]:var_pdocnode2
->type
)->type_table
[cltype
] == idtype
;
7147 if (unlikely(!var8
)) {
7148 PRINT_ERROR("Runtime error: %s", "Assert failed");
7149 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2575);
7152 var_tkwredefnode3
= var_nodearraylist2
;
7153 /* <var_tkwredefnode3:nullable Object> isa nullable TKwredef */
7154 cltype10
= type_nullable__nit__TKwredef
.color
;
7155 idtype11
= type_nullable__nit__TKwredef
.id
;
7156 if(var_tkwredefnode3
== NULL
) {
7159 if(cltype10
>= (((long)var_tkwredefnode3
&3)?type_info
[((long)var_tkwredefnode3
&3)]:var_tkwredefnode3
->type
)->table_size
) {
7162 var9
= (((long)var_tkwredefnode3
&3)?type_info
[((long)var_tkwredefnode3
&3)]:var_tkwredefnode3
->type
)->type_table
[cltype10
] == idtype11
;
7165 if (unlikely(!var9
)) {
7166 PRINT_ERROR("Runtime error: %s", "Assert failed");
7167 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2577);
7170 var_pvisibilitynode4
= var_nodearraylist3
;
7171 /* <var_pvisibilitynode4:nullable Object> isa nullable AVisibility */
7172 cltype13
= type_nullable__nit__AVisibility
.color
;
7173 idtype14
= type_nullable__nit__AVisibility
.id
;
7174 if(var_pvisibilitynode4
== NULL
) {
7177 if(cltype13
>= (((long)var_pvisibilitynode4
&3)?type_info
[((long)var_pvisibilitynode4
&3)]:var_pvisibilitynode4
->type
)->table_size
) {
7180 var12
= (((long)var_pvisibilitynode4
&3)?type_info
[((long)var_pvisibilitynode4
&3)]:var_pvisibilitynode4
->type
)->type_table
[cltype13
] == idtype14
;
7183 if (unlikely(!var12
)) {
7184 PRINT_ERROR("Runtime error: %s", "Assert failed");
7185 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2579);
7188 var_tkwnewnode7
= var_nodearraylist4
;
7189 /* <var_tkwnewnode7:nullable Object> isa nullable TKwnew */
7190 cltype16
= type_nullable__nit__TKwnew
.color
;
7191 idtype17
= type_nullable__nit__TKwnew
.id
;
7192 if(var_tkwnewnode7
== NULL
) {
7195 if(cltype16
>= (((long)var_tkwnewnode7
&3)?type_info
[((long)var_tkwnewnode7
&3)]:var_tkwnewnode7
->type
)->table_size
) {
7198 var15
= (((long)var_tkwnewnode7
&3)?type_info
[((long)var_tkwnewnode7
&3)]:var_tkwnewnode7
->type
)->type_table
[cltype16
] == idtype17
;
7201 if (unlikely(!var15
)) {
7202 PRINT_ERROR("Runtime error: %s", "Assert failed");
7203 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2581);
7206 var_psignaturenode9
= var_nodearraylist5
;
7207 /* <var_psignaturenode9:nullable Object> isa nullable ASignature */
7208 cltype19
= type_nullable__nit__ASignature
.color
;
7209 idtype20
= type_nullable__nit__ASignature
.id
;
7210 if(var_psignaturenode9
== NULL
) {
7213 if(cltype19
>= (((long)var_psignaturenode9
&3)?type_info
[((long)var_psignaturenode9
&3)]:var_psignaturenode9
->type
)->table_size
) {
7216 var18
= (((long)var_psignaturenode9
&3)?type_info
[((long)var_psignaturenode9
&3)]:var_psignaturenode9
->type
)->type_table
[cltype19
] == idtype20
;
7219 if (unlikely(!var18
)) {
7220 PRINT_ERROR("Runtime error: %s", "Assert failed");
7221 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2583);
7224 var_tkwdonode13
= var_nodearraylist6
;
7225 /* <var_tkwdonode13:nullable Object> isa nullable TKwdo */
7226 cltype22
= type_nullable__nit__TKwdo
.color
;
7227 idtype23
= type_nullable__nit__TKwdo
.id
;
7228 if(var_tkwdonode13
== NULL
) {
7231 if(cltype22
>= (((long)var_tkwdonode13
&3)?type_info
[((long)var_tkwdonode13
&3)]:var_tkwdonode13
->type
)->table_size
) {
7234 var21
= (((long)var_tkwdonode13
&3)?type_info
[((long)var_tkwdonode13
&3)]:var_tkwdonode13
->type
)->type_table
[cltype22
] == idtype23
;
7237 if (unlikely(!var21
)) {
7238 PRINT_ERROR("Runtime error: %s", "Assert failed");
7239 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2585);
7242 var_pexprnode14
= var_nodearraylist7
;
7243 /* <var_pexprnode14:nullable Object> isa nullable AExpr */
7244 cltype25
= type_nullable__nit__AExpr
.color
;
7245 idtype26
= type_nullable__nit__AExpr
.id
;
7246 if(var_pexprnode14
== NULL
) {
7249 if(cltype25
>= (((long)var_pexprnode14
&3)?type_info
[((long)var_pexprnode14
&3)]:var_pexprnode14
->type
)->table_size
) {
7252 var24
= (((long)var_pexprnode14
&3)?type_info
[((long)var_pexprnode14
&3)]:var_pexprnode14
->type
)->type_table
[cltype25
] == idtype26
;
7255 if (unlikely(!var24
)) {
7256 PRINT_ERROR("Runtime error: %s", "Assert failed");
7257 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2587);
7260 var_tkwendnode15
= var_nodearraylist8
;
7261 /* <var_tkwendnode15:nullable Object> isa nullable TKwend */
7262 cltype28
= type_nullable__nit__TKwend
.color
;
7263 idtype29
= type_nullable__nit__TKwend
.id
;
7264 if(var_tkwendnode15
== NULL
) {
7267 if(cltype28
>= (((long)var_tkwendnode15
&3)?type_info
[((long)var_tkwendnode15
&3)]:var_tkwendnode15
->type
)->table_size
) {
7270 var27
= (((long)var_tkwendnode15
&3)?type_info
[((long)var_tkwendnode15
&3)]:var_tkwendnode15
->type
)->type_table
[cltype28
] == idtype29
;
7273 if (unlikely(!var27
)) {
7274 PRINT_ERROR("Runtime error: %s", "Assert failed");
7275 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2589);
7278 var30
= NEW_nit__AMethPropdef(&type_nit__AMethPropdef
);
7280 nit__parser_prod___AMethPropdef___init_amethpropdef(var30
, var_pdocnode2
, var_tkwredefnode3
, var_pvisibilitynode4
, ((val
*)NULL
), ((val
*)NULL
), var_tkwnewnode7
, ((val
*)NULL
), var_psignaturenode9
, ((val
*)NULL
), ((val
*)NULL
), ((val
*)NULL
), var_tkwdonode13
, var_pexprnode14
, var_tkwendnode15
); /* Direct call parser_prod#AMethPropdef#init_amethpropdef on <var30:AMethPropdef>*/
7282 var_ppropdefnode1
= var30
;
7283 var_node_list
= var_ppropdefnode1
;
7284 var31
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction53> */
7286 var32
= nit___nit__Parser___go_to(var_p
, var31
);
7289 nit___nit__Parser___push(var_p
, var32
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
7293 /* method parser#ReduceAction54#action for (self: ReduceAction54, Parser) */
7294 void nit__parser___nit__parser__ReduceAction54___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
7295 val
* var_p
/* var p: Parser */;
7296 val
* var_node_list
/* var node_list: nullable Object */;
7297 val
* var
/* : nullable Object */;
7298 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
7299 val
* var1
/* : nullable Object */;
7300 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
7301 val
* var2
/* : nullable Object */;
7302 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
7303 val
* var3
/* : nullable Object */;
7304 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
7305 val
* var4
/* : nullable Object */;
7306 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
7307 val
* var5
/* : nullable Object */;
7308 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
7309 val
* var6
/* : nullable Object */;
7310 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
7311 val
* var7
/* : nullable Object */;
7312 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7313 val
* var8
/* : nullable Object */;
7314 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7315 val
* var_pdocnode2
/* var pdocnode2: nullable Object */;
7316 short int var9
/* : Bool */;
7319 val
* var_tkwredefnode3
/* var tkwredefnode3: nullable Object */;
7320 short int var10
/* : Bool */;
7323 val
* var_pvisibilitynode4
/* var pvisibilitynode4: nullable Object */;
7324 short int var13
/* : Bool */;
7327 val
* var_tkwnewnode7
/* var tkwnewnode7: nullable Object */;
7328 short int var16
/* : Bool */;
7331 val
* var_pmethidnode8
/* var pmethidnode8: nullable Object */;
7332 short int var19
/* : Bool */;
7335 val
* var_psignaturenode9
/* var psignaturenode9: nullable Object */;
7336 short int var22
/* : Bool */;
7339 val
* var_tkwdonode13
/* var tkwdonode13: nullable Object */;
7340 short int var25
/* : Bool */;
7343 val
* var_pexprnode14
/* var pexprnode14: nullable Object */;
7344 short int var28
/* : Bool */;
7347 val
* var_tkwendnode15
/* var tkwendnode15: nullable Object */;
7348 short int var31
/* : Bool */;
7351 val
* var34
/* : AMethPropdef */;
7352 val
* var_ppropdefnode1
/* var ppropdefnode1: nullable AMethPropdef */;
7353 long var35
/* : Int */;
7354 long var36
/* : Int */;
7356 var_node_list
= ((val
*)NULL
);
7358 var
= nit___nit__Parser___pop(var_p
);
7360 var_nodearraylist9
= var
;
7362 var1
= nit___nit__Parser___pop(var_p
);
7364 var_nodearraylist8
= var1
;
7366 var2
= nit___nit__Parser___pop(var_p
);
7368 var_nodearraylist7
= var2
;
7370 var3
= nit___nit__Parser___pop(var_p
);
7372 var_nodearraylist6
= var3
;
7374 var4
= nit___nit__Parser___pop(var_p
);
7376 var_nodearraylist5
= var4
;
7378 var5
= nit___nit__Parser___pop(var_p
);
7380 var_nodearraylist4
= var5
;
7382 var6
= nit___nit__Parser___pop(var_p
);
7384 var_nodearraylist3
= var6
;
7386 var7
= nit___nit__Parser___pop(var_p
);
7388 var_nodearraylist2
= var7
;
7390 var8
= nit___nit__Parser___pop(var_p
);
7392 var_nodearraylist1
= var8
;
7393 var_pdocnode2
= var_nodearraylist1
;
7394 /* <var_pdocnode2:nullable Object> isa nullable ADoc */
7395 cltype
= type_nullable__nit__ADoc
.color
;
7396 idtype
= type_nullable__nit__ADoc
.id
;
7397 if(var_pdocnode2
== NULL
) {
7400 if(cltype
>= (((long)var_pdocnode2
&3)?type_info
[((long)var_pdocnode2
&3)]:var_pdocnode2
->type
)->table_size
) {
7403 var9
= (((long)var_pdocnode2
&3)?type_info
[((long)var_pdocnode2
&3)]:var_pdocnode2
->type
)->type_table
[cltype
] == idtype
;
7406 if (unlikely(!var9
)) {
7407 PRINT_ERROR("Runtime error: %s", "Assert failed");
7408 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2625);
7411 var_tkwredefnode3
= var_nodearraylist2
;
7412 /* <var_tkwredefnode3:nullable Object> isa nullable TKwredef */
7413 cltype11
= type_nullable__nit__TKwredef
.color
;
7414 idtype12
= type_nullable__nit__TKwredef
.id
;
7415 if(var_tkwredefnode3
== NULL
) {
7418 if(cltype11
>= (((long)var_tkwredefnode3
&3)?type_info
[((long)var_tkwredefnode3
&3)]:var_tkwredefnode3
->type
)->table_size
) {
7421 var10
= (((long)var_tkwredefnode3
&3)?type_info
[((long)var_tkwredefnode3
&3)]:var_tkwredefnode3
->type
)->type_table
[cltype11
] == idtype12
;
7424 if (unlikely(!var10
)) {
7425 PRINT_ERROR("Runtime error: %s", "Assert failed");
7426 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2627);
7429 var_pvisibilitynode4
= var_nodearraylist3
;
7430 /* <var_pvisibilitynode4:nullable Object> isa nullable AVisibility */
7431 cltype14
= type_nullable__nit__AVisibility
.color
;
7432 idtype15
= type_nullable__nit__AVisibility
.id
;
7433 if(var_pvisibilitynode4
== NULL
) {
7436 if(cltype14
>= (((long)var_pvisibilitynode4
&3)?type_info
[((long)var_pvisibilitynode4
&3)]:var_pvisibilitynode4
->type
)->table_size
) {
7439 var13
= (((long)var_pvisibilitynode4
&3)?type_info
[((long)var_pvisibilitynode4
&3)]:var_pvisibilitynode4
->type
)->type_table
[cltype14
] == idtype15
;
7442 if (unlikely(!var13
)) {
7443 PRINT_ERROR("Runtime error: %s", "Assert failed");
7444 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2629);
7447 var_tkwnewnode7
= var_nodearraylist4
;
7448 /* <var_tkwnewnode7:nullable Object> isa nullable TKwnew */
7449 cltype17
= type_nullable__nit__TKwnew
.color
;
7450 idtype18
= type_nullable__nit__TKwnew
.id
;
7451 if(var_tkwnewnode7
== NULL
) {
7454 if(cltype17
>= (((long)var_tkwnewnode7
&3)?type_info
[((long)var_tkwnewnode7
&3)]:var_tkwnewnode7
->type
)->table_size
) {
7457 var16
= (((long)var_tkwnewnode7
&3)?type_info
[((long)var_tkwnewnode7
&3)]:var_tkwnewnode7
->type
)->type_table
[cltype17
] == idtype18
;
7460 if (unlikely(!var16
)) {
7461 PRINT_ERROR("Runtime error: %s", "Assert failed");
7462 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2631);
7465 var_pmethidnode8
= var_nodearraylist5
;
7466 /* <var_pmethidnode8:nullable Object> isa nullable AMethid */
7467 cltype20
= type_nullable__nit__AMethid
.color
;
7468 idtype21
= type_nullable__nit__AMethid
.id
;
7469 if(var_pmethidnode8
== NULL
) {
7472 if(cltype20
>= (((long)var_pmethidnode8
&3)?type_info
[((long)var_pmethidnode8
&3)]:var_pmethidnode8
->type
)->table_size
) {
7475 var19
= (((long)var_pmethidnode8
&3)?type_info
[((long)var_pmethidnode8
&3)]:var_pmethidnode8
->type
)->type_table
[cltype20
] == idtype21
;
7478 if (unlikely(!var19
)) {
7479 PRINT_ERROR("Runtime error: %s", "Assert failed");
7480 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2633);
7483 var_psignaturenode9
= var_nodearraylist6
;
7484 /* <var_psignaturenode9:nullable Object> isa nullable ASignature */
7485 cltype23
= type_nullable__nit__ASignature
.color
;
7486 idtype24
= type_nullable__nit__ASignature
.id
;
7487 if(var_psignaturenode9
== NULL
) {
7490 if(cltype23
>= (((long)var_psignaturenode9
&3)?type_info
[((long)var_psignaturenode9
&3)]:var_psignaturenode9
->type
)->table_size
) {
7493 var22
= (((long)var_psignaturenode9
&3)?type_info
[((long)var_psignaturenode9
&3)]:var_psignaturenode9
->type
)->type_table
[cltype23
] == idtype24
;
7496 if (unlikely(!var22
)) {
7497 PRINT_ERROR("Runtime error: %s", "Assert failed");
7498 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2635);
7501 var_tkwdonode13
= var_nodearraylist7
;
7502 /* <var_tkwdonode13:nullable Object> isa nullable TKwdo */
7503 cltype26
= type_nullable__nit__TKwdo
.color
;
7504 idtype27
= type_nullable__nit__TKwdo
.id
;
7505 if(var_tkwdonode13
== NULL
) {
7508 if(cltype26
>= (((long)var_tkwdonode13
&3)?type_info
[((long)var_tkwdonode13
&3)]:var_tkwdonode13
->type
)->table_size
) {
7511 var25
= (((long)var_tkwdonode13
&3)?type_info
[((long)var_tkwdonode13
&3)]:var_tkwdonode13
->type
)->type_table
[cltype26
] == idtype27
;
7514 if (unlikely(!var25
)) {
7515 PRINT_ERROR("Runtime error: %s", "Assert failed");
7516 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2637);
7519 var_pexprnode14
= var_nodearraylist8
;
7520 /* <var_pexprnode14:nullable Object> isa nullable AExpr */
7521 cltype29
= type_nullable__nit__AExpr
.color
;
7522 idtype30
= type_nullable__nit__AExpr
.id
;
7523 if(var_pexprnode14
== NULL
) {
7526 if(cltype29
>= (((long)var_pexprnode14
&3)?type_info
[((long)var_pexprnode14
&3)]:var_pexprnode14
->type
)->table_size
) {
7529 var28
= (((long)var_pexprnode14
&3)?type_info
[((long)var_pexprnode14
&3)]:var_pexprnode14
->type
)->type_table
[cltype29
] == idtype30
;
7532 if (unlikely(!var28
)) {
7533 PRINT_ERROR("Runtime error: %s", "Assert failed");
7534 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2639);
7537 var_tkwendnode15
= var_nodearraylist9
;
7538 /* <var_tkwendnode15:nullable Object> isa nullable TKwend */
7539 cltype32
= type_nullable__nit__TKwend
.color
;
7540 idtype33
= type_nullable__nit__TKwend
.id
;
7541 if(var_tkwendnode15
== NULL
) {
7544 if(cltype32
>= (((long)var_tkwendnode15
&3)?type_info
[((long)var_tkwendnode15
&3)]:var_tkwendnode15
->type
)->table_size
) {
7547 var31
= (((long)var_tkwendnode15
&3)?type_info
[((long)var_tkwendnode15
&3)]:var_tkwendnode15
->type
)->type_table
[cltype32
] == idtype33
;
7550 if (unlikely(!var31
)) {
7551 PRINT_ERROR("Runtime error: %s", "Assert failed");
7552 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2641);
7555 var34
= NEW_nit__AMethPropdef(&type_nit__AMethPropdef
);
7557 nit__parser_prod___AMethPropdef___init_amethpropdef(var34
, var_pdocnode2
, var_tkwredefnode3
, var_pvisibilitynode4
, ((val
*)NULL
), ((val
*)NULL
), var_tkwnewnode7
, var_pmethidnode8
, var_psignaturenode9
, ((val
*)NULL
), ((val
*)NULL
), ((val
*)NULL
), var_tkwdonode13
, var_pexprnode14
, var_tkwendnode15
); /* Direct call parser_prod#AMethPropdef#init_amethpropdef on <var34:AMethPropdef>*/
7559 var_ppropdefnode1
= var34
;
7560 var_node_list
= var_ppropdefnode1
;
7561 var35
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction54> */
7563 var36
= nit___nit__Parser___go_to(var_p
, var35
);
7566 nit___nit__Parser___push(var_p
, var36
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
7570 /* method parser#ReduceAction55#action for (self: ReduceAction55, Parser) */
7571 void nit__parser___nit__parser__ReduceAction55___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
7572 val
* var_p
/* var p: Parser */;
7573 val
* var_node_list
/* var node_list: nullable Object */;
7574 val
* var
/* : nullable Object */;
7575 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
7576 val
* var1
/* : nullable Object */;
7577 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
7578 val
* var2
/* : nullable Object */;
7579 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
7580 val
* var3
/* : nullable Object */;
7581 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
7582 val
* var4
/* : nullable Object */;
7583 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
7584 val
* var5
/* : nullable Object */;
7585 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
7586 val
* var6
/* : nullable Object */;
7587 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
7588 val
* var7
/* : nullable Object */;
7589 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7590 val
* var8
/* : nullable Object */;
7591 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7592 val
* var_pdocnode2
/* var pdocnode2: nullable Object */;
7593 short int var9
/* : Bool */;
7596 val
* var_tkwredefnode3
/* var tkwredefnode3: nullable Object */;
7597 short int var10
/* : Bool */;
7600 val
* var_pvisibilitynode4
/* var pvisibilitynode4: nullable Object */;
7601 short int var13
/* : Bool */;
7604 val
* var_tkwnewnode7
/* var tkwnewnode7: nullable Object */;
7605 short int var16
/* : Bool */;
7608 val
* var_psignaturenode9
/* var psignaturenode9: nullable Object */;
7609 short int var19
/* : Bool */;
7612 val
* var_pannotationsnode10
/* var pannotationsnode10: nullable Object */;
7613 short int var22
/* : Bool */;
7616 val
* var_tkwdonode13
/* var tkwdonode13: nullable Object */;
7617 short int var25
/* : Bool */;
7620 val
* var_pexprnode14
/* var pexprnode14: nullable Object */;
7621 short int var28
/* : Bool */;
7624 val
* var_tkwendnode15
/* var tkwendnode15: nullable Object */;
7625 short int var31
/* : Bool */;
7628 val
* var34
/* : AMethPropdef */;
7629 val
* var_ppropdefnode1
/* var ppropdefnode1: nullable AMethPropdef */;
7630 long var35
/* : Int */;
7631 long var36
/* : Int */;
7633 var_node_list
= ((val
*)NULL
);
7635 var
= nit___nit__Parser___pop(var_p
);
7637 var_nodearraylist9
= var
;
7639 var1
= nit___nit__Parser___pop(var_p
);
7641 var_nodearraylist8
= var1
;
7643 var2
= nit___nit__Parser___pop(var_p
);
7645 var_nodearraylist7
= var2
;
7647 var3
= nit___nit__Parser___pop(var_p
);
7649 var_nodearraylist6
= var3
;
7651 var4
= nit___nit__Parser___pop(var_p
);
7653 var_nodearraylist5
= var4
;
7655 var5
= nit___nit__Parser___pop(var_p
);
7657 var_nodearraylist4
= var5
;
7659 var6
= nit___nit__Parser___pop(var_p
);
7661 var_nodearraylist3
= var6
;
7663 var7
= nit___nit__Parser___pop(var_p
);
7665 var_nodearraylist2
= var7
;
7667 var8
= nit___nit__Parser___pop(var_p
);
7669 var_nodearraylist1
= var8
;
7670 var_pdocnode2
= var_nodearraylist1
;
7671 /* <var_pdocnode2:nullable Object> isa nullable ADoc */
7672 cltype
= type_nullable__nit__ADoc
.color
;
7673 idtype
= type_nullable__nit__ADoc
.id
;
7674 if(var_pdocnode2
== NULL
) {
7677 if(cltype
>= (((long)var_pdocnode2
&3)?type_info
[((long)var_pdocnode2
&3)]:var_pdocnode2
->type
)->table_size
) {
7680 var9
= (((long)var_pdocnode2
&3)?type_info
[((long)var_pdocnode2
&3)]:var_pdocnode2
->type
)->type_table
[cltype
] == idtype
;
7683 if (unlikely(!var9
)) {
7684 PRINT_ERROR("Runtime error: %s", "Assert failed");
7685 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2677);
7688 var_tkwredefnode3
= var_nodearraylist2
;
7689 /* <var_tkwredefnode3:nullable Object> isa nullable TKwredef */
7690 cltype11
= type_nullable__nit__TKwredef
.color
;
7691 idtype12
= type_nullable__nit__TKwredef
.id
;
7692 if(var_tkwredefnode3
== NULL
) {
7695 if(cltype11
>= (((long)var_tkwredefnode3
&3)?type_info
[((long)var_tkwredefnode3
&3)]:var_tkwredefnode3
->type
)->table_size
) {
7698 var10
= (((long)var_tkwredefnode3
&3)?type_info
[((long)var_tkwredefnode3
&3)]:var_tkwredefnode3
->type
)->type_table
[cltype11
] == idtype12
;
7701 if (unlikely(!var10
)) {
7702 PRINT_ERROR("Runtime error: %s", "Assert failed");
7703 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2679);
7706 var_pvisibilitynode4
= var_nodearraylist3
;
7707 /* <var_pvisibilitynode4:nullable Object> isa nullable AVisibility */
7708 cltype14
= type_nullable__nit__AVisibility
.color
;
7709 idtype15
= type_nullable__nit__AVisibility
.id
;
7710 if(var_pvisibilitynode4
== NULL
) {
7713 if(cltype14
>= (((long)var_pvisibilitynode4
&3)?type_info
[((long)var_pvisibilitynode4
&3)]:var_pvisibilitynode4
->type
)->table_size
) {
7716 var13
= (((long)var_pvisibilitynode4
&3)?type_info
[((long)var_pvisibilitynode4
&3)]:var_pvisibilitynode4
->type
)->type_table
[cltype14
] == idtype15
;
7719 if (unlikely(!var13
)) {
7720 PRINT_ERROR("Runtime error: %s", "Assert failed");
7721 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2681);
7724 var_tkwnewnode7
= var_nodearraylist4
;
7725 /* <var_tkwnewnode7:nullable Object> isa nullable TKwnew */
7726 cltype17
= type_nullable__nit__TKwnew
.color
;
7727 idtype18
= type_nullable__nit__TKwnew
.id
;
7728 if(var_tkwnewnode7
== NULL
) {
7731 if(cltype17
>= (((long)var_tkwnewnode7
&3)?type_info
[((long)var_tkwnewnode7
&3)]:var_tkwnewnode7
->type
)->table_size
) {
7734 var16
= (((long)var_tkwnewnode7
&3)?type_info
[((long)var_tkwnewnode7
&3)]:var_tkwnewnode7
->type
)->type_table
[cltype17
] == idtype18
;
7737 if (unlikely(!var16
)) {
7738 PRINT_ERROR("Runtime error: %s", "Assert failed");
7739 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2683);
7742 var_psignaturenode9
= var_nodearraylist5
;
7743 /* <var_psignaturenode9:nullable Object> isa nullable ASignature */
7744 cltype20
= type_nullable__nit__ASignature
.color
;
7745 idtype21
= type_nullable__nit__ASignature
.id
;
7746 if(var_psignaturenode9
== NULL
) {
7749 if(cltype20
>= (((long)var_psignaturenode9
&3)?type_info
[((long)var_psignaturenode9
&3)]:var_psignaturenode9
->type
)->table_size
) {
7752 var19
= (((long)var_psignaturenode9
&3)?type_info
[((long)var_psignaturenode9
&3)]:var_psignaturenode9
->type
)->type_table
[cltype20
] == idtype21
;
7755 if (unlikely(!var19
)) {
7756 PRINT_ERROR("Runtime error: %s", "Assert failed");
7757 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2685);
7760 var_pannotationsnode10
= var_nodearraylist6
;
7761 /* <var_pannotationsnode10:nullable Object> isa nullable AAnnotations */
7762 cltype23
= type_nullable__nit__AAnnotations
.color
;
7763 idtype24
= type_nullable__nit__AAnnotations
.id
;
7764 if(var_pannotationsnode10
== NULL
) {
7767 if(cltype23
>= (((long)var_pannotationsnode10
&3)?type_info
[((long)var_pannotationsnode10
&3)]:var_pannotationsnode10
->type
)->table_size
) {
7770 var22
= (((long)var_pannotationsnode10
&3)?type_info
[((long)var_pannotationsnode10
&3)]:var_pannotationsnode10
->type
)->type_table
[cltype23
] == idtype24
;
7773 if (unlikely(!var22
)) {
7774 PRINT_ERROR("Runtime error: %s", "Assert failed");
7775 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2687);
7778 var_tkwdonode13
= var_nodearraylist7
;
7779 /* <var_tkwdonode13:nullable Object> isa nullable TKwdo */
7780 cltype26
= type_nullable__nit__TKwdo
.color
;
7781 idtype27
= type_nullable__nit__TKwdo
.id
;
7782 if(var_tkwdonode13
== NULL
) {
7785 if(cltype26
>= (((long)var_tkwdonode13
&3)?type_info
[((long)var_tkwdonode13
&3)]:var_tkwdonode13
->type
)->table_size
) {
7788 var25
= (((long)var_tkwdonode13
&3)?type_info
[((long)var_tkwdonode13
&3)]:var_tkwdonode13
->type
)->type_table
[cltype26
] == idtype27
;
7791 if (unlikely(!var25
)) {
7792 PRINT_ERROR("Runtime error: %s", "Assert failed");
7793 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2689);
7796 var_pexprnode14
= var_nodearraylist8
;
7797 /* <var_pexprnode14:nullable Object> isa nullable AExpr */
7798 cltype29
= type_nullable__nit__AExpr
.color
;
7799 idtype30
= type_nullable__nit__AExpr
.id
;
7800 if(var_pexprnode14
== NULL
) {
7803 if(cltype29
>= (((long)var_pexprnode14
&3)?type_info
[((long)var_pexprnode14
&3)]:var_pexprnode14
->type
)->table_size
) {
7806 var28
= (((long)var_pexprnode14
&3)?type_info
[((long)var_pexprnode14
&3)]:var_pexprnode14
->type
)->type_table
[cltype29
] == idtype30
;
7809 if (unlikely(!var28
)) {
7810 PRINT_ERROR("Runtime error: %s", "Assert failed");
7811 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2691);
7814 var_tkwendnode15
= var_nodearraylist9
;
7815 /* <var_tkwendnode15:nullable Object> isa nullable TKwend */
7816 cltype32
= type_nullable__nit__TKwend
.color
;
7817 idtype33
= type_nullable__nit__TKwend
.id
;
7818 if(var_tkwendnode15
== NULL
) {
7821 if(cltype32
>= (((long)var_tkwendnode15
&3)?type_info
[((long)var_tkwendnode15
&3)]:var_tkwendnode15
->type
)->table_size
) {
7824 var31
= (((long)var_tkwendnode15
&3)?type_info
[((long)var_tkwendnode15
&3)]:var_tkwendnode15
->type
)->type_table
[cltype32
] == idtype33
;
7827 if (unlikely(!var31
)) {
7828 PRINT_ERROR("Runtime error: %s", "Assert failed");
7829 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2693);
7832 var34
= NEW_nit__AMethPropdef(&type_nit__AMethPropdef
);
7834 nit__parser_prod___AMethPropdef___init_amethpropdef(var34
, var_pdocnode2
, var_tkwredefnode3
, var_pvisibilitynode4
, ((val
*)NULL
), ((val
*)NULL
), var_tkwnewnode7
, ((val
*)NULL
), var_psignaturenode9
, var_pannotationsnode10
, ((val
*)NULL
), ((val
*)NULL
), var_tkwdonode13
, var_pexprnode14
, var_tkwendnode15
); /* Direct call parser_prod#AMethPropdef#init_amethpropdef on <var34:AMethPropdef>*/
7836 var_ppropdefnode1
= var34
;
7837 var_node_list
= var_ppropdefnode1
;
7838 var35
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction55> */
7840 var36
= nit___nit__Parser___go_to(var_p
, var35
);
7843 nit___nit__Parser___push(var_p
, var36
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
7847 /* method parser#ReduceAction56#action for (self: ReduceAction56, Parser) */
7848 void nit__parser___nit__parser__ReduceAction56___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
7849 val
* var_p
/* var p: Parser */;
7850 val
* var_node_list
/* var node_list: nullable Object */;
7851 val
* var
/* : nullable Object */;
7852 val
* var_nodearraylist10
/* var nodearraylist10: nullable Object */;
7853 val
* var1
/* : nullable Object */;
7854 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
7855 val
* var2
/* : nullable Object */;
7856 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
7857 val
* var3
/* : nullable Object */;
7858 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
7859 val
* var4
/* : nullable Object */;
7860 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
7861 val
* var5
/* : nullable Object */;
7862 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
7863 val
* var6
/* : nullable Object */;
7864 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
7865 val
* var7
/* : nullable Object */;
7866 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
7867 val
* var8
/* : nullable Object */;
7868 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7869 val
* var9
/* : nullable Object */;
7870 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7871 val
* var_pdocnode2
/* var pdocnode2: nullable Object */;
7872 short int var10
/* : Bool */;
7875 val
* var_tkwredefnode3
/* var tkwredefnode3: nullable Object */;
7876 short int var11
/* : Bool */;
7879 val
* var_pvisibilitynode4
/* var pvisibilitynode4: nullable Object */;
7880 short int var14
/* : Bool */;
7883 val
* var_tkwnewnode7
/* var tkwnewnode7: nullable Object */;
7884 short int var17
/* : Bool */;
7887 val
* var_pmethidnode8
/* var pmethidnode8: nullable Object */;
7888 short int var20
/* : Bool */;
7891 val
* var_psignaturenode9
/* var psignaturenode9: nullable Object */;
7892 short int var23
/* : Bool */;
7895 val
* var_pannotationsnode10
/* var pannotationsnode10: nullable Object */;
7896 short int var26
/* : Bool */;
7899 val
* var_tkwdonode13
/* var tkwdonode13: nullable Object */;
7900 short int var29
/* : Bool */;
7903 val
* var_pexprnode14
/* var pexprnode14: nullable Object */;
7904 short int var32
/* : Bool */;
7907 val
* var_tkwendnode15
/* var tkwendnode15: nullable Object */;
7908 short int var35
/* : Bool */;
7911 val
* var38
/* : AMethPropdef */;
7912 val
* var_ppropdefnode1
/* var ppropdefnode1: nullable AMethPropdef */;
7913 long var39
/* : Int */;
7914 long var40
/* : Int */;
7916 var_node_list
= ((val
*)NULL
);
7918 var
= nit___nit__Parser___pop(var_p
);
7920 var_nodearraylist10
= var
;
7922 var1
= nit___nit__Parser___pop(var_p
);
7924 var_nodearraylist9
= var1
;
7926 var2
= nit___nit__Parser___pop(var_p
);
7928 var_nodearraylist8
= var2
;
7930 var3
= nit___nit__Parser___pop(var_p
);
7932 var_nodearraylist7
= var3
;
7934 var4
= nit___nit__Parser___pop(var_p
);
7936 var_nodearraylist6
= var4
;
7938 var5
= nit___nit__Parser___pop(var_p
);
7940 var_nodearraylist5
= var5
;
7942 var6
= nit___nit__Parser___pop(var_p
);
7944 var_nodearraylist4
= var6
;
7946 var7
= nit___nit__Parser___pop(var_p
);
7948 var_nodearraylist3
= var7
;
7950 var8
= nit___nit__Parser___pop(var_p
);
7952 var_nodearraylist2
= var8
;
7954 var9
= nit___nit__Parser___pop(var_p
);
7956 var_nodearraylist1
= var9
;
7957 var_pdocnode2
= var_nodearraylist1
;
7958 /* <var_pdocnode2:nullable Object> isa nullable ADoc */
7959 cltype
= type_nullable__nit__ADoc
.color
;
7960 idtype
= type_nullable__nit__ADoc
.id
;
7961 if(var_pdocnode2
== NULL
) {
7964 if(cltype
>= (((long)var_pdocnode2
&3)?type_info
[((long)var_pdocnode2
&3)]:var_pdocnode2
->type
)->table_size
) {
7967 var10
= (((long)var_pdocnode2
&3)?type_info
[((long)var_pdocnode2
&3)]:var_pdocnode2
->type
)->type_table
[cltype
] == idtype
;
7970 if (unlikely(!var10
)) {
7971 PRINT_ERROR("Runtime error: %s", "Assert failed");
7972 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2730);
7975 var_tkwredefnode3
= var_nodearraylist2
;
7976 /* <var_tkwredefnode3:nullable Object> isa nullable TKwredef */
7977 cltype12
= type_nullable__nit__TKwredef
.color
;
7978 idtype13
= type_nullable__nit__TKwredef
.id
;
7979 if(var_tkwredefnode3
== NULL
) {
7982 if(cltype12
>= (((long)var_tkwredefnode3
&3)?type_info
[((long)var_tkwredefnode3
&3)]:var_tkwredefnode3
->type
)->table_size
) {
7985 var11
= (((long)var_tkwredefnode3
&3)?type_info
[((long)var_tkwredefnode3
&3)]:var_tkwredefnode3
->type
)->type_table
[cltype12
] == idtype13
;
7988 if (unlikely(!var11
)) {
7989 PRINT_ERROR("Runtime error: %s", "Assert failed");
7990 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2732);
7993 var_pvisibilitynode4
= var_nodearraylist3
;
7994 /* <var_pvisibilitynode4:nullable Object> isa nullable AVisibility */
7995 cltype15
= type_nullable__nit__AVisibility
.color
;
7996 idtype16
= type_nullable__nit__AVisibility
.id
;
7997 if(var_pvisibilitynode4
== NULL
) {
8000 if(cltype15
>= (((long)var_pvisibilitynode4
&3)?type_info
[((long)var_pvisibilitynode4
&3)]:var_pvisibilitynode4
->type
)->table_size
) {
8003 var14
= (((long)var_pvisibilitynode4
&3)?type_info
[((long)var_pvisibilitynode4
&3)]:var_pvisibilitynode4
->type
)->type_table
[cltype15
] == idtype16
;
8006 if (unlikely(!var14
)) {
8007 PRINT_ERROR("Runtime error: %s", "Assert failed");
8008 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2734);
8011 var_tkwnewnode7
= var_nodearraylist4
;
8012 /* <var_tkwnewnode7:nullable Object> isa nullable TKwnew */
8013 cltype18
= type_nullable__nit__TKwnew
.color
;
8014 idtype19
= type_nullable__nit__TKwnew
.id
;
8015 if(var_tkwnewnode7
== NULL
) {
8018 if(cltype18
>= (((long)var_tkwnewnode7
&3)?type_info
[((long)var_tkwnewnode7
&3)]:var_tkwnewnode7
->type
)->table_size
) {
8021 var17
= (((long)var_tkwnewnode7
&3)?type_info
[((long)var_tkwnewnode7
&3)]:var_tkwnewnode7
->type
)->type_table
[cltype18
] == idtype19
;
8024 if (unlikely(!var17
)) {
8025 PRINT_ERROR("Runtime error: %s", "Assert failed");
8026 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2736);
8029 var_pmethidnode8
= var_nodearraylist5
;
8030 /* <var_pmethidnode8:nullable Object> isa nullable AMethid */
8031 cltype21
= type_nullable__nit__AMethid
.color
;
8032 idtype22
= type_nullable__nit__AMethid
.id
;
8033 if(var_pmethidnode8
== NULL
) {
8036 if(cltype21
>= (((long)var_pmethidnode8
&3)?type_info
[((long)var_pmethidnode8
&3)]:var_pmethidnode8
->type
)->table_size
) {
8039 var20
= (((long)var_pmethidnode8
&3)?type_info
[((long)var_pmethidnode8
&3)]:var_pmethidnode8
->type
)->type_table
[cltype21
] == idtype22
;
8042 if (unlikely(!var20
)) {
8043 PRINT_ERROR("Runtime error: %s", "Assert failed");
8044 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2738);
8047 var_psignaturenode9
= var_nodearraylist6
;
8048 /* <var_psignaturenode9:nullable Object> isa nullable ASignature */
8049 cltype24
= type_nullable__nit__ASignature
.color
;
8050 idtype25
= type_nullable__nit__ASignature
.id
;
8051 if(var_psignaturenode9
== NULL
) {
8054 if(cltype24
>= (((long)var_psignaturenode9
&3)?type_info
[((long)var_psignaturenode9
&3)]:var_psignaturenode9
->type
)->table_size
) {
8057 var23
= (((long)var_psignaturenode9
&3)?type_info
[((long)var_psignaturenode9
&3)]:var_psignaturenode9
->type
)->type_table
[cltype24
] == idtype25
;
8060 if (unlikely(!var23
)) {
8061 PRINT_ERROR("Runtime error: %s", "Assert failed");
8062 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2740);
8065 var_pannotationsnode10
= var_nodearraylist7
;
8066 /* <var_pannotationsnode10:nullable Object> isa nullable AAnnotations */
8067 cltype27
= type_nullable__nit__AAnnotations
.color
;
8068 idtype28
= type_nullable__nit__AAnnotations
.id
;
8069 if(var_pannotationsnode10
== NULL
) {
8072 if(cltype27
>= (((long)var_pannotationsnode10
&3)?type_info
[((long)var_pannotationsnode10
&3)]:var_pannotationsnode10
->type
)->table_size
) {
8075 var26
= (((long)var_pannotationsnode10
&3)?type_info
[((long)var_pannotationsnode10
&3)]:var_pannotationsnode10
->type
)->type_table
[cltype27
] == idtype28
;
8078 if (unlikely(!var26
)) {
8079 PRINT_ERROR("Runtime error: %s", "Assert failed");
8080 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2742);
8083 var_tkwdonode13
= var_nodearraylist8
;
8084 /* <var_tkwdonode13:nullable Object> isa nullable TKwdo */
8085 cltype30
= type_nullable__nit__TKwdo
.color
;
8086 idtype31
= type_nullable__nit__TKwdo
.id
;
8087 if(var_tkwdonode13
== NULL
) {
8090 if(cltype30
>= (((long)var_tkwdonode13
&3)?type_info
[((long)var_tkwdonode13
&3)]:var_tkwdonode13
->type
)->table_size
) {
8093 var29
= (((long)var_tkwdonode13
&3)?type_info
[((long)var_tkwdonode13
&3)]:var_tkwdonode13
->type
)->type_table
[cltype30
] == idtype31
;
8096 if (unlikely(!var29
)) {
8097 PRINT_ERROR("Runtime error: %s", "Assert failed");
8098 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2744);
8101 var_pexprnode14
= var_nodearraylist9
;
8102 /* <var_pexprnode14:nullable Object> isa nullable AExpr */
8103 cltype33
= type_nullable__nit__AExpr
.color
;
8104 idtype34
= type_nullable__nit__AExpr
.id
;
8105 if(var_pexprnode14
== NULL
) {
8108 if(cltype33
>= (((long)var_pexprnode14
&3)?type_info
[((long)var_pexprnode14
&3)]:var_pexprnode14
->type
)->table_size
) {
8111 var32
= (((long)var_pexprnode14
&3)?type_info
[((long)var_pexprnode14
&3)]:var_pexprnode14
->type
)->type_table
[cltype33
] == idtype34
;
8114 if (unlikely(!var32
)) {
8115 PRINT_ERROR("Runtime error: %s", "Assert failed");
8116 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2746);
8119 var_tkwendnode15
= var_nodearraylist10
;
8120 /* <var_tkwendnode15:nullable Object> isa nullable TKwend */
8121 cltype36
= type_nullable__nit__TKwend
.color
;
8122 idtype37
= type_nullable__nit__TKwend
.id
;
8123 if(var_tkwendnode15
== NULL
) {
8126 if(cltype36
>= (((long)var_tkwendnode15
&3)?type_info
[((long)var_tkwendnode15
&3)]:var_tkwendnode15
->type
)->table_size
) {
8129 var35
= (((long)var_tkwendnode15
&3)?type_info
[((long)var_tkwendnode15
&3)]:var_tkwendnode15
->type
)->type_table
[cltype36
] == idtype37
;
8132 if (unlikely(!var35
)) {
8133 PRINT_ERROR("Runtime error: %s", "Assert failed");
8134 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2748);
8137 var38
= NEW_nit__AMethPropdef(&type_nit__AMethPropdef
);
8139 nit__parser_prod___AMethPropdef___init_amethpropdef(var38
, var_pdocnode2
, var_tkwredefnode3
, var_pvisibilitynode4
, ((val
*)NULL
), ((val
*)NULL
), var_tkwnewnode7
, var_pmethidnode8
, var_psignaturenode9
, var_pannotationsnode10
, ((val
*)NULL
), ((val
*)NULL
), var_tkwdonode13
, var_pexprnode14
, var_tkwendnode15
); /* Direct call parser_prod#AMethPropdef#init_amethpropdef on <var38:AMethPropdef>*/
8141 var_ppropdefnode1
= var38
;
8142 var_node_list
= var_ppropdefnode1
;
8143 var39
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction56> */
8145 var40
= nit___nit__Parser___go_to(var_p
, var39
);
8148 nit___nit__Parser___push(var_p
, var40
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
8152 /* method parser#ReduceAction57#action for (self: ReduceAction57, Parser) */
8153 void nit__parser___nit__parser__ReduceAction57___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
8154 val
* var_p
/* var p: Parser */;
8155 val
* var_node_list
/* var node_list: nullable Object */;
8156 val
* var
/* : nullable Object */;
8157 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
8158 val
* var1
/* : nullable Object */;
8159 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
8160 val
* var2
/* : nullable Object */;
8161 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
8162 val
* var3
/* : nullable Object */;
8163 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
8164 val
* var4
/* : nullable Object */;
8165 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
8166 val
* var5
/* : nullable Object */;
8167 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
8168 val
* var6
/* : nullable Object */;
8169 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8170 val
* var7
/* : nullable Object */;
8171 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8172 val
* var_pdocnode2
/* var pdocnode2: nullable Object */;
8173 short int var8
/* : Bool */;
8176 val
* var_tkwredefnode3
/* var tkwredefnode3: nullable Object */;
8177 short int var9
/* : Bool */;
8180 val
* var_pvisibilitynode4
/* var pvisibilitynode4: nullable Object */;
8181 short int var12
/* : Bool */;
8184 val
* var_tkwmethnode5
/* var tkwmethnode5: nullable Object */;
8185 short int var15
/* : Bool */;
8188 val
* var_pmethidnode8
/* var pmethidnode8: nullable Object */;
8189 short int var18
/* : Bool */;
8192 val
* var_psignaturenode9
/* var psignaturenode9: nullable Object */;
8193 short int var21
/* : Bool */;
8196 val
* var_pexterncallsnode11
/* var pexterncallsnode11: nullable Object */;
8197 short int var24
/* : Bool */;
8200 val
* var_pexterncodeblocknode12
/* var pexterncodeblocknode12: nullable Object */;
8201 short int var27
/* : Bool */;
8204 val
* var30
/* : AMethPropdef */;
8205 val
* var_ppropdefnode1
/* var ppropdefnode1: nullable AMethPropdef */;
8206 long var31
/* : Int */;
8207 long var32
/* : Int */;
8209 var_node_list
= ((val
*)NULL
);
8211 var
= nit___nit__Parser___pop(var_p
);
8213 var_nodearraylist8
= var
;
8215 var1
= nit___nit__Parser___pop(var_p
);
8217 var_nodearraylist7
= var1
;
8219 var2
= nit___nit__Parser___pop(var_p
);
8221 var_nodearraylist6
= var2
;
8223 var3
= nit___nit__Parser___pop(var_p
);
8225 var_nodearraylist5
= var3
;
8227 var4
= nit___nit__Parser___pop(var_p
);
8229 var_nodearraylist4
= var4
;
8231 var5
= nit___nit__Parser___pop(var_p
);
8233 var_nodearraylist3
= var5
;
8235 var6
= nit___nit__Parser___pop(var_p
);
8237 var_nodearraylist2
= var6
;
8239 var7
= nit___nit__Parser___pop(var_p
);
8241 var_nodearraylist1
= var7
;
8242 var_pdocnode2
= var_nodearraylist1
;
8243 /* <var_pdocnode2:nullable Object> isa nullable ADoc */
8244 cltype
= type_nullable__nit__ADoc
.color
;
8245 idtype
= type_nullable__nit__ADoc
.id
;
8246 if(var_pdocnode2
== NULL
) {
8249 if(cltype
>= (((long)var_pdocnode2
&3)?type_info
[((long)var_pdocnode2
&3)]:var_pdocnode2
->type
)->table_size
) {
8252 var8
= (((long)var_pdocnode2
&3)?type_info
[((long)var_pdocnode2
&3)]:var_pdocnode2
->type
)->type_table
[cltype
] == idtype
;
8255 if (unlikely(!var8
)) {
8256 PRINT_ERROR("Runtime error: %s", "Assert failed");
8257 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2783);
8260 var_tkwredefnode3
= var_nodearraylist2
;
8261 /* <var_tkwredefnode3:nullable Object> isa nullable TKwredef */
8262 cltype10
= type_nullable__nit__TKwredef
.color
;
8263 idtype11
= type_nullable__nit__TKwredef
.id
;
8264 if(var_tkwredefnode3
== NULL
) {
8267 if(cltype10
>= (((long)var_tkwredefnode3
&3)?type_info
[((long)var_tkwredefnode3
&3)]:var_tkwredefnode3
->type
)->table_size
) {
8270 var9
= (((long)var_tkwredefnode3
&3)?type_info
[((long)var_tkwredefnode3
&3)]:var_tkwredefnode3
->type
)->type_table
[cltype10
] == idtype11
;
8273 if (unlikely(!var9
)) {
8274 PRINT_ERROR("Runtime error: %s", "Assert failed");
8275 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2785);
8278 var_pvisibilitynode4
= var_nodearraylist3
;
8279 /* <var_pvisibilitynode4:nullable Object> isa nullable AVisibility */
8280 cltype13
= type_nullable__nit__AVisibility
.color
;
8281 idtype14
= type_nullable__nit__AVisibility
.id
;
8282 if(var_pvisibilitynode4
== NULL
) {
8285 if(cltype13
>= (((long)var_pvisibilitynode4
&3)?type_info
[((long)var_pvisibilitynode4
&3)]:var_pvisibilitynode4
->type
)->table_size
) {
8288 var12
= (((long)var_pvisibilitynode4
&3)?type_info
[((long)var_pvisibilitynode4
&3)]:var_pvisibilitynode4
->type
)->type_table
[cltype13
] == idtype14
;
8291 if (unlikely(!var12
)) {
8292 PRINT_ERROR("Runtime error: %s", "Assert failed");
8293 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2787);
8296 var_tkwmethnode5
= var_nodearraylist4
;
8297 /* <var_tkwmethnode5:nullable Object> isa nullable TKwmeth */
8298 cltype16
= type_nullable__nit__TKwmeth
.color
;
8299 idtype17
= type_nullable__nit__TKwmeth
.id
;
8300 if(var_tkwmethnode5
== NULL
) {
8303 if(cltype16
>= (((long)var_tkwmethnode5
&3)?type_info
[((long)var_tkwmethnode5
&3)]:var_tkwmethnode5
->type
)->table_size
) {
8306 var15
= (((long)var_tkwmethnode5
&3)?type_info
[((long)var_tkwmethnode5
&3)]:var_tkwmethnode5
->type
)->type_table
[cltype16
] == idtype17
;
8309 if (unlikely(!var15
)) {
8310 PRINT_ERROR("Runtime error: %s", "Assert failed");
8311 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2789);
8314 var_pmethidnode8
= var_nodearraylist5
;
8315 /* <var_pmethidnode8:nullable Object> isa nullable AMethid */
8316 cltype19
= type_nullable__nit__AMethid
.color
;
8317 idtype20
= type_nullable__nit__AMethid
.id
;
8318 if(var_pmethidnode8
== NULL
) {
8321 if(cltype19
>= (((long)var_pmethidnode8
&3)?type_info
[((long)var_pmethidnode8
&3)]:var_pmethidnode8
->type
)->table_size
) {
8324 var18
= (((long)var_pmethidnode8
&3)?type_info
[((long)var_pmethidnode8
&3)]:var_pmethidnode8
->type
)->type_table
[cltype19
] == idtype20
;
8327 if (unlikely(!var18
)) {
8328 PRINT_ERROR("Runtime error: %s", "Assert failed");
8329 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2791);
8332 var_psignaturenode9
= var_nodearraylist6
;
8333 /* <var_psignaturenode9:nullable Object> isa nullable ASignature */
8334 cltype22
= type_nullable__nit__ASignature
.color
;
8335 idtype23
= type_nullable__nit__ASignature
.id
;
8336 if(var_psignaturenode9
== NULL
) {
8339 if(cltype22
>= (((long)var_psignaturenode9
&3)?type_info
[((long)var_psignaturenode9
&3)]:var_psignaturenode9
->type
)->table_size
) {
8342 var21
= (((long)var_psignaturenode9
&3)?type_info
[((long)var_psignaturenode9
&3)]:var_psignaturenode9
->type
)->type_table
[cltype22
] == idtype23
;
8345 if (unlikely(!var21
)) {
8346 PRINT_ERROR("Runtime error: %s", "Assert failed");
8347 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2793);
8350 var_pexterncallsnode11
= var_nodearraylist7
;
8351 /* <var_pexterncallsnode11:nullable Object> isa nullable AExternCalls */
8352 cltype25
= type_nullable__nit__AExternCalls
.color
;
8353 idtype26
= type_nullable__nit__AExternCalls
.id
;
8354 if(var_pexterncallsnode11
== NULL
) {
8357 if(cltype25
>= (((long)var_pexterncallsnode11
&3)?type_info
[((long)var_pexterncallsnode11
&3)]:var_pexterncallsnode11
->type
)->table_size
) {
8360 var24
= (((long)var_pexterncallsnode11
&3)?type_info
[((long)var_pexterncallsnode11
&3)]:var_pexterncallsnode11
->type
)->type_table
[cltype25
] == idtype26
;
8363 if (unlikely(!var24
)) {
8364 PRINT_ERROR("Runtime error: %s", "Assert failed");
8365 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2795);
8368 var_pexterncodeblocknode12
= var_nodearraylist8
;
8369 /* <var_pexterncodeblocknode12:nullable Object> isa nullable AExternCodeBlock */
8370 cltype28
= type_nullable__nit__AExternCodeBlock
.color
;
8371 idtype29
= type_nullable__nit__AExternCodeBlock
.id
;
8372 if(var_pexterncodeblocknode12
== NULL
) {
8375 if(cltype28
>= (((long)var_pexterncodeblocknode12
&3)?type_info
[((long)var_pexterncodeblocknode12
&3)]:var_pexterncodeblocknode12
->type
)->table_size
) {
8378 var27
= (((long)var_pexterncodeblocknode12
&3)?type_info
[((long)var_pexterncodeblocknode12
&3)]:var_pexterncodeblocknode12
->type
)->type_table
[cltype28
] == idtype29
;
8381 if (unlikely(!var27
)) {
8382 PRINT_ERROR("Runtime error: %s", "Assert failed");
8383 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2797);
8386 var30
= NEW_nit__AMethPropdef(&type_nit__AMethPropdef
);
8388 nit__parser_prod___AMethPropdef___init_amethpropdef(var30
, var_pdocnode2
, var_tkwredefnode3
, var_pvisibilitynode4
, var_tkwmethnode5
, ((val
*)NULL
), ((val
*)NULL
), var_pmethidnode8
, var_psignaturenode9
, ((val
*)NULL
), var_pexterncallsnode11
, var_pexterncodeblocknode12
, ((val
*)NULL
), ((val
*)NULL
), ((val
*)NULL
)); /* Direct call parser_prod#AMethPropdef#init_amethpropdef on <var30:AMethPropdef>*/
8390 var_ppropdefnode1
= var30
;
8391 var_node_list
= var_ppropdefnode1
;
8392 var31
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction57> */
8394 var32
= nit___nit__Parser___go_to(var_p
, var31
);
8397 nit___nit__Parser___push(var_p
, var32
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
8401 /* method parser#ReduceAction58#action for (self: ReduceAction58, Parser) */
8402 void nit__parser___nit__parser__ReduceAction58___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
8403 val
* var_p
/* var p: Parser */;
8404 val
* var_node_list
/* var node_list: nullable Object */;
8405 val
* var
/* : nullable Object */;
8406 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
8407 val
* var1
/* : nullable Object */;
8408 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
8409 val
* var2
/* : nullable Object */;
8410 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
8411 val
* var3
/* : nullable Object */;
8412 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
8413 val
* var4
/* : nullable Object */;
8414 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
8415 val
* var5
/* : nullable Object */;
8416 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
8417 val
* var6
/* : nullable Object */;
8418 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
8419 val
* var7
/* : nullable Object */;
8420 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8421 val
* var8
/* : nullable Object */;
8422 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8423 val
* var_pdocnode2
/* var pdocnode2: nullable Object */;
8424 short int var9
/* : Bool */;
8427 val
* var_tkwredefnode3
/* var tkwredefnode3: nullable Object */;
8428 short int var10
/* : Bool */;
8431 val
* var_pvisibilitynode4
/* var pvisibilitynode4: nullable Object */;
8432 short int var13
/* : Bool */;
8435 val
* var_tkwmethnode5
/* var tkwmethnode5: nullable Object */;
8436 short int var16
/* : Bool */;
8439 val
* var_pmethidnode8
/* var pmethidnode8: nullable Object */;
8440 short int var19
/* : Bool */;
8443 val
* var_psignaturenode9
/* var psignaturenode9: nullable Object */;
8444 short int var22
/* : Bool */;
8447 val
* var_pannotationsnode10
/* var pannotationsnode10: nullable Object */;
8448 short int var25
/* : Bool */;
8451 val
* var_pexterncallsnode11
/* var pexterncallsnode11: nullable Object */;
8452 short int var28
/* : Bool */;
8455 val
* var_pexterncodeblocknode12
/* var pexterncodeblocknode12: nullable Object */;
8456 short int var31
/* : Bool */;
8459 val
* var34
/* : AMethPropdef */;
8460 val
* var_ppropdefnode1
/* var ppropdefnode1: nullable AMethPropdef */;
8461 long var35
/* : Int */;
8462 long var36
/* : Int */;
8464 var_node_list
= ((val
*)NULL
);
8466 var
= nit___nit__Parser___pop(var_p
);
8468 var_nodearraylist9
= var
;
8470 var1
= nit___nit__Parser___pop(var_p
);
8472 var_nodearraylist8
= var1
;
8474 var2
= nit___nit__Parser___pop(var_p
);
8476 var_nodearraylist7
= var2
;
8478 var3
= nit___nit__Parser___pop(var_p
);
8480 var_nodearraylist6
= var3
;
8482 var4
= nit___nit__Parser___pop(var_p
);
8484 var_nodearraylist5
= var4
;
8486 var5
= nit___nit__Parser___pop(var_p
);
8488 var_nodearraylist4
= var5
;
8490 var6
= nit___nit__Parser___pop(var_p
);
8492 var_nodearraylist3
= var6
;
8494 var7
= nit___nit__Parser___pop(var_p
);
8496 var_nodearraylist2
= var7
;
8498 var8
= nit___nit__Parser___pop(var_p
);
8500 var_nodearraylist1
= var8
;
8501 var_pdocnode2
= var_nodearraylist1
;
8502 /* <var_pdocnode2:nullable Object> isa nullable ADoc */
8503 cltype
= type_nullable__nit__ADoc
.color
;
8504 idtype
= type_nullable__nit__ADoc
.id
;
8505 if(var_pdocnode2
== NULL
) {
8508 if(cltype
>= (((long)var_pdocnode2
&3)?type_info
[((long)var_pdocnode2
&3)]:var_pdocnode2
->type
)->table_size
) {
8511 var9
= (((long)var_pdocnode2
&3)?type_info
[((long)var_pdocnode2
&3)]:var_pdocnode2
->type
)->type_table
[cltype
] == idtype
;
8514 if (unlikely(!var9
)) {
8515 PRINT_ERROR("Runtime error: %s", "Assert failed");
8516 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2833);
8519 var_tkwredefnode3
= var_nodearraylist2
;
8520 /* <var_tkwredefnode3:nullable Object> isa nullable TKwredef */
8521 cltype11
= type_nullable__nit__TKwredef
.color
;
8522 idtype12
= type_nullable__nit__TKwredef
.id
;
8523 if(var_tkwredefnode3
== NULL
) {
8526 if(cltype11
>= (((long)var_tkwredefnode3
&3)?type_info
[((long)var_tkwredefnode3
&3)]:var_tkwredefnode3
->type
)->table_size
) {
8529 var10
= (((long)var_tkwredefnode3
&3)?type_info
[((long)var_tkwredefnode3
&3)]:var_tkwredefnode3
->type
)->type_table
[cltype11
] == idtype12
;
8532 if (unlikely(!var10
)) {
8533 PRINT_ERROR("Runtime error: %s", "Assert failed");
8534 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2835);
8537 var_pvisibilitynode4
= var_nodearraylist3
;
8538 /* <var_pvisibilitynode4:nullable Object> isa nullable AVisibility */
8539 cltype14
= type_nullable__nit__AVisibility
.color
;
8540 idtype15
= type_nullable__nit__AVisibility
.id
;
8541 if(var_pvisibilitynode4
== NULL
) {
8544 if(cltype14
>= (((long)var_pvisibilitynode4
&3)?type_info
[((long)var_pvisibilitynode4
&3)]:var_pvisibilitynode4
->type
)->table_size
) {
8547 var13
= (((long)var_pvisibilitynode4
&3)?type_info
[((long)var_pvisibilitynode4
&3)]:var_pvisibilitynode4
->type
)->type_table
[cltype14
] == idtype15
;
8550 if (unlikely(!var13
)) {
8551 PRINT_ERROR("Runtime error: %s", "Assert failed");
8552 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2837);
8555 var_tkwmethnode5
= var_nodearraylist4
;
8556 /* <var_tkwmethnode5:nullable Object> isa nullable TKwmeth */
8557 cltype17
= type_nullable__nit__TKwmeth
.color
;
8558 idtype18
= type_nullable__nit__TKwmeth
.id
;
8559 if(var_tkwmethnode5
== NULL
) {
8562 if(cltype17
>= (((long)var_tkwmethnode5
&3)?type_info
[((long)var_tkwmethnode5
&3)]:var_tkwmethnode5
->type
)->table_size
) {
8565 var16
= (((long)var_tkwmethnode5
&3)?type_info
[((long)var_tkwmethnode5
&3)]:var_tkwmethnode5
->type
)->type_table
[cltype17
] == idtype18
;
8568 if (unlikely(!var16
)) {
8569 PRINT_ERROR("Runtime error: %s", "Assert failed");
8570 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2839);
8573 var_pmethidnode8
= var_nodearraylist5
;
8574 /* <var_pmethidnode8:nullable Object> isa nullable AMethid */
8575 cltype20
= type_nullable__nit__AMethid
.color
;
8576 idtype21
= type_nullable__nit__AMethid
.id
;
8577 if(var_pmethidnode8
== NULL
) {
8580 if(cltype20
>= (((long)var_pmethidnode8
&3)?type_info
[((long)var_pmethidnode8
&3)]:var_pmethidnode8
->type
)->table_size
) {
8583 var19
= (((long)var_pmethidnode8
&3)?type_info
[((long)var_pmethidnode8
&3)]:var_pmethidnode8
->type
)->type_table
[cltype20
] == idtype21
;
8586 if (unlikely(!var19
)) {
8587 PRINT_ERROR("Runtime error: %s", "Assert failed");
8588 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2841);
8591 var_psignaturenode9
= var_nodearraylist6
;
8592 /* <var_psignaturenode9:nullable Object> isa nullable ASignature */
8593 cltype23
= type_nullable__nit__ASignature
.color
;
8594 idtype24
= type_nullable__nit__ASignature
.id
;
8595 if(var_psignaturenode9
== NULL
) {
8598 if(cltype23
>= (((long)var_psignaturenode9
&3)?type_info
[((long)var_psignaturenode9
&3)]:var_psignaturenode9
->type
)->table_size
) {
8601 var22
= (((long)var_psignaturenode9
&3)?type_info
[((long)var_psignaturenode9
&3)]:var_psignaturenode9
->type
)->type_table
[cltype23
] == idtype24
;
8604 if (unlikely(!var22
)) {
8605 PRINT_ERROR("Runtime error: %s", "Assert failed");
8606 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2843);
8609 var_pannotationsnode10
= var_nodearraylist7
;
8610 /* <var_pannotationsnode10:nullable Object> isa nullable AAnnotations */
8611 cltype26
= type_nullable__nit__AAnnotations
.color
;
8612 idtype27
= type_nullable__nit__AAnnotations
.id
;
8613 if(var_pannotationsnode10
== NULL
) {
8616 if(cltype26
>= (((long)var_pannotationsnode10
&3)?type_info
[((long)var_pannotationsnode10
&3)]:var_pannotationsnode10
->type
)->table_size
) {
8619 var25
= (((long)var_pannotationsnode10
&3)?type_info
[((long)var_pannotationsnode10
&3)]:var_pannotationsnode10
->type
)->type_table
[cltype26
] == idtype27
;
8622 if (unlikely(!var25
)) {
8623 PRINT_ERROR("Runtime error: %s", "Assert failed");
8624 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2845);
8627 var_pexterncallsnode11
= var_nodearraylist8
;
8628 /* <var_pexterncallsnode11:nullable Object> isa nullable AExternCalls */
8629 cltype29
= type_nullable__nit__AExternCalls
.color
;
8630 idtype30
= type_nullable__nit__AExternCalls
.id
;
8631 if(var_pexterncallsnode11
== NULL
) {
8634 if(cltype29
>= (((long)var_pexterncallsnode11
&3)?type_info
[((long)var_pexterncallsnode11
&3)]:var_pexterncallsnode11
->type
)->table_size
) {
8637 var28
= (((long)var_pexterncallsnode11
&3)?type_info
[((long)var_pexterncallsnode11
&3)]:var_pexterncallsnode11
->type
)->type_table
[cltype29
] == idtype30
;
8640 if (unlikely(!var28
)) {
8641 PRINT_ERROR("Runtime error: %s", "Assert failed");
8642 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2847);
8645 var_pexterncodeblocknode12
= var_nodearraylist9
;
8646 /* <var_pexterncodeblocknode12:nullable Object> isa nullable AExternCodeBlock */
8647 cltype32
= type_nullable__nit__AExternCodeBlock
.color
;
8648 idtype33
= type_nullable__nit__AExternCodeBlock
.id
;
8649 if(var_pexterncodeblocknode12
== NULL
) {
8652 if(cltype32
>= (((long)var_pexterncodeblocknode12
&3)?type_info
[((long)var_pexterncodeblocknode12
&3)]:var_pexterncodeblocknode12
->type
)->table_size
) {
8655 var31
= (((long)var_pexterncodeblocknode12
&3)?type_info
[((long)var_pexterncodeblocknode12
&3)]:var_pexterncodeblocknode12
->type
)->type_table
[cltype32
] == idtype33
;
8658 if (unlikely(!var31
)) {
8659 PRINT_ERROR("Runtime error: %s", "Assert failed");
8660 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2849);
8663 var34
= NEW_nit__AMethPropdef(&type_nit__AMethPropdef
);
8665 nit__parser_prod___AMethPropdef___init_amethpropdef(var34
, var_pdocnode2
, var_tkwredefnode3
, var_pvisibilitynode4
, var_tkwmethnode5
, ((val
*)NULL
), ((val
*)NULL
), var_pmethidnode8
, var_psignaturenode9
, var_pannotationsnode10
, var_pexterncallsnode11
, var_pexterncodeblocknode12
, ((val
*)NULL
), ((val
*)NULL
), ((val
*)NULL
)); /* Direct call parser_prod#AMethPropdef#init_amethpropdef on <var34:AMethPropdef>*/
8667 var_ppropdefnode1
= var34
;
8668 var_node_list
= var_ppropdefnode1
;
8669 var35
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction58> */
8671 var36
= nit___nit__Parser___go_to(var_p
, var35
);
8674 nit___nit__Parser___push(var_p
, var36
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
8678 /* method parser#ReduceAction59#action for (self: ReduceAction59, Parser) */
8679 void nit__parser___nit__parser__ReduceAction59___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
8680 val
* var_p
/* var p: Parser */;
8681 val
* var_node_list
/* var node_list: nullable Object */;
8682 val
* var
/* : nullable Object */;
8683 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
8684 val
* var1
/* : nullable Object */;
8685 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
8686 val
* var2
/* : nullable Object */;
8687 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
8688 val
* var3
/* : nullable Object */;
8689 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
8690 val
* var4
/* : nullable Object */;
8691 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
8692 val
* var5
/* : nullable Object */;
8693 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8694 val
* var6
/* : nullable Object */;
8695 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8696 val
* var_pdocnode2
/* var pdocnode2: nullable Object */;
8697 short int var7
/* : Bool */;
8700 val
* var_tkwredefnode3
/* var tkwredefnode3: nullable Object */;
8701 short int var8
/* : Bool */;
8704 val
* var_pvisibilitynode4
/* var pvisibilitynode4: nullable Object */;
8705 short int var11
/* : Bool */;
8708 val
* var_tkwvarnode5
/* var tkwvarnode5: nullable Object */;
8709 short int var14
/* : Bool */;
8712 val
* var_tidnode6
/* var tidnode6: nullable Object */;
8713 short int var17
/* : Bool */;
8716 val
* var_ptypenode7
/* var ptypenode7: nullable Object */;
8717 short int var20
/* : Bool */;
8720 val
* var_pannotationsnode10
/* var pannotationsnode10: nullable Object */;
8721 short int var23
/* : Bool */;
8724 val
* var26
/* : AAttrPropdef */;
8725 val
* var_ppropdefnode1
/* var ppropdefnode1: nullable AAttrPropdef */;
8726 long var27
/* : Int */;
8727 long var28
/* : Int */;
8729 var_node_list
= ((val
*)NULL
);
8731 var
= nit___nit__Parser___pop(var_p
);
8733 var_nodearraylist7
= var
;
8735 var1
= nit___nit__Parser___pop(var_p
);
8737 var_nodearraylist6
= var1
;
8739 var2
= nit___nit__Parser___pop(var_p
);
8741 var_nodearraylist5
= var2
;
8743 var3
= nit___nit__Parser___pop(var_p
);
8745 var_nodearraylist4
= var3
;
8747 var4
= nit___nit__Parser___pop(var_p
);
8749 var_nodearraylist3
= var4
;
8751 var5
= nit___nit__Parser___pop(var_p
);
8753 var_nodearraylist2
= var5
;
8755 var6
= nit___nit__Parser___pop(var_p
);
8757 var_nodearraylist1
= var6
;
8758 var_pdocnode2
= var_nodearraylist1
;
8759 /* <var_pdocnode2:nullable Object> isa nullable ADoc */
8760 cltype
= type_nullable__nit__ADoc
.color
;
8761 idtype
= type_nullable__nit__ADoc
.id
;
8762 if(var_pdocnode2
== NULL
) {
8765 if(cltype
>= (((long)var_pdocnode2
&3)?type_info
[((long)var_pdocnode2
&3)]:var_pdocnode2
->type
)->table_size
) {
8768 var7
= (((long)var_pdocnode2
&3)?type_info
[((long)var_pdocnode2
&3)]:var_pdocnode2
->type
)->type_table
[cltype
] == idtype
;
8771 if (unlikely(!var7
)) {
8772 PRINT_ERROR("Runtime error: %s", "Assert failed");
8773 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2883);
8776 var_tkwredefnode3
= var_nodearraylist2
;
8777 /* <var_tkwredefnode3:nullable Object> isa nullable TKwredef */
8778 cltype9
= type_nullable__nit__TKwredef
.color
;
8779 idtype10
= type_nullable__nit__TKwredef
.id
;
8780 if(var_tkwredefnode3
== NULL
) {
8783 if(cltype9
>= (((long)var_tkwredefnode3
&3)?type_info
[((long)var_tkwredefnode3
&3)]:var_tkwredefnode3
->type
)->table_size
) {
8786 var8
= (((long)var_tkwredefnode3
&3)?type_info
[((long)var_tkwredefnode3
&3)]:var_tkwredefnode3
->type
)->type_table
[cltype9
] == idtype10
;
8789 if (unlikely(!var8
)) {
8790 PRINT_ERROR("Runtime error: %s", "Assert failed");
8791 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2885);
8794 var_pvisibilitynode4
= var_nodearraylist3
;
8795 /* <var_pvisibilitynode4:nullable Object> isa nullable AVisibility */
8796 cltype12
= type_nullable__nit__AVisibility
.color
;
8797 idtype13
= type_nullable__nit__AVisibility
.id
;
8798 if(var_pvisibilitynode4
== NULL
) {
8801 if(cltype12
>= (((long)var_pvisibilitynode4
&3)?type_info
[((long)var_pvisibilitynode4
&3)]:var_pvisibilitynode4
->type
)->table_size
) {
8804 var11
= (((long)var_pvisibilitynode4
&3)?type_info
[((long)var_pvisibilitynode4
&3)]:var_pvisibilitynode4
->type
)->type_table
[cltype12
] == idtype13
;
8807 if (unlikely(!var11
)) {
8808 PRINT_ERROR("Runtime error: %s", "Assert failed");
8809 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2887);
8812 var_tkwvarnode5
= var_nodearraylist4
;
8813 /* <var_tkwvarnode5:nullable Object> isa nullable TKwvar */
8814 cltype15
= type_nullable__nit__TKwvar
.color
;
8815 idtype16
= type_nullable__nit__TKwvar
.id
;
8816 if(var_tkwvarnode5
== NULL
) {
8819 if(cltype15
>= (((long)var_tkwvarnode5
&3)?type_info
[((long)var_tkwvarnode5
&3)]:var_tkwvarnode5
->type
)->table_size
) {
8822 var14
= (((long)var_tkwvarnode5
&3)?type_info
[((long)var_tkwvarnode5
&3)]:var_tkwvarnode5
->type
)->type_table
[cltype15
] == idtype16
;
8825 if (unlikely(!var14
)) {
8826 PRINT_ERROR("Runtime error: %s", "Assert failed");
8827 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2889);
8830 var_tidnode6
= var_nodearraylist5
;
8831 /* <var_tidnode6:nullable Object> isa nullable TId */
8832 cltype18
= type_nullable__nit__TId
.color
;
8833 idtype19
= type_nullable__nit__TId
.id
;
8834 if(var_tidnode6
== NULL
) {
8837 if(cltype18
>= (((long)var_tidnode6
&3)?type_info
[((long)var_tidnode6
&3)]:var_tidnode6
->type
)->table_size
) {
8840 var17
= (((long)var_tidnode6
&3)?type_info
[((long)var_tidnode6
&3)]:var_tidnode6
->type
)->type_table
[cltype18
] == idtype19
;
8843 if (unlikely(!var17
)) {
8844 PRINT_ERROR("Runtime error: %s", "Assert failed");
8845 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2891);
8848 var_ptypenode7
= var_nodearraylist6
;
8849 /* <var_ptypenode7:nullable Object> isa nullable AType */
8850 cltype21
= type_nullable__nit__AType
.color
;
8851 idtype22
= type_nullable__nit__AType
.id
;
8852 if(var_ptypenode7
== NULL
) {
8855 if(cltype21
>= (((long)var_ptypenode7
&3)?type_info
[((long)var_ptypenode7
&3)]:var_ptypenode7
->type
)->table_size
) {
8858 var20
= (((long)var_ptypenode7
&3)?type_info
[((long)var_ptypenode7
&3)]:var_ptypenode7
->type
)->type_table
[cltype21
] == idtype22
;
8861 if (unlikely(!var20
)) {
8862 PRINT_ERROR("Runtime error: %s", "Assert failed");
8863 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2893);
8866 var_pannotationsnode10
= var_nodearraylist7
;
8867 /* <var_pannotationsnode10:nullable Object> isa nullable AAnnotations */
8868 cltype24
= type_nullable__nit__AAnnotations
.color
;
8869 idtype25
= type_nullable__nit__AAnnotations
.id
;
8870 if(var_pannotationsnode10
== NULL
) {
8873 if(cltype24
>= (((long)var_pannotationsnode10
&3)?type_info
[((long)var_pannotationsnode10
&3)]:var_pannotationsnode10
->type
)->table_size
) {
8876 var23
= (((long)var_pannotationsnode10
&3)?type_info
[((long)var_pannotationsnode10
&3)]:var_pannotationsnode10
->type
)->type_table
[cltype24
] == idtype25
;
8879 if (unlikely(!var23
)) {
8880 PRINT_ERROR("Runtime error: %s", "Assert failed");
8881 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2895);
8884 var26
= NEW_nit__AAttrPropdef(&type_nit__AAttrPropdef
);
8886 nit__parser_prod___AAttrPropdef___init_aattrpropdef(var26
, var_pdocnode2
, var_tkwredefnode3
, var_pvisibilitynode4
, var_tkwvarnode5
, var_tidnode6
, var_ptypenode7
, ((val
*)NULL
), ((val
*)NULL
), var_pannotationsnode10
, ((val
*)NULL
), ((val
*)NULL
), ((val
*)NULL
)); /* Direct call parser_prod#AAttrPropdef#init_aattrpropdef on <var26:AAttrPropdef>*/
8888 var_ppropdefnode1
= var26
;
8889 var_node_list
= var_ppropdefnode1
;
8890 var27
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction59> */
8892 var28
= nit___nit__Parser___go_to(var_p
, var27
);
8895 nit___nit__Parser___push(var_p
, var28
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
8899 /* method parser#ReduceAction60#action for (self: ReduceAction60, Parser) */
8900 void nit__parser___nit__parser__ReduceAction60___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
8901 val
* var_p
/* var p: Parser */;
8902 val
* var_node_list
/* var node_list: nullable Object */;
8903 val
* var
/* : nullable Object */;
8904 val
* var_nodearraylist10
/* var nodearraylist10: nullable Object */;
8905 val
* var1
/* : nullable Object */;
8906 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
8907 val
* var2
/* : nullable Object */;
8908 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
8909 val
* var3
/* : nullable Object */;
8910 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
8911 val
* var4
/* : nullable Object */;
8912 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
8913 val
* var5
/* : nullable Object */;
8914 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
8915 val
* var6
/* : nullable Object */;
8916 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
8917 val
* var7
/* : nullable Object */;
8918 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
8919 val
* var8
/* : nullable Object */;
8920 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8921 val
* var9
/* : nullable Object */;
8922 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8923 val
* var_pdocnode2
/* var pdocnode2: nullable Object */;
8924 short int var10
/* : Bool */;
8927 val
* var_tkwredefnode3
/* var tkwredefnode3: nullable Object */;
8928 short int var11
/* : Bool */;
8931 val
* var_pvisibilitynode4
/* var pvisibilitynode4: nullable Object */;
8932 short int var14
/* : Bool */;
8935 val
* var_tkwvarnode5
/* var tkwvarnode5: nullable Object */;
8936 short int var17
/* : Bool */;
8939 val
* var_tidnode6
/* var tidnode6: nullable Object */;
8940 short int var20
/* : Bool */;
8943 val
* var_ptypenode7
/* var ptypenode7: nullable Object */;
8944 short int var23
/* : Bool */;
8947 val
* var_tassignnode8
/* var tassignnode8: nullable Object */;
8948 short int var26
/* : Bool */;
8951 val
* var_pexprnode9
/* var pexprnode9: nullable Object */;
8952 short int var29
/* : Bool */;
8955 val
* var_pannotationsnode10
/* var pannotationsnode10: nullable Object */;
8956 short int var32
/* : Bool */;
8959 val
* var35
/* : AAttrPropdef */;
8960 val
* var_ppropdefnode1
/* var ppropdefnode1: nullable AAttrPropdef */;
8961 long var36
/* : Int */;
8962 long var37
/* : Int */;
8964 var_node_list
= ((val
*)NULL
);
8966 var
= nit___nit__Parser___pop(var_p
);
8968 var_nodearraylist10
= var
;
8970 var1
= nit___nit__Parser___pop(var_p
);
8972 var_nodearraylist9
= var1
;
8974 var2
= nit___nit__Parser___pop(var_p
);
8976 var_nodearraylist8
= var2
;
8978 var3
= nit___nit__Parser___pop(var_p
);
8980 var_nodearraylist7
= var3
;
8982 var4
= nit___nit__Parser___pop(var_p
);
8984 var_nodearraylist6
= var4
;
8986 var5
= nit___nit__Parser___pop(var_p
);
8988 var_nodearraylist5
= var5
;
8990 var6
= nit___nit__Parser___pop(var_p
);
8992 var_nodearraylist4
= var6
;
8994 var7
= nit___nit__Parser___pop(var_p
);
8996 var_nodearraylist3
= var7
;
8998 var8
= nit___nit__Parser___pop(var_p
);
9000 var_nodearraylist2
= var8
;
9002 var9
= nit___nit__Parser___pop(var_p
);
9004 var_nodearraylist1
= var9
;
9005 var_pdocnode2
= var_nodearraylist1
;
9006 /* <var_pdocnode2:nullable Object> isa nullable ADoc */
9007 cltype
= type_nullable__nit__ADoc
.color
;
9008 idtype
= type_nullable__nit__ADoc
.id
;
9009 if(var_pdocnode2
== NULL
) {
9012 if(cltype
>= (((long)var_pdocnode2
&3)?type_info
[((long)var_pdocnode2
&3)]:var_pdocnode2
->type
)->table_size
) {
9015 var10
= (((long)var_pdocnode2
&3)?type_info
[((long)var_pdocnode2
&3)]:var_pdocnode2
->type
)->type_table
[cltype
] == idtype
;
9018 if (unlikely(!var10
)) {
9019 PRINT_ERROR("Runtime error: %s", "Assert failed");
9020 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2930);
9023 var_tkwredefnode3
= var_nodearraylist2
;
9024 /* <var_tkwredefnode3:nullable Object> isa nullable TKwredef */
9025 cltype12
= type_nullable__nit__TKwredef
.color
;
9026 idtype13
= type_nullable__nit__TKwredef
.id
;
9027 if(var_tkwredefnode3
== NULL
) {
9030 if(cltype12
>= (((long)var_tkwredefnode3
&3)?type_info
[((long)var_tkwredefnode3
&3)]:var_tkwredefnode3
->type
)->table_size
) {
9033 var11
= (((long)var_tkwredefnode3
&3)?type_info
[((long)var_tkwredefnode3
&3)]:var_tkwredefnode3
->type
)->type_table
[cltype12
] == idtype13
;
9036 if (unlikely(!var11
)) {
9037 PRINT_ERROR("Runtime error: %s", "Assert failed");
9038 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2932);
9041 var_pvisibilitynode4
= var_nodearraylist3
;
9042 /* <var_pvisibilitynode4:nullable Object> isa nullable AVisibility */
9043 cltype15
= type_nullable__nit__AVisibility
.color
;
9044 idtype16
= type_nullable__nit__AVisibility
.id
;
9045 if(var_pvisibilitynode4
== NULL
) {
9048 if(cltype15
>= (((long)var_pvisibilitynode4
&3)?type_info
[((long)var_pvisibilitynode4
&3)]:var_pvisibilitynode4
->type
)->table_size
) {
9051 var14
= (((long)var_pvisibilitynode4
&3)?type_info
[((long)var_pvisibilitynode4
&3)]:var_pvisibilitynode4
->type
)->type_table
[cltype15
] == idtype16
;
9054 if (unlikely(!var14
)) {
9055 PRINT_ERROR("Runtime error: %s", "Assert failed");
9056 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2934);
9059 var_tkwvarnode5
= var_nodearraylist4
;
9060 /* <var_tkwvarnode5:nullable Object> isa nullable TKwvar */
9061 cltype18
= type_nullable__nit__TKwvar
.color
;
9062 idtype19
= type_nullable__nit__TKwvar
.id
;
9063 if(var_tkwvarnode5
== NULL
) {
9066 if(cltype18
>= (((long)var_tkwvarnode5
&3)?type_info
[((long)var_tkwvarnode5
&3)]:var_tkwvarnode5
->type
)->table_size
) {
9069 var17
= (((long)var_tkwvarnode5
&3)?type_info
[((long)var_tkwvarnode5
&3)]:var_tkwvarnode5
->type
)->type_table
[cltype18
] == idtype19
;
9072 if (unlikely(!var17
)) {
9073 PRINT_ERROR("Runtime error: %s", "Assert failed");
9074 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2936);
9077 var_tidnode6
= var_nodearraylist5
;
9078 /* <var_tidnode6:nullable Object> isa nullable TId */
9079 cltype21
= type_nullable__nit__TId
.color
;
9080 idtype22
= type_nullable__nit__TId
.id
;
9081 if(var_tidnode6
== NULL
) {
9084 if(cltype21
>= (((long)var_tidnode6
&3)?type_info
[((long)var_tidnode6
&3)]:var_tidnode6
->type
)->table_size
) {
9087 var20
= (((long)var_tidnode6
&3)?type_info
[((long)var_tidnode6
&3)]:var_tidnode6
->type
)->type_table
[cltype21
] == idtype22
;
9090 if (unlikely(!var20
)) {
9091 PRINT_ERROR("Runtime error: %s", "Assert failed");
9092 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2938);
9095 var_ptypenode7
= var_nodearraylist6
;
9096 /* <var_ptypenode7:nullable Object> isa nullable AType */
9097 cltype24
= type_nullable__nit__AType
.color
;
9098 idtype25
= type_nullable__nit__AType
.id
;
9099 if(var_ptypenode7
== NULL
) {
9102 if(cltype24
>= (((long)var_ptypenode7
&3)?type_info
[((long)var_ptypenode7
&3)]:var_ptypenode7
->type
)->table_size
) {
9105 var23
= (((long)var_ptypenode7
&3)?type_info
[((long)var_ptypenode7
&3)]:var_ptypenode7
->type
)->type_table
[cltype24
] == idtype25
;
9108 if (unlikely(!var23
)) {
9109 PRINT_ERROR("Runtime error: %s", "Assert failed");
9110 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2940);
9113 var_tassignnode8
= var_nodearraylist7
;
9114 /* <var_tassignnode8:nullable Object> isa nullable TAssign */
9115 cltype27
= type_nullable__nit__TAssign
.color
;
9116 idtype28
= type_nullable__nit__TAssign
.id
;
9117 if(var_tassignnode8
== NULL
) {
9120 if(cltype27
>= (((long)var_tassignnode8
&3)?type_info
[((long)var_tassignnode8
&3)]:var_tassignnode8
->type
)->table_size
) {
9123 var26
= (((long)var_tassignnode8
&3)?type_info
[((long)var_tassignnode8
&3)]:var_tassignnode8
->type
)->type_table
[cltype27
] == idtype28
;
9126 if (unlikely(!var26
)) {
9127 PRINT_ERROR("Runtime error: %s", "Assert failed");
9128 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2942);
9131 var_pexprnode9
= var_nodearraylist9
;
9132 /* <var_pexprnode9:nullable Object> isa nullable AExpr */
9133 cltype30
= type_nullable__nit__AExpr
.color
;
9134 idtype31
= type_nullable__nit__AExpr
.id
;
9135 if(var_pexprnode9
== NULL
) {
9138 if(cltype30
>= (((long)var_pexprnode9
&3)?type_info
[((long)var_pexprnode9
&3)]:var_pexprnode9
->type
)->table_size
) {
9141 var29
= (((long)var_pexprnode9
&3)?type_info
[((long)var_pexprnode9
&3)]:var_pexprnode9
->type
)->type_table
[cltype30
] == idtype31
;
9144 if (unlikely(!var29
)) {
9145 PRINT_ERROR("Runtime error: %s", "Assert failed");
9146 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2944);
9149 var_pannotationsnode10
= var_nodearraylist10
;
9150 /* <var_pannotationsnode10:nullable Object> isa nullable AAnnotations */
9151 cltype33
= type_nullable__nit__AAnnotations
.color
;
9152 idtype34
= type_nullable__nit__AAnnotations
.id
;
9153 if(var_pannotationsnode10
== NULL
) {
9156 if(cltype33
>= (((long)var_pannotationsnode10
&3)?type_info
[((long)var_pannotationsnode10
&3)]:var_pannotationsnode10
->type
)->table_size
) {
9159 var32
= (((long)var_pannotationsnode10
&3)?type_info
[((long)var_pannotationsnode10
&3)]:var_pannotationsnode10
->type
)->type_table
[cltype33
] == idtype34
;
9162 if (unlikely(!var32
)) {
9163 PRINT_ERROR("Runtime error: %s", "Assert failed");
9164 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2946);
9167 var35
= NEW_nit__AAttrPropdef(&type_nit__AAttrPropdef
);
9169 nit__parser_prod___AAttrPropdef___init_aattrpropdef(var35
, var_pdocnode2
, var_tkwredefnode3
, var_pvisibilitynode4
, var_tkwvarnode5
, var_tidnode6
, var_ptypenode7
, var_tassignnode8
, var_pexprnode9
, var_pannotationsnode10
, ((val
*)NULL
), ((val
*)NULL
), ((val
*)NULL
)); /* Direct call parser_prod#AAttrPropdef#init_aattrpropdef on <var35:AAttrPropdef>*/
9171 var_ppropdefnode1
= var35
;
9172 var_node_list
= var_ppropdefnode1
;
9173 var36
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction60> */
9175 var37
= nit___nit__Parser___go_to(var_p
, var36
);
9178 nit___nit__Parser___push(var_p
, var37
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
9182 /* method parser#ReduceAction61#action for (self: ReduceAction61, Parser) */
9183 void nit__parser___nit__parser__ReduceAction61___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
9184 val
* var_p
/* var p: Parser */;
9185 val
* var_node_list
/* var node_list: nullable Object */;
9186 val
* var
/* : nullable Object */;
9187 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
9188 val
* var1
/* : nullable Object */;
9189 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
9190 val
* var2
/* : nullable Object */;
9191 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
9192 val
* var3
/* : nullable Object */;
9193 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
9194 val
* var4
/* : nullable Object */;
9195 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
9196 val
* var5
/* : nullable Object */;
9197 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
9198 val
* var6
/* : nullable Object */;
9199 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9200 val
* var7
/* : nullable Object */;
9201 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9202 val
* var_pdocnode2
/* var pdocnode2: nullable Object */;
9203 short int var8
/* : Bool */;
9206 val
* var_tkwredefnode3
/* var tkwredefnode3: nullable Object */;
9207 short int var9
/* : Bool */;
9210 val
* var_pvisibilitynode4
/* var pvisibilitynode4: nullable Object */;
9211 short int var12
/* : Bool */;
9214 val
* var_tkwvarnode5
/* var tkwvarnode5: nullable Object */;
9215 short int var15
/* : Bool */;
9218 val
* var_tidnode6
/* var tidnode6: nullable Object */;
9219 short int var18
/* : Bool */;
9222 val
* var_ptypenode7
/* var ptypenode7: nullable Object */;
9223 short int var21
/* : Bool */;
9226 val
* var_tkwdonode11
/* var tkwdonode11: nullable Object */;
9227 short int var24
/* : Bool */;
9230 val
* var_pexprnode12
/* var pexprnode12: nullable Object */;
9231 short int var27
/* : Bool */;
9234 val
* var30
/* : AAttrPropdef */;
9235 val
* var_ppropdefnode1
/* var ppropdefnode1: nullable AAttrPropdef */;
9236 long var31
/* : Int */;
9237 long var32
/* : Int */;
9239 var_node_list
= ((val
*)NULL
);
9241 var
= nit___nit__Parser___pop(var_p
);
9243 var_nodearraylist8
= var
;
9245 var1
= nit___nit__Parser___pop(var_p
);
9247 var_nodearraylist7
= var1
;
9249 var2
= nit___nit__Parser___pop(var_p
);
9251 var_nodearraylist6
= var2
;
9253 var3
= nit___nit__Parser___pop(var_p
);
9255 var_nodearraylist5
= var3
;
9257 var4
= nit___nit__Parser___pop(var_p
);
9259 var_nodearraylist4
= var4
;
9261 var5
= nit___nit__Parser___pop(var_p
);
9263 var_nodearraylist3
= var5
;
9265 var6
= nit___nit__Parser___pop(var_p
);
9267 var_nodearraylist2
= var6
;
9269 var7
= nit___nit__Parser___pop(var_p
);
9271 var_nodearraylist1
= var7
;
9272 var_pdocnode2
= var_nodearraylist1
;
9273 /* <var_pdocnode2:nullable Object> isa nullable ADoc */
9274 cltype
= type_nullable__nit__ADoc
.color
;
9275 idtype
= type_nullable__nit__ADoc
.id
;
9276 if(var_pdocnode2
== NULL
) {
9279 if(cltype
>= (((long)var_pdocnode2
&3)?type_info
[((long)var_pdocnode2
&3)]:var_pdocnode2
->type
)->table_size
) {
9282 var8
= (((long)var_pdocnode2
&3)?type_info
[((long)var_pdocnode2
&3)]:var_pdocnode2
->type
)->type_table
[cltype
] == idtype
;
9285 if (unlikely(!var8
)) {
9286 PRINT_ERROR("Runtime error: %s", "Assert failed");
9287 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2979);
9290 var_tkwredefnode3
= var_nodearraylist2
;
9291 /* <var_tkwredefnode3:nullable Object> isa nullable TKwredef */
9292 cltype10
= type_nullable__nit__TKwredef
.color
;
9293 idtype11
= type_nullable__nit__TKwredef
.id
;
9294 if(var_tkwredefnode3
== NULL
) {
9297 if(cltype10
>= (((long)var_tkwredefnode3
&3)?type_info
[((long)var_tkwredefnode3
&3)]:var_tkwredefnode3
->type
)->table_size
) {
9300 var9
= (((long)var_tkwredefnode3
&3)?type_info
[((long)var_tkwredefnode3
&3)]:var_tkwredefnode3
->type
)->type_table
[cltype10
] == idtype11
;
9303 if (unlikely(!var9
)) {
9304 PRINT_ERROR("Runtime error: %s", "Assert failed");
9305 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2981);
9308 var_pvisibilitynode4
= var_nodearraylist3
;
9309 /* <var_pvisibilitynode4:nullable Object> isa nullable AVisibility */
9310 cltype13
= type_nullable__nit__AVisibility
.color
;
9311 idtype14
= type_nullable__nit__AVisibility
.id
;
9312 if(var_pvisibilitynode4
== NULL
) {
9315 if(cltype13
>= (((long)var_pvisibilitynode4
&3)?type_info
[((long)var_pvisibilitynode4
&3)]:var_pvisibilitynode4
->type
)->table_size
) {
9318 var12
= (((long)var_pvisibilitynode4
&3)?type_info
[((long)var_pvisibilitynode4
&3)]:var_pvisibilitynode4
->type
)->type_table
[cltype13
] == idtype14
;
9321 if (unlikely(!var12
)) {
9322 PRINT_ERROR("Runtime error: %s", "Assert failed");
9323 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2983);
9326 var_tkwvarnode5
= var_nodearraylist4
;
9327 /* <var_tkwvarnode5:nullable Object> isa nullable TKwvar */
9328 cltype16
= type_nullable__nit__TKwvar
.color
;
9329 idtype17
= type_nullable__nit__TKwvar
.id
;
9330 if(var_tkwvarnode5
== NULL
) {
9333 if(cltype16
>= (((long)var_tkwvarnode5
&3)?type_info
[((long)var_tkwvarnode5
&3)]:var_tkwvarnode5
->type
)->table_size
) {
9336 var15
= (((long)var_tkwvarnode5
&3)?type_info
[((long)var_tkwvarnode5
&3)]:var_tkwvarnode5
->type
)->type_table
[cltype16
] == idtype17
;
9339 if (unlikely(!var15
)) {
9340 PRINT_ERROR("Runtime error: %s", "Assert failed");
9341 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2985);
9344 var_tidnode6
= var_nodearraylist5
;
9345 /* <var_tidnode6:nullable Object> isa nullable TId */
9346 cltype19
= type_nullable__nit__TId
.color
;
9347 idtype20
= type_nullable__nit__TId
.id
;
9348 if(var_tidnode6
== NULL
) {
9351 if(cltype19
>= (((long)var_tidnode6
&3)?type_info
[((long)var_tidnode6
&3)]:var_tidnode6
->type
)->table_size
) {
9354 var18
= (((long)var_tidnode6
&3)?type_info
[((long)var_tidnode6
&3)]:var_tidnode6
->type
)->type_table
[cltype19
] == idtype20
;
9357 if (unlikely(!var18
)) {
9358 PRINT_ERROR("Runtime error: %s", "Assert failed");
9359 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2987);
9362 var_ptypenode7
= var_nodearraylist6
;
9363 /* <var_ptypenode7:nullable Object> isa nullable AType */
9364 cltype22
= type_nullable__nit__AType
.color
;
9365 idtype23
= type_nullable__nit__AType
.id
;
9366 if(var_ptypenode7
== NULL
) {
9369 if(cltype22
>= (((long)var_ptypenode7
&3)?type_info
[((long)var_ptypenode7
&3)]:var_ptypenode7
->type
)->table_size
) {
9372 var21
= (((long)var_ptypenode7
&3)?type_info
[((long)var_ptypenode7
&3)]:var_ptypenode7
->type
)->type_table
[cltype22
] == idtype23
;
9375 if (unlikely(!var21
)) {
9376 PRINT_ERROR("Runtime error: %s", "Assert failed");
9377 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2989);
9380 var_tkwdonode11
= var_nodearraylist7
;
9381 /* <var_tkwdonode11:nullable Object> isa nullable TKwdo */
9382 cltype25
= type_nullable__nit__TKwdo
.color
;
9383 idtype26
= type_nullable__nit__TKwdo
.id
;
9384 if(var_tkwdonode11
== NULL
) {
9387 if(cltype25
>= (((long)var_tkwdonode11
&3)?type_info
[((long)var_tkwdonode11
&3)]:var_tkwdonode11
->type
)->table_size
) {
9390 var24
= (((long)var_tkwdonode11
&3)?type_info
[((long)var_tkwdonode11
&3)]:var_tkwdonode11
->type
)->type_table
[cltype25
] == idtype26
;
9393 if (unlikely(!var24
)) {
9394 PRINT_ERROR("Runtime error: %s", "Assert failed");
9395 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2991);
9398 var_pexprnode12
= var_nodearraylist8
;
9399 /* <var_pexprnode12:nullable Object> isa nullable AExpr */
9400 cltype28
= type_nullable__nit__AExpr
.color
;
9401 idtype29
= type_nullable__nit__AExpr
.id
;
9402 if(var_pexprnode12
== NULL
) {
9405 if(cltype28
>= (((long)var_pexprnode12
&3)?type_info
[((long)var_pexprnode12
&3)]:var_pexprnode12
->type
)->table_size
) {
9408 var27
= (((long)var_pexprnode12
&3)?type_info
[((long)var_pexprnode12
&3)]:var_pexprnode12
->type
)->type_table
[cltype28
] == idtype29
;
9411 if (unlikely(!var27
)) {
9412 PRINT_ERROR("Runtime error: %s", "Assert failed");
9413 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 2993);
9416 var30
= NEW_nit__AAttrPropdef(&type_nit__AAttrPropdef
);
9418 nit__parser_prod___AAttrPropdef___init_aattrpropdef(var30
, var_pdocnode2
, var_tkwredefnode3
, var_pvisibilitynode4
, var_tkwvarnode5
, var_tidnode6
, var_ptypenode7
, ((val
*)NULL
), ((val
*)NULL
), ((val
*)NULL
), var_tkwdonode11
, var_pexprnode12
, ((val
*)NULL
)); /* Direct call parser_prod#AAttrPropdef#init_aattrpropdef on <var30:AAttrPropdef>*/
9420 var_ppropdefnode1
= var30
;
9421 var_node_list
= var_ppropdefnode1
;
9422 var31
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction61> */
9424 var32
= nit___nit__Parser___go_to(var_p
, var31
);
9427 nit___nit__Parser___push(var_p
, var32
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
9431 /* method parser#ReduceAction62#action for (self: ReduceAction62, Parser) */
9432 void nit__parser___nit__parser__ReduceAction62___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
9433 val
* var_p
/* var p: Parser */;
9434 val
* var_node_list
/* var node_list: nullable Object */;
9435 val
* var
/* : nullable Object */;
9436 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
9437 val
* var1
/* : nullable Object */;
9438 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
9439 val
* var2
/* : nullable Object */;
9440 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
9441 val
* var3
/* : nullable Object */;
9442 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
9443 val
* var4
/* : nullable Object */;
9444 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
9445 val
* var5
/* : nullable Object */;
9446 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
9447 val
* var6
/* : nullable Object */;
9448 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
9449 val
* var7
/* : nullable Object */;
9450 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9451 val
* var8
/* : nullable Object */;
9452 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9453 val
* var_pdocnode2
/* var pdocnode2: nullable Object */;
9454 short int var9
/* : Bool */;
9457 val
* var_tkwredefnode3
/* var tkwredefnode3: nullable Object */;
9458 short int var10
/* : Bool */;
9461 val
* var_pvisibilitynode4
/* var pvisibilitynode4: nullable Object */;
9462 short int var13
/* : Bool */;
9465 val
* var_tkwvarnode5
/* var tkwvarnode5: nullable Object */;
9466 short int var16
/* : Bool */;
9469 val
* var_tidnode6
/* var tidnode6: nullable Object */;
9470 short int var19
/* : Bool */;
9473 val
* var_ptypenode7
/* var ptypenode7: nullable Object */;
9474 short int var22
/* : Bool */;
9477 val
* var_pannotationsnode10
/* var pannotationsnode10: nullable Object */;
9478 short int var25
/* : Bool */;
9481 val
* var_tkwdonode11
/* var tkwdonode11: nullable Object */;
9482 short int var28
/* : Bool */;
9485 val
* var_pexprnode12
/* var pexprnode12: nullable Object */;
9486 short int var31
/* : Bool */;
9489 val
* var34
/* : AAttrPropdef */;
9490 val
* var_ppropdefnode1
/* var ppropdefnode1: nullable AAttrPropdef */;
9491 long var35
/* : Int */;
9492 long var36
/* : Int */;
9494 var_node_list
= ((val
*)NULL
);
9496 var
= nit___nit__Parser___pop(var_p
);
9498 var_nodearraylist9
= var
;
9500 var1
= nit___nit__Parser___pop(var_p
);
9502 var_nodearraylist8
= var1
;
9504 var2
= nit___nit__Parser___pop(var_p
);
9506 var_nodearraylist7
= var2
;
9508 var3
= nit___nit__Parser___pop(var_p
);
9510 var_nodearraylist6
= var3
;
9512 var4
= nit___nit__Parser___pop(var_p
);
9514 var_nodearraylist5
= var4
;
9516 var5
= nit___nit__Parser___pop(var_p
);
9518 var_nodearraylist4
= var5
;
9520 var6
= nit___nit__Parser___pop(var_p
);
9522 var_nodearraylist3
= var6
;
9524 var7
= nit___nit__Parser___pop(var_p
);
9526 var_nodearraylist2
= var7
;
9528 var8
= nit___nit__Parser___pop(var_p
);
9530 var_nodearraylist1
= var8
;
9531 var_pdocnode2
= var_nodearraylist1
;
9532 /* <var_pdocnode2:nullable Object> isa nullable ADoc */
9533 cltype
= type_nullable__nit__ADoc
.color
;
9534 idtype
= type_nullable__nit__ADoc
.id
;
9535 if(var_pdocnode2
== NULL
) {
9538 if(cltype
>= (((long)var_pdocnode2
&3)?type_info
[((long)var_pdocnode2
&3)]:var_pdocnode2
->type
)->table_size
) {
9541 var9
= (((long)var_pdocnode2
&3)?type_info
[((long)var_pdocnode2
&3)]:var_pdocnode2
->type
)->type_table
[cltype
] == idtype
;
9544 if (unlikely(!var9
)) {
9545 PRINT_ERROR("Runtime error: %s", "Assert failed");
9546 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 3027);
9549 var_tkwredefnode3
= var_nodearraylist2
;
9550 /* <var_tkwredefnode3:nullable Object> isa nullable TKwredef */
9551 cltype11
= type_nullable__nit__TKwredef
.color
;
9552 idtype12
= type_nullable__nit__TKwredef
.id
;
9553 if(var_tkwredefnode3
== NULL
) {
9556 if(cltype11
>= (((long)var_tkwredefnode3
&3)?type_info
[((long)var_tkwredefnode3
&3)]:var_tkwredefnode3
->type
)->table_size
) {
9559 var10
= (((long)var_tkwredefnode3
&3)?type_info
[((long)var_tkwredefnode3
&3)]:var_tkwredefnode3
->type
)->type_table
[cltype11
] == idtype12
;
9562 if (unlikely(!var10
)) {
9563 PRINT_ERROR("Runtime error: %s", "Assert failed");
9564 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 3029);
9567 var_pvisibilitynode4
= var_nodearraylist3
;
9568 /* <var_pvisibilitynode4:nullable Object> isa nullable AVisibility */
9569 cltype14
= type_nullable__nit__AVisibility
.color
;
9570 idtype15
= type_nullable__nit__AVisibility
.id
;
9571 if(var_pvisibilitynode4
== NULL
) {
9574 if(cltype14
>= (((long)var_pvisibilitynode4
&3)?type_info
[((long)var_pvisibilitynode4
&3)]:var_pvisibilitynode4
->type
)->table_size
) {
9577 var13
= (((long)var_pvisibilitynode4
&3)?type_info
[((long)var_pvisibilitynode4
&3)]:var_pvisibilitynode4
->type
)->type_table
[cltype14
] == idtype15
;
9580 if (unlikely(!var13
)) {
9581 PRINT_ERROR("Runtime error: %s", "Assert failed");
9582 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 3031);
9585 var_tkwvarnode5
= var_nodearraylist4
;
9586 /* <var_tkwvarnode5:nullable Object> isa nullable TKwvar */
9587 cltype17
= type_nullable__nit__TKwvar
.color
;
9588 idtype18
= type_nullable__nit__TKwvar
.id
;
9589 if(var_tkwvarnode5
== NULL
) {
9592 if(cltype17
>= (((long)var_tkwvarnode5
&3)?type_info
[((long)var_tkwvarnode5
&3)]:var_tkwvarnode5
->type
)->table_size
) {
9595 var16
= (((long)var_tkwvarnode5
&3)?type_info
[((long)var_tkwvarnode5
&3)]:var_tkwvarnode5
->type
)->type_table
[cltype17
] == idtype18
;
9598 if (unlikely(!var16
)) {
9599 PRINT_ERROR("Runtime error: %s", "Assert failed");
9600 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 3033);
9603 var_tidnode6
= var_nodearraylist5
;
9604 /* <var_tidnode6:nullable Object> isa nullable TId */
9605 cltype20
= type_nullable__nit__TId
.color
;
9606 idtype21
= type_nullable__nit__TId
.id
;
9607 if(var_tidnode6
== NULL
) {
9610 if(cltype20
>= (((long)var_tidnode6
&3)?type_info
[((long)var_tidnode6
&3)]:var_tidnode6
->type
)->table_size
) {
9613 var19
= (((long)var_tidnode6
&3)?type_info
[((long)var_tidnode6
&3)]:var_tidnode6
->type
)->type_table
[cltype20
] == idtype21
;
9616 if (unlikely(!var19
)) {
9617 PRINT_ERROR("Runtime error: %s", "Assert failed");
9618 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 3035);
9621 var_ptypenode7
= var_nodearraylist6
;
9622 /* <var_ptypenode7:nullable Object> isa nullable AType */
9623 cltype23
= type_nullable__nit__AType
.color
;
9624 idtype24
= type_nullable__nit__AType
.id
;
9625 if(var_ptypenode7
== NULL
) {
9628 if(cltype23
>= (((long)var_ptypenode7
&3)?type_info
[((long)var_ptypenode7
&3)]:var_ptypenode7
->type
)->table_size
) {
9631 var22
= (((long)var_ptypenode7
&3)?type_info
[((long)var_ptypenode7
&3)]:var_ptypenode7
->type
)->type_table
[cltype23
] == idtype24
;
9634 if (unlikely(!var22
)) {
9635 PRINT_ERROR("Runtime error: %s", "Assert failed");
9636 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 3037);
9639 var_pannotationsnode10
= var_nodearraylist7
;
9640 /* <var_pannotationsnode10:nullable Object> isa nullable AAnnotations */
9641 cltype26
= type_nullable__nit__AAnnotations
.color
;
9642 idtype27
= type_nullable__nit__AAnnotations
.id
;
9643 if(var_pannotationsnode10
== NULL
) {
9646 if(cltype26
>= (((long)var_pannotationsnode10
&3)?type_info
[((long)var_pannotationsnode10
&3)]:var_pannotationsnode10
->type
)->table_size
) {
9649 var25
= (((long)var_pannotationsnode10
&3)?type_info
[((long)var_pannotationsnode10
&3)]:var_pannotationsnode10
->type
)->type_table
[cltype26
] == idtype27
;
9652 if (unlikely(!var25
)) {
9653 PRINT_ERROR("Runtime error: %s", "Assert failed");
9654 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 3039);
9657 var_tkwdonode11
= var_nodearraylist8
;
9658 /* <var_tkwdonode11:nullable Object> isa nullable TKwdo */
9659 cltype29
= type_nullable__nit__TKwdo
.color
;
9660 idtype30
= type_nullable__nit__TKwdo
.id
;
9661 if(var_tkwdonode11
== NULL
) {
9664 if(cltype29
>= (((long)var_tkwdonode11
&3)?type_info
[((long)var_tkwdonode11
&3)]:var_tkwdonode11
->type
)->table_size
) {
9667 var28
= (((long)var_tkwdonode11
&3)?type_info
[((long)var_tkwdonode11
&3)]:var_tkwdonode11
->type
)->type_table
[cltype29
] == idtype30
;
9670 if (unlikely(!var28
)) {
9671 PRINT_ERROR("Runtime error: %s", "Assert failed");
9672 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 3041);
9675 var_pexprnode12
= var_nodearraylist9
;
9676 /* <var_pexprnode12:nullable Object> isa nullable AExpr */
9677 cltype32
= type_nullable__nit__AExpr
.color
;
9678 idtype33
= type_nullable__nit__AExpr
.id
;
9679 if(var_pexprnode12
== NULL
) {
9682 if(cltype32
>= (((long)var_pexprnode12
&3)?type_info
[((long)var_pexprnode12
&3)]:var_pexprnode12
->type
)->table_size
) {
9685 var31
= (((long)var_pexprnode12
&3)?type_info
[((long)var_pexprnode12
&3)]:var_pexprnode12
->type
)->type_table
[cltype32
] == idtype33
;
9688 if (unlikely(!var31
)) {
9689 PRINT_ERROR("Runtime error: %s", "Assert failed");
9690 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 3043);
9693 var34
= NEW_nit__AAttrPropdef(&type_nit__AAttrPropdef
);
9695 nit__parser_prod___AAttrPropdef___init_aattrpropdef(var34
, var_pdocnode2
, var_tkwredefnode3
, var_pvisibilitynode4
, var_tkwvarnode5
, var_tidnode6
, var_ptypenode7
, ((val
*)NULL
), ((val
*)NULL
), var_pannotationsnode10
, var_tkwdonode11
, var_pexprnode12
, ((val
*)NULL
)); /* Direct call parser_prod#AAttrPropdef#init_aattrpropdef on <var34:AAttrPropdef>*/
9697 var_ppropdefnode1
= var34
;
9698 var_node_list
= var_ppropdefnode1
;
9699 var35
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction62> */
9701 var36
= nit___nit__Parser___go_to(var_p
, var35
);
9704 nit___nit__Parser___push(var_p
, var36
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
9708 /* method parser#ReduceAction63#action for (self: ReduceAction63, Parser) */
9709 void nit__parser___nit__parser__ReduceAction63___nit__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
9710 val
* var_p
/* var p: Parser */;
9711 val
* var_node_list
/* var node_list: nullable Object */;
9712 val
* var
/* : nullable Object */;
9713 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
9714 val
* var1
/* : nullable Object */;
9715 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
9716 val
* var2
/* : nullable Object */;
9717 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
9718 val
* var3
/* : nullable Object */;
9719 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
9720 val
* var4
/* : nullable Object */;
9721 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
9722 val
* var5
/* : nullable Object */;
9723 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
9724 val
* var6
/* : nullable Object */;
9725 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
9726 val
* var7
/* : nullable Object */;
9727 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9728 val
* var8
/* : nullable Object */;
9729 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9730 val
* var_pdocnode2
/* var pdocnode2: nullable Object */;
9731 short int var9
/* : Bool */;
9734 val
* var_tkwredefnode3
/* var tkwredefnode3: nullable Object */;
9735 short int var10
/* : Bool */;
9738 val
* var_pvisibilitynode4
/* var pvisibilitynode4: nullable Object */;
9739 short int var13
/* : Bool */;
9742 val
* var_tkwvarnode5
/* var tkwvarnode5: nullable Object */;
9743 short int var16
/* : Bool */;
9746 val
* var_tidnode6
/* var tidnode6: nullable Object */;
9747 short int var19
/* : Bool */;
9750 val
* var_ptypenode7
/* var ptypenode7: nullable Object */;
9751 short int var22
/* : Bool */;
9754 val
* var_tkwdonode11
/* var tkwdonode11: nullable Object */;
9755 short int var25
/* : Bool */;
9758 val
* var_pexprnode12
/* var pexprnode12: nullable Object */;
9759 short int var28
/* : Bool */;
9762 val
* var_tkwendnode13
/* var tkwendnode13: nullable Object */;
9763 short int var31
/* : Bool */;
9766 val
* var34
/* : AAttrPropdef */;
9767 val
* var_ppropdefnode1
/* var ppropdefnode1: nullable AAttrPropdef */;
9768 long var35
/* : Int */;
9769 long var36
/* : Int */;
9771 var_node_list
= ((val
*)NULL
);
9773 var
= nit___nit__Parser___pop(var_p
);
9775 var_nodearraylist9
= var
;
9777 var1
= nit___nit__Parser___pop(var_p
);
9779 var_nodearraylist8
= var1
;
9781 var2
= nit___nit__Parser___pop(var_p
);
9783 var_nodearraylist7
= var2
;
9785 var3
= nit___nit__Parser___pop(var_p
);
9787 var_nodearraylist6
= var3
;
9789 var4
= nit___nit__Parser___pop(var_p
);
9791 var_nodearraylist5
= var4
;
9793 var5
= nit___nit__Parser___pop(var_p
);
9795 var_nodearraylist4
= var5
;
9797 var6
= nit___nit__Parser___pop(var_p
);
9799 var_nodearraylist3
= var6
;
9801 var7
= nit___nit__Parser___pop(var_p
);
9803 var_nodearraylist2
= var7
;
9805 var8
= nit___nit__Parser___pop(var_p
);
9807 var_nodearraylist1
= var8
;
9808 var_pdocnode2
= var_nodearraylist1
;
9809 /* <var_pdocnode2:nullable Object> isa nullable ADoc */
9810 cltype
= type_nullable__nit__ADoc
.color
;
9811 idtype
= type_nullable__nit__ADoc
.id
;
9812 if(var_pdocnode2
== NULL
) {
9815 if(cltype
>= (((long)var_pdocnode2
&3)?type_info
[((long)var_pdocnode2
&3)]:var_pdocnode2
->type
)->table_size
) {
9818 var9
= (((long)var_pdocnode2
&3)?type_info
[((long)var_pdocnode2
&3)]:var_pdocnode2
->type
)->type_table
[cltype
] == idtype
;
9821 if (unlikely(!var9
)) {
9822 PRINT_ERROR("Runtime error: %s", "Assert failed");
9823 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 3077);
9826 var_tkwredefnode3
= var_nodearraylist2
;
9827 /* <var_tkwredefnode3:nullable Object> isa nullable TKwredef */
9828 cltype11
= type_nullable__nit__TKwredef
.color
;
9829 idtype12
= type_nullable__nit__TKwredef
.id
;
9830 if(var_tkwredefnode3
== NULL
) {
9833 if(cltype11
>= (((long)var_tkwredefnode3
&3)?type_info
[((long)var_tkwredefnode3
&3)]:var_tkwredefnode3
->type
)->table_size
) {
9836 var10
= (((long)var_tkwredefnode3
&3)?type_info
[((long)var_tkwredefnode3
&3)]:var_tkwredefnode3
->type
)->type_table
[cltype11
] == idtype12
;
9839 if (unlikely(!var10
)) {
9840 PRINT_ERROR("Runtime error: %s", "Assert failed");
9841 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 3079);
9844 var_pvisibilitynode4
= var_nodearraylist3
;
9845 /* <var_pvisibilitynode4:nullable Object> isa nullable AVisibility */
9846 cltype14
= type_nullable__nit__AVisibility
.color
;
9847 idtype15
= type_nullable__nit__AVisibility
.id
;
9848 if(var_pvisibilitynode4
== NULL
) {
9851 if(cltype14
>= (((long)var_pvisibilitynode4
&3)?type_info
[((long)var_pvisibilitynode4
&3)]:var_pvisibilitynode4
->type
)->table_size
) {
9854 var13
= (((long)var_pvisibilitynode4
&3)?type_info
[((long)var_pvisibilitynode4
&3)]:var_pvisibilitynode4
->type
)->type_table
[cltype14
] == idtype15
;
9857 if (unlikely(!var13
)) {
9858 PRINT_ERROR("Runtime error: %s", "Assert failed");
9859 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 3081);
9862 var_tkwvarnode5
= var_nodearraylist4
;
9863 /* <var_tkwvarnode5:nullable Object> isa nullable TKwvar */
9864 cltype17
= type_nullable__nit__TKwvar
.color
;
9865 idtype18
= type_nullable__nit__TKwvar
.id
;
9866 if(var_tkwvarnode5
== NULL
) {
9869 if(cltype17
>= (((long)var_tkwvarnode5
&3)?type_info
[((long)var_tkwvarnode5
&3)]:var_tkwvarnode5
->type
)->table_size
) {
9872 var16
= (((long)var_tkwvarnode5
&3)?type_info
[((long)var_tkwvarnode5
&3)]:var_tkwvarnode5
->type
)->type_table
[cltype17
] == idtype18
;
9875 if (unlikely(!var16
)) {
9876 PRINT_ERROR("Runtime error: %s", "Assert failed");
9877 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 3083);
9880 var_tidnode6
= var_nodearraylist5
;
9881 /* <var_tidnode6:nullable Object> isa nullable TId */
9882 cltype20
= type_nullable__nit__TId
.color
;
9883 idtype21
= type_nullable__nit__TId
.id
;
9884 if(var_tidnode6
== NULL
) {
9887 if(cltype20
>= (((long)var_tidnode6
&3)?type_info
[((long)var_tidnode6
&3)]:var_tidnode6
->type
)->table_size
) {
9890 var19
= (((long)var_tidnode6
&3)?type_info
[((long)var_tidnode6
&3)]:var_tidnode6
->type
)->type_table
[cltype20
] == idtype21
;
9893 if (unlikely(!var19
)) {
9894 PRINT_ERROR("Runtime error: %s", "Assert failed");
9895 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 3085);
9898 var_ptypenode7
= var_nodearraylist6
;
9899 /* <var_ptypenode7:nullable Object> isa nullable AType */
9900 cltype23
= type_nullable__nit__AType
.color
;
9901 idtype24
= type_nullable__nit__AType
.id
;
9902 if(var_ptypenode7
== NULL
) {
9905 if(cltype23
>= (((long)var_ptypenode7
&3)?type_info
[((long)var_ptypenode7
&3)]:var_ptypenode7
->type
)->table_size
) {
9908 var22
= (((long)var_ptypenode7
&3)?type_info
[((long)var_ptypenode7
&3)]:var_ptypenode7
->type
)->type_table
[cltype23
] == idtype24
;
9911 if (unlikely(!var22
)) {
9912 PRINT_ERROR("Runtime error: %s", "Assert failed");
9913 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 3087);
9916 var_tkwdonode11
= var_nodearraylist7
;
9917 /* <var_tkwdonode11:nullable Object> isa nullable TKwdo */
9918 cltype26
= type_nullable__nit__TKwdo
.color
;
9919 idtype27
= type_nullable__nit__TKwdo
.id
;
9920 if(var_tkwdonode11
== NULL
) {
9923 if(cltype26
>= (((long)var_tkwdonode11
&3)?type_info
[((long)var_tkwdonode11
&3)]:var_tkwdonode11
->type
)->table_size
) {
9926 var25
= (((long)var_tkwdonode11
&3)?type_info
[((long)var_tkwdonode11
&3)]:var_tkwdonode11
->type
)->type_table
[cltype26
] == idtype27
;
9929 if (unlikely(!var25
)) {
9930 PRINT_ERROR("Runtime error: %s", "Assert failed");
9931 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 3089);
9934 var_pexprnode12
= var_nodearraylist8
;
9935 /* <var_pexprnode12:nullable Object> isa nullable AExpr */
9936 cltype29
= type_nullable__nit__AExpr
.color
;
9937 idtype30
= type_nullable__nit__AExpr
.id
;
9938 if(var_pexprnode12
== NULL
) {
9941 if(cltype29
>= (((long)var_pexprnode12
&3)?type_info
[((long)var_pexprnode12
&3)]:var_pexprnode12
->type
)->table_size
) {
9944 var28
= (((long)var_pexprnode12
&3)?type_info
[((long)var_pexprnode12
&3)]:var_pexprnode12
->type
)->type_table
[cltype29
] == idtype30
;
9947 if (unlikely(!var28
)) {
9948 PRINT_ERROR("Runtime error: %s", "Assert failed");
9949 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 3091);
9952 var_tkwendnode13
= var_nodearraylist9
;
9953 /* <var_tkwendnode13:nullable Object> isa nullable TKwend */
9954 cltype32
= type_nullable__nit__TKwend
.color
;
9955 idtype33
= type_nullable__nit__TKwend
.id
;
9956 if(var_tkwendnode13
== NULL
) {
9959 if(cltype32
>= (((long)var_tkwendnode13
&3)?type_info
[((long)var_tkwendnode13
&3)]:var_tkwendnode13
->type
)->table_size
) {
9962 var31
= (((long)var_tkwendnode13
&3)?type_info
[((long)var_tkwendnode13
&3)]:var_tkwendnode13
->type
)->type_table
[cltype32
] == idtype33
;
9965 if (unlikely(!var31
)) {
9966 PRINT_ERROR("Runtime error: %s", "Assert failed");
9967 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser
, 3093);
9970 var34
= NEW_nit__AAttrPropdef(&type_nit__AAttrPropdef
);
9972 nit__parser_prod___AAttrPropdef___init_aattrpropdef(var34
, var_pdocnode2
, var_tkwredefnode3
, var_pvisibilitynode4
, var_tkwvarnode5
, var_tidnode6
, var_ptypenode7
, ((val
*)NULL
), ((val
*)NULL
), ((val
*)NULL
), var_tkwdonode11
, var_pexprnode12
, var_tkwendnode13
); /* Direct call parser_prod#AAttrPropdef#init_aattrpropdef on <var34:AAttrPropdef>*/
9974 var_ppropdefnode1
= var34
;
9975 var_node_list
= var_ppropdefnode1
;
9976 var35
= self
->attrs
[COLOR_nit__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction63> */
9978 var36
= nit___nit__Parser___go_to(var_p
, var35
);
9981 nit___nit__Parser___push(var_p
, var36
, var_node_list
); /* Direct call parser_work#Parser#push on <var_p:Parser>*/