1 #include "astbuilder.sep.0.h"
2 /* method astbuilder#ASTBuilder#mmodule for (self: ASTBuilder): MModule */
3 val
* astbuilder__ASTBuilder__mmodule(val
* self
) {
4 val
* var
/* : MModule */;
5 val
* var1
/* : MModule */;
6 var1
= self
->attrs
[COLOR_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", "src/astbuilder.nit", 25);
16 /* method astbuilder#ASTBuilder#mmodule for (self: Object): MModule */
17 val
* VIRTUAL_astbuilder__ASTBuilder__mmodule(val
* self
) {
18 val
* var
/* : MModule */;
19 val
* var1
/* : MModule */;
20 val
* var3
/* : MModule */;
21 { /* Inline astbuilder#ASTBuilder#mmodule (self) on <self:Object(ASTBuilder)> */
22 var3
= self
->attrs
[COLOR_astbuilder__ASTBuilder___mmodule
].val
; /* _mmodule on <self:Object(ASTBuilder)> */
23 if (unlikely(var3
== NULL
)) {
24 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mmodule");
25 PRINT_ERROR(" (%s:%d)\n", "src/astbuilder.nit", 25);
35 /* method astbuilder#ASTBuilder#anchor for (self: ASTBuilder): nullable MClassType */
36 val
* astbuilder__ASTBuilder__anchor(val
* self
) {
37 val
* var
/* : nullable MClassType */;
38 val
* var1
/* : nullable MClassType */;
39 var1
= self
->attrs
[COLOR_astbuilder__ASTBuilder___anchor
].val
; /* _anchor on <self:ASTBuilder> */
44 /* method astbuilder#ASTBuilder#anchor for (self: Object): nullable MClassType */
45 val
* VIRTUAL_astbuilder__ASTBuilder__anchor(val
* self
) {
46 val
* var
/* : nullable MClassType */;
47 val
* var1
/* : nullable MClassType */;
48 val
* var3
/* : nullable MClassType */;
49 { /* Inline astbuilder#ASTBuilder#anchor (self) on <self:Object(ASTBuilder)> */
50 var3
= self
->attrs
[COLOR_astbuilder__ASTBuilder___anchor
].val
; /* _anchor on <self:Object(ASTBuilder)> */
58 /* method astbuilder#ASTBuilder#make_int for (self: ASTBuilder, Int): AIntExpr */
59 val
* astbuilder__ASTBuilder__make_int(val
* self
, long p0
) {
60 val
* var
/* : AIntExpr */;
61 long var_value
/* var value: Int */;
62 val
* var1
/* : ADecIntExpr */;
63 val
* var2
/* : MModule */;
64 val
* var4
/* : MModule */;
66 val
* var5
/* : String */;
67 char* var6
/* : NativeString */;
68 long var7
/* : Int */;
69 val
* var8
/* : FlatString */;
70 val
* var9
/* : MClass */;
71 val
* var10
/* : MClassType */;
72 val
* var12
/* : MClassType */;
74 var1
= NEW_parser_nodes__ADecIntExpr(&type_parser_nodes__ADecIntExpr
);
76 { /* Inline astbuilder#ASTBuilder#mmodule (self) on <self:ASTBuilder> */
77 var4
= self
->attrs
[COLOR_astbuilder__ASTBuilder___mmodule
].val
; /* _mmodule on <self:ASTBuilder> */
78 if (unlikely(var4
== NULL
)) {
79 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mmodule");
80 PRINT_ERROR(" (%s:%d)\n", "src/astbuilder.nit", 25);
92 var8
= string__NativeString__to_s_with_length(var6
, var7
);
97 var9
= model__MModule__get_primitive_class(var2
, var5
);
100 { /* Inline model#MClass#mclass_type (var9) on <var9:MClass> */
101 var12
= var9
->attrs
[COLOR_model__MClass___mclass_type
].val
; /* _mclass_type on <var9:MClass> */
102 if (unlikely(var12
== NULL
)) {
103 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass_type");
104 PRINT_ERROR(" (%s:%d)\n", "src/model/model.nit", 417);
112 astbuilder__ADecIntExpr__make(var1
, var_value
, var10
); /* Direct call astbuilder#ADecIntExpr#make on <var1:ADecIntExpr>*/
119 /* method astbuilder#ASTBuilder#make_int for (self: Object, Int): AIntExpr */
120 val
* VIRTUAL_astbuilder__ASTBuilder__make_int(val
* self
, long p0
) {
121 val
* var
/* : AIntExpr */;
122 val
* var1
/* : AIntExpr */;
123 var1
= astbuilder__ASTBuilder__make_int(self
, p0
);
128 /* method astbuilder#ASTBuilder#make_new for (self: ASTBuilder, CallSite, nullable Array[AExpr]): ANewExpr */
129 val
* astbuilder__ASTBuilder__make_new(val
* self
, val
* p0
, val
* p1
) {
130 val
* var
/* : ANewExpr */;
131 val
* var_callsite
/* var callsite: CallSite */;
132 val
* var_args
/* var args: nullable Array[AExpr] */;
133 val
* var1
/* : ANewExpr */;
136 var1
= NEW_parser_nodes__ANewExpr(&type_parser_nodes__ANewExpr
);
138 astbuilder__ANewExpr__make(var1
, var_callsite
, var_args
); /* Direct call astbuilder#ANewExpr#make on <var1:ANewExpr>*/
145 /* method astbuilder#ASTBuilder#make_new for (self: Object, CallSite, nullable Array[AExpr]): ANewExpr */
146 val
* VIRTUAL_astbuilder__ASTBuilder__make_new(val
* self
, val
* p0
, val
* p1
) {
147 val
* var
/* : ANewExpr */;
148 val
* var1
/* : ANewExpr */;
149 var1
= astbuilder__ASTBuilder__make_new(self
, p0
, p1
);
154 /* method astbuilder#ASTBuilder#make_call for (self: ASTBuilder, AExpr, CallSite, nullable Array[AExpr]): ACallExpr */
155 val
* astbuilder__ASTBuilder__make_call(val
* self
, val
* p0
, val
* p1
, val
* p2
) {
156 val
* var
/* : ACallExpr */;
157 val
* var_recv
/* var recv: AExpr */;
158 val
* var_callsite
/* var callsite: CallSite */;
159 val
* var_args
/* var args: nullable Array[AExpr] */;
160 val
* var1
/* : ACallExpr */;
164 var1
= NEW_parser_nodes__ACallExpr(&type_parser_nodes__ACallExpr
);
166 astbuilder__ACallExpr__make(var1
, var_recv
, var_callsite
, var_args
); /* Direct call astbuilder#ACallExpr#make on <var1:ACallExpr>*/
173 /* method astbuilder#ASTBuilder#make_call for (self: Object, AExpr, CallSite, nullable Array[AExpr]): ACallExpr */
174 val
* VIRTUAL_astbuilder__ASTBuilder__make_call(val
* self
, val
* p0
, val
* p1
, val
* p2
) {
175 val
* var
/* : ACallExpr */;
176 val
* var1
/* : ACallExpr */;
177 var1
= astbuilder__ASTBuilder__make_call(self
, p0
, p1
, p2
);
182 /* method astbuilder#ASTBuilder#make_block for (self: ASTBuilder): ABlockExpr */
183 val
* astbuilder__ASTBuilder__make_block(val
* self
) {
184 val
* var
/* : ABlockExpr */;
185 val
* var1
/* : ABlockExpr */;
186 var1
= NEW_parser_nodes__ABlockExpr(&type_parser_nodes__ABlockExpr
);
188 astbuilder__ABlockExpr__make(var1
); /* Direct call astbuilder#ABlockExpr#make on <var1:ABlockExpr>*/
195 /* method astbuilder#ASTBuilder#make_block for (self: Object): ABlockExpr */
196 val
* VIRTUAL_astbuilder__ASTBuilder__make_block(val
* self
) {
197 val
* var
/* : ABlockExpr */;
198 val
* var1
/* : ABlockExpr */;
199 var1
= astbuilder__ASTBuilder__make_block(self
);
204 /* method astbuilder#ASTBuilder#make_var_read for (self: ASTBuilder, Variable, MType): AVarExpr */
205 val
* astbuilder__ASTBuilder__make_var_read(val
* self
, val
* p0
, val
* p1
) {
206 val
* var
/* : AVarExpr */;
207 val
* var_variable
/* var variable: Variable */;
208 val
* var_mtype
/* var mtype: MType */;
209 val
* var1
/* : AVarExpr */;
212 var1
= NEW_parser_nodes__AVarExpr(&type_parser_nodes__AVarExpr
);
214 astbuilder__AVarExpr__make(var1
, var_variable
, var_mtype
); /* Direct call astbuilder#AVarExpr#make on <var1:AVarExpr>*/
221 /* method astbuilder#ASTBuilder#make_var_read for (self: Object, Variable, MType): AVarExpr */
222 val
* VIRTUAL_astbuilder__ASTBuilder__make_var_read(val
* self
, val
* p0
, val
* p1
) {
223 val
* var
/* : AVarExpr */;
224 val
* var1
/* : AVarExpr */;
225 var1
= astbuilder__ASTBuilder__make_var_read(self
, p0
, p1
);
230 /* method astbuilder#ASTBuilder#make_var_assign for (self: ASTBuilder, Variable, AExpr): AVarAssignExpr */
231 val
* astbuilder__ASTBuilder__make_var_assign(val
* self
, val
* p0
, val
* p1
) {
232 val
* var
/* : AVarAssignExpr */;
233 val
* var_variable
/* var variable: Variable */;
234 val
* var_value
/* var value: AExpr */;
235 val
* var1
/* : AVarAssignExpr */;
238 var1
= NEW_parser_nodes__AVarAssignExpr(&type_parser_nodes__AVarAssignExpr
);
240 astbuilder__AVarAssignExpr__make(var1
, var_variable
, var_value
); /* Direct call astbuilder#AVarAssignExpr#make on <var1:AVarAssignExpr>*/
247 /* method astbuilder#ASTBuilder#make_var_assign for (self: Object, Variable, AExpr): AVarAssignExpr */
248 val
* VIRTUAL_astbuilder__ASTBuilder__make_var_assign(val
* self
, val
* p0
, val
* p1
) {
249 val
* var
/* : AVarAssignExpr */;
250 val
* var1
/* : AVarAssignExpr */;
251 var1
= astbuilder__ASTBuilder__make_var_assign(self
, p0
, p1
);
256 /* method astbuilder#ASTBuilder#make_attr_read for (self: ASTBuilder, AExpr, MAttribute): AAttrExpr */
257 val
* astbuilder__ASTBuilder__make_attr_read(val
* self
, val
* p0
, val
* p1
) {
258 val
* var
/* : AAttrExpr */;
259 val
* var_recv
/* var recv: AExpr */;
260 val
* var_attribute
/* var attribute: MAttribute */;
261 val
* var1
/* : MPropDef */;
262 val
* var2
/* : nullable MType */;
263 val
* var4
/* : nullable MType */;
264 val
* var5
/* : nullable MType */;
265 val
* var6
/* : nullable MClassType */;
266 val
* var8
/* : nullable MClassType */;
267 val
* var9
/* : MModule */;
268 val
* var11
/* : MModule */;
269 short int var12
/* : Bool */;
270 val
* var13
/* : MType */;
271 val
* var_mtype
/* var mtype: MType */;
272 val
* var14
/* : AAttrExpr */;
276 var1
= model__MProperty__intro(var_attribute
);
279 { /* Inline model#MAttributeDef#static_mtype (var1) on <var1:MPropDef(MAttributeDef)> */
280 var4
= var1
->attrs
[COLOR_model__MAttributeDef___static_mtype
].val
; /* _static_mtype on <var1:MPropDef(MAttributeDef)> */
286 var5
= ((val
* (*)(val
*))(var_recv
->class->vft
[COLOR_typing__AExpr__mtype
]))(var_recv
) /* mtype on <var_recv:AExpr>*/;
288 if (unlikely(var5
== NULL
)) {
289 PRINT_ERROR("Runtime error: %s", "Cast failed");
290 PRINT_ERROR(" (%s:%d)\n", "src/astbuilder.nit", 71);
294 { /* Inline astbuilder#ASTBuilder#anchor (self) on <self:ASTBuilder> */
295 var8
= self
->attrs
[COLOR_astbuilder__ASTBuilder___anchor
].val
; /* _anchor on <self:ASTBuilder> */
301 { /* Inline astbuilder#ASTBuilder#mmodule (self) on <self:ASTBuilder> */
302 var11
= self
->attrs
[COLOR_astbuilder__ASTBuilder___mmodule
].val
; /* _mmodule on <self:ASTBuilder> */
303 if (unlikely(var11
== NULL
)) {
304 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mmodule");
305 PRINT_ERROR(" (%s:%d)\n", "src/astbuilder.nit", 25);
314 PRINT_ERROR("Runtime error: %s", "Receiver is null");
315 PRINT_ERROR(" (%s:%d)\n", "src/astbuilder.nit", 71);
318 var13
= ((val
* (*)(val
*, val
*, val
*, val
*, short int))(var2
->class->vft
[COLOR_model__MType__resolve_for
]))(var2
, var5
, var6
, var9
, var12
) /* resolve_for on <var2:nullable MType>*/;
321 var14
= NEW_parser_nodes__AAttrExpr(&type_parser_nodes__AAttrExpr
);
323 astbuilder__AAttrExpr__make(var14
, var_recv
, var_attribute
, var_mtype
); /* Direct call astbuilder#AAttrExpr#make on <var14:AAttrExpr>*/
330 /* method astbuilder#ASTBuilder#make_attr_read for (self: Object, AExpr, MAttribute): AAttrExpr */
331 val
* VIRTUAL_astbuilder__ASTBuilder__make_attr_read(val
* self
, val
* p0
, val
* p1
) {
332 val
* var
/* : AAttrExpr */;
333 val
* var1
/* : AAttrExpr */;
334 var1
= astbuilder__ASTBuilder__make_attr_read(self
, p0
, p1
);
339 /* method astbuilder#ASTBuilder#make_attr_assign for (self: ASTBuilder, AExpr, MAttribute, AExpr): AAttrAssignExpr */
340 val
* astbuilder__ASTBuilder__make_attr_assign(val
* self
, val
* p0
, val
* p1
, val
* p2
) {
341 val
* var
/* : AAttrAssignExpr */;
342 val
* var_recv
/* var recv: AExpr */;
343 val
* var_attribute
/* var attribute: MAttribute */;
344 val
* var_value
/* var value: AExpr */;
345 val
* var1
/* : AAttrAssignExpr */;
349 var1
= NEW_parser_nodes__AAttrAssignExpr(&type_parser_nodes__AAttrAssignExpr
);
351 astbuilder__AAttrAssignExpr__make(var1
, var_recv
, var_attribute
, var_value
); /* Direct call astbuilder#AAttrAssignExpr#make on <var1:AAttrAssignExpr>*/
358 /* method astbuilder#ASTBuilder#make_attr_assign for (self: Object, AExpr, MAttribute, AExpr): AAttrAssignExpr */
359 val
* VIRTUAL_astbuilder__ASTBuilder__make_attr_assign(val
* self
, val
* p0
, val
* p1
, val
* p2
) {
360 val
* var
/* : AAttrAssignExpr */;
361 val
* var1
/* : AAttrAssignExpr */;
362 var1
= astbuilder__ASTBuilder__make_attr_assign(self
, p0
, p1
, p2
);
367 /* method astbuilder#ASTBuilder#make_if for (self: ASTBuilder, AExpr, nullable MType): AIfExpr */
368 val
* astbuilder__ASTBuilder__make_if(val
* self
, val
* p0
, val
* p1
) {
369 val
* var
/* : AIfExpr */;
370 val
* var_condition
/* var condition: AExpr */;
371 val
* var_mtype
/* var mtype: nullable MType */;
372 val
* var1
/* : AIfExpr */;
375 var1
= NEW_parser_nodes__AIfExpr(&type_parser_nodes__AIfExpr
);
377 astbuilder__AIfExpr__make(var1
, var_condition
, var_mtype
); /* Direct call astbuilder#AIfExpr#make on <var1:AIfExpr>*/
384 /* method astbuilder#ASTBuilder#make_if for (self: Object, AExpr, nullable MType): AIfExpr */
385 val
* VIRTUAL_astbuilder__ASTBuilder__make_if(val
* self
, val
* p0
, val
* p1
) {
386 val
* var
/* : AIfExpr */;
387 val
* var1
/* : AIfExpr */;
388 var1
= astbuilder__ASTBuilder__make_if(self
, p0
, p1
);
393 /* method astbuilder#ASTBuilder#init for (self: ASTBuilder, MModule, nullable MClassType) */
394 void astbuilder__ASTBuilder__init(val
* self
, val
* p0
, val
* p1
) {
395 self
->attrs
[COLOR_astbuilder__ASTBuilder___mmodule
].val
= p0
; /* _mmodule on <self:ASTBuilder> */
396 self
->attrs
[COLOR_astbuilder__ASTBuilder___anchor
].val
= p1
; /* _anchor on <self:ASTBuilder> */
399 /* method astbuilder#ASTBuilder#init for (self: Object, MModule, nullable MClassType) */
400 void VIRTUAL_astbuilder__ASTBuilder__init(val
* self
, val
* p0
, val
* p1
) {
401 { /* Inline astbuilder#ASTBuilder#init (self,p0,p1) on <self:Object(ASTBuilder)> */
402 self
->attrs
[COLOR_astbuilder__ASTBuilder___mmodule
].val
= p0
; /* _mmodule on <self:Object(ASTBuilder)> */
403 self
->attrs
[COLOR_astbuilder__ASTBuilder___anchor
].val
= p1
; /* _anchor on <self:Object(ASTBuilder)> */
408 /* method astbuilder#AExpr#make_var_read for (self: AExpr): AVarExpr */
409 val
* astbuilder__AExpr__make_var_read(val
* self
) {
410 val
* var
/* : AVarExpr */;
411 val
* var1
/* : nullable Variable */;
412 val
* var3
/* : nullable Variable */;
413 val
* var_variable
/* var variable: nullable Variable */;
414 val
* var4
/* : null */;
415 short int var5
/* : Bool */;
416 short int var6
/* : Bool */;
417 val
* var_other
/* var other: nullable Object */;
418 short int var8
/* : Bool */;
419 short int var10
/* : Bool */;
420 val
* var11
/* : nullable ANode */;
421 val
* var13
/* : nullable ANode */;
422 val
* var14
/* : null */;
423 short int var15
/* : Bool */;
424 short int var16
/* : Bool */;
425 val
* var_other18
/* var other: nullable Object */;
426 short int var19
/* : Bool */;
427 short int var20
/* : Bool */;
428 short int var21
/* : Bool */;
429 val
* var22
/* : AExpr */;
430 val
* var_place
/* var place: AExpr */;
431 val
* var23
/* : Variable */;
433 val
* var24
/* : String */;
434 char* var25
/* : NativeString */;
435 long var26
/* : Int */;
436 val
* var27
/* : FlatString */;
437 val
* var29
/* : nullable MType */;
438 val
* var31
/* : AVarAssignExpr */;
439 val
* var_nvar
/* var nvar: AVarAssignExpr */;
440 val
* var33
/* : AVarExpr */;
441 val
* var34
/* : nullable MType */;
442 val
* var36
/* : nullable MType */;
444 { /* Inline astbuilder#AExpr#variable_cache (self) on <self:AExpr> */
445 var3
= self
->attrs
[COLOR_astbuilder__AExpr___variable_cache
].val
; /* _variable_cache on <self:AExpr> */
452 if (var_variable
== NULL
) {
453 var5
= 1; /* is null */
455 var5
= 0; /* arg is null but recv is not */
458 { /* Inline kernel#Object#== (var_variable,var4) on <var_variable:nullable Variable> */
461 { /* Inline kernel#Object#is_same_instance (var_variable,var_other) on <var_variable:nullable Variable(Variable)> */
462 var10
= var_variable
== var_other
;
476 { /* Inline parser_nodes#ANode#parent (self) on <self:AExpr> */
477 var13
= self
->attrs
[COLOR_parser_nodes__ANode___parent
].val
; /* _parent on <self:AExpr> */
484 var15
= 0; /* is null */
486 var15
= 1; /* arg is null and recv is not */
489 { /* Inline kernel#Object#!= (var11,var14) on <var11:nullable ANode> */
492 var20
= ((short int (*)(val
*, val
*))(var11
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var11
, var_other18
) /* == on <var11:nullable ANode(ANode)>*/;
502 if (unlikely(!var15
)) {
503 PRINT_ERROR("Runtime error: %s", "Assert failed");
504 PRINT_ERROR(" (%s:%d)\n", "src/astbuilder.nit", 105);
508 var22
= astbuilder__AExpr__detach_with_placeholder(self
);
511 var23
= NEW_scope__Variable(&type_scope__Variable
);
517 var27
= string__NativeString__to_s_with_length(var25
, var26
);
522 { /* Inline scope#Variable#init (var23,var24) on <var23:Variable> */
523 var23
->attrs
[COLOR_scope__Variable___name
].val
= var24
; /* _name on <var23:Variable> */
527 var_variable
= var23
;
529 var29
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_typing__AExpr__mtype
]))(self
) /* mtype on <self:AExpr>*/;
532 { /* Inline typing#Variable#declared_type= (var_variable,var29) on <var_variable:nullable Variable(Variable)> */
533 var_variable
->attrs
[COLOR_typing__Variable___declared_type
].val
= var29
; /* _declared_type on <var_variable:nullable Variable(Variable)> */
537 var31
= NEW_parser_nodes__AVarAssignExpr(&type_parser_nodes__AVarAssignExpr
);
539 astbuilder__AVarAssignExpr__make(var31
, var_variable
, self
); /* Direct call astbuilder#AVarAssignExpr#make on <var31:AVarAssignExpr>*/
543 parser_nodes__Prod__replace_with(var_place
, var_nvar
); /* Direct call parser_nodes#Prod#replace_with on <var_place:AExpr>*/
546 { /* Inline astbuilder#AExpr#variable_cache= (self,var_variable) on <self:AExpr> */
547 self
->attrs
[COLOR_astbuilder__AExpr___variable_cache
].val
= var_variable
; /* _variable_cache on <self:AExpr> */
553 var33
= NEW_parser_nodes__AVarExpr(&type_parser_nodes__AVarExpr
);
555 { /* Inline typing#Variable#declared_type (var_variable) on <var_variable:nullable Variable(Variable)> */
556 var36
= var_variable
->attrs
[COLOR_typing__Variable___declared_type
].val
; /* _declared_type on <var_variable:nullable Variable(Variable)> */
561 if (unlikely(var34
== NULL
)) {
562 PRINT_ERROR("Runtime error: %s", "Cast failed");
563 PRINT_ERROR(" (%s:%d)\n", "src/astbuilder.nit", 113);
567 astbuilder__AVarExpr__make(var33
, var_variable
, var34
); /* Direct call astbuilder#AVarExpr#make on <var33:AVarExpr>*/
574 /* method astbuilder#AExpr#make_var_read for (self: Object): AVarExpr */
575 val
* VIRTUAL_astbuilder__AExpr__make_var_read(val
* self
) {
576 val
* var
/* : AVarExpr */;
577 val
* var1
/* : AVarExpr */;
578 var1
= astbuilder__AExpr__make_var_read(self
);
583 /* method astbuilder#AExpr#variable_cache for (self: AExpr): nullable Variable */
584 val
* astbuilder__AExpr__variable_cache(val
* self
) {
585 val
* var
/* : nullable Variable */;
586 val
* var1
/* : nullable Variable */;
587 var1
= self
->attrs
[COLOR_astbuilder__AExpr___variable_cache
].val
; /* _variable_cache on <self:AExpr> */
592 /* method astbuilder#AExpr#variable_cache for (self: Object): nullable Variable */
593 val
* VIRTUAL_astbuilder__AExpr__variable_cache(val
* self
) {
594 val
* var
/* : nullable Variable */;
595 val
* var1
/* : nullable Variable */;
596 val
* var3
/* : nullable Variable */;
597 { /* Inline astbuilder#AExpr#variable_cache (self) on <self:Object(AExpr)> */
598 var3
= self
->attrs
[COLOR_astbuilder__AExpr___variable_cache
].val
; /* _variable_cache on <self:Object(AExpr)> */
606 /* method astbuilder#AExpr#variable_cache= for (self: AExpr, nullable Variable) */
607 void astbuilder__AExpr__variable_cache_61d(val
* self
, val
* p0
) {
608 self
->attrs
[COLOR_astbuilder__AExpr___variable_cache
].val
= p0
; /* _variable_cache on <self:AExpr> */
611 /* method astbuilder#AExpr#variable_cache= for (self: Object, nullable Variable) */
612 void VIRTUAL_astbuilder__AExpr__variable_cache_61d(val
* self
, val
* p0
) {
613 { /* Inline astbuilder#AExpr#variable_cache= (self,p0) on <self:Object(AExpr)> */
614 self
->attrs
[COLOR_astbuilder__AExpr___variable_cache
].val
= p0
; /* _variable_cache on <self:Object(AExpr)> */
619 /* method astbuilder#AExpr#detach_with_placeholder for (self: AExpr): AExpr */
620 val
* astbuilder__AExpr__detach_with_placeholder(val
* self
) {
621 val
* var
/* : AExpr */;
622 val
* var1
/* : APlaceholderExpr */;
623 val
* var_h
/* var h: APlaceholderExpr */;
624 var1
= NEW_astbuilder__APlaceholderExpr(&type_astbuilder__APlaceholderExpr
);
626 astbuilder__APlaceholderExpr__make(var1
); /* Direct call astbuilder#APlaceholderExpr#make on <var1:APlaceholderExpr>*/
630 parser_nodes__Prod__replace_with(self
, var_h
); /* Direct call parser_nodes#Prod#replace_with on <self:AExpr>*/
637 /* method astbuilder#AExpr#detach_with_placeholder for (self: Object): AExpr */
638 val
* VIRTUAL_astbuilder__AExpr__detach_with_placeholder(val
* self
) {
639 val
* var
/* : AExpr */;
640 val
* var1
/* : AExpr */;
641 var1
= astbuilder__AExpr__detach_with_placeholder(self
);
646 /* method astbuilder#AExpr#add for (self: AExpr, AExpr) */
647 void astbuilder__AExpr__add(val
* self
, val
* p0
) {
648 val
* var_expr
/* var expr: AExpr */;
650 PRINT_ERROR("Runtime error: %s", "Aborted");
651 PRINT_ERROR(" (%s:%d)\n", "src/astbuilder.nit", 145);
655 /* method astbuilder#AExpr#add for (self: Object, AExpr) */
656 void VIRTUAL_astbuilder__AExpr__add(val
* self
, val
* p0
) {
657 astbuilder__AExpr__add(self
, p0
); /* Direct call astbuilder#AExpr#add on <self:Object(AExpr)>*/
660 /* method astbuilder#APlaceholderExpr#make for (self: APlaceholderExpr) */
661 void astbuilder__APlaceholderExpr__make(val
* self
) {
663 { /* Inline parser_nodes#ANode#init (self) on <self:APlaceholderExpr> */
669 /* method astbuilder#APlaceholderExpr#make for (self: Object) */
670 void VIRTUAL_astbuilder__APlaceholderExpr__make(val
* self
) {
671 astbuilder__APlaceholderExpr__make(self
); /* Direct call astbuilder#APlaceholderExpr#make on <self:Object(APlaceholderExpr)>*/
674 /* method astbuilder#ABlockExpr#make for (self: ABlockExpr) */
675 void astbuilder__ABlockExpr__make(val
* self
) {
676 short int var
/* : Bool */;
679 { /* Inline typing#AExpr#is_typed= (self,var) on <self:ABlockExpr> */
680 self
->attrs
[COLOR_typing__AExpr___is_typed
].s
= var
; /* _is_typed on <self:ABlockExpr> */
686 /* method astbuilder#ABlockExpr#make for (self: Object) */
687 void VIRTUAL_astbuilder__ABlockExpr__make(val
* self
) {
688 astbuilder__ABlockExpr__make(self
); /* Direct call astbuilder#ABlockExpr#make on <self:Object(ABlockExpr)>*/
691 /* method astbuilder#ABlockExpr#add for (self: ABlockExpr, AExpr) */
692 void astbuilder__ABlockExpr__add(val
* self
, val
* p0
) {
693 val
* var_expr
/* var expr: AExpr */;
694 val
* var
/* : ANodes[AExpr] */;
695 val
* var2
/* : ANodes[AExpr] */;
698 { /* Inline parser_nodes#ABlockExpr#n_expr (self) on <self:ABlockExpr> */
699 var2
= self
->attrs
[COLOR_parser_nodes__ABlockExpr___n_expr
].val
; /* _n_expr on <self:ABlockExpr> */
700 if (unlikely(var2
== NULL
)) {
701 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
702 PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_nodes.nit", 1424);
710 abstract_collection__Sequence__add(var
, var_expr
); /* Direct call abstract_collection#Sequence#add on <var:ANodes[AExpr]>*/
714 /* method astbuilder#ABlockExpr#add for (self: Object, AExpr) */
715 void VIRTUAL_astbuilder__ABlockExpr__add(val
* self
, val
* p0
) {
716 astbuilder__ABlockExpr__add(self
, p0
); /* Direct call astbuilder#ABlockExpr#add on <self:Object(ABlockExpr)>*/
719 /* method astbuilder#AIfExpr#make for (self: AIfExpr, AExpr, nullable MType) */
720 void astbuilder__AIfExpr__make(val
* self
, val
* p0
, val
* p1
) {
721 val
* var_condition
/* var condition: AExpr */;
722 val
* var_mtype
/* var mtype: nullable MType */;
723 val
* var
/* : TKwif */;
724 val
* var2
/* : AExpr */;
725 val
* var4
/* : ABlockExpr */;
726 val
* var5
/* : ABlockExpr */;
727 short int var7
/* : Bool */;
730 var
= NEW_parser_nodes__TKwif(&type_parser_nodes__TKwif
);
732 { /* Inline parser_nodes#ANode#init (var) on <var:TKwif> */
736 self
->attrs
[COLOR_parser_nodes__AIfExpr___n_kwif
].val
= var
; /* _n_kwif on <self:AIfExpr> */
737 self
->attrs
[COLOR_parser_nodes__AIfExpr___n_expr
].val
= var_condition
; /* _n_expr on <self:AIfExpr> */
738 var2
= self
->attrs
[COLOR_parser_nodes__AIfExpr___n_expr
].val
; /* _n_expr on <self:AIfExpr> */
739 if (unlikely(var2
== NULL
)) {
740 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
741 PRINT_ERROR(" (%s:%d)\n", "src/astbuilder.nit", 206);
745 { /* Inline parser_nodes#ANode#parent= (var2,self) on <var2:AExpr> */
746 var2
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var2:AExpr> */
750 var4
= NEW_parser_nodes__ABlockExpr(&type_parser_nodes__ABlockExpr
);
752 astbuilder__ABlockExpr__make(var4
); /* Direct call astbuilder#ABlockExpr#make on <var4:ABlockExpr>*/
754 self
->attrs
[COLOR_parser_nodes__AIfExpr___n_then
].val
= var4
; /* _n_then on <self:AIfExpr> */
755 var5
= NEW_parser_nodes__ABlockExpr(&type_parser_nodes__ABlockExpr
);
757 astbuilder__ABlockExpr__make(var5
); /* Direct call astbuilder#ABlockExpr#make on <var5:ABlockExpr>*/
759 self
->attrs
[COLOR_parser_nodes__AIfExpr___n_else
].val
= var5
; /* _n_else on <self:AIfExpr> */
761 { /* Inline typing#AExpr#mtype= (self,var_mtype) on <self:AIfExpr> */
762 self
->attrs
[COLOR_typing__AExpr___mtype
].val
= var_mtype
; /* _mtype on <self:AIfExpr> */
768 { /* Inline typing#AExpr#is_typed= (self,var7) on <self:AIfExpr> */
769 self
->attrs
[COLOR_typing__AExpr___is_typed
].s
= var7
; /* _is_typed on <self:AIfExpr> */
775 /* method astbuilder#AIfExpr#make for (self: Object, AExpr, nullable MType) */
776 void VIRTUAL_astbuilder__AIfExpr__make(val
* self
, val
* p0
, val
* p1
) {
777 astbuilder__AIfExpr__make(self
, p0
, p1
); /* Direct call astbuilder#AIfExpr#make on <self:Object(AIfExpr)>*/
780 /* method astbuilder#AType#make for (self: AType) */
781 void astbuilder__AType__make(val
* self
) {
782 val
* var
/* : TClassid */;
783 var
= NEW_parser_nodes__TClassid(&type_parser_nodes__TClassid
);
785 { /* Inline parser_nodes#ANode#init (var) on <var:TClassid> */
789 self
->attrs
[COLOR_parser_nodes__AType___n_id
].val
= var
; /* _n_id on <self:AType> */
792 /* method astbuilder#AType#make for (self: Object) */
793 void VIRTUAL_astbuilder__AType__make(val
* self
) {
794 astbuilder__AType__make(self
); /* Direct call astbuilder#AType#make on <self:Object(AType)>*/
797 /* method astbuilder#ADecIntExpr#make for (self: ADecIntExpr, Int, MType) */
798 void astbuilder__ADecIntExpr__make(val
* self
, long p0
, val
* p1
) {
799 long var_value
/* var value: Int */;
800 val
* var_t
/* var t: MType */;
801 val
* var
/* : nullable Int */;
802 val
* var2
/* : TNumber */;
806 { /* Inline literal#AIntExpr#value= (self,var_value) on <self:ADecIntExpr> */
807 var
= BOX_kernel__Int(var_value
); /* autobox from Int to nullable Int */
808 self
->attrs
[COLOR_literal__AIntExpr___value
].val
= var
; /* _value on <self:ADecIntExpr> */
812 var2
= NEW_parser_nodes__TNumber(&type_parser_nodes__TNumber
);
814 { /* Inline parser_nodes#ANode#init (var2) on <var2:TNumber> */
818 self
->attrs
[COLOR_parser_nodes__ADecIntExpr___n_number
].val
= var2
; /* _n_number on <self:ADecIntExpr> */
820 { /* Inline typing#AExpr#mtype= (self,var_t) on <self:ADecIntExpr> */
821 self
->attrs
[COLOR_typing__AExpr___mtype
].val
= var_t
; /* _mtype on <self:ADecIntExpr> */
827 /* method astbuilder#ADecIntExpr#make for (self: Object, Int, MType) */
828 void VIRTUAL_astbuilder__ADecIntExpr__make(val
* self
, long p0
, val
* p1
) {
829 astbuilder__ADecIntExpr__make(self
, p0
, p1
); /* Direct call astbuilder#ADecIntExpr#make on <self:Object(ADecIntExpr)>*/
832 /* method astbuilder#ANewExpr#make for (self: ANewExpr, CallSite, nullable Array[AExpr]) */
833 void astbuilder__ANewExpr__make(val
* self
, val
* p0
, val
* p1
) {
834 val
* var_callsite
/* var callsite: CallSite */;
835 val
* var_args
/* var args: nullable Array[AExpr] */;
836 val
* var
/* : TKwnew */;
837 val
* var2
/* : AType */;
838 val
* var3
/* : AListExprs */;
839 val
* var4
/* : null */;
840 short int var5
/* : Bool */;
841 short int var6
/* : Bool */;
842 val
* var_other
/* var other: nullable Object */;
843 short int var8
/* : Bool */;
844 short int var9
/* : Bool */;
845 short int var10
/* : Bool */;
846 val
* var11
/* : AExprs */;
847 val
* var12
/* : ANodes[AExpr] */;
848 val
* var14
/* : ANodes[AExpr] */;
849 val
* var16
/* : MType */;
850 val
* var18
/* : MType */;
851 short int var20
/* : Bool */;
854 var
= NEW_parser_nodes__TKwnew(&type_parser_nodes__TKwnew
);
856 { /* Inline parser_nodes#ANode#init (var) on <var:TKwnew> */
860 self
->attrs
[COLOR_parser_nodes__ANewExpr___n_kwnew
].val
= var
; /* _n_kwnew on <self:ANewExpr> */
861 var2
= NEW_parser_nodes__AType(&type_parser_nodes__AType
);
863 astbuilder__AType__make(var2
); /* Direct call astbuilder#AType#make on <var2:AType>*/
865 self
->attrs
[COLOR_parser_nodes__ANewExpr___n_type
].val
= var2
; /* _n_type on <self:ANewExpr> */
866 var3
= NEW_parser_nodes__AListExprs(&type_parser_nodes__AListExprs
);
868 parser_nodes__AExprs__init(var3
); /* Direct call parser_nodes#AExprs#init on <var3:AListExprs>*/
870 self
->attrs
[COLOR_parser_nodes__ANewExpr___n_args
].val
= var3
; /* _n_args on <self:ANewExpr> */
872 if (var_args
== NULL
) {
873 var5
= 0; /* is null */
875 var5
= 1; /* arg is null and recv is not */
878 { /* Inline kernel#Object#!= (var_args,var4) on <var_args:nullable Array[AExpr]> */
881 var9
= ((short int (*)(val
*, val
*))(var_args
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_args
, var_other
) /* == on <var_args:nullable Array[AExpr](Array[AExpr])>*/;
893 var11
= parser_nodes__ANewExpr__n_args(self
);
896 { /* Inline parser_nodes#AExprs#n_exprs (var11) on <var11:AExprs> */
897 var14
= var11
->attrs
[COLOR_parser_nodes__AExprs___n_exprs
].val
; /* _n_exprs on <var11:AExprs> */
898 if (unlikely(var14
== NULL
)) {
899 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_exprs");
900 PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_nodes.nit", 2274);
908 abstract_collection__SimpleCollection__add_all(var12
, var_args
); /* Direct call abstract_collection#SimpleCollection#add_all on <var12:ANodes[AExpr]>*/
913 { /* Inline typing#ANewExpr#callsite= (self,var_callsite) on <self:ANewExpr> */
914 self
->attrs
[COLOR_typing__ANewExpr___callsite
].val
= var_callsite
; /* _callsite on <self:ANewExpr> */
919 { /* Inline typing#CallSite#recv (var_callsite) on <var_callsite:CallSite> */
920 var18
= var_callsite
->attrs
[COLOR_typing__CallSite___recv
].val
; /* _recv on <var_callsite:CallSite> */
921 if (unlikely(var18
== NULL
)) {
922 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _recv");
923 PRINT_ERROR(" (%s:%d)\n", "src/typing.nit", 408);
931 { /* Inline typing#AExpr#mtype= (self,var16) on <self:ANewExpr> */
932 self
->attrs
[COLOR_typing__AExpr___mtype
].val
= var16
; /* _mtype on <self:ANewExpr> */
938 { /* Inline typing#AExpr#is_typed= (self,var20) on <self:ANewExpr> */
939 self
->attrs
[COLOR_typing__AExpr___is_typed
].s
= var20
; /* _is_typed on <self:ANewExpr> */
945 /* method astbuilder#ANewExpr#make for (self: Object, CallSite, nullable Array[AExpr]) */
946 void VIRTUAL_astbuilder__ANewExpr__make(val
* self
, val
* p0
, val
* p1
) {
947 astbuilder__ANewExpr__make(self
, p0
, p1
); /* Direct call astbuilder#ANewExpr#make on <self:Object(ANewExpr)>*/
950 /* method astbuilder#ACallExpr#make for (self: ACallExpr, AExpr, CallSite, nullable Array[AExpr]) */
951 void astbuilder__ACallExpr__make(val
* self
, val
* p0
, val
* p1
, val
* p2
) {
952 val
* var_recv
/* var recv: AExpr */;
953 val
* var_callsite
/* var callsite: CallSite */;
954 val
* var_args
/* var args: nullable Array[AExpr] */;
955 val
* var
/* : AListExprs */;
956 val
* var1
/* : TId */;
957 val
* var3
/* : null */;
958 short int var4
/* : Bool */;
959 short int var5
/* : Bool */;
960 val
* var_other
/* var other: nullable Object */;
961 short int var7
/* : Bool */;
962 short int var8
/* : Bool */;
963 short int var9
/* : Bool */;
964 val
* var10
/* : AExprs */;
965 val
* var11
/* : ANodes[AExpr] */;
966 val
* var13
/* : ANodes[AExpr] */;
967 val
* var14
/* : nullable MType */;
968 val
* var_mtype
/* var mtype: MType */;
969 val
* var16
/* : MSignature */;
970 val
* var18
/* : MSignature */;
971 val
* var19
/* : nullable MType */;
972 val
* var21
/* : nullable MType */;
973 short int var23
/* : Bool */;
977 self
->attrs
[COLOR_parser_nodes__ASendExpr___n_expr
].val
= var_recv
; /* _n_expr on <self:ACallExpr> */
978 var
= NEW_parser_nodes__AListExprs(&type_parser_nodes__AListExprs
);
980 parser_nodes__AExprs__init(var
); /* Direct call parser_nodes#AExprs#init on <var:AListExprs>*/
982 self
->attrs
[COLOR_parser_nodes__ACallFormExpr___n_args
].val
= var
; /* _n_args on <self:ACallExpr> */
983 var1
= NEW_parser_nodes__TId(&type_parser_nodes__TId
);
985 { /* Inline parser_nodes#ANode#init (var1) on <var1:TId> */
989 self
->attrs
[COLOR_parser_nodes__ACallFormExpr___n_id
].val
= var1
; /* _n_id on <self:ACallExpr> */
991 if (var_args
== NULL
) {
992 var4
= 0; /* is null */
994 var4
= 1; /* arg is null and recv is not */
997 { /* Inline kernel#Object#!= (var_args,var3) on <var_args:nullable Array[AExpr]> */
1000 var8
= ((short int (*)(val
*, val
*))(var_args
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_args
, var_other
) /* == on <var_args:nullable Array[AExpr](Array[AExpr])>*/;
1012 var10
= parser_nodes__ACallFormExpr__n_args(self
);
1015 { /* Inline parser_nodes#AExprs#n_exprs (var10) on <var10:AExprs> */
1016 var13
= var10
->attrs
[COLOR_parser_nodes__AExprs___n_exprs
].val
; /* _n_exprs on <var10:AExprs> */
1017 if (unlikely(var13
== NULL
)) {
1018 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_exprs");
1019 PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_nodes.nit", 2274);
1023 RET_LABEL12
:(void)0;
1027 abstract_collection__SimpleCollection__add_all(var11
, var_args
); /* Direct call abstract_collection#SimpleCollection#add_all on <var11:ANodes[AExpr]>*/
1032 var14
= ((val
* (*)(val
*))(var_recv
->class->vft
[COLOR_typing__AExpr__mtype
]))(var_recv
) /* mtype on <var_recv:AExpr>*/;
1034 if (unlikely(var14
== NULL
)) {
1035 PRINT_ERROR("Runtime error: %s", "Cast failed");
1036 PRINT_ERROR(" (%s:%d)\n", "src/astbuilder.nit", 254);
1041 { /* Inline typing#ASendExpr#callsite= (self,var_callsite) on <self:ACallExpr> */
1042 self
->attrs
[COLOR_typing__ASendExpr___callsite
].val
= var_callsite
; /* _callsite on <self:ACallExpr> */
1043 RET_LABEL15
:(void)0;
1047 { /* Inline typing#CallSite#msignature (var_callsite) on <var_callsite:CallSite> */
1048 var18
= var_callsite
->attrs
[COLOR_typing__CallSite___msignature
].val
; /* _msignature on <var_callsite:CallSite> */
1049 if (unlikely(var18
== NULL
)) {
1050 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _msignature");
1051 PRINT_ERROR(" (%s:%d)\n", "src/typing.nit", 429);
1055 RET_LABEL17
:(void)0;
1059 { /* Inline model#MSignature#return_mtype (var16) on <var16:MSignature> */
1060 var21
= var16
->attrs
[COLOR_model__MSignature___return_mtype
].val
; /* _return_mtype on <var16:MSignature> */
1062 RET_LABEL20
:(void)0;
1066 { /* Inline typing#AExpr#mtype= (self,var19) on <self:ACallExpr> */
1067 self
->attrs
[COLOR_typing__AExpr___mtype
].val
= var19
; /* _mtype on <self:ACallExpr> */
1068 RET_LABEL22
:(void)0;
1073 { /* Inline typing#AExpr#is_typed= (self,var23) on <self:ACallExpr> */
1074 self
->attrs
[COLOR_typing__AExpr___is_typed
].s
= var23
; /* _is_typed on <self:ACallExpr> */
1075 RET_LABEL24
:(void)0;
1080 /* method astbuilder#ACallExpr#make for (self: Object, AExpr, CallSite, nullable Array[AExpr]) */
1081 void VIRTUAL_astbuilder__ACallExpr__make(val
* self
, val
* p0
, val
* p1
, val
* p2
) {
1082 astbuilder__ACallExpr__make(self
, p0
, p1
, p2
); /* Direct call astbuilder#ACallExpr#make on <self:Object(ACallExpr)>*/
1085 /* method astbuilder#AAttrExpr#make for (self: AAttrExpr, AExpr, MAttribute, MType) */
1086 void astbuilder__AAttrExpr__make(val
* self
, val
* p0
, val
* p1
, val
* p2
) {
1087 val
* var_recv
/* var recv: AExpr */;
1088 val
* var_attribute
/* var attribute: MAttribute */;
1089 val
* var_t
/* var t: MType */;
1090 val
* var
/* : TAttrid */;
1094 self
->attrs
[COLOR_parser_nodes__AAttrFormExpr___n_expr
].val
= var_recv
; /* _n_expr on <self:AAttrExpr> */
1096 { /* Inline parser_nodes#ANode#parent= (var_recv,self) on <var_recv:AExpr> */
1097 var_recv
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_recv:AExpr> */
1101 var
= NEW_parser_nodes__TAttrid(&type_parser_nodes__TAttrid
);
1103 { /* Inline parser_nodes#ANode#init (var) on <var:TAttrid> */
1107 self
->attrs
[COLOR_parser_nodes__AAttrFormExpr___n_id
].val
= var
; /* _n_id on <self:AAttrExpr> */
1109 { /* Inline typing#AAttrFormExpr#mproperty= (self,var_attribute) on <self:AAttrExpr> */
1110 self
->attrs
[COLOR_typing__AAttrFormExpr___mproperty
].val
= var_attribute
; /* _mproperty on <self:AAttrExpr> */
1115 { /* Inline typing#AExpr#mtype= (self,var_t) on <self:AAttrExpr> */
1116 self
->attrs
[COLOR_typing__AExpr___mtype
].val
= var_t
; /* _mtype on <self:AAttrExpr> */
1122 /* method astbuilder#AAttrExpr#make for (self: Object, AExpr, MAttribute, MType) */
1123 void VIRTUAL_astbuilder__AAttrExpr__make(val
* self
, val
* p0
, val
* p1
, val
* p2
) {
1124 astbuilder__AAttrExpr__make(self
, p0
, p1
, p2
); /* Direct call astbuilder#AAttrExpr#make on <self:Object(AAttrExpr)>*/
1127 /* method astbuilder#AAttrAssignExpr#make for (self: AAttrAssignExpr, AExpr, MAttribute, AExpr) */
1128 void astbuilder__AAttrAssignExpr__make(val
* self
, val
* p0
, val
* p1
, val
* p2
) {
1129 val
* var_recv
/* var recv: AExpr */;
1130 val
* var_attribute
/* var attribute: MAttribute */;
1131 val
* var_value
/* var value: AExpr */;
1132 val
* var
/* : TAttrid */;
1133 val
* var4
/* : TAssign */;
1134 val
* var7
/* : nullable MType */;
1138 self
->attrs
[COLOR_parser_nodes__AAttrFormExpr___n_expr
].val
= var_recv
; /* _n_expr on <self:AAttrAssignExpr> */
1140 { /* Inline parser_nodes#ANode#parent= (var_recv,self) on <var_recv:AExpr> */
1141 var_recv
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_recv:AExpr> */
1145 var
= NEW_parser_nodes__TAttrid(&type_parser_nodes__TAttrid
);
1147 { /* Inline parser_nodes#ANode#init (var) on <var:TAttrid> */
1151 self
->attrs
[COLOR_parser_nodes__AAttrFormExpr___n_id
].val
= var
; /* _n_id on <self:AAttrAssignExpr> */
1152 self
->attrs
[COLOR_parser_nodes__AAssignFormExpr___n_value
].val
= var_value
; /* _n_value on <self:AAttrAssignExpr> */
1154 { /* Inline parser_nodes#ANode#parent= (var_value,self) on <var_value:AExpr> */
1155 var_value
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_value:AExpr> */
1159 var4
= NEW_parser_nodes__TAssign(&type_parser_nodes__TAssign
);
1161 { /* Inline parser_nodes#ANode#init (var4) on <var4:TAssign> */
1165 self
->attrs
[COLOR_parser_nodes__AAssignFormExpr___n_assign
].val
= var4
; /* _n_assign on <self:AAttrAssignExpr> */
1167 { /* Inline typing#AAttrFormExpr#mproperty= (self,var_attribute) on <self:AAttrAssignExpr> */
1168 self
->attrs
[COLOR_typing__AAttrFormExpr___mproperty
].val
= var_attribute
; /* _mproperty on <self:AAttrAssignExpr> */
1173 var7
= ((val
* (*)(val
*))(var_value
->class->vft
[COLOR_typing__AExpr__mtype
]))(var_value
) /* mtype on <var_value:AExpr>*/;
1176 { /* Inline typing#AExpr#mtype= (self,var7) on <self:AAttrAssignExpr> */
1177 self
->attrs
[COLOR_typing__AExpr___mtype
].val
= var7
; /* _mtype on <self:AAttrAssignExpr> */
1183 /* method astbuilder#AAttrAssignExpr#make for (self: Object, AExpr, MAttribute, AExpr) */
1184 void VIRTUAL_astbuilder__AAttrAssignExpr__make(val
* self
, val
* p0
, val
* p1
, val
* p2
) {
1185 astbuilder__AAttrAssignExpr__make(self
, p0
, p1
, p2
); /* Direct call astbuilder#AAttrAssignExpr#make on <self:Object(AAttrAssignExpr)>*/
1188 /* method astbuilder#AVarExpr#make for (self: AVarExpr, Variable, MType) */
1189 void astbuilder__AVarExpr__make(val
* self
, val
* p0
, val
* p1
) {
1190 val
* var_v
/* var v: Variable */;
1191 val
* var_mtype
/* var mtype: MType */;
1192 val
* var
/* : TId */;
1195 var
= NEW_parser_nodes__TId(&type_parser_nodes__TId
);
1197 { /* Inline parser_nodes#ANode#init (var) on <var:TId> */
1201 self
->attrs
[COLOR_parser_nodes__AVarFormExpr___n_id
].val
= var
; /* _n_id on <self:AVarExpr> */
1203 { /* Inline scope#AVarFormExpr#variable= (self,var_v) on <self:AVarExpr> */
1204 self
->attrs
[COLOR_scope__AVarFormExpr___variable
].val
= var_v
; /* _variable on <self:AVarExpr> */
1209 { /* Inline typing#AExpr#mtype= (self,var_mtype) on <self:AVarExpr> */
1210 self
->attrs
[COLOR_typing__AExpr___mtype
].val
= var_mtype
; /* _mtype on <self:AVarExpr> */
1216 /* method astbuilder#AVarExpr#make for (self: Object, Variable, MType) */
1217 void VIRTUAL_astbuilder__AVarExpr__make(val
* self
, val
* p0
, val
* p1
) {
1218 astbuilder__AVarExpr__make(self
, p0
, p1
); /* Direct call astbuilder#AVarExpr#make on <self:Object(AVarExpr)>*/
1221 /* method astbuilder#AVarAssignExpr#make for (self: AVarAssignExpr, Variable, AExpr) */
1222 void astbuilder__AVarAssignExpr__make(val
* self
, val
* p0
, val
* p1
) {
1223 val
* var_v
/* var v: Variable */;
1224 val
* var_value
/* var value: AExpr */;
1225 val
* var
/* : TId */;
1226 val
* var3
/* : TAssign */;
1227 val
* var6
/* : nullable MType */;
1230 var
= NEW_parser_nodes__TId(&type_parser_nodes__TId
);
1232 { /* Inline parser_nodes#ANode#init (var) on <var:TId> */
1236 self
->attrs
[COLOR_parser_nodes__AVarFormExpr___n_id
].val
= var
; /* _n_id on <self:AVarAssignExpr> */
1237 self
->attrs
[COLOR_parser_nodes__AAssignFormExpr___n_value
].val
= var_value
; /* _n_value on <self:AVarAssignExpr> */
1239 { /* Inline parser_nodes#ANode#parent= (var_value,self) on <var_value:AExpr> */
1240 var_value
->attrs
[COLOR_parser_nodes__ANode___parent
].val
= self
; /* _parent on <var_value:AExpr> */
1244 var3
= NEW_parser_nodes__TAssign(&type_parser_nodes__TAssign
);
1246 { /* Inline parser_nodes#ANode#init (var3) on <var3:TAssign> */
1250 self
->attrs
[COLOR_parser_nodes__AAssignFormExpr___n_assign
].val
= var3
; /* _n_assign on <self:AVarAssignExpr> */
1252 { /* Inline scope#AVarFormExpr#variable= (self,var_v) on <self:AVarAssignExpr> */
1253 self
->attrs
[COLOR_scope__AVarFormExpr___variable
].val
= var_v
; /* _variable on <self:AVarAssignExpr> */
1258 var6
= ((val
* (*)(val
*))(var_value
->class->vft
[COLOR_typing__AExpr__mtype
]))(var_value
) /* mtype on <var_value:AExpr>*/;
1261 { /* Inline typing#AExpr#mtype= (self,var6) on <self:AVarAssignExpr> */
1262 self
->attrs
[COLOR_typing__AExpr___mtype
].val
= var6
; /* _mtype on <self:AVarAssignExpr> */
1268 /* method astbuilder#AVarAssignExpr#make for (self: Object, Variable, AExpr) */
1269 void VIRTUAL_astbuilder__AVarAssignExpr__make(val
* self
, val
* p0
, val
* p1
) {
1270 astbuilder__AVarAssignExpr__make(self
, p0
, p1
); /* Direct call astbuilder#AVarAssignExpr#make on <self:Object(AVarAssignExpr)>*/