1 #include "nit__astbuilder.sep.0.h"
2 /* method astbuilder#ASTBuilder#mmodule for (self: ASTBuilder): MModule */
3 val
* nit___nit__ASTBuilder___mmodule(val
* self
) {
4 val
* var
/* : MModule */;
5 val
* var1
/* : MModule */;
6 var1
= self
->attrs
[COLOR_nit__astbuilder__ASTBuilder___mmodule
].val
; /* _mmodule on <self:ASTBuilder> */
7 if (unlikely(var1
== NULL
)) {
8 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mmodule");
9 PRINT_ERROR(" (%s:%d)\n", FILE_nit__astbuilder
, 25);
16 /* method astbuilder#ASTBuilder#mmodule= for (self: ASTBuilder, MModule) */
17 void nit___nit__ASTBuilder___mmodule_61d(val
* self
, val
* p0
) {
18 self
->attrs
[COLOR_nit__astbuilder__ASTBuilder___mmodule
].val
= p0
; /* _mmodule on <self:ASTBuilder> */
21 /* method astbuilder#ASTBuilder#anchor for (self: ASTBuilder): nullable MClassType */
22 val
* nit___nit__ASTBuilder___anchor(val
* self
) {
23 val
* var
/* : nullable MClassType */;
24 val
* var1
/* : nullable MClassType */;
25 var1
= self
->attrs
[COLOR_nit__astbuilder__ASTBuilder___anchor
].val
; /* _anchor on <self:ASTBuilder> */
30 /* method astbuilder#ASTBuilder#anchor= for (self: ASTBuilder, nullable MClassType) */
31 void nit___nit__ASTBuilder___anchor_61d(val
* self
, val
* p0
) {
32 self
->attrs
[COLOR_nit__astbuilder__ASTBuilder___anchor
].val
= p0
; /* _anchor on <self:ASTBuilder> */
35 /* method astbuilder#ASTBuilder#make_int for (self: ASTBuilder, Int): AIntExpr */
36 val
* nit___nit__ASTBuilder___make_int(val
* self
, long p0
) {
37 val
* var
/* : AIntExpr */;
38 long var_value
/* var value: Int */;
39 val
* var1
/* : ADecIntExpr */;
40 val
* var2
/* : MModule */;
41 val
* var4
/* : MModule */;
43 val
* var5
/* : String */;
44 char* var6
/* : NativeString */;
45 long var7
/* : Int */;
46 val
* var8
/* : FlatString */;
47 val
* var9
/* : MClass */;
48 val
* var10
/* : MClassType */;
49 val
* var12
/* : MClassType */;
51 var1
= NEW_nit__ADecIntExpr(&type_nit__ADecIntExpr
);
53 { /* Inline astbuilder#ASTBuilder#mmodule (self) on <self:ASTBuilder> */
54 var4
= self
->attrs
[COLOR_nit__astbuilder__ASTBuilder___mmodule
].val
; /* _mmodule on <self:ASTBuilder> */
55 if (unlikely(var4
== NULL
)) {
56 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mmodule");
57 PRINT_ERROR(" (%s:%d)\n", FILE_nit__astbuilder
, 25);
69 var8
= standard___standard__NativeString___to_s_with_length(var6
, var7
);
74 var9
= nit__model___MModule___get_primitive_class(var2
, var5
);
77 { /* Inline model#MClass#mclass_type (var9) on <var9:MClass> */
78 var12
= var9
->attrs
[COLOR_nit__model__MClass___mclass_type
].val
; /* _mclass_type on <var9:MClass> */
79 if (unlikely(var12
== NULL
)) {
80 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass_type");
81 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 438);
89 nit__astbuilder___ADecIntExpr___make(var1
, var_value
, var10
); /* Direct call astbuilder#ADecIntExpr#make on <var1:ADecIntExpr>*/
96 /* method astbuilder#ASTBuilder#make_new for (self: ASTBuilder, CallSite, nullable Array[AExpr]): ANewExpr */
97 val
* nit___nit__ASTBuilder___make_new(val
* self
, val
* p0
, val
* p1
) {
98 val
* var
/* : ANewExpr */;
99 val
* var_callsite
/* var callsite: CallSite */;
100 val
* var_args
/* var args: nullable Array[AExpr] */;
101 val
* var1
/* : ANewExpr */;
104 var1
= NEW_nit__ANewExpr(&type_nit__ANewExpr
);
106 nit__astbuilder___ANewExpr___make(var1
, var_callsite
, var_args
); /* Direct call astbuilder#ANewExpr#make on <var1:ANewExpr>*/
113 /* method astbuilder#ASTBuilder#make_call for (self: ASTBuilder, AExpr, CallSite, nullable Array[AExpr]): ACallExpr */
114 val
* nit___nit__ASTBuilder___make_call(val
* self
, val
* p0
, val
* p1
, val
* p2
) {
115 val
* var
/* : ACallExpr */;
116 val
* var_recv
/* var recv: AExpr */;
117 val
* var_callsite
/* var callsite: CallSite */;
118 val
* var_args
/* var args: nullable Array[AExpr] */;
119 val
* var1
/* : ACallExpr */;
123 var1
= NEW_nit__ACallExpr(&type_nit__ACallExpr
);
125 nit__astbuilder___ACallExpr___make(var1
, var_recv
, var_callsite
, var_args
); /* Direct call astbuilder#ACallExpr#make on <var1:ACallExpr>*/
132 /* method astbuilder#ASTBuilder#make_block for (self: ASTBuilder): ABlockExpr */
133 val
* nit___nit__ASTBuilder___make_block(val
* self
) {
134 val
* var
/* : ABlockExpr */;
135 val
* var1
/* : ABlockExpr */;
136 var1
= NEW_nit__ABlockExpr(&type_nit__ABlockExpr
);
138 nit__astbuilder___ABlockExpr___make(var1
); /* Direct call astbuilder#ABlockExpr#make on <var1:ABlockExpr>*/
145 /* method astbuilder#ASTBuilder#make_loop for (self: ASTBuilder): ALoopExpr */
146 val
* nit___nit__ASTBuilder___make_loop(val
* self
) {
147 val
* var
/* : ALoopExpr */;
148 val
* var1
/* : ALoopExpr */;
149 var1
= NEW_nit__ALoopExpr(&type_nit__ALoopExpr
);
151 nit__astbuilder___ALoopExpr___make(var1
); /* Direct call astbuilder#ALoopExpr#make on <var1:ALoopExpr>*/
158 /* method astbuilder#ASTBuilder#make_var_read for (self: ASTBuilder, Variable, MType): AVarExpr */
159 val
* nit___nit__ASTBuilder___make_var_read(val
* self
, val
* p0
, val
* p1
) {
160 val
* var
/* : AVarExpr */;
161 val
* var_variable
/* var variable: Variable */;
162 val
* var_mtype
/* var mtype: MType */;
163 val
* var1
/* : AVarExpr */;
166 var1
= NEW_nit__AVarExpr(&type_nit__AVarExpr
);
168 nit__astbuilder___AVarExpr___make(var1
, var_variable
, var_mtype
); /* Direct call astbuilder#AVarExpr#make on <var1:AVarExpr>*/
175 /* method astbuilder#ASTBuilder#make_var_assign for (self: ASTBuilder, Variable, AExpr): AVarAssignExpr */
176 val
* nit___nit__ASTBuilder___make_var_assign(val
* self
, val
* p0
, val
* p1
) {
177 val
* var
/* : AVarAssignExpr */;
178 val
* var_variable
/* var variable: Variable */;
179 val
* var_value
/* var value: AExpr */;
180 val
* var1
/* : AVarAssignExpr */;
183 var1
= NEW_nit__AVarAssignExpr(&type_nit__AVarAssignExpr
);
185 nit__astbuilder___AVarAssignExpr___make(var1
, var_variable
, var_value
); /* Direct call astbuilder#AVarAssignExpr#make on <var1:AVarAssignExpr>*/
192 /* method astbuilder#ASTBuilder#make_attr_read for (self: ASTBuilder, AExpr, MAttribute): AAttrExpr */
193 val
* nit___nit__ASTBuilder___make_attr_read(val
* self
, val
* p0
, val
* p1
) {
194 val
* var
/* : AAttrExpr */;
195 val
* var_recv
/* var recv: AExpr */;
196 val
* var_attribute
/* var attribute: MAttribute */;
197 val
* var1
/* : MPropDef */;
198 val
* var3
/* : MPropDef */;
199 val
* var4
/* : nullable MType */;
200 val
* var6
/* : nullable MType */;
201 val
* var7
/* : nullable MType */;
202 val
* var8
/* : nullable MClassType */;
203 val
* var10
/* : nullable MClassType */;
204 val
* var11
/* : MModule */;
205 val
* var13
/* : MModule */;
206 short int var14
/* : Bool */;
207 val
* var15
/* : MType */;
208 val
* var_mtype
/* var mtype: MType */;
209 val
* var16
/* : AAttrExpr */;
213 { /* Inline model#MProperty#intro (var_attribute) on <var_attribute:MAttribute> */
214 var3
= var_attribute
->attrs
[COLOR_nit__model__MProperty___intro
].val
; /* _intro on <var_attribute:MAttribute> */
215 if (unlikely(var3
== NULL
)) {
216 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _intro");
217 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 1773);
225 { /* Inline model#MAttributeDef#static_mtype (var1) on <var1:MPropDef(MAttributeDef)> */
226 var6
= var1
->attrs
[COLOR_nit__model__MAttributeDef___static_mtype
].val
; /* _static_mtype on <var1:MPropDef(MAttributeDef)> */
232 var7
= ((val
* (*)(val
* self
))(var_recv
->class->vft
[COLOR_nit__typing__AExpr__mtype
]))(var_recv
) /* mtype on <var_recv:AExpr>*/;
234 if (unlikely(var7
== NULL
)) {
235 PRINT_ERROR("Runtime error: %s", "Cast failed");
236 PRINT_ERROR(" (%s:%d)\n", FILE_nit__astbuilder
, 77);
240 { /* Inline astbuilder#ASTBuilder#anchor (self) on <self:ASTBuilder> */
241 var10
= self
->attrs
[COLOR_nit__astbuilder__ASTBuilder___anchor
].val
; /* _anchor on <self:ASTBuilder> */
247 { /* Inline astbuilder#ASTBuilder#mmodule (self) on <self:ASTBuilder> */
248 var13
= self
->attrs
[COLOR_nit__astbuilder__ASTBuilder___mmodule
].val
; /* _mmodule on <self:ASTBuilder> */
249 if (unlikely(var13
== NULL
)) {
250 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mmodule");
251 PRINT_ERROR(" (%s:%d)\n", FILE_nit__astbuilder
, 25);
260 PRINT_ERROR("Runtime error: %s", "Receiver is null");
261 PRINT_ERROR(" (%s:%d)\n", FILE_nit__astbuilder
, 77);
264 var15
= ((val
* (*)(val
* self
, val
* p0
, val
* p1
, val
* p2
, short int p3
))(var4
->class->vft
[COLOR_nit__model__MType__resolve_for
]))(var4
, var7
, var8
, var11
, var14
) /* resolve_for on <var4:nullable MType>*/;
267 var16
= NEW_nit__AAttrExpr(&type_nit__AAttrExpr
);
269 nit__astbuilder___AAttrExpr___make(var16
, var_recv
, var_attribute
, var_mtype
); /* Direct call astbuilder#AAttrExpr#make on <var16:AAttrExpr>*/
276 /* method astbuilder#ASTBuilder#make_attr_assign for (self: ASTBuilder, AExpr, MAttribute, AExpr): AAttrAssignExpr */
277 val
* nit___nit__ASTBuilder___make_attr_assign(val
* self
, val
* p0
, val
* p1
, val
* p2
) {
278 val
* var
/* : AAttrAssignExpr */;
279 val
* var_recv
/* var recv: AExpr */;
280 val
* var_attribute
/* var attribute: MAttribute */;
281 val
* var_value
/* var value: AExpr */;
282 val
* var1
/* : AAttrAssignExpr */;
286 var1
= NEW_nit__AAttrAssignExpr(&type_nit__AAttrAssignExpr
);
288 nit__astbuilder___AAttrAssignExpr___make(var1
, var_recv
, var_attribute
, var_value
); /* Direct call astbuilder#AAttrAssignExpr#make on <var1:AAttrAssignExpr>*/
295 /* method astbuilder#ASTBuilder#make_do for (self: ASTBuilder): ADoExpr */
296 val
* nit___nit__ASTBuilder___make_do(val
* self
) {
297 val
* var
/* : ADoExpr */;
298 val
* var1
/* : ADoExpr */;
299 var1
= NEW_nit__ADoExpr(&type_nit__ADoExpr
);
301 nit__astbuilder___ADoExpr___make(var1
); /* Direct call astbuilder#ADoExpr#make on <var1:ADoExpr>*/
308 /* method astbuilder#ASTBuilder#make_break for (self: ASTBuilder, EscapeMark): ABreakExpr */
309 val
* nit___nit__ASTBuilder___make_break(val
* self
, val
* p0
) {
310 val
* var
/* : ABreakExpr */;
311 val
* var_escapemark
/* var escapemark: EscapeMark */;
312 val
* var1
/* : ABreakExpr */;
314 var1
= NEW_nit__ABreakExpr(&type_nit__ABreakExpr
);
316 nit__astbuilder___ABreakExpr___make(var1
, var_escapemark
); /* Direct call astbuilder#ABreakExpr#make on <var1:ABreakExpr>*/
323 /* method astbuilder#ASTBuilder#make_if for (self: ASTBuilder, AExpr, nullable MType): AIfExpr */
324 val
* nit___nit__ASTBuilder___make_if(val
* self
, val
* p0
, val
* p1
) {
325 val
* var
/* : AIfExpr */;
326 val
* var_condition
/* var condition: AExpr */;
327 val
* var_mtype
/* var mtype: nullable MType */;
328 val
* var1
/* : AIfExpr */;
331 var1
= NEW_nit__AIfExpr(&type_nit__AIfExpr
);
333 nit__astbuilder___AIfExpr___make(var1
, var_condition
, var_mtype
); /* Direct call astbuilder#AIfExpr#make on <var1:AIfExpr>*/
340 /* method astbuilder#ASTBuilder#init for (self: ASTBuilder) */
341 void nit___nit__ASTBuilder___standard__kernel__Object__init(val
* self
) {
343 ((void (*)(val
* self
))(self
->class->vft
[COLOR_nit___nit__ASTBuilder___standard__kernel__Object__init
]))(self
) /* init on <self:ASTBuilder>*/;
347 /* method astbuilder#AExpr#make_var_read for (self: AExpr): AVarExpr */
348 val
* nit__astbuilder___AExpr___make_var_read(val
* self
) {
349 val
* var
/* : AVarExpr */;
350 val
* var1
/* : nullable Variable */;
351 val
* var3
/* : nullable Variable */;
352 val
* var_variable
/* var variable: nullable Variable */;
353 val
* var4
/* : null */;
354 short int var5
/* : Bool */;
355 short int var6
/* : Bool */;
356 val
* var_other
/* var other: nullable Object */;
357 short int var8
/* : Bool */;
358 short int var10
/* : Bool */;
359 val
* var11
/* : nullable ANode */;
360 val
* var13
/* : nullable ANode */;
361 val
* var14
/* : null */;
362 short int var15
/* : Bool */;
363 short int var16
/* : Bool */;
364 val
* var_other18
/* var other: nullable Object */;
365 short int var19
/* : Bool */;
366 short int var20
/* : Bool */;
367 val
* var21
/* : AExpr */;
368 val
* var_place
/* var place: AExpr */;
369 val
* var22
/* : Variable */;
371 val
* var23
/* : String */;
372 char* var24
/* : NativeString */;
373 long var25
/* : Int */;
374 val
* var26
/* : FlatString */;
375 val
* var27
/* : nullable MType */;
376 val
* var29
/* : AVarAssignExpr */;
377 val
* var_nvar
/* var nvar: AVarAssignExpr */;
378 val
* var31
/* : AVarExpr */;
379 val
* var32
/* : nullable MType */;
380 val
* var34
/* : nullable MType */;
382 { /* Inline astbuilder#AExpr#variable_cache (self) on <self:AExpr> */
383 var3
= self
->attrs
[COLOR_nit__astbuilder__AExpr___variable_cache
].val
; /* _variable_cache on <self:AExpr> */
390 if (var_variable
== NULL
) {
391 var5
= 1; /* is null */
393 var5
= 0; /* arg is null but recv is not */
396 { /* Inline kernel#Object#== (var_variable,var4) on <var_variable:nullable Variable> */
399 { /* Inline kernel#Object#is_same_instance (var_variable,var_other) on <var_variable:nullable Variable(Variable)> */
400 var10
= var_variable
== var_other
;
414 { /* Inline parser_nodes#ANode#parent (self) on <self:AExpr> */
415 var13
= self
->attrs
[COLOR_nit__parser_nodes__ANode___parent
].val
; /* _parent on <self:AExpr> */
422 var15
= 0; /* is null */
424 var15
= 1; /* arg is null and recv is not */
427 { /* Inline kernel#Object#!= (var11,var14) on <var11:nullable ANode> */
430 var19
= ((short int (*)(val
* self
, val
* p0
))(var11
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var11
, var_other18
) /* == on <var11:nullable ANode(ANode)>*/;
439 if (unlikely(!var15
)) {
440 PRINT_ERROR("Runtime error: %s", "Assert failed");
441 PRINT_ERROR(" (%s:%d)\n", FILE_nit__astbuilder
, 117);
445 var21
= nit__astbuilder___AExpr___detach_with_placeholder(self
);
448 var22
= NEW_nit__Variable(&type_nit__Variable
);
454 var26
= standard___standard__NativeString___to_s_with_length(var24
, var25
);
459 ((void (*)(val
* self
, val
* p0
))(var22
->class->vft
[COLOR_nit__scope__Variable__name_61d
]))(var22
, var23
) /* name= on <var22:Variable>*/;
462 ((void (*)(val
* self
))(var22
->class->vft
[COLOR_standard__kernel__Object__init
]))(var22
) /* init on <var22:Variable>*/;
464 var_variable
= var22
;
466 var27
= ((val
* (*)(val
* self
))(self
->class->vft
[COLOR_nit__typing__AExpr__mtype
]))(self
) /* mtype on <self:AExpr>*/;
469 { /* Inline typing#Variable#declared_type= (var_variable,var27) on <var_variable:nullable Variable(Variable)> */
470 var_variable
->attrs
[COLOR_nit__typing__Variable___declared_type
].val
= var27
; /* _declared_type on <var_variable:nullable Variable(Variable)> */
474 var29
= NEW_nit__AVarAssignExpr(&type_nit__AVarAssignExpr
);
476 nit__astbuilder___AVarAssignExpr___make(var29
, var_variable
, self
); /* Direct call astbuilder#AVarAssignExpr#make on <var29:AVarAssignExpr>*/
480 nit___nit__Prod___ANode__replace_with(var_place
, var_nvar
); /* Direct call parser_nodes#Prod#replace_with on <var_place:AExpr>*/
483 { /* Inline astbuilder#AExpr#variable_cache= (self,var_variable) on <self:AExpr> */
484 self
->attrs
[COLOR_nit__astbuilder__AExpr___variable_cache
].val
= var_variable
; /* _variable_cache on <self:AExpr> */
490 var31
= NEW_nit__AVarExpr(&type_nit__AVarExpr
);
492 { /* Inline typing#Variable#declared_type (var_variable) on <var_variable:nullable Variable(Variable)> */
493 var34
= var_variable
->attrs
[COLOR_nit__typing__Variable___declared_type
].val
; /* _declared_type on <var_variable:nullable Variable(Variable)> */
498 if (unlikely(var32
== NULL
)) {
499 PRINT_ERROR("Runtime error: %s", "Cast failed");
500 PRINT_ERROR(" (%s:%d)\n", FILE_nit__astbuilder
, 125);
504 nit__astbuilder___AVarExpr___make(var31
, var_variable
, var32
); /* Direct call astbuilder#AVarExpr#make on <var31:AVarExpr>*/
511 /* method astbuilder#AExpr#variable_cache for (self: AExpr): nullable Variable */
512 val
* nit__astbuilder___AExpr___variable_cache(val
* self
) {
513 val
* var
/* : nullable Variable */;
514 val
* var1
/* : nullable Variable */;
515 var1
= self
->attrs
[COLOR_nit__astbuilder__AExpr___variable_cache
].val
; /* _variable_cache on <self:AExpr> */
520 /* method astbuilder#AExpr#variable_cache= for (self: AExpr, nullable Variable) */
521 void nit__astbuilder___AExpr___variable_cache_61d(val
* self
, val
* p0
) {
522 self
->attrs
[COLOR_nit__astbuilder__AExpr___variable_cache
].val
= p0
; /* _variable_cache on <self:AExpr> */
525 /* method astbuilder#AExpr#detach_with_placeholder for (self: AExpr): AExpr */
526 val
* nit__astbuilder___AExpr___detach_with_placeholder(val
* self
) {
527 val
* var
/* : AExpr */;
528 val
* var1
/* : APlaceholderExpr */;
529 val
* var_h
/* var h: APlaceholderExpr */;
530 var1
= NEW_nit__APlaceholderExpr(&type_nit__APlaceholderExpr
);
532 nit___nit__APlaceholderExpr___make(var1
); /* Direct call astbuilder#APlaceholderExpr#make on <var1:APlaceholderExpr>*/
536 nit___nit__Prod___ANode__replace_with(self
, var_h
); /* Direct call parser_nodes#Prod#replace_with on <self:AExpr>*/
543 /* method astbuilder#AExpr#add for (self: AExpr, AExpr) */
544 void nit__astbuilder___AExpr___add(val
* self
, val
* p0
) {
545 val
* var_expr
/* var expr: AExpr */;
547 val
* var
/* : String */;
548 char* var1
/* : NativeString */;
549 long var2
/* : Int */;
550 val
* var3
/* : FlatString */;
551 val
* var4
/* : String */;
552 val
* var5
/* : Array[Object] */;
553 long var6
/* : Int */;
554 val
* var7
/* : NativeArray[Object] */;
555 val
* var8
/* : String */;
560 var1
= "add not implemented in ";
562 var3
= standard___standard__NativeString___to_s_with_length(var1
, var2
);
567 var4
= standard__string___Object___inspect(self
);
569 var5
= NEW_standard__Array(&type_standard__Array__standard__Object
);
570 { /* var5 = array_instance Array[Object] */
572 var7
= NEW_standard__NativeArray(var6
, &type_standard__NativeArray__standard__Object
);
573 ((struct instance_standard__NativeArray
*)var7
)->values
[0] = (val
*) var
;
574 ((struct instance_standard__NativeArray
*)var7
)->values
[1] = (val
*) var4
;
576 ((void (*)(val
* self
, val
* p0
, long p1
))(var5
->class->vft
[COLOR_standard__array__Array__with_native
]))(var5
, var7
, var6
) /* with_native on <var5:Array[Object]>*/;
580 var8
= ((val
* (*)(val
* self
))(var5
->class->vft
[COLOR_standard__string__Object__to_s
]))(var5
) /* to_s on <var5:Array[Object]>*/;
583 standard__file___Object___print(self
, var8
); /* Direct call file#Object#print on <self:AExpr>*/
585 PRINT_ERROR("Runtime error: %s", "Aborted");
586 PRINT_ERROR(" (%s:%d)\n", FILE_nit__astbuilder
, 160);
590 /* method astbuilder#APlaceholderExpr#make for (self: APlaceholderExpr) */
591 void nit___nit__APlaceholderExpr___make(val
* self
) {
593 { /* Inline kernel#Object#init (self) on <self:APlaceholderExpr> */
599 /* method astbuilder#ABlockExpr#make for (self: ABlockExpr) */
600 void nit__astbuilder___ABlockExpr___make(val
* self
) {
601 short int var
/* : Bool */;
604 { /* Inline typing#AExpr#is_typed= (self,var) on <self:ABlockExpr> */
605 self
->attrs
[COLOR_nit__typing__AExpr___is_typed
].s
= var
; /* _is_typed on <self:ABlockExpr> */
611 /* method astbuilder#ABlockExpr#add for (self: ABlockExpr, AExpr) */
612 void nit__astbuilder___ABlockExpr___AExpr__add(val
* self
, val
* p0
) {
613 val
* var_expr
/* var expr: AExpr */;
614 val
* var
/* : ANodes[AExpr] */;
615 val
* var2
/* : ANodes[AExpr] */;
618 { /* Inline parser_nodes#ABlockExpr#n_expr (self) on <self:ABlockExpr> */
619 var2
= self
->attrs
[COLOR_nit__parser_nodes__ABlockExpr___n_expr
].val
; /* _n_expr on <self:ABlockExpr> */
620 if (unlikely(var2
== NULL
)) {
621 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
622 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes
, 1565);
630 standard___standard__Sequence___SimpleCollection__add(var
, var_expr
); /* Direct call abstract_collection#Sequence#add on <var:ANodes[AExpr]>*/
634 /* method astbuilder#ALoopExpr#make for (self: ALoopExpr) */
635 void nit__astbuilder___ALoopExpr___make(val
* self
) {
636 val
* var
/* : TKwloop */;
637 short int var2
/* : Bool */;
638 val
* var4
/* : ABlockExpr */;
639 val
* var6
/* : nullable AExpr */;
640 val
* var8
/* : nullable AExpr */;
641 short int var9
/* : Bool */;
642 var
= NEW_nit__TKwloop(&type_nit__TKwloop
);
644 { /* Inline kernel#Object#init (var) on <var:TKwloop> */
648 self
->attrs
[COLOR_nit__parser_nodes__ALoopExpr___n_kwloop
].val
= var
; /* _n_kwloop on <self:ALoopExpr> */
651 { /* Inline typing#AExpr#is_typed= (self,var2) on <self:ALoopExpr> */
652 self
->attrs
[COLOR_nit__typing__AExpr___is_typed
].s
= var2
; /* _is_typed on <self:ALoopExpr> */
656 var4
= NEW_nit__ABlockExpr(&type_nit__ABlockExpr
);
658 { /* Inline kernel#Object#init (var4) on <var4:ABlockExpr> */
663 nit__parser_prod___ALoopExpr___n_block_61d(self
, var4
); /* Direct call parser_prod#ALoopExpr#n_block= on <self:ALoopExpr>*/
666 { /* Inline parser_nodes#ALoopExpr#n_block (self) on <self:ALoopExpr> */
667 var8
= self
->attrs
[COLOR_nit__parser_nodes__ALoopExpr___n_block
].val
; /* _n_block on <self:ALoopExpr> */
674 PRINT_ERROR("Runtime error: %s", "Receiver is null");
675 PRINT_ERROR(" (%s:%d)\n", FILE_nit__astbuilder
, 196);
678 { /* Inline typing#AExpr#is_typed= (var6,var9) on <var6:nullable AExpr> */
679 if (unlikely(var6
== NULL
)) {
680 PRINT_ERROR("Runtime error: %s", "Receiver is null");
681 PRINT_ERROR(" (%s:%d)\n", FILE_nit__typing
, 627);
684 var6
->attrs
[COLOR_nit__typing__AExpr___is_typed
].s
= var9
; /* _is_typed on <var6:nullable AExpr> */
690 /* method astbuilder#ALoopExpr#add for (self: ALoopExpr, AExpr) */
691 void nit__astbuilder___ALoopExpr___AExpr__add(val
* self
, val
* p0
) {
692 val
* var_expr
/* var expr: AExpr */;
693 val
* var
/* : nullable AExpr */;
694 val
* var2
/* : nullable AExpr */;
697 { /* Inline parser_nodes#ALoopExpr#n_block (self) on <self:ALoopExpr> */
698 var2
= self
->attrs
[COLOR_nit__parser_nodes__ALoopExpr___n_block
].val
; /* _n_block on <self:ALoopExpr> */
704 PRINT_ERROR("Runtime error: %s", "Receiver is null");
705 PRINT_ERROR(" (%s:%d)\n", FILE_nit__astbuilder
, 201);
708 ((void (*)(val
* self
, val
* p0
))(var
->class->vft
[COLOR_nit__astbuilder__AExpr__add
]))(var
, var_expr
) /* add on <var:nullable AExpr>*/;
712 /* method astbuilder#ADoExpr#make for (self: ADoExpr) */
713 void nit__astbuilder___ADoExpr___make(val
* self
) {
714 val
* var
/* : TKwdo */;
715 short int var2
/* : Bool */;
716 val
* var4
/* : ABlockExpr */;
717 val
* var6
/* : nullable AExpr */;
718 val
* var8
/* : nullable AExpr */;
719 short int var9
/* : Bool */;
720 var
= NEW_nit__TKwdo(&type_nit__TKwdo
);
722 { /* Inline kernel#Object#init (var) on <var:TKwdo> */
726 self
->attrs
[COLOR_nit__parser_nodes__ADoExpr___n_kwdo
].val
= var
; /* _n_kwdo on <self:ADoExpr> */
729 { /* Inline typing#AExpr#is_typed= (self,var2) on <self:ADoExpr> */
730 self
->attrs
[COLOR_nit__typing__AExpr___is_typed
].s
= var2
; /* _is_typed on <self:ADoExpr> */
734 var4
= NEW_nit__ABlockExpr(&type_nit__ABlockExpr
);
736 { /* Inline kernel#Object#init (var4) on <var4:ABlockExpr> */
741 nit__parser_prod___ADoExpr___n_block_61d(self
, var4
); /* Direct call parser_prod#ADoExpr#n_block= on <self:ADoExpr>*/
744 { /* Inline parser_nodes#ADoExpr#n_block (self) on <self:ADoExpr> */
745 var8
= self
->attrs
[COLOR_nit__parser_nodes__ADoExpr___n_block
].val
; /* _n_block on <self:ADoExpr> */
752 PRINT_ERROR("Runtime error: %s", "Receiver is null");
753 PRINT_ERROR(" (%s:%d)\n", FILE_nit__astbuilder
, 211);
756 { /* Inline typing#AExpr#is_typed= (var6,var9) on <var6:nullable AExpr> */
757 if (unlikely(var6
== NULL
)) {
758 PRINT_ERROR("Runtime error: %s", "Receiver is null");
759 PRINT_ERROR(" (%s:%d)\n", FILE_nit__typing
, 627);
762 var6
->attrs
[COLOR_nit__typing__AExpr___is_typed
].s
= var9
; /* _is_typed on <var6:nullable AExpr> */
768 /* method astbuilder#ADoExpr#add for (self: ADoExpr, AExpr) */
769 void nit__astbuilder___ADoExpr___AExpr__add(val
* self
, val
* p0
) {
770 val
* var_expr
/* var expr: AExpr */;
771 val
* var
/* : nullable AExpr */;
772 val
* var2
/* : nullable AExpr */;
775 { /* Inline parser_nodes#ADoExpr#n_block (self) on <self:ADoExpr> */
776 var2
= self
->attrs
[COLOR_nit__parser_nodes__ADoExpr___n_block
].val
; /* _n_block on <self:ADoExpr> */
782 PRINT_ERROR("Runtime error: %s", "Receiver is null");
783 PRINT_ERROR(" (%s:%d)\n", FILE_nit__astbuilder
, 227);
786 ((void (*)(val
* self
, val
* p0
))(var
->class->vft
[COLOR_nit__astbuilder__AExpr__add
]))(var
, var_expr
) /* add on <var:nullable AExpr>*/;
790 /* method astbuilder#ABreakExpr#make for (self: ABreakExpr, EscapeMark) */
791 void nit__astbuilder___ABreakExpr___make(val
* self
, val
* p0
) {
792 val
* var_escapemark
/* var escapemark: EscapeMark */;
793 val
* var
/* : TKwbreak */;
794 val
* var3
/* : Array[AEscapeExpr] */;
795 val
* var5
/* : Array[AEscapeExpr] */;
796 short int var6
/* : Bool */;
798 var
= NEW_nit__TKwbreak(&type_nit__TKwbreak
);
800 { /* Inline kernel#Object#init (var) on <var:TKwbreak> */
804 self
->attrs
[COLOR_nit__parser_nodes__ABreakExpr___n_kwbreak
].val
= var
; /* _n_kwbreak on <self:ABreakExpr> */
806 { /* Inline scope#AEscapeExpr#escapemark= (self,var_escapemark) on <self:ABreakExpr> */
807 self
->attrs
[COLOR_nit__scope__AEscapeExpr___escapemark
].val
= var_escapemark
; /* _escapemark on <self:ABreakExpr> */
812 { /* Inline scope#EscapeMark#escapes (var_escapemark) on <var_escapemark:EscapeMark> */
813 var5
= var_escapemark
->attrs
[COLOR_nit__scope__EscapeMark___escapes
].val
; /* _escapes on <var_escapemark:EscapeMark> */
814 if (unlikely(var5
== NULL
)) {
815 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _escapes");
816 PRINT_ERROR(" (%s:%d)\n", FILE_nit__scope
, 58);
824 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var3
, self
); /* Direct call array#Array#add on <var3:Array[AEscapeExpr]>*/
828 { /* Inline typing#AExpr#is_typed= (self,var6) on <self:ABreakExpr> */
829 self
->attrs
[COLOR_nit__typing__AExpr___is_typed
].s
= var6
; /* _is_typed on <self:ABreakExpr> */
835 /* method astbuilder#AIfExpr#make for (self: AIfExpr, AExpr, nullable MType) */
836 void nit__astbuilder___AIfExpr___make(val
* self
, val
* p0
, val
* p1
) {
837 val
* var_condition
/* var condition: AExpr */;
838 val
* var_mtype
/* var mtype: nullable MType */;
839 val
* var
/* : TKwif */;
840 val
* var2
/* : AExpr */;
841 val
* var4
/* : ABlockExpr */;
842 val
* var5
/* : ABlockExpr */;
843 short int var7
/* : Bool */;
846 var
= NEW_nit__TKwif(&type_nit__TKwif
);
848 { /* Inline kernel#Object#init (var) on <var:TKwif> */
852 self
->attrs
[COLOR_nit__parser_nodes__AIfExpr___n_kwif
].val
= var
; /* _n_kwif on <self:AIfExpr> */
853 self
->attrs
[COLOR_nit__parser_nodes__AIfExpr___n_expr
].val
= var_condition
; /* _n_expr on <self:AIfExpr> */
854 var2
= self
->attrs
[COLOR_nit__parser_nodes__AIfExpr___n_expr
].val
; /* _n_expr on <self:AIfExpr> */
855 if (unlikely(var2
== NULL
)) {
856 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
857 PRINT_ERROR(" (%s:%d)\n", FILE_nit__astbuilder
, 246);
861 { /* Inline parser_nodes#ANode#parent= (var2,self) on <var2:AExpr> */
862 var2
->attrs
[COLOR_nit__parser_nodes__ANode___parent
].val
= self
; /* _parent on <var2:AExpr> */
866 var4
= NEW_nit__ABlockExpr(&type_nit__ABlockExpr
);
868 nit__astbuilder___ABlockExpr___make(var4
); /* Direct call astbuilder#ABlockExpr#make on <var4:ABlockExpr>*/
870 self
->attrs
[COLOR_nit__parser_nodes__AIfExpr___n_then
].val
= var4
; /* _n_then on <self:AIfExpr> */
871 var5
= NEW_nit__ABlockExpr(&type_nit__ABlockExpr
);
873 nit__astbuilder___ABlockExpr___make(var5
); /* Direct call astbuilder#ABlockExpr#make on <var5:ABlockExpr>*/
875 self
->attrs
[COLOR_nit__parser_nodes__AIfExpr___n_else
].val
= var5
; /* _n_else on <self:AIfExpr> */
877 { /* Inline typing#AExpr#mtype= (self,var_mtype) on <self:AIfExpr> */
878 self
->attrs
[COLOR_nit__typing__AExpr___mtype
].val
= var_mtype
; /* _mtype on <self:AIfExpr> */
884 { /* Inline typing#AExpr#is_typed= (self,var7) on <self:AIfExpr> */
885 self
->attrs
[COLOR_nit__typing__AExpr___is_typed
].s
= var7
; /* _is_typed on <self:AIfExpr> */
891 /* method astbuilder#AType#make for (self: AType) */
892 void nit__astbuilder___AType___make(val
* self
) {
893 val
* var
/* : TClassid */;
894 var
= NEW_nit__TClassid(&type_nit__TClassid
);
896 { /* Inline kernel#Object#init (var) on <var:TClassid> */
900 self
->attrs
[COLOR_nit__parser_nodes__AType___n_id
].val
= var
; /* _n_id on <self:AType> */
903 /* method astbuilder#ADecIntExpr#make for (self: ADecIntExpr, Int, MType) */
904 void nit__astbuilder___ADecIntExpr___make(val
* self
, long p0
, val
* p1
) {
905 long var_value
/* var value: Int */;
906 val
* var_t
/* var t: MType */;
907 val
* var
/* : nullable Int */;
908 val
* var2
/* : TNumber */;
912 { /* Inline literal#AIntExpr#value= (self,var_value) on <self:ADecIntExpr> */
913 var
= BOX_standard__Int(var_value
); /* autobox from Int to nullable Int */
914 self
->attrs
[COLOR_nit__literal__AIntExpr___value
].val
= var
; /* _value on <self:ADecIntExpr> */
918 var2
= NEW_nit__TNumber(&type_nit__TNumber
);
920 { /* Inline kernel#Object#init (var2) on <var2:TNumber> */
924 self
->attrs
[COLOR_nit__parser_nodes__ADecIntExpr___n_number
].val
= var2
; /* _n_number on <self:ADecIntExpr> */
926 { /* Inline typing#AExpr#mtype= (self,var_t) on <self:ADecIntExpr> */
927 self
->attrs
[COLOR_nit__typing__AExpr___mtype
].val
= var_t
; /* _mtype on <self:ADecIntExpr> */
933 /* method astbuilder#ANewExpr#make for (self: ANewExpr, CallSite, nullable Array[AExpr]) */
934 void nit__astbuilder___ANewExpr___make(val
* self
, val
* p0
, val
* p1
) {
935 val
* var_callsite
/* var callsite: CallSite */;
936 val
* var_args
/* var args: nullable Array[AExpr] */;
937 val
* var
/* : TKwnew */;
938 val
* var2
/* : AType */;
939 val
* var3
/* : AListExprs */;
940 val
* var5
/* : null */;
941 short int var6
/* : Bool */;
942 short int var7
/* : Bool */;
943 val
* var_other
/* var other: nullable Object */;
944 short int var9
/* : Bool */;
945 short int var10
/* : Bool */;
946 val
* var11
/* : AExprs */;
947 val
* var13
/* : AExprs */;
948 val
* var14
/* : ANodes[AExpr] */;
949 val
* var16
/* : ANodes[AExpr] */;
950 val
* var18
/* : MType */;
951 val
* var20
/* : MType */;
952 short int var21
/* : Bool */;
955 const char* var_class_name
;
956 val
* var23
/* : MMethod */;
957 val
* var25
/* : MMethod */;
958 short int var26
/* : Bool */;
959 short int var28
/* : Bool */;
960 val
* var29
/* : MSignature */;
961 val
* var31
/* : MSignature */;
962 val
* var32
/* : nullable MType */;
963 val
* var34
/* : nullable MType */;
964 val
* var36
/* : MType */;
965 val
* var38
/* : MType */;
966 short int var40
/* : Bool */;
969 var
= NEW_nit__TKwnew(&type_nit__TKwnew
);
971 { /* Inline kernel#Object#init (var) on <var:TKwnew> */
975 self
->attrs
[COLOR_nit__parser_nodes__ANewExpr___n_kwnew
].val
= var
; /* _n_kwnew on <self:ANewExpr> */
976 var2
= NEW_nit__AType(&type_nit__AType
);
978 nit__astbuilder___AType___make(var2
); /* Direct call astbuilder#AType#make on <var2:AType>*/
980 self
->attrs
[COLOR_nit__parser_nodes__ANewExpr___n_type
].val
= var2
; /* _n_type on <self:ANewExpr> */
981 var3
= NEW_nit__AListExprs(&type_nit__AListExprs
);
983 { /* Inline kernel#Object#init (var3) on <var3:AListExprs> */
987 self
->attrs
[COLOR_nit__parser_nodes__ANewExpr___n_args
].val
= var3
; /* _n_args on <self:ANewExpr> */
989 if (var_args
== NULL
) {
990 var6
= 0; /* is null */
992 var6
= 1; /* arg is null and recv is not */
995 { /* Inline kernel#Object#!= (var_args,var5) on <var_args:nullable Array[AExpr]> */
998 var9
= ((short int (*)(val
* self
, val
* p0
))(var_args
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_args
, var_other
) /* == on <var_args:nullable Array[AExpr](Array[AExpr])>*/;
1009 { /* Inline parser_nodes#ANewExpr#n_args (self) on <self:ANewExpr> */
1010 var13
= self
->attrs
[COLOR_nit__parser_nodes__ANewExpr___n_args
].val
; /* _n_args on <self:ANewExpr> */
1011 if (unlikely(var13
== NULL
)) {
1012 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args");
1013 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes
, 1968);
1017 RET_LABEL12
:(void)0;
1021 { /* Inline parser_nodes#AExprs#n_exprs (var11) on <var11:AExprs> */
1022 var16
= var11
->attrs
[COLOR_nit__parser_nodes__AExprs___n_exprs
].val
; /* _n_exprs on <var11:AExprs> */
1023 if (unlikely(var16
== NULL
)) {
1024 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_exprs");
1025 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes
, 2408);
1029 RET_LABEL15
:(void)0;
1033 standard___standard__SimpleCollection___add_all(var14
, var_args
); /* Direct call abstract_collection#SimpleCollection#add_all on <var14:ANodes[AExpr]>*/
1038 { /* Inline typing#ANewExpr#callsite= (self,var_callsite) on <self:ANewExpr> */
1039 self
->attrs
[COLOR_nit__typing__ANewExpr___callsite
].val
= var_callsite
; /* _callsite on <self:ANewExpr> */
1040 RET_LABEL17
:(void)0;
1044 { /* Inline typing#CallSite#recv (var_callsite) on <var_callsite:CallSite> */
1045 var20
= var_callsite
->attrs
[COLOR_nit__typing__CallSite___recv
].val
; /* _recv on <var_callsite:CallSite> */
1046 if (unlikely(var20
== NULL
)) {
1047 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _recv");
1048 PRINT_ERROR(" (%s:%d)\n", FILE_nit__typing
, 473);
1052 RET_LABEL19
:(void)0;
1055 /* <var18:MType> isa MClassType */
1056 cltype
= type_nit__MClassType
.color
;
1057 idtype
= type_nit__MClassType
.id
;
1058 if(cltype
>= var18
->type
->table_size
) {
1061 var21
= var18
->type
->type_table
[cltype
] == idtype
;
1063 if (unlikely(!var21
)) {
1064 var_class_name
= var18
== NULL ?
"null" : var18
->type
->name
;
1065 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "MClassType", var_class_name
);
1066 PRINT_ERROR(" (%s:%d)\n", FILE_nit__astbuilder
, 280);
1070 { /* Inline typing#ANewExpr#recvtype= (self,var18) on <self:ANewExpr> */
1071 self
->attrs
[COLOR_nit__typing__ANewExpr___recvtype
].val
= var18
; /* _recvtype on <self:ANewExpr> */
1072 RET_LABEL22
:(void)0;
1076 { /* Inline typing#CallSite#mproperty (var_callsite) on <var_callsite:CallSite> */
1077 var25
= var_callsite
->attrs
[COLOR_nit__typing__CallSite___mproperty
].val
; /* _mproperty on <var_callsite:CallSite> */
1078 if (unlikely(var25
== NULL
)) {
1079 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
1080 PRINT_ERROR(" (%s:%d)\n", FILE_nit__typing
, 487);
1084 RET_LABEL24
:(void)0;
1088 { /* Inline model#MMethod#is_new (var23) on <var23:MMethod> */
1089 var28
= var23
->attrs
[COLOR_nit__model__MMethod___is_new
].s
; /* _is_new on <var23:MMethod> */
1091 RET_LABEL27
:(void)0;
1096 { /* Inline typing#CallSite#msignature (var_callsite) on <var_callsite:CallSite> */
1097 var31
= var_callsite
->attrs
[COLOR_nit__typing__CallSite___msignature
].val
; /* _msignature on <var_callsite:CallSite> */
1098 if (unlikely(var31
== NULL
)) {
1099 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _msignature");
1100 PRINT_ERROR(" (%s:%d)\n", FILE_nit__typing
, 494);
1104 RET_LABEL30
:(void)0;
1108 { /* Inline model#MSignature#return_mtype (var29) on <var29:MSignature> */
1109 var34
= var29
->attrs
[COLOR_nit__model__MSignature___return_mtype
].val
; /* _return_mtype on <var29:MSignature> */
1111 RET_LABEL33
:(void)0;
1115 { /* Inline typing#AExpr#mtype= (self,var32) on <self:ANewExpr> */
1116 self
->attrs
[COLOR_nit__typing__AExpr___mtype
].val
= var32
; /* _mtype on <self:ANewExpr> */
1117 RET_LABEL35
:(void)0;
1122 { /* Inline typing#CallSite#recv (var_callsite) on <var_callsite:CallSite> */
1123 var38
= var_callsite
->attrs
[COLOR_nit__typing__CallSite___recv
].val
; /* _recv on <var_callsite:CallSite> */
1124 if (unlikely(var38
== NULL
)) {
1125 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _recv");
1126 PRINT_ERROR(" (%s:%d)\n", FILE_nit__typing
, 473);
1130 RET_LABEL37
:(void)0;
1134 { /* Inline typing#AExpr#mtype= (self,var36) on <self:ANewExpr> */
1135 self
->attrs
[COLOR_nit__typing__AExpr___mtype
].val
= var36
; /* _mtype on <self:ANewExpr> */
1136 RET_LABEL39
:(void)0;
1142 { /* Inline typing#AExpr#is_typed= (self,var40) on <self:ANewExpr> */
1143 self
->attrs
[COLOR_nit__typing__AExpr___is_typed
].s
= var40
; /* _is_typed on <self:ANewExpr> */
1144 RET_LABEL41
:(void)0;
1149 /* method astbuilder#ACallExpr#make for (self: ACallExpr, AExpr, CallSite, nullable Array[AExpr]) */
1150 void nit__astbuilder___ACallExpr___make(val
* self
, val
* p0
, val
* p1
, val
* p2
) {
1151 val
* var_recv
/* var recv: AExpr */;
1152 val
* var_callsite
/* var callsite: CallSite */;
1153 val
* var_args
/* var args: nullable Array[AExpr] */;
1154 val
* var
/* : AListExprs */;
1155 val
* var2
/* : TId */;
1156 val
* var4
/* : null */;
1157 short int var5
/* : Bool */;
1158 short int var6
/* : Bool */;
1159 val
* var_other
/* var other: nullable Object */;
1160 short int var8
/* : Bool */;
1161 short int var9
/* : Bool */;
1162 val
* var10
/* : AExprs */;
1163 val
* var12
/* : AExprs */;
1164 val
* var13
/* : ANodes[AExpr] */;
1165 val
* var15
/* : ANodes[AExpr] */;
1166 val
* var17
/* : MSignature */;
1167 val
* var19
/* : MSignature */;
1168 val
* var20
/* : nullable MType */;
1169 val
* var22
/* : nullable MType */;
1170 short int var24
/* : Bool */;
1174 self
->attrs
[COLOR_nit__parser_nodes__ASendExpr___n_expr
].val
= var_recv
; /* _n_expr on <self:ACallExpr> */
1175 var
= NEW_nit__AListExprs(&type_nit__AListExprs
);
1177 { /* Inline kernel#Object#init (var) on <var:AListExprs> */
1181 self
->attrs
[COLOR_nit__parser_nodes__ACallFormExpr___n_args
].val
= var
; /* _n_args on <self:ACallExpr> */
1182 var2
= NEW_nit__TId(&type_nit__TId
);
1184 { /* Inline kernel#Object#init (var2) on <var2:TId> */
1188 self
->attrs
[COLOR_nit__parser_nodes__ACallFormExpr___n_id
].val
= var2
; /* _n_id on <self:ACallExpr> */
1190 if (var_args
== NULL
) {
1191 var5
= 0; /* is null */
1193 var5
= 1; /* arg is null and recv is not */
1196 { /* Inline kernel#Object#!= (var_args,var4) on <var_args:nullable Array[AExpr]> */
1199 var8
= ((short int (*)(val
* self
, val
* p0
))(var_args
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_args
, var_other
) /* == on <var_args:nullable Array[AExpr](Array[AExpr])>*/;
1210 { /* Inline parser_nodes#ACallFormExpr#n_args (self) on <self:ACallExpr> */
1211 var12
= self
->attrs
[COLOR_nit__parser_nodes__ACallFormExpr___n_args
].val
; /* _n_args on <self:ACallExpr> */
1212 if (unlikely(var12
== NULL
)) {
1213 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args");
1214 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes
, 2002);
1218 RET_LABEL11
:(void)0;
1222 { /* Inline parser_nodes#AExprs#n_exprs (var10) on <var10:AExprs> */
1223 var15
= var10
->attrs
[COLOR_nit__parser_nodes__AExprs___n_exprs
].val
; /* _n_exprs on <var10:AExprs> */
1224 if (unlikely(var15
== NULL
)) {
1225 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_exprs");
1226 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes
, 2408);
1230 RET_LABEL14
:(void)0;
1234 standard___standard__SimpleCollection___add_all(var13
, var_args
); /* Direct call abstract_collection#SimpleCollection#add_all on <var13:ANodes[AExpr]>*/
1239 { /* Inline typing#ASendExpr#callsite= (self,var_callsite) on <self:ACallExpr> */
1240 self
->attrs
[COLOR_nit__typing__ASendExpr___callsite
].val
= var_callsite
; /* _callsite on <self:ACallExpr> */
1241 RET_LABEL16
:(void)0;
1245 { /* Inline typing#CallSite#msignature (var_callsite) on <var_callsite:CallSite> */
1246 var19
= var_callsite
->attrs
[COLOR_nit__typing__CallSite___msignature
].val
; /* _msignature on <var_callsite:CallSite> */
1247 if (unlikely(var19
== NULL
)) {
1248 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _msignature");
1249 PRINT_ERROR(" (%s:%d)\n", FILE_nit__typing
, 494);
1253 RET_LABEL18
:(void)0;
1257 { /* Inline model#MSignature#return_mtype (var17) on <var17:MSignature> */
1258 var22
= var17
->attrs
[COLOR_nit__model__MSignature___return_mtype
].val
; /* _return_mtype on <var17:MSignature> */
1260 RET_LABEL21
:(void)0;
1264 { /* Inline typing#AExpr#mtype= (self,var20) on <self:ACallExpr> */
1265 self
->attrs
[COLOR_nit__typing__AExpr___mtype
].val
= var20
; /* _mtype on <self:ACallExpr> */
1266 RET_LABEL23
:(void)0;
1271 { /* Inline typing#AExpr#is_typed= (self,var24) on <self:ACallExpr> */
1272 self
->attrs
[COLOR_nit__typing__AExpr___is_typed
].s
= var24
; /* _is_typed on <self:ACallExpr> */
1273 RET_LABEL25
:(void)0;
1278 /* method astbuilder#AAttrExpr#make for (self: AAttrExpr, AExpr, MAttribute, MType) */
1279 void nit__astbuilder___AAttrExpr___make(val
* self
, val
* p0
, val
* p1
, val
* p2
) {
1280 val
* var_recv
/* var recv: AExpr */;
1281 val
* var_attribute
/* var attribute: MAttribute */;
1282 val
* var_t
/* var t: MType */;
1283 val
* var
/* : TAttrid */;
1287 self
->attrs
[COLOR_nit__parser_nodes__AAttrFormExpr___n_expr
].val
= var_recv
; /* _n_expr on <self:AAttrExpr> */
1289 { /* Inline parser_nodes#ANode#parent= (var_recv,self) on <var_recv:AExpr> */
1290 var_recv
->attrs
[COLOR_nit__parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_recv:AExpr> */
1294 var
= NEW_nit__TAttrid(&type_nit__TAttrid
);
1296 { /* Inline kernel#Object#init (var) on <var:TAttrid> */
1300 self
->attrs
[COLOR_nit__parser_nodes__AAttrFormExpr___n_id
].val
= var
; /* _n_id on <self:AAttrExpr> */
1302 { /* Inline typing#AAttrFormExpr#mproperty= (self,var_attribute) on <self:AAttrExpr> */
1303 self
->attrs
[COLOR_nit__typing__AAttrFormExpr___mproperty
].val
= var_attribute
; /* _mproperty on <self:AAttrExpr> */
1308 { /* Inline typing#AExpr#mtype= (self,var_t) on <self:AAttrExpr> */
1309 self
->attrs
[COLOR_nit__typing__AExpr___mtype
].val
= var_t
; /* _mtype on <self:AAttrExpr> */
1315 /* method astbuilder#AAttrAssignExpr#make for (self: AAttrAssignExpr, AExpr, MAttribute, AExpr) */
1316 void nit__astbuilder___AAttrAssignExpr___make(val
* self
, val
* p0
, val
* p1
, val
* p2
) {
1317 val
* var_recv
/* var recv: AExpr */;
1318 val
* var_attribute
/* var attribute: MAttribute */;
1319 val
* var_value
/* var value: AExpr */;
1320 val
* var
/* : TAttrid */;
1321 val
* var4
/* : TAssign */;
1322 val
* var7
/* : nullable MType */;
1326 self
->attrs
[COLOR_nit__parser_nodes__AAttrFormExpr___n_expr
].val
= var_recv
; /* _n_expr on <self:AAttrAssignExpr> */
1328 { /* Inline parser_nodes#ANode#parent= (var_recv,self) on <var_recv:AExpr> */
1329 var_recv
->attrs
[COLOR_nit__parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_recv:AExpr> */
1333 var
= NEW_nit__TAttrid(&type_nit__TAttrid
);
1335 { /* Inline kernel#Object#init (var) on <var:TAttrid> */
1339 self
->attrs
[COLOR_nit__parser_nodes__AAttrFormExpr___n_id
].val
= var
; /* _n_id on <self:AAttrAssignExpr> */
1340 self
->attrs
[COLOR_nit__parser_nodes__AAssignFormExpr___n_value
].val
= var_value
; /* _n_value on <self:AAttrAssignExpr> */
1342 { /* Inline parser_nodes#ANode#parent= (var_value,self) on <var_value:AExpr> */
1343 var_value
->attrs
[COLOR_nit__parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_value:AExpr> */
1347 var4
= NEW_nit__TAssign(&type_nit__TAssign
);
1349 { /* Inline kernel#Object#init (var4) on <var4:TAssign> */
1353 self
->attrs
[COLOR_nit__parser_nodes__AAssignFormExpr___n_assign
].val
= var4
; /* _n_assign on <self:AAttrAssignExpr> */
1355 { /* Inline typing#AAttrFormExpr#mproperty= (self,var_attribute) on <self:AAttrAssignExpr> */
1356 self
->attrs
[COLOR_nit__typing__AAttrFormExpr___mproperty
].val
= var_attribute
; /* _mproperty on <self:AAttrAssignExpr> */
1361 var7
= ((val
* (*)(val
* self
))(var_value
->class->vft
[COLOR_nit__typing__AExpr__mtype
]))(var_value
) /* mtype on <var_value:AExpr>*/;
1364 { /* Inline typing#AExpr#mtype= (self,var7) on <self:AAttrAssignExpr> */
1365 self
->attrs
[COLOR_nit__typing__AExpr___mtype
].val
= var7
; /* _mtype on <self:AAttrAssignExpr> */
1371 /* method astbuilder#AVarExpr#make for (self: AVarExpr, Variable, MType) */
1372 void nit__astbuilder___AVarExpr___make(val
* self
, val
* p0
, val
* p1
) {
1373 val
* var_v
/* var v: Variable */;
1374 val
* var_mtype
/* var mtype: MType */;
1375 val
* var
/* : TId */;
1378 var
= NEW_nit__TId(&type_nit__TId
);
1380 { /* Inline kernel#Object#init (var) on <var:TId> */
1384 self
->attrs
[COLOR_nit__parser_nodes__AVarFormExpr___n_id
].val
= var
; /* _n_id on <self:AVarExpr> */
1386 { /* Inline scope#AVarFormExpr#variable= (self,var_v) on <self:AVarExpr> */
1387 self
->attrs
[COLOR_nit__scope__AVarFormExpr___variable
].val
= var_v
; /* _variable on <self:AVarExpr> */
1392 { /* Inline typing#AExpr#mtype= (self,var_mtype) on <self:AVarExpr> */
1393 self
->attrs
[COLOR_nit__typing__AExpr___mtype
].val
= var_mtype
; /* _mtype on <self:AVarExpr> */
1399 /* method astbuilder#AVarAssignExpr#make for (self: AVarAssignExpr, Variable, AExpr) */
1400 void nit__astbuilder___AVarAssignExpr___make(val
* self
, val
* p0
, val
* p1
) {
1401 val
* var_v
/* var v: Variable */;
1402 val
* var_value
/* var value: AExpr */;
1403 val
* var
/* : TId */;
1404 val
* var3
/* : TAssign */;
1405 val
* var6
/* : nullable MType */;
1408 var
= NEW_nit__TId(&type_nit__TId
);
1410 { /* Inline kernel#Object#init (var) on <var:TId> */
1414 self
->attrs
[COLOR_nit__parser_nodes__AVarFormExpr___n_id
].val
= var
; /* _n_id on <self:AVarAssignExpr> */
1415 self
->attrs
[COLOR_nit__parser_nodes__AAssignFormExpr___n_value
].val
= var_value
; /* _n_value on <self:AVarAssignExpr> */
1417 { /* Inline parser_nodes#ANode#parent= (var_value,self) on <var_value:AExpr> */
1418 var_value
->attrs
[COLOR_nit__parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_value:AExpr> */
1422 var3
= NEW_nit__TAssign(&type_nit__TAssign
);
1424 { /* Inline kernel#Object#init (var3) on <var3:TAssign> */
1428 self
->attrs
[COLOR_nit__parser_nodes__AAssignFormExpr___n_assign
].val
= var3
; /* _n_assign on <self:AVarAssignExpr> */
1430 { /* Inline scope#AVarFormExpr#variable= (self,var_v) on <self:AVarAssignExpr> */
1431 self
->attrs
[COLOR_nit__scope__AVarFormExpr___variable
].val
= var_v
; /* _variable on <self:AVarAssignExpr> */
1436 var6
= ((val
* (*)(val
* self
))(var_value
->class->vft
[COLOR_nit__typing__AExpr__mtype
]))(var_value
) /* mtype on <var_value:AExpr>*/;
1439 { /* Inline typing#AExpr#mtype= (self,var6) on <self:AVarAssignExpr> */
1440 self
->attrs
[COLOR_nit__typing__AExpr___mtype
].val
= var6
; /* _mtype on <self:AVarAssignExpr> */