1 #include "parser_prod.sep.0.h"
2 /* method parser_prod#AMethPropdef#visit_all for (self: AMethPropdef, Visitor) */
3 void parser_prod__AMethPropdef__visit_all(val
* self
, val
* p0
) {
4 val
* var_v
/* var v: Visitor */;
5 val
* var
/* : nullable ADoc */;
6 val
* var1
/* : nullable TKwredef */;
7 val
* var2
/* : nullable AVisibility */;
8 val
* var3
/* : nullable TKwmeth */;
9 val
* var4
/* : nullable TKwinit */;
10 val
* var5
/* : nullable TKwnew */;
11 val
* var6
/* : nullable AMethid */;
12 val
* var7
/* : nullable ASignature */;
13 val
* var8
/* : nullable AAnnotations */;
14 val
* var9
/* : nullable AExternCalls */;
15 val
* var10
/* : nullable AExternCodeBlock */;
16 val
* var11
/* : nullable AExpr */;
18 var
= self
->attrs
[COLOR_parser_nodes__APropdef___n_doc
].val
; /* _n_doc on <self:AMethPropdef> */
20 parser_nodes__Visitor__enter_visit(var_v
, var
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
22 var1
= self
->attrs
[COLOR_parser_nodes__APropdef___n_kwredef
].val
; /* _n_kwredef on <self:AMethPropdef> */
24 parser_nodes__Visitor__enter_visit(var_v
, var1
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
26 var2
= self
->attrs
[COLOR_parser_nodes__APropdef___n_visibility
].val
; /* _n_visibility on <self:AMethPropdef> */
28 parser_nodes__Visitor__enter_visit(var_v
, var2
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
30 var3
= self
->attrs
[COLOR_parser_nodes__AMethPropdef___n_kwmeth
].val
; /* _n_kwmeth on <self:AMethPropdef> */
32 parser_nodes__Visitor__enter_visit(var_v
, var3
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
34 var4
= self
->attrs
[COLOR_parser_nodes__AMethPropdef___n_kwinit
].val
; /* _n_kwinit on <self:AMethPropdef> */
36 parser_nodes__Visitor__enter_visit(var_v
, var4
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
38 var5
= self
->attrs
[COLOR_parser_nodes__AMethPropdef___n_kwnew
].val
; /* _n_kwnew on <self:AMethPropdef> */
40 parser_nodes__Visitor__enter_visit(var_v
, var5
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
42 var6
= self
->attrs
[COLOR_parser_nodes__AMethPropdef___n_methid
].val
; /* _n_methid on <self:AMethPropdef> */
44 parser_nodes__Visitor__enter_visit(var_v
, var6
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
46 var7
= self
->attrs
[COLOR_parser_nodes__AMethPropdef___n_signature
].val
; /* _n_signature on <self:AMethPropdef> */
48 parser_nodes__Visitor__enter_visit(var_v
, var7
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
50 var8
= self
->attrs
[COLOR_parser_nodes__Prod___n_annotations
].val
; /* _n_annotations on <self:AMethPropdef> */
52 parser_nodes__Visitor__enter_visit(var_v
, var8
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
54 var9
= self
->attrs
[COLOR_parser_nodes__AMethPropdef___n_extern_calls
].val
; /* _n_extern_calls on <self:AMethPropdef> */
56 parser_nodes__Visitor__enter_visit(var_v
, var9
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
58 var10
= self
->attrs
[COLOR_parser_nodes__AMethPropdef___n_extern_code_block
].val
; /* _n_extern_code_block on <self:AMethPropdef> */
60 parser_nodes__Visitor__enter_visit(var_v
, var10
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
62 var11
= self
->attrs
[COLOR_parser_nodes__AMethPropdef___n_block
].val
; /* _n_block on <self:AMethPropdef> */
64 parser_nodes__Visitor__enter_visit(var_v
, var11
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
68 /* method parser_prod#AMethPropdef#visit_all for (self: Object, Visitor) */
69 void VIRTUAL_parser_prod__AMethPropdef__visit_all(val
* self
, val
* p0
) {
70 parser_prod__AMethPropdef__visit_all(self
, p0
); /* Direct call parser_prod#AMethPropdef#visit_all on <self:Object(AMethPropdef)>*/
73 /* method parser_prod#AIdMethid#init_aidmethid for (self: AIdMethid, nullable TId) */
74 void parser_prod__AIdMethid__init_aidmethid(val
* self
, val
* p0
) {
75 val
* var_n_id
/* var n_id: nullable TId */;
77 if (unlikely(var_n_id
== NULL
)) {
78 PRINT_ERROR("Runtime error: %s", "Cast failed");
79 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1295);
82 self
->attrs
[COLOR_parser_nodes__AIdMethid___n_id
].val
= var_n_id
; /* _n_id on <self:AIdMethid> */
83 if (var_n_id
== NULL
) {
84 PRINT_ERROR("Runtime error: %s", "Receiver is null");
85 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1296);
88 { /* Inline parser_nodes#ANode#parent= (var_n_id,self) on <var_n_id:nullable TId> */
89 if (unlikely(var_n_id
== NULL
)) {
90 PRINT_ERROR("Runtime error: %s", "Receiver is null");
91 PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36);
94 var_n_id
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_id:nullable TId> */
100 /* method parser_prod#AIdMethid#init_aidmethid for (self: Object, nullable TId) */
101 void VIRTUAL_parser_prod__AIdMethid__init_aidmethid(val
* self
, val
* p0
) {
102 parser_prod__AIdMethid__init_aidmethid(self
, p0
); /* Direct call parser_prod#AIdMethid#init_aidmethid on <self:Object(AIdMethid)>*/
105 /* method parser_prod#AIdMethid#replace_child for (self: AIdMethid, ANode, nullable ANode) */
106 void parser_prod__AIdMethid__replace_child(val
* self
, val
* p0
, val
* p1
) {
107 val
* var_old_child
/* var old_child: ANode */;
108 val
* var_new_child
/* var new_child: nullable ANode */;
109 val
* var
/* : TId */;
110 short int var1
/* : Bool */;
111 short int var2
/* : Bool */;
112 val
* var_other
/* var other: nullable Object */;
113 short int var4
/* : Bool */;
114 short int var6
/* : Bool */;
115 short int var7
/* : Bool */;
118 const char* var_class_name
;
121 var
= self
->attrs
[COLOR_parser_nodes__AIdMethid___n_id
].val
; /* _n_id on <self:AIdMethid> */
122 if (unlikely(var
== NULL
)) {
123 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id");
124 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1301);
128 { /* Inline kernel#Object#== (var,var_old_child) on <var:TId> */
129 var_other
= var_old_child
;
131 { /* Inline kernel#Object#is_same_instance (var,var_other) on <var:TId> */
132 var6
= var
== var_other
;
145 /* <var_new_child:nullable ANode> isa TId */
146 cltype
= type_parser_nodes__TId
.color
;
147 idtype
= type_parser_nodes__TId
.id
;
148 if(var_new_child
== NULL
) {
151 if(cltype
>= var_new_child
->type
->table_size
) {
154 var7
= var_new_child
->type
->type_table
[cltype
] == idtype
;
157 if (unlikely(!var7
)) {
158 var_class_name
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
159 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TId", var_class_name
);
160 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1302);
164 parser_prod__AIdMethid__n_id_61d(self
, var_new_child
); /* Direct call parser_prod#AIdMethid#n_id= on <self:AIdMethid>*/
171 /* method parser_prod#AIdMethid#replace_child for (self: Object, ANode, nullable ANode) */
172 void VIRTUAL_parser_prod__AIdMethid__replace_child(val
* self
, val
* p0
, val
* p1
) {
173 parser_prod__AIdMethid__replace_child(self
, p0
, p1
); /* Direct call parser_prod#AIdMethid#replace_child on <self:Object(AIdMethid)>*/
176 /* method parser_prod#AIdMethid#n_id= for (self: AIdMethid, TId) */
177 void parser_prod__AIdMethid__n_id_61d(val
* self
, val
* p0
) {
178 val
* var_node
/* var node: TId */;
180 self
->attrs
[COLOR_parser_nodes__AIdMethid___n_id
].val
= var_node
; /* _n_id on <self:AIdMethid> */
182 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:TId> */
183 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:TId> */
189 /* method parser_prod#AIdMethid#n_id= for (self: Object, TId) */
190 void VIRTUAL_parser_prod__AIdMethid__n_id_61d(val
* self
, val
* p0
) {
191 parser_prod__AIdMethid__n_id_61d(self
, p0
); /* Direct call parser_prod#AIdMethid#n_id= on <self:Object(AIdMethid)>*/
194 /* method parser_prod#AIdMethid#visit_all for (self: AIdMethid, Visitor) */
195 void parser_prod__AIdMethid__visit_all(val
* self
, val
* p0
) {
196 val
* var_v
/* var v: Visitor */;
197 val
* var
/* : TId */;
199 var
= self
->attrs
[COLOR_parser_nodes__AIdMethid___n_id
].val
; /* _n_id on <self:AIdMethid> */
200 if (unlikely(var
== NULL
)) {
201 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id");
202 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1316);
206 parser_nodes__Visitor__enter_visit(var_v
, var
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
210 /* method parser_prod#AIdMethid#visit_all for (self: Object, Visitor) */
211 void VIRTUAL_parser_prod__AIdMethid__visit_all(val
* self
, val
* p0
) {
212 parser_prod__AIdMethid__visit_all(self
, p0
); /* Direct call parser_prod#AIdMethid#visit_all on <self:Object(AIdMethid)>*/
215 /* method parser_prod#APlusMethid#init_aplusmethid for (self: APlusMethid, nullable TPlus) */
216 void parser_prod__APlusMethid__init_aplusmethid(val
* self
, val
* p0
) {
217 val
* var_n_plus
/* var n_plus: nullable TPlus */;
219 if (unlikely(var_n_plus
== NULL
)) {
220 PRINT_ERROR("Runtime error: %s", "Cast failed");
221 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1324);
224 self
->attrs
[COLOR_parser_nodes__APlusMethid___n_plus
].val
= var_n_plus
; /* _n_plus on <self:APlusMethid> */
225 if (var_n_plus
== NULL
) {
226 PRINT_ERROR("Runtime error: %s", "Receiver is null");
227 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1325);
230 { /* Inline parser_nodes#ANode#parent= (var_n_plus,self) on <var_n_plus:nullable TPlus> */
231 if (unlikely(var_n_plus
== NULL
)) {
232 PRINT_ERROR("Runtime error: %s", "Receiver is null");
233 PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36);
236 var_n_plus
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_plus:nullable TPlus> */
242 /* method parser_prod#APlusMethid#init_aplusmethid for (self: Object, nullable TPlus) */
243 void VIRTUAL_parser_prod__APlusMethid__init_aplusmethid(val
* self
, val
* p0
) {
244 parser_prod__APlusMethid__init_aplusmethid(self
, p0
); /* Direct call parser_prod#APlusMethid#init_aplusmethid on <self:Object(APlusMethid)>*/
247 /* method parser_prod#APlusMethid#replace_child for (self: APlusMethid, ANode, nullable ANode) */
248 void parser_prod__APlusMethid__replace_child(val
* self
, val
* p0
, val
* p1
) {
249 val
* var_old_child
/* var old_child: ANode */;
250 val
* var_new_child
/* var new_child: nullable ANode */;
251 val
* var
/* : TPlus */;
252 short int var1
/* : Bool */;
253 short int var2
/* : Bool */;
254 val
* var_other
/* var other: nullable Object */;
255 short int var4
/* : Bool */;
256 short int var6
/* : Bool */;
257 short int var7
/* : Bool */;
260 const char* var_class_name
;
263 var
= self
->attrs
[COLOR_parser_nodes__APlusMethid___n_plus
].val
; /* _n_plus on <self:APlusMethid> */
264 if (unlikely(var
== NULL
)) {
265 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_plus");
266 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1330);
270 { /* Inline kernel#Object#== (var,var_old_child) on <var:TPlus> */
271 var_other
= var_old_child
;
273 { /* Inline kernel#Object#is_same_instance (var,var_other) on <var:TPlus> */
274 var6
= var
== var_other
;
287 /* <var_new_child:nullable ANode> isa TPlus */
288 cltype
= type_parser_nodes__TPlus
.color
;
289 idtype
= type_parser_nodes__TPlus
.id
;
290 if(var_new_child
== NULL
) {
293 if(cltype
>= var_new_child
->type
->table_size
) {
296 var7
= var_new_child
->type
->type_table
[cltype
] == idtype
;
299 if (unlikely(!var7
)) {
300 var_class_name
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
301 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TPlus", var_class_name
);
302 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1331);
306 parser_prod__APlusMethid__n_plus_61d(self
, var_new_child
); /* Direct call parser_prod#APlusMethid#n_plus= on <self:APlusMethid>*/
313 /* method parser_prod#APlusMethid#replace_child for (self: Object, ANode, nullable ANode) */
314 void VIRTUAL_parser_prod__APlusMethid__replace_child(val
* self
, val
* p0
, val
* p1
) {
315 parser_prod__APlusMethid__replace_child(self
, p0
, p1
); /* Direct call parser_prod#APlusMethid#replace_child on <self:Object(APlusMethid)>*/
318 /* method parser_prod#APlusMethid#n_plus= for (self: APlusMethid, TPlus) */
319 void parser_prod__APlusMethid__n_plus_61d(val
* self
, val
* p0
) {
320 val
* var_node
/* var node: TPlus */;
322 self
->attrs
[COLOR_parser_nodes__APlusMethid___n_plus
].val
= var_node
; /* _n_plus on <self:APlusMethid> */
324 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:TPlus> */
325 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:TPlus> */
331 /* method parser_prod#APlusMethid#n_plus= for (self: Object, TPlus) */
332 void VIRTUAL_parser_prod__APlusMethid__n_plus_61d(val
* self
, val
* p0
) {
333 parser_prod__APlusMethid__n_plus_61d(self
, p0
); /* Direct call parser_prod#APlusMethid#n_plus= on <self:Object(APlusMethid)>*/
336 /* method parser_prod#APlusMethid#visit_all for (self: APlusMethid, Visitor) */
337 void parser_prod__APlusMethid__visit_all(val
* self
, val
* p0
) {
338 val
* var_v
/* var v: Visitor */;
339 val
* var
/* : TPlus */;
341 var
= self
->attrs
[COLOR_parser_nodes__APlusMethid___n_plus
].val
; /* _n_plus on <self:APlusMethid> */
342 if (unlikely(var
== NULL
)) {
343 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_plus");
344 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1345);
348 parser_nodes__Visitor__enter_visit(var_v
, var
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
352 /* method parser_prod#APlusMethid#visit_all for (self: Object, Visitor) */
353 void VIRTUAL_parser_prod__APlusMethid__visit_all(val
* self
, val
* p0
) {
354 parser_prod__APlusMethid__visit_all(self
, p0
); /* Direct call parser_prod#APlusMethid#visit_all on <self:Object(APlusMethid)>*/
357 /* method parser_prod#AMinusMethid#init_aminusmethid for (self: AMinusMethid, nullable TMinus) */
358 void parser_prod__AMinusMethid__init_aminusmethid(val
* self
, val
* p0
) {
359 val
* var_n_minus
/* var n_minus: nullable TMinus */;
361 if (unlikely(var_n_minus
== NULL
)) {
362 PRINT_ERROR("Runtime error: %s", "Cast failed");
363 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1353);
366 self
->attrs
[COLOR_parser_nodes__AMinusMethid___n_minus
].val
= var_n_minus
; /* _n_minus on <self:AMinusMethid> */
367 if (var_n_minus
== NULL
) {
368 PRINT_ERROR("Runtime error: %s", "Receiver is null");
369 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1354);
372 { /* Inline parser_nodes#ANode#parent= (var_n_minus,self) on <var_n_minus:nullable TMinus> */
373 if (unlikely(var_n_minus
== NULL
)) {
374 PRINT_ERROR("Runtime error: %s", "Receiver is null");
375 PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36);
378 var_n_minus
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_minus:nullable TMinus> */
384 /* method parser_prod#AMinusMethid#init_aminusmethid for (self: Object, nullable TMinus) */
385 void VIRTUAL_parser_prod__AMinusMethid__init_aminusmethid(val
* self
, val
* p0
) {
386 parser_prod__AMinusMethid__init_aminusmethid(self
, p0
); /* Direct call parser_prod#AMinusMethid#init_aminusmethid on <self:Object(AMinusMethid)>*/
389 /* method parser_prod#AMinusMethid#replace_child for (self: AMinusMethid, ANode, nullable ANode) */
390 void parser_prod__AMinusMethid__replace_child(val
* self
, val
* p0
, val
* p1
) {
391 val
* var_old_child
/* var old_child: ANode */;
392 val
* var_new_child
/* var new_child: nullable ANode */;
393 val
* var
/* : TMinus */;
394 short int var1
/* : Bool */;
395 short int var2
/* : Bool */;
396 val
* var_other
/* var other: nullable Object */;
397 short int var4
/* : Bool */;
398 short int var6
/* : Bool */;
399 short int var7
/* : Bool */;
402 const char* var_class_name
;
405 var
= self
->attrs
[COLOR_parser_nodes__AMinusMethid___n_minus
].val
; /* _n_minus on <self:AMinusMethid> */
406 if (unlikely(var
== NULL
)) {
407 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_minus");
408 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1359);
412 { /* Inline kernel#Object#== (var,var_old_child) on <var:TMinus> */
413 var_other
= var_old_child
;
415 { /* Inline kernel#Object#is_same_instance (var,var_other) on <var:TMinus> */
416 var6
= var
== var_other
;
429 /* <var_new_child:nullable ANode> isa TMinus */
430 cltype
= type_parser_nodes__TMinus
.color
;
431 idtype
= type_parser_nodes__TMinus
.id
;
432 if(var_new_child
== NULL
) {
435 if(cltype
>= var_new_child
->type
->table_size
) {
438 var7
= var_new_child
->type
->type_table
[cltype
] == idtype
;
441 if (unlikely(!var7
)) {
442 var_class_name
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
443 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TMinus", var_class_name
);
444 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1360);
448 parser_prod__AMinusMethid__n_minus_61d(self
, var_new_child
); /* Direct call parser_prod#AMinusMethid#n_minus= on <self:AMinusMethid>*/
455 /* method parser_prod#AMinusMethid#replace_child for (self: Object, ANode, nullable ANode) */
456 void VIRTUAL_parser_prod__AMinusMethid__replace_child(val
* self
, val
* p0
, val
* p1
) {
457 parser_prod__AMinusMethid__replace_child(self
, p0
, p1
); /* Direct call parser_prod#AMinusMethid#replace_child on <self:Object(AMinusMethid)>*/
460 /* method parser_prod#AMinusMethid#n_minus= for (self: AMinusMethid, TMinus) */
461 void parser_prod__AMinusMethid__n_minus_61d(val
* self
, val
* p0
) {
462 val
* var_node
/* var node: TMinus */;
464 self
->attrs
[COLOR_parser_nodes__AMinusMethid___n_minus
].val
= var_node
; /* _n_minus on <self:AMinusMethid> */
466 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:TMinus> */
467 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:TMinus> */
473 /* method parser_prod#AMinusMethid#n_minus= for (self: Object, TMinus) */
474 void VIRTUAL_parser_prod__AMinusMethid__n_minus_61d(val
* self
, val
* p0
) {
475 parser_prod__AMinusMethid__n_minus_61d(self
, p0
); /* Direct call parser_prod#AMinusMethid#n_minus= on <self:Object(AMinusMethid)>*/
478 /* method parser_prod#AMinusMethid#visit_all for (self: AMinusMethid, Visitor) */
479 void parser_prod__AMinusMethid__visit_all(val
* self
, val
* p0
) {
480 val
* var_v
/* var v: Visitor */;
481 val
* var
/* : TMinus */;
483 var
= self
->attrs
[COLOR_parser_nodes__AMinusMethid___n_minus
].val
; /* _n_minus on <self:AMinusMethid> */
484 if (unlikely(var
== NULL
)) {
485 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_minus");
486 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1374);
490 parser_nodes__Visitor__enter_visit(var_v
, var
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
494 /* method parser_prod#AMinusMethid#visit_all for (self: Object, Visitor) */
495 void VIRTUAL_parser_prod__AMinusMethid__visit_all(val
* self
, val
* p0
) {
496 parser_prod__AMinusMethid__visit_all(self
, p0
); /* Direct call parser_prod#AMinusMethid#visit_all on <self:Object(AMinusMethid)>*/
499 /* method parser_prod#AStarMethid#init_astarmethid for (self: AStarMethid, nullable TStar) */
500 void parser_prod__AStarMethid__init_astarmethid(val
* self
, val
* p0
) {
501 val
* var_n_star
/* var n_star: nullable TStar */;
503 if (unlikely(var_n_star
== NULL
)) {
504 PRINT_ERROR("Runtime error: %s", "Cast failed");
505 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1382);
508 self
->attrs
[COLOR_parser_nodes__AStarMethid___n_star
].val
= var_n_star
; /* _n_star on <self:AStarMethid> */
509 if (var_n_star
== NULL
) {
510 PRINT_ERROR("Runtime error: %s", "Receiver is null");
511 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1383);
514 { /* Inline parser_nodes#ANode#parent= (var_n_star,self) on <var_n_star:nullable TStar> */
515 if (unlikely(var_n_star
== NULL
)) {
516 PRINT_ERROR("Runtime error: %s", "Receiver is null");
517 PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36);
520 var_n_star
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_star:nullable TStar> */
526 /* method parser_prod#AStarMethid#init_astarmethid for (self: Object, nullable TStar) */
527 void VIRTUAL_parser_prod__AStarMethid__init_astarmethid(val
* self
, val
* p0
) {
528 parser_prod__AStarMethid__init_astarmethid(self
, p0
); /* Direct call parser_prod#AStarMethid#init_astarmethid on <self:Object(AStarMethid)>*/
531 /* method parser_prod#AStarMethid#replace_child for (self: AStarMethid, ANode, nullable ANode) */
532 void parser_prod__AStarMethid__replace_child(val
* self
, val
* p0
, val
* p1
) {
533 val
* var_old_child
/* var old_child: ANode */;
534 val
* var_new_child
/* var new_child: nullable ANode */;
535 val
* var
/* : TStar */;
536 short int var1
/* : Bool */;
537 short int var2
/* : Bool */;
538 val
* var_other
/* var other: nullable Object */;
539 short int var4
/* : Bool */;
540 short int var6
/* : Bool */;
541 short int var7
/* : Bool */;
544 const char* var_class_name
;
547 var
= self
->attrs
[COLOR_parser_nodes__AStarMethid___n_star
].val
; /* _n_star on <self:AStarMethid> */
548 if (unlikely(var
== NULL
)) {
549 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_star");
550 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1388);
554 { /* Inline kernel#Object#== (var,var_old_child) on <var:TStar> */
555 var_other
= var_old_child
;
557 { /* Inline kernel#Object#is_same_instance (var,var_other) on <var:TStar> */
558 var6
= var
== var_other
;
571 /* <var_new_child:nullable ANode> isa TStar */
572 cltype
= type_parser_nodes__TStar
.color
;
573 idtype
= type_parser_nodes__TStar
.id
;
574 if(var_new_child
== NULL
) {
577 if(cltype
>= var_new_child
->type
->table_size
) {
580 var7
= var_new_child
->type
->type_table
[cltype
] == idtype
;
583 if (unlikely(!var7
)) {
584 var_class_name
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
585 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TStar", var_class_name
);
586 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1389);
590 parser_prod__AStarMethid__n_star_61d(self
, var_new_child
); /* Direct call parser_prod#AStarMethid#n_star= on <self:AStarMethid>*/
597 /* method parser_prod#AStarMethid#replace_child for (self: Object, ANode, nullable ANode) */
598 void VIRTUAL_parser_prod__AStarMethid__replace_child(val
* self
, val
* p0
, val
* p1
) {
599 parser_prod__AStarMethid__replace_child(self
, p0
, p1
); /* Direct call parser_prod#AStarMethid#replace_child on <self:Object(AStarMethid)>*/
602 /* method parser_prod#AStarMethid#n_star= for (self: AStarMethid, TStar) */
603 void parser_prod__AStarMethid__n_star_61d(val
* self
, val
* p0
) {
604 val
* var_node
/* var node: TStar */;
606 self
->attrs
[COLOR_parser_nodes__AStarMethid___n_star
].val
= var_node
; /* _n_star on <self:AStarMethid> */
608 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:TStar> */
609 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:TStar> */
615 /* method parser_prod#AStarMethid#n_star= for (self: Object, TStar) */
616 void VIRTUAL_parser_prod__AStarMethid__n_star_61d(val
* self
, val
* p0
) {
617 parser_prod__AStarMethid__n_star_61d(self
, p0
); /* Direct call parser_prod#AStarMethid#n_star= on <self:Object(AStarMethid)>*/
620 /* method parser_prod#AStarMethid#visit_all for (self: AStarMethid, Visitor) */
621 void parser_prod__AStarMethid__visit_all(val
* self
, val
* p0
) {
622 val
* var_v
/* var v: Visitor */;
623 val
* var
/* : TStar */;
625 var
= self
->attrs
[COLOR_parser_nodes__AStarMethid___n_star
].val
; /* _n_star on <self:AStarMethid> */
626 if (unlikely(var
== NULL
)) {
627 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_star");
628 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1403);
632 parser_nodes__Visitor__enter_visit(var_v
, var
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
636 /* method parser_prod#AStarMethid#visit_all for (self: Object, Visitor) */
637 void VIRTUAL_parser_prod__AStarMethid__visit_all(val
* self
, val
* p0
) {
638 parser_prod__AStarMethid__visit_all(self
, p0
); /* Direct call parser_prod#AStarMethid#visit_all on <self:Object(AStarMethid)>*/
641 /* method parser_prod#AStarstarMethid#init_astarstarmethid for (self: AStarstarMethid, nullable TStarstar) */
642 void parser_prod__AStarstarMethid__init_astarstarmethid(val
* self
, val
* p0
) {
643 val
* var_n_starstar
/* var n_starstar: nullable TStarstar */;
645 if (unlikely(var_n_starstar
== NULL
)) {
646 PRINT_ERROR("Runtime error: %s", "Cast failed");
647 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1411);
650 self
->attrs
[COLOR_parser_nodes__AStarstarMethid___n_starstar
].val
= var_n_starstar
; /* _n_starstar on <self:AStarstarMethid> */
651 if (var_n_starstar
== NULL
) {
652 PRINT_ERROR("Runtime error: %s", "Receiver is null");
653 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1412);
656 { /* Inline parser_nodes#ANode#parent= (var_n_starstar,self) on <var_n_starstar:nullable TStarstar> */
657 if (unlikely(var_n_starstar
== NULL
)) {
658 PRINT_ERROR("Runtime error: %s", "Receiver is null");
659 PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36);
662 var_n_starstar
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_starstar:nullable TStarstar> */
668 /* method parser_prod#AStarstarMethid#init_astarstarmethid for (self: Object, nullable TStarstar) */
669 void VIRTUAL_parser_prod__AStarstarMethid__init_astarstarmethid(val
* self
, val
* p0
) {
670 parser_prod__AStarstarMethid__init_astarstarmethid(self
, p0
); /* Direct call parser_prod#AStarstarMethid#init_astarstarmethid on <self:Object(AStarstarMethid)>*/
673 /* method parser_prod#AStarstarMethid#replace_child for (self: AStarstarMethid, ANode, nullable ANode) */
674 void parser_prod__AStarstarMethid__replace_child(val
* self
, val
* p0
, val
* p1
) {
675 val
* var_old_child
/* var old_child: ANode */;
676 val
* var_new_child
/* var new_child: nullable ANode */;
677 val
* var
/* : TStarstar */;
678 short int var1
/* : Bool */;
679 short int var2
/* : Bool */;
680 val
* var_other
/* var other: nullable Object */;
681 short int var4
/* : Bool */;
682 short int var6
/* : Bool */;
683 short int var7
/* : Bool */;
686 const char* var_class_name
;
689 var
= self
->attrs
[COLOR_parser_nodes__AStarstarMethid___n_starstar
].val
; /* _n_starstar on <self:AStarstarMethid> */
690 if (unlikely(var
== NULL
)) {
691 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_starstar");
692 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1417);
696 { /* Inline kernel#Object#== (var,var_old_child) on <var:TStarstar> */
697 var_other
= var_old_child
;
699 { /* Inline kernel#Object#is_same_instance (var,var_other) on <var:TStarstar> */
700 var6
= var
== var_other
;
713 /* <var_new_child:nullable ANode> isa TStarstar */
714 cltype
= type_parser_nodes__TStarstar
.color
;
715 idtype
= type_parser_nodes__TStarstar
.id
;
716 if(var_new_child
== NULL
) {
719 if(cltype
>= var_new_child
->type
->table_size
) {
722 var7
= var_new_child
->type
->type_table
[cltype
] == idtype
;
725 if (unlikely(!var7
)) {
726 var_class_name
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
727 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TStarstar", var_class_name
);
728 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1418);
732 parser_prod__AStarstarMethid__n_starstar_61d(self
, var_new_child
); /* Direct call parser_prod#AStarstarMethid#n_starstar= on <self:AStarstarMethid>*/
739 /* method parser_prod#AStarstarMethid#replace_child for (self: Object, ANode, nullable ANode) */
740 void VIRTUAL_parser_prod__AStarstarMethid__replace_child(val
* self
, val
* p0
, val
* p1
) {
741 parser_prod__AStarstarMethid__replace_child(self
, p0
, p1
); /* Direct call parser_prod#AStarstarMethid#replace_child on <self:Object(AStarstarMethid)>*/
744 /* method parser_prod#AStarstarMethid#n_starstar= for (self: AStarstarMethid, TStarstar) */
745 void parser_prod__AStarstarMethid__n_starstar_61d(val
* self
, val
* p0
) {
746 val
* var_node
/* var node: TStarstar */;
748 self
->attrs
[COLOR_parser_nodes__AStarstarMethid___n_starstar
].val
= var_node
; /* _n_starstar on <self:AStarstarMethid> */
750 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:TStarstar> */
751 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:TStarstar> */
757 /* method parser_prod#AStarstarMethid#n_starstar= for (self: Object, TStarstar) */
758 void VIRTUAL_parser_prod__AStarstarMethid__n_starstar_61d(val
* self
, val
* p0
) {
759 parser_prod__AStarstarMethid__n_starstar_61d(self
, p0
); /* Direct call parser_prod#AStarstarMethid#n_starstar= on <self:Object(AStarstarMethid)>*/
762 /* method parser_prod#AStarstarMethid#visit_all for (self: AStarstarMethid, Visitor) */
763 void parser_prod__AStarstarMethid__visit_all(val
* self
, val
* p0
) {
764 val
* var_v
/* var v: Visitor */;
765 val
* var
/* : TStarstar */;
767 var
= self
->attrs
[COLOR_parser_nodes__AStarstarMethid___n_starstar
].val
; /* _n_starstar on <self:AStarstarMethid> */
768 if (unlikely(var
== NULL
)) {
769 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_starstar");
770 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1432);
774 parser_nodes__Visitor__enter_visit(var_v
, var
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
778 /* method parser_prod#AStarstarMethid#visit_all for (self: Object, Visitor) */
779 void VIRTUAL_parser_prod__AStarstarMethid__visit_all(val
* self
, val
* p0
) {
780 parser_prod__AStarstarMethid__visit_all(self
, p0
); /* Direct call parser_prod#AStarstarMethid#visit_all on <self:Object(AStarstarMethid)>*/
783 /* method parser_prod#ASlashMethid#init_aslashmethid for (self: ASlashMethid, nullable TSlash) */
784 void parser_prod__ASlashMethid__init_aslashmethid(val
* self
, val
* p0
) {
785 val
* var_n_slash
/* var n_slash: nullable TSlash */;
787 if (unlikely(var_n_slash
== NULL
)) {
788 PRINT_ERROR("Runtime error: %s", "Cast failed");
789 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1440);
792 self
->attrs
[COLOR_parser_nodes__ASlashMethid___n_slash
].val
= var_n_slash
; /* _n_slash on <self:ASlashMethid> */
793 if (var_n_slash
== NULL
) {
794 PRINT_ERROR("Runtime error: %s", "Receiver is null");
795 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1441);
798 { /* Inline parser_nodes#ANode#parent= (var_n_slash,self) on <var_n_slash:nullable TSlash> */
799 if (unlikely(var_n_slash
== NULL
)) {
800 PRINT_ERROR("Runtime error: %s", "Receiver is null");
801 PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36);
804 var_n_slash
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_slash:nullable TSlash> */
810 /* method parser_prod#ASlashMethid#init_aslashmethid for (self: Object, nullable TSlash) */
811 void VIRTUAL_parser_prod__ASlashMethid__init_aslashmethid(val
* self
, val
* p0
) {
812 parser_prod__ASlashMethid__init_aslashmethid(self
, p0
); /* Direct call parser_prod#ASlashMethid#init_aslashmethid on <self:Object(ASlashMethid)>*/
815 /* method parser_prod#ASlashMethid#replace_child for (self: ASlashMethid, ANode, nullable ANode) */
816 void parser_prod__ASlashMethid__replace_child(val
* self
, val
* p0
, val
* p1
) {
817 val
* var_old_child
/* var old_child: ANode */;
818 val
* var_new_child
/* var new_child: nullable ANode */;
819 val
* var
/* : TSlash */;
820 short int var1
/* : Bool */;
821 short int var2
/* : Bool */;
822 val
* var_other
/* var other: nullable Object */;
823 short int var4
/* : Bool */;
824 short int var6
/* : Bool */;
825 short int var7
/* : Bool */;
828 const char* var_class_name
;
831 var
= self
->attrs
[COLOR_parser_nodes__ASlashMethid___n_slash
].val
; /* _n_slash on <self:ASlashMethid> */
832 if (unlikely(var
== NULL
)) {
833 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_slash");
834 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1446);
838 { /* Inline kernel#Object#== (var,var_old_child) on <var:TSlash> */
839 var_other
= var_old_child
;
841 { /* Inline kernel#Object#is_same_instance (var,var_other) on <var:TSlash> */
842 var6
= var
== var_other
;
855 /* <var_new_child:nullable ANode> isa TSlash */
856 cltype
= type_parser_nodes__TSlash
.color
;
857 idtype
= type_parser_nodes__TSlash
.id
;
858 if(var_new_child
== NULL
) {
861 if(cltype
>= var_new_child
->type
->table_size
) {
864 var7
= var_new_child
->type
->type_table
[cltype
] == idtype
;
867 if (unlikely(!var7
)) {
868 var_class_name
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
869 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TSlash", var_class_name
);
870 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1447);
874 parser_prod__ASlashMethid__n_slash_61d(self
, var_new_child
); /* Direct call parser_prod#ASlashMethid#n_slash= on <self:ASlashMethid>*/
881 /* method parser_prod#ASlashMethid#replace_child for (self: Object, ANode, nullable ANode) */
882 void VIRTUAL_parser_prod__ASlashMethid__replace_child(val
* self
, val
* p0
, val
* p1
) {
883 parser_prod__ASlashMethid__replace_child(self
, p0
, p1
); /* Direct call parser_prod#ASlashMethid#replace_child on <self:Object(ASlashMethid)>*/
886 /* method parser_prod#ASlashMethid#n_slash= for (self: ASlashMethid, TSlash) */
887 void parser_prod__ASlashMethid__n_slash_61d(val
* self
, val
* p0
) {
888 val
* var_node
/* var node: TSlash */;
890 self
->attrs
[COLOR_parser_nodes__ASlashMethid___n_slash
].val
= var_node
; /* _n_slash on <self:ASlashMethid> */
892 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:TSlash> */
893 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:TSlash> */
899 /* method parser_prod#ASlashMethid#n_slash= for (self: Object, TSlash) */
900 void VIRTUAL_parser_prod__ASlashMethid__n_slash_61d(val
* self
, val
* p0
) {
901 parser_prod__ASlashMethid__n_slash_61d(self
, p0
); /* Direct call parser_prod#ASlashMethid#n_slash= on <self:Object(ASlashMethid)>*/
904 /* method parser_prod#ASlashMethid#visit_all for (self: ASlashMethid, Visitor) */
905 void parser_prod__ASlashMethid__visit_all(val
* self
, val
* p0
) {
906 val
* var_v
/* var v: Visitor */;
907 val
* var
/* : TSlash */;
909 var
= self
->attrs
[COLOR_parser_nodes__ASlashMethid___n_slash
].val
; /* _n_slash on <self:ASlashMethid> */
910 if (unlikely(var
== NULL
)) {
911 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_slash");
912 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1461);
916 parser_nodes__Visitor__enter_visit(var_v
, var
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
920 /* method parser_prod#ASlashMethid#visit_all for (self: Object, Visitor) */
921 void VIRTUAL_parser_prod__ASlashMethid__visit_all(val
* self
, val
* p0
) {
922 parser_prod__ASlashMethid__visit_all(self
, p0
); /* Direct call parser_prod#ASlashMethid#visit_all on <self:Object(ASlashMethid)>*/
925 /* method parser_prod#APercentMethid#init_apercentmethid for (self: APercentMethid, nullable TPercent) */
926 void parser_prod__APercentMethid__init_apercentmethid(val
* self
, val
* p0
) {
927 val
* var_n_percent
/* var n_percent: nullable TPercent */;
929 if (unlikely(var_n_percent
== NULL
)) {
930 PRINT_ERROR("Runtime error: %s", "Cast failed");
931 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1469);
934 self
->attrs
[COLOR_parser_nodes__APercentMethid___n_percent
].val
= var_n_percent
; /* _n_percent on <self:APercentMethid> */
935 if (var_n_percent
== NULL
) {
936 PRINT_ERROR("Runtime error: %s", "Receiver is null");
937 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1470);
940 { /* Inline parser_nodes#ANode#parent= (var_n_percent,self) on <var_n_percent:nullable TPercent> */
941 if (unlikely(var_n_percent
== NULL
)) {
942 PRINT_ERROR("Runtime error: %s", "Receiver is null");
943 PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36);
946 var_n_percent
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_percent:nullable TPercent> */
952 /* method parser_prod#APercentMethid#init_apercentmethid for (self: Object, nullable TPercent) */
953 void VIRTUAL_parser_prod__APercentMethid__init_apercentmethid(val
* self
, val
* p0
) {
954 parser_prod__APercentMethid__init_apercentmethid(self
, p0
); /* Direct call parser_prod#APercentMethid#init_apercentmethid on <self:Object(APercentMethid)>*/
957 /* method parser_prod#APercentMethid#replace_child for (self: APercentMethid, ANode, nullable ANode) */
958 void parser_prod__APercentMethid__replace_child(val
* self
, val
* p0
, val
* p1
) {
959 val
* var_old_child
/* var old_child: ANode */;
960 val
* var_new_child
/* var new_child: nullable ANode */;
961 val
* var
/* : TPercent */;
962 short int var1
/* : Bool */;
963 short int var2
/* : Bool */;
964 val
* var_other
/* var other: nullable Object */;
965 short int var4
/* : Bool */;
966 short int var6
/* : Bool */;
967 short int var7
/* : Bool */;
970 const char* var_class_name
;
973 var
= self
->attrs
[COLOR_parser_nodes__APercentMethid___n_percent
].val
; /* _n_percent on <self:APercentMethid> */
974 if (unlikely(var
== NULL
)) {
975 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_percent");
976 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1475);
980 { /* Inline kernel#Object#== (var,var_old_child) on <var:TPercent> */
981 var_other
= var_old_child
;
983 { /* Inline kernel#Object#is_same_instance (var,var_other) on <var:TPercent> */
984 var6
= var
== var_other
;
997 /* <var_new_child:nullable ANode> isa TPercent */
998 cltype
= type_parser_nodes__TPercent
.color
;
999 idtype
= type_parser_nodes__TPercent
.id
;
1000 if(var_new_child
== NULL
) {
1003 if(cltype
>= var_new_child
->type
->table_size
) {
1006 var7
= var_new_child
->type
->type_table
[cltype
] == idtype
;
1009 if (unlikely(!var7
)) {
1010 var_class_name
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
1011 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TPercent", var_class_name
);
1012 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1476);
1016 parser_prod__APercentMethid__n_percent_61d(self
, var_new_child
); /* Direct call parser_prod#APercentMethid#n_percent= on <self:APercentMethid>*/
1023 /* method parser_prod#APercentMethid#replace_child for (self: Object, ANode, nullable ANode) */
1024 void VIRTUAL_parser_prod__APercentMethid__replace_child(val
* self
, val
* p0
, val
* p1
) {
1025 parser_prod__APercentMethid__replace_child(self
, p0
, p1
); /* Direct call parser_prod#APercentMethid#replace_child on <self:Object(APercentMethid)>*/
1028 /* method parser_prod#APercentMethid#n_percent= for (self: APercentMethid, TPercent) */
1029 void parser_prod__APercentMethid__n_percent_61d(val
* self
, val
* p0
) {
1030 val
* var_node
/* var node: TPercent */;
1032 self
->attrs
[COLOR_parser_nodes__APercentMethid___n_percent
].val
= var_node
; /* _n_percent on <self:APercentMethid> */
1034 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:TPercent> */
1035 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:TPercent> */
1041 /* method parser_prod#APercentMethid#n_percent= for (self: Object, TPercent) */
1042 void VIRTUAL_parser_prod__APercentMethid__n_percent_61d(val
* self
, val
* p0
) {
1043 parser_prod__APercentMethid__n_percent_61d(self
, p0
); /* Direct call parser_prod#APercentMethid#n_percent= on <self:Object(APercentMethid)>*/
1046 /* method parser_prod#APercentMethid#visit_all for (self: APercentMethid, Visitor) */
1047 void parser_prod__APercentMethid__visit_all(val
* self
, val
* p0
) {
1048 val
* var_v
/* var v: Visitor */;
1049 val
* var
/* : TPercent */;
1051 var
= self
->attrs
[COLOR_parser_nodes__APercentMethid___n_percent
].val
; /* _n_percent on <self:APercentMethid> */
1052 if (unlikely(var
== NULL
)) {
1053 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_percent");
1054 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1490);
1058 parser_nodes__Visitor__enter_visit(var_v
, var
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
1062 /* method parser_prod#APercentMethid#visit_all for (self: Object, Visitor) */
1063 void VIRTUAL_parser_prod__APercentMethid__visit_all(val
* self
, val
* p0
) {
1064 parser_prod__APercentMethid__visit_all(self
, p0
); /* Direct call parser_prod#APercentMethid#visit_all on <self:Object(APercentMethid)>*/
1067 /* method parser_prod#AEqMethid#init_aeqmethid for (self: AEqMethid, nullable TEq) */
1068 void parser_prod__AEqMethid__init_aeqmethid(val
* self
, val
* p0
) {
1069 val
* var_n_eq
/* var n_eq: nullable TEq */;
1071 if (unlikely(var_n_eq
== NULL
)) {
1072 PRINT_ERROR("Runtime error: %s", "Cast failed");
1073 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1498);
1076 self
->attrs
[COLOR_parser_nodes__AEqMethid___n_eq
].val
= var_n_eq
; /* _n_eq on <self:AEqMethid> */
1077 if (var_n_eq
== NULL
) {
1078 PRINT_ERROR("Runtime error: %s", "Receiver is null");
1079 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1499);
1082 { /* Inline parser_nodes#ANode#parent= (var_n_eq,self) on <var_n_eq:nullable TEq> */
1083 if (unlikely(var_n_eq
== NULL
)) {
1084 PRINT_ERROR("Runtime error: %s", "Receiver is null");
1085 PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36);
1088 var_n_eq
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_eq:nullable TEq> */
1094 /* method parser_prod#AEqMethid#init_aeqmethid for (self: Object, nullable TEq) */
1095 void VIRTUAL_parser_prod__AEqMethid__init_aeqmethid(val
* self
, val
* p0
) {
1096 parser_prod__AEqMethid__init_aeqmethid(self
, p0
); /* Direct call parser_prod#AEqMethid#init_aeqmethid on <self:Object(AEqMethid)>*/
1099 /* method parser_prod#AEqMethid#replace_child for (self: AEqMethid, ANode, nullable ANode) */
1100 void parser_prod__AEqMethid__replace_child(val
* self
, val
* p0
, val
* p1
) {
1101 val
* var_old_child
/* var old_child: ANode */;
1102 val
* var_new_child
/* var new_child: nullable ANode */;
1103 val
* var
/* : TEq */;
1104 short int var1
/* : Bool */;
1105 short int var2
/* : Bool */;
1106 val
* var_other
/* var other: nullable Object */;
1107 short int var4
/* : Bool */;
1108 short int var6
/* : Bool */;
1109 short int var7
/* : Bool */;
1112 const char* var_class_name
;
1115 var
= self
->attrs
[COLOR_parser_nodes__AEqMethid___n_eq
].val
; /* _n_eq on <self:AEqMethid> */
1116 if (unlikely(var
== NULL
)) {
1117 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_eq");
1118 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1504);
1122 { /* Inline kernel#Object#== (var,var_old_child) on <var:TEq> */
1123 var_other
= var_old_child
;
1125 { /* Inline kernel#Object#is_same_instance (var,var_other) on <var:TEq> */
1126 var6
= var
== var_other
;
1139 /* <var_new_child:nullable ANode> isa TEq */
1140 cltype
= type_parser_nodes__TEq
.color
;
1141 idtype
= type_parser_nodes__TEq
.id
;
1142 if(var_new_child
== NULL
) {
1145 if(cltype
>= var_new_child
->type
->table_size
) {
1148 var7
= var_new_child
->type
->type_table
[cltype
] == idtype
;
1151 if (unlikely(!var7
)) {
1152 var_class_name
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
1153 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TEq", var_class_name
);
1154 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1505);
1158 parser_prod__AEqMethid__n_eq_61d(self
, var_new_child
); /* Direct call parser_prod#AEqMethid#n_eq= on <self:AEqMethid>*/
1165 /* method parser_prod#AEqMethid#replace_child for (self: Object, ANode, nullable ANode) */
1166 void VIRTUAL_parser_prod__AEqMethid__replace_child(val
* self
, val
* p0
, val
* p1
) {
1167 parser_prod__AEqMethid__replace_child(self
, p0
, p1
); /* Direct call parser_prod#AEqMethid#replace_child on <self:Object(AEqMethid)>*/
1170 /* method parser_prod#AEqMethid#n_eq= for (self: AEqMethid, TEq) */
1171 void parser_prod__AEqMethid__n_eq_61d(val
* self
, val
* p0
) {
1172 val
* var_node
/* var node: TEq */;
1174 self
->attrs
[COLOR_parser_nodes__AEqMethid___n_eq
].val
= var_node
; /* _n_eq on <self:AEqMethid> */
1176 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:TEq> */
1177 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:TEq> */
1183 /* method parser_prod#AEqMethid#n_eq= for (self: Object, TEq) */
1184 void VIRTUAL_parser_prod__AEqMethid__n_eq_61d(val
* self
, val
* p0
) {
1185 parser_prod__AEqMethid__n_eq_61d(self
, p0
); /* Direct call parser_prod#AEqMethid#n_eq= on <self:Object(AEqMethid)>*/
1188 /* method parser_prod#AEqMethid#visit_all for (self: AEqMethid, Visitor) */
1189 void parser_prod__AEqMethid__visit_all(val
* self
, val
* p0
) {
1190 val
* var_v
/* var v: Visitor */;
1191 val
* var
/* : TEq */;
1193 var
= self
->attrs
[COLOR_parser_nodes__AEqMethid___n_eq
].val
; /* _n_eq on <self:AEqMethid> */
1194 if (unlikely(var
== NULL
)) {
1195 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_eq");
1196 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1519);
1200 parser_nodes__Visitor__enter_visit(var_v
, var
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
1204 /* method parser_prod#AEqMethid#visit_all for (self: Object, Visitor) */
1205 void VIRTUAL_parser_prod__AEqMethid__visit_all(val
* self
, val
* p0
) {
1206 parser_prod__AEqMethid__visit_all(self
, p0
); /* Direct call parser_prod#AEqMethid#visit_all on <self:Object(AEqMethid)>*/
1209 /* method parser_prod#ANeMethid#init_anemethid for (self: ANeMethid, nullable TNe) */
1210 void parser_prod__ANeMethid__init_anemethid(val
* self
, val
* p0
) {
1211 val
* var_n_ne
/* var n_ne: nullable TNe */;
1213 if (unlikely(var_n_ne
== NULL
)) {
1214 PRINT_ERROR("Runtime error: %s", "Cast failed");
1215 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1527);
1218 self
->attrs
[COLOR_parser_nodes__ANeMethid___n_ne
].val
= var_n_ne
; /* _n_ne on <self:ANeMethid> */
1219 if (var_n_ne
== NULL
) {
1220 PRINT_ERROR("Runtime error: %s", "Receiver is null");
1221 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1528);
1224 { /* Inline parser_nodes#ANode#parent= (var_n_ne,self) on <var_n_ne:nullable TNe> */
1225 if (unlikely(var_n_ne
== NULL
)) {
1226 PRINT_ERROR("Runtime error: %s", "Receiver is null");
1227 PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36);
1230 var_n_ne
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_ne:nullable TNe> */
1236 /* method parser_prod#ANeMethid#init_anemethid for (self: Object, nullable TNe) */
1237 void VIRTUAL_parser_prod__ANeMethid__init_anemethid(val
* self
, val
* p0
) {
1238 parser_prod__ANeMethid__init_anemethid(self
, p0
); /* Direct call parser_prod#ANeMethid#init_anemethid on <self:Object(ANeMethid)>*/
1241 /* method parser_prod#ANeMethid#replace_child for (self: ANeMethid, ANode, nullable ANode) */
1242 void parser_prod__ANeMethid__replace_child(val
* self
, val
* p0
, val
* p1
) {
1243 val
* var_old_child
/* var old_child: ANode */;
1244 val
* var_new_child
/* var new_child: nullable ANode */;
1245 val
* var
/* : TNe */;
1246 short int var1
/* : Bool */;
1247 short int var2
/* : Bool */;
1248 val
* var_other
/* var other: nullable Object */;
1249 short int var4
/* : Bool */;
1250 short int var6
/* : Bool */;
1251 short int var7
/* : Bool */;
1254 const char* var_class_name
;
1257 var
= self
->attrs
[COLOR_parser_nodes__ANeMethid___n_ne
].val
; /* _n_ne on <self:ANeMethid> */
1258 if (unlikely(var
== NULL
)) {
1259 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_ne");
1260 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1533);
1264 { /* Inline kernel#Object#== (var,var_old_child) on <var:TNe> */
1265 var_other
= var_old_child
;
1267 { /* Inline kernel#Object#is_same_instance (var,var_other) on <var:TNe> */
1268 var6
= var
== var_other
;
1281 /* <var_new_child:nullable ANode> isa TNe */
1282 cltype
= type_parser_nodes__TNe
.color
;
1283 idtype
= type_parser_nodes__TNe
.id
;
1284 if(var_new_child
== NULL
) {
1287 if(cltype
>= var_new_child
->type
->table_size
) {
1290 var7
= var_new_child
->type
->type_table
[cltype
] == idtype
;
1293 if (unlikely(!var7
)) {
1294 var_class_name
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
1295 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TNe", var_class_name
);
1296 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1534);
1300 parser_prod__ANeMethid__n_ne_61d(self
, var_new_child
); /* Direct call parser_prod#ANeMethid#n_ne= on <self:ANeMethid>*/
1307 /* method parser_prod#ANeMethid#replace_child for (self: Object, ANode, nullable ANode) */
1308 void VIRTUAL_parser_prod__ANeMethid__replace_child(val
* self
, val
* p0
, val
* p1
) {
1309 parser_prod__ANeMethid__replace_child(self
, p0
, p1
); /* Direct call parser_prod#ANeMethid#replace_child on <self:Object(ANeMethid)>*/
1312 /* method parser_prod#ANeMethid#n_ne= for (self: ANeMethid, TNe) */
1313 void parser_prod__ANeMethid__n_ne_61d(val
* self
, val
* p0
) {
1314 val
* var_node
/* var node: TNe */;
1316 self
->attrs
[COLOR_parser_nodes__ANeMethid___n_ne
].val
= var_node
; /* _n_ne on <self:ANeMethid> */
1318 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:TNe> */
1319 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:TNe> */
1325 /* method parser_prod#ANeMethid#n_ne= for (self: Object, TNe) */
1326 void VIRTUAL_parser_prod__ANeMethid__n_ne_61d(val
* self
, val
* p0
) {
1327 parser_prod__ANeMethid__n_ne_61d(self
, p0
); /* Direct call parser_prod#ANeMethid#n_ne= on <self:Object(ANeMethid)>*/
1330 /* method parser_prod#ANeMethid#visit_all for (self: ANeMethid, Visitor) */
1331 void parser_prod__ANeMethid__visit_all(val
* self
, val
* p0
) {
1332 val
* var_v
/* var v: Visitor */;
1333 val
* var
/* : TNe */;
1335 var
= self
->attrs
[COLOR_parser_nodes__ANeMethid___n_ne
].val
; /* _n_ne on <self:ANeMethid> */
1336 if (unlikely(var
== NULL
)) {
1337 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_ne");
1338 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1548);
1342 parser_nodes__Visitor__enter_visit(var_v
, var
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
1346 /* method parser_prod#ANeMethid#visit_all for (self: Object, Visitor) */
1347 void VIRTUAL_parser_prod__ANeMethid__visit_all(val
* self
, val
* p0
) {
1348 parser_prod__ANeMethid__visit_all(self
, p0
); /* Direct call parser_prod#ANeMethid#visit_all on <self:Object(ANeMethid)>*/
1351 /* method parser_prod#ALeMethid#init_alemethid for (self: ALeMethid, nullable TLe) */
1352 void parser_prod__ALeMethid__init_alemethid(val
* self
, val
* p0
) {
1353 val
* var_n_le
/* var n_le: nullable TLe */;
1355 if (unlikely(var_n_le
== NULL
)) {
1356 PRINT_ERROR("Runtime error: %s", "Cast failed");
1357 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1556);
1360 self
->attrs
[COLOR_parser_nodes__ALeMethid___n_le
].val
= var_n_le
; /* _n_le on <self:ALeMethid> */
1361 if (var_n_le
== NULL
) {
1362 PRINT_ERROR("Runtime error: %s", "Receiver is null");
1363 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1557);
1366 { /* Inline parser_nodes#ANode#parent= (var_n_le,self) on <var_n_le:nullable TLe> */
1367 if (unlikely(var_n_le
== NULL
)) {
1368 PRINT_ERROR("Runtime error: %s", "Receiver is null");
1369 PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36);
1372 var_n_le
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_le:nullable TLe> */
1378 /* method parser_prod#ALeMethid#init_alemethid for (self: Object, nullable TLe) */
1379 void VIRTUAL_parser_prod__ALeMethid__init_alemethid(val
* self
, val
* p0
) {
1380 parser_prod__ALeMethid__init_alemethid(self
, p0
); /* Direct call parser_prod#ALeMethid#init_alemethid on <self:Object(ALeMethid)>*/
1383 /* method parser_prod#ALeMethid#replace_child for (self: ALeMethid, ANode, nullable ANode) */
1384 void parser_prod__ALeMethid__replace_child(val
* self
, val
* p0
, val
* p1
) {
1385 val
* var_old_child
/* var old_child: ANode */;
1386 val
* var_new_child
/* var new_child: nullable ANode */;
1387 val
* var
/* : TLe */;
1388 short int var1
/* : Bool */;
1389 short int var2
/* : Bool */;
1390 val
* var_other
/* var other: nullable Object */;
1391 short int var4
/* : Bool */;
1392 short int var6
/* : Bool */;
1393 short int var7
/* : Bool */;
1396 const char* var_class_name
;
1399 var
= self
->attrs
[COLOR_parser_nodes__ALeMethid___n_le
].val
; /* _n_le on <self:ALeMethid> */
1400 if (unlikely(var
== NULL
)) {
1401 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_le");
1402 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1562);
1406 { /* Inline kernel#Object#== (var,var_old_child) on <var:TLe> */
1407 var_other
= var_old_child
;
1409 { /* Inline kernel#Object#is_same_instance (var,var_other) on <var:TLe> */
1410 var6
= var
== var_other
;
1423 /* <var_new_child:nullable ANode> isa TLe */
1424 cltype
= type_parser_nodes__TLe
.color
;
1425 idtype
= type_parser_nodes__TLe
.id
;
1426 if(var_new_child
== NULL
) {
1429 if(cltype
>= var_new_child
->type
->table_size
) {
1432 var7
= var_new_child
->type
->type_table
[cltype
] == idtype
;
1435 if (unlikely(!var7
)) {
1436 var_class_name
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
1437 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TLe", var_class_name
);
1438 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1563);
1442 parser_prod__ALeMethid__n_le_61d(self
, var_new_child
); /* Direct call parser_prod#ALeMethid#n_le= on <self:ALeMethid>*/
1449 /* method parser_prod#ALeMethid#replace_child for (self: Object, ANode, nullable ANode) */
1450 void VIRTUAL_parser_prod__ALeMethid__replace_child(val
* self
, val
* p0
, val
* p1
) {
1451 parser_prod__ALeMethid__replace_child(self
, p0
, p1
); /* Direct call parser_prod#ALeMethid#replace_child on <self:Object(ALeMethid)>*/
1454 /* method parser_prod#ALeMethid#n_le= for (self: ALeMethid, TLe) */
1455 void parser_prod__ALeMethid__n_le_61d(val
* self
, val
* p0
) {
1456 val
* var_node
/* var node: TLe */;
1458 self
->attrs
[COLOR_parser_nodes__ALeMethid___n_le
].val
= var_node
; /* _n_le on <self:ALeMethid> */
1460 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:TLe> */
1461 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:TLe> */
1467 /* method parser_prod#ALeMethid#n_le= for (self: Object, TLe) */
1468 void VIRTUAL_parser_prod__ALeMethid__n_le_61d(val
* self
, val
* p0
) {
1469 parser_prod__ALeMethid__n_le_61d(self
, p0
); /* Direct call parser_prod#ALeMethid#n_le= on <self:Object(ALeMethid)>*/
1472 /* method parser_prod#ALeMethid#visit_all for (self: ALeMethid, Visitor) */
1473 void parser_prod__ALeMethid__visit_all(val
* self
, val
* p0
) {
1474 val
* var_v
/* var v: Visitor */;
1475 val
* var
/* : TLe */;
1477 var
= self
->attrs
[COLOR_parser_nodes__ALeMethid___n_le
].val
; /* _n_le on <self:ALeMethid> */
1478 if (unlikely(var
== NULL
)) {
1479 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_le");
1480 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1577);
1484 parser_nodes__Visitor__enter_visit(var_v
, var
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
1488 /* method parser_prod#ALeMethid#visit_all for (self: Object, Visitor) */
1489 void VIRTUAL_parser_prod__ALeMethid__visit_all(val
* self
, val
* p0
) {
1490 parser_prod__ALeMethid__visit_all(self
, p0
); /* Direct call parser_prod#ALeMethid#visit_all on <self:Object(ALeMethid)>*/
1493 /* method parser_prod#AGeMethid#init_agemethid for (self: AGeMethid, nullable TGe) */
1494 void parser_prod__AGeMethid__init_agemethid(val
* self
, val
* p0
) {
1495 val
* var_n_ge
/* var n_ge: nullable TGe */;
1497 if (unlikely(var_n_ge
== NULL
)) {
1498 PRINT_ERROR("Runtime error: %s", "Cast failed");
1499 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1585);
1502 self
->attrs
[COLOR_parser_nodes__AGeMethid___n_ge
].val
= var_n_ge
; /* _n_ge on <self:AGeMethid> */
1503 if (var_n_ge
== NULL
) {
1504 PRINT_ERROR("Runtime error: %s", "Receiver is null");
1505 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1586);
1508 { /* Inline parser_nodes#ANode#parent= (var_n_ge,self) on <var_n_ge:nullable TGe> */
1509 if (unlikely(var_n_ge
== NULL
)) {
1510 PRINT_ERROR("Runtime error: %s", "Receiver is null");
1511 PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36);
1514 var_n_ge
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_ge:nullable TGe> */
1520 /* method parser_prod#AGeMethid#init_agemethid for (self: Object, nullable TGe) */
1521 void VIRTUAL_parser_prod__AGeMethid__init_agemethid(val
* self
, val
* p0
) {
1522 parser_prod__AGeMethid__init_agemethid(self
, p0
); /* Direct call parser_prod#AGeMethid#init_agemethid on <self:Object(AGeMethid)>*/
1525 /* method parser_prod#AGeMethid#replace_child for (self: AGeMethid, ANode, nullable ANode) */
1526 void parser_prod__AGeMethid__replace_child(val
* self
, val
* p0
, val
* p1
) {
1527 val
* var_old_child
/* var old_child: ANode */;
1528 val
* var_new_child
/* var new_child: nullable ANode */;
1529 val
* var
/* : TGe */;
1530 short int var1
/* : Bool */;
1531 short int var2
/* : Bool */;
1532 val
* var_other
/* var other: nullable Object */;
1533 short int var4
/* : Bool */;
1534 short int var6
/* : Bool */;
1535 short int var7
/* : Bool */;
1538 const char* var_class_name
;
1541 var
= self
->attrs
[COLOR_parser_nodes__AGeMethid___n_ge
].val
; /* _n_ge on <self:AGeMethid> */
1542 if (unlikely(var
== NULL
)) {
1543 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_ge");
1544 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1591);
1548 { /* Inline kernel#Object#== (var,var_old_child) on <var:TGe> */
1549 var_other
= var_old_child
;
1551 { /* Inline kernel#Object#is_same_instance (var,var_other) on <var:TGe> */
1552 var6
= var
== var_other
;
1565 /* <var_new_child:nullable ANode> isa TGe */
1566 cltype
= type_parser_nodes__TGe
.color
;
1567 idtype
= type_parser_nodes__TGe
.id
;
1568 if(var_new_child
== NULL
) {
1571 if(cltype
>= var_new_child
->type
->table_size
) {
1574 var7
= var_new_child
->type
->type_table
[cltype
] == idtype
;
1577 if (unlikely(!var7
)) {
1578 var_class_name
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
1579 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TGe", var_class_name
);
1580 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1592);
1584 parser_prod__AGeMethid__n_ge_61d(self
, var_new_child
); /* Direct call parser_prod#AGeMethid#n_ge= on <self:AGeMethid>*/
1591 /* method parser_prod#AGeMethid#replace_child for (self: Object, ANode, nullable ANode) */
1592 void VIRTUAL_parser_prod__AGeMethid__replace_child(val
* self
, val
* p0
, val
* p1
) {
1593 parser_prod__AGeMethid__replace_child(self
, p0
, p1
); /* Direct call parser_prod#AGeMethid#replace_child on <self:Object(AGeMethid)>*/
1596 /* method parser_prod#AGeMethid#n_ge= for (self: AGeMethid, TGe) */
1597 void parser_prod__AGeMethid__n_ge_61d(val
* self
, val
* p0
) {
1598 val
* var_node
/* var node: TGe */;
1600 self
->attrs
[COLOR_parser_nodes__AGeMethid___n_ge
].val
= var_node
; /* _n_ge on <self:AGeMethid> */
1602 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:TGe> */
1603 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:TGe> */
1609 /* method parser_prod#AGeMethid#n_ge= for (self: Object, TGe) */
1610 void VIRTUAL_parser_prod__AGeMethid__n_ge_61d(val
* self
, val
* p0
) {
1611 parser_prod__AGeMethid__n_ge_61d(self
, p0
); /* Direct call parser_prod#AGeMethid#n_ge= on <self:Object(AGeMethid)>*/
1614 /* method parser_prod#AGeMethid#visit_all for (self: AGeMethid, Visitor) */
1615 void parser_prod__AGeMethid__visit_all(val
* self
, val
* p0
) {
1616 val
* var_v
/* var v: Visitor */;
1617 val
* var
/* : TGe */;
1619 var
= self
->attrs
[COLOR_parser_nodes__AGeMethid___n_ge
].val
; /* _n_ge on <self:AGeMethid> */
1620 if (unlikely(var
== NULL
)) {
1621 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_ge");
1622 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1606);
1626 parser_nodes__Visitor__enter_visit(var_v
, var
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
1630 /* method parser_prod#AGeMethid#visit_all for (self: Object, Visitor) */
1631 void VIRTUAL_parser_prod__AGeMethid__visit_all(val
* self
, val
* p0
) {
1632 parser_prod__AGeMethid__visit_all(self
, p0
); /* Direct call parser_prod#AGeMethid#visit_all on <self:Object(AGeMethid)>*/
1635 /* method parser_prod#ALtMethid#init_altmethid for (self: ALtMethid, nullable TLt) */
1636 void parser_prod__ALtMethid__init_altmethid(val
* self
, val
* p0
) {
1637 val
* var_n_lt
/* var n_lt: nullable TLt */;
1639 if (unlikely(var_n_lt
== NULL
)) {
1640 PRINT_ERROR("Runtime error: %s", "Cast failed");
1641 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1614);
1644 self
->attrs
[COLOR_parser_nodes__ALtMethid___n_lt
].val
= var_n_lt
; /* _n_lt on <self:ALtMethid> */
1645 if (var_n_lt
== NULL
) {
1646 PRINT_ERROR("Runtime error: %s", "Receiver is null");
1647 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1615);
1650 { /* Inline parser_nodes#ANode#parent= (var_n_lt,self) on <var_n_lt:nullable TLt> */
1651 if (unlikely(var_n_lt
== NULL
)) {
1652 PRINT_ERROR("Runtime error: %s", "Receiver is null");
1653 PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36);
1656 var_n_lt
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_lt:nullable TLt> */
1662 /* method parser_prod#ALtMethid#init_altmethid for (self: Object, nullable TLt) */
1663 void VIRTUAL_parser_prod__ALtMethid__init_altmethid(val
* self
, val
* p0
) {
1664 parser_prod__ALtMethid__init_altmethid(self
, p0
); /* Direct call parser_prod#ALtMethid#init_altmethid on <self:Object(ALtMethid)>*/
1667 /* method parser_prod#ALtMethid#replace_child for (self: ALtMethid, ANode, nullable ANode) */
1668 void parser_prod__ALtMethid__replace_child(val
* self
, val
* p0
, val
* p1
) {
1669 val
* var_old_child
/* var old_child: ANode */;
1670 val
* var_new_child
/* var new_child: nullable ANode */;
1671 val
* var
/* : TLt */;
1672 short int var1
/* : Bool */;
1673 short int var2
/* : Bool */;
1674 val
* var_other
/* var other: nullable Object */;
1675 short int var4
/* : Bool */;
1676 short int var6
/* : Bool */;
1677 short int var7
/* : Bool */;
1680 const char* var_class_name
;
1683 var
= self
->attrs
[COLOR_parser_nodes__ALtMethid___n_lt
].val
; /* _n_lt on <self:ALtMethid> */
1684 if (unlikely(var
== NULL
)) {
1685 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_lt");
1686 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1620);
1690 { /* Inline kernel#Object#== (var,var_old_child) on <var:TLt> */
1691 var_other
= var_old_child
;
1693 { /* Inline kernel#Object#is_same_instance (var,var_other) on <var:TLt> */
1694 var6
= var
== var_other
;
1707 /* <var_new_child:nullable ANode> isa TLt */
1708 cltype
= type_parser_nodes__TLt
.color
;
1709 idtype
= type_parser_nodes__TLt
.id
;
1710 if(var_new_child
== NULL
) {
1713 if(cltype
>= var_new_child
->type
->table_size
) {
1716 var7
= var_new_child
->type
->type_table
[cltype
] == idtype
;
1719 if (unlikely(!var7
)) {
1720 var_class_name
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
1721 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TLt", var_class_name
);
1722 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1621);
1726 parser_prod__ALtMethid__n_lt_61d(self
, var_new_child
); /* Direct call parser_prod#ALtMethid#n_lt= on <self:ALtMethid>*/
1733 /* method parser_prod#ALtMethid#replace_child for (self: Object, ANode, nullable ANode) */
1734 void VIRTUAL_parser_prod__ALtMethid__replace_child(val
* self
, val
* p0
, val
* p1
) {
1735 parser_prod__ALtMethid__replace_child(self
, p0
, p1
); /* Direct call parser_prod#ALtMethid#replace_child on <self:Object(ALtMethid)>*/
1738 /* method parser_prod#ALtMethid#n_lt= for (self: ALtMethid, TLt) */
1739 void parser_prod__ALtMethid__n_lt_61d(val
* self
, val
* p0
) {
1740 val
* var_node
/* var node: TLt */;
1742 self
->attrs
[COLOR_parser_nodes__ALtMethid___n_lt
].val
= var_node
; /* _n_lt on <self:ALtMethid> */
1744 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:TLt> */
1745 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:TLt> */
1751 /* method parser_prod#ALtMethid#n_lt= for (self: Object, TLt) */
1752 void VIRTUAL_parser_prod__ALtMethid__n_lt_61d(val
* self
, val
* p0
) {
1753 parser_prod__ALtMethid__n_lt_61d(self
, p0
); /* Direct call parser_prod#ALtMethid#n_lt= on <self:Object(ALtMethid)>*/
1756 /* method parser_prod#ALtMethid#visit_all for (self: ALtMethid, Visitor) */
1757 void parser_prod__ALtMethid__visit_all(val
* self
, val
* p0
) {
1758 val
* var_v
/* var v: Visitor */;
1759 val
* var
/* : TLt */;
1761 var
= self
->attrs
[COLOR_parser_nodes__ALtMethid___n_lt
].val
; /* _n_lt on <self:ALtMethid> */
1762 if (unlikely(var
== NULL
)) {
1763 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_lt");
1764 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1635);
1768 parser_nodes__Visitor__enter_visit(var_v
, var
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
1772 /* method parser_prod#ALtMethid#visit_all for (self: Object, Visitor) */
1773 void VIRTUAL_parser_prod__ALtMethid__visit_all(val
* self
, val
* p0
) {
1774 parser_prod__ALtMethid__visit_all(self
, p0
); /* Direct call parser_prod#ALtMethid#visit_all on <self:Object(ALtMethid)>*/
1777 /* method parser_prod#AGtMethid#init_agtmethid for (self: AGtMethid, nullable TGt) */
1778 void parser_prod__AGtMethid__init_agtmethid(val
* self
, val
* p0
) {
1779 val
* var_n_gt
/* var n_gt: nullable TGt */;
1781 if (unlikely(var_n_gt
== NULL
)) {
1782 PRINT_ERROR("Runtime error: %s", "Cast failed");
1783 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1643);
1786 self
->attrs
[COLOR_parser_nodes__AGtMethid___n_gt
].val
= var_n_gt
; /* _n_gt on <self:AGtMethid> */
1787 if (var_n_gt
== NULL
) {
1788 PRINT_ERROR("Runtime error: %s", "Receiver is null");
1789 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1644);
1792 { /* Inline parser_nodes#ANode#parent= (var_n_gt,self) on <var_n_gt:nullable TGt> */
1793 if (unlikely(var_n_gt
== NULL
)) {
1794 PRINT_ERROR("Runtime error: %s", "Receiver is null");
1795 PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36);
1798 var_n_gt
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_gt:nullable TGt> */
1804 /* method parser_prod#AGtMethid#init_agtmethid for (self: Object, nullable TGt) */
1805 void VIRTUAL_parser_prod__AGtMethid__init_agtmethid(val
* self
, val
* p0
) {
1806 parser_prod__AGtMethid__init_agtmethid(self
, p0
); /* Direct call parser_prod#AGtMethid#init_agtmethid on <self:Object(AGtMethid)>*/
1809 /* method parser_prod#AGtMethid#replace_child for (self: AGtMethid, ANode, nullable ANode) */
1810 void parser_prod__AGtMethid__replace_child(val
* self
, val
* p0
, val
* p1
) {
1811 val
* var_old_child
/* var old_child: ANode */;
1812 val
* var_new_child
/* var new_child: nullable ANode */;
1813 val
* var
/* : TGt */;
1814 short int var1
/* : Bool */;
1815 short int var2
/* : Bool */;
1816 val
* var_other
/* var other: nullable Object */;
1817 short int var4
/* : Bool */;
1818 short int var6
/* : Bool */;
1819 short int var7
/* : Bool */;
1822 const char* var_class_name
;
1825 var
= self
->attrs
[COLOR_parser_nodes__AGtMethid___n_gt
].val
; /* _n_gt on <self:AGtMethid> */
1826 if (unlikely(var
== NULL
)) {
1827 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_gt");
1828 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1649);
1832 { /* Inline kernel#Object#== (var,var_old_child) on <var:TGt> */
1833 var_other
= var_old_child
;
1835 { /* Inline kernel#Object#is_same_instance (var,var_other) on <var:TGt> */
1836 var6
= var
== var_other
;
1849 /* <var_new_child:nullable ANode> isa TGt */
1850 cltype
= type_parser_nodes__TGt
.color
;
1851 idtype
= type_parser_nodes__TGt
.id
;
1852 if(var_new_child
== NULL
) {
1855 if(cltype
>= var_new_child
->type
->table_size
) {
1858 var7
= var_new_child
->type
->type_table
[cltype
] == idtype
;
1861 if (unlikely(!var7
)) {
1862 var_class_name
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
1863 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TGt", var_class_name
);
1864 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1650);
1868 parser_prod__AGtMethid__n_gt_61d(self
, var_new_child
); /* Direct call parser_prod#AGtMethid#n_gt= on <self:AGtMethid>*/
1875 /* method parser_prod#AGtMethid#replace_child for (self: Object, ANode, nullable ANode) */
1876 void VIRTUAL_parser_prod__AGtMethid__replace_child(val
* self
, val
* p0
, val
* p1
) {
1877 parser_prod__AGtMethid__replace_child(self
, p0
, p1
); /* Direct call parser_prod#AGtMethid#replace_child on <self:Object(AGtMethid)>*/
1880 /* method parser_prod#AGtMethid#n_gt= for (self: AGtMethid, TGt) */
1881 void parser_prod__AGtMethid__n_gt_61d(val
* self
, val
* p0
) {
1882 val
* var_node
/* var node: TGt */;
1884 self
->attrs
[COLOR_parser_nodes__AGtMethid___n_gt
].val
= var_node
; /* _n_gt on <self:AGtMethid> */
1886 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:TGt> */
1887 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:TGt> */
1893 /* method parser_prod#AGtMethid#n_gt= for (self: Object, TGt) */
1894 void VIRTUAL_parser_prod__AGtMethid__n_gt_61d(val
* self
, val
* p0
) {
1895 parser_prod__AGtMethid__n_gt_61d(self
, p0
); /* Direct call parser_prod#AGtMethid#n_gt= on <self:Object(AGtMethid)>*/
1898 /* method parser_prod#AGtMethid#visit_all for (self: AGtMethid, Visitor) */
1899 void parser_prod__AGtMethid__visit_all(val
* self
, val
* p0
) {
1900 val
* var_v
/* var v: Visitor */;
1901 val
* var
/* : TGt */;
1903 var
= self
->attrs
[COLOR_parser_nodes__AGtMethid___n_gt
].val
; /* _n_gt on <self:AGtMethid> */
1904 if (unlikely(var
== NULL
)) {
1905 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_gt");
1906 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1664);
1910 parser_nodes__Visitor__enter_visit(var_v
, var
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
1914 /* method parser_prod#AGtMethid#visit_all for (self: Object, Visitor) */
1915 void VIRTUAL_parser_prod__AGtMethid__visit_all(val
* self
, val
* p0
) {
1916 parser_prod__AGtMethid__visit_all(self
, p0
); /* Direct call parser_prod#AGtMethid#visit_all on <self:Object(AGtMethid)>*/
1919 /* method parser_prod#ALlMethid#init_allmethid for (self: ALlMethid, nullable TLl) */
1920 void parser_prod__ALlMethid__init_allmethid(val
* self
, val
* p0
) {
1921 val
* var_n_ll
/* var n_ll: nullable TLl */;
1923 if (unlikely(var_n_ll
== NULL
)) {
1924 PRINT_ERROR("Runtime error: %s", "Cast failed");
1925 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1672);
1928 self
->attrs
[COLOR_parser_nodes__ALlMethid___n_ll
].val
= var_n_ll
; /* _n_ll on <self:ALlMethid> */
1929 if (var_n_ll
== NULL
) {
1930 PRINT_ERROR("Runtime error: %s", "Receiver is null");
1931 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1673);
1934 { /* Inline parser_nodes#ANode#parent= (var_n_ll,self) on <var_n_ll:nullable TLl> */
1935 if (unlikely(var_n_ll
== NULL
)) {
1936 PRINT_ERROR("Runtime error: %s", "Receiver is null");
1937 PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36);
1940 var_n_ll
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_ll:nullable TLl> */
1946 /* method parser_prod#ALlMethid#init_allmethid for (self: Object, nullable TLl) */
1947 void VIRTUAL_parser_prod__ALlMethid__init_allmethid(val
* self
, val
* p0
) {
1948 parser_prod__ALlMethid__init_allmethid(self
, p0
); /* Direct call parser_prod#ALlMethid#init_allmethid on <self:Object(ALlMethid)>*/
1951 /* method parser_prod#ALlMethid#replace_child for (self: ALlMethid, ANode, nullable ANode) */
1952 void parser_prod__ALlMethid__replace_child(val
* self
, val
* p0
, val
* p1
) {
1953 val
* var_old_child
/* var old_child: ANode */;
1954 val
* var_new_child
/* var new_child: nullable ANode */;
1955 val
* var
/* : TLl */;
1956 short int var1
/* : Bool */;
1957 short int var2
/* : Bool */;
1958 val
* var_other
/* var other: nullable Object */;
1959 short int var4
/* : Bool */;
1960 short int var6
/* : Bool */;
1961 short int var7
/* : Bool */;
1964 const char* var_class_name
;
1967 var
= self
->attrs
[COLOR_parser_nodes__ALlMethid___n_ll
].val
; /* _n_ll on <self:ALlMethid> */
1968 if (unlikely(var
== NULL
)) {
1969 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_ll");
1970 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1678);
1974 { /* Inline kernel#Object#== (var,var_old_child) on <var:TLl> */
1975 var_other
= var_old_child
;
1977 { /* Inline kernel#Object#is_same_instance (var,var_other) on <var:TLl> */
1978 var6
= var
== var_other
;
1991 /* <var_new_child:nullable ANode> isa TLl */
1992 cltype
= type_parser_nodes__TLl
.color
;
1993 idtype
= type_parser_nodes__TLl
.id
;
1994 if(var_new_child
== NULL
) {
1997 if(cltype
>= var_new_child
->type
->table_size
) {
2000 var7
= var_new_child
->type
->type_table
[cltype
] == idtype
;
2003 if (unlikely(!var7
)) {
2004 var_class_name
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
2005 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TLl", var_class_name
);
2006 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1679);
2010 parser_prod__ALlMethid__n_ll_61d(self
, var_new_child
); /* Direct call parser_prod#ALlMethid#n_ll= on <self:ALlMethid>*/
2017 /* method parser_prod#ALlMethid#replace_child for (self: Object, ANode, nullable ANode) */
2018 void VIRTUAL_parser_prod__ALlMethid__replace_child(val
* self
, val
* p0
, val
* p1
) {
2019 parser_prod__ALlMethid__replace_child(self
, p0
, p1
); /* Direct call parser_prod#ALlMethid#replace_child on <self:Object(ALlMethid)>*/
2022 /* method parser_prod#ALlMethid#n_ll= for (self: ALlMethid, TLl) */
2023 void parser_prod__ALlMethid__n_ll_61d(val
* self
, val
* p0
) {
2024 val
* var_node
/* var node: TLl */;
2026 self
->attrs
[COLOR_parser_nodes__ALlMethid___n_ll
].val
= var_node
; /* _n_ll on <self:ALlMethid> */
2028 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:TLl> */
2029 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:TLl> */
2035 /* method parser_prod#ALlMethid#n_ll= for (self: Object, TLl) */
2036 void VIRTUAL_parser_prod__ALlMethid__n_ll_61d(val
* self
, val
* p0
) {
2037 parser_prod__ALlMethid__n_ll_61d(self
, p0
); /* Direct call parser_prod#ALlMethid#n_ll= on <self:Object(ALlMethid)>*/
2040 /* method parser_prod#ALlMethid#visit_all for (self: ALlMethid, Visitor) */
2041 void parser_prod__ALlMethid__visit_all(val
* self
, val
* p0
) {
2042 val
* var_v
/* var v: Visitor */;
2043 val
* var
/* : TLl */;
2045 var
= self
->attrs
[COLOR_parser_nodes__ALlMethid___n_ll
].val
; /* _n_ll on <self:ALlMethid> */
2046 if (unlikely(var
== NULL
)) {
2047 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_ll");
2048 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1693);
2052 parser_nodes__Visitor__enter_visit(var_v
, var
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
2056 /* method parser_prod#ALlMethid#visit_all for (self: Object, Visitor) */
2057 void VIRTUAL_parser_prod__ALlMethid__visit_all(val
* self
, val
* p0
) {
2058 parser_prod__ALlMethid__visit_all(self
, p0
); /* Direct call parser_prod#ALlMethid#visit_all on <self:Object(ALlMethid)>*/
2061 /* method parser_prod#AGgMethid#init_aggmethid for (self: AGgMethid, nullable TGg) */
2062 void parser_prod__AGgMethid__init_aggmethid(val
* self
, val
* p0
) {
2063 val
* var_n_gg
/* var n_gg: nullable TGg */;
2065 if (unlikely(var_n_gg
== NULL
)) {
2066 PRINT_ERROR("Runtime error: %s", "Cast failed");
2067 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1701);
2070 self
->attrs
[COLOR_parser_nodes__AGgMethid___n_gg
].val
= var_n_gg
; /* _n_gg on <self:AGgMethid> */
2071 if (var_n_gg
== NULL
) {
2072 PRINT_ERROR("Runtime error: %s", "Receiver is null");
2073 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1702);
2076 { /* Inline parser_nodes#ANode#parent= (var_n_gg,self) on <var_n_gg:nullable TGg> */
2077 if (unlikely(var_n_gg
== NULL
)) {
2078 PRINT_ERROR("Runtime error: %s", "Receiver is null");
2079 PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36);
2082 var_n_gg
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_gg:nullable TGg> */
2088 /* method parser_prod#AGgMethid#init_aggmethid for (self: Object, nullable TGg) */
2089 void VIRTUAL_parser_prod__AGgMethid__init_aggmethid(val
* self
, val
* p0
) {
2090 parser_prod__AGgMethid__init_aggmethid(self
, p0
); /* Direct call parser_prod#AGgMethid#init_aggmethid on <self:Object(AGgMethid)>*/
2093 /* method parser_prod#AGgMethid#replace_child for (self: AGgMethid, ANode, nullable ANode) */
2094 void parser_prod__AGgMethid__replace_child(val
* self
, val
* p0
, val
* p1
) {
2095 val
* var_old_child
/* var old_child: ANode */;
2096 val
* var_new_child
/* var new_child: nullable ANode */;
2097 val
* var
/* : TGg */;
2098 short int var1
/* : Bool */;
2099 short int var2
/* : Bool */;
2100 val
* var_other
/* var other: nullable Object */;
2101 short int var4
/* : Bool */;
2102 short int var6
/* : Bool */;
2103 short int var7
/* : Bool */;
2106 const char* var_class_name
;
2109 var
= self
->attrs
[COLOR_parser_nodes__AGgMethid___n_gg
].val
; /* _n_gg on <self:AGgMethid> */
2110 if (unlikely(var
== NULL
)) {
2111 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_gg");
2112 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1707);
2116 { /* Inline kernel#Object#== (var,var_old_child) on <var:TGg> */
2117 var_other
= var_old_child
;
2119 { /* Inline kernel#Object#is_same_instance (var,var_other) on <var:TGg> */
2120 var6
= var
== var_other
;
2133 /* <var_new_child:nullable ANode> isa TGg */
2134 cltype
= type_parser_nodes__TGg
.color
;
2135 idtype
= type_parser_nodes__TGg
.id
;
2136 if(var_new_child
== NULL
) {
2139 if(cltype
>= var_new_child
->type
->table_size
) {
2142 var7
= var_new_child
->type
->type_table
[cltype
] == idtype
;
2145 if (unlikely(!var7
)) {
2146 var_class_name
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
2147 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TGg", var_class_name
);
2148 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1708);
2152 parser_prod__AGgMethid__n_gg_61d(self
, var_new_child
); /* Direct call parser_prod#AGgMethid#n_gg= on <self:AGgMethid>*/
2159 /* method parser_prod#AGgMethid#replace_child for (self: Object, ANode, nullable ANode) */
2160 void VIRTUAL_parser_prod__AGgMethid__replace_child(val
* self
, val
* p0
, val
* p1
) {
2161 parser_prod__AGgMethid__replace_child(self
, p0
, p1
); /* Direct call parser_prod#AGgMethid#replace_child on <self:Object(AGgMethid)>*/
2164 /* method parser_prod#AGgMethid#n_gg= for (self: AGgMethid, TGg) */
2165 void parser_prod__AGgMethid__n_gg_61d(val
* self
, val
* p0
) {
2166 val
* var_node
/* var node: TGg */;
2168 self
->attrs
[COLOR_parser_nodes__AGgMethid___n_gg
].val
= var_node
; /* _n_gg on <self:AGgMethid> */
2170 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:TGg> */
2171 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:TGg> */
2177 /* method parser_prod#AGgMethid#n_gg= for (self: Object, TGg) */
2178 void VIRTUAL_parser_prod__AGgMethid__n_gg_61d(val
* self
, val
* p0
) {
2179 parser_prod__AGgMethid__n_gg_61d(self
, p0
); /* Direct call parser_prod#AGgMethid#n_gg= on <self:Object(AGgMethid)>*/
2182 /* method parser_prod#AGgMethid#visit_all for (self: AGgMethid, Visitor) */
2183 void parser_prod__AGgMethid__visit_all(val
* self
, val
* p0
) {
2184 val
* var_v
/* var v: Visitor */;
2185 val
* var
/* : TGg */;
2187 var
= self
->attrs
[COLOR_parser_nodes__AGgMethid___n_gg
].val
; /* _n_gg on <self:AGgMethid> */
2188 if (unlikely(var
== NULL
)) {
2189 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_gg");
2190 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1722);
2194 parser_nodes__Visitor__enter_visit(var_v
, var
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
2198 /* method parser_prod#AGgMethid#visit_all for (self: Object, Visitor) */
2199 void VIRTUAL_parser_prod__AGgMethid__visit_all(val
* self
, val
* p0
) {
2200 parser_prod__AGgMethid__visit_all(self
, p0
); /* Direct call parser_prod#AGgMethid#visit_all on <self:Object(AGgMethid)>*/
2203 /* method parser_prod#ABraMethid#init_abramethid for (self: ABraMethid, nullable TObra, nullable TCbra) */
2204 void parser_prod__ABraMethid__init_abramethid(val
* self
, val
* p0
, val
* p1
) {
2205 val
* var_n_obra
/* var n_obra: nullable TObra */;
2206 val
* var_n_cbra
/* var n_cbra: nullable TCbra */;
2209 if (unlikely(var_n_obra
== NULL
)) {
2210 PRINT_ERROR("Runtime error: %s", "Cast failed");
2211 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1731);
2214 self
->attrs
[COLOR_parser_nodes__ABraMethid___n_obra
].val
= var_n_obra
; /* _n_obra on <self:ABraMethid> */
2215 if (var_n_obra
== NULL
) {
2216 PRINT_ERROR("Runtime error: %s", "Receiver is null");
2217 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1732);
2220 { /* Inline parser_nodes#ANode#parent= (var_n_obra,self) on <var_n_obra:nullable TObra> */
2221 if (unlikely(var_n_obra
== NULL
)) {
2222 PRINT_ERROR("Runtime error: %s", "Receiver is null");
2223 PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36);
2226 var_n_obra
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_obra:nullable TObra> */
2230 if (unlikely(var_n_cbra
== NULL
)) {
2231 PRINT_ERROR("Runtime error: %s", "Cast failed");
2232 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1733);
2235 self
->attrs
[COLOR_parser_nodes__ABraMethid___n_cbra
].val
= var_n_cbra
; /* _n_cbra on <self:ABraMethid> */
2236 if (var_n_cbra
== NULL
) {
2237 PRINT_ERROR("Runtime error: %s", "Receiver is null");
2238 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1734);
2241 { /* Inline parser_nodes#ANode#parent= (var_n_cbra,self) on <var_n_cbra:nullable TCbra> */
2242 if (unlikely(var_n_cbra
== NULL
)) {
2243 PRINT_ERROR("Runtime error: %s", "Receiver is null");
2244 PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36);
2247 var_n_cbra
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_cbra:nullable TCbra> */
2253 /* method parser_prod#ABraMethid#init_abramethid for (self: Object, nullable TObra, nullable TCbra) */
2254 void VIRTUAL_parser_prod__ABraMethid__init_abramethid(val
* self
, val
* p0
, val
* p1
) {
2255 parser_prod__ABraMethid__init_abramethid(self
, p0
, p1
); /* Direct call parser_prod#ABraMethid#init_abramethid on <self:Object(ABraMethid)>*/
2258 /* method parser_prod#ABraMethid#replace_child for (self: ABraMethid, ANode, nullable ANode) */
2259 void parser_prod__ABraMethid__replace_child(val
* self
, val
* p0
, val
* p1
) {
2260 val
* var_old_child
/* var old_child: ANode */;
2261 val
* var_new_child
/* var new_child: nullable ANode */;
2262 val
* var
/* : TObra */;
2263 short int var1
/* : Bool */;
2264 short int var2
/* : Bool */;
2265 val
* var_other
/* var other: nullable Object */;
2266 short int var4
/* : Bool */;
2267 short int var6
/* : Bool */;
2268 short int var7
/* : Bool */;
2271 const char* var_class_name
;
2272 val
* var8
/* : TCbra */;
2273 short int var9
/* : Bool */;
2274 short int var10
/* : Bool */;
2275 short int var12
/* : Bool */;
2276 short int var14
/* : Bool */;
2277 short int var15
/* : Bool */;
2280 const char* var_class_name18
;
2283 var
= self
->attrs
[COLOR_parser_nodes__ABraMethid___n_obra
].val
; /* _n_obra on <self:ABraMethid> */
2284 if (unlikely(var
== NULL
)) {
2285 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_obra");
2286 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1739);
2290 { /* Inline kernel#Object#== (var,var_old_child) on <var:TObra> */
2291 var_other
= var_old_child
;
2293 { /* Inline kernel#Object#is_same_instance (var,var_other) on <var:TObra> */
2294 var6
= var
== var_other
;
2307 /* <var_new_child:nullable ANode> isa TObra */
2308 cltype
= type_parser_nodes__TObra
.color
;
2309 idtype
= type_parser_nodes__TObra
.id
;
2310 if(var_new_child
== NULL
) {
2313 if(cltype
>= var_new_child
->type
->table_size
) {
2316 var7
= var_new_child
->type
->type_table
[cltype
] == idtype
;
2319 if (unlikely(!var7
)) {
2320 var_class_name
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
2321 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TObra", var_class_name
);
2322 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1740);
2326 parser_prod__ABraMethid__n_obra_61d(self
, var_new_child
); /* Direct call parser_prod#ABraMethid#n_obra= on <self:ABraMethid>*/
2331 var8
= self
->attrs
[COLOR_parser_nodes__ABraMethid___n_cbra
].val
; /* _n_cbra on <self:ABraMethid> */
2332 if (unlikely(var8
== NULL
)) {
2333 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_cbra");
2334 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1743);
2338 { /* Inline kernel#Object#== (var8,var_old_child) on <var8:TCbra> */
2339 var_other
= var_old_child
;
2341 { /* Inline kernel#Object#is_same_instance (var8,var_other) on <var8:TCbra> */
2342 var14
= var8
== var_other
;
2345 RET_LABEL13
:(void)0;
2350 RET_LABEL11
:(void)0;
2355 /* <var_new_child:nullable ANode> isa TCbra */
2356 cltype16
= type_parser_nodes__TCbra
.color
;
2357 idtype17
= type_parser_nodes__TCbra
.id
;
2358 if(var_new_child
== NULL
) {
2361 if(cltype16
>= var_new_child
->type
->table_size
) {
2364 var15
= var_new_child
->type
->type_table
[cltype16
] == idtype17
;
2367 if (unlikely(!var15
)) {
2368 var_class_name18
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
2369 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TCbra", var_class_name18
);
2370 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1744);
2374 parser_prod__ABraMethid__n_cbra_61d(self
, var_new_child
); /* Direct call parser_prod#ABraMethid#n_cbra= on <self:ABraMethid>*/
2381 /* method parser_prod#ABraMethid#replace_child for (self: Object, ANode, nullable ANode) */
2382 void VIRTUAL_parser_prod__ABraMethid__replace_child(val
* self
, val
* p0
, val
* p1
) {
2383 parser_prod__ABraMethid__replace_child(self
, p0
, p1
); /* Direct call parser_prod#ABraMethid#replace_child on <self:Object(ABraMethid)>*/
2386 /* method parser_prod#ABraMethid#n_obra= for (self: ABraMethid, TObra) */
2387 void parser_prod__ABraMethid__n_obra_61d(val
* self
, val
* p0
) {
2388 val
* var_node
/* var node: TObra */;
2390 self
->attrs
[COLOR_parser_nodes__ABraMethid___n_obra
].val
= var_node
; /* _n_obra on <self:ABraMethid> */
2392 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:TObra> */
2393 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:TObra> */
2399 /* method parser_prod#ABraMethid#n_obra= for (self: Object, TObra) */
2400 void VIRTUAL_parser_prod__ABraMethid__n_obra_61d(val
* self
, val
* p0
) {
2401 parser_prod__ABraMethid__n_obra_61d(self
, p0
); /* Direct call parser_prod#ABraMethid#n_obra= on <self:Object(ABraMethid)>*/
2404 /* method parser_prod#ABraMethid#n_cbra= for (self: ABraMethid, TCbra) */
2405 void parser_prod__ABraMethid__n_cbra_61d(val
* self
, val
* p0
) {
2406 val
* var_node
/* var node: TCbra */;
2408 self
->attrs
[COLOR_parser_nodes__ABraMethid___n_cbra
].val
= var_node
; /* _n_cbra on <self:ABraMethid> */
2410 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:TCbra> */
2411 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:TCbra> */
2417 /* method parser_prod#ABraMethid#n_cbra= for (self: Object, TCbra) */
2418 void VIRTUAL_parser_prod__ABraMethid__n_cbra_61d(val
* self
, val
* p0
) {
2419 parser_prod__ABraMethid__n_cbra_61d(self
, p0
); /* Direct call parser_prod#ABraMethid#n_cbra= on <self:Object(ABraMethid)>*/
2422 /* method parser_prod#ABraMethid#visit_all for (self: ABraMethid, Visitor) */
2423 void parser_prod__ABraMethid__visit_all(val
* self
, val
* p0
) {
2424 val
* var_v
/* var v: Visitor */;
2425 val
* var
/* : TObra */;
2426 val
* var1
/* : TCbra */;
2428 var
= self
->attrs
[COLOR_parser_nodes__ABraMethid___n_obra
].val
; /* _n_obra on <self:ABraMethid> */
2429 if (unlikely(var
== NULL
)) {
2430 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_obra");
2431 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1763);
2435 parser_nodes__Visitor__enter_visit(var_v
, var
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
2437 var1
= self
->attrs
[COLOR_parser_nodes__ABraMethid___n_cbra
].val
; /* _n_cbra on <self:ABraMethid> */
2438 if (unlikely(var1
== NULL
)) {
2439 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_cbra");
2440 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1764);
2444 parser_nodes__Visitor__enter_visit(var_v
, var1
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
2448 /* method parser_prod#ABraMethid#visit_all for (self: Object, Visitor) */
2449 void VIRTUAL_parser_prod__ABraMethid__visit_all(val
* self
, val
* p0
) {
2450 parser_prod__ABraMethid__visit_all(self
, p0
); /* Direct call parser_prod#ABraMethid#visit_all on <self:Object(ABraMethid)>*/
2453 /* method parser_prod#AStarshipMethid#init_astarshipmethid for (self: AStarshipMethid, nullable TStarship) */
2454 void parser_prod__AStarshipMethid__init_astarshipmethid(val
* self
, val
* p0
) {
2455 val
* var_n_starship
/* var n_starship: nullable TStarship */;
2456 var_n_starship
= p0
;
2457 if (unlikely(var_n_starship
== NULL
)) {
2458 PRINT_ERROR("Runtime error: %s", "Cast failed");
2459 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1772);
2462 self
->attrs
[COLOR_parser_nodes__AStarshipMethid___n_starship
].val
= var_n_starship
; /* _n_starship on <self:AStarshipMethid> */
2463 if (var_n_starship
== NULL
) {
2464 PRINT_ERROR("Runtime error: %s", "Receiver is null");
2465 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1773);
2468 { /* Inline parser_nodes#ANode#parent= (var_n_starship,self) on <var_n_starship:nullable TStarship> */
2469 if (unlikely(var_n_starship
== NULL
)) {
2470 PRINT_ERROR("Runtime error: %s", "Receiver is null");
2471 PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36);
2474 var_n_starship
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_starship:nullable TStarship> */
2480 /* method parser_prod#AStarshipMethid#init_astarshipmethid for (self: Object, nullable TStarship) */
2481 void VIRTUAL_parser_prod__AStarshipMethid__init_astarshipmethid(val
* self
, val
* p0
) {
2482 parser_prod__AStarshipMethid__init_astarshipmethid(self
, p0
); /* Direct call parser_prod#AStarshipMethid#init_astarshipmethid on <self:Object(AStarshipMethid)>*/
2485 /* method parser_prod#AStarshipMethid#replace_child for (self: AStarshipMethid, ANode, nullable ANode) */
2486 void parser_prod__AStarshipMethid__replace_child(val
* self
, val
* p0
, val
* p1
) {
2487 val
* var_old_child
/* var old_child: ANode */;
2488 val
* var_new_child
/* var new_child: nullable ANode */;
2489 val
* var
/* : TStarship */;
2490 short int var1
/* : Bool */;
2491 short int var2
/* : Bool */;
2492 val
* var_other
/* var other: nullable Object */;
2493 short int var4
/* : Bool */;
2494 short int var6
/* : Bool */;
2495 short int var7
/* : Bool */;
2498 const char* var_class_name
;
2501 var
= self
->attrs
[COLOR_parser_nodes__AStarshipMethid___n_starship
].val
; /* _n_starship on <self:AStarshipMethid> */
2502 if (unlikely(var
== NULL
)) {
2503 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_starship");
2504 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1778);
2508 { /* Inline kernel#Object#== (var,var_old_child) on <var:TStarship> */
2509 var_other
= var_old_child
;
2511 { /* Inline kernel#Object#is_same_instance (var,var_other) on <var:TStarship> */
2512 var6
= var
== var_other
;
2525 /* <var_new_child:nullable ANode> isa TStarship */
2526 cltype
= type_parser_nodes__TStarship
.color
;
2527 idtype
= type_parser_nodes__TStarship
.id
;
2528 if(var_new_child
== NULL
) {
2531 if(cltype
>= var_new_child
->type
->table_size
) {
2534 var7
= var_new_child
->type
->type_table
[cltype
] == idtype
;
2537 if (unlikely(!var7
)) {
2538 var_class_name
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
2539 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TStarship", var_class_name
);
2540 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1779);
2544 parser_prod__AStarshipMethid__n_starship_61d(self
, var_new_child
); /* Direct call parser_prod#AStarshipMethid#n_starship= on <self:AStarshipMethid>*/
2551 /* method parser_prod#AStarshipMethid#replace_child for (self: Object, ANode, nullable ANode) */
2552 void VIRTUAL_parser_prod__AStarshipMethid__replace_child(val
* self
, val
* p0
, val
* p1
) {
2553 parser_prod__AStarshipMethid__replace_child(self
, p0
, p1
); /* Direct call parser_prod#AStarshipMethid#replace_child on <self:Object(AStarshipMethid)>*/
2556 /* method parser_prod#AStarshipMethid#n_starship= for (self: AStarshipMethid, TStarship) */
2557 void parser_prod__AStarshipMethid__n_starship_61d(val
* self
, val
* p0
) {
2558 val
* var_node
/* var node: TStarship */;
2560 self
->attrs
[COLOR_parser_nodes__AStarshipMethid___n_starship
].val
= var_node
; /* _n_starship on <self:AStarshipMethid> */
2562 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:TStarship> */
2563 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:TStarship> */
2569 /* method parser_prod#AStarshipMethid#n_starship= for (self: Object, TStarship) */
2570 void VIRTUAL_parser_prod__AStarshipMethid__n_starship_61d(val
* self
, val
* p0
) {
2571 parser_prod__AStarshipMethid__n_starship_61d(self
, p0
); /* Direct call parser_prod#AStarshipMethid#n_starship= on <self:Object(AStarshipMethid)>*/
2574 /* method parser_prod#AStarshipMethid#visit_all for (self: AStarshipMethid, Visitor) */
2575 void parser_prod__AStarshipMethid__visit_all(val
* self
, val
* p0
) {
2576 val
* var_v
/* var v: Visitor */;
2577 val
* var
/* : TStarship */;
2579 var
= self
->attrs
[COLOR_parser_nodes__AStarshipMethid___n_starship
].val
; /* _n_starship on <self:AStarshipMethid> */
2580 if (unlikely(var
== NULL
)) {
2581 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_starship");
2582 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1793);
2586 parser_nodes__Visitor__enter_visit(var_v
, var
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
2590 /* method parser_prod#AStarshipMethid#visit_all for (self: Object, Visitor) */
2591 void VIRTUAL_parser_prod__AStarshipMethid__visit_all(val
* self
, val
* p0
) {
2592 parser_prod__AStarshipMethid__visit_all(self
, p0
); /* Direct call parser_prod#AStarshipMethid#visit_all on <self:Object(AStarshipMethid)>*/
2595 /* method parser_prod#AAssignMethid#init_aassignmethid for (self: AAssignMethid, nullable TId, nullable TAssign) */
2596 void parser_prod__AAssignMethid__init_aassignmethid(val
* self
, val
* p0
, val
* p1
) {
2597 val
* var_n_id
/* var n_id: nullable TId */;
2598 val
* var_n_assign
/* var n_assign: nullable TAssign */;
2601 if (unlikely(var_n_id
== NULL
)) {
2602 PRINT_ERROR("Runtime error: %s", "Cast failed");
2603 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1802);
2606 self
->attrs
[COLOR_parser_nodes__AAssignMethid___n_id
].val
= var_n_id
; /* _n_id on <self:AAssignMethid> */
2607 if (var_n_id
== NULL
) {
2608 PRINT_ERROR("Runtime error: %s", "Receiver is null");
2609 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1803);
2612 { /* Inline parser_nodes#ANode#parent= (var_n_id,self) on <var_n_id:nullable TId> */
2613 if (unlikely(var_n_id
== NULL
)) {
2614 PRINT_ERROR("Runtime error: %s", "Receiver is null");
2615 PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36);
2618 var_n_id
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_id:nullable TId> */
2622 if (unlikely(var_n_assign
== NULL
)) {
2623 PRINT_ERROR("Runtime error: %s", "Cast failed");
2624 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1804);
2627 self
->attrs
[COLOR_parser_nodes__AAssignMethid___n_assign
].val
= var_n_assign
; /* _n_assign on <self:AAssignMethid> */
2628 if (var_n_assign
== NULL
) {
2629 PRINT_ERROR("Runtime error: %s", "Receiver is null");
2630 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1805);
2633 { /* Inline parser_nodes#ANode#parent= (var_n_assign,self) on <var_n_assign:nullable TAssign> */
2634 if (unlikely(var_n_assign
== NULL
)) {
2635 PRINT_ERROR("Runtime error: %s", "Receiver is null");
2636 PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36);
2639 var_n_assign
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_assign:nullable TAssign> */
2645 /* method parser_prod#AAssignMethid#init_aassignmethid for (self: Object, nullable TId, nullable TAssign) */
2646 void VIRTUAL_parser_prod__AAssignMethid__init_aassignmethid(val
* self
, val
* p0
, val
* p1
) {
2647 parser_prod__AAssignMethid__init_aassignmethid(self
, p0
, p1
); /* Direct call parser_prod#AAssignMethid#init_aassignmethid on <self:Object(AAssignMethid)>*/
2650 /* method parser_prod#AAssignMethid#replace_child for (self: AAssignMethid, ANode, nullable ANode) */
2651 void parser_prod__AAssignMethid__replace_child(val
* self
, val
* p0
, val
* p1
) {
2652 val
* var_old_child
/* var old_child: ANode */;
2653 val
* var_new_child
/* var new_child: nullable ANode */;
2654 val
* var
/* : TId */;
2655 short int var1
/* : Bool */;
2656 short int var2
/* : Bool */;
2657 val
* var_other
/* var other: nullable Object */;
2658 short int var4
/* : Bool */;
2659 short int var6
/* : Bool */;
2660 short int var7
/* : Bool */;
2663 const char* var_class_name
;
2664 val
* var8
/* : TAssign */;
2665 short int var9
/* : Bool */;
2666 short int var10
/* : Bool */;
2667 short int var12
/* : Bool */;
2668 short int var14
/* : Bool */;
2669 short int var15
/* : Bool */;
2672 const char* var_class_name18
;
2675 var
= self
->attrs
[COLOR_parser_nodes__AAssignMethid___n_id
].val
; /* _n_id on <self:AAssignMethid> */
2676 if (unlikely(var
== NULL
)) {
2677 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id");
2678 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1810);
2682 { /* Inline kernel#Object#== (var,var_old_child) on <var:TId> */
2683 var_other
= var_old_child
;
2685 { /* Inline kernel#Object#is_same_instance (var,var_other) on <var:TId> */
2686 var6
= var
== var_other
;
2699 /* <var_new_child:nullable ANode> isa TId */
2700 cltype
= type_parser_nodes__TId
.color
;
2701 idtype
= type_parser_nodes__TId
.id
;
2702 if(var_new_child
== NULL
) {
2705 if(cltype
>= var_new_child
->type
->table_size
) {
2708 var7
= var_new_child
->type
->type_table
[cltype
] == idtype
;
2711 if (unlikely(!var7
)) {
2712 var_class_name
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
2713 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TId", var_class_name
);
2714 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1811);
2718 parser_prod__AAssignMethid__n_id_61d(self
, var_new_child
); /* Direct call parser_prod#AAssignMethid#n_id= on <self:AAssignMethid>*/
2723 var8
= self
->attrs
[COLOR_parser_nodes__AAssignMethid___n_assign
].val
; /* _n_assign on <self:AAssignMethid> */
2724 if (unlikely(var8
== NULL
)) {
2725 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_assign");
2726 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1814);
2730 { /* Inline kernel#Object#== (var8,var_old_child) on <var8:TAssign> */
2731 var_other
= var_old_child
;
2733 { /* Inline kernel#Object#is_same_instance (var8,var_other) on <var8:TAssign> */
2734 var14
= var8
== var_other
;
2737 RET_LABEL13
:(void)0;
2742 RET_LABEL11
:(void)0;
2747 /* <var_new_child:nullable ANode> isa TAssign */
2748 cltype16
= type_parser_nodes__TAssign
.color
;
2749 idtype17
= type_parser_nodes__TAssign
.id
;
2750 if(var_new_child
== NULL
) {
2753 if(cltype16
>= var_new_child
->type
->table_size
) {
2756 var15
= var_new_child
->type
->type_table
[cltype16
] == idtype17
;
2759 if (unlikely(!var15
)) {
2760 var_class_name18
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
2761 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TAssign", var_class_name18
);
2762 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1815);
2766 parser_prod__AAssignMethid__n_assign_61d(self
, var_new_child
); /* Direct call parser_prod#AAssignMethid#n_assign= on <self:AAssignMethid>*/
2773 /* method parser_prod#AAssignMethid#replace_child for (self: Object, ANode, nullable ANode) */
2774 void VIRTUAL_parser_prod__AAssignMethid__replace_child(val
* self
, val
* p0
, val
* p1
) {
2775 parser_prod__AAssignMethid__replace_child(self
, p0
, p1
); /* Direct call parser_prod#AAssignMethid#replace_child on <self:Object(AAssignMethid)>*/
2778 /* method parser_prod#AAssignMethid#n_id= for (self: AAssignMethid, TId) */
2779 void parser_prod__AAssignMethid__n_id_61d(val
* self
, val
* p0
) {
2780 val
* var_node
/* var node: TId */;
2782 self
->attrs
[COLOR_parser_nodes__AAssignMethid___n_id
].val
= var_node
; /* _n_id on <self:AAssignMethid> */
2784 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:TId> */
2785 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:TId> */
2791 /* method parser_prod#AAssignMethid#n_id= for (self: Object, TId) */
2792 void VIRTUAL_parser_prod__AAssignMethid__n_id_61d(val
* self
, val
* p0
) {
2793 parser_prod__AAssignMethid__n_id_61d(self
, p0
); /* Direct call parser_prod#AAssignMethid#n_id= on <self:Object(AAssignMethid)>*/
2796 /* method parser_prod#AAssignMethid#n_assign= for (self: AAssignMethid, TAssign) */
2797 void parser_prod__AAssignMethid__n_assign_61d(val
* self
, val
* p0
) {
2798 val
* var_node
/* var node: TAssign */;
2800 self
->attrs
[COLOR_parser_nodes__AAssignMethid___n_assign
].val
= var_node
; /* _n_assign on <self:AAssignMethid> */
2802 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:TAssign> */
2803 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:TAssign> */
2809 /* method parser_prod#AAssignMethid#n_assign= for (self: Object, TAssign) */
2810 void VIRTUAL_parser_prod__AAssignMethid__n_assign_61d(val
* self
, val
* p0
) {
2811 parser_prod__AAssignMethid__n_assign_61d(self
, p0
); /* Direct call parser_prod#AAssignMethid#n_assign= on <self:Object(AAssignMethid)>*/
2814 /* method parser_prod#AAssignMethid#visit_all for (self: AAssignMethid, Visitor) */
2815 void parser_prod__AAssignMethid__visit_all(val
* self
, val
* p0
) {
2816 val
* var_v
/* var v: Visitor */;
2817 val
* var
/* : TId */;
2818 val
* var1
/* : TAssign */;
2820 var
= self
->attrs
[COLOR_parser_nodes__AAssignMethid___n_id
].val
; /* _n_id on <self:AAssignMethid> */
2821 if (unlikely(var
== NULL
)) {
2822 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id");
2823 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1834);
2827 parser_nodes__Visitor__enter_visit(var_v
, var
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
2829 var1
= self
->attrs
[COLOR_parser_nodes__AAssignMethid___n_assign
].val
; /* _n_assign on <self:AAssignMethid> */
2830 if (unlikely(var1
== NULL
)) {
2831 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_assign");
2832 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1835);
2836 parser_nodes__Visitor__enter_visit(var_v
, var1
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
2840 /* method parser_prod#AAssignMethid#visit_all for (self: Object, Visitor) */
2841 void VIRTUAL_parser_prod__AAssignMethid__visit_all(val
* self
, val
* p0
) {
2842 parser_prod__AAssignMethid__visit_all(self
, p0
); /* Direct call parser_prod#AAssignMethid#visit_all on <self:Object(AAssignMethid)>*/
2845 /* method parser_prod#ABraassignMethid#init_abraassignmethid for (self: ABraassignMethid, nullable TObra, nullable TCbra, nullable TAssign) */
2846 void parser_prod__ABraassignMethid__init_abraassignmethid(val
* self
, val
* p0
, val
* p1
, val
* p2
) {
2847 val
* var_n_obra
/* var n_obra: nullable TObra */;
2848 val
* var_n_cbra
/* var n_cbra: nullable TCbra */;
2849 val
* var_n_assign
/* var n_assign: nullable TAssign */;
2853 if (unlikely(var_n_obra
== NULL
)) {
2854 PRINT_ERROR("Runtime error: %s", "Cast failed");
2855 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1845);
2858 self
->attrs
[COLOR_parser_nodes__ABraassignMethid___n_obra
].val
= var_n_obra
; /* _n_obra on <self:ABraassignMethid> */
2859 if (var_n_obra
== NULL
) {
2860 PRINT_ERROR("Runtime error: %s", "Receiver is null");
2861 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1846);
2864 { /* Inline parser_nodes#ANode#parent= (var_n_obra,self) on <var_n_obra:nullable TObra> */
2865 if (unlikely(var_n_obra
== NULL
)) {
2866 PRINT_ERROR("Runtime error: %s", "Receiver is null");
2867 PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36);
2870 var_n_obra
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_obra:nullable TObra> */
2874 if (unlikely(var_n_cbra
== NULL
)) {
2875 PRINT_ERROR("Runtime error: %s", "Cast failed");
2876 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1847);
2879 self
->attrs
[COLOR_parser_nodes__ABraassignMethid___n_cbra
].val
= var_n_cbra
; /* _n_cbra on <self:ABraassignMethid> */
2880 if (var_n_cbra
== NULL
) {
2881 PRINT_ERROR("Runtime error: %s", "Receiver is null");
2882 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1848);
2885 { /* Inline parser_nodes#ANode#parent= (var_n_cbra,self) on <var_n_cbra:nullable TCbra> */
2886 if (unlikely(var_n_cbra
== NULL
)) {
2887 PRINT_ERROR("Runtime error: %s", "Receiver is null");
2888 PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36);
2891 var_n_cbra
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_cbra:nullable TCbra> */
2895 if (unlikely(var_n_assign
== NULL
)) {
2896 PRINT_ERROR("Runtime error: %s", "Cast failed");
2897 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1849);
2900 self
->attrs
[COLOR_parser_nodes__ABraassignMethid___n_assign
].val
= var_n_assign
; /* _n_assign on <self:ABraassignMethid> */
2901 if (var_n_assign
== NULL
) {
2902 PRINT_ERROR("Runtime error: %s", "Receiver is null");
2903 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1850);
2906 { /* Inline parser_nodes#ANode#parent= (var_n_assign,self) on <var_n_assign:nullable TAssign> */
2907 if (unlikely(var_n_assign
== NULL
)) {
2908 PRINT_ERROR("Runtime error: %s", "Receiver is null");
2909 PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36);
2912 var_n_assign
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_assign:nullable TAssign> */
2918 /* method parser_prod#ABraassignMethid#init_abraassignmethid for (self: Object, nullable TObra, nullable TCbra, nullable TAssign) */
2919 void VIRTUAL_parser_prod__ABraassignMethid__init_abraassignmethid(val
* self
, val
* p0
, val
* p1
, val
* p2
) {
2920 parser_prod__ABraassignMethid__init_abraassignmethid(self
, p0
, p1
, p2
); /* Direct call parser_prod#ABraassignMethid#init_abraassignmethid on <self:Object(ABraassignMethid)>*/
2923 /* method parser_prod#ABraassignMethid#replace_child for (self: ABraassignMethid, ANode, nullable ANode) */
2924 void parser_prod__ABraassignMethid__replace_child(val
* self
, val
* p0
, val
* p1
) {
2925 val
* var_old_child
/* var old_child: ANode */;
2926 val
* var_new_child
/* var new_child: nullable ANode */;
2927 val
* var
/* : TObra */;
2928 short int var1
/* : Bool */;
2929 short int var2
/* : Bool */;
2930 val
* var_other
/* var other: nullable Object */;
2931 short int var4
/* : Bool */;
2932 short int var6
/* : Bool */;
2933 short int var7
/* : Bool */;
2936 const char* var_class_name
;
2937 val
* var8
/* : TCbra */;
2938 short int var9
/* : Bool */;
2939 short int var10
/* : Bool */;
2940 short int var12
/* : Bool */;
2941 short int var14
/* : Bool */;
2942 short int var15
/* : Bool */;
2945 const char* var_class_name18
;
2946 val
* var19
/* : TAssign */;
2947 short int var20
/* : Bool */;
2948 short int var21
/* : Bool */;
2949 short int var23
/* : Bool */;
2950 short int var25
/* : Bool */;
2951 short int var26
/* : Bool */;
2954 const char* var_class_name29
;
2957 var
= self
->attrs
[COLOR_parser_nodes__ABraassignMethid___n_obra
].val
; /* _n_obra on <self:ABraassignMethid> */
2958 if (unlikely(var
== NULL
)) {
2959 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_obra");
2960 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1855);
2964 { /* Inline kernel#Object#== (var,var_old_child) on <var:TObra> */
2965 var_other
= var_old_child
;
2967 { /* Inline kernel#Object#is_same_instance (var,var_other) on <var:TObra> */
2968 var6
= var
== var_other
;
2981 /* <var_new_child:nullable ANode> isa TObra */
2982 cltype
= type_parser_nodes__TObra
.color
;
2983 idtype
= type_parser_nodes__TObra
.id
;
2984 if(var_new_child
== NULL
) {
2987 if(cltype
>= var_new_child
->type
->table_size
) {
2990 var7
= var_new_child
->type
->type_table
[cltype
] == idtype
;
2993 if (unlikely(!var7
)) {
2994 var_class_name
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
2995 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TObra", var_class_name
);
2996 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1856);
3000 parser_prod__ABraassignMethid__n_obra_61d(self
, var_new_child
); /* Direct call parser_prod#ABraassignMethid#n_obra= on <self:ABraassignMethid>*/
3005 var8
= self
->attrs
[COLOR_parser_nodes__ABraassignMethid___n_cbra
].val
; /* _n_cbra on <self:ABraassignMethid> */
3006 if (unlikely(var8
== NULL
)) {
3007 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_cbra");
3008 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1859);
3012 { /* Inline kernel#Object#== (var8,var_old_child) on <var8:TCbra> */
3013 var_other
= var_old_child
;
3015 { /* Inline kernel#Object#is_same_instance (var8,var_other) on <var8:TCbra> */
3016 var14
= var8
== var_other
;
3019 RET_LABEL13
:(void)0;
3024 RET_LABEL11
:(void)0;
3029 /* <var_new_child:nullable ANode> isa TCbra */
3030 cltype16
= type_parser_nodes__TCbra
.color
;
3031 idtype17
= type_parser_nodes__TCbra
.id
;
3032 if(var_new_child
== NULL
) {
3035 if(cltype16
>= var_new_child
->type
->table_size
) {
3038 var15
= var_new_child
->type
->type_table
[cltype16
] == idtype17
;
3041 if (unlikely(!var15
)) {
3042 var_class_name18
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
3043 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TCbra", var_class_name18
);
3044 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1860);
3048 parser_prod__ABraassignMethid__n_cbra_61d(self
, var_new_child
); /* Direct call parser_prod#ABraassignMethid#n_cbra= on <self:ABraassignMethid>*/
3053 var19
= self
->attrs
[COLOR_parser_nodes__ABraassignMethid___n_assign
].val
; /* _n_assign on <self:ABraassignMethid> */
3054 if (unlikely(var19
== NULL
)) {
3055 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_assign");
3056 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1863);
3060 { /* Inline kernel#Object#== (var19,var_old_child) on <var19:TAssign> */
3061 var_other
= var_old_child
;
3063 { /* Inline kernel#Object#is_same_instance (var19,var_other) on <var19:TAssign> */
3064 var25
= var19
== var_other
;
3067 RET_LABEL24
:(void)0;
3072 RET_LABEL22
:(void)0;
3077 /* <var_new_child:nullable ANode> isa TAssign */
3078 cltype27
= type_parser_nodes__TAssign
.color
;
3079 idtype28
= type_parser_nodes__TAssign
.id
;
3080 if(var_new_child
== NULL
) {
3083 if(cltype27
>= var_new_child
->type
->table_size
) {
3086 var26
= var_new_child
->type
->type_table
[cltype27
] == idtype28
;
3089 if (unlikely(!var26
)) {
3090 var_class_name29
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
3091 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TAssign", var_class_name29
);
3092 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1864);
3096 parser_prod__ABraassignMethid__n_assign_61d(self
, var_new_child
); /* Direct call parser_prod#ABraassignMethid#n_assign= on <self:ABraassignMethid>*/
3103 /* method parser_prod#ABraassignMethid#replace_child for (self: Object, ANode, nullable ANode) */
3104 void VIRTUAL_parser_prod__ABraassignMethid__replace_child(val
* self
, val
* p0
, val
* p1
) {
3105 parser_prod__ABraassignMethid__replace_child(self
, p0
, p1
); /* Direct call parser_prod#ABraassignMethid#replace_child on <self:Object(ABraassignMethid)>*/
3108 /* method parser_prod#ABraassignMethid#n_obra= for (self: ABraassignMethid, TObra) */
3109 void parser_prod__ABraassignMethid__n_obra_61d(val
* self
, val
* p0
) {
3110 val
* var_node
/* var node: TObra */;
3112 self
->attrs
[COLOR_parser_nodes__ABraassignMethid___n_obra
].val
= var_node
; /* _n_obra on <self:ABraassignMethid> */
3114 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:TObra> */
3115 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:TObra> */
3121 /* method parser_prod#ABraassignMethid#n_obra= for (self: Object, TObra) */
3122 void VIRTUAL_parser_prod__ABraassignMethid__n_obra_61d(val
* self
, val
* p0
) {
3123 parser_prod__ABraassignMethid__n_obra_61d(self
, p0
); /* Direct call parser_prod#ABraassignMethid#n_obra= on <self:Object(ABraassignMethid)>*/
3126 /* method parser_prod#ABraassignMethid#n_cbra= for (self: ABraassignMethid, TCbra) */
3127 void parser_prod__ABraassignMethid__n_cbra_61d(val
* self
, val
* p0
) {
3128 val
* var_node
/* var node: TCbra */;
3130 self
->attrs
[COLOR_parser_nodes__ABraassignMethid___n_cbra
].val
= var_node
; /* _n_cbra on <self:ABraassignMethid> */
3132 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:TCbra> */
3133 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:TCbra> */
3139 /* method parser_prod#ABraassignMethid#n_cbra= for (self: Object, TCbra) */
3140 void VIRTUAL_parser_prod__ABraassignMethid__n_cbra_61d(val
* self
, val
* p0
) {
3141 parser_prod__ABraassignMethid__n_cbra_61d(self
, p0
); /* Direct call parser_prod#ABraassignMethid#n_cbra= on <self:Object(ABraassignMethid)>*/
3144 /* method parser_prod#ABraassignMethid#n_assign= for (self: ABraassignMethid, TAssign) */
3145 void parser_prod__ABraassignMethid__n_assign_61d(val
* self
, val
* p0
) {
3146 val
* var_node
/* var node: TAssign */;
3148 self
->attrs
[COLOR_parser_nodes__ABraassignMethid___n_assign
].val
= var_node
; /* _n_assign on <self:ABraassignMethid> */
3150 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:TAssign> */
3151 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:TAssign> */
3157 /* method parser_prod#ABraassignMethid#n_assign= for (self: Object, TAssign) */
3158 void VIRTUAL_parser_prod__ABraassignMethid__n_assign_61d(val
* self
, val
* p0
) {
3159 parser_prod__ABraassignMethid__n_assign_61d(self
, p0
); /* Direct call parser_prod#ABraassignMethid#n_assign= on <self:Object(ABraassignMethid)>*/
3162 /* method parser_prod#ABraassignMethid#visit_all for (self: ABraassignMethid, Visitor) */
3163 void parser_prod__ABraassignMethid__visit_all(val
* self
, val
* p0
) {
3164 val
* var_v
/* var v: Visitor */;
3165 val
* var
/* : TObra */;
3166 val
* var1
/* : TCbra */;
3167 val
* var2
/* : TAssign */;
3169 var
= self
->attrs
[COLOR_parser_nodes__ABraassignMethid___n_obra
].val
; /* _n_obra on <self:ABraassignMethid> */
3170 if (unlikely(var
== NULL
)) {
3171 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_obra");
3172 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1888);
3176 parser_nodes__Visitor__enter_visit(var_v
, var
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
3178 var1
= self
->attrs
[COLOR_parser_nodes__ABraassignMethid___n_cbra
].val
; /* _n_cbra on <self:ABraassignMethid> */
3179 if (unlikely(var1
== NULL
)) {
3180 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_cbra");
3181 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1889);
3185 parser_nodes__Visitor__enter_visit(var_v
, var1
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
3187 var2
= self
->attrs
[COLOR_parser_nodes__ABraassignMethid___n_assign
].val
; /* _n_assign on <self:ABraassignMethid> */
3188 if (unlikely(var2
== NULL
)) {
3189 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_assign");
3190 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1890);
3194 parser_nodes__Visitor__enter_visit(var_v
, var2
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
3198 /* method parser_prod#ABraassignMethid#visit_all for (self: Object, Visitor) */
3199 void VIRTUAL_parser_prod__ABraassignMethid__visit_all(val
* self
, val
* p0
) {
3200 parser_prod__ABraassignMethid__visit_all(self
, p0
); /* Direct call parser_prod#ABraassignMethid#visit_all on <self:Object(ABraassignMethid)>*/
3203 /* method parser_prod#ASignature#init_asignature for (self: ASignature, nullable TOpar, Collection[Object], nullable TCpar, nullable AType) */
3204 void parser_prod__ASignature__init_asignature(val
* self
, val
* p0
, val
* p1
, val
* p2
, val
* p3
) {
3205 val
* var_n_opar
/* var n_opar: nullable TOpar */;
3206 val
* var_n_params
/* var n_params: Collection[Object] */;
3207 val
* var_n_cpar
/* var n_cpar: nullable TCpar */;
3208 val
* var_n_type
/* var n_type: nullable AType */;
3209 val
* var
/* : null */;
3210 short int var1
/* : Bool */;
3211 short int var2
/* : Bool */;
3212 val
* var_other
/* var other: nullable Object */;
3213 short int var4
/* : Bool */;
3214 short int var5
/* : Bool */;
3215 short int var6
/* : Bool */;
3216 val
* var8
/* : ANodes[AParam] */;
3217 val
* var10
/* : ANodes[AParam] */;
3218 val
* var11
/* : null */;
3219 short int var12
/* : Bool */;
3220 short int var13
/* : Bool */;
3221 short int var15
/* : Bool */;
3222 short int var16
/* : Bool */;
3223 short int var17
/* : Bool */;
3224 val
* var19
/* : null */;
3225 short int var20
/* : Bool */;
3226 short int var21
/* : Bool */;
3227 short int var23
/* : Bool */;
3228 short int var24
/* : Bool */;
3229 short int var25
/* : Bool */;
3234 self
->attrs
[COLOR_parser_nodes__ASignature___n_opar
].val
= var_n_opar
; /* _n_opar on <self:ASignature> */
3236 if (var_n_opar
== NULL
) {
3237 var1
= 0; /* is null */
3239 var1
= 1; /* arg is null and recv is not */
3242 { /* Inline kernel#Object#!= (var_n_opar,var) on <var_n_opar:nullable TOpar> */
3245 var5
= ((short int (*)(val
*, val
*))(var_n_opar
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_n_opar
, var_other
) /* == on <var_n_opar:nullable TOpar(TOpar)>*/;
3257 { /* Inline parser_nodes#ANode#parent= (var_n_opar,self) on <var_n_opar:nullable TOpar(TOpar)> */
3258 var_n_opar
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_opar:nullable TOpar(TOpar)> */
3265 { /* Inline parser_nodes#ASignature#n_params (self) on <self:ASignature> */
3266 var10
= self
->attrs
[COLOR_parser_nodes__ASignature___n_params
].val
; /* _n_params on <self:ASignature> */
3267 if (unlikely(var10
== NULL
)) {
3268 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_params");
3269 PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 1279);
3277 parser_nodes__ANodes__unsafe_add_all(var8
, var_n_params
); /* Direct call parser_nodes#ANodes#unsafe_add_all on <var8:ANodes[AParam]>*/
3279 self
->attrs
[COLOR_parser_nodes__ASignature___n_cpar
].val
= var_n_cpar
; /* _n_cpar on <self:ASignature> */
3281 if (var_n_cpar
== NULL
) {
3282 var12
= 0; /* is null */
3284 var12
= 1; /* arg is null and recv is not */
3287 { /* Inline kernel#Object#!= (var_n_cpar,var11) on <var_n_cpar:nullable TCpar> */
3290 var16
= ((short int (*)(val
*, val
*))(var_n_cpar
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_n_cpar
, var_other
) /* == on <var_n_cpar:nullable TCpar(TCpar)>*/;
3296 RET_LABEL14
:(void)0;
3302 { /* Inline parser_nodes#ANode#parent= (var_n_cpar,self) on <var_n_cpar:nullable TCpar(TCpar)> */
3303 var_n_cpar
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_cpar:nullable TCpar(TCpar)> */
3304 RET_LABEL18
:(void)0;
3309 self
->attrs
[COLOR_parser_nodes__ASignature___n_type
].val
= var_n_type
; /* _n_type on <self:ASignature> */
3311 if (var_n_type
== NULL
) {
3312 var20
= 0; /* is null */
3314 var20
= 1; /* arg is null and recv is not */
3317 { /* Inline kernel#Object#!= (var_n_type,var19) on <var_n_type:nullable AType> */
3320 var24
= ((short int (*)(val
*, val
*))(var_n_type
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_n_type
, var_other
) /* == on <var_n_type:nullable AType(AType)>*/;
3326 RET_LABEL22
:(void)0;
3332 { /* Inline parser_nodes#ANode#parent= (var_n_type,self) on <var_n_type:nullable AType(AType)> */
3333 var_n_type
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_type:nullable AType(AType)> */
3334 RET_LABEL26
:(void)0;
3341 /* method parser_prod#ASignature#init_asignature for (self: Object, nullable TOpar, Collection[Object], nullable TCpar, nullable AType) */
3342 void VIRTUAL_parser_prod__ASignature__init_asignature(val
* self
, val
* p0
, val
* p1
, val
* p2
, val
* p3
) {
3343 parser_prod__ASignature__init_asignature(self
, p0
, p1
, p2
, p3
); /* Direct call parser_prod#ASignature#init_asignature on <self:Object(ASignature)>*/
3346 /* method parser_prod#ASignature#replace_child for (self: ASignature, ANode, nullable ANode) */
3347 void parser_prod__ASignature__replace_child(val
* self
, val
* p0
, val
* p1
) {
3348 val
* var_old_child
/* var old_child: ANode */;
3349 val
* var_new_child
/* var new_child: nullable ANode */;
3350 val
* var
/* : nullable TOpar */;
3351 short int var1
/* : Bool */;
3352 short int var2
/* : Bool */;
3353 val
* var_other
/* var other: nullable Object */;
3354 short int var4
/* : Bool */;
3355 short int var6
/* : Bool */;
3356 short int var7
/* : Bool */;
3359 const char* var_class_name
;
3360 val
* var8
/* : ANodes[AParam] */;
3361 val
* var10
/* : ANodes[AParam] */;
3362 short int var11
/* : Bool */;
3363 val
* var12
/* : nullable TCpar */;
3364 short int var13
/* : Bool */;
3365 short int var14
/* : Bool */;
3366 short int var16
/* : Bool */;
3367 short int var18
/* : Bool */;
3368 short int var19
/* : Bool */;
3371 const char* var_class_name22
;
3372 val
* var23
/* : nullable AType */;
3373 short int var24
/* : Bool */;
3374 short int var25
/* : Bool */;
3375 short int var27
/* : Bool */;
3376 short int var29
/* : Bool */;
3377 short int var30
/* : Bool */;
3380 const char* var_class_name33
;
3383 var
= self
->attrs
[COLOR_parser_nodes__ASignature___n_opar
].val
; /* _n_opar on <self:ASignature> */
3385 var1
= 0; /* <var_old_child:ANode> cannot be null */
3387 { /* Inline kernel#Object#== (var,var_old_child) on <var:nullable TOpar> */
3388 var_other
= var_old_child
;
3390 { /* Inline kernel#Object#is_same_instance (var,var_other) on <var:nullable TOpar(TOpar)> */
3391 var6
= var
== var_other
;
3404 /* <var_new_child:nullable ANode> isa nullable TOpar */
3405 cltype
= type_nullable_parser_nodes__TOpar
.color
;
3406 idtype
= type_nullable_parser_nodes__TOpar
.id
;
3407 if(var_new_child
== NULL
) {
3410 if(cltype
>= var_new_child
->type
->table_size
) {
3413 var7
= var_new_child
->type
->type_table
[cltype
] == idtype
;
3416 if (unlikely(!var7
)) {
3417 var_class_name
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
3418 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable TOpar", var_class_name
);
3419 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1913);
3423 parser_prod__ASignature__n_opar_61d(self
, var_new_child
); /* Direct call parser_prod#ASignature#n_opar= on <self:ASignature>*/
3429 { /* Inline parser_nodes#ASignature#n_params (self) on <self:ASignature> */
3430 var10
= self
->attrs
[COLOR_parser_nodes__ASignature___n_params
].val
; /* _n_params on <self:ASignature> */
3431 if (unlikely(var10
== NULL
)) {
3432 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_params");
3433 PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 1279);
3441 var11
= parser_nodes__ANodes__replace_child(var8
, var_old_child
, var_new_child
);
3447 var12
= self
->attrs
[COLOR_parser_nodes__ASignature___n_cpar
].val
; /* _n_cpar on <self:ASignature> */
3448 if (var12
== NULL
) {
3449 var13
= 0; /* <var_old_child:ANode> cannot be null */
3451 { /* Inline kernel#Object#== (var12,var_old_child) on <var12:nullable TCpar> */
3452 var_other
= var_old_child
;
3454 { /* Inline kernel#Object#is_same_instance (var12,var_other) on <var12:nullable TCpar(TCpar)> */
3455 var18
= var12
== var_other
;
3458 RET_LABEL17
:(void)0;
3463 RET_LABEL15
:(void)0;
3468 /* <var_new_child:nullable ANode> isa nullable TCpar */
3469 cltype20
= type_nullable_parser_nodes__TCpar
.color
;
3470 idtype21
= type_nullable_parser_nodes__TCpar
.id
;
3471 if(var_new_child
== NULL
) {
3474 if(cltype20
>= var_new_child
->type
->table_size
) {
3477 var19
= var_new_child
->type
->type_table
[cltype20
] == idtype21
;
3480 if (unlikely(!var19
)) {
3481 var_class_name22
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
3482 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable TCpar", var_class_name22
);
3483 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1918);
3487 parser_prod__ASignature__n_cpar_61d(self
, var_new_child
); /* Direct call parser_prod#ASignature#n_cpar= on <self:ASignature>*/
3492 var23
= self
->attrs
[COLOR_parser_nodes__ASignature___n_type
].val
; /* _n_type on <self:ASignature> */
3493 if (var23
== NULL
) {
3494 var24
= 0; /* <var_old_child:ANode> cannot be null */
3496 { /* Inline kernel#Object#== (var23,var_old_child) on <var23:nullable AType> */
3497 var_other
= var_old_child
;
3499 { /* Inline kernel#Object#is_same_instance (var23,var_other) on <var23:nullable AType(AType)> */
3500 var29
= var23
== var_other
;
3503 RET_LABEL28
:(void)0;
3508 RET_LABEL26
:(void)0;
3513 /* <var_new_child:nullable ANode> isa nullable AType */
3514 cltype31
= type_nullable_parser_nodes__AType
.color
;
3515 idtype32
= type_nullable_parser_nodes__AType
.id
;
3516 if(var_new_child
== NULL
) {
3519 if(cltype31
>= var_new_child
->type
->table_size
) {
3522 var30
= var_new_child
->type
->type_table
[cltype31
] == idtype32
;
3525 if (unlikely(!var30
)) {
3526 var_class_name33
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
3527 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable AType", var_class_name33
);
3528 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1922);
3532 parser_prod__ASignature__n_type_61d(self
, var_new_child
); /* Direct call parser_prod#ASignature#n_type= on <self:ASignature>*/
3539 /* method parser_prod#ASignature#replace_child for (self: Object, ANode, nullable ANode) */
3540 void VIRTUAL_parser_prod__ASignature__replace_child(val
* self
, val
* p0
, val
* p1
) {
3541 parser_prod__ASignature__replace_child(self
, p0
, p1
); /* Direct call parser_prod#ASignature#replace_child on <self:Object(ASignature)>*/
3544 /* method parser_prod#ASignature#n_opar= for (self: ASignature, nullable TOpar) */
3545 void parser_prod__ASignature__n_opar_61d(val
* self
, val
* p0
) {
3546 val
* var_node
/* var node: nullable TOpar */;
3547 val
* var
/* : null */;
3548 short int var1
/* : Bool */;
3549 short int var2
/* : Bool */;
3550 val
* var_other
/* var other: nullable Object */;
3551 short int var4
/* : Bool */;
3552 short int var5
/* : Bool */;
3553 short int var6
/* : Bool */;
3555 self
->attrs
[COLOR_parser_nodes__ASignature___n_opar
].val
= var_node
; /* _n_opar on <self:ASignature> */
3557 if (var_node
== NULL
) {
3558 var1
= 0; /* is null */
3560 var1
= 1; /* arg is null and recv is not */
3563 { /* Inline kernel#Object#!= (var_node,var) on <var_node:nullable TOpar> */
3566 var5
= ((short int (*)(val
*, val
*))(var_node
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_node
, var_other
) /* == on <var_node:nullable TOpar(TOpar)>*/;
3578 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:nullable TOpar(TOpar)> */
3579 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:nullable TOpar(TOpar)> */
3587 /* method parser_prod#ASignature#n_opar= for (self: Object, nullable TOpar) */
3588 void VIRTUAL_parser_prod__ASignature__n_opar_61d(val
* self
, val
* p0
) {
3589 parser_prod__ASignature__n_opar_61d(self
, p0
); /* Direct call parser_prod#ASignature#n_opar= on <self:Object(ASignature)>*/
3592 /* method parser_prod#ASignature#n_cpar= for (self: ASignature, nullable TCpar) */
3593 void parser_prod__ASignature__n_cpar_61d(val
* self
, val
* p0
) {
3594 val
* var_node
/* var node: nullable TCpar */;
3595 val
* var
/* : null */;
3596 short int var1
/* : Bool */;
3597 short int var2
/* : Bool */;
3598 val
* var_other
/* var other: nullable Object */;
3599 short int var4
/* : Bool */;
3600 short int var5
/* : Bool */;
3601 short int var6
/* : Bool */;
3603 self
->attrs
[COLOR_parser_nodes__ASignature___n_cpar
].val
= var_node
; /* _n_cpar on <self:ASignature> */
3605 if (var_node
== NULL
) {
3606 var1
= 0; /* is null */
3608 var1
= 1; /* arg is null and recv is not */
3611 { /* Inline kernel#Object#!= (var_node,var) on <var_node:nullable TCpar> */
3614 var5
= ((short int (*)(val
*, val
*))(var_node
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_node
, var_other
) /* == on <var_node:nullable TCpar(TCpar)>*/;
3626 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:nullable TCpar(TCpar)> */
3627 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:nullable TCpar(TCpar)> */
3635 /* method parser_prod#ASignature#n_cpar= for (self: Object, nullable TCpar) */
3636 void VIRTUAL_parser_prod__ASignature__n_cpar_61d(val
* self
, val
* p0
) {
3637 parser_prod__ASignature__n_cpar_61d(self
, p0
); /* Direct call parser_prod#ASignature#n_cpar= on <self:Object(ASignature)>*/
3640 /* method parser_prod#ASignature#n_type= for (self: ASignature, nullable AType) */
3641 void parser_prod__ASignature__n_type_61d(val
* self
, val
* p0
) {
3642 val
* var_node
/* var node: nullable AType */;
3643 val
* var
/* : null */;
3644 short int var1
/* : Bool */;
3645 short int var2
/* : Bool */;
3646 val
* var_other
/* var other: nullable Object */;
3647 short int var4
/* : Bool */;
3648 short int var5
/* : Bool */;
3649 short int var6
/* : Bool */;
3651 self
->attrs
[COLOR_parser_nodes__ASignature___n_type
].val
= var_node
; /* _n_type on <self:ASignature> */
3653 if (var_node
== NULL
) {
3654 var1
= 0; /* is null */
3656 var1
= 1; /* arg is null and recv is not */
3659 { /* Inline kernel#Object#!= (var_node,var) on <var_node:nullable AType> */
3662 var5
= ((short int (*)(val
*, val
*))(var_node
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_node
, var_other
) /* == on <var_node:nullable AType(AType)>*/;
3674 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:nullable AType(AType)> */
3675 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:nullable AType(AType)> */
3683 /* method parser_prod#ASignature#n_type= for (self: Object, nullable AType) */
3684 void VIRTUAL_parser_prod__ASignature__n_type_61d(val
* self
, val
* p0
) {
3685 parser_prod__ASignature__n_type_61d(self
, p0
); /* Direct call parser_prod#ASignature#n_type= on <self:Object(ASignature)>*/
3688 /* method parser_prod#ASignature#visit_all for (self: ASignature, Visitor) */
3689 void parser_prod__ASignature__visit_all(val
* self
, val
* p0
) {
3690 val
* var_v
/* var v: Visitor */;
3691 val
* var
/* : nullable TOpar */;
3692 val
* var1
/* : ANodes[AParam] */;
3693 val
* var3
/* : ANodes[AParam] */;
3694 val
* var4
/* : nullable TCpar */;
3695 val
* var5
/* : nullable AType */;
3697 var
= self
->attrs
[COLOR_parser_nodes__ASignature___n_opar
].val
; /* _n_opar on <self:ASignature> */
3699 parser_nodes__Visitor__enter_visit(var_v
, var
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
3702 { /* Inline parser_nodes#ASignature#n_params (self) on <self:ASignature> */
3703 var3
= self
->attrs
[COLOR_parser_nodes__ASignature___n_params
].val
; /* _n_params on <self:ASignature> */
3704 if (unlikely(var3
== NULL
)) {
3705 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_params");
3706 PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 1279);
3714 parser_nodes__ANodes__visit_all(var1
, var_v
); /* Direct call parser_nodes#ANodes#visit_all on <var1:ANodes[AParam]>*/
3716 var4
= self
->attrs
[COLOR_parser_nodes__ASignature___n_cpar
].val
; /* _n_cpar on <self:ASignature> */
3718 parser_nodes__Visitor__enter_visit(var_v
, var4
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
3720 var5
= self
->attrs
[COLOR_parser_nodes__ASignature___n_type
].val
; /* _n_type on <self:ASignature> */
3722 parser_nodes__Visitor__enter_visit(var_v
, var5
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
3726 /* method parser_prod#ASignature#visit_all for (self: Object, Visitor) */
3727 void VIRTUAL_parser_prod__ASignature__visit_all(val
* self
, val
* p0
) {
3728 parser_prod__ASignature__visit_all(self
, p0
); /* Direct call parser_prod#ASignature#visit_all on <self:Object(ASignature)>*/
3731 /* method parser_prod#AParam#init_aparam for (self: AParam, nullable TId, nullable AType, nullable TDotdotdot, nullable AAnnotations) */
3732 void parser_prod__AParam__init_aparam(val
* self
, val
* p0
, val
* p1
, val
* p2
, val
* p3
) {
3733 val
* var_n_id
/* var n_id: nullable TId */;
3734 val
* var_n_type
/* var n_type: nullable AType */;
3735 val
* var_n_dotdotdot
/* var n_dotdotdot: nullable TDotdotdot */;
3736 val
* var_n_annotations
/* var n_annotations: nullable AAnnotations */;
3737 val
* var
/* : null */;
3738 short int var2
/* : Bool */;
3739 short int var3
/* : Bool */;
3740 val
* var_other
/* var other: nullable Object */;
3741 short int var5
/* : Bool */;
3742 short int var6
/* : Bool */;
3743 short int var7
/* : Bool */;
3744 val
* var9
/* : null */;
3745 short int var10
/* : Bool */;
3746 short int var11
/* : Bool */;
3747 short int var13
/* : Bool */;
3748 short int var14
/* : Bool */;
3749 short int var15
/* : Bool */;
3750 val
* var17
/* : null */;
3751 short int var18
/* : Bool */;
3752 short int var19
/* : Bool */;
3753 short int var21
/* : Bool */;
3754 short int var22
/* : Bool */;
3755 short int var23
/* : Bool */;
3758 var_n_dotdotdot
= p2
;
3759 var_n_annotations
= p3
;
3760 if (unlikely(var_n_id
== NULL
)) {
3761 PRINT_ERROR("Runtime error: %s", "Cast failed");
3762 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1960);
3765 self
->attrs
[COLOR_parser_nodes__AParam___n_id
].val
= var_n_id
; /* _n_id on <self:AParam> */
3766 if (var_n_id
== NULL
) {
3767 PRINT_ERROR("Runtime error: %s", "Receiver is null");
3768 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1961);
3771 { /* Inline parser_nodes#ANode#parent= (var_n_id,self) on <var_n_id:nullable TId> */
3772 if (unlikely(var_n_id
== NULL
)) {
3773 PRINT_ERROR("Runtime error: %s", "Receiver is null");
3774 PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36);
3777 var_n_id
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_id:nullable TId> */
3781 self
->attrs
[COLOR_parser_nodes__AParam___n_type
].val
= var_n_type
; /* _n_type on <self:AParam> */
3783 if (var_n_type
== NULL
) {
3784 var2
= 0; /* is null */
3786 var2
= 1; /* arg is null and recv is not */
3789 { /* Inline kernel#Object#!= (var_n_type,var) on <var_n_type:nullable AType> */
3792 var6
= ((short int (*)(val
*, val
*))(var_n_type
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_n_type
, var_other
) /* == on <var_n_type:nullable AType(AType)>*/;
3804 { /* Inline parser_nodes#ANode#parent= (var_n_type,self) on <var_n_type:nullable AType(AType)> */
3805 var_n_type
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_type:nullable AType(AType)> */
3811 self
->attrs
[COLOR_parser_nodes__AParam___n_dotdotdot
].val
= var_n_dotdotdot
; /* _n_dotdotdot on <self:AParam> */
3813 if (var_n_dotdotdot
== NULL
) {
3814 var10
= 0; /* is null */
3816 var10
= 1; /* arg is null and recv is not */
3819 { /* Inline kernel#Object#!= (var_n_dotdotdot,var9) on <var_n_dotdotdot:nullable TDotdotdot> */
3822 var14
= ((short int (*)(val
*, val
*))(var_n_dotdotdot
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_n_dotdotdot
, var_other
) /* == on <var_n_dotdotdot:nullable TDotdotdot(TDotdotdot)>*/;
3828 RET_LABEL12
:(void)0;
3834 { /* Inline parser_nodes#ANode#parent= (var_n_dotdotdot,self) on <var_n_dotdotdot:nullable TDotdotdot(TDotdotdot)> */
3835 var_n_dotdotdot
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_dotdotdot:nullable TDotdotdot(TDotdotdot)> */
3836 RET_LABEL16
:(void)0;
3841 self
->attrs
[COLOR_parser_nodes__Prod___n_annotations
].val
= var_n_annotations
; /* _n_annotations on <self:AParam> */
3843 if (var_n_annotations
== NULL
) {
3844 var18
= 0; /* is null */
3846 var18
= 1; /* arg is null and recv is not */
3849 { /* Inline kernel#Object#!= (var_n_annotations,var17) on <var_n_annotations:nullable AAnnotations> */
3852 var22
= ((short int (*)(val
*, val
*))(var_n_annotations
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_n_annotations
, var_other
) /* == on <var_n_annotations:nullable AAnnotations(AAnnotations)>*/;
3858 RET_LABEL20
:(void)0;
3864 { /* Inline parser_nodes#ANode#parent= (var_n_annotations,self) on <var_n_annotations:nullable AAnnotations(AAnnotations)> */
3865 var_n_annotations
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_annotations:nullable AAnnotations(AAnnotations)> */
3866 RET_LABEL24
:(void)0;
3873 /* method parser_prod#AParam#init_aparam for (self: Object, nullable TId, nullable AType, nullable TDotdotdot, nullable AAnnotations) */
3874 void VIRTUAL_parser_prod__AParam__init_aparam(val
* self
, val
* p0
, val
* p1
, val
* p2
, val
* p3
) {
3875 parser_prod__AParam__init_aparam(self
, p0
, p1
, p2
, p3
); /* Direct call parser_prod#AParam#init_aparam on <self:Object(AParam)>*/
3878 /* method parser_prod#AParam#replace_child for (self: AParam, ANode, nullable ANode) */
3879 void parser_prod__AParam__replace_child(val
* self
, val
* p0
, val
* p1
) {
3880 val
* var_old_child
/* var old_child: ANode */;
3881 val
* var_new_child
/* var new_child: nullable ANode */;
3882 val
* var
/* : TId */;
3883 short int var1
/* : Bool */;
3884 short int var2
/* : Bool */;
3885 val
* var_other
/* var other: nullable Object */;
3886 short int var4
/* : Bool */;
3887 short int var6
/* : Bool */;
3888 short int var7
/* : Bool */;
3891 const char* var_class_name
;
3892 val
* var8
/* : nullable AType */;
3893 short int var9
/* : Bool */;
3894 short int var10
/* : Bool */;
3895 short int var12
/* : Bool */;
3896 short int var14
/* : Bool */;
3897 short int var15
/* : Bool */;
3900 const char* var_class_name18
;
3901 val
* var19
/* : nullable TDotdotdot */;
3902 short int var20
/* : Bool */;
3903 short int var21
/* : Bool */;
3904 short int var23
/* : Bool */;
3905 short int var25
/* : Bool */;
3906 short int var26
/* : Bool */;
3909 const char* var_class_name29
;
3910 val
* var30
/* : nullable AAnnotations */;
3911 short int var31
/* : Bool */;
3912 short int var32
/* : Bool */;
3913 short int var34
/* : Bool */;
3914 short int var36
/* : Bool */;
3915 short int var37
/* : Bool */;
3918 const char* var_class_name40
;
3921 var
= self
->attrs
[COLOR_parser_nodes__AParam___n_id
].val
; /* _n_id on <self:AParam> */
3922 if (unlikely(var
== NULL
)) {
3923 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id");
3924 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1972);
3928 { /* Inline kernel#Object#== (var,var_old_child) on <var:TId> */
3929 var_other
= var_old_child
;
3931 { /* Inline kernel#Object#is_same_instance (var,var_other) on <var:TId> */
3932 var6
= var
== var_other
;
3945 /* <var_new_child:nullable ANode> isa TId */
3946 cltype
= type_parser_nodes__TId
.color
;
3947 idtype
= type_parser_nodes__TId
.id
;
3948 if(var_new_child
== NULL
) {
3951 if(cltype
>= var_new_child
->type
->table_size
) {
3954 var7
= var_new_child
->type
->type_table
[cltype
] == idtype
;
3957 if (unlikely(!var7
)) {
3958 var_class_name
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
3959 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TId", var_class_name
);
3960 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1973);
3964 parser_prod__AParam__n_id_61d(self
, var_new_child
); /* Direct call parser_prod#AParam#n_id= on <self:AParam>*/
3969 var8
= self
->attrs
[COLOR_parser_nodes__AParam___n_type
].val
; /* _n_type on <self:AParam> */
3971 var9
= 0; /* <var_old_child:ANode> cannot be null */
3973 { /* Inline kernel#Object#== (var8,var_old_child) on <var8:nullable AType> */
3974 var_other
= var_old_child
;
3976 { /* Inline kernel#Object#is_same_instance (var8,var_other) on <var8:nullable AType(AType)> */
3977 var14
= var8
== var_other
;
3980 RET_LABEL13
:(void)0;
3985 RET_LABEL11
:(void)0;
3990 /* <var_new_child:nullable ANode> isa nullable AType */
3991 cltype16
= type_nullable_parser_nodes__AType
.color
;
3992 idtype17
= type_nullable_parser_nodes__AType
.id
;
3993 if(var_new_child
== NULL
) {
3996 if(cltype16
>= var_new_child
->type
->table_size
) {
3999 var15
= var_new_child
->type
->type_table
[cltype16
] == idtype17
;
4002 if (unlikely(!var15
)) {
4003 var_class_name18
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
4004 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable AType", var_class_name18
);
4005 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1977);
4009 parser_prod__AParam__n_type_61d(self
, var_new_child
); /* Direct call parser_prod#AParam#n_type= on <self:AParam>*/
4014 var19
= self
->attrs
[COLOR_parser_nodes__AParam___n_dotdotdot
].val
; /* _n_dotdotdot on <self:AParam> */
4015 if (var19
== NULL
) {
4016 var20
= 0; /* <var_old_child:ANode> cannot be null */
4018 { /* Inline kernel#Object#== (var19,var_old_child) on <var19:nullable TDotdotdot> */
4019 var_other
= var_old_child
;
4021 { /* Inline kernel#Object#is_same_instance (var19,var_other) on <var19:nullable TDotdotdot(TDotdotdot)> */
4022 var25
= var19
== var_other
;
4025 RET_LABEL24
:(void)0;
4030 RET_LABEL22
:(void)0;
4035 /* <var_new_child:nullable ANode> isa nullable TDotdotdot */
4036 cltype27
= type_nullable_parser_nodes__TDotdotdot
.color
;
4037 idtype28
= type_nullable_parser_nodes__TDotdotdot
.id
;
4038 if(var_new_child
== NULL
) {
4041 if(cltype27
>= var_new_child
->type
->table_size
) {
4044 var26
= var_new_child
->type
->type_table
[cltype27
] == idtype28
;
4047 if (unlikely(!var26
)) {
4048 var_class_name29
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
4049 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable TDotdotdot", var_class_name29
);
4050 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1981);
4054 parser_prod__AParam__n_dotdotdot_61d(self
, var_new_child
); /* Direct call parser_prod#AParam#n_dotdotdot= on <self:AParam>*/
4059 var30
= self
->attrs
[COLOR_parser_nodes__Prod___n_annotations
].val
; /* _n_annotations on <self:AParam> */
4060 if (var30
== NULL
) {
4061 var31
= 0; /* <var_old_child:ANode> cannot be null */
4063 { /* Inline kernel#Object#== (var30,var_old_child) on <var30:nullable AAnnotations> */
4064 var_other
= var_old_child
;
4066 { /* Inline kernel#Object#is_same_instance (var30,var_other) on <var30:nullable AAnnotations(AAnnotations)> */
4067 var36
= var30
== var_other
;
4070 RET_LABEL35
:(void)0;
4075 RET_LABEL33
:(void)0;
4080 /* <var_new_child:nullable ANode> isa nullable AAnnotations */
4081 cltype38
= type_nullable_parser_nodes__AAnnotations
.color
;
4082 idtype39
= type_nullable_parser_nodes__AAnnotations
.id
;
4083 if(var_new_child
== NULL
) {
4086 if(cltype38
>= var_new_child
->type
->table_size
) {
4089 var37
= var_new_child
->type
->type_table
[cltype38
] == idtype39
;
4092 if (unlikely(!var37
)) {
4093 var_class_name40
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
4094 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable AAnnotations", var_class_name40
);
4095 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 1985);
4099 parser_prod__AParam__n_annotations_61d(self
, var_new_child
); /* Direct call parser_prod#AParam#n_annotations= on <self:AParam>*/
4106 /* method parser_prod#AParam#replace_child for (self: Object, ANode, nullable ANode) */
4107 void VIRTUAL_parser_prod__AParam__replace_child(val
* self
, val
* p0
, val
* p1
) {
4108 parser_prod__AParam__replace_child(self
, p0
, p1
); /* Direct call parser_prod#AParam#replace_child on <self:Object(AParam)>*/
4111 /* method parser_prod#AParam#n_id= for (self: AParam, TId) */
4112 void parser_prod__AParam__n_id_61d(val
* self
, val
* p0
) {
4113 val
* var_node
/* var node: TId */;
4115 self
->attrs
[COLOR_parser_nodes__AParam___n_id
].val
= var_node
; /* _n_id on <self:AParam> */
4117 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:TId> */
4118 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:TId> */
4124 /* method parser_prod#AParam#n_id= for (self: Object, TId) */
4125 void VIRTUAL_parser_prod__AParam__n_id_61d(val
* self
, val
* p0
) {
4126 parser_prod__AParam__n_id_61d(self
, p0
); /* Direct call parser_prod#AParam#n_id= on <self:Object(AParam)>*/
4129 /* method parser_prod#AParam#n_type= for (self: AParam, nullable AType) */
4130 void parser_prod__AParam__n_type_61d(val
* self
, val
* p0
) {
4131 val
* var_node
/* var node: nullable AType */;
4132 val
* var
/* : null */;
4133 short int var1
/* : Bool */;
4134 short int var2
/* : Bool */;
4135 val
* var_other
/* var other: nullable Object */;
4136 short int var4
/* : Bool */;
4137 short int var5
/* : Bool */;
4138 short int var6
/* : Bool */;
4140 self
->attrs
[COLOR_parser_nodes__AParam___n_type
].val
= var_node
; /* _n_type on <self:AParam> */
4142 if (var_node
== NULL
) {
4143 var1
= 0; /* is null */
4145 var1
= 1; /* arg is null and recv is not */
4148 { /* Inline kernel#Object#!= (var_node,var) on <var_node:nullable AType> */
4151 var5
= ((short int (*)(val
*, val
*))(var_node
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_node
, var_other
) /* == on <var_node:nullable AType(AType)>*/;
4163 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:nullable AType(AType)> */
4164 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:nullable AType(AType)> */
4172 /* method parser_prod#AParam#n_type= for (self: Object, nullable AType) */
4173 void VIRTUAL_parser_prod__AParam__n_type_61d(val
* self
, val
* p0
) {
4174 parser_prod__AParam__n_type_61d(self
, p0
); /* Direct call parser_prod#AParam#n_type= on <self:Object(AParam)>*/
4177 /* method parser_prod#AParam#n_dotdotdot= for (self: AParam, nullable TDotdotdot) */
4178 void parser_prod__AParam__n_dotdotdot_61d(val
* self
, val
* p0
) {
4179 val
* var_node
/* var node: nullable TDotdotdot */;
4180 val
* var
/* : null */;
4181 short int var1
/* : Bool */;
4182 short int var2
/* : Bool */;
4183 val
* var_other
/* var other: nullable Object */;
4184 short int var4
/* : Bool */;
4185 short int var5
/* : Bool */;
4186 short int var6
/* : Bool */;
4188 self
->attrs
[COLOR_parser_nodes__AParam___n_dotdotdot
].val
= var_node
; /* _n_dotdotdot on <self:AParam> */
4190 if (var_node
== NULL
) {
4191 var1
= 0; /* is null */
4193 var1
= 1; /* arg is null and recv is not */
4196 { /* Inline kernel#Object#!= (var_node,var) on <var_node:nullable TDotdotdot> */
4199 var5
= ((short int (*)(val
*, val
*))(var_node
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_node
, var_other
) /* == on <var_node:nullable TDotdotdot(TDotdotdot)>*/;
4211 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:nullable TDotdotdot(TDotdotdot)> */
4212 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:nullable TDotdotdot(TDotdotdot)> */
4220 /* method parser_prod#AParam#n_dotdotdot= for (self: Object, nullable TDotdotdot) */
4221 void VIRTUAL_parser_prod__AParam__n_dotdotdot_61d(val
* self
, val
* p0
) {
4222 parser_prod__AParam__n_dotdotdot_61d(self
, p0
); /* Direct call parser_prod#AParam#n_dotdotdot= on <self:Object(AParam)>*/
4225 /* method parser_prod#AParam#n_annotations= for (self: AParam, nullable AAnnotations) */
4226 void parser_prod__AParam__n_annotations_61d(val
* self
, val
* p0
) {
4227 val
* var_node
/* var node: nullable AAnnotations */;
4228 val
* var
/* : null */;
4229 short int var1
/* : Bool */;
4230 short int var2
/* : Bool */;
4231 val
* var_other
/* var other: nullable Object */;
4232 short int var4
/* : Bool */;
4233 short int var5
/* : Bool */;
4234 short int var6
/* : Bool */;
4236 self
->attrs
[COLOR_parser_nodes__Prod___n_annotations
].val
= var_node
; /* _n_annotations on <self:AParam> */
4238 if (var_node
== NULL
) {
4239 var1
= 0; /* is null */
4241 var1
= 1; /* arg is null and recv is not */
4244 { /* Inline kernel#Object#!= (var_node,var) on <var_node:nullable AAnnotations> */
4247 var5
= ((short int (*)(val
*, val
*))(var_node
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_node
, var_other
) /* == on <var_node:nullable AAnnotations(AAnnotations)>*/;
4259 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:nullable AAnnotations(AAnnotations)> */
4260 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:nullable AAnnotations(AAnnotations)> */
4268 /* method parser_prod#AParam#n_annotations= for (self: Object, nullable AAnnotations) */
4269 void VIRTUAL_parser_prod__AParam__n_annotations_61d(val
* self
, val
* p0
) {
4270 parser_prod__AParam__n_annotations_61d(self
, p0
); /* Direct call parser_prod#AParam#n_annotations= on <self:Object(AParam)>*/
4273 /* method parser_prod#AParam#visit_all for (self: AParam, Visitor) */
4274 void parser_prod__AParam__visit_all(val
* self
, val
* p0
) {
4275 val
* var_v
/* var v: Visitor */;
4276 val
* var
/* : TId */;
4277 val
* var1
/* : nullable AType */;
4278 val
* var2
/* : nullable TDotdotdot */;
4279 val
* var3
/* : nullable AAnnotations */;
4281 var
= self
->attrs
[COLOR_parser_nodes__AParam___n_id
].val
; /* _n_id on <self:AParam> */
4282 if (unlikely(var
== NULL
)) {
4283 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id");
4284 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2014);
4288 parser_nodes__Visitor__enter_visit(var_v
, var
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
4290 var1
= self
->attrs
[COLOR_parser_nodes__AParam___n_type
].val
; /* _n_type on <self:AParam> */
4292 parser_nodes__Visitor__enter_visit(var_v
, var1
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
4294 var2
= self
->attrs
[COLOR_parser_nodes__AParam___n_dotdotdot
].val
; /* _n_dotdotdot on <self:AParam> */
4296 parser_nodes__Visitor__enter_visit(var_v
, var2
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
4298 var3
= self
->attrs
[COLOR_parser_nodes__Prod___n_annotations
].val
; /* _n_annotations on <self:AParam> */
4300 parser_nodes__Visitor__enter_visit(var_v
, var3
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
4304 /* method parser_prod#AParam#visit_all for (self: Object, Visitor) */
4305 void VIRTUAL_parser_prod__AParam__visit_all(val
* self
, val
* p0
) {
4306 parser_prod__AParam__visit_all(self
, p0
); /* Direct call parser_prod#AParam#visit_all on <self:Object(AParam)>*/
4309 /* method parser_prod#AType#init_atype for (self: AType, nullable TKwnullable, nullable TClassid, Collection[Object], nullable AAnnotations) */
4310 void parser_prod__AType__init_atype(val
* self
, val
* p0
, val
* p1
, val
* p2
, val
* p3
) {
4311 val
* var_n_kwnullable
/* var n_kwnullable: nullable TKwnullable */;
4312 val
* var_n_id
/* var n_id: nullable TClassid */;
4313 val
* var_n_types
/* var n_types: Collection[Object] */;
4314 val
* var_n_annotations
/* var n_annotations: nullable AAnnotations */;
4315 val
* var
/* : null */;
4316 short int var1
/* : Bool */;
4317 short int var2
/* : Bool */;
4318 val
* var_other
/* var other: nullable Object */;
4319 short int var4
/* : Bool */;
4320 short int var5
/* : Bool */;
4321 short int var6
/* : Bool */;
4322 val
* var9
/* : ANodes[AType] */;
4323 val
* var11
/* : ANodes[AType] */;
4324 val
* var12
/* : null */;
4325 short int var13
/* : Bool */;
4326 short int var14
/* : Bool */;
4327 short int var16
/* : Bool */;
4328 short int var17
/* : Bool */;
4329 short int var18
/* : Bool */;
4330 var_n_kwnullable
= p0
;
4333 var_n_annotations
= p3
;
4334 self
->attrs
[COLOR_parser_nodes__AType___n_kwnullable
].val
= var_n_kwnullable
; /* _n_kwnullable on <self:AType> */
4336 if (var_n_kwnullable
== NULL
) {
4337 var1
= 0; /* is null */
4339 var1
= 1; /* arg is null and recv is not */
4342 { /* Inline kernel#Object#!= (var_n_kwnullable,var) on <var_n_kwnullable:nullable TKwnullable> */
4345 var5
= ((short int (*)(val
*, val
*))(var_n_kwnullable
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_n_kwnullable
, var_other
) /* == on <var_n_kwnullable:nullable TKwnullable(TKwnullable)>*/;
4357 { /* Inline parser_nodes#ANode#parent= (var_n_kwnullable,self) on <var_n_kwnullable:nullable TKwnullable(TKwnullable)> */
4358 var_n_kwnullable
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_kwnullable:nullable TKwnullable(TKwnullable)> */
4364 if (unlikely(var_n_id
== NULL
)) {
4365 PRINT_ERROR("Runtime error: %s", "Cast failed");
4366 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2030);
4369 self
->attrs
[COLOR_parser_nodes__AType___n_id
].val
= var_n_id
; /* _n_id on <self:AType> */
4370 if (var_n_id
== NULL
) {
4371 PRINT_ERROR("Runtime error: %s", "Receiver is null");
4372 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2031);
4375 { /* Inline parser_nodes#ANode#parent= (var_n_id,self) on <var_n_id:nullable TClassid> */
4376 if (unlikely(var_n_id
== NULL
)) {
4377 PRINT_ERROR("Runtime error: %s", "Receiver is null");
4378 PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36);
4381 var_n_id
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_id:nullable TClassid> */
4386 { /* Inline parser_nodes#AType#n_types (self) on <self:AType> */
4387 var11
= self
->attrs
[COLOR_parser_nodes__AType___n_types
].val
; /* _n_types on <self:AType> */
4388 if (unlikely(var11
== NULL
)) {
4389 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_types");
4390 PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 1300);
4394 RET_LABEL10
:(void)0;
4398 parser_nodes__ANodes__unsafe_add_all(var9
, var_n_types
); /* Direct call parser_nodes#ANodes#unsafe_add_all on <var9:ANodes[AType]>*/
4400 self
->attrs
[COLOR_parser_nodes__Prod___n_annotations
].val
= var_n_annotations
; /* _n_annotations on <self:AType> */
4402 if (var_n_annotations
== NULL
) {
4403 var13
= 0; /* is null */
4405 var13
= 1; /* arg is null and recv is not */
4408 { /* Inline kernel#Object#!= (var_n_annotations,var12) on <var_n_annotations:nullable AAnnotations> */
4411 var17
= ((short int (*)(val
*, val
*))(var_n_annotations
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_n_annotations
, var_other
) /* == on <var_n_annotations:nullable AAnnotations(AAnnotations)>*/;
4417 RET_LABEL15
:(void)0;
4423 { /* Inline parser_nodes#ANode#parent= (var_n_annotations,self) on <var_n_annotations:nullable AAnnotations(AAnnotations)> */
4424 var_n_annotations
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_annotations:nullable AAnnotations(AAnnotations)> */
4425 RET_LABEL19
:(void)0;
4432 /* method parser_prod#AType#init_atype for (self: Object, nullable TKwnullable, nullable TClassid, Collection[Object], nullable AAnnotations) */
4433 void VIRTUAL_parser_prod__AType__init_atype(val
* self
, val
* p0
, val
* p1
, val
* p2
, val
* p3
) {
4434 parser_prod__AType__init_atype(self
, p0
, p1
, p2
, p3
); /* Direct call parser_prod#AType#init_atype on <self:Object(AType)>*/
4437 /* method parser_prod#AType#replace_child for (self: AType, ANode, nullable ANode) */
4438 void parser_prod__AType__replace_child(val
* self
, val
* p0
, val
* p1
) {
4439 val
* var_old_child
/* var old_child: ANode */;
4440 val
* var_new_child
/* var new_child: nullable ANode */;
4441 val
* var
/* : nullable TKwnullable */;
4442 short int var1
/* : Bool */;
4443 short int var2
/* : Bool */;
4444 val
* var_other
/* var other: nullable Object */;
4445 short int var4
/* : Bool */;
4446 short int var6
/* : Bool */;
4447 short int var7
/* : Bool */;
4450 const char* var_class_name
;
4451 val
* var8
/* : TClassid */;
4452 short int var9
/* : Bool */;
4453 short int var10
/* : Bool */;
4454 short int var12
/* : Bool */;
4455 short int var14
/* : Bool */;
4456 short int var15
/* : Bool */;
4459 const char* var_class_name18
;
4460 val
* var19
/* : ANodes[AType] */;
4461 val
* var21
/* : ANodes[AType] */;
4462 short int var22
/* : Bool */;
4463 val
* var23
/* : nullable AAnnotations */;
4464 short int var24
/* : Bool */;
4465 short int var25
/* : Bool */;
4466 short int var27
/* : Bool */;
4467 short int var29
/* : Bool */;
4468 short int var30
/* : Bool */;
4471 const char* var_class_name33
;
4474 var
= self
->attrs
[COLOR_parser_nodes__AType___n_kwnullable
].val
; /* _n_kwnullable on <self:AType> */
4476 var1
= 0; /* <var_old_child:ANode> cannot be null */
4478 { /* Inline kernel#Object#== (var,var_old_child) on <var:nullable TKwnullable> */
4479 var_other
= var_old_child
;
4481 { /* Inline kernel#Object#is_same_instance (var,var_other) on <var:nullable TKwnullable(TKwnullable)> */
4482 var6
= var
== var_other
;
4495 /* <var_new_child:nullable ANode> isa nullable TKwnullable */
4496 cltype
= type_nullable_parser_nodes__TKwnullable
.color
;
4497 idtype
= type_nullable_parser_nodes__TKwnullable
.id
;
4498 if(var_new_child
== NULL
) {
4501 if(cltype
>= var_new_child
->type
->table_size
) {
4504 var7
= var_new_child
->type
->type_table
[cltype
] == idtype
;
4507 if (unlikely(!var7
)) {
4508 var_class_name
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
4509 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable TKwnullable", var_class_name
);
4510 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2040);
4514 parser_prod__AType__n_kwnullable_61d(self
, var_new_child
); /* Direct call parser_prod#AType#n_kwnullable= on <self:AType>*/
4519 var8
= self
->attrs
[COLOR_parser_nodes__AType___n_id
].val
; /* _n_id on <self:AType> */
4520 if (unlikely(var8
== NULL
)) {
4521 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id");
4522 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2043);
4526 { /* Inline kernel#Object#== (var8,var_old_child) on <var8:TClassid> */
4527 var_other
= var_old_child
;
4529 { /* Inline kernel#Object#is_same_instance (var8,var_other) on <var8:TClassid> */
4530 var14
= var8
== var_other
;
4533 RET_LABEL13
:(void)0;
4538 RET_LABEL11
:(void)0;
4543 /* <var_new_child:nullable ANode> isa TClassid */
4544 cltype16
= type_parser_nodes__TClassid
.color
;
4545 idtype17
= type_parser_nodes__TClassid
.id
;
4546 if(var_new_child
== NULL
) {
4549 if(cltype16
>= var_new_child
->type
->table_size
) {
4552 var15
= var_new_child
->type
->type_table
[cltype16
] == idtype17
;
4555 if (unlikely(!var15
)) {
4556 var_class_name18
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
4557 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TClassid", var_class_name18
);
4558 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2044);
4562 parser_prod__AType__n_id_61d(self
, var_new_child
); /* Direct call parser_prod#AType#n_id= on <self:AType>*/
4568 { /* Inline parser_nodes#AType#n_types (self) on <self:AType> */
4569 var21
= self
->attrs
[COLOR_parser_nodes__AType___n_types
].val
; /* _n_types on <self:AType> */
4570 if (unlikely(var21
== NULL
)) {
4571 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_types");
4572 PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 1300);
4576 RET_LABEL20
:(void)0;
4580 var22
= parser_nodes__ANodes__replace_child(var19
, var_old_child
, var_new_child
);
4586 var23
= self
->attrs
[COLOR_parser_nodes__Prod___n_annotations
].val
; /* _n_annotations on <self:AType> */
4587 if (var23
== NULL
) {
4588 var24
= 0; /* <var_old_child:ANode> cannot be null */
4590 { /* Inline kernel#Object#== (var23,var_old_child) on <var23:nullable AAnnotations> */
4591 var_other
= var_old_child
;
4593 { /* Inline kernel#Object#is_same_instance (var23,var_other) on <var23:nullable AAnnotations(AAnnotations)> */
4594 var29
= var23
== var_other
;
4597 RET_LABEL28
:(void)0;
4602 RET_LABEL26
:(void)0;
4607 /* <var_new_child:nullable ANode> isa nullable AAnnotations */
4608 cltype31
= type_nullable_parser_nodes__AAnnotations
.color
;
4609 idtype32
= type_nullable_parser_nodes__AAnnotations
.id
;
4610 if(var_new_child
== NULL
) {
4613 if(cltype31
>= var_new_child
->type
->table_size
) {
4616 var30
= var_new_child
->type
->type_table
[cltype31
] == idtype32
;
4619 if (unlikely(!var30
)) {
4620 var_class_name33
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
4621 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable AAnnotations", var_class_name33
);
4622 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2049);
4626 parser_prod__AType__n_annotations_61d(self
, var_new_child
); /* Direct call parser_prod#AType#n_annotations= on <self:AType>*/
4633 /* method parser_prod#AType#replace_child for (self: Object, ANode, nullable ANode) */
4634 void VIRTUAL_parser_prod__AType__replace_child(val
* self
, val
* p0
, val
* p1
) {
4635 parser_prod__AType__replace_child(self
, p0
, p1
); /* Direct call parser_prod#AType#replace_child on <self:Object(AType)>*/
4638 /* method parser_prod#AType#n_kwnullable= for (self: AType, nullable TKwnullable) */
4639 void parser_prod__AType__n_kwnullable_61d(val
* self
, val
* p0
) {
4640 val
* var_node
/* var node: nullable TKwnullable */;
4641 val
* var
/* : null */;
4642 short int var1
/* : Bool */;
4643 short int var2
/* : Bool */;
4644 val
* var_other
/* var other: nullable Object */;
4645 short int var4
/* : Bool */;
4646 short int var5
/* : Bool */;
4647 short int var6
/* : Bool */;
4649 self
->attrs
[COLOR_parser_nodes__AType___n_kwnullable
].val
= var_node
; /* _n_kwnullable on <self:AType> */
4651 if (var_node
== NULL
) {
4652 var1
= 0; /* is null */
4654 var1
= 1; /* arg is null and recv is not */
4657 { /* Inline kernel#Object#!= (var_node,var) on <var_node:nullable TKwnullable> */
4660 var5
= ((short int (*)(val
*, val
*))(var_node
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_node
, var_other
) /* == on <var_node:nullable TKwnullable(TKwnullable)>*/;
4672 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:nullable TKwnullable(TKwnullable)> */
4673 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:nullable TKwnullable(TKwnullable)> */
4681 /* method parser_prod#AType#n_kwnullable= for (self: Object, nullable TKwnullable) */
4682 void VIRTUAL_parser_prod__AType__n_kwnullable_61d(val
* self
, val
* p0
) {
4683 parser_prod__AType__n_kwnullable_61d(self
, p0
); /* Direct call parser_prod#AType#n_kwnullable= on <self:Object(AType)>*/
4686 /* method parser_prod#AType#n_id= for (self: AType, TClassid) */
4687 void parser_prod__AType__n_id_61d(val
* self
, val
* p0
) {
4688 val
* var_node
/* var node: TClassid */;
4690 self
->attrs
[COLOR_parser_nodes__AType___n_id
].val
= var_node
; /* _n_id on <self:AType> */
4692 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:TClassid> */
4693 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:TClassid> */
4699 /* method parser_prod#AType#n_id= for (self: Object, TClassid) */
4700 void VIRTUAL_parser_prod__AType__n_id_61d(val
* self
, val
* p0
) {
4701 parser_prod__AType__n_id_61d(self
, p0
); /* Direct call parser_prod#AType#n_id= on <self:Object(AType)>*/
4704 /* method parser_prod#AType#n_annotations= for (self: AType, nullable AAnnotations) */
4705 void parser_prod__AType__n_annotations_61d(val
* self
, val
* p0
) {
4706 val
* var_node
/* var node: nullable AAnnotations */;
4707 val
* var
/* : null */;
4708 short int var1
/* : Bool */;
4709 short int var2
/* : Bool */;
4710 val
* var_other
/* var other: nullable Object */;
4711 short int var4
/* : Bool */;
4712 short int var5
/* : Bool */;
4713 short int var6
/* : Bool */;
4715 self
->attrs
[COLOR_parser_nodes__Prod___n_annotations
].val
= var_node
; /* _n_annotations on <self:AType> */
4717 if (var_node
== NULL
) {
4718 var1
= 0; /* is null */
4720 var1
= 1; /* arg is null and recv is not */
4723 { /* Inline kernel#Object#!= (var_node,var) on <var_node:nullable AAnnotations> */
4726 var5
= ((short int (*)(val
*, val
*))(var_node
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_node
, var_other
) /* == on <var_node:nullable AAnnotations(AAnnotations)>*/;
4738 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:nullable AAnnotations(AAnnotations)> */
4739 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:nullable AAnnotations(AAnnotations)> */
4747 /* method parser_prod#AType#n_annotations= for (self: Object, nullable AAnnotations) */
4748 void VIRTUAL_parser_prod__AType__n_annotations_61d(val
* self
, val
* p0
) {
4749 parser_prod__AType__n_annotations_61d(self
, p0
); /* Direct call parser_prod#AType#n_annotations= on <self:Object(AType)>*/
4752 /* method parser_prod#AType#visit_all for (self: AType, Visitor) */
4753 void parser_prod__AType__visit_all(val
* self
, val
* p0
) {
4754 val
* var_v
/* var v: Visitor */;
4755 val
* var
/* : nullable TKwnullable */;
4756 val
* var1
/* : TClassid */;
4757 val
* var2
/* : ANodes[AType] */;
4758 val
* var4
/* : ANodes[AType] */;
4759 val
* var5
/* : nullable AAnnotations */;
4761 var
= self
->attrs
[COLOR_parser_nodes__AType___n_kwnullable
].val
; /* _n_kwnullable on <self:AType> */
4763 parser_nodes__Visitor__enter_visit(var_v
, var
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
4765 var1
= self
->attrs
[COLOR_parser_nodes__AType___n_id
].val
; /* _n_id on <self:AType> */
4766 if (unlikely(var1
== NULL
)) {
4767 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id");
4768 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2074);
4772 parser_nodes__Visitor__enter_visit(var_v
, var1
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
4775 { /* Inline parser_nodes#AType#n_types (self) on <self:AType> */
4776 var4
= self
->attrs
[COLOR_parser_nodes__AType___n_types
].val
; /* _n_types on <self:AType> */
4777 if (unlikely(var4
== NULL
)) {
4778 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_types");
4779 PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 1300);
4787 parser_nodes__ANodes__visit_all(var2
, var_v
); /* Direct call parser_nodes#ANodes#visit_all on <var2:ANodes[AType]>*/
4789 var5
= self
->attrs
[COLOR_parser_nodes__Prod___n_annotations
].val
; /* _n_annotations on <self:AType> */
4791 parser_nodes__Visitor__enter_visit(var_v
, var5
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
4795 /* method parser_prod#AType#visit_all for (self: Object, Visitor) */
4796 void VIRTUAL_parser_prod__AType__visit_all(val
* self
, val
* p0
) {
4797 parser_prod__AType__visit_all(self
, p0
); /* Direct call parser_prod#AType#visit_all on <self:Object(AType)>*/
4800 /* method parser_prod#ALabel#init_alabel for (self: ALabel, nullable TKwlabel, nullable TId) */
4801 void parser_prod__ALabel__init_alabel(val
* self
, val
* p0
, val
* p1
) {
4802 val
* var_n_kwlabel
/* var n_kwlabel: nullable TKwlabel */;
4803 val
* var_n_id
/* var n_id: nullable TId */;
4804 val
* var
/* : null */;
4805 short int var2
/* : Bool */;
4806 short int var3
/* : Bool */;
4807 val
* var_other
/* var other: nullable Object */;
4808 short int var5
/* : Bool */;
4809 short int var6
/* : Bool */;
4810 short int var7
/* : Bool */;
4813 if (unlikely(var_n_kwlabel
== NULL
)) {
4814 PRINT_ERROR("Runtime error: %s", "Cast failed");
4815 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2085);
4818 self
->attrs
[COLOR_parser_nodes__ALabel___n_kwlabel
].val
= var_n_kwlabel
; /* _n_kwlabel on <self:ALabel> */
4819 if (var_n_kwlabel
== NULL
) {
4820 PRINT_ERROR("Runtime error: %s", "Receiver is null");
4821 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2086);
4824 { /* Inline parser_nodes#ANode#parent= (var_n_kwlabel,self) on <var_n_kwlabel:nullable TKwlabel> */
4825 if (unlikely(var_n_kwlabel
== NULL
)) {
4826 PRINT_ERROR("Runtime error: %s", "Receiver is null");
4827 PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36);
4830 var_n_kwlabel
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_kwlabel:nullable TKwlabel> */
4834 self
->attrs
[COLOR_parser_nodes__ALabel___n_id
].val
= var_n_id
; /* _n_id on <self:ALabel> */
4836 if (var_n_id
== NULL
) {
4837 var2
= 0; /* is null */
4839 var2
= 1; /* arg is null and recv is not */
4842 { /* Inline kernel#Object#!= (var_n_id,var) on <var_n_id:nullable TId> */
4845 var6
= ((short int (*)(val
*, val
*))(var_n_id
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_n_id
, var_other
) /* == on <var_n_id:nullable TId(TId)>*/;
4857 { /* Inline parser_nodes#ANode#parent= (var_n_id,self) on <var_n_id:nullable TId(TId)> */
4858 var_n_id
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_id:nullable TId(TId)> */
4866 /* method parser_prod#ALabel#init_alabel for (self: Object, nullable TKwlabel, nullable TId) */
4867 void VIRTUAL_parser_prod__ALabel__init_alabel(val
* self
, val
* p0
, val
* p1
) {
4868 parser_prod__ALabel__init_alabel(self
, p0
, p1
); /* Direct call parser_prod#ALabel#init_alabel on <self:Object(ALabel)>*/
4871 /* method parser_prod#ALabel#replace_child for (self: ALabel, ANode, nullable ANode) */
4872 void parser_prod__ALabel__replace_child(val
* self
, val
* p0
, val
* p1
) {
4873 val
* var_old_child
/* var old_child: ANode */;
4874 val
* var_new_child
/* var new_child: nullable ANode */;
4875 val
* var
/* : TKwlabel */;
4876 short int var1
/* : Bool */;
4877 short int var2
/* : Bool */;
4878 val
* var_other
/* var other: nullable Object */;
4879 short int var4
/* : Bool */;
4880 short int var6
/* : Bool */;
4881 short int var7
/* : Bool */;
4884 const char* var_class_name
;
4885 val
* var8
/* : nullable TId */;
4886 short int var9
/* : Bool */;
4887 short int var10
/* : Bool */;
4888 short int var12
/* : Bool */;
4889 short int var14
/* : Bool */;
4890 short int var15
/* : Bool */;
4893 const char* var_class_name18
;
4896 var
= self
->attrs
[COLOR_parser_nodes__ALabel___n_kwlabel
].val
; /* _n_kwlabel on <self:ALabel> */
4897 if (unlikely(var
== NULL
)) {
4898 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwlabel");
4899 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2093);
4903 { /* Inline kernel#Object#== (var,var_old_child) on <var:TKwlabel> */
4904 var_other
= var_old_child
;
4906 { /* Inline kernel#Object#is_same_instance (var,var_other) on <var:TKwlabel> */
4907 var6
= var
== var_other
;
4920 /* <var_new_child:nullable ANode> isa TKwlabel */
4921 cltype
= type_parser_nodes__TKwlabel
.color
;
4922 idtype
= type_parser_nodes__TKwlabel
.id
;
4923 if(var_new_child
== NULL
) {
4926 if(cltype
>= var_new_child
->type
->table_size
) {
4929 var7
= var_new_child
->type
->type_table
[cltype
] == idtype
;
4932 if (unlikely(!var7
)) {
4933 var_class_name
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
4934 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwlabel", var_class_name
);
4935 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2094);
4939 parser_prod__ALabel__n_kwlabel_61d(self
, var_new_child
); /* Direct call parser_prod#ALabel#n_kwlabel= on <self:ALabel>*/
4944 var8
= self
->attrs
[COLOR_parser_nodes__ALabel___n_id
].val
; /* _n_id on <self:ALabel> */
4946 var9
= 0; /* <var_old_child:ANode> cannot be null */
4948 { /* Inline kernel#Object#== (var8,var_old_child) on <var8:nullable TId> */
4949 var_other
= var_old_child
;
4951 { /* Inline kernel#Object#is_same_instance (var8,var_other) on <var8:nullable TId(TId)> */
4952 var14
= var8
== var_other
;
4955 RET_LABEL13
:(void)0;
4960 RET_LABEL11
:(void)0;
4965 /* <var_new_child:nullable ANode> isa nullable TId */
4966 cltype16
= type_nullable_parser_nodes__TId
.color
;
4967 idtype17
= type_nullable_parser_nodes__TId
.id
;
4968 if(var_new_child
== NULL
) {
4971 if(cltype16
>= var_new_child
->type
->table_size
) {
4974 var15
= var_new_child
->type
->type_table
[cltype16
] == idtype17
;
4977 if (unlikely(!var15
)) {
4978 var_class_name18
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
4979 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable TId", var_class_name18
);
4980 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2098);
4984 parser_prod__ALabel__n_id_61d(self
, var_new_child
); /* Direct call parser_prod#ALabel#n_id= on <self:ALabel>*/
4991 /* method parser_prod#ALabel#replace_child for (self: Object, ANode, nullable ANode) */
4992 void VIRTUAL_parser_prod__ALabel__replace_child(val
* self
, val
* p0
, val
* p1
) {
4993 parser_prod__ALabel__replace_child(self
, p0
, p1
); /* Direct call parser_prod#ALabel#replace_child on <self:Object(ALabel)>*/
4996 /* method parser_prod#ALabel#n_kwlabel= for (self: ALabel, TKwlabel) */
4997 void parser_prod__ALabel__n_kwlabel_61d(val
* self
, val
* p0
) {
4998 val
* var_node
/* var node: TKwlabel */;
5000 self
->attrs
[COLOR_parser_nodes__ALabel___n_kwlabel
].val
= var_node
; /* _n_kwlabel on <self:ALabel> */
5002 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:TKwlabel> */
5003 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:TKwlabel> */
5009 /* method parser_prod#ALabel#n_kwlabel= for (self: Object, TKwlabel) */
5010 void VIRTUAL_parser_prod__ALabel__n_kwlabel_61d(val
* self
, val
* p0
) {
5011 parser_prod__ALabel__n_kwlabel_61d(self
, p0
); /* Direct call parser_prod#ALabel#n_kwlabel= on <self:Object(ALabel)>*/
5014 /* method parser_prod#ALabel#n_id= for (self: ALabel, nullable TId) */
5015 void parser_prod__ALabel__n_id_61d(val
* self
, val
* p0
) {
5016 val
* var_node
/* var node: nullable TId */;
5017 val
* var
/* : null */;
5018 short int var1
/* : Bool */;
5019 short int var2
/* : Bool */;
5020 val
* var_other
/* var other: nullable Object */;
5021 short int var4
/* : Bool */;
5022 short int var5
/* : Bool */;
5023 short int var6
/* : Bool */;
5025 self
->attrs
[COLOR_parser_nodes__ALabel___n_id
].val
= var_node
; /* _n_id on <self:ALabel> */
5027 if (var_node
== NULL
) {
5028 var1
= 0; /* is null */
5030 var1
= 1; /* arg is null and recv is not */
5033 { /* Inline kernel#Object#!= (var_node,var) on <var_node:nullable TId> */
5036 var5
= ((short int (*)(val
*, val
*))(var_node
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_node
, var_other
) /* == on <var_node:nullable TId(TId)>*/;
5048 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:nullable TId(TId)> */
5049 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:nullable TId(TId)> */
5057 /* method parser_prod#ALabel#n_id= for (self: Object, nullable TId) */
5058 void VIRTUAL_parser_prod__ALabel__n_id_61d(val
* self
, val
* p0
) {
5059 parser_prod__ALabel__n_id_61d(self
, p0
); /* Direct call parser_prod#ALabel#n_id= on <self:Object(ALabel)>*/
5062 /* method parser_prod#ALabel#visit_all for (self: ALabel, Visitor) */
5063 void parser_prod__ALabel__visit_all(val
* self
, val
* p0
) {
5064 val
* var_v
/* var v: Visitor */;
5065 val
* var
/* : TKwlabel */;
5066 val
* var1
/* : nullable TId */;
5068 var
= self
->attrs
[COLOR_parser_nodes__ALabel___n_kwlabel
].val
; /* _n_kwlabel on <self:ALabel> */
5069 if (unlikely(var
== NULL
)) {
5070 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwlabel");
5071 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2117);
5075 parser_nodes__Visitor__enter_visit(var_v
, var
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
5077 var1
= self
->attrs
[COLOR_parser_nodes__ALabel___n_id
].val
; /* _n_id on <self:ALabel> */
5079 parser_nodes__Visitor__enter_visit(var_v
, var1
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
5083 /* method parser_prod#ALabel#visit_all for (self: Object, Visitor) */
5084 void VIRTUAL_parser_prod__ALabel__visit_all(val
* self
, val
* p0
) {
5085 parser_prod__ALabel__visit_all(self
, p0
); /* Direct call parser_prod#ALabel#visit_all on <self:Object(ALabel)>*/
5088 /* method parser_prod#ABlockExpr#init_ablockexpr for (self: ABlockExpr, Collection[Object], nullable TKwend) */
5089 void parser_prod__ABlockExpr__init_ablockexpr(val
* self
, val
* p0
, val
* p1
) {
5090 val
* var_n_expr
/* var n_expr: Collection[Object] */;
5091 val
* var_n_kwend
/* var n_kwend: nullable TKwend */;
5092 val
* var
/* : ANodes[AExpr] */;
5093 val
* var2
/* : ANodes[AExpr] */;
5094 val
* var3
/* : null */;
5095 short int var4
/* : Bool */;
5096 short int var5
/* : Bool */;
5097 val
* var_other
/* var other: nullable Object */;
5098 short int var7
/* : Bool */;
5099 short int var8
/* : Bool */;
5100 short int var9
/* : Bool */;
5104 { /* Inline parser_nodes#ABlockExpr#n_expr (self) on <self:ABlockExpr> */
5105 var2
= self
->attrs
[COLOR_parser_nodes__ABlockExpr___n_expr
].val
; /* _n_expr on <self:ABlockExpr> */
5106 if (unlikely(var2
== NULL
)) {
5107 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
5108 PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 1321);
5116 parser_nodes__ANodes__unsafe_add_all(var
, var_n_expr
); /* Direct call parser_nodes#ANodes#unsafe_add_all on <var:ANodes[AExpr]>*/
5118 self
->attrs
[COLOR_parser_nodes__ABlockExpr___n_kwend
].val
= var_n_kwend
; /* _n_kwend on <self:ABlockExpr> */
5120 if (var_n_kwend
== NULL
) {
5121 var4
= 0; /* is null */
5123 var4
= 1; /* arg is null and recv is not */
5126 { /* Inline kernel#Object#!= (var_n_kwend,var3) on <var_n_kwend:nullable TKwend> */
5129 var8
= ((short int (*)(val
*, val
*))(var_n_kwend
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_n_kwend
, var_other
) /* == on <var_n_kwend:nullable TKwend(TKwend)>*/;
5141 { /* Inline parser_nodes#ANode#parent= (var_n_kwend,self) on <var_n_kwend:nullable TKwend(TKwend)> */
5142 var_n_kwend
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_kwend:nullable TKwend(TKwend)> */
5143 RET_LABEL10
:(void)0;
5150 /* method parser_prod#ABlockExpr#init_ablockexpr for (self: Object, Collection[Object], nullable TKwend) */
5151 void VIRTUAL_parser_prod__ABlockExpr__init_ablockexpr(val
* self
, val
* p0
, val
* p1
) {
5152 parser_prod__ABlockExpr__init_ablockexpr(self
, p0
, p1
); /* Direct call parser_prod#ABlockExpr#init_ablockexpr on <self:Object(ABlockExpr)>*/
5155 /* method parser_prod#ABlockExpr#replace_child for (self: ABlockExpr, ANode, nullable ANode) */
5156 void parser_prod__ABlockExpr__replace_child(val
* self
, val
* p0
, val
* p1
) {
5157 val
* var_old_child
/* var old_child: ANode */;
5158 val
* var_new_child
/* var new_child: nullable ANode */;
5159 val
* var
/* : ANodes[AExpr] */;
5160 val
* var2
/* : ANodes[AExpr] */;
5161 short int var3
/* : Bool */;
5162 val
* var4
/* : nullable TKwend */;
5163 short int var5
/* : Bool */;
5164 short int var6
/* : Bool */;
5165 val
* var_other
/* var other: nullable Object */;
5166 short int var8
/* : Bool */;
5167 short int var10
/* : Bool */;
5168 short int var11
/* : Bool */;
5171 const char* var_class_name
;
5175 { /* Inline parser_nodes#ABlockExpr#n_expr (self) on <self:ABlockExpr> */
5176 var2
= self
->attrs
[COLOR_parser_nodes__ABlockExpr___n_expr
].val
; /* _n_expr on <self:ABlockExpr> */
5177 if (unlikely(var2
== NULL
)) {
5178 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
5179 PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 1321);
5187 var3
= parser_nodes__ANodes__replace_child(var
, var_old_child
, var_new_child
);
5193 var4
= self
->attrs
[COLOR_parser_nodes__ABlockExpr___n_kwend
].val
; /* _n_kwend on <self:ABlockExpr> */
5195 var5
= 0; /* <var_old_child:ANode> cannot be null */
5197 { /* Inline kernel#Object#== (var4,var_old_child) on <var4:nullable TKwend> */
5198 var_other
= var_old_child
;
5200 { /* Inline kernel#Object#is_same_instance (var4,var_other) on <var4:nullable TKwend(TKwend)> */
5201 var10
= var4
== var_other
;
5214 /* <var_new_child:nullable ANode> isa nullable TKwend */
5215 cltype
= type_nullable_parser_nodes__TKwend
.color
;
5216 idtype
= type_nullable_parser_nodes__TKwend
.id
;
5217 if(var_new_child
== NULL
) {
5220 if(cltype
>= var_new_child
->type
->table_size
) {
5223 var11
= var_new_child
->type
->type_table
[cltype
] == idtype
;
5226 if (unlikely(!var11
)) {
5227 var_class_name
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
5228 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable TKwend", var_class_name
);
5229 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2136);
5233 parser_prod__ABlockExpr__n_kwend_61d(self
, var_new_child
); /* Direct call parser_prod#ABlockExpr#n_kwend= on <self:ABlockExpr>*/
5240 /* method parser_prod#ABlockExpr#replace_child for (self: Object, ANode, nullable ANode) */
5241 void VIRTUAL_parser_prod__ABlockExpr__replace_child(val
* self
, val
* p0
, val
* p1
) {
5242 parser_prod__ABlockExpr__replace_child(self
, p0
, p1
); /* Direct call parser_prod#ABlockExpr#replace_child on <self:Object(ABlockExpr)>*/
5245 /* method parser_prod#ABlockExpr#n_kwend= for (self: ABlockExpr, nullable TKwend) */
5246 void parser_prod__ABlockExpr__n_kwend_61d(val
* self
, val
* p0
) {
5247 val
* var_node
/* var node: nullable TKwend */;
5248 val
* var
/* : null */;
5249 short int var1
/* : Bool */;
5250 short int var2
/* : Bool */;
5251 val
* var_other
/* var other: nullable Object */;
5252 short int var4
/* : Bool */;
5253 short int var5
/* : Bool */;
5254 short int var6
/* : Bool */;
5256 self
->attrs
[COLOR_parser_nodes__ABlockExpr___n_kwend
].val
= var_node
; /* _n_kwend on <self:ABlockExpr> */
5258 if (var_node
== NULL
) {
5259 var1
= 0; /* is null */
5261 var1
= 1; /* arg is null and recv is not */
5264 { /* Inline kernel#Object#!= (var_node,var) on <var_node:nullable TKwend> */
5267 var5
= ((short int (*)(val
*, val
*))(var_node
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_node
, var_other
) /* == on <var_node:nullable TKwend(TKwend)>*/;
5279 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:nullable TKwend(TKwend)> */
5280 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:nullable TKwend(TKwend)> */
5288 /* method parser_prod#ABlockExpr#n_kwend= for (self: Object, nullable TKwend) */
5289 void VIRTUAL_parser_prod__ABlockExpr__n_kwend_61d(val
* self
, val
* p0
) {
5290 parser_prod__ABlockExpr__n_kwend_61d(self
, p0
); /* Direct call parser_prod#ABlockExpr#n_kwend= on <self:Object(ABlockExpr)>*/
5293 /* method parser_prod#ABlockExpr#visit_all for (self: ABlockExpr, Visitor) */
5294 void parser_prod__ABlockExpr__visit_all(val
* self
, val
* p0
) {
5295 val
* var_v
/* var v: Visitor */;
5296 val
* var
/* : ANodes[AExpr] */;
5297 val
* var2
/* : ANodes[AExpr] */;
5298 val
* var3
/* : nullable TKwend */;
5301 { /* Inline parser_nodes#ABlockExpr#n_expr (self) on <self:ABlockExpr> */
5302 var2
= self
->attrs
[COLOR_parser_nodes__ABlockExpr___n_expr
].val
; /* _n_expr on <self:ABlockExpr> */
5303 if (unlikely(var2
== NULL
)) {
5304 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
5305 PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 1321);
5313 parser_nodes__ANodes__visit_all(var
, var_v
); /* Direct call parser_nodes#ANodes#visit_all on <var:ANodes[AExpr]>*/
5315 var3
= self
->attrs
[COLOR_parser_nodes__ABlockExpr___n_kwend
].val
; /* _n_kwend on <self:ABlockExpr> */
5317 parser_nodes__Visitor__enter_visit(var_v
, var3
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
5321 /* method parser_prod#ABlockExpr#visit_all for (self: Object, Visitor) */
5322 void VIRTUAL_parser_prod__ABlockExpr__visit_all(val
* self
, val
* p0
) {
5323 parser_prod__ABlockExpr__visit_all(self
, p0
); /* Direct call parser_prod#ABlockExpr#visit_all on <self:Object(ABlockExpr)>*/
5326 /* method parser_prod#AVardeclExpr#init_avardeclexpr for (self: AVardeclExpr, nullable TKwvar, nullable TId, nullable AType, nullable TAssign, nullable AExpr, nullable AAnnotations) */
5327 void parser_prod__AVardeclExpr__init_avardeclexpr(val
* self
, val
* p0
, val
* p1
, val
* p2
, val
* p3
, val
* p4
, val
* p5
) {
5328 val
* var_n_kwvar
/* var n_kwvar: nullable TKwvar */;
5329 val
* var_n_id
/* var n_id: nullable TId */;
5330 val
* var_n_type
/* var n_type: nullable AType */;
5331 val
* var_n_assign
/* var n_assign: nullable TAssign */;
5332 val
* var_n_expr
/* var n_expr: nullable AExpr */;
5333 val
* var_n_annotations
/* var n_annotations: nullable AAnnotations */;
5334 val
* var
/* : null */;
5335 short int var3
/* : Bool */;
5336 short int var4
/* : Bool */;
5337 val
* var_other
/* var other: nullable Object */;
5338 short int var6
/* : Bool */;
5339 short int var7
/* : Bool */;
5340 short int var8
/* : Bool */;
5341 val
* var10
/* : null */;
5342 short int var11
/* : Bool */;
5343 short int var12
/* : Bool */;
5344 short int var14
/* : Bool */;
5345 short int var15
/* : Bool */;
5346 short int var16
/* : Bool */;
5347 val
* var18
/* : null */;
5348 short int var19
/* : Bool */;
5349 short int var20
/* : Bool */;
5350 short int var22
/* : Bool */;
5351 short int var23
/* : Bool */;
5352 short int var24
/* : Bool */;
5353 val
* var26
/* : null */;
5354 short int var27
/* : Bool */;
5355 short int var28
/* : Bool */;
5356 short int var30
/* : Bool */;
5357 short int var31
/* : Bool */;
5358 short int var32
/* : Bool */;
5364 var_n_annotations
= p5
;
5365 if (unlikely(var_n_kwvar
== NULL
)) {
5366 PRINT_ERROR("Runtime error: %s", "Cast failed");
5367 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2164);
5370 self
->attrs
[COLOR_parser_nodes__AVardeclExpr___n_kwvar
].val
= var_n_kwvar
; /* _n_kwvar on <self:AVardeclExpr> */
5371 if (var_n_kwvar
== NULL
) {
5372 PRINT_ERROR("Runtime error: %s", "Receiver is null");
5373 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2165);
5376 { /* Inline parser_nodes#ANode#parent= (var_n_kwvar,self) on <var_n_kwvar:nullable TKwvar> */
5377 if (unlikely(var_n_kwvar
== NULL
)) {
5378 PRINT_ERROR("Runtime error: %s", "Receiver is null");
5379 PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36);
5382 var_n_kwvar
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_kwvar:nullable TKwvar> */
5386 if (unlikely(var_n_id
== NULL
)) {
5387 PRINT_ERROR("Runtime error: %s", "Cast failed");
5388 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2166);
5391 self
->attrs
[COLOR_parser_nodes__AVardeclExpr___n_id
].val
= var_n_id
; /* _n_id on <self:AVardeclExpr> */
5392 if (var_n_id
== NULL
) {
5393 PRINT_ERROR("Runtime error: %s", "Receiver is null");
5394 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2167);
5397 { /* Inline parser_nodes#ANode#parent= (var_n_id,self) on <var_n_id:nullable TId> */
5398 if (unlikely(var_n_id
== NULL
)) {
5399 PRINT_ERROR("Runtime error: %s", "Receiver is null");
5400 PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36);
5403 var_n_id
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_id:nullable TId> */
5407 self
->attrs
[COLOR_parser_nodes__AVardeclExpr___n_type
].val
= var_n_type
; /* _n_type on <self:AVardeclExpr> */
5409 if (var_n_type
== NULL
) {
5410 var3
= 0; /* is null */
5412 var3
= 1; /* arg is null and recv is not */
5415 { /* Inline kernel#Object#!= (var_n_type,var) on <var_n_type:nullable AType> */
5418 var7
= ((short int (*)(val
*, val
*))(var_n_type
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_n_type
, var_other
) /* == on <var_n_type:nullable AType(AType)>*/;
5430 { /* Inline parser_nodes#ANode#parent= (var_n_type,self) on <var_n_type:nullable AType(AType)> */
5431 var_n_type
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_type:nullable AType(AType)> */
5437 self
->attrs
[COLOR_parser_nodes__AVardeclExpr___n_assign
].val
= var_n_assign
; /* _n_assign on <self:AVardeclExpr> */
5439 if (var_n_assign
== NULL
) {
5440 var11
= 0; /* is null */
5442 var11
= 1; /* arg is null and recv is not */
5445 { /* Inline kernel#Object#!= (var_n_assign,var10) on <var_n_assign:nullable TAssign> */
5448 var15
= ((short int (*)(val
*, val
*))(var_n_assign
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_n_assign
, var_other
) /* == on <var_n_assign:nullable TAssign(TAssign)>*/;
5454 RET_LABEL13
:(void)0;
5460 { /* Inline parser_nodes#ANode#parent= (var_n_assign,self) on <var_n_assign:nullable TAssign(TAssign)> */
5461 var_n_assign
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_assign:nullable TAssign(TAssign)> */
5462 RET_LABEL17
:(void)0;
5467 self
->attrs
[COLOR_parser_nodes__AVardeclExpr___n_expr
].val
= var_n_expr
; /* _n_expr on <self:AVardeclExpr> */
5469 if (var_n_expr
== NULL
) {
5470 var19
= 0; /* is null */
5472 var19
= 1; /* arg is null and recv is not */
5475 { /* Inline kernel#Object#!= (var_n_expr,var18) on <var_n_expr:nullable AExpr> */
5478 var23
= ((short int (*)(val
*, val
*))(var_n_expr
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_n_expr
, var_other
) /* == on <var_n_expr:nullable AExpr(AExpr)>*/;
5484 RET_LABEL21
:(void)0;
5490 { /* Inline parser_nodes#ANode#parent= (var_n_expr,self) on <var_n_expr:nullable AExpr(AExpr)> */
5491 var_n_expr
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_expr:nullable AExpr(AExpr)> */
5492 RET_LABEL25
:(void)0;
5497 self
->attrs
[COLOR_parser_nodes__Prod___n_annotations
].val
= var_n_annotations
; /* _n_annotations on <self:AVardeclExpr> */
5499 if (var_n_annotations
== NULL
) {
5500 var27
= 0; /* is null */
5502 var27
= 1; /* arg is null and recv is not */
5505 { /* Inline kernel#Object#!= (var_n_annotations,var26) on <var_n_annotations:nullable AAnnotations> */
5508 var31
= ((short int (*)(val
*, val
*))(var_n_annotations
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_n_annotations
, var_other
) /* == on <var_n_annotations:nullable AAnnotations(AAnnotations)>*/;
5514 RET_LABEL29
:(void)0;
5520 { /* Inline parser_nodes#ANode#parent= (var_n_annotations,self) on <var_n_annotations:nullable AAnnotations(AAnnotations)> */
5521 var_n_annotations
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_annotations:nullable AAnnotations(AAnnotations)> */
5522 RET_LABEL33
:(void)0;
5529 /* method parser_prod#AVardeclExpr#init_avardeclexpr for (self: Object, nullable TKwvar, nullable TId, nullable AType, nullable TAssign, nullable AExpr, nullable AAnnotations) */
5530 void VIRTUAL_parser_prod__AVardeclExpr__init_avardeclexpr(val
* self
, val
* p0
, val
* p1
, val
* p2
, val
* p3
, val
* p4
, val
* p5
) {
5531 parser_prod__AVardeclExpr__init_avardeclexpr(self
, p0
, p1
, p2
, p3
, p4
, p5
); /* Direct call parser_prod#AVardeclExpr#init_avardeclexpr on <self:Object(AVardeclExpr)>*/
5534 /* method parser_prod#AVardeclExpr#replace_child for (self: AVardeclExpr, ANode, nullable ANode) */
5535 void parser_prod__AVardeclExpr__replace_child(val
* self
, val
* p0
, val
* p1
) {
5536 val
* var_old_child
/* var old_child: ANode */;
5537 val
* var_new_child
/* var new_child: nullable ANode */;
5538 val
* var
/* : TKwvar */;
5539 short int var1
/* : Bool */;
5540 short int var2
/* : Bool */;
5541 val
* var_other
/* var other: nullable Object */;
5542 short int var4
/* : Bool */;
5543 short int var6
/* : Bool */;
5544 short int var7
/* : Bool */;
5547 const char* var_class_name
;
5548 val
* var8
/* : TId */;
5549 short int var9
/* : Bool */;
5550 short int var10
/* : Bool */;
5551 short int var12
/* : Bool */;
5552 short int var14
/* : Bool */;
5553 short int var15
/* : Bool */;
5556 const char* var_class_name18
;
5557 val
* var19
/* : nullable AType */;
5558 short int var20
/* : Bool */;
5559 short int var21
/* : Bool */;
5560 short int var23
/* : Bool */;
5561 short int var25
/* : Bool */;
5562 short int var26
/* : Bool */;
5565 const char* var_class_name29
;
5566 val
* var30
/* : nullable TAssign */;
5567 short int var31
/* : Bool */;
5568 short int var32
/* : Bool */;
5569 short int var34
/* : Bool */;
5570 short int var36
/* : Bool */;
5571 short int var37
/* : Bool */;
5574 const char* var_class_name40
;
5575 val
* var41
/* : nullable AExpr */;
5576 short int var42
/* : Bool */;
5577 short int var43
/* : Bool */;
5578 short int var45
/* : Bool */;
5579 short int var47
/* : Bool */;
5580 short int var48
/* : Bool */;
5583 const char* var_class_name51
;
5584 val
* var52
/* : nullable AAnnotations */;
5585 short int var53
/* : Bool */;
5586 short int var54
/* : Bool */;
5587 short int var56
/* : Bool */;
5588 short int var58
/* : Bool */;
5589 short int var59
/* : Bool */;
5592 const char* var_class_name62
;
5595 var
= self
->attrs
[COLOR_parser_nodes__AVardeclExpr___n_kwvar
].val
; /* _n_kwvar on <self:AVardeclExpr> */
5596 if (unlikely(var
== NULL
)) {
5597 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwvar");
5598 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2180);
5602 { /* Inline kernel#Object#== (var,var_old_child) on <var:TKwvar> */
5603 var_other
= var_old_child
;
5605 { /* Inline kernel#Object#is_same_instance (var,var_other) on <var:TKwvar> */
5606 var6
= var
== var_other
;
5619 /* <var_new_child:nullable ANode> isa TKwvar */
5620 cltype
= type_parser_nodes__TKwvar
.color
;
5621 idtype
= type_parser_nodes__TKwvar
.id
;
5622 if(var_new_child
== NULL
) {
5625 if(cltype
>= var_new_child
->type
->table_size
) {
5628 var7
= var_new_child
->type
->type_table
[cltype
] == idtype
;
5631 if (unlikely(!var7
)) {
5632 var_class_name
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
5633 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwvar", var_class_name
);
5634 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2181);
5638 parser_prod__AVardeclExpr__n_kwvar_61d(self
, var_new_child
); /* Direct call parser_prod#AVardeclExpr#n_kwvar= on <self:AVardeclExpr>*/
5643 var8
= self
->attrs
[COLOR_parser_nodes__AVardeclExpr___n_id
].val
; /* _n_id on <self:AVardeclExpr> */
5644 if (unlikely(var8
== NULL
)) {
5645 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id");
5646 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2184);
5650 { /* Inline kernel#Object#== (var8,var_old_child) on <var8:TId> */
5651 var_other
= var_old_child
;
5653 { /* Inline kernel#Object#is_same_instance (var8,var_other) on <var8:TId> */
5654 var14
= var8
== var_other
;
5657 RET_LABEL13
:(void)0;
5662 RET_LABEL11
:(void)0;
5667 /* <var_new_child:nullable ANode> isa TId */
5668 cltype16
= type_parser_nodes__TId
.color
;
5669 idtype17
= type_parser_nodes__TId
.id
;
5670 if(var_new_child
== NULL
) {
5673 if(cltype16
>= var_new_child
->type
->table_size
) {
5676 var15
= var_new_child
->type
->type_table
[cltype16
] == idtype17
;
5679 if (unlikely(!var15
)) {
5680 var_class_name18
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
5681 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TId", var_class_name18
);
5682 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2185);
5686 parser_prod__AVardeclExpr__n_id_61d(self
, var_new_child
); /* Direct call parser_prod#AVardeclExpr#n_id= on <self:AVardeclExpr>*/
5691 var19
= self
->attrs
[COLOR_parser_nodes__AVardeclExpr___n_type
].val
; /* _n_type on <self:AVardeclExpr> */
5692 if (var19
== NULL
) {
5693 var20
= 0; /* <var_old_child:ANode> cannot be null */
5695 { /* Inline kernel#Object#== (var19,var_old_child) on <var19:nullable AType> */
5696 var_other
= var_old_child
;
5698 { /* Inline kernel#Object#is_same_instance (var19,var_other) on <var19:nullable AType(AType)> */
5699 var25
= var19
== var_other
;
5702 RET_LABEL24
:(void)0;
5707 RET_LABEL22
:(void)0;
5712 /* <var_new_child:nullable ANode> isa nullable AType */
5713 cltype27
= type_nullable_parser_nodes__AType
.color
;
5714 idtype28
= type_nullable_parser_nodes__AType
.id
;
5715 if(var_new_child
== NULL
) {
5718 if(cltype27
>= var_new_child
->type
->table_size
) {
5721 var26
= var_new_child
->type
->type_table
[cltype27
] == idtype28
;
5724 if (unlikely(!var26
)) {
5725 var_class_name29
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
5726 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable AType", var_class_name29
);
5727 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2189);
5731 parser_prod__AVardeclExpr__n_type_61d(self
, var_new_child
); /* Direct call parser_prod#AVardeclExpr#n_type= on <self:AVardeclExpr>*/
5736 var30
= self
->attrs
[COLOR_parser_nodes__AVardeclExpr___n_assign
].val
; /* _n_assign on <self:AVardeclExpr> */
5737 if (var30
== NULL
) {
5738 var31
= 0; /* <var_old_child:ANode> cannot be null */
5740 { /* Inline kernel#Object#== (var30,var_old_child) on <var30:nullable TAssign> */
5741 var_other
= var_old_child
;
5743 { /* Inline kernel#Object#is_same_instance (var30,var_other) on <var30:nullable TAssign(TAssign)> */
5744 var36
= var30
== var_other
;
5747 RET_LABEL35
:(void)0;
5752 RET_LABEL33
:(void)0;
5757 /* <var_new_child:nullable ANode> isa nullable TAssign */
5758 cltype38
= type_nullable_parser_nodes__TAssign
.color
;
5759 idtype39
= type_nullable_parser_nodes__TAssign
.id
;
5760 if(var_new_child
== NULL
) {
5763 if(cltype38
>= var_new_child
->type
->table_size
) {
5766 var37
= var_new_child
->type
->type_table
[cltype38
] == idtype39
;
5769 if (unlikely(!var37
)) {
5770 var_class_name40
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
5771 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable TAssign", var_class_name40
);
5772 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2193);
5776 parser_prod__AVardeclExpr__n_assign_61d(self
, var_new_child
); /* Direct call parser_prod#AVardeclExpr#n_assign= on <self:AVardeclExpr>*/
5781 var41
= self
->attrs
[COLOR_parser_nodes__AVardeclExpr___n_expr
].val
; /* _n_expr on <self:AVardeclExpr> */
5782 if (var41
== NULL
) {
5783 var42
= 0; /* <var_old_child:ANode> cannot be null */
5785 { /* Inline kernel#Object#== (var41,var_old_child) on <var41:nullable AExpr> */
5786 var_other
= var_old_child
;
5788 { /* Inline kernel#Object#is_same_instance (var41,var_other) on <var41:nullable AExpr(AExpr)> */
5789 var47
= var41
== var_other
;
5792 RET_LABEL46
:(void)0;
5797 RET_LABEL44
:(void)0;
5802 /* <var_new_child:nullable ANode> isa nullable AExpr */
5803 cltype49
= type_nullable_parser_nodes__AExpr
.color
;
5804 idtype50
= type_nullable_parser_nodes__AExpr
.id
;
5805 if(var_new_child
== NULL
) {
5808 if(cltype49
>= var_new_child
->type
->table_size
) {
5811 var48
= var_new_child
->type
->type_table
[cltype49
] == idtype50
;
5814 if (unlikely(!var48
)) {
5815 var_class_name51
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
5816 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable AExpr", var_class_name51
);
5817 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2197);
5821 parser_prod__AVardeclExpr__n_expr_61d(self
, var_new_child
); /* Direct call parser_prod#AVardeclExpr#n_expr= on <self:AVardeclExpr>*/
5826 var52
= self
->attrs
[COLOR_parser_nodes__Prod___n_annotations
].val
; /* _n_annotations on <self:AVardeclExpr> */
5827 if (var52
== NULL
) {
5828 var53
= 0; /* <var_old_child:ANode> cannot be null */
5830 { /* Inline kernel#Object#== (var52,var_old_child) on <var52:nullable AAnnotations> */
5831 var_other
= var_old_child
;
5833 { /* Inline kernel#Object#is_same_instance (var52,var_other) on <var52:nullable AAnnotations(AAnnotations)> */
5834 var58
= var52
== var_other
;
5837 RET_LABEL57
:(void)0;
5842 RET_LABEL55
:(void)0;
5847 /* <var_new_child:nullable ANode> isa nullable AAnnotations */
5848 cltype60
= type_nullable_parser_nodes__AAnnotations
.color
;
5849 idtype61
= type_nullable_parser_nodes__AAnnotations
.id
;
5850 if(var_new_child
== NULL
) {
5853 if(cltype60
>= var_new_child
->type
->table_size
) {
5856 var59
= var_new_child
->type
->type_table
[cltype60
] == idtype61
;
5859 if (unlikely(!var59
)) {
5860 var_class_name62
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
5861 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable AAnnotations", var_class_name62
);
5862 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2201);
5866 parser_prod__AVardeclExpr__n_annotations_61d(self
, var_new_child
); /* Direct call parser_prod#AVardeclExpr#n_annotations= on <self:AVardeclExpr>*/
5873 /* method parser_prod#AVardeclExpr#replace_child for (self: Object, ANode, nullable ANode) */
5874 void VIRTUAL_parser_prod__AVardeclExpr__replace_child(val
* self
, val
* p0
, val
* p1
) {
5875 parser_prod__AVardeclExpr__replace_child(self
, p0
, p1
); /* Direct call parser_prod#AVardeclExpr#replace_child on <self:Object(AVardeclExpr)>*/
5878 /* method parser_prod#AVardeclExpr#n_kwvar= for (self: AVardeclExpr, TKwvar) */
5879 void parser_prod__AVardeclExpr__n_kwvar_61d(val
* self
, val
* p0
) {
5880 val
* var_node
/* var node: TKwvar */;
5882 self
->attrs
[COLOR_parser_nodes__AVardeclExpr___n_kwvar
].val
= var_node
; /* _n_kwvar on <self:AVardeclExpr> */
5884 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:TKwvar> */
5885 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:TKwvar> */
5891 /* method parser_prod#AVardeclExpr#n_kwvar= for (self: Object, TKwvar) */
5892 void VIRTUAL_parser_prod__AVardeclExpr__n_kwvar_61d(val
* self
, val
* p0
) {
5893 parser_prod__AVardeclExpr__n_kwvar_61d(self
, p0
); /* Direct call parser_prod#AVardeclExpr#n_kwvar= on <self:Object(AVardeclExpr)>*/
5896 /* method parser_prod#AVardeclExpr#n_id= for (self: AVardeclExpr, TId) */
5897 void parser_prod__AVardeclExpr__n_id_61d(val
* self
, val
* p0
) {
5898 val
* var_node
/* var node: TId */;
5900 self
->attrs
[COLOR_parser_nodes__AVardeclExpr___n_id
].val
= var_node
; /* _n_id on <self:AVardeclExpr> */
5902 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:TId> */
5903 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:TId> */
5909 /* method parser_prod#AVardeclExpr#n_id= for (self: Object, TId) */
5910 void VIRTUAL_parser_prod__AVardeclExpr__n_id_61d(val
* self
, val
* p0
) {
5911 parser_prod__AVardeclExpr__n_id_61d(self
, p0
); /* Direct call parser_prod#AVardeclExpr#n_id= on <self:Object(AVardeclExpr)>*/
5914 /* method parser_prod#AVardeclExpr#n_type= for (self: AVardeclExpr, nullable AType) */
5915 void parser_prod__AVardeclExpr__n_type_61d(val
* self
, val
* p0
) {
5916 val
* var_node
/* var node: nullable AType */;
5917 val
* var
/* : null */;
5918 short int var1
/* : Bool */;
5919 short int var2
/* : Bool */;
5920 val
* var_other
/* var other: nullable Object */;
5921 short int var4
/* : Bool */;
5922 short int var5
/* : Bool */;
5923 short int var6
/* : Bool */;
5925 self
->attrs
[COLOR_parser_nodes__AVardeclExpr___n_type
].val
= var_node
; /* _n_type on <self:AVardeclExpr> */
5927 if (var_node
== NULL
) {
5928 var1
= 0; /* is null */
5930 var1
= 1; /* arg is null and recv is not */
5933 { /* Inline kernel#Object#!= (var_node,var) on <var_node:nullable AType> */
5936 var5
= ((short int (*)(val
*, val
*))(var_node
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_node
, var_other
) /* == on <var_node:nullable AType(AType)>*/;
5948 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:nullable AType(AType)> */
5949 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:nullable AType(AType)> */
5957 /* method parser_prod#AVardeclExpr#n_type= for (self: Object, nullable AType) */
5958 void VIRTUAL_parser_prod__AVardeclExpr__n_type_61d(val
* self
, val
* p0
) {
5959 parser_prod__AVardeclExpr__n_type_61d(self
, p0
); /* Direct call parser_prod#AVardeclExpr#n_type= on <self:Object(AVardeclExpr)>*/
5962 /* method parser_prod#AVardeclExpr#n_assign= for (self: AVardeclExpr, nullable TAssign) */
5963 void parser_prod__AVardeclExpr__n_assign_61d(val
* self
, val
* p0
) {
5964 val
* var_node
/* var node: nullable TAssign */;
5965 val
* var
/* : null */;
5966 short int var1
/* : Bool */;
5967 short int var2
/* : Bool */;
5968 val
* var_other
/* var other: nullable Object */;
5969 short int var4
/* : Bool */;
5970 short int var5
/* : Bool */;
5971 short int var6
/* : Bool */;
5973 self
->attrs
[COLOR_parser_nodes__AVardeclExpr___n_assign
].val
= var_node
; /* _n_assign on <self:AVardeclExpr> */
5975 if (var_node
== NULL
) {
5976 var1
= 0; /* is null */
5978 var1
= 1; /* arg is null and recv is not */
5981 { /* Inline kernel#Object#!= (var_node,var) on <var_node:nullable TAssign> */
5984 var5
= ((short int (*)(val
*, val
*))(var_node
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_node
, var_other
) /* == on <var_node:nullable TAssign(TAssign)>*/;
5996 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:nullable TAssign(TAssign)> */
5997 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:nullable TAssign(TAssign)> */
6005 /* method parser_prod#AVardeclExpr#n_assign= for (self: Object, nullable TAssign) */
6006 void VIRTUAL_parser_prod__AVardeclExpr__n_assign_61d(val
* self
, val
* p0
) {
6007 parser_prod__AVardeclExpr__n_assign_61d(self
, p0
); /* Direct call parser_prod#AVardeclExpr#n_assign= on <self:Object(AVardeclExpr)>*/
6010 /* method parser_prod#AVardeclExpr#n_expr= for (self: AVardeclExpr, nullable AExpr) */
6011 void parser_prod__AVardeclExpr__n_expr_61d(val
* self
, val
* p0
) {
6012 val
* var_node
/* var node: nullable AExpr */;
6013 val
* var
/* : null */;
6014 short int var1
/* : Bool */;
6015 short int var2
/* : Bool */;
6016 val
* var_other
/* var other: nullable Object */;
6017 short int var4
/* : Bool */;
6018 short int var5
/* : Bool */;
6019 short int var6
/* : Bool */;
6021 self
->attrs
[COLOR_parser_nodes__AVardeclExpr___n_expr
].val
= var_node
; /* _n_expr on <self:AVardeclExpr> */
6023 if (var_node
== NULL
) {
6024 var1
= 0; /* is null */
6026 var1
= 1; /* arg is null and recv is not */
6029 { /* Inline kernel#Object#!= (var_node,var) on <var_node:nullable AExpr> */
6032 var5
= ((short int (*)(val
*, val
*))(var_node
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_node
, var_other
) /* == on <var_node:nullable AExpr(AExpr)>*/;
6044 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:nullable AExpr(AExpr)> */
6045 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:nullable AExpr(AExpr)> */
6053 /* method parser_prod#AVardeclExpr#n_expr= for (self: Object, nullable AExpr) */
6054 void VIRTUAL_parser_prod__AVardeclExpr__n_expr_61d(val
* self
, val
* p0
) {
6055 parser_prod__AVardeclExpr__n_expr_61d(self
, p0
); /* Direct call parser_prod#AVardeclExpr#n_expr= on <self:Object(AVardeclExpr)>*/
6058 /* method parser_prod#AVardeclExpr#n_annotations= for (self: AVardeclExpr, nullable AAnnotations) */
6059 void parser_prod__AVardeclExpr__n_annotations_61d(val
* self
, val
* p0
) {
6060 val
* var_node
/* var node: nullable AAnnotations */;
6061 val
* var
/* : null */;
6062 short int var1
/* : Bool */;
6063 short int var2
/* : Bool */;
6064 val
* var_other
/* var other: nullable Object */;
6065 short int var4
/* : Bool */;
6066 short int var5
/* : Bool */;
6067 short int var6
/* : Bool */;
6069 self
->attrs
[COLOR_parser_nodes__Prod___n_annotations
].val
= var_node
; /* _n_annotations on <self:AVardeclExpr> */
6071 if (var_node
== NULL
) {
6072 var1
= 0; /* is null */
6074 var1
= 1; /* arg is null and recv is not */
6077 { /* Inline kernel#Object#!= (var_node,var) on <var_node:nullable AAnnotations> */
6080 var5
= ((short int (*)(val
*, val
*))(var_node
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_node
, var_other
) /* == on <var_node:nullable AAnnotations(AAnnotations)>*/;
6092 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:nullable AAnnotations(AAnnotations)> */
6093 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:nullable AAnnotations(AAnnotations)> */
6101 /* method parser_prod#AVardeclExpr#n_annotations= for (self: Object, nullable AAnnotations) */
6102 void VIRTUAL_parser_prod__AVardeclExpr__n_annotations_61d(val
* self
, val
* p0
) {
6103 parser_prod__AVardeclExpr__n_annotations_61d(self
, p0
); /* Direct call parser_prod#AVardeclExpr#n_annotations= on <self:Object(AVardeclExpr)>*/
6106 /* method parser_prod#AVardeclExpr#visit_all for (self: AVardeclExpr, Visitor) */
6107 void parser_prod__AVardeclExpr__visit_all(val
* self
, val
* p0
) {
6108 val
* var_v
/* var v: Visitor */;
6109 val
* var
/* : TKwvar */;
6110 val
* var1
/* : TId */;
6111 val
* var2
/* : nullable AType */;
6112 val
* var3
/* : nullable TAssign */;
6113 val
* var4
/* : nullable AExpr */;
6114 val
* var5
/* : nullable AAnnotations */;
6116 var
= self
->attrs
[COLOR_parser_nodes__AVardeclExpr___n_kwvar
].val
; /* _n_kwvar on <self:AVardeclExpr> */
6117 if (unlikely(var
== NULL
)) {
6118 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwvar");
6119 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2240);
6123 parser_nodes__Visitor__enter_visit(var_v
, var
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
6125 var1
= self
->attrs
[COLOR_parser_nodes__AVardeclExpr___n_id
].val
; /* _n_id on <self:AVardeclExpr> */
6126 if (unlikely(var1
== NULL
)) {
6127 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id");
6128 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2241);
6132 parser_nodes__Visitor__enter_visit(var_v
, var1
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
6134 var2
= self
->attrs
[COLOR_parser_nodes__AVardeclExpr___n_type
].val
; /* _n_type on <self:AVardeclExpr> */
6136 parser_nodes__Visitor__enter_visit(var_v
, var2
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
6138 var3
= self
->attrs
[COLOR_parser_nodes__AVardeclExpr___n_assign
].val
; /* _n_assign on <self:AVardeclExpr> */
6140 parser_nodes__Visitor__enter_visit(var_v
, var3
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
6142 var4
= self
->attrs
[COLOR_parser_nodes__AVardeclExpr___n_expr
].val
; /* _n_expr on <self:AVardeclExpr> */
6144 parser_nodes__Visitor__enter_visit(var_v
, var4
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
6146 var5
= self
->attrs
[COLOR_parser_nodes__Prod___n_annotations
].val
; /* _n_annotations on <self:AVardeclExpr> */
6148 parser_nodes__Visitor__enter_visit(var_v
, var5
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
6152 /* method parser_prod#AVardeclExpr#visit_all for (self: Object, Visitor) */
6153 void VIRTUAL_parser_prod__AVardeclExpr__visit_all(val
* self
, val
* p0
) {
6154 parser_prod__AVardeclExpr__visit_all(self
, p0
); /* Direct call parser_prod#AVardeclExpr#visit_all on <self:Object(AVardeclExpr)>*/
6157 /* method parser_prod#AReturnExpr#init_areturnexpr for (self: AReturnExpr, nullable TKwreturn, nullable AExpr) */
6158 void parser_prod__AReturnExpr__init_areturnexpr(val
* self
, val
* p0
, val
* p1
) {
6159 val
* var_n_kwreturn
/* var n_kwreturn: nullable TKwreturn */;
6160 val
* var_n_expr
/* var n_expr: nullable AExpr */;
6161 val
* var
/* : null */;
6162 short int var1
/* : Bool */;
6163 short int var2
/* : Bool */;
6164 val
* var_other
/* var other: nullable Object */;
6165 short int var4
/* : Bool */;
6166 short int var5
/* : Bool */;
6167 short int var6
/* : Bool */;
6168 val
* var8
/* : null */;
6169 short int var9
/* : Bool */;
6170 short int var10
/* : Bool */;
6171 short int var12
/* : Bool */;
6172 short int var13
/* : Bool */;
6173 short int var14
/* : Bool */;
6174 var_n_kwreturn
= p0
;
6176 self
->attrs
[COLOR_parser_nodes__AReturnExpr___n_kwreturn
].val
= var_n_kwreturn
; /* _n_kwreturn on <self:AReturnExpr> */
6178 if (var_n_kwreturn
== NULL
) {
6179 var1
= 0; /* is null */
6181 var1
= 1; /* arg is null and recv is not */
6184 { /* Inline kernel#Object#!= (var_n_kwreturn,var) on <var_n_kwreturn:nullable TKwreturn> */
6187 var5
= ((short int (*)(val
*, val
*))(var_n_kwreturn
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_n_kwreturn
, var_other
) /* == on <var_n_kwreturn:nullable TKwreturn(TKwreturn)>*/;
6199 { /* Inline parser_nodes#ANode#parent= (var_n_kwreturn,self) on <var_n_kwreturn:nullable TKwreturn(TKwreturn)> */
6200 var_n_kwreturn
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_kwreturn:nullable TKwreturn(TKwreturn)> */
6206 self
->attrs
[COLOR_parser_nodes__AReturnExpr___n_expr
].val
= var_n_expr
; /* _n_expr on <self:AReturnExpr> */
6208 if (var_n_expr
== NULL
) {
6209 var9
= 0; /* is null */
6211 var9
= 1; /* arg is null and recv is not */
6214 { /* Inline kernel#Object#!= (var_n_expr,var8) on <var_n_expr:nullable AExpr> */
6217 var13
= ((short int (*)(val
*, val
*))(var_n_expr
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_n_expr
, var_other
) /* == on <var_n_expr:nullable AExpr(AExpr)>*/;
6223 RET_LABEL11
:(void)0;
6229 { /* Inline parser_nodes#ANode#parent= (var_n_expr,self) on <var_n_expr:nullable AExpr(AExpr)> */
6230 var_n_expr
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_expr:nullable AExpr(AExpr)> */
6231 RET_LABEL15
:(void)0;
6238 /* method parser_prod#AReturnExpr#init_areturnexpr for (self: Object, nullable TKwreturn, nullable AExpr) */
6239 void VIRTUAL_parser_prod__AReturnExpr__init_areturnexpr(val
* self
, val
* p0
, val
* p1
) {
6240 parser_prod__AReturnExpr__init_areturnexpr(self
, p0
, p1
); /* Direct call parser_prod#AReturnExpr#init_areturnexpr on <self:Object(AReturnExpr)>*/
6243 /* method parser_prod#AReturnExpr#replace_child for (self: AReturnExpr, ANode, nullable ANode) */
6244 void parser_prod__AReturnExpr__replace_child(val
* self
, val
* p0
, val
* p1
) {
6245 val
* var_old_child
/* var old_child: ANode */;
6246 val
* var_new_child
/* var new_child: nullable ANode */;
6247 val
* var
/* : nullable TKwreturn */;
6248 short int var1
/* : Bool */;
6249 short int var2
/* : Bool */;
6250 val
* var_other
/* var other: nullable Object */;
6251 short int var4
/* : Bool */;
6252 short int var6
/* : Bool */;
6253 short int var7
/* : Bool */;
6256 const char* var_class_name
;
6257 val
* var8
/* : nullable AExpr */;
6258 short int var9
/* : Bool */;
6259 short int var10
/* : Bool */;
6260 short int var12
/* : Bool */;
6261 short int var14
/* : Bool */;
6262 short int var15
/* : Bool */;
6265 const char* var_class_name18
;
6268 var
= self
->attrs
[COLOR_parser_nodes__AReturnExpr___n_kwreturn
].val
; /* _n_kwreturn on <self:AReturnExpr> */
6270 var1
= 0; /* <var_old_child:ANode> cannot be null */
6272 { /* Inline kernel#Object#== (var,var_old_child) on <var:nullable TKwreturn> */
6273 var_other
= var_old_child
;
6275 { /* Inline kernel#Object#is_same_instance (var,var_other) on <var:nullable TKwreturn(TKwreturn)> */
6276 var6
= var
== var_other
;
6289 /* <var_new_child:nullable ANode> isa nullable TKwreturn */
6290 cltype
= type_nullable_parser_nodes__TKwreturn
.color
;
6291 idtype
= type_nullable_parser_nodes__TKwreturn
.id
;
6292 if(var_new_child
== NULL
) {
6295 if(cltype
>= var_new_child
->type
->table_size
) {
6298 var7
= var_new_child
->type
->type_table
[cltype
] == idtype
;
6301 if (unlikely(!var7
)) {
6302 var_class_name
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
6303 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable TKwreturn", var_class_name
);
6304 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2263);
6308 parser_prod__AReturnExpr__n_kwreturn_61d(self
, var_new_child
); /* Direct call parser_prod#AReturnExpr#n_kwreturn= on <self:AReturnExpr>*/
6313 var8
= self
->attrs
[COLOR_parser_nodes__AReturnExpr___n_expr
].val
; /* _n_expr on <self:AReturnExpr> */
6315 var9
= 0; /* <var_old_child:ANode> cannot be null */
6317 { /* Inline kernel#Object#== (var8,var_old_child) on <var8:nullable AExpr> */
6318 var_other
= var_old_child
;
6320 { /* Inline kernel#Object#is_same_instance (var8,var_other) on <var8:nullable AExpr(AExpr)> */
6321 var14
= var8
== var_other
;
6324 RET_LABEL13
:(void)0;
6329 RET_LABEL11
:(void)0;
6334 /* <var_new_child:nullable ANode> isa nullable AExpr */
6335 cltype16
= type_nullable_parser_nodes__AExpr
.color
;
6336 idtype17
= type_nullable_parser_nodes__AExpr
.id
;
6337 if(var_new_child
== NULL
) {
6340 if(cltype16
>= var_new_child
->type
->table_size
) {
6343 var15
= var_new_child
->type
->type_table
[cltype16
] == idtype17
;
6346 if (unlikely(!var15
)) {
6347 var_class_name18
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
6348 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable AExpr", var_class_name18
);
6349 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2267);
6353 parser_prod__AReturnExpr__n_expr_61d(self
, var_new_child
); /* Direct call parser_prod#AReturnExpr#n_expr= on <self:AReturnExpr>*/
6360 /* method parser_prod#AReturnExpr#replace_child for (self: Object, ANode, nullable ANode) */
6361 void VIRTUAL_parser_prod__AReturnExpr__replace_child(val
* self
, val
* p0
, val
* p1
) {
6362 parser_prod__AReturnExpr__replace_child(self
, p0
, p1
); /* Direct call parser_prod#AReturnExpr#replace_child on <self:Object(AReturnExpr)>*/
6365 /* method parser_prod#AReturnExpr#n_kwreturn= for (self: AReturnExpr, nullable TKwreturn) */
6366 void parser_prod__AReturnExpr__n_kwreturn_61d(val
* self
, val
* p0
) {
6367 val
* var_node
/* var node: nullable TKwreturn */;
6368 val
* var
/* : null */;
6369 short int var1
/* : Bool */;
6370 short int var2
/* : Bool */;
6371 val
* var_other
/* var other: nullable Object */;
6372 short int var4
/* : Bool */;
6373 short int var5
/* : Bool */;
6374 short int var6
/* : Bool */;
6376 self
->attrs
[COLOR_parser_nodes__AReturnExpr___n_kwreturn
].val
= var_node
; /* _n_kwreturn on <self:AReturnExpr> */
6378 if (var_node
== NULL
) {
6379 var1
= 0; /* is null */
6381 var1
= 1; /* arg is null and recv is not */
6384 { /* Inline kernel#Object#!= (var_node,var) on <var_node:nullable TKwreturn> */
6387 var5
= ((short int (*)(val
*, val
*))(var_node
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_node
, var_other
) /* == on <var_node:nullable TKwreturn(TKwreturn)>*/;
6399 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:nullable TKwreturn(TKwreturn)> */
6400 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:nullable TKwreturn(TKwreturn)> */
6408 /* method parser_prod#AReturnExpr#n_kwreturn= for (self: Object, nullable TKwreturn) */
6409 void VIRTUAL_parser_prod__AReturnExpr__n_kwreturn_61d(val
* self
, val
* p0
) {
6410 parser_prod__AReturnExpr__n_kwreturn_61d(self
, p0
); /* Direct call parser_prod#AReturnExpr#n_kwreturn= on <self:Object(AReturnExpr)>*/
6413 /* method parser_prod#AReturnExpr#n_expr= for (self: AReturnExpr, nullable AExpr) */
6414 void parser_prod__AReturnExpr__n_expr_61d(val
* self
, val
* p0
) {
6415 val
* var_node
/* var node: nullable AExpr */;
6416 val
* var
/* : null */;
6417 short int var1
/* : Bool */;
6418 short int var2
/* : Bool */;
6419 val
* var_other
/* var other: nullable Object */;
6420 short int var4
/* : Bool */;
6421 short int var5
/* : Bool */;
6422 short int var6
/* : Bool */;
6424 self
->attrs
[COLOR_parser_nodes__AReturnExpr___n_expr
].val
= var_node
; /* _n_expr on <self:AReturnExpr> */
6426 if (var_node
== NULL
) {
6427 var1
= 0; /* is null */
6429 var1
= 1; /* arg is null and recv is not */
6432 { /* Inline kernel#Object#!= (var_node,var) on <var_node:nullable AExpr> */
6435 var5
= ((short int (*)(val
*, val
*))(var_node
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_node
, var_other
) /* == on <var_node:nullable AExpr(AExpr)>*/;
6447 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:nullable AExpr(AExpr)> */
6448 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:nullable AExpr(AExpr)> */
6456 /* method parser_prod#AReturnExpr#n_expr= for (self: Object, nullable AExpr) */
6457 void VIRTUAL_parser_prod__AReturnExpr__n_expr_61d(val
* self
, val
* p0
) {
6458 parser_prod__AReturnExpr__n_expr_61d(self
, p0
); /* Direct call parser_prod#AReturnExpr#n_expr= on <self:Object(AReturnExpr)>*/
6461 /* method parser_prod#AReturnExpr#visit_all for (self: AReturnExpr, Visitor) */
6462 void parser_prod__AReturnExpr__visit_all(val
* self
, val
* p0
) {
6463 val
* var_v
/* var v: Visitor */;
6464 val
* var
/* : nullable TKwreturn */;
6465 val
* var1
/* : nullable AExpr */;
6467 var
= self
->attrs
[COLOR_parser_nodes__AReturnExpr___n_kwreturn
].val
; /* _n_kwreturn on <self:AReturnExpr> */
6469 parser_nodes__Visitor__enter_visit(var_v
, var
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
6471 var1
= self
->attrs
[COLOR_parser_nodes__AReturnExpr___n_expr
].val
; /* _n_expr on <self:AReturnExpr> */
6473 parser_nodes__Visitor__enter_visit(var_v
, var1
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
6477 /* method parser_prod#AReturnExpr#visit_all for (self: Object, Visitor) */
6478 void VIRTUAL_parser_prod__AReturnExpr__visit_all(val
* self
, val
* p0
) {
6479 parser_prod__AReturnExpr__visit_all(self
, p0
); /* Direct call parser_prod#AReturnExpr#visit_all on <self:Object(AReturnExpr)>*/
6482 /* method parser_prod#ABreakExpr#init_abreakexpr for (self: ABreakExpr, nullable TKwbreak, nullable ALabel) */
6483 void parser_prod__ABreakExpr__init_abreakexpr(val
* self
, val
* p0
, val
* p1
) {
6484 val
* var_n_kwbreak
/* var n_kwbreak: nullable TKwbreak */;
6485 val
* var_n_label
/* var n_label: nullable ALabel */;
6486 val
* var
/* : null */;
6487 short int var2
/* : Bool */;
6488 short int var3
/* : Bool */;
6489 val
* var_other
/* var other: nullable Object */;
6490 short int var5
/* : Bool */;
6491 short int var6
/* : Bool */;
6492 short int var7
/* : Bool */;
6495 if (unlikely(var_n_kwbreak
== NULL
)) {
6496 PRINT_ERROR("Runtime error: %s", "Cast failed");
6497 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2296);
6500 self
->attrs
[COLOR_parser_nodes__ABreakExpr___n_kwbreak
].val
= var_n_kwbreak
; /* _n_kwbreak on <self:ABreakExpr> */
6501 if (var_n_kwbreak
== NULL
) {
6502 PRINT_ERROR("Runtime error: %s", "Receiver is null");
6503 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2297);
6506 { /* Inline parser_nodes#ANode#parent= (var_n_kwbreak,self) on <var_n_kwbreak:nullable TKwbreak> */
6507 if (unlikely(var_n_kwbreak
== NULL
)) {
6508 PRINT_ERROR("Runtime error: %s", "Receiver is null");
6509 PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36);
6512 var_n_kwbreak
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_kwbreak:nullable TKwbreak> */
6516 self
->attrs
[COLOR_parser_nodes__ALabelable___n_label
].val
= var_n_label
; /* _n_label on <self:ABreakExpr> */
6518 if (var_n_label
== NULL
) {
6519 var2
= 0; /* is null */
6521 var2
= 1; /* arg is null and recv is not */
6524 { /* Inline kernel#Object#!= (var_n_label,var) on <var_n_label:nullable ALabel> */
6527 var6
= ((short int (*)(val
*, val
*))(var_n_label
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_n_label
, var_other
) /* == on <var_n_label:nullable ALabel(ALabel)>*/;
6539 { /* Inline parser_nodes#ANode#parent= (var_n_label,self) on <var_n_label:nullable ALabel(ALabel)> */
6540 var_n_label
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_label:nullable ALabel(ALabel)> */
6548 /* method parser_prod#ABreakExpr#init_abreakexpr for (self: Object, nullable TKwbreak, nullable ALabel) */
6549 void VIRTUAL_parser_prod__ABreakExpr__init_abreakexpr(val
* self
, val
* p0
, val
* p1
) {
6550 parser_prod__ABreakExpr__init_abreakexpr(self
, p0
, p1
); /* Direct call parser_prod#ABreakExpr#init_abreakexpr on <self:Object(ABreakExpr)>*/
6553 /* method parser_prod#ABreakExpr#replace_child for (self: ABreakExpr, ANode, nullable ANode) */
6554 void parser_prod__ABreakExpr__replace_child(val
* self
, val
* p0
, val
* p1
) {
6555 val
* var_old_child
/* var old_child: ANode */;
6556 val
* var_new_child
/* var new_child: nullable ANode */;
6557 val
* var
/* : TKwbreak */;
6558 short int var1
/* : Bool */;
6559 short int var2
/* : Bool */;
6560 val
* var_other
/* var other: nullable Object */;
6561 short int var4
/* : Bool */;
6562 short int var6
/* : Bool */;
6563 short int var7
/* : Bool */;
6566 const char* var_class_name
;
6567 val
* var8
/* : nullable ALabel */;
6568 short int var9
/* : Bool */;
6569 short int var10
/* : Bool */;
6570 short int var12
/* : Bool */;
6571 short int var14
/* : Bool */;
6572 short int var15
/* : Bool */;
6575 const char* var_class_name18
;
6578 var
= self
->attrs
[COLOR_parser_nodes__ABreakExpr___n_kwbreak
].val
; /* _n_kwbreak on <self:ABreakExpr> */
6579 if (unlikely(var
== NULL
)) {
6580 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwbreak");
6581 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2304);
6585 { /* Inline kernel#Object#== (var,var_old_child) on <var:TKwbreak> */
6586 var_other
= var_old_child
;
6588 { /* Inline kernel#Object#is_same_instance (var,var_other) on <var:TKwbreak> */
6589 var6
= var
== var_other
;
6602 /* <var_new_child:nullable ANode> isa TKwbreak */
6603 cltype
= type_parser_nodes__TKwbreak
.color
;
6604 idtype
= type_parser_nodes__TKwbreak
.id
;
6605 if(var_new_child
== NULL
) {
6608 if(cltype
>= var_new_child
->type
->table_size
) {
6611 var7
= var_new_child
->type
->type_table
[cltype
] == idtype
;
6614 if (unlikely(!var7
)) {
6615 var_class_name
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
6616 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwbreak", var_class_name
);
6617 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2305);
6621 parser_prod__ABreakExpr__n_kwbreak_61d(self
, var_new_child
); /* Direct call parser_prod#ABreakExpr#n_kwbreak= on <self:ABreakExpr>*/
6626 var8
= self
->attrs
[COLOR_parser_nodes__ALabelable___n_label
].val
; /* _n_label on <self:ABreakExpr> */
6628 var9
= 0; /* <var_old_child:ANode> cannot be null */
6630 { /* Inline kernel#Object#== (var8,var_old_child) on <var8:nullable ALabel> */
6631 var_other
= var_old_child
;
6633 { /* Inline kernel#Object#is_same_instance (var8,var_other) on <var8:nullable ALabel(ALabel)> */
6634 var14
= var8
== var_other
;
6637 RET_LABEL13
:(void)0;
6642 RET_LABEL11
:(void)0;
6647 /* <var_new_child:nullable ANode> isa nullable ALabel */
6648 cltype16
= type_nullable_parser_nodes__ALabel
.color
;
6649 idtype17
= type_nullable_parser_nodes__ALabel
.id
;
6650 if(var_new_child
== NULL
) {
6653 if(cltype16
>= var_new_child
->type
->table_size
) {
6656 var15
= var_new_child
->type
->type_table
[cltype16
] == idtype17
;
6659 if (unlikely(!var15
)) {
6660 var_class_name18
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
6661 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable ALabel", var_class_name18
);
6662 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2309);
6666 parser_prod__ABreakExpr__n_label_61d(self
, var_new_child
); /* Direct call parser_prod#ABreakExpr#n_label= on <self:ABreakExpr>*/
6673 /* method parser_prod#ABreakExpr#replace_child for (self: Object, ANode, nullable ANode) */
6674 void VIRTUAL_parser_prod__ABreakExpr__replace_child(val
* self
, val
* p0
, val
* p1
) {
6675 parser_prod__ABreakExpr__replace_child(self
, p0
, p1
); /* Direct call parser_prod#ABreakExpr#replace_child on <self:Object(ABreakExpr)>*/
6678 /* method parser_prod#ABreakExpr#n_kwbreak= for (self: ABreakExpr, TKwbreak) */
6679 void parser_prod__ABreakExpr__n_kwbreak_61d(val
* self
, val
* p0
) {
6680 val
* var_node
/* var node: TKwbreak */;
6682 self
->attrs
[COLOR_parser_nodes__ABreakExpr___n_kwbreak
].val
= var_node
; /* _n_kwbreak on <self:ABreakExpr> */
6684 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:TKwbreak> */
6685 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:TKwbreak> */
6691 /* method parser_prod#ABreakExpr#n_kwbreak= for (self: Object, TKwbreak) */
6692 void VIRTUAL_parser_prod__ABreakExpr__n_kwbreak_61d(val
* self
, val
* p0
) {
6693 parser_prod__ABreakExpr__n_kwbreak_61d(self
, p0
); /* Direct call parser_prod#ABreakExpr#n_kwbreak= on <self:Object(ABreakExpr)>*/
6696 /* method parser_prod#ABreakExpr#n_label= for (self: ABreakExpr, nullable ALabel) */
6697 void parser_prod__ABreakExpr__n_label_61d(val
* self
, val
* p0
) {
6698 val
* var_node
/* var node: nullable ALabel */;
6699 val
* var
/* : null */;
6700 short int var1
/* : Bool */;
6701 short int var2
/* : Bool */;
6702 val
* var_other
/* var other: nullable Object */;
6703 short int var4
/* : Bool */;
6704 short int var5
/* : Bool */;
6705 short int var6
/* : Bool */;
6707 self
->attrs
[COLOR_parser_nodes__ALabelable___n_label
].val
= var_node
; /* _n_label on <self:ABreakExpr> */
6709 if (var_node
== NULL
) {
6710 var1
= 0; /* is null */
6712 var1
= 1; /* arg is null and recv is not */
6715 { /* Inline kernel#Object#!= (var_node,var) on <var_node:nullable ALabel> */
6718 var5
= ((short int (*)(val
*, val
*))(var_node
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_node
, var_other
) /* == on <var_node:nullable ALabel(ALabel)>*/;
6730 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:nullable ALabel(ALabel)> */
6731 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:nullable ALabel(ALabel)> */
6739 /* method parser_prod#ABreakExpr#n_label= for (self: Object, nullable ALabel) */
6740 void VIRTUAL_parser_prod__ABreakExpr__n_label_61d(val
* self
, val
* p0
) {
6741 parser_prod__ABreakExpr__n_label_61d(self
, p0
); /* Direct call parser_prod#ABreakExpr#n_label= on <self:Object(ABreakExpr)>*/
6744 /* method parser_prod#ABreakExpr#visit_all for (self: ABreakExpr, Visitor) */
6745 void parser_prod__ABreakExpr__visit_all(val
* self
, val
* p0
) {
6746 val
* var_v
/* var v: Visitor */;
6747 val
* var
/* : TKwbreak */;
6748 val
* var1
/* : nullable ALabel */;
6750 var
= self
->attrs
[COLOR_parser_nodes__ABreakExpr___n_kwbreak
].val
; /* _n_kwbreak on <self:ABreakExpr> */
6751 if (unlikely(var
== NULL
)) {
6752 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwbreak");
6753 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2328);
6757 parser_nodes__Visitor__enter_visit(var_v
, var
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
6759 var1
= self
->attrs
[COLOR_parser_nodes__ALabelable___n_label
].val
; /* _n_label on <self:ABreakExpr> */
6761 parser_nodes__Visitor__enter_visit(var_v
, var1
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
6765 /* method parser_prod#ABreakExpr#visit_all for (self: Object, Visitor) */
6766 void VIRTUAL_parser_prod__ABreakExpr__visit_all(val
* self
, val
* p0
) {
6767 parser_prod__ABreakExpr__visit_all(self
, p0
); /* Direct call parser_prod#ABreakExpr#visit_all on <self:Object(ABreakExpr)>*/
6770 /* method parser_prod#AAbortExpr#init_aabortexpr for (self: AAbortExpr, nullable TKwabort) */
6771 void parser_prod__AAbortExpr__init_aabortexpr(val
* self
, val
* p0
) {
6772 val
* var_n_kwabort
/* var n_kwabort: nullable TKwabort */;
6774 if (unlikely(var_n_kwabort
== NULL
)) {
6775 PRINT_ERROR("Runtime error: %s", "Cast failed");
6776 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2337);
6779 self
->attrs
[COLOR_parser_nodes__AAbortExpr___n_kwabort
].val
= var_n_kwabort
; /* _n_kwabort on <self:AAbortExpr> */
6780 if (var_n_kwabort
== NULL
) {
6781 PRINT_ERROR("Runtime error: %s", "Receiver is null");
6782 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2338);
6785 { /* Inline parser_nodes#ANode#parent= (var_n_kwabort,self) on <var_n_kwabort:nullable TKwabort> */
6786 if (unlikely(var_n_kwabort
== NULL
)) {
6787 PRINT_ERROR("Runtime error: %s", "Receiver is null");
6788 PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36);
6791 var_n_kwabort
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_kwabort:nullable TKwabort> */
6797 /* method parser_prod#AAbortExpr#init_aabortexpr for (self: Object, nullable TKwabort) */
6798 void VIRTUAL_parser_prod__AAbortExpr__init_aabortexpr(val
* self
, val
* p0
) {
6799 parser_prod__AAbortExpr__init_aabortexpr(self
, p0
); /* Direct call parser_prod#AAbortExpr#init_aabortexpr on <self:Object(AAbortExpr)>*/
6802 /* method parser_prod#AAbortExpr#replace_child for (self: AAbortExpr, ANode, nullable ANode) */
6803 void parser_prod__AAbortExpr__replace_child(val
* self
, val
* p0
, val
* p1
) {
6804 val
* var_old_child
/* var old_child: ANode */;
6805 val
* var_new_child
/* var new_child: nullable ANode */;
6806 val
* var
/* : TKwabort */;
6807 short int var1
/* : Bool */;
6808 short int var2
/* : Bool */;
6809 val
* var_other
/* var other: nullable Object */;
6810 short int var4
/* : Bool */;
6811 short int var6
/* : Bool */;
6812 short int var7
/* : Bool */;
6815 const char* var_class_name
;
6818 var
= self
->attrs
[COLOR_parser_nodes__AAbortExpr___n_kwabort
].val
; /* _n_kwabort on <self:AAbortExpr> */
6819 if (unlikely(var
== NULL
)) {
6820 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwabort");
6821 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2343);
6825 { /* Inline kernel#Object#== (var,var_old_child) on <var:TKwabort> */
6826 var_other
= var_old_child
;
6828 { /* Inline kernel#Object#is_same_instance (var,var_other) on <var:TKwabort> */
6829 var6
= var
== var_other
;
6842 /* <var_new_child:nullable ANode> isa TKwabort */
6843 cltype
= type_parser_nodes__TKwabort
.color
;
6844 idtype
= type_parser_nodes__TKwabort
.id
;
6845 if(var_new_child
== NULL
) {
6848 if(cltype
>= var_new_child
->type
->table_size
) {
6851 var7
= var_new_child
->type
->type_table
[cltype
] == idtype
;
6854 if (unlikely(!var7
)) {
6855 var_class_name
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
6856 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwabort", var_class_name
);
6857 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2344);
6861 parser_prod__AAbortExpr__n_kwabort_61d(self
, var_new_child
); /* Direct call parser_prod#AAbortExpr#n_kwabort= on <self:AAbortExpr>*/
6868 /* method parser_prod#AAbortExpr#replace_child for (self: Object, ANode, nullable ANode) */
6869 void VIRTUAL_parser_prod__AAbortExpr__replace_child(val
* self
, val
* p0
, val
* p1
) {
6870 parser_prod__AAbortExpr__replace_child(self
, p0
, p1
); /* Direct call parser_prod#AAbortExpr#replace_child on <self:Object(AAbortExpr)>*/
6873 /* method parser_prod#AAbortExpr#n_kwabort= for (self: AAbortExpr, TKwabort) */
6874 void parser_prod__AAbortExpr__n_kwabort_61d(val
* self
, val
* p0
) {
6875 val
* var_node
/* var node: TKwabort */;
6877 self
->attrs
[COLOR_parser_nodes__AAbortExpr___n_kwabort
].val
= var_node
; /* _n_kwabort on <self:AAbortExpr> */
6879 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:TKwabort> */
6880 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:TKwabort> */
6886 /* method parser_prod#AAbortExpr#n_kwabort= for (self: Object, TKwabort) */
6887 void VIRTUAL_parser_prod__AAbortExpr__n_kwabort_61d(val
* self
, val
* p0
) {
6888 parser_prod__AAbortExpr__n_kwabort_61d(self
, p0
); /* Direct call parser_prod#AAbortExpr#n_kwabort= on <self:Object(AAbortExpr)>*/
6891 /* method parser_prod#AAbortExpr#visit_all for (self: AAbortExpr, Visitor) */
6892 void parser_prod__AAbortExpr__visit_all(val
* self
, val
* p0
) {
6893 val
* var_v
/* var v: Visitor */;
6894 val
* var
/* : TKwabort */;
6896 var
= self
->attrs
[COLOR_parser_nodes__AAbortExpr___n_kwabort
].val
; /* _n_kwabort on <self:AAbortExpr> */
6897 if (unlikely(var
== NULL
)) {
6898 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwabort");
6899 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2358);
6903 parser_nodes__Visitor__enter_visit(var_v
, var
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
6907 /* method parser_prod#AAbortExpr#visit_all for (self: Object, Visitor) */
6908 void VIRTUAL_parser_prod__AAbortExpr__visit_all(val
* self
, val
* p0
) {
6909 parser_prod__AAbortExpr__visit_all(self
, p0
); /* Direct call parser_prod#AAbortExpr#visit_all on <self:Object(AAbortExpr)>*/
6912 /* method parser_prod#AContinueExpr#init_acontinueexpr for (self: AContinueExpr, nullable TKwcontinue, nullable ALabel) */
6913 void parser_prod__AContinueExpr__init_acontinueexpr(val
* self
, val
* p0
, val
* p1
) {
6914 val
* var_n_kwcontinue
/* var n_kwcontinue: nullable TKwcontinue */;
6915 val
* var_n_label
/* var n_label: nullable ALabel */;
6916 val
* var
/* : null */;
6917 short int var1
/* : Bool */;
6918 short int var2
/* : Bool */;
6919 val
* var_other
/* var other: nullable Object */;
6920 short int var4
/* : Bool */;
6921 short int var5
/* : Bool */;
6922 short int var6
/* : Bool */;
6923 val
* var8
/* : null */;
6924 short int var9
/* : Bool */;
6925 short int var10
/* : Bool */;
6926 short int var12
/* : Bool */;
6927 short int var13
/* : Bool */;
6928 short int var14
/* : Bool */;
6929 var_n_kwcontinue
= p0
;
6931 self
->attrs
[COLOR_parser_nodes__AContinueExpr___n_kwcontinue
].val
= var_n_kwcontinue
; /* _n_kwcontinue on <self:AContinueExpr> */
6933 if (var_n_kwcontinue
== NULL
) {
6934 var1
= 0; /* is null */
6936 var1
= 1; /* arg is null and recv is not */
6939 { /* Inline kernel#Object#!= (var_n_kwcontinue,var) on <var_n_kwcontinue:nullable TKwcontinue> */
6942 var5
= ((short int (*)(val
*, val
*))(var_n_kwcontinue
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_n_kwcontinue
, var_other
) /* == on <var_n_kwcontinue:nullable TKwcontinue(TKwcontinue)>*/;
6954 { /* Inline parser_nodes#ANode#parent= (var_n_kwcontinue,self) on <var_n_kwcontinue:nullable TKwcontinue(TKwcontinue)> */
6955 var_n_kwcontinue
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_kwcontinue:nullable TKwcontinue(TKwcontinue)> */
6961 self
->attrs
[COLOR_parser_nodes__ALabelable___n_label
].val
= var_n_label
; /* _n_label on <self:AContinueExpr> */
6963 if (var_n_label
== NULL
) {
6964 var9
= 0; /* is null */
6966 var9
= 1; /* arg is null and recv is not */
6969 { /* Inline kernel#Object#!= (var_n_label,var8) on <var_n_label:nullable ALabel> */
6972 var13
= ((short int (*)(val
*, val
*))(var_n_label
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_n_label
, var_other
) /* == on <var_n_label:nullable ALabel(ALabel)>*/;
6978 RET_LABEL11
:(void)0;
6984 { /* Inline parser_nodes#ANode#parent= (var_n_label,self) on <var_n_label:nullable ALabel(ALabel)> */
6985 var_n_label
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_label:nullable ALabel(ALabel)> */
6986 RET_LABEL15
:(void)0;
6993 /* method parser_prod#AContinueExpr#init_acontinueexpr for (self: Object, nullable TKwcontinue, nullable ALabel) */
6994 void VIRTUAL_parser_prod__AContinueExpr__init_acontinueexpr(val
* self
, val
* p0
, val
* p1
) {
6995 parser_prod__AContinueExpr__init_acontinueexpr(self
, p0
, p1
); /* Direct call parser_prod#AContinueExpr#init_acontinueexpr on <self:Object(AContinueExpr)>*/
6998 /* method parser_prod#AContinueExpr#replace_child for (self: AContinueExpr, ANode, nullable ANode) */
6999 void parser_prod__AContinueExpr__replace_child(val
* self
, val
* p0
, val
* p1
) {
7000 val
* var_old_child
/* var old_child: ANode */;
7001 val
* var_new_child
/* var new_child: nullable ANode */;
7002 val
* var
/* : nullable TKwcontinue */;
7003 short int var1
/* : Bool */;
7004 short int var2
/* : Bool */;
7005 val
* var_other
/* var other: nullable Object */;
7006 short int var4
/* : Bool */;
7007 short int var6
/* : Bool */;
7008 short int var7
/* : Bool */;
7011 const char* var_class_name
;
7012 val
* var8
/* : nullable ALabel */;
7013 short int var9
/* : Bool */;
7014 short int var10
/* : Bool */;
7015 short int var12
/* : Bool */;
7016 short int var14
/* : Bool */;
7017 short int var15
/* : Bool */;
7020 const char* var_class_name18
;
7023 var
= self
->attrs
[COLOR_parser_nodes__AContinueExpr___n_kwcontinue
].val
; /* _n_kwcontinue on <self:AContinueExpr> */
7025 var1
= 0; /* <var_old_child:ANode> cannot be null */
7027 { /* Inline kernel#Object#== (var,var_old_child) on <var:nullable TKwcontinue> */
7028 var_other
= var_old_child
;
7030 { /* Inline kernel#Object#is_same_instance (var,var_other) on <var:nullable TKwcontinue(TKwcontinue)> */
7031 var6
= var
== var_other
;
7044 /* <var_new_child:nullable ANode> isa nullable TKwcontinue */
7045 cltype
= type_nullable_parser_nodes__TKwcontinue
.color
;
7046 idtype
= type_nullable_parser_nodes__TKwcontinue
.id
;
7047 if(var_new_child
== NULL
) {
7050 if(cltype
>= var_new_child
->type
->table_size
) {
7053 var7
= var_new_child
->type
->type_table
[cltype
] == idtype
;
7056 if (unlikely(!var7
)) {
7057 var_class_name
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
7058 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable TKwcontinue", var_class_name
);
7059 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2376);
7063 parser_prod__AContinueExpr__n_kwcontinue_61d(self
, var_new_child
); /* Direct call parser_prod#AContinueExpr#n_kwcontinue= on <self:AContinueExpr>*/
7068 var8
= self
->attrs
[COLOR_parser_nodes__ALabelable___n_label
].val
; /* _n_label on <self:AContinueExpr> */
7070 var9
= 0; /* <var_old_child:ANode> cannot be null */
7072 { /* Inline kernel#Object#== (var8,var_old_child) on <var8:nullable ALabel> */
7073 var_other
= var_old_child
;
7075 { /* Inline kernel#Object#is_same_instance (var8,var_other) on <var8:nullable ALabel(ALabel)> */
7076 var14
= var8
== var_other
;
7079 RET_LABEL13
:(void)0;
7084 RET_LABEL11
:(void)0;
7089 /* <var_new_child:nullable ANode> isa nullable ALabel */
7090 cltype16
= type_nullable_parser_nodes__ALabel
.color
;
7091 idtype17
= type_nullable_parser_nodes__ALabel
.id
;
7092 if(var_new_child
== NULL
) {
7095 if(cltype16
>= var_new_child
->type
->table_size
) {
7098 var15
= var_new_child
->type
->type_table
[cltype16
] == idtype17
;
7101 if (unlikely(!var15
)) {
7102 var_class_name18
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
7103 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable ALabel", var_class_name18
);
7104 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2380);
7108 parser_prod__AContinueExpr__n_label_61d(self
, var_new_child
); /* Direct call parser_prod#AContinueExpr#n_label= on <self:AContinueExpr>*/
7115 /* method parser_prod#AContinueExpr#replace_child for (self: Object, ANode, nullable ANode) */
7116 void VIRTUAL_parser_prod__AContinueExpr__replace_child(val
* self
, val
* p0
, val
* p1
) {
7117 parser_prod__AContinueExpr__replace_child(self
, p0
, p1
); /* Direct call parser_prod#AContinueExpr#replace_child on <self:Object(AContinueExpr)>*/
7120 /* method parser_prod#AContinueExpr#n_kwcontinue= for (self: AContinueExpr, nullable TKwcontinue) */
7121 void parser_prod__AContinueExpr__n_kwcontinue_61d(val
* self
, val
* p0
) {
7122 val
* var_node
/* var node: nullable TKwcontinue */;
7123 val
* var
/* : null */;
7124 short int var1
/* : Bool */;
7125 short int var2
/* : Bool */;
7126 val
* var_other
/* var other: nullable Object */;
7127 short int var4
/* : Bool */;
7128 short int var5
/* : Bool */;
7129 short int var6
/* : Bool */;
7131 self
->attrs
[COLOR_parser_nodes__AContinueExpr___n_kwcontinue
].val
= var_node
; /* _n_kwcontinue on <self:AContinueExpr> */
7133 if (var_node
== NULL
) {
7134 var1
= 0; /* is null */
7136 var1
= 1; /* arg is null and recv is not */
7139 { /* Inline kernel#Object#!= (var_node,var) on <var_node:nullable TKwcontinue> */
7142 var5
= ((short int (*)(val
*, val
*))(var_node
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_node
, var_other
) /* == on <var_node:nullable TKwcontinue(TKwcontinue)>*/;
7154 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:nullable TKwcontinue(TKwcontinue)> */
7155 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:nullable TKwcontinue(TKwcontinue)> */
7163 /* method parser_prod#AContinueExpr#n_kwcontinue= for (self: Object, nullable TKwcontinue) */
7164 void VIRTUAL_parser_prod__AContinueExpr__n_kwcontinue_61d(val
* self
, val
* p0
) {
7165 parser_prod__AContinueExpr__n_kwcontinue_61d(self
, p0
); /* Direct call parser_prod#AContinueExpr#n_kwcontinue= on <self:Object(AContinueExpr)>*/
7168 /* method parser_prod#AContinueExpr#n_label= for (self: AContinueExpr, nullable ALabel) */
7169 void parser_prod__AContinueExpr__n_label_61d(val
* self
, val
* p0
) {
7170 val
* var_node
/* var node: nullable ALabel */;
7171 val
* var
/* : null */;
7172 short int var1
/* : Bool */;
7173 short int var2
/* : Bool */;
7174 val
* var_other
/* var other: nullable Object */;
7175 short int var4
/* : Bool */;
7176 short int var5
/* : Bool */;
7177 short int var6
/* : Bool */;
7179 self
->attrs
[COLOR_parser_nodes__ALabelable___n_label
].val
= var_node
; /* _n_label on <self:AContinueExpr> */
7181 if (var_node
== NULL
) {
7182 var1
= 0; /* is null */
7184 var1
= 1; /* arg is null and recv is not */
7187 { /* Inline kernel#Object#!= (var_node,var) on <var_node:nullable ALabel> */
7190 var5
= ((short int (*)(val
*, val
*))(var_node
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_node
, var_other
) /* == on <var_node:nullable ALabel(ALabel)>*/;
7202 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:nullable ALabel(ALabel)> */
7203 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:nullable ALabel(ALabel)> */
7211 /* method parser_prod#AContinueExpr#n_label= for (self: Object, nullable ALabel) */
7212 void VIRTUAL_parser_prod__AContinueExpr__n_label_61d(val
* self
, val
* p0
) {
7213 parser_prod__AContinueExpr__n_label_61d(self
, p0
); /* Direct call parser_prod#AContinueExpr#n_label= on <self:Object(AContinueExpr)>*/
7216 /* method parser_prod#AContinueExpr#visit_all for (self: AContinueExpr, Visitor) */
7217 void parser_prod__AContinueExpr__visit_all(val
* self
, val
* p0
) {
7218 val
* var_v
/* var v: Visitor */;
7219 val
* var
/* : nullable TKwcontinue */;
7220 val
* var1
/* : nullable ALabel */;
7222 var
= self
->attrs
[COLOR_parser_nodes__AContinueExpr___n_kwcontinue
].val
; /* _n_kwcontinue on <self:AContinueExpr> */
7224 parser_nodes__Visitor__enter_visit(var_v
, var
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
7226 var1
= self
->attrs
[COLOR_parser_nodes__ALabelable___n_label
].val
; /* _n_label on <self:AContinueExpr> */
7228 parser_nodes__Visitor__enter_visit(var_v
, var1
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
7232 /* method parser_prod#AContinueExpr#visit_all for (self: Object, Visitor) */
7233 void VIRTUAL_parser_prod__AContinueExpr__visit_all(val
* self
, val
* p0
) {
7234 parser_prod__AContinueExpr__visit_all(self
, p0
); /* Direct call parser_prod#AContinueExpr#visit_all on <self:Object(AContinueExpr)>*/
7237 /* method parser_prod#ADoExpr#init_adoexpr for (self: ADoExpr, nullable TKwdo, nullable AExpr, nullable ALabel) */
7238 void parser_prod__ADoExpr__init_adoexpr(val
* self
, val
* p0
, val
* p1
, val
* p2
) {
7239 val
* var_n_kwdo
/* var n_kwdo: nullable TKwdo */;
7240 val
* var_n_block
/* var n_block: nullable AExpr */;
7241 val
* var_n_label
/* var n_label: nullable ALabel */;
7242 val
* var
/* : null */;
7243 short int var2
/* : Bool */;
7244 short int var3
/* : Bool */;
7245 val
* var_other
/* var other: nullable Object */;
7246 short int var5
/* : Bool */;
7247 short int var6
/* : Bool */;
7248 short int var7
/* : Bool */;
7249 val
* var9
/* : null */;
7250 short int var10
/* : Bool */;
7251 short int var11
/* : Bool */;
7252 short int var13
/* : Bool */;
7253 short int var14
/* : Bool */;
7254 short int var15
/* : Bool */;
7258 if (unlikely(var_n_kwdo
== NULL
)) {
7259 PRINT_ERROR("Runtime error: %s", "Cast failed");
7260 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2410);
7263 self
->attrs
[COLOR_parser_nodes__ADoExpr___n_kwdo
].val
= var_n_kwdo
; /* _n_kwdo on <self:ADoExpr> */
7264 if (var_n_kwdo
== NULL
) {
7265 PRINT_ERROR("Runtime error: %s", "Receiver is null");
7266 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2411);
7269 { /* Inline parser_nodes#ANode#parent= (var_n_kwdo,self) on <var_n_kwdo:nullable TKwdo> */
7270 if (unlikely(var_n_kwdo
== NULL
)) {
7271 PRINT_ERROR("Runtime error: %s", "Receiver is null");
7272 PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36);
7275 var_n_kwdo
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_kwdo:nullable TKwdo> */
7279 self
->attrs
[COLOR_parser_nodes__ADoExpr___n_block
].val
= var_n_block
; /* _n_block on <self:ADoExpr> */
7281 if (var_n_block
== NULL
) {
7282 var2
= 0; /* is null */
7284 var2
= 1; /* arg is null and recv is not */
7287 { /* Inline kernel#Object#!= (var_n_block,var) on <var_n_block:nullable AExpr> */
7290 var6
= ((short int (*)(val
*, val
*))(var_n_block
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_n_block
, var_other
) /* == on <var_n_block:nullable AExpr(AExpr)>*/;
7302 { /* Inline parser_nodes#ANode#parent= (var_n_block,self) on <var_n_block:nullable AExpr(AExpr)> */
7303 var_n_block
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_block:nullable AExpr(AExpr)> */
7309 self
->attrs
[COLOR_parser_nodes__ALabelable___n_label
].val
= var_n_label
; /* _n_label on <self:ADoExpr> */
7311 if (var_n_label
== NULL
) {
7312 var10
= 0; /* is null */
7314 var10
= 1; /* arg is null and recv is not */
7317 { /* Inline kernel#Object#!= (var_n_label,var9) on <var_n_label:nullable ALabel> */
7320 var14
= ((short int (*)(val
*, val
*))(var_n_label
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_n_label
, var_other
) /* == on <var_n_label:nullable ALabel(ALabel)>*/;
7326 RET_LABEL12
:(void)0;
7332 { /* Inline parser_nodes#ANode#parent= (var_n_label,self) on <var_n_label:nullable ALabel(ALabel)> */
7333 var_n_label
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_label:nullable ALabel(ALabel)> */
7334 RET_LABEL16
:(void)0;
7341 /* method parser_prod#ADoExpr#init_adoexpr for (self: Object, nullable TKwdo, nullable AExpr, nullable ALabel) */
7342 void VIRTUAL_parser_prod__ADoExpr__init_adoexpr(val
* self
, val
* p0
, val
* p1
, val
* p2
) {
7343 parser_prod__ADoExpr__init_adoexpr(self
, p0
, p1
, p2
); /* Direct call parser_prod#ADoExpr#init_adoexpr on <self:Object(ADoExpr)>*/
7346 /* method parser_prod#ADoExpr#replace_child for (self: ADoExpr, ANode, nullable ANode) */
7347 void parser_prod__ADoExpr__replace_child(val
* self
, val
* p0
, val
* p1
) {
7348 val
* var_old_child
/* var old_child: ANode */;
7349 val
* var_new_child
/* var new_child: nullable ANode */;
7350 val
* var
/* : TKwdo */;
7351 short int var1
/* : Bool */;
7352 short int var2
/* : Bool */;
7353 val
* var_other
/* var other: nullable Object */;
7354 short int var4
/* : Bool */;
7355 short int var6
/* : Bool */;
7356 short int var7
/* : Bool */;
7359 const char* var_class_name
;
7360 val
* var8
/* : nullable AExpr */;
7361 short int var9
/* : Bool */;
7362 short int var10
/* : Bool */;
7363 short int var12
/* : Bool */;
7364 short int var14
/* : Bool */;
7365 short int var15
/* : Bool */;
7368 const char* var_class_name18
;
7369 val
* var19
/* : nullable ALabel */;
7370 short int var20
/* : Bool */;
7371 short int var21
/* : Bool */;
7372 short int var23
/* : Bool */;
7373 short int var25
/* : Bool */;
7374 short int var26
/* : Bool */;
7377 const char* var_class_name29
;
7380 var
= self
->attrs
[COLOR_parser_nodes__ADoExpr___n_kwdo
].val
; /* _n_kwdo on <self:ADoExpr> */
7381 if (unlikely(var
== NULL
)) {
7382 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwdo");
7383 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2420);
7387 { /* Inline kernel#Object#== (var,var_old_child) on <var:TKwdo> */
7388 var_other
= var_old_child
;
7390 { /* Inline kernel#Object#is_same_instance (var,var_other) on <var:TKwdo> */
7391 var6
= var
== var_other
;
7404 /* <var_new_child:nullable ANode> isa TKwdo */
7405 cltype
= type_parser_nodes__TKwdo
.color
;
7406 idtype
= type_parser_nodes__TKwdo
.id
;
7407 if(var_new_child
== NULL
) {
7410 if(cltype
>= var_new_child
->type
->table_size
) {
7413 var7
= var_new_child
->type
->type_table
[cltype
] == idtype
;
7416 if (unlikely(!var7
)) {
7417 var_class_name
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
7418 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwdo", var_class_name
);
7419 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2421);
7423 parser_prod__ADoExpr__n_kwdo_61d(self
, var_new_child
); /* Direct call parser_prod#ADoExpr#n_kwdo= on <self:ADoExpr>*/
7428 var8
= self
->attrs
[COLOR_parser_nodes__ADoExpr___n_block
].val
; /* _n_block on <self:ADoExpr> */
7430 var9
= 0; /* <var_old_child:ANode> cannot be null */
7432 { /* Inline kernel#Object#== (var8,var_old_child) on <var8:nullable AExpr> */
7433 var_other
= var_old_child
;
7435 { /* Inline kernel#Object#is_same_instance (var8,var_other) on <var8:nullable AExpr(AExpr)> */
7436 var14
= var8
== var_other
;
7439 RET_LABEL13
:(void)0;
7444 RET_LABEL11
:(void)0;
7449 /* <var_new_child:nullable ANode> isa nullable AExpr */
7450 cltype16
= type_nullable_parser_nodes__AExpr
.color
;
7451 idtype17
= type_nullable_parser_nodes__AExpr
.id
;
7452 if(var_new_child
== NULL
) {
7455 if(cltype16
>= var_new_child
->type
->table_size
) {
7458 var15
= var_new_child
->type
->type_table
[cltype16
] == idtype17
;
7461 if (unlikely(!var15
)) {
7462 var_class_name18
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
7463 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable AExpr", var_class_name18
);
7464 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2425);
7468 parser_prod__ADoExpr__n_block_61d(self
, var_new_child
); /* Direct call parser_prod#ADoExpr#n_block= on <self:ADoExpr>*/
7473 var19
= self
->attrs
[COLOR_parser_nodes__ALabelable___n_label
].val
; /* _n_label on <self:ADoExpr> */
7474 if (var19
== NULL
) {
7475 var20
= 0; /* <var_old_child:ANode> cannot be null */
7477 { /* Inline kernel#Object#== (var19,var_old_child) on <var19:nullable ALabel> */
7478 var_other
= var_old_child
;
7480 { /* Inline kernel#Object#is_same_instance (var19,var_other) on <var19:nullable ALabel(ALabel)> */
7481 var25
= var19
== var_other
;
7484 RET_LABEL24
:(void)0;
7489 RET_LABEL22
:(void)0;
7494 /* <var_new_child:nullable ANode> isa nullable ALabel */
7495 cltype27
= type_nullable_parser_nodes__ALabel
.color
;
7496 idtype28
= type_nullable_parser_nodes__ALabel
.id
;
7497 if(var_new_child
== NULL
) {
7500 if(cltype27
>= var_new_child
->type
->table_size
) {
7503 var26
= var_new_child
->type
->type_table
[cltype27
] == idtype28
;
7506 if (unlikely(!var26
)) {
7507 var_class_name29
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
7508 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable ALabel", var_class_name29
);
7509 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2429);
7513 parser_prod__ADoExpr__n_label_61d(self
, var_new_child
); /* Direct call parser_prod#ADoExpr#n_label= on <self:ADoExpr>*/
7520 /* method parser_prod#ADoExpr#replace_child for (self: Object, ANode, nullable ANode) */
7521 void VIRTUAL_parser_prod__ADoExpr__replace_child(val
* self
, val
* p0
, val
* p1
) {
7522 parser_prod__ADoExpr__replace_child(self
, p0
, p1
); /* Direct call parser_prod#ADoExpr#replace_child on <self:Object(ADoExpr)>*/
7525 /* method parser_prod#ADoExpr#n_kwdo= for (self: ADoExpr, TKwdo) */
7526 void parser_prod__ADoExpr__n_kwdo_61d(val
* self
, val
* p0
) {
7527 val
* var_node
/* var node: TKwdo */;
7529 self
->attrs
[COLOR_parser_nodes__ADoExpr___n_kwdo
].val
= var_node
; /* _n_kwdo on <self:ADoExpr> */
7531 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:TKwdo> */
7532 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:TKwdo> */
7538 /* method parser_prod#ADoExpr#n_kwdo= for (self: Object, TKwdo) */
7539 void VIRTUAL_parser_prod__ADoExpr__n_kwdo_61d(val
* self
, val
* p0
) {
7540 parser_prod__ADoExpr__n_kwdo_61d(self
, p0
); /* Direct call parser_prod#ADoExpr#n_kwdo= on <self:Object(ADoExpr)>*/
7543 /* method parser_prod#ADoExpr#n_block= for (self: ADoExpr, nullable AExpr) */
7544 void parser_prod__ADoExpr__n_block_61d(val
* self
, val
* p0
) {
7545 val
* var_node
/* var node: nullable AExpr */;
7546 val
* var
/* : null */;
7547 short int var1
/* : Bool */;
7548 short int var2
/* : Bool */;
7549 val
* var_other
/* var other: nullable Object */;
7550 short int var4
/* : Bool */;
7551 short int var5
/* : Bool */;
7552 short int var6
/* : Bool */;
7554 self
->attrs
[COLOR_parser_nodes__ADoExpr___n_block
].val
= var_node
; /* _n_block on <self:ADoExpr> */
7556 if (var_node
== NULL
) {
7557 var1
= 0; /* is null */
7559 var1
= 1; /* arg is null and recv is not */
7562 { /* Inline kernel#Object#!= (var_node,var) on <var_node:nullable AExpr> */
7565 var5
= ((short int (*)(val
*, val
*))(var_node
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_node
, var_other
) /* == on <var_node:nullable AExpr(AExpr)>*/;
7577 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:nullable AExpr(AExpr)> */
7578 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:nullable AExpr(AExpr)> */
7586 /* method parser_prod#ADoExpr#n_block= for (self: Object, nullable AExpr) */
7587 void VIRTUAL_parser_prod__ADoExpr__n_block_61d(val
* self
, val
* p0
) {
7588 parser_prod__ADoExpr__n_block_61d(self
, p0
); /* Direct call parser_prod#ADoExpr#n_block= on <self:Object(ADoExpr)>*/
7591 /* method parser_prod#ADoExpr#n_label= for (self: ADoExpr, nullable ALabel) */
7592 void parser_prod__ADoExpr__n_label_61d(val
* self
, val
* p0
) {
7593 val
* var_node
/* var node: nullable ALabel */;
7594 val
* var
/* : null */;
7595 short int var1
/* : Bool */;
7596 short int var2
/* : Bool */;
7597 val
* var_other
/* var other: nullable Object */;
7598 short int var4
/* : Bool */;
7599 short int var5
/* : Bool */;
7600 short int var6
/* : Bool */;
7602 self
->attrs
[COLOR_parser_nodes__ALabelable___n_label
].val
= var_node
; /* _n_label on <self:ADoExpr> */
7604 if (var_node
== NULL
) {
7605 var1
= 0; /* is null */
7607 var1
= 1; /* arg is null and recv is not */
7610 { /* Inline kernel#Object#!= (var_node,var) on <var_node:nullable ALabel> */
7613 var5
= ((short int (*)(val
*, val
*))(var_node
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_node
, var_other
) /* == on <var_node:nullable ALabel(ALabel)>*/;
7625 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:nullable ALabel(ALabel)> */
7626 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:nullable ALabel(ALabel)> */
7634 /* method parser_prod#ADoExpr#n_label= for (self: Object, nullable ALabel) */
7635 void VIRTUAL_parser_prod__ADoExpr__n_label_61d(val
* self
, val
* p0
) {
7636 parser_prod__ADoExpr__n_label_61d(self
, p0
); /* Direct call parser_prod#ADoExpr#n_label= on <self:Object(ADoExpr)>*/
7639 /* method parser_prod#ADoExpr#visit_all for (self: ADoExpr, Visitor) */
7640 void parser_prod__ADoExpr__visit_all(val
* self
, val
* p0
) {
7641 val
* var_v
/* var v: Visitor */;
7642 val
* var
/* : TKwdo */;
7643 val
* var1
/* : nullable AExpr */;
7644 val
* var2
/* : nullable ALabel */;
7646 var
= self
->attrs
[COLOR_parser_nodes__ADoExpr___n_kwdo
].val
; /* _n_kwdo on <self:ADoExpr> */
7647 if (unlikely(var
== NULL
)) {
7648 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwdo");
7649 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2453);
7653 parser_nodes__Visitor__enter_visit(var_v
, var
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
7655 var1
= self
->attrs
[COLOR_parser_nodes__ADoExpr___n_block
].val
; /* _n_block on <self:ADoExpr> */
7657 parser_nodes__Visitor__enter_visit(var_v
, var1
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
7659 var2
= self
->attrs
[COLOR_parser_nodes__ALabelable___n_label
].val
; /* _n_label on <self:ADoExpr> */
7661 parser_nodes__Visitor__enter_visit(var_v
, var2
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
7665 /* method parser_prod#ADoExpr#visit_all for (self: Object, Visitor) */
7666 void VIRTUAL_parser_prod__ADoExpr__visit_all(val
* self
, val
* p0
) {
7667 parser_prod__ADoExpr__visit_all(self
, p0
); /* Direct call parser_prod#ADoExpr#visit_all on <self:Object(ADoExpr)>*/
7670 /* method parser_prod#AIfExpr#init_aifexpr for (self: AIfExpr, nullable TKwif, nullable AExpr, nullable AExpr, nullable AExpr) */
7671 void parser_prod__AIfExpr__init_aifexpr(val
* self
, val
* p0
, val
* p1
, val
* p2
, val
* p3
) {
7672 val
* var_n_kwif
/* var n_kwif: nullable TKwif */;
7673 val
* var_n_expr
/* var n_expr: nullable AExpr */;
7674 val
* var_n_then
/* var n_then: nullable AExpr */;
7675 val
* var_n_else
/* var n_else: nullable AExpr */;
7676 val
* var
/* : null */;
7677 short int var3
/* : Bool */;
7678 short int var4
/* : Bool */;
7679 val
* var_other
/* var other: nullable Object */;
7680 short int var6
/* : Bool */;
7681 short int var7
/* : Bool */;
7682 short int var8
/* : Bool */;
7683 val
* var10
/* : null */;
7684 short int var11
/* : Bool */;
7685 short int var12
/* : Bool */;
7686 short int var14
/* : Bool */;
7687 short int var15
/* : Bool */;
7688 short int var16
/* : Bool */;
7693 if (unlikely(var_n_kwif
== NULL
)) {
7694 PRINT_ERROR("Runtime error: %s", "Cast failed");
7695 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2466);
7698 self
->attrs
[COLOR_parser_nodes__AIfExpr___n_kwif
].val
= var_n_kwif
; /* _n_kwif on <self:AIfExpr> */
7699 if (var_n_kwif
== NULL
) {
7700 PRINT_ERROR("Runtime error: %s", "Receiver is null");
7701 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2467);
7704 { /* Inline parser_nodes#ANode#parent= (var_n_kwif,self) on <var_n_kwif:nullable TKwif> */
7705 if (unlikely(var_n_kwif
== NULL
)) {
7706 PRINT_ERROR("Runtime error: %s", "Receiver is null");
7707 PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36);
7710 var_n_kwif
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_kwif:nullable TKwif> */
7714 if (unlikely(var_n_expr
== NULL
)) {
7715 PRINT_ERROR("Runtime error: %s", "Cast failed");
7716 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2468);
7719 self
->attrs
[COLOR_parser_nodes__AIfExpr___n_expr
].val
= var_n_expr
; /* _n_expr on <self:AIfExpr> */
7720 if (var_n_expr
== NULL
) {
7721 PRINT_ERROR("Runtime error: %s", "Receiver is null");
7722 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2469);
7725 { /* Inline parser_nodes#ANode#parent= (var_n_expr,self) on <var_n_expr:nullable AExpr> */
7726 if (unlikely(var_n_expr
== NULL
)) {
7727 PRINT_ERROR("Runtime error: %s", "Receiver is null");
7728 PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36);
7731 var_n_expr
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_expr:nullable AExpr> */
7735 self
->attrs
[COLOR_parser_nodes__AIfExpr___n_then
].val
= var_n_then
; /* _n_then on <self:AIfExpr> */
7737 if (var_n_then
== NULL
) {
7738 var3
= 0; /* is null */
7740 var3
= 1; /* arg is null and recv is not */
7743 { /* Inline kernel#Object#!= (var_n_then,var) on <var_n_then:nullable AExpr> */
7746 var7
= ((short int (*)(val
*, val
*))(var_n_then
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_n_then
, var_other
) /* == on <var_n_then:nullable AExpr(AExpr)>*/;
7758 { /* Inline parser_nodes#ANode#parent= (var_n_then,self) on <var_n_then:nullable AExpr(AExpr)> */
7759 var_n_then
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_then:nullable AExpr(AExpr)> */
7765 self
->attrs
[COLOR_parser_nodes__AIfExpr___n_else
].val
= var_n_else
; /* _n_else on <self:AIfExpr> */
7767 if (var_n_else
== NULL
) {
7768 var11
= 0; /* is null */
7770 var11
= 1; /* arg is null and recv is not */
7773 { /* Inline kernel#Object#!= (var_n_else,var10) on <var_n_else:nullable AExpr> */
7776 var15
= ((short int (*)(val
*, val
*))(var_n_else
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_n_else
, var_other
) /* == on <var_n_else:nullable AExpr(AExpr)>*/;
7782 RET_LABEL13
:(void)0;
7788 { /* Inline parser_nodes#ANode#parent= (var_n_else,self) on <var_n_else:nullable AExpr(AExpr)> */
7789 var_n_else
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_else:nullable AExpr(AExpr)> */
7790 RET_LABEL17
:(void)0;
7797 /* method parser_prod#AIfExpr#init_aifexpr for (self: Object, nullable TKwif, nullable AExpr, nullable AExpr, nullable AExpr) */
7798 void VIRTUAL_parser_prod__AIfExpr__init_aifexpr(val
* self
, val
* p0
, val
* p1
, val
* p2
, val
* p3
) {
7799 parser_prod__AIfExpr__init_aifexpr(self
, p0
, p1
, p2
, p3
); /* Direct call parser_prod#AIfExpr#init_aifexpr on <self:Object(AIfExpr)>*/
7802 /* method parser_prod#AIfExpr#replace_child for (self: AIfExpr, ANode, nullable ANode) */
7803 void parser_prod__AIfExpr__replace_child(val
* self
, val
* p0
, val
* p1
) {
7804 val
* var_old_child
/* var old_child: ANode */;
7805 val
* var_new_child
/* var new_child: nullable ANode */;
7806 val
* var
/* : TKwif */;
7807 short int var1
/* : Bool */;
7808 short int var2
/* : Bool */;
7809 val
* var_other
/* var other: nullable Object */;
7810 short int var4
/* : Bool */;
7811 short int var6
/* : Bool */;
7812 short int var7
/* : Bool */;
7815 const char* var_class_name
;
7816 val
* var8
/* : AExpr */;
7817 short int var9
/* : Bool */;
7818 short int var10
/* : Bool */;
7819 short int var12
/* : Bool */;
7820 short int var14
/* : Bool */;
7821 short int var15
/* : Bool */;
7824 const char* var_class_name18
;
7825 val
* var19
/* : nullable AExpr */;
7826 short int var20
/* : Bool */;
7827 short int var21
/* : Bool */;
7828 short int var23
/* : Bool */;
7829 short int var25
/* : Bool */;
7830 short int var26
/* : Bool */;
7833 const char* var_class_name29
;
7834 val
* var30
/* : nullable AExpr */;
7835 short int var31
/* : Bool */;
7836 short int var32
/* : Bool */;
7837 short int var34
/* : Bool */;
7838 short int var36
/* : Bool */;
7839 short int var37
/* : Bool */;
7842 const char* var_class_name40
;
7845 var
= self
->attrs
[COLOR_parser_nodes__AIfExpr___n_kwif
].val
; /* _n_kwif on <self:AIfExpr> */
7846 if (unlikely(var
== NULL
)) {
7847 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwif");
7848 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2478);
7852 { /* Inline kernel#Object#== (var,var_old_child) on <var:TKwif> */
7853 var_other
= var_old_child
;
7855 { /* Inline kernel#Object#is_same_instance (var,var_other) on <var:TKwif> */
7856 var6
= var
== var_other
;
7869 /* <var_new_child:nullable ANode> isa TKwif */
7870 cltype
= type_parser_nodes__TKwif
.color
;
7871 idtype
= type_parser_nodes__TKwif
.id
;
7872 if(var_new_child
== NULL
) {
7875 if(cltype
>= var_new_child
->type
->table_size
) {
7878 var7
= var_new_child
->type
->type_table
[cltype
] == idtype
;
7881 if (unlikely(!var7
)) {
7882 var_class_name
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
7883 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwif", var_class_name
);
7884 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2479);
7888 parser_prod__AIfExpr__n_kwif_61d(self
, var_new_child
); /* Direct call parser_prod#AIfExpr#n_kwif= on <self:AIfExpr>*/
7893 var8
= self
->attrs
[COLOR_parser_nodes__AIfExpr___n_expr
].val
; /* _n_expr on <self:AIfExpr> */
7894 if (unlikely(var8
== NULL
)) {
7895 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
7896 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2482);
7900 { /* Inline kernel#Object#== (var8,var_old_child) on <var8:AExpr> */
7901 var_other
= var_old_child
;
7903 { /* Inline kernel#Object#is_same_instance (var8,var_other) on <var8:AExpr> */
7904 var14
= var8
== var_other
;
7907 RET_LABEL13
:(void)0;
7912 RET_LABEL11
:(void)0;
7917 /* <var_new_child:nullable ANode> isa AExpr */
7918 cltype16
= type_parser_nodes__AExpr
.color
;
7919 idtype17
= type_parser_nodes__AExpr
.id
;
7920 if(var_new_child
== NULL
) {
7923 if(cltype16
>= var_new_child
->type
->table_size
) {
7926 var15
= var_new_child
->type
->type_table
[cltype16
] == idtype17
;
7929 if (unlikely(!var15
)) {
7930 var_class_name18
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
7931 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name18
);
7932 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2483);
7936 parser_prod__AIfExpr__n_expr_61d(self
, var_new_child
); /* Direct call parser_prod#AIfExpr#n_expr= on <self:AIfExpr>*/
7941 var19
= self
->attrs
[COLOR_parser_nodes__AIfExpr___n_then
].val
; /* _n_then on <self:AIfExpr> */
7942 if (var19
== NULL
) {
7943 var20
= 0; /* <var_old_child:ANode> cannot be null */
7945 { /* Inline kernel#Object#== (var19,var_old_child) on <var19:nullable AExpr> */
7946 var_other
= var_old_child
;
7948 { /* Inline kernel#Object#is_same_instance (var19,var_other) on <var19:nullable AExpr(AExpr)> */
7949 var25
= var19
== var_other
;
7952 RET_LABEL24
:(void)0;
7957 RET_LABEL22
:(void)0;
7962 /* <var_new_child:nullable ANode> isa nullable AExpr */
7963 cltype27
= type_nullable_parser_nodes__AExpr
.color
;
7964 idtype28
= type_nullable_parser_nodes__AExpr
.id
;
7965 if(var_new_child
== NULL
) {
7968 if(cltype27
>= var_new_child
->type
->table_size
) {
7971 var26
= var_new_child
->type
->type_table
[cltype27
] == idtype28
;
7974 if (unlikely(!var26
)) {
7975 var_class_name29
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
7976 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable AExpr", var_class_name29
);
7977 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2487);
7981 parser_prod__AIfExpr__n_then_61d(self
, var_new_child
); /* Direct call parser_prod#AIfExpr#n_then= on <self:AIfExpr>*/
7986 var30
= self
->attrs
[COLOR_parser_nodes__AIfExpr___n_else
].val
; /* _n_else on <self:AIfExpr> */
7987 if (var30
== NULL
) {
7988 var31
= 0; /* <var_old_child:ANode> cannot be null */
7990 { /* Inline kernel#Object#== (var30,var_old_child) on <var30:nullable AExpr> */
7991 var_other
= var_old_child
;
7993 { /* Inline kernel#Object#is_same_instance (var30,var_other) on <var30:nullable AExpr(AExpr)> */
7994 var36
= var30
== var_other
;
7997 RET_LABEL35
:(void)0;
8002 RET_LABEL33
:(void)0;
8007 /* <var_new_child:nullable ANode> isa nullable AExpr */
8008 cltype38
= type_nullable_parser_nodes__AExpr
.color
;
8009 idtype39
= type_nullable_parser_nodes__AExpr
.id
;
8010 if(var_new_child
== NULL
) {
8013 if(cltype38
>= var_new_child
->type
->table_size
) {
8016 var37
= var_new_child
->type
->type_table
[cltype38
] == idtype39
;
8019 if (unlikely(!var37
)) {
8020 var_class_name40
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
8021 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable AExpr", var_class_name40
);
8022 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2491);
8026 parser_prod__AIfExpr__n_else_61d(self
, var_new_child
); /* Direct call parser_prod#AIfExpr#n_else= on <self:AIfExpr>*/
8033 /* method parser_prod#AIfExpr#replace_child for (self: Object, ANode, nullable ANode) */
8034 void VIRTUAL_parser_prod__AIfExpr__replace_child(val
* self
, val
* p0
, val
* p1
) {
8035 parser_prod__AIfExpr__replace_child(self
, p0
, p1
); /* Direct call parser_prod#AIfExpr#replace_child on <self:Object(AIfExpr)>*/
8038 /* method parser_prod#AIfExpr#n_kwif= for (self: AIfExpr, TKwif) */
8039 void parser_prod__AIfExpr__n_kwif_61d(val
* self
, val
* p0
) {
8040 val
* var_node
/* var node: TKwif */;
8042 self
->attrs
[COLOR_parser_nodes__AIfExpr___n_kwif
].val
= var_node
; /* _n_kwif on <self:AIfExpr> */
8044 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:TKwif> */
8045 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:TKwif> */
8051 /* method parser_prod#AIfExpr#n_kwif= for (self: Object, TKwif) */
8052 void VIRTUAL_parser_prod__AIfExpr__n_kwif_61d(val
* self
, val
* p0
) {
8053 parser_prod__AIfExpr__n_kwif_61d(self
, p0
); /* Direct call parser_prod#AIfExpr#n_kwif= on <self:Object(AIfExpr)>*/
8056 /* method parser_prod#AIfExpr#n_expr= for (self: AIfExpr, AExpr) */
8057 void parser_prod__AIfExpr__n_expr_61d(val
* self
, val
* p0
) {
8058 val
* var_node
/* var node: AExpr */;
8060 self
->attrs
[COLOR_parser_nodes__AIfExpr___n_expr
].val
= var_node
; /* _n_expr on <self:AIfExpr> */
8062 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:AExpr> */
8063 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:AExpr> */
8069 /* method parser_prod#AIfExpr#n_expr= for (self: Object, AExpr) */
8070 void VIRTUAL_parser_prod__AIfExpr__n_expr_61d(val
* self
, val
* p0
) {
8071 parser_prod__AIfExpr__n_expr_61d(self
, p0
); /* Direct call parser_prod#AIfExpr#n_expr= on <self:Object(AIfExpr)>*/
8074 /* method parser_prod#AIfExpr#n_then= for (self: AIfExpr, nullable AExpr) */
8075 void parser_prod__AIfExpr__n_then_61d(val
* self
, val
* p0
) {
8076 val
* var_node
/* var node: nullable AExpr */;
8077 val
* var
/* : null */;
8078 short int var1
/* : Bool */;
8079 short int var2
/* : Bool */;
8080 val
* var_other
/* var other: nullable Object */;
8081 short int var4
/* : Bool */;
8082 short int var5
/* : Bool */;
8083 short int var6
/* : Bool */;
8085 self
->attrs
[COLOR_parser_nodes__AIfExpr___n_then
].val
= var_node
; /* _n_then on <self:AIfExpr> */
8087 if (var_node
== NULL
) {
8088 var1
= 0; /* is null */
8090 var1
= 1; /* arg is null and recv is not */
8093 { /* Inline kernel#Object#!= (var_node,var) on <var_node:nullable AExpr> */
8096 var5
= ((short int (*)(val
*, val
*))(var_node
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_node
, var_other
) /* == on <var_node:nullable AExpr(AExpr)>*/;
8108 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:nullable AExpr(AExpr)> */
8109 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:nullable AExpr(AExpr)> */
8117 /* method parser_prod#AIfExpr#n_then= for (self: Object, nullable AExpr) */
8118 void VIRTUAL_parser_prod__AIfExpr__n_then_61d(val
* self
, val
* p0
) {
8119 parser_prod__AIfExpr__n_then_61d(self
, p0
); /* Direct call parser_prod#AIfExpr#n_then= on <self:Object(AIfExpr)>*/
8122 /* method parser_prod#AIfExpr#n_else= for (self: AIfExpr, nullable AExpr) */
8123 void parser_prod__AIfExpr__n_else_61d(val
* self
, val
* p0
) {
8124 val
* var_node
/* var node: nullable AExpr */;
8125 val
* var
/* : null */;
8126 short int var1
/* : Bool */;
8127 short int var2
/* : Bool */;
8128 val
* var_other
/* var other: nullable Object */;
8129 short int var4
/* : Bool */;
8130 short int var5
/* : Bool */;
8131 short int var6
/* : Bool */;
8133 self
->attrs
[COLOR_parser_nodes__AIfExpr___n_else
].val
= var_node
; /* _n_else on <self:AIfExpr> */
8135 if (var_node
== NULL
) {
8136 var1
= 0; /* is null */
8138 var1
= 1; /* arg is null and recv is not */
8141 { /* Inline kernel#Object#!= (var_node,var) on <var_node:nullable AExpr> */
8144 var5
= ((short int (*)(val
*, val
*))(var_node
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_node
, var_other
) /* == on <var_node:nullable AExpr(AExpr)>*/;
8156 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:nullable AExpr(AExpr)> */
8157 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:nullable AExpr(AExpr)> */
8165 /* method parser_prod#AIfExpr#n_else= for (self: Object, nullable AExpr) */
8166 void VIRTUAL_parser_prod__AIfExpr__n_else_61d(val
* self
, val
* p0
) {
8167 parser_prod__AIfExpr__n_else_61d(self
, p0
); /* Direct call parser_prod#AIfExpr#n_else= on <self:Object(AIfExpr)>*/
8170 /* method parser_prod#AIfExpr#visit_all for (self: AIfExpr, Visitor) */
8171 void parser_prod__AIfExpr__visit_all(val
* self
, val
* p0
) {
8172 val
* var_v
/* var v: Visitor */;
8173 val
* var
/* : TKwif */;
8174 val
* var1
/* : AExpr */;
8175 val
* var2
/* : nullable AExpr */;
8176 val
* var3
/* : nullable AExpr */;
8178 var
= self
->attrs
[COLOR_parser_nodes__AIfExpr___n_kwif
].val
; /* _n_kwif on <self:AIfExpr> */
8179 if (unlikely(var
== NULL
)) {
8180 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwif");
8181 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2520);
8185 parser_nodes__Visitor__enter_visit(var_v
, var
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
8187 var1
= self
->attrs
[COLOR_parser_nodes__AIfExpr___n_expr
].val
; /* _n_expr on <self:AIfExpr> */
8188 if (unlikely(var1
== NULL
)) {
8189 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
8190 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2521);
8194 parser_nodes__Visitor__enter_visit(var_v
, var1
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
8196 var2
= self
->attrs
[COLOR_parser_nodes__AIfExpr___n_then
].val
; /* _n_then on <self:AIfExpr> */
8198 parser_nodes__Visitor__enter_visit(var_v
, var2
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
8200 var3
= self
->attrs
[COLOR_parser_nodes__AIfExpr___n_else
].val
; /* _n_else on <self:AIfExpr> */
8202 parser_nodes__Visitor__enter_visit(var_v
, var3
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
8206 /* method parser_prod#AIfExpr#visit_all for (self: Object, Visitor) */
8207 void VIRTUAL_parser_prod__AIfExpr__visit_all(val
* self
, val
* p0
) {
8208 parser_prod__AIfExpr__visit_all(self
, p0
); /* Direct call parser_prod#AIfExpr#visit_all on <self:Object(AIfExpr)>*/
8211 /* method parser_prod#AIfexprExpr#init_aifexprexpr for (self: AIfexprExpr, nullable TKwif, nullable AExpr, nullable TKwthen, nullable AExpr, nullable TKwelse, nullable AExpr) */
8212 void parser_prod__AIfexprExpr__init_aifexprexpr(val
* self
, val
* p0
, val
* p1
, val
* p2
, val
* p3
, val
* p4
, val
* p5
) {
8213 val
* var_n_kwif
/* var n_kwif: nullable TKwif */;
8214 val
* var_n_expr
/* var n_expr: nullable AExpr */;
8215 val
* var_n_kwthen
/* var n_kwthen: nullable TKwthen */;
8216 val
* var_n_then
/* var n_then: nullable AExpr */;
8217 val
* var_n_kwelse
/* var n_kwelse: nullable TKwelse */;
8218 val
* var_n_else
/* var n_else: nullable AExpr */;
8225 if (unlikely(var_n_kwif
== NULL
)) {
8226 PRINT_ERROR("Runtime error: %s", "Cast failed");
8227 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2536);
8230 self
->attrs
[COLOR_parser_nodes__AIfexprExpr___n_kwif
].val
= var_n_kwif
; /* _n_kwif on <self:AIfexprExpr> */
8231 if (var_n_kwif
== NULL
) {
8232 PRINT_ERROR("Runtime error: %s", "Receiver is null");
8233 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2537);
8236 { /* Inline parser_nodes#ANode#parent= (var_n_kwif,self) on <var_n_kwif:nullable TKwif> */
8237 if (unlikely(var_n_kwif
== NULL
)) {
8238 PRINT_ERROR("Runtime error: %s", "Receiver is null");
8239 PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36);
8242 var_n_kwif
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_kwif:nullable TKwif> */
8246 if (unlikely(var_n_expr
== NULL
)) {
8247 PRINT_ERROR("Runtime error: %s", "Cast failed");
8248 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2538);
8251 self
->attrs
[COLOR_parser_nodes__AIfexprExpr___n_expr
].val
= var_n_expr
; /* _n_expr on <self:AIfexprExpr> */
8252 if (var_n_expr
== NULL
) {
8253 PRINT_ERROR("Runtime error: %s", "Receiver is null");
8254 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2539);
8257 { /* Inline parser_nodes#ANode#parent= (var_n_expr,self) on <var_n_expr:nullable AExpr> */
8258 if (unlikely(var_n_expr
== NULL
)) {
8259 PRINT_ERROR("Runtime error: %s", "Receiver is null");
8260 PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36);
8263 var_n_expr
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_expr:nullable AExpr> */
8267 if (unlikely(var_n_kwthen
== NULL
)) {
8268 PRINT_ERROR("Runtime error: %s", "Cast failed");
8269 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2540);
8272 self
->attrs
[COLOR_parser_nodes__AIfexprExpr___n_kwthen
].val
= var_n_kwthen
; /* _n_kwthen on <self:AIfexprExpr> */
8273 if (var_n_kwthen
== NULL
) {
8274 PRINT_ERROR("Runtime error: %s", "Receiver is null");
8275 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2541);
8278 { /* Inline parser_nodes#ANode#parent= (var_n_kwthen,self) on <var_n_kwthen:nullable TKwthen> */
8279 if (unlikely(var_n_kwthen
== NULL
)) {
8280 PRINT_ERROR("Runtime error: %s", "Receiver is null");
8281 PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36);
8284 var_n_kwthen
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_kwthen:nullable TKwthen> */
8288 if (unlikely(var_n_then
== NULL
)) {
8289 PRINT_ERROR("Runtime error: %s", "Cast failed");
8290 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2542);
8293 self
->attrs
[COLOR_parser_nodes__AIfexprExpr___n_then
].val
= var_n_then
; /* _n_then on <self:AIfexprExpr> */
8294 if (var_n_then
== NULL
) {
8295 PRINT_ERROR("Runtime error: %s", "Receiver is null");
8296 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2543);
8299 { /* Inline parser_nodes#ANode#parent= (var_n_then,self) on <var_n_then:nullable AExpr> */
8300 if (unlikely(var_n_then
== NULL
)) {
8301 PRINT_ERROR("Runtime error: %s", "Receiver is null");
8302 PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36);
8305 var_n_then
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_then:nullable AExpr> */
8309 if (unlikely(var_n_kwelse
== NULL
)) {
8310 PRINT_ERROR("Runtime error: %s", "Cast failed");
8311 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2544);
8314 self
->attrs
[COLOR_parser_nodes__AIfexprExpr___n_kwelse
].val
= var_n_kwelse
; /* _n_kwelse on <self:AIfexprExpr> */
8315 if (var_n_kwelse
== NULL
) {
8316 PRINT_ERROR("Runtime error: %s", "Receiver is null");
8317 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2545);
8320 { /* Inline parser_nodes#ANode#parent= (var_n_kwelse,self) on <var_n_kwelse:nullable TKwelse> */
8321 if (unlikely(var_n_kwelse
== NULL
)) {
8322 PRINT_ERROR("Runtime error: %s", "Receiver is null");
8323 PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36);
8326 var_n_kwelse
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_kwelse:nullable TKwelse> */
8330 if (unlikely(var_n_else
== NULL
)) {
8331 PRINT_ERROR("Runtime error: %s", "Cast failed");
8332 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2546);
8335 self
->attrs
[COLOR_parser_nodes__AIfexprExpr___n_else
].val
= var_n_else
; /* _n_else on <self:AIfexprExpr> */
8336 if (var_n_else
== NULL
) {
8337 PRINT_ERROR("Runtime error: %s", "Receiver is null");
8338 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2547);
8341 { /* Inline parser_nodes#ANode#parent= (var_n_else,self) on <var_n_else:nullable AExpr> */
8342 if (unlikely(var_n_else
== NULL
)) {
8343 PRINT_ERROR("Runtime error: %s", "Receiver is null");
8344 PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36);
8347 var_n_else
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_else:nullable AExpr> */
8353 /* method parser_prod#AIfexprExpr#init_aifexprexpr for (self: Object, nullable TKwif, nullable AExpr, nullable TKwthen, nullable AExpr, nullable TKwelse, nullable AExpr) */
8354 void VIRTUAL_parser_prod__AIfexprExpr__init_aifexprexpr(val
* self
, val
* p0
, val
* p1
, val
* p2
, val
* p3
, val
* p4
, val
* p5
) {
8355 parser_prod__AIfexprExpr__init_aifexprexpr(self
, p0
, p1
, p2
, p3
, p4
, p5
); /* Direct call parser_prod#AIfexprExpr#init_aifexprexpr on <self:Object(AIfexprExpr)>*/
8358 /* method parser_prod#AIfexprExpr#replace_child for (self: AIfexprExpr, ANode, nullable ANode) */
8359 void parser_prod__AIfexprExpr__replace_child(val
* self
, val
* p0
, val
* p1
) {
8360 val
* var_old_child
/* var old_child: ANode */;
8361 val
* var_new_child
/* var new_child: nullable ANode */;
8362 val
* var
/* : TKwif */;
8363 short int var1
/* : Bool */;
8364 short int var2
/* : Bool */;
8365 val
* var_other
/* var other: nullable Object */;
8366 short int var4
/* : Bool */;
8367 short int var6
/* : Bool */;
8368 short int var7
/* : Bool */;
8371 const char* var_class_name
;
8372 val
* var8
/* : AExpr */;
8373 short int var9
/* : Bool */;
8374 short int var10
/* : Bool */;
8375 short int var12
/* : Bool */;
8376 short int var14
/* : Bool */;
8377 short int var15
/* : Bool */;
8380 const char* var_class_name18
;
8381 val
* var19
/* : TKwthen */;
8382 short int var20
/* : Bool */;
8383 short int var21
/* : Bool */;
8384 short int var23
/* : Bool */;
8385 short int var25
/* : Bool */;
8386 short int var26
/* : Bool */;
8389 const char* var_class_name29
;
8390 val
* var30
/* : AExpr */;
8391 short int var31
/* : Bool */;
8392 short int var32
/* : Bool */;
8393 short int var34
/* : Bool */;
8394 short int var36
/* : Bool */;
8395 short int var37
/* : Bool */;
8398 const char* var_class_name40
;
8399 val
* var41
/* : TKwelse */;
8400 short int var42
/* : Bool */;
8401 short int var43
/* : Bool */;
8402 short int var45
/* : Bool */;
8403 short int var47
/* : Bool */;
8404 short int var48
/* : Bool */;
8407 const char* var_class_name51
;
8408 val
* var52
/* : AExpr */;
8409 short int var53
/* : Bool */;
8410 short int var54
/* : Bool */;
8411 short int var56
/* : Bool */;
8412 short int var58
/* : Bool */;
8413 short int var59
/* : Bool */;
8416 const char* var_class_name62
;
8419 var
= self
->attrs
[COLOR_parser_nodes__AIfexprExpr___n_kwif
].val
; /* _n_kwif on <self:AIfexprExpr> */
8420 if (unlikely(var
== NULL
)) {
8421 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwif");
8422 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2552);
8426 { /* Inline kernel#Object#== (var,var_old_child) on <var:TKwif> */
8427 var_other
= var_old_child
;
8429 { /* Inline kernel#Object#is_same_instance (var,var_other) on <var:TKwif> */
8430 var6
= var
== var_other
;
8443 /* <var_new_child:nullable ANode> isa TKwif */
8444 cltype
= type_parser_nodes__TKwif
.color
;
8445 idtype
= type_parser_nodes__TKwif
.id
;
8446 if(var_new_child
== NULL
) {
8449 if(cltype
>= var_new_child
->type
->table_size
) {
8452 var7
= var_new_child
->type
->type_table
[cltype
] == idtype
;
8455 if (unlikely(!var7
)) {
8456 var_class_name
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
8457 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwif", var_class_name
);
8458 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2553);
8462 parser_prod__AIfexprExpr__n_kwif_61d(self
, var_new_child
); /* Direct call parser_prod#AIfexprExpr#n_kwif= on <self:AIfexprExpr>*/
8467 var8
= self
->attrs
[COLOR_parser_nodes__AIfexprExpr___n_expr
].val
; /* _n_expr on <self:AIfexprExpr> */
8468 if (unlikely(var8
== NULL
)) {
8469 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
8470 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2556);
8474 { /* Inline kernel#Object#== (var8,var_old_child) on <var8:AExpr> */
8475 var_other
= var_old_child
;
8477 { /* Inline kernel#Object#is_same_instance (var8,var_other) on <var8:AExpr> */
8478 var14
= var8
== var_other
;
8481 RET_LABEL13
:(void)0;
8486 RET_LABEL11
:(void)0;
8491 /* <var_new_child:nullable ANode> isa AExpr */
8492 cltype16
= type_parser_nodes__AExpr
.color
;
8493 idtype17
= type_parser_nodes__AExpr
.id
;
8494 if(var_new_child
== NULL
) {
8497 if(cltype16
>= var_new_child
->type
->table_size
) {
8500 var15
= var_new_child
->type
->type_table
[cltype16
] == idtype17
;
8503 if (unlikely(!var15
)) {
8504 var_class_name18
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
8505 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name18
);
8506 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2557);
8510 parser_prod__AIfexprExpr__n_expr_61d(self
, var_new_child
); /* Direct call parser_prod#AIfexprExpr#n_expr= on <self:AIfexprExpr>*/
8515 var19
= self
->attrs
[COLOR_parser_nodes__AIfexprExpr___n_kwthen
].val
; /* _n_kwthen on <self:AIfexprExpr> */
8516 if (unlikely(var19
== NULL
)) {
8517 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwthen");
8518 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2560);
8522 { /* Inline kernel#Object#== (var19,var_old_child) on <var19:TKwthen> */
8523 var_other
= var_old_child
;
8525 { /* Inline kernel#Object#is_same_instance (var19,var_other) on <var19:TKwthen> */
8526 var25
= var19
== var_other
;
8529 RET_LABEL24
:(void)0;
8534 RET_LABEL22
:(void)0;
8539 /* <var_new_child:nullable ANode> isa TKwthen */
8540 cltype27
= type_parser_nodes__TKwthen
.color
;
8541 idtype28
= type_parser_nodes__TKwthen
.id
;
8542 if(var_new_child
== NULL
) {
8545 if(cltype27
>= var_new_child
->type
->table_size
) {
8548 var26
= var_new_child
->type
->type_table
[cltype27
] == idtype28
;
8551 if (unlikely(!var26
)) {
8552 var_class_name29
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
8553 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwthen", var_class_name29
);
8554 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2561);
8558 parser_prod__AIfexprExpr__n_kwthen_61d(self
, var_new_child
); /* Direct call parser_prod#AIfexprExpr#n_kwthen= on <self:AIfexprExpr>*/
8563 var30
= self
->attrs
[COLOR_parser_nodes__AIfexprExpr___n_then
].val
; /* _n_then on <self:AIfexprExpr> */
8564 if (unlikely(var30
== NULL
)) {
8565 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_then");
8566 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2564);
8570 { /* Inline kernel#Object#== (var30,var_old_child) on <var30:AExpr> */
8571 var_other
= var_old_child
;
8573 { /* Inline kernel#Object#is_same_instance (var30,var_other) on <var30:AExpr> */
8574 var36
= var30
== var_other
;
8577 RET_LABEL35
:(void)0;
8582 RET_LABEL33
:(void)0;
8587 /* <var_new_child:nullable ANode> isa AExpr */
8588 cltype38
= type_parser_nodes__AExpr
.color
;
8589 idtype39
= type_parser_nodes__AExpr
.id
;
8590 if(var_new_child
== NULL
) {
8593 if(cltype38
>= var_new_child
->type
->table_size
) {
8596 var37
= var_new_child
->type
->type_table
[cltype38
] == idtype39
;
8599 if (unlikely(!var37
)) {
8600 var_class_name40
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
8601 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name40
);
8602 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2565);
8606 parser_prod__AIfexprExpr__n_then_61d(self
, var_new_child
); /* Direct call parser_prod#AIfexprExpr#n_then= on <self:AIfexprExpr>*/
8611 var41
= self
->attrs
[COLOR_parser_nodes__AIfexprExpr___n_kwelse
].val
; /* _n_kwelse on <self:AIfexprExpr> */
8612 if (unlikely(var41
== NULL
)) {
8613 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwelse");
8614 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2568);
8618 { /* Inline kernel#Object#== (var41,var_old_child) on <var41:TKwelse> */
8619 var_other
= var_old_child
;
8621 { /* Inline kernel#Object#is_same_instance (var41,var_other) on <var41:TKwelse> */
8622 var47
= var41
== var_other
;
8625 RET_LABEL46
:(void)0;
8630 RET_LABEL44
:(void)0;
8635 /* <var_new_child:nullable ANode> isa TKwelse */
8636 cltype49
= type_parser_nodes__TKwelse
.color
;
8637 idtype50
= type_parser_nodes__TKwelse
.id
;
8638 if(var_new_child
== NULL
) {
8641 if(cltype49
>= var_new_child
->type
->table_size
) {
8644 var48
= var_new_child
->type
->type_table
[cltype49
] == idtype50
;
8647 if (unlikely(!var48
)) {
8648 var_class_name51
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
8649 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwelse", var_class_name51
);
8650 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2569);
8654 parser_prod__AIfexprExpr__n_kwelse_61d(self
, var_new_child
); /* Direct call parser_prod#AIfexprExpr#n_kwelse= on <self:AIfexprExpr>*/
8659 var52
= self
->attrs
[COLOR_parser_nodes__AIfexprExpr___n_else
].val
; /* _n_else on <self:AIfexprExpr> */
8660 if (unlikely(var52
== NULL
)) {
8661 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_else");
8662 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2572);
8666 { /* Inline kernel#Object#== (var52,var_old_child) on <var52:AExpr> */
8667 var_other
= var_old_child
;
8669 { /* Inline kernel#Object#is_same_instance (var52,var_other) on <var52:AExpr> */
8670 var58
= var52
== var_other
;
8673 RET_LABEL57
:(void)0;
8678 RET_LABEL55
:(void)0;
8683 /* <var_new_child:nullable ANode> isa AExpr */
8684 cltype60
= type_parser_nodes__AExpr
.color
;
8685 idtype61
= type_parser_nodes__AExpr
.id
;
8686 if(var_new_child
== NULL
) {
8689 if(cltype60
>= var_new_child
->type
->table_size
) {
8692 var59
= var_new_child
->type
->type_table
[cltype60
] == idtype61
;
8695 if (unlikely(!var59
)) {
8696 var_class_name62
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
8697 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name62
);
8698 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2573);
8702 parser_prod__AIfexprExpr__n_else_61d(self
, var_new_child
); /* Direct call parser_prod#AIfexprExpr#n_else= on <self:AIfexprExpr>*/
8709 /* method parser_prod#AIfexprExpr#replace_child for (self: Object, ANode, nullable ANode) */
8710 void VIRTUAL_parser_prod__AIfexprExpr__replace_child(val
* self
, val
* p0
, val
* p1
) {
8711 parser_prod__AIfexprExpr__replace_child(self
, p0
, p1
); /* Direct call parser_prod#AIfexprExpr#replace_child on <self:Object(AIfexprExpr)>*/
8714 /* method parser_prod#AIfexprExpr#n_kwif= for (self: AIfexprExpr, TKwif) */
8715 void parser_prod__AIfexprExpr__n_kwif_61d(val
* self
, val
* p0
) {
8716 val
* var_node
/* var node: TKwif */;
8718 self
->attrs
[COLOR_parser_nodes__AIfexprExpr___n_kwif
].val
= var_node
; /* _n_kwif on <self:AIfexprExpr> */
8720 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:TKwif> */
8721 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:TKwif> */
8727 /* method parser_prod#AIfexprExpr#n_kwif= for (self: Object, TKwif) */
8728 void VIRTUAL_parser_prod__AIfexprExpr__n_kwif_61d(val
* self
, val
* p0
) {
8729 parser_prod__AIfexprExpr__n_kwif_61d(self
, p0
); /* Direct call parser_prod#AIfexprExpr#n_kwif= on <self:Object(AIfexprExpr)>*/
8732 /* method parser_prod#AIfexprExpr#n_expr= for (self: AIfexprExpr, AExpr) */
8733 void parser_prod__AIfexprExpr__n_expr_61d(val
* self
, val
* p0
) {
8734 val
* var_node
/* var node: AExpr */;
8736 self
->attrs
[COLOR_parser_nodes__AIfexprExpr___n_expr
].val
= var_node
; /* _n_expr on <self:AIfexprExpr> */
8738 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:AExpr> */
8739 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:AExpr> */
8745 /* method parser_prod#AIfexprExpr#n_expr= for (self: Object, AExpr) */
8746 void VIRTUAL_parser_prod__AIfexprExpr__n_expr_61d(val
* self
, val
* p0
) {
8747 parser_prod__AIfexprExpr__n_expr_61d(self
, p0
); /* Direct call parser_prod#AIfexprExpr#n_expr= on <self:Object(AIfexprExpr)>*/
8750 /* method parser_prod#AIfexprExpr#n_kwthen= for (self: AIfexprExpr, TKwthen) */
8751 void parser_prod__AIfexprExpr__n_kwthen_61d(val
* self
, val
* p0
) {
8752 val
* var_node
/* var node: TKwthen */;
8754 self
->attrs
[COLOR_parser_nodes__AIfexprExpr___n_kwthen
].val
= var_node
; /* _n_kwthen on <self:AIfexprExpr> */
8756 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:TKwthen> */
8757 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:TKwthen> */
8763 /* method parser_prod#AIfexprExpr#n_kwthen= for (self: Object, TKwthen) */
8764 void VIRTUAL_parser_prod__AIfexprExpr__n_kwthen_61d(val
* self
, val
* p0
) {
8765 parser_prod__AIfexprExpr__n_kwthen_61d(self
, p0
); /* Direct call parser_prod#AIfexprExpr#n_kwthen= on <self:Object(AIfexprExpr)>*/
8768 /* method parser_prod#AIfexprExpr#n_then= for (self: AIfexprExpr, AExpr) */
8769 void parser_prod__AIfexprExpr__n_then_61d(val
* self
, val
* p0
) {
8770 val
* var_node
/* var node: AExpr */;
8772 self
->attrs
[COLOR_parser_nodes__AIfexprExpr___n_then
].val
= var_node
; /* _n_then on <self:AIfexprExpr> */
8774 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:AExpr> */
8775 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:AExpr> */
8781 /* method parser_prod#AIfexprExpr#n_then= for (self: Object, AExpr) */
8782 void VIRTUAL_parser_prod__AIfexprExpr__n_then_61d(val
* self
, val
* p0
) {
8783 parser_prod__AIfexprExpr__n_then_61d(self
, p0
); /* Direct call parser_prod#AIfexprExpr#n_then= on <self:Object(AIfexprExpr)>*/
8786 /* method parser_prod#AIfexprExpr#n_kwelse= for (self: AIfexprExpr, TKwelse) */
8787 void parser_prod__AIfexprExpr__n_kwelse_61d(val
* self
, val
* p0
) {
8788 val
* var_node
/* var node: TKwelse */;
8790 self
->attrs
[COLOR_parser_nodes__AIfexprExpr___n_kwelse
].val
= var_node
; /* _n_kwelse on <self:AIfexprExpr> */
8792 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:TKwelse> */
8793 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:TKwelse> */
8799 /* method parser_prod#AIfexprExpr#n_kwelse= for (self: Object, TKwelse) */
8800 void VIRTUAL_parser_prod__AIfexprExpr__n_kwelse_61d(val
* self
, val
* p0
) {
8801 parser_prod__AIfexprExpr__n_kwelse_61d(self
, p0
); /* Direct call parser_prod#AIfexprExpr#n_kwelse= on <self:Object(AIfexprExpr)>*/
8804 /* method parser_prod#AIfexprExpr#n_else= for (self: AIfexprExpr, AExpr) */
8805 void parser_prod__AIfexprExpr__n_else_61d(val
* self
, val
* p0
) {
8806 val
* var_node
/* var node: AExpr */;
8808 self
->attrs
[COLOR_parser_nodes__AIfexprExpr___n_else
].val
= var_node
; /* _n_else on <self:AIfexprExpr> */
8810 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:AExpr> */
8811 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:AExpr> */
8817 /* method parser_prod#AIfexprExpr#n_else= for (self: Object, AExpr) */
8818 void VIRTUAL_parser_prod__AIfexprExpr__n_else_61d(val
* self
, val
* p0
) {
8819 parser_prod__AIfexprExpr__n_else_61d(self
, p0
); /* Direct call parser_prod#AIfexprExpr#n_else= on <self:Object(AIfexprExpr)>*/
8822 /* method parser_prod#AIfexprExpr#visit_all for (self: AIfexprExpr, Visitor) */
8823 void parser_prod__AIfexprExpr__visit_all(val
* self
, val
* p0
) {
8824 val
* var_v
/* var v: Visitor */;
8825 val
* var
/* : TKwif */;
8826 val
* var1
/* : AExpr */;
8827 val
* var2
/* : TKwthen */;
8828 val
* var3
/* : AExpr */;
8829 val
* var4
/* : TKwelse */;
8830 val
* var5
/* : AExpr */;
8832 var
= self
->attrs
[COLOR_parser_nodes__AIfexprExpr___n_kwif
].val
; /* _n_kwif on <self:AIfexprExpr> */
8833 if (unlikely(var
== NULL
)) {
8834 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwif");
8835 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2612);
8839 parser_nodes__Visitor__enter_visit(var_v
, var
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
8841 var1
= self
->attrs
[COLOR_parser_nodes__AIfexprExpr___n_expr
].val
; /* _n_expr on <self:AIfexprExpr> */
8842 if (unlikely(var1
== NULL
)) {
8843 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
8844 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2613);
8848 parser_nodes__Visitor__enter_visit(var_v
, var1
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
8850 var2
= self
->attrs
[COLOR_parser_nodes__AIfexprExpr___n_kwthen
].val
; /* _n_kwthen on <self:AIfexprExpr> */
8851 if (unlikely(var2
== NULL
)) {
8852 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwthen");
8853 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2614);
8857 parser_nodes__Visitor__enter_visit(var_v
, var2
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
8859 var3
= self
->attrs
[COLOR_parser_nodes__AIfexprExpr___n_then
].val
; /* _n_then on <self:AIfexprExpr> */
8860 if (unlikely(var3
== NULL
)) {
8861 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_then");
8862 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2615);
8866 parser_nodes__Visitor__enter_visit(var_v
, var3
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
8868 var4
= self
->attrs
[COLOR_parser_nodes__AIfexprExpr___n_kwelse
].val
; /* _n_kwelse on <self:AIfexprExpr> */
8869 if (unlikely(var4
== NULL
)) {
8870 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwelse");
8871 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2616);
8875 parser_nodes__Visitor__enter_visit(var_v
, var4
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
8877 var5
= self
->attrs
[COLOR_parser_nodes__AIfexprExpr___n_else
].val
; /* _n_else on <self:AIfexprExpr> */
8878 if (unlikely(var5
== NULL
)) {
8879 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_else");
8880 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2617);
8884 parser_nodes__Visitor__enter_visit(var_v
, var5
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
8888 /* method parser_prod#AIfexprExpr#visit_all for (self: Object, Visitor) */
8889 void VIRTUAL_parser_prod__AIfexprExpr__visit_all(val
* self
, val
* p0
) {
8890 parser_prod__AIfexprExpr__visit_all(self
, p0
); /* Direct call parser_prod#AIfexprExpr#visit_all on <self:Object(AIfexprExpr)>*/
8893 /* method parser_prod#AWhileExpr#init_awhileexpr for (self: AWhileExpr, nullable TKwwhile, nullable AExpr, nullable TKwdo, nullable AExpr, nullable ALabel) */
8894 void parser_prod__AWhileExpr__init_awhileexpr(val
* self
, val
* p0
, val
* p1
, val
* p2
, val
* p3
, val
* p4
) {
8895 val
* var_n_kwwhile
/* var n_kwwhile: nullable TKwwhile */;
8896 val
* var_n_expr
/* var n_expr: nullable AExpr */;
8897 val
* var_n_kwdo
/* var n_kwdo: nullable TKwdo */;
8898 val
* var_n_block
/* var n_block: nullable AExpr */;
8899 val
* var_n_label
/* var n_label: nullable ALabel */;
8900 val
* var
/* : null */;
8901 short int var4
/* : Bool */;
8902 short int var5
/* : Bool */;
8903 val
* var_other
/* var other: nullable Object */;
8904 short int var7
/* : Bool */;
8905 short int var8
/* : Bool */;
8906 short int var9
/* : Bool */;
8907 val
* var11
/* : null */;
8908 short int var12
/* : Bool */;
8909 short int var13
/* : Bool */;
8910 short int var15
/* : Bool */;
8911 short int var16
/* : Bool */;
8912 short int var17
/* : Bool */;
8918 if (unlikely(var_n_kwwhile
== NULL
)) {
8919 PRINT_ERROR("Runtime error: %s", "Cast failed");
8920 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2629);
8923 self
->attrs
[COLOR_parser_nodes__AWhileExpr___n_kwwhile
].val
= var_n_kwwhile
; /* _n_kwwhile on <self:AWhileExpr> */
8924 if (var_n_kwwhile
== NULL
) {
8925 PRINT_ERROR("Runtime error: %s", "Receiver is null");
8926 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2630);
8929 { /* Inline parser_nodes#ANode#parent= (var_n_kwwhile,self) on <var_n_kwwhile:nullable TKwwhile> */
8930 if (unlikely(var_n_kwwhile
== NULL
)) {
8931 PRINT_ERROR("Runtime error: %s", "Receiver is null");
8932 PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36);
8935 var_n_kwwhile
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_kwwhile:nullable TKwwhile> */
8939 if (unlikely(var_n_expr
== NULL
)) {
8940 PRINT_ERROR("Runtime error: %s", "Cast failed");
8941 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2631);
8944 self
->attrs
[COLOR_parser_nodes__AWhileExpr___n_expr
].val
= var_n_expr
; /* _n_expr on <self:AWhileExpr> */
8945 if (var_n_expr
== NULL
) {
8946 PRINT_ERROR("Runtime error: %s", "Receiver is null");
8947 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2632);
8950 { /* Inline parser_nodes#ANode#parent= (var_n_expr,self) on <var_n_expr:nullable AExpr> */
8951 if (unlikely(var_n_expr
== NULL
)) {
8952 PRINT_ERROR("Runtime error: %s", "Receiver is null");
8953 PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36);
8956 var_n_expr
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_expr:nullable AExpr> */
8960 if (unlikely(var_n_kwdo
== NULL
)) {
8961 PRINT_ERROR("Runtime error: %s", "Cast failed");
8962 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2633);
8965 self
->attrs
[COLOR_parser_nodes__AWhileExpr___n_kwdo
].val
= var_n_kwdo
; /* _n_kwdo on <self:AWhileExpr> */
8966 if (var_n_kwdo
== NULL
) {
8967 PRINT_ERROR("Runtime error: %s", "Receiver is null");
8968 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2634);
8971 { /* Inline parser_nodes#ANode#parent= (var_n_kwdo,self) on <var_n_kwdo:nullable TKwdo> */
8972 if (unlikely(var_n_kwdo
== NULL
)) {
8973 PRINT_ERROR("Runtime error: %s", "Receiver is null");
8974 PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36);
8977 var_n_kwdo
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_kwdo:nullable TKwdo> */
8981 self
->attrs
[COLOR_parser_nodes__AWhileExpr___n_block
].val
= var_n_block
; /* _n_block on <self:AWhileExpr> */
8983 if (var_n_block
== NULL
) {
8984 var4
= 0; /* is null */
8986 var4
= 1; /* arg is null and recv is not */
8989 { /* Inline kernel#Object#!= (var_n_block,var) on <var_n_block:nullable AExpr> */
8992 var8
= ((short int (*)(val
*, val
*))(var_n_block
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_n_block
, var_other
) /* == on <var_n_block:nullable AExpr(AExpr)>*/;
9004 { /* Inline parser_nodes#ANode#parent= (var_n_block,self) on <var_n_block:nullable AExpr(AExpr)> */
9005 var_n_block
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_block:nullable AExpr(AExpr)> */
9006 RET_LABEL10
:(void)0;
9011 self
->attrs
[COLOR_parser_nodes__ALabelable___n_label
].val
= var_n_label
; /* _n_label on <self:AWhileExpr> */
9013 if (var_n_label
== NULL
) {
9014 var12
= 0; /* is null */
9016 var12
= 1; /* arg is null and recv is not */
9019 { /* Inline kernel#Object#!= (var_n_label,var11) on <var_n_label:nullable ALabel> */
9022 var16
= ((short int (*)(val
*, val
*))(var_n_label
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_n_label
, var_other
) /* == on <var_n_label:nullable ALabel(ALabel)>*/;
9028 RET_LABEL14
:(void)0;
9034 { /* Inline parser_nodes#ANode#parent= (var_n_label,self) on <var_n_label:nullable ALabel(ALabel)> */
9035 var_n_label
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_label:nullable ALabel(ALabel)> */
9036 RET_LABEL18
:(void)0;
9043 /* method parser_prod#AWhileExpr#init_awhileexpr for (self: Object, nullable TKwwhile, nullable AExpr, nullable TKwdo, nullable AExpr, nullable ALabel) */
9044 void VIRTUAL_parser_prod__AWhileExpr__init_awhileexpr(val
* self
, val
* p0
, val
* p1
, val
* p2
, val
* p3
, val
* p4
) {
9045 parser_prod__AWhileExpr__init_awhileexpr(self
, p0
, p1
, p2
, p3
, p4
); /* Direct call parser_prod#AWhileExpr#init_awhileexpr on <self:Object(AWhileExpr)>*/
9048 /* method parser_prod#AWhileExpr#replace_child for (self: AWhileExpr, ANode, nullable ANode) */
9049 void parser_prod__AWhileExpr__replace_child(val
* self
, val
* p0
, val
* p1
) {
9050 val
* var_old_child
/* var old_child: ANode */;
9051 val
* var_new_child
/* var new_child: nullable ANode */;
9052 val
* var
/* : TKwwhile */;
9053 short int var1
/* : Bool */;
9054 short int var2
/* : Bool */;
9055 val
* var_other
/* var other: nullable Object */;
9056 short int var4
/* : Bool */;
9057 short int var6
/* : Bool */;
9058 short int var7
/* : Bool */;
9061 const char* var_class_name
;
9062 val
* var8
/* : AExpr */;
9063 short int var9
/* : Bool */;
9064 short int var10
/* : Bool */;
9065 short int var12
/* : Bool */;
9066 short int var14
/* : Bool */;
9067 short int var15
/* : Bool */;
9070 const char* var_class_name18
;
9071 val
* var19
/* : TKwdo */;
9072 short int var20
/* : Bool */;
9073 short int var21
/* : Bool */;
9074 short int var23
/* : Bool */;
9075 short int var25
/* : Bool */;
9076 short int var26
/* : Bool */;
9079 const char* var_class_name29
;
9080 val
* var30
/* : nullable AExpr */;
9081 short int var31
/* : Bool */;
9082 short int var32
/* : Bool */;
9083 short int var34
/* : Bool */;
9084 short int var36
/* : Bool */;
9085 short int var37
/* : Bool */;
9088 const char* var_class_name40
;
9089 val
* var41
/* : nullable ALabel */;
9090 short int var42
/* : Bool */;
9091 short int var43
/* : Bool */;
9092 short int var45
/* : Bool */;
9093 short int var47
/* : Bool */;
9094 short int var48
/* : Bool */;
9097 const char* var_class_name51
;
9100 var
= self
->attrs
[COLOR_parser_nodes__AWhileExpr___n_kwwhile
].val
; /* _n_kwwhile on <self:AWhileExpr> */
9101 if (unlikely(var
== NULL
)) {
9102 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwwhile");
9103 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2643);
9107 { /* Inline kernel#Object#== (var,var_old_child) on <var:TKwwhile> */
9108 var_other
= var_old_child
;
9110 { /* Inline kernel#Object#is_same_instance (var,var_other) on <var:TKwwhile> */
9111 var6
= var
== var_other
;
9124 /* <var_new_child:nullable ANode> isa TKwwhile */
9125 cltype
= type_parser_nodes__TKwwhile
.color
;
9126 idtype
= type_parser_nodes__TKwwhile
.id
;
9127 if(var_new_child
== NULL
) {
9130 if(cltype
>= var_new_child
->type
->table_size
) {
9133 var7
= var_new_child
->type
->type_table
[cltype
] == idtype
;
9136 if (unlikely(!var7
)) {
9137 var_class_name
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
9138 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwwhile", var_class_name
);
9139 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2644);
9143 parser_prod__AWhileExpr__n_kwwhile_61d(self
, var_new_child
); /* Direct call parser_prod#AWhileExpr#n_kwwhile= on <self:AWhileExpr>*/
9148 var8
= self
->attrs
[COLOR_parser_nodes__AWhileExpr___n_expr
].val
; /* _n_expr on <self:AWhileExpr> */
9149 if (unlikely(var8
== NULL
)) {
9150 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
9151 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2647);
9155 { /* Inline kernel#Object#== (var8,var_old_child) on <var8:AExpr> */
9156 var_other
= var_old_child
;
9158 { /* Inline kernel#Object#is_same_instance (var8,var_other) on <var8:AExpr> */
9159 var14
= var8
== var_other
;
9162 RET_LABEL13
:(void)0;
9167 RET_LABEL11
:(void)0;
9172 /* <var_new_child:nullable ANode> isa AExpr */
9173 cltype16
= type_parser_nodes__AExpr
.color
;
9174 idtype17
= type_parser_nodes__AExpr
.id
;
9175 if(var_new_child
== NULL
) {
9178 if(cltype16
>= var_new_child
->type
->table_size
) {
9181 var15
= var_new_child
->type
->type_table
[cltype16
] == idtype17
;
9184 if (unlikely(!var15
)) {
9185 var_class_name18
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
9186 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name18
);
9187 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2648);
9191 parser_prod__AWhileExpr__n_expr_61d(self
, var_new_child
); /* Direct call parser_prod#AWhileExpr#n_expr= on <self:AWhileExpr>*/
9196 var19
= self
->attrs
[COLOR_parser_nodes__AWhileExpr___n_kwdo
].val
; /* _n_kwdo on <self:AWhileExpr> */
9197 if (unlikely(var19
== NULL
)) {
9198 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwdo");
9199 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2651);
9203 { /* Inline kernel#Object#== (var19,var_old_child) on <var19:TKwdo> */
9204 var_other
= var_old_child
;
9206 { /* Inline kernel#Object#is_same_instance (var19,var_other) on <var19:TKwdo> */
9207 var25
= var19
== var_other
;
9210 RET_LABEL24
:(void)0;
9215 RET_LABEL22
:(void)0;
9220 /* <var_new_child:nullable ANode> isa TKwdo */
9221 cltype27
= type_parser_nodes__TKwdo
.color
;
9222 idtype28
= type_parser_nodes__TKwdo
.id
;
9223 if(var_new_child
== NULL
) {
9226 if(cltype27
>= var_new_child
->type
->table_size
) {
9229 var26
= var_new_child
->type
->type_table
[cltype27
] == idtype28
;
9232 if (unlikely(!var26
)) {
9233 var_class_name29
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
9234 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwdo", var_class_name29
);
9235 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2652);
9239 parser_prod__AWhileExpr__n_kwdo_61d(self
, var_new_child
); /* Direct call parser_prod#AWhileExpr#n_kwdo= on <self:AWhileExpr>*/
9244 var30
= self
->attrs
[COLOR_parser_nodes__AWhileExpr___n_block
].val
; /* _n_block on <self:AWhileExpr> */
9245 if (var30
== NULL
) {
9246 var31
= 0; /* <var_old_child:ANode> cannot be null */
9248 { /* Inline kernel#Object#== (var30,var_old_child) on <var30:nullable AExpr> */
9249 var_other
= var_old_child
;
9251 { /* Inline kernel#Object#is_same_instance (var30,var_other) on <var30:nullable AExpr(AExpr)> */
9252 var36
= var30
== var_other
;
9255 RET_LABEL35
:(void)0;
9260 RET_LABEL33
:(void)0;
9265 /* <var_new_child:nullable ANode> isa nullable AExpr */
9266 cltype38
= type_nullable_parser_nodes__AExpr
.color
;
9267 idtype39
= type_nullable_parser_nodes__AExpr
.id
;
9268 if(var_new_child
== NULL
) {
9271 if(cltype38
>= var_new_child
->type
->table_size
) {
9274 var37
= var_new_child
->type
->type_table
[cltype38
] == idtype39
;
9277 if (unlikely(!var37
)) {
9278 var_class_name40
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
9279 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable AExpr", var_class_name40
);
9280 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2656);
9284 parser_prod__AWhileExpr__n_block_61d(self
, var_new_child
); /* Direct call parser_prod#AWhileExpr#n_block= on <self:AWhileExpr>*/
9289 var41
= self
->attrs
[COLOR_parser_nodes__ALabelable___n_label
].val
; /* _n_label on <self:AWhileExpr> */
9290 if (var41
== NULL
) {
9291 var42
= 0; /* <var_old_child:ANode> cannot be null */
9293 { /* Inline kernel#Object#== (var41,var_old_child) on <var41:nullable ALabel> */
9294 var_other
= var_old_child
;
9296 { /* Inline kernel#Object#is_same_instance (var41,var_other) on <var41:nullable ALabel(ALabel)> */
9297 var47
= var41
== var_other
;
9300 RET_LABEL46
:(void)0;
9305 RET_LABEL44
:(void)0;
9310 /* <var_new_child:nullable ANode> isa nullable ALabel */
9311 cltype49
= type_nullable_parser_nodes__ALabel
.color
;
9312 idtype50
= type_nullable_parser_nodes__ALabel
.id
;
9313 if(var_new_child
== NULL
) {
9316 if(cltype49
>= var_new_child
->type
->table_size
) {
9319 var48
= var_new_child
->type
->type_table
[cltype49
] == idtype50
;
9322 if (unlikely(!var48
)) {
9323 var_class_name51
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
9324 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable ALabel", var_class_name51
);
9325 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2660);
9329 parser_prod__AWhileExpr__n_label_61d(self
, var_new_child
); /* Direct call parser_prod#AWhileExpr#n_label= on <self:AWhileExpr>*/
9336 /* method parser_prod#AWhileExpr#replace_child for (self: Object, ANode, nullable ANode) */
9337 void VIRTUAL_parser_prod__AWhileExpr__replace_child(val
* self
, val
* p0
, val
* p1
) {
9338 parser_prod__AWhileExpr__replace_child(self
, p0
, p1
); /* Direct call parser_prod#AWhileExpr#replace_child on <self:Object(AWhileExpr)>*/
9341 /* method parser_prod#AWhileExpr#n_kwwhile= for (self: AWhileExpr, TKwwhile) */
9342 void parser_prod__AWhileExpr__n_kwwhile_61d(val
* self
, val
* p0
) {
9343 val
* var_node
/* var node: TKwwhile */;
9345 self
->attrs
[COLOR_parser_nodes__AWhileExpr___n_kwwhile
].val
= var_node
; /* _n_kwwhile on <self:AWhileExpr> */
9347 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:TKwwhile> */
9348 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:TKwwhile> */
9354 /* method parser_prod#AWhileExpr#n_kwwhile= for (self: Object, TKwwhile) */
9355 void VIRTUAL_parser_prod__AWhileExpr__n_kwwhile_61d(val
* self
, val
* p0
) {
9356 parser_prod__AWhileExpr__n_kwwhile_61d(self
, p0
); /* Direct call parser_prod#AWhileExpr#n_kwwhile= on <self:Object(AWhileExpr)>*/
9359 /* method parser_prod#AWhileExpr#n_expr= for (self: AWhileExpr, AExpr) */
9360 void parser_prod__AWhileExpr__n_expr_61d(val
* self
, val
* p0
) {
9361 val
* var_node
/* var node: AExpr */;
9363 self
->attrs
[COLOR_parser_nodes__AWhileExpr___n_expr
].val
= var_node
; /* _n_expr on <self:AWhileExpr> */
9365 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:AExpr> */
9366 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:AExpr> */
9372 /* method parser_prod#AWhileExpr#n_expr= for (self: Object, AExpr) */
9373 void VIRTUAL_parser_prod__AWhileExpr__n_expr_61d(val
* self
, val
* p0
) {
9374 parser_prod__AWhileExpr__n_expr_61d(self
, p0
); /* Direct call parser_prod#AWhileExpr#n_expr= on <self:Object(AWhileExpr)>*/
9377 /* method parser_prod#AWhileExpr#n_kwdo= for (self: AWhileExpr, TKwdo) */
9378 void parser_prod__AWhileExpr__n_kwdo_61d(val
* self
, val
* p0
) {
9379 val
* var_node
/* var node: TKwdo */;
9381 self
->attrs
[COLOR_parser_nodes__AWhileExpr___n_kwdo
].val
= var_node
; /* _n_kwdo on <self:AWhileExpr> */
9383 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:TKwdo> */
9384 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:TKwdo> */
9390 /* method parser_prod#AWhileExpr#n_kwdo= for (self: Object, TKwdo) */
9391 void VIRTUAL_parser_prod__AWhileExpr__n_kwdo_61d(val
* self
, val
* p0
) {
9392 parser_prod__AWhileExpr__n_kwdo_61d(self
, p0
); /* Direct call parser_prod#AWhileExpr#n_kwdo= on <self:Object(AWhileExpr)>*/
9395 /* method parser_prod#AWhileExpr#n_block= for (self: AWhileExpr, nullable AExpr) */
9396 void parser_prod__AWhileExpr__n_block_61d(val
* self
, val
* p0
) {
9397 val
* var_node
/* var node: nullable AExpr */;
9398 val
* var
/* : null */;
9399 short int var1
/* : Bool */;
9400 short int var2
/* : Bool */;
9401 val
* var_other
/* var other: nullable Object */;
9402 short int var4
/* : Bool */;
9403 short int var5
/* : Bool */;
9404 short int var6
/* : Bool */;
9406 self
->attrs
[COLOR_parser_nodes__AWhileExpr___n_block
].val
= var_node
; /* _n_block on <self:AWhileExpr> */
9408 if (var_node
== NULL
) {
9409 var1
= 0; /* is null */
9411 var1
= 1; /* arg is null and recv is not */
9414 { /* Inline kernel#Object#!= (var_node,var) on <var_node:nullable AExpr> */
9417 var5
= ((short int (*)(val
*, val
*))(var_node
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_node
, var_other
) /* == on <var_node:nullable AExpr(AExpr)>*/;
9429 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:nullable AExpr(AExpr)> */
9430 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:nullable AExpr(AExpr)> */
9438 /* method parser_prod#AWhileExpr#n_block= for (self: Object, nullable AExpr) */
9439 void VIRTUAL_parser_prod__AWhileExpr__n_block_61d(val
* self
, val
* p0
) {
9440 parser_prod__AWhileExpr__n_block_61d(self
, p0
); /* Direct call parser_prod#AWhileExpr#n_block= on <self:Object(AWhileExpr)>*/
9443 /* method parser_prod#AWhileExpr#n_label= for (self: AWhileExpr, nullable ALabel) */
9444 void parser_prod__AWhileExpr__n_label_61d(val
* self
, val
* p0
) {
9445 val
* var_node
/* var node: nullable ALabel */;
9446 val
* var
/* : null */;
9447 short int var1
/* : Bool */;
9448 short int var2
/* : Bool */;
9449 val
* var_other
/* var other: nullable Object */;
9450 short int var4
/* : Bool */;
9451 short int var5
/* : Bool */;
9452 short int var6
/* : Bool */;
9454 self
->attrs
[COLOR_parser_nodes__ALabelable___n_label
].val
= var_node
; /* _n_label on <self:AWhileExpr> */
9456 if (var_node
== NULL
) {
9457 var1
= 0; /* is null */
9459 var1
= 1; /* arg is null and recv is not */
9462 { /* Inline kernel#Object#!= (var_node,var) on <var_node:nullable ALabel> */
9465 var5
= ((short int (*)(val
*, val
*))(var_node
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_node
, var_other
) /* == on <var_node:nullable ALabel(ALabel)>*/;
9477 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:nullable ALabel(ALabel)> */
9478 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:nullable ALabel(ALabel)> */
9486 /* method parser_prod#AWhileExpr#n_label= for (self: Object, nullable ALabel) */
9487 void VIRTUAL_parser_prod__AWhileExpr__n_label_61d(val
* self
, val
* p0
) {
9488 parser_prod__AWhileExpr__n_label_61d(self
, p0
); /* Direct call parser_prod#AWhileExpr#n_label= on <self:Object(AWhileExpr)>*/
9491 /* method parser_prod#AWhileExpr#visit_all for (self: AWhileExpr, Visitor) */
9492 void parser_prod__AWhileExpr__visit_all(val
* self
, val
* p0
) {
9493 val
* var_v
/* var v: Visitor */;
9494 val
* var
/* : TKwwhile */;
9495 val
* var1
/* : AExpr */;
9496 val
* var2
/* : TKwdo */;
9497 val
* var3
/* : nullable AExpr */;
9498 val
* var4
/* : nullable ALabel */;
9500 var
= self
->attrs
[COLOR_parser_nodes__AWhileExpr___n_kwwhile
].val
; /* _n_kwwhile on <self:AWhileExpr> */
9501 if (unlikely(var
== NULL
)) {
9502 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwwhile");
9503 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2694);
9507 parser_nodes__Visitor__enter_visit(var_v
, var
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
9509 var1
= self
->attrs
[COLOR_parser_nodes__AWhileExpr___n_expr
].val
; /* _n_expr on <self:AWhileExpr> */
9510 if (unlikely(var1
== NULL
)) {
9511 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
9512 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2695);
9516 parser_nodes__Visitor__enter_visit(var_v
, var1
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
9518 var2
= self
->attrs
[COLOR_parser_nodes__AWhileExpr___n_kwdo
].val
; /* _n_kwdo on <self:AWhileExpr> */
9519 if (unlikely(var2
== NULL
)) {
9520 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwdo");
9521 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2696);
9525 parser_nodes__Visitor__enter_visit(var_v
, var2
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
9527 var3
= self
->attrs
[COLOR_parser_nodes__AWhileExpr___n_block
].val
; /* _n_block on <self:AWhileExpr> */
9529 parser_nodes__Visitor__enter_visit(var_v
, var3
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
9531 var4
= self
->attrs
[COLOR_parser_nodes__ALabelable___n_label
].val
; /* _n_label on <self:AWhileExpr> */
9533 parser_nodes__Visitor__enter_visit(var_v
, var4
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
9537 /* method parser_prod#AWhileExpr#visit_all for (self: Object, Visitor) */
9538 void VIRTUAL_parser_prod__AWhileExpr__visit_all(val
* self
, val
* p0
) {
9539 parser_prod__AWhileExpr__visit_all(self
, p0
); /* Direct call parser_prod#AWhileExpr#visit_all on <self:Object(AWhileExpr)>*/
9542 /* method parser_prod#ALoopExpr#init_aloopexpr for (self: ALoopExpr, nullable TKwloop, nullable AExpr, nullable ALabel) */
9543 void parser_prod__ALoopExpr__init_aloopexpr(val
* self
, val
* p0
, val
* p1
, val
* p2
) {
9544 val
* var_n_kwloop
/* var n_kwloop: nullable TKwloop */;
9545 val
* var_n_block
/* var n_block: nullable AExpr */;
9546 val
* var_n_label
/* var n_label: nullable ALabel */;
9547 val
* var
/* : null */;
9548 short int var2
/* : Bool */;
9549 short int var3
/* : Bool */;
9550 val
* var_other
/* var other: nullable Object */;
9551 short int var5
/* : Bool */;
9552 short int var6
/* : Bool */;
9553 short int var7
/* : Bool */;
9554 val
* var9
/* : null */;
9555 short int var10
/* : Bool */;
9556 short int var11
/* : Bool */;
9557 short int var13
/* : Bool */;
9558 short int var14
/* : Bool */;
9559 short int var15
/* : Bool */;
9563 if (unlikely(var_n_kwloop
== NULL
)) {
9564 PRINT_ERROR("Runtime error: %s", "Cast failed");
9565 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2708);
9568 self
->attrs
[COLOR_parser_nodes__ALoopExpr___n_kwloop
].val
= var_n_kwloop
; /* _n_kwloop on <self:ALoopExpr> */
9569 if (var_n_kwloop
== NULL
) {
9570 PRINT_ERROR("Runtime error: %s", "Receiver is null");
9571 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2709);
9574 { /* Inline parser_nodes#ANode#parent= (var_n_kwloop,self) on <var_n_kwloop:nullable TKwloop> */
9575 if (unlikely(var_n_kwloop
== NULL
)) {
9576 PRINT_ERROR("Runtime error: %s", "Receiver is null");
9577 PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36);
9580 var_n_kwloop
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_kwloop:nullable TKwloop> */
9584 self
->attrs
[COLOR_parser_nodes__ALoopExpr___n_block
].val
= var_n_block
; /* _n_block on <self:ALoopExpr> */
9586 if (var_n_block
== NULL
) {
9587 var2
= 0; /* is null */
9589 var2
= 1; /* arg is null and recv is not */
9592 { /* Inline kernel#Object#!= (var_n_block,var) on <var_n_block:nullable AExpr> */
9595 var6
= ((short int (*)(val
*, val
*))(var_n_block
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_n_block
, var_other
) /* == on <var_n_block:nullable AExpr(AExpr)>*/;
9607 { /* Inline parser_nodes#ANode#parent= (var_n_block,self) on <var_n_block:nullable AExpr(AExpr)> */
9608 var_n_block
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_block:nullable AExpr(AExpr)> */
9614 self
->attrs
[COLOR_parser_nodes__ALabelable___n_label
].val
= var_n_label
; /* _n_label on <self:ALoopExpr> */
9616 if (var_n_label
== NULL
) {
9617 var10
= 0; /* is null */
9619 var10
= 1; /* arg is null and recv is not */
9622 { /* Inline kernel#Object#!= (var_n_label,var9) on <var_n_label:nullable ALabel> */
9625 var14
= ((short int (*)(val
*, val
*))(var_n_label
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_n_label
, var_other
) /* == on <var_n_label:nullable ALabel(ALabel)>*/;
9631 RET_LABEL12
:(void)0;
9637 { /* Inline parser_nodes#ANode#parent= (var_n_label,self) on <var_n_label:nullable ALabel(ALabel)> */
9638 var_n_label
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_n_label:nullable ALabel(ALabel)> */
9639 RET_LABEL16
:(void)0;
9646 /* method parser_prod#ALoopExpr#init_aloopexpr for (self: Object, nullable TKwloop, nullable AExpr, nullable ALabel) */
9647 void VIRTUAL_parser_prod__ALoopExpr__init_aloopexpr(val
* self
, val
* p0
, val
* p1
, val
* p2
) {
9648 parser_prod__ALoopExpr__init_aloopexpr(self
, p0
, p1
, p2
); /* Direct call parser_prod#ALoopExpr#init_aloopexpr on <self:Object(ALoopExpr)>*/
9651 /* method parser_prod#ALoopExpr#replace_child for (self: ALoopExpr, ANode, nullable ANode) */
9652 void parser_prod__ALoopExpr__replace_child(val
* self
, val
* p0
, val
* p1
) {
9653 val
* var_old_child
/* var old_child: ANode */;
9654 val
* var_new_child
/* var new_child: nullable ANode */;
9655 val
* var
/* : TKwloop */;
9656 short int var1
/* : Bool */;
9657 short int var2
/* : Bool */;
9658 val
* var_other
/* var other: nullable Object */;
9659 short int var4
/* : Bool */;
9660 short int var6
/* : Bool */;
9661 short int var7
/* : Bool */;
9664 const char* var_class_name
;
9665 val
* var8
/* : nullable AExpr */;
9666 short int var9
/* : Bool */;
9667 short int var10
/* : Bool */;
9668 short int var12
/* : Bool */;
9669 short int var14
/* : Bool */;
9670 short int var15
/* : Bool */;
9673 const char* var_class_name18
;
9674 val
* var19
/* : nullable ALabel */;
9675 short int var20
/* : Bool */;
9676 short int var21
/* : Bool */;
9677 short int var23
/* : Bool */;
9678 short int var25
/* : Bool */;
9679 short int var26
/* : Bool */;
9682 const char* var_class_name29
;
9685 var
= self
->attrs
[COLOR_parser_nodes__ALoopExpr___n_kwloop
].val
; /* _n_kwloop on <self:ALoopExpr> */
9686 if (unlikely(var
== NULL
)) {
9687 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwloop");
9688 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2718);
9692 { /* Inline kernel#Object#== (var,var_old_child) on <var:TKwloop> */
9693 var_other
= var_old_child
;
9695 { /* Inline kernel#Object#is_same_instance (var,var_other) on <var:TKwloop> */
9696 var6
= var
== var_other
;
9709 /* <var_new_child:nullable ANode> isa TKwloop */
9710 cltype
= type_parser_nodes__TKwloop
.color
;
9711 idtype
= type_parser_nodes__TKwloop
.id
;
9712 if(var_new_child
== NULL
) {
9715 if(cltype
>= var_new_child
->type
->table_size
) {
9718 var7
= var_new_child
->type
->type_table
[cltype
] == idtype
;
9721 if (unlikely(!var7
)) {
9722 var_class_name
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
9723 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwloop", var_class_name
);
9724 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2719);
9728 parser_prod__ALoopExpr__n_kwloop_61d(self
, var_new_child
); /* Direct call parser_prod#ALoopExpr#n_kwloop= on <self:ALoopExpr>*/
9733 var8
= self
->attrs
[COLOR_parser_nodes__ALoopExpr___n_block
].val
; /* _n_block on <self:ALoopExpr> */
9735 var9
= 0; /* <var_old_child:ANode> cannot be null */
9737 { /* Inline kernel#Object#== (var8,var_old_child) on <var8:nullable AExpr> */
9738 var_other
= var_old_child
;
9740 { /* Inline kernel#Object#is_same_instance (var8,var_other) on <var8:nullable AExpr(AExpr)> */
9741 var14
= var8
== var_other
;
9744 RET_LABEL13
:(void)0;
9749 RET_LABEL11
:(void)0;
9754 /* <var_new_child:nullable ANode> isa nullable AExpr */
9755 cltype16
= type_nullable_parser_nodes__AExpr
.color
;
9756 idtype17
= type_nullable_parser_nodes__AExpr
.id
;
9757 if(var_new_child
== NULL
) {
9760 if(cltype16
>= var_new_child
->type
->table_size
) {
9763 var15
= var_new_child
->type
->type_table
[cltype16
] == idtype17
;
9766 if (unlikely(!var15
)) {
9767 var_class_name18
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
9768 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable AExpr", var_class_name18
);
9769 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2723);
9773 parser_prod__ALoopExpr__n_block_61d(self
, var_new_child
); /* Direct call parser_prod#ALoopExpr#n_block= on <self:ALoopExpr>*/
9778 var19
= self
->attrs
[COLOR_parser_nodes__ALabelable___n_label
].val
; /* _n_label on <self:ALoopExpr> */
9779 if (var19
== NULL
) {
9780 var20
= 0; /* <var_old_child:ANode> cannot be null */
9782 { /* Inline kernel#Object#== (var19,var_old_child) on <var19:nullable ALabel> */
9783 var_other
= var_old_child
;
9785 { /* Inline kernel#Object#is_same_instance (var19,var_other) on <var19:nullable ALabel(ALabel)> */
9786 var25
= var19
== var_other
;
9789 RET_LABEL24
:(void)0;
9794 RET_LABEL22
:(void)0;
9799 /* <var_new_child:nullable ANode> isa nullable ALabel */
9800 cltype27
= type_nullable_parser_nodes__ALabel
.color
;
9801 idtype28
= type_nullable_parser_nodes__ALabel
.id
;
9802 if(var_new_child
== NULL
) {
9805 if(cltype27
>= var_new_child
->type
->table_size
) {
9808 var26
= var_new_child
->type
->type_table
[cltype27
] == idtype28
;
9811 if (unlikely(!var26
)) {
9812 var_class_name29
= var_new_child
== NULL ?
"null" : var_new_child
->type
->name
;
9813 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable ALabel", var_class_name29
);
9814 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2727);
9818 parser_prod__ALoopExpr__n_label_61d(self
, var_new_child
); /* Direct call parser_prod#ALoopExpr#n_label= on <self:ALoopExpr>*/
9825 /* method parser_prod#ALoopExpr#replace_child for (self: Object, ANode, nullable ANode) */
9826 void VIRTUAL_parser_prod__ALoopExpr__replace_child(val
* self
, val
* p0
, val
* p1
) {
9827 parser_prod__ALoopExpr__replace_child(self
, p0
, p1
); /* Direct call parser_prod#ALoopExpr#replace_child on <self:Object(ALoopExpr)>*/
9830 /* method parser_prod#ALoopExpr#n_kwloop= for (self: ALoopExpr, TKwloop) */
9831 void parser_prod__ALoopExpr__n_kwloop_61d(val
* self
, val
* p0
) {
9832 val
* var_node
/* var node: TKwloop */;
9834 self
->attrs
[COLOR_parser_nodes__ALoopExpr___n_kwloop
].val
= var_node
; /* _n_kwloop on <self:ALoopExpr> */
9836 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:TKwloop> */
9837 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:TKwloop> */
9843 /* method parser_prod#ALoopExpr#n_kwloop= for (self: Object, TKwloop) */
9844 void VIRTUAL_parser_prod__ALoopExpr__n_kwloop_61d(val
* self
, val
* p0
) {
9845 parser_prod__ALoopExpr__n_kwloop_61d(self
, p0
); /* Direct call parser_prod#ALoopExpr#n_kwloop= on <self:Object(ALoopExpr)>*/
9848 /* method parser_prod#ALoopExpr#n_block= for (self: ALoopExpr, nullable AExpr) */
9849 void parser_prod__ALoopExpr__n_block_61d(val
* self
, val
* p0
) {
9850 val
* var_node
/* var node: nullable AExpr */;
9851 val
* var
/* : null */;
9852 short int var1
/* : Bool */;
9853 short int var2
/* : Bool */;
9854 val
* var_other
/* var other: nullable Object */;
9855 short int var4
/* : Bool */;
9856 short int var5
/* : Bool */;
9857 short int var6
/* : Bool */;
9859 self
->attrs
[COLOR_parser_nodes__ALoopExpr___n_block
].val
= var_node
; /* _n_block on <self:ALoopExpr> */
9861 if (var_node
== NULL
) {
9862 var1
= 0; /* is null */
9864 var1
= 1; /* arg is null and recv is not */
9867 { /* Inline kernel#Object#!= (var_node,var) on <var_node:nullable AExpr> */
9870 var5
= ((short int (*)(val
*, val
*))(var_node
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_node
, var_other
) /* == on <var_node:nullable AExpr(AExpr)>*/;
9882 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:nullable AExpr(AExpr)> */
9883 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:nullable AExpr(AExpr)> */
9891 /* method parser_prod#ALoopExpr#n_block= for (self: Object, nullable AExpr) */
9892 void VIRTUAL_parser_prod__ALoopExpr__n_block_61d(val
* self
, val
* p0
) {
9893 parser_prod__ALoopExpr__n_block_61d(self
, p0
); /* Direct call parser_prod#ALoopExpr#n_block= on <self:Object(ALoopExpr)>*/
9896 /* method parser_prod#ALoopExpr#n_label= for (self: ALoopExpr, nullable ALabel) */
9897 void parser_prod__ALoopExpr__n_label_61d(val
* self
, val
* p0
) {
9898 val
* var_node
/* var node: nullable ALabel */;
9899 val
* var
/* : null */;
9900 short int var1
/* : Bool */;
9901 short int var2
/* : Bool */;
9902 val
* var_other
/* var other: nullable Object */;
9903 short int var4
/* : Bool */;
9904 short int var5
/* : Bool */;
9905 short int var6
/* : Bool */;
9907 self
->attrs
[COLOR_parser_nodes__ALabelable___n_label
].val
= var_node
; /* _n_label on <self:ALoopExpr> */
9909 if (var_node
== NULL
) {
9910 var1
= 0; /* is null */
9912 var1
= 1; /* arg is null and recv is not */
9915 { /* Inline kernel#Object#!= (var_node,var) on <var_node:nullable ALabel> */
9918 var5
= ((short int (*)(val
*, val
*))(var_node
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_node
, var_other
) /* == on <var_node:nullable ALabel(ALabel)>*/;
9930 { /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:nullable ALabel(ALabel)> */
9931 var_node
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_node:nullable ALabel(ALabel)> */
9939 /* method parser_prod#ALoopExpr#n_label= for (self: Object, nullable ALabel) */
9940 void VIRTUAL_parser_prod__ALoopExpr__n_label_61d(val
* self
, val
* p0
) {
9941 parser_prod__ALoopExpr__n_label_61d(self
, p0
); /* Direct call parser_prod#ALoopExpr#n_label= on <self:Object(ALoopExpr)>*/
9944 /* method parser_prod#ALoopExpr#visit_all for (self: ALoopExpr, Visitor) */
9945 void parser_prod__ALoopExpr__visit_all(val
* self
, val
* p0
) {
9946 val
* var_v
/* var v: Visitor */;
9947 val
* var
/* : TKwloop */;
9948 val
* var1
/* : nullable AExpr */;
9949 val
* var2
/* : nullable ALabel */;
9951 var
= self
->attrs
[COLOR_parser_nodes__ALoopExpr___n_kwloop
].val
; /* _n_kwloop on <self:ALoopExpr> */
9952 if (unlikely(var
== NULL
)) {
9953 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwloop");
9954 PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 2751);
9958 parser_nodes__Visitor__enter_visit(var_v
, var
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
9960 var1
= self
->attrs
[COLOR_parser_nodes__ALoopExpr___n_block
].val
; /* _n_block on <self:ALoopExpr> */
9962 parser_nodes__Visitor__enter_visit(var_v
, var1
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
9964 var2
= self
->attrs
[COLOR_parser_nodes__ALabelable___n_label
].val
; /* _n_label on <self:ALoopExpr> */
9966 parser_nodes__Visitor__enter_visit(var_v
, var2
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:Visitor>*/
9970 /* method parser_prod#ALoopExpr#visit_all for (self: Object, Visitor) */
9971 void VIRTUAL_parser_prod__ALoopExpr__visit_all(val
* self
, val
* p0
) {
9972 parser_prod__ALoopExpr__visit_all(self
, p0
); /* Direct call parser_prod#ALoopExpr#visit_all on <self:Object(ALoopExpr)>*/