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___64dmmodule
].val
; /* @mmodule on <self:ASTBuilder> */
8 fprintf(stderr
, "Runtime error: %s", "Uninitialized attribute @mmodule");
9 fprintf(stderr
, " (%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 var1
= astbuilder__ASTBuilder__mmodule(self
);
25 /* method astbuilder#ASTBuilder#mmodule= for (self: ASTBuilder, MModule) */
26 void astbuilder__ASTBuilder__mmodule_61d(val
* self
, val
* p0
) {
27 self
->attrs
[COLOR_astbuilder__ASTBuilder___64dmmodule
].val
= p0
; /* @mmodule on <self:ASTBuilder> */
30 /* method astbuilder#ASTBuilder#mmodule= for (self: Object, MModule) */
31 void VIRTUAL_astbuilder__ASTBuilder__mmodule_61d(val
* self
, val
* p0
) {
32 astbuilder__ASTBuilder__mmodule_61d(self
, p0
);
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___64danchor
].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 var1
= astbuilder__ASTBuilder__anchor(self
);
53 /* method astbuilder#ASTBuilder#anchor= for (self: ASTBuilder, nullable MClassType) */
54 void astbuilder__ASTBuilder__anchor_61d(val
* self
, val
* p0
) {
55 self
->attrs
[COLOR_astbuilder__ASTBuilder___64danchor
].val
= p0
; /* @anchor on <self:ASTBuilder> */
58 /* method astbuilder#ASTBuilder#anchor= for (self: Object, nullable MClassType) */
59 void VIRTUAL_astbuilder__ASTBuilder__anchor_61d(val
* self
, val
* p0
) {
60 astbuilder__ASTBuilder__anchor_61d(self
, p0
);
63 /* method astbuilder#ASTBuilder#make_int for (self: ASTBuilder, Int): AIntExpr */
64 val
* astbuilder__ASTBuilder__make_int(val
* self
, long p0
) {
65 val
* var
/* : AIntExpr */;
66 long var_value
/* var value: Int */;
67 val
* var1
/* : AIntExpr */;
68 val
* var2
/* : MModule */;
70 val
* var3
/* : String */;
71 char* var4
/* : NativeString */;
72 long var5
/* : Int */;
73 val
* var6
/* : String */;
74 val
* var7
/* : MClass */;
75 val
* var8
/* : MClassType */;
77 var1
= NEW_parser_nodes__AIntExpr(&type_parser_nodes__AIntExpr
);
78 var2
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_astbuilder__ASTBuilder__mmodule
]))(self
) /* mmodule on <self:ASTBuilder>*/;
84 var6
= string__NativeString__to_s_with_length(var4
, var5
);
88 var7
= ((val
* (*)(val
*, val
*))(var2
->class->vft
[COLOR_model__MModule__get_primitive_class
]))(var2
, var3
) /* get_primitive_class on <var2:MModule>*/;
89 var8
= ((val
* (*)(val
*))(var7
->class->vft
[COLOR_model__MClass__mclass_type
]))(var7
) /* mclass_type on <var7:MClass>*/;
90 ((void (*)(val
*, long, val
*))(var1
->class->vft
[COLOR_astbuilder__AIntExpr__make
]))(var1
, var_value
, var8
) /* make on <var1:AIntExpr>*/;
91 CHECK_NEW_parser_nodes__AIntExpr(var1
);
97 /* method astbuilder#ASTBuilder#make_int for (self: Object, Int): AIntExpr */
98 val
* VIRTUAL_astbuilder__ASTBuilder__make_int(val
* self
, long p0
) {
99 val
* var
/* : AIntExpr */;
100 val
* var1
/* : AIntExpr */;
101 var1
= astbuilder__ASTBuilder__make_int(self
, p0
);
106 /* method astbuilder#ASTBuilder#make_new for (self: ASTBuilder, MClassType, MMethod, nullable Array[AExpr]): ANewExpr */
107 val
* astbuilder__ASTBuilder__make_new(val
* self
, val
* p0
, val
* p1
, val
* p2
) {
108 val
* var
/* : ANewExpr */;
109 val
* var_mtype
/* var mtype: MClassType */;
110 val
* var_constructor
/* var constructor: MMethod */;
111 val
* var_args
/* var args: nullable Array[AExpr] */;
112 val
* var1
/* : ANewExpr */;
114 var_constructor
= p1
;
116 var1
= NEW_parser_nodes__ANewExpr(&type_parser_nodes__ANewExpr
);
117 ((void (*)(val
*, val
*, val
*, val
*))(var1
->class->vft
[COLOR_astbuilder__ANewExpr__make
]))(var1
, var_mtype
, var_constructor
, var_args
) /* make on <var1:ANewExpr>*/;
118 CHECK_NEW_parser_nodes__ANewExpr(var1
);
124 /* method astbuilder#ASTBuilder#make_new for (self: Object, MClassType, MMethod, nullable Array[AExpr]): ANewExpr */
125 val
* VIRTUAL_astbuilder__ASTBuilder__make_new(val
* self
, val
* p0
, val
* p1
, val
* p2
) {
126 val
* var
/* : ANewExpr */;
127 val
* var1
/* : ANewExpr */;
128 var1
= astbuilder__ASTBuilder__make_new(self
, p0
, p1
, p2
);
133 /* method astbuilder#ASTBuilder#make_call for (self: ASTBuilder, AExpr, MMethod, nullable Array[AExpr]): ACallExpr */
134 val
* astbuilder__ASTBuilder__make_call(val
* self
, val
* p0
, val
* p1
, val
* p2
) {
135 val
* var
/* : ACallExpr */;
136 val
* var_recv
/* var recv: AExpr */;
137 val
* var_mmethod
/* var mmethod: MMethod */;
138 val
* var_args
/* var args: nullable Array[AExpr] */;
139 val
* var1
/* : MPropDef */;
140 val
* var2
/* : nullable MSignature */;
141 val
* var3
/* : nullable MType */;
142 val
* var_mtype
/* var mtype: nullable MType */;
143 val
* var4
/* : null */;
144 short int var5
/* : Bool */;
145 val
* var6
/* : nullable MType */;
146 val
* var7
/* : nullable MClassType */;
147 val
* var8
/* : MModule */;
148 short int var9
/* : Bool */;
149 val
* var10
/* : MType */;
150 val
* var11
/* : ACallExpr */;
154 var1
= ((val
* (*)(val
*))(var_mmethod
->class->vft
[COLOR_model__MProperty__intro
]))(var_mmethod
) /* intro on <var_mmethod:MMethod>*/;
155 var2
= ((val
* (*)(val
*))(var1
->class->vft
[COLOR_model__MMethodDef__msignature
]))(var1
) /* msignature on <var1:MPropDef(MMethodDef)>*/;
157 fprintf(stderr
, "Runtime error: %s", "Reciever is null");
158 fprintf(stderr
, " (%s:%d)\n", "src/astbuilder.nit", 47);
161 var3
= ((val
* (*)(val
*))(var2
->class->vft
[COLOR_model__MSignature__return_mtype
]))(var2
) /* return_mtype on <var2:nullable MSignature>*/;
165 if (var_mtype
== NULL
) {
166 var5
= 0; /* is null */
168 var5
= 1; /* arg is null and recv is not */
171 var6
= ((val
* (*)(val
*))(var_recv
->class->vft
[COLOR_typing__AExpr__mtype
]))(var_recv
) /* mtype on <var_recv:AExpr>*/;
173 fprintf(stderr
, "Runtime error: %s", "Cast failed");
174 fprintf(stderr
, " (%s:%d)\n", "src/astbuilder.nit", 48);
177 var7
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_astbuilder__ASTBuilder__anchor
]))(self
) /* anchor on <self:ASTBuilder>*/;
178 var8
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_astbuilder__ASTBuilder__mmodule
]))(self
) /* mmodule on <self:ASTBuilder>*/;
180 var10
= ((val
* (*)(val
*, val
*, val
*, val
*, short int))(var_mtype
->class->vft
[COLOR_model__MType__resolve_for
]))(var_mtype
, var6
, var7
, var8
, var9
) /* resolve_for on <var_mtype:nullable MType(MType)>*/;
184 var11
= NEW_parser_nodes__ACallExpr(&type_parser_nodes__ACallExpr
);
185 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var11
->class->vft
[COLOR_astbuilder__ACallExpr__make
]))(var11
, var_recv
, var_mmethod
, var_args
, var_mtype
) /* make on <var11:ACallExpr>*/;
186 CHECK_NEW_parser_nodes__ACallExpr(var11
);
192 /* method astbuilder#ASTBuilder#make_call for (self: Object, AExpr, MMethod, nullable Array[AExpr]): ACallExpr */
193 val
* VIRTUAL_astbuilder__ASTBuilder__make_call(val
* self
, val
* p0
, val
* p1
, val
* p2
) {
194 val
* var
/* : ACallExpr */;
195 val
* var1
/* : ACallExpr */;
196 var1
= astbuilder__ASTBuilder__make_call(self
, p0
, p1
, p2
);
201 /* method astbuilder#ASTBuilder#make_block for (self: ASTBuilder): ABlockExpr */
202 val
* astbuilder__ASTBuilder__make_block(val
* self
) {
203 val
* var
/* : ABlockExpr */;
204 val
* var1
/* : ABlockExpr */;
205 var1
= NEW_parser_nodes__ABlockExpr(&type_parser_nodes__ABlockExpr
);
206 ((void (*)(val
*))(var1
->class->vft
[COLOR_astbuilder__ABlockExpr__make
]))(var1
) /* make on <var1:ABlockExpr>*/;
207 CHECK_NEW_parser_nodes__ABlockExpr(var1
);
213 /* method astbuilder#ASTBuilder#make_block for (self: Object): ABlockExpr */
214 val
* VIRTUAL_astbuilder__ASTBuilder__make_block(val
* self
) {
215 val
* var
/* : ABlockExpr */;
216 val
* var1
/* : ABlockExpr */;
217 var1
= astbuilder__ASTBuilder__make_block(self
);
222 /* method astbuilder#ASTBuilder#make_var_read for (self: ASTBuilder, Variable): AVarExpr */
223 val
* astbuilder__ASTBuilder__make_var_read(val
* self
, val
* p0
) {
224 val
* var
/* : AVarExpr */;
225 val
* var_variable
/* var variable: Variable */;
226 val
* var1
/* : AVarExpr */;
228 var1
= NEW_parser_nodes__AVarExpr(&type_parser_nodes__AVarExpr
);
229 ((void (*)(val
*, val
*))(var1
->class->vft
[COLOR_astbuilder__AVarExpr__make
]))(var1
, var_variable
) /* make on <var1:AVarExpr>*/;
230 CHECK_NEW_parser_nodes__AVarExpr(var1
);
236 /* method astbuilder#ASTBuilder#make_var_read for (self: Object, Variable): AVarExpr */
237 val
* VIRTUAL_astbuilder__ASTBuilder__make_var_read(val
* self
, val
* p0
) {
238 val
* var
/* : AVarExpr */;
239 val
* var1
/* : AVarExpr */;
240 var1
= astbuilder__ASTBuilder__make_var_read(self
, p0
);
245 /* method astbuilder#ASTBuilder#make_var_assign for (self: ASTBuilder, Variable, AExpr): AVarAssignExpr */
246 val
* astbuilder__ASTBuilder__make_var_assign(val
* self
, val
* p0
, val
* p1
) {
247 val
* var
/* : AVarAssignExpr */;
248 val
* var_variable
/* var variable: Variable */;
249 val
* var_value
/* var value: AExpr */;
250 val
* var1
/* : AVarAssignExpr */;
253 var1
= NEW_parser_nodes__AVarAssignExpr(&type_parser_nodes__AVarAssignExpr
);
254 ((void (*)(val
*, val
*, val
*))(var1
->class->vft
[COLOR_astbuilder__AVarAssignExpr__make
]))(var1
, var_variable
, var_value
) /* make on <var1:AVarAssignExpr>*/;
255 CHECK_NEW_parser_nodes__AVarAssignExpr(var1
);
261 /* method astbuilder#ASTBuilder#make_var_assign for (self: Object, Variable, AExpr): AVarAssignExpr */
262 val
* VIRTUAL_astbuilder__ASTBuilder__make_var_assign(val
* self
, val
* p0
, val
* p1
) {
263 val
* var
/* : AVarAssignExpr */;
264 val
* var1
/* : AVarAssignExpr */;
265 var1
= astbuilder__ASTBuilder__make_var_assign(self
, p0
, p1
);
270 /* method astbuilder#ASTBuilder#make_attr_read for (self: ASTBuilder, AExpr, MAttribute): AAttrExpr */
271 val
* astbuilder__ASTBuilder__make_attr_read(val
* self
, val
* p0
, val
* p1
) {
272 val
* var
/* : AAttrExpr */;
273 val
* var_recv
/* var recv: AExpr */;
274 val
* var_attribute
/* var attribute: MAttribute */;
275 val
* var1
/* : MPropDef */;
276 val
* var2
/* : nullable MType */;
277 val
* var3
/* : nullable MType */;
278 val
* var4
/* : nullable MClassType */;
279 val
* var5
/* : MModule */;
280 short int var6
/* : Bool */;
281 val
* var7
/* : MType */;
282 val
* var_mtype
/* var mtype: MType */;
283 val
* var8
/* : AAttrExpr */;
286 var1
= ((val
* (*)(val
*))(var_attribute
->class->vft
[COLOR_model__MProperty__intro
]))(var_attribute
) /* intro on <var_attribute:MAttribute>*/;
287 var2
= ((val
* (*)(val
*))(var1
->class->vft
[COLOR_model__MAttributeDef__static_mtype
]))(var1
) /* static_mtype on <var1:MPropDef(MAttributeDef)>*/;
288 var3
= ((val
* (*)(val
*))(var_recv
->class->vft
[COLOR_typing__AExpr__mtype
]))(var_recv
) /* mtype on <var_recv:AExpr>*/;
290 fprintf(stderr
, "Runtime error: %s", "Cast failed");
291 fprintf(stderr
, " (%s:%d)\n", "src/astbuilder.nit", 73);
294 var4
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_astbuilder__ASTBuilder__anchor
]))(self
) /* anchor on <self:ASTBuilder>*/;
295 var5
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_astbuilder__ASTBuilder__mmodule
]))(self
) /* mmodule on <self:ASTBuilder>*/;
298 fprintf(stderr
, "Runtime error: %s", "Reciever is null");
299 fprintf(stderr
, " (%s:%d)\n", "src/astbuilder.nit", 73);
302 var7
= ((val
* (*)(val
*, val
*, val
*, val
*, short int))(var2
->class->vft
[COLOR_model__MType__resolve_for
]))(var2
, var3
, var4
, var5
, var6
) /* resolve_for on <var2:nullable MType>*/;
305 var8
= NEW_parser_nodes__AAttrExpr(&type_parser_nodes__AAttrExpr
);
306 ((void (*)(val
*, val
*, val
*, val
*))(var8
->class->vft
[COLOR_astbuilder__AAttrExpr__make
]))(var8
, var_recv
, var_attribute
, var_mtype
) /* make on <var8:AAttrExpr>*/;
307 CHECK_NEW_parser_nodes__AAttrExpr(var8
);
313 /* method astbuilder#ASTBuilder#make_attr_read for (self: Object, AExpr, MAttribute): AAttrExpr */
314 val
* VIRTUAL_astbuilder__ASTBuilder__make_attr_read(val
* self
, val
* p0
, val
* p1
) {
315 val
* var
/* : AAttrExpr */;
316 val
* var1
/* : AAttrExpr */;
317 var1
= astbuilder__ASTBuilder__make_attr_read(self
, p0
, p1
);
322 /* method astbuilder#ASTBuilder#make_attr_assign for (self: ASTBuilder, AExpr, MAttribute, AExpr): AAttrAssignExpr */
323 val
* astbuilder__ASTBuilder__make_attr_assign(val
* self
, val
* p0
, val
* p1
, val
* p2
) {
324 val
* var
/* : AAttrAssignExpr */;
325 val
* var_recv
/* var recv: AExpr */;
326 val
* var_attribute
/* var attribute: MAttribute */;
327 val
* var_value
/* var value: AExpr */;
328 val
* var1
/* : AAttrAssignExpr */;
332 var1
= NEW_parser_nodes__AAttrAssignExpr(&type_parser_nodes__AAttrAssignExpr
);
333 ((void (*)(val
*, val
*, val
*, val
*))(var1
->class->vft
[COLOR_astbuilder__AAttrAssignExpr__make
]))(var1
, var_recv
, var_attribute
, var_value
) /* make on <var1:AAttrAssignExpr>*/;
334 CHECK_NEW_parser_nodes__AAttrAssignExpr(var1
);
340 /* method astbuilder#ASTBuilder#make_attr_assign for (self: Object, AExpr, MAttribute, AExpr): AAttrAssignExpr */
341 val
* VIRTUAL_astbuilder__ASTBuilder__make_attr_assign(val
* self
, val
* p0
, val
* p1
, val
* p2
) {
342 val
* var
/* : AAttrAssignExpr */;
343 val
* var1
/* : AAttrAssignExpr */;
344 var1
= astbuilder__ASTBuilder__make_attr_assign(self
, p0
, p1
, p2
);
349 /* method astbuilder#ASTBuilder#make_do for (self: ASTBuilder): ADoExpr */
350 val
* astbuilder__ASTBuilder__make_do(val
* self
) {
351 val
* var
/* : ADoExpr */;
352 val
* var1
/* : ADoExpr */;
353 var1
= NEW_parser_nodes__ADoExpr(&type_parser_nodes__ADoExpr
);
354 ((void (*)(val
*))(var1
->class->vft
[COLOR_astbuilder__ADoExpr__make
]))(var1
) /* make on <var1:ADoExpr>*/;
355 CHECK_NEW_parser_nodes__ADoExpr(var1
);
361 /* method astbuilder#ASTBuilder#make_do for (self: Object): ADoExpr */
362 val
* VIRTUAL_astbuilder__ASTBuilder__make_do(val
* self
) {
363 val
* var
/* : ADoExpr */;
364 val
* var1
/* : ADoExpr */;
365 var1
= astbuilder__ASTBuilder__make_do(self
);
370 /* method astbuilder#ASTBuilder#make_if for (self: ASTBuilder, AExpr, nullable MType): AIfExpr */
371 val
* astbuilder__ASTBuilder__make_if(val
* self
, val
* p0
, val
* p1
) {
372 val
* var
/* : AIfExpr */;
373 val
* var_condition
/* var condition: AExpr */;
374 val
* var_mtype
/* var mtype: nullable MType */;
375 val
* var1
/* : AIfExpr */;
378 var1
= NEW_parser_nodes__AIfExpr(&type_parser_nodes__AIfExpr
);
379 ((void (*)(val
*, val
*, val
*))(var1
->class->vft
[COLOR_astbuilder__AIfExpr__make
]))(var1
, var_condition
, var_mtype
) /* make on <var1:AIfExpr>*/;
380 CHECK_NEW_parser_nodes__AIfExpr(var1
);
386 /* method astbuilder#ASTBuilder#make_if for (self: Object, AExpr, nullable MType): AIfExpr */
387 val
* VIRTUAL_astbuilder__ASTBuilder__make_if(val
* self
, val
* p0
, val
* p1
) {
388 val
* var
/* : AIfExpr */;
389 val
* var1
/* : AIfExpr */;
390 var1
= astbuilder__ASTBuilder__make_if(self
, p0
, p1
);
395 /* method astbuilder#ASTBuilder#init for (self: ASTBuilder, MModule, nullable MClassType) */
396 void astbuilder__ASTBuilder__init(val
* self
, val
* p0
, val
* p1
) {
397 self
->attrs
[COLOR_astbuilder__ASTBuilder___64dmmodule
].val
= p0
; /* @mmodule on <self:ASTBuilder> */
398 self
->attrs
[COLOR_astbuilder__ASTBuilder___64danchor
].val
= p1
; /* @anchor on <self:ASTBuilder> */
401 /* method astbuilder#ASTBuilder#init for (self: Object, MModule, nullable MClassType) */
402 void VIRTUAL_astbuilder__ASTBuilder__init(val
* self
, val
* p0
, val
* p1
) {
403 astbuilder__ASTBuilder__init(self
, p0
, p1
);
406 /* method astbuilder#AExpr#make_var_read for (self: AExpr): AVarExpr */
407 val
* astbuilder__AExpr__make_var_read(val
* self
) {
408 val
* var
/* : AVarExpr */;
409 val
* var1
/* : nullable Variable */;
410 val
* var_variable
/* var variable: nullable Variable */;
411 val
* var2
/* : null */;
412 short int var3
/* : Bool */;
413 val
* var4
/* : nullable ANode */;
414 val
* var5
/* : null */;
415 short int var6
/* : Bool */;
416 val
* var7
/* : AExpr */;
417 val
* var_place
/* var place: AExpr */;
418 val
* var8
/* : Variable */;
420 val
* var9
/* : String */;
421 char* var10
/* : NativeString */;
422 long var11
/* : Int */;
423 val
* var12
/* : String */;
424 val
* var13
/* : nullable MType */;
425 val
* var14
/* : AVarAssignExpr */;
426 val
* var_nvar
/* var nvar: AVarAssignExpr */;
427 val
* var15
/* : AVarExpr */;
428 var1
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_astbuilder__AExpr__variable_cache
]))(self
) /* variable_cache on <self:AExpr>*/;
431 if (var_variable
== NULL
) {
432 var3
= 1; /* is null */
434 var3
= 0; /* arg is null but recv is not */
437 var4
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_parser_nodes__ANode__parent
]))(self
) /* parent on <self:AExpr>*/;
440 var6
= 0; /* is null */
442 var6
= 1; /* arg is null and recv is not */
445 fprintf(stderr
, "Runtime error: %s", "Assert failed");
446 fprintf(stderr
, " (%s:%d)\n", "src/astbuilder.nit", 107);
449 var7
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_astbuilder__AExpr__detach_with_placeholder
]))(self
) /* detach_with_placeholder on <self:AExpr>*/;
451 var8
= NEW_scope__Variable(&type_scope__Variable
);
457 var12
= string__NativeString__to_s_with_length(var10
, var11
);
461 ((void (*)(val
*, val
*))(var8
->class->vft
[COLOR_scope__Variable__init
]))(var8
, var9
) /* init on <var8:Variable>*/;
462 CHECK_NEW_scope__Variable(var8
);
464 var13
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_typing__AExpr__mtype
]))(self
) /* mtype on <self:AExpr>*/;
465 ((void (*)(val
*, val
*))(var_variable
->class->vft
[COLOR_typing__Variable__declared_type_61d
]))(var_variable
, var13
) /* declared_type= on <var_variable:nullable Variable(Variable)>*/;
466 var14
= NEW_parser_nodes__AVarAssignExpr(&type_parser_nodes__AVarAssignExpr
);
467 ((void (*)(val
*, val
*, val
*))(var14
->class->vft
[COLOR_astbuilder__AVarAssignExpr__make
]))(var14
, var_variable
, self
) /* make on <var14:AVarAssignExpr>*/;
468 CHECK_NEW_parser_nodes__AVarAssignExpr(var14
);
470 ((void (*)(val
*, val
*))(var_place
->class->vft
[COLOR_parser_nodes__ANode__replace_with
]))(var_place
, var_nvar
) /* replace_with on <var_place:AExpr>*/;
471 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_astbuilder__AExpr__variable_cache_61d
]))(self
, var_variable
) /* variable_cache= on <self:AExpr>*/;
474 var15
= NEW_parser_nodes__AVarExpr(&type_parser_nodes__AVarExpr
);
475 ((void (*)(val
*, val
*))(var15
->class->vft
[COLOR_astbuilder__AVarExpr__make
]))(var15
, var_variable
) /* make on <var15:AVarExpr>*/;
476 CHECK_NEW_parser_nodes__AVarExpr(var15
);
482 /* method astbuilder#AExpr#make_var_read for (self: Object): AVarExpr */
483 val
* VIRTUAL_astbuilder__AExpr__make_var_read(val
* self
) {
484 val
* var
/* : AVarExpr */;
485 val
* var1
/* : AVarExpr */;
486 var1
= astbuilder__AExpr__make_var_read(self
);
491 /* method astbuilder#AExpr#variable_cache for (self: AExpr): nullable Variable */
492 val
* astbuilder__AExpr__variable_cache(val
* self
) {
493 val
* var
/* : nullable Variable */;
494 val
* var1
/* : nullable Variable */;
495 var1
= self
->attrs
[COLOR_astbuilder__AExpr___64dvariable_cache
].val
; /* @variable_cache on <self:AExpr> */
500 /* method astbuilder#AExpr#variable_cache for (self: Object): nullable Variable */
501 val
* VIRTUAL_astbuilder__AExpr__variable_cache(val
* self
) {
502 val
* var
/* : nullable Variable */;
503 val
* var1
/* : nullable Variable */;
504 var1
= astbuilder__AExpr__variable_cache(self
);
509 /* method astbuilder#AExpr#variable_cache= for (self: AExpr, nullable Variable) */
510 void astbuilder__AExpr__variable_cache_61d(val
* self
, val
* p0
) {
511 self
->attrs
[COLOR_astbuilder__AExpr___64dvariable_cache
].val
= p0
; /* @variable_cache on <self:AExpr> */
514 /* method astbuilder#AExpr#variable_cache= for (self: Object, nullable Variable) */
515 void VIRTUAL_astbuilder__AExpr__variable_cache_61d(val
* self
, val
* p0
) {
516 astbuilder__AExpr__variable_cache_61d(self
, p0
);
519 /* method astbuilder#AExpr#detach_with_placeholder for (self: AExpr): AExpr */
520 val
* astbuilder__AExpr__detach_with_placeholder(val
* self
) {
521 val
* var
/* : AExpr */;
522 val
* var1
/* : APlaceholderExpr */;
523 val
* var_h
/* var h: APlaceholderExpr */;
524 var1
= NEW_astbuilder__APlaceholderExpr(&type_astbuilder__APlaceholderExpr
);
525 ((void (*)(val
*))(var1
->class->vft
[COLOR_astbuilder__APlaceholderExpr__make
]))(var1
) /* make on <var1:APlaceholderExpr>*/;
526 CHECK_NEW_astbuilder__APlaceholderExpr(var1
);
528 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_parser_nodes__ANode__replace_with
]))(self
, var_h
) /* replace_with on <self:AExpr>*/;
534 /* method astbuilder#AExpr#detach_with_placeholder for (self: Object): AExpr */
535 val
* VIRTUAL_astbuilder__AExpr__detach_with_placeholder(val
* self
) {
536 val
* var
/* : AExpr */;
537 val
* var1
/* : AExpr */;
538 var1
= astbuilder__AExpr__detach_with_placeholder(self
);
543 /* method astbuilder#AExpr#add for (self: AExpr, AExpr) */
544 void astbuilder__AExpr__add(val
* self
, val
* p0
) {
545 val
* var_expr
/* var expr: AExpr */;
547 fprintf(stderr
, "Runtime error: %s", "Aborted");
548 fprintf(stderr
, " (%s:%d)\n", "src/astbuilder.nit", 147);
552 /* method astbuilder#AExpr#add for (self: Object, AExpr) */
553 void VIRTUAL_astbuilder__AExpr__add(val
* self
, val
* p0
) {
554 astbuilder__AExpr__add(self
, p0
);
557 /* method astbuilder#APlaceholderExpr#make for (self: APlaceholderExpr) */
558 void astbuilder__APlaceholderExpr__make(val
* self
) {
559 ((void (*)(val
*))(self
->class->vft
[COLOR_parser_nodes__AExpr__init
]))(self
) /* init on <self:APlaceholderExpr>*/;
562 /* method astbuilder#APlaceholderExpr#make for (self: Object) */
563 void VIRTUAL_astbuilder__APlaceholderExpr__make(val
* self
) {
564 astbuilder__APlaceholderExpr__make(self
);
567 /* method astbuilder#ABlockExpr#make for (self: ABlockExpr) */
568 void astbuilder__ABlockExpr__make(val
* self
) {
569 short int var
/* : Bool */;
571 ((void (*)(val
*, short int))(self
->class->vft
[COLOR_typing__AExpr__is_typed_61d
]))(self
, var
) /* is_typed= on <self:ABlockExpr>*/;
574 /* method astbuilder#ABlockExpr#make for (self: Object) */
575 void VIRTUAL_astbuilder__ABlockExpr__make(val
* self
) {
576 astbuilder__ABlockExpr__make(self
);
579 /* method astbuilder#ABlockExpr#add for (self: ABlockExpr, AExpr) */
580 void astbuilder__ABlockExpr__add(val
* self
, val
* p0
) {
581 val
* var_expr
/* var expr: AExpr */;
582 val
* var
/* : ANodes[AExpr] */;
584 var
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_parser_nodes__ABlockExpr__n_expr
]))(self
) /* n_expr on <self:ABlockExpr>*/;
585 ((void (*)(val
*, val
*))(var
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var
, var_expr
) /* add on <var:ANodes[AExpr]>*/;
588 /* method astbuilder#ABlockExpr#add for (self: Object, AExpr) */
589 void VIRTUAL_astbuilder__ABlockExpr__add(val
* self
, val
* p0
) {
590 astbuilder__ABlockExpr__add(self
, p0
);
593 /* method astbuilder#ADoExpr#make for (self: ADoExpr) */
594 void astbuilder__ADoExpr__make(val
* self
) {
595 val
* var
/* : TKwdo */;
596 val
* var1
/* : EscapeMark */;
597 val
* var2
/* : null */;
598 short int var3
/* : Bool */;
599 var
= NEW_parser_nodes__TKwdo(&type_parser_nodes__TKwdo
);
600 ((void (*)(val
*))(var
->class->vft
[COLOR_parser_nodes__TKwdo__init
]))(var
) /* init on <var:TKwdo>*/;
601 CHECK_NEW_parser_nodes__TKwdo(var
);
602 self
->attrs
[COLOR_parser_nodes__ADoExpr___n_kwdo
].val
= var
; /* _n_kwdo on <self:ADoExpr> */
603 var1
= NEW_scope__EscapeMark(&type_scope__EscapeMark
);
606 ((void (*)(val
*, val
*, short int))(var1
->class->vft
[COLOR_scope__EscapeMark__init
]))(var1
, var2
, var3
) /* init on <var1:EscapeMark>*/;
607 CHECK_NEW_scope__EscapeMark(var1
);
608 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_scope__ADoExpr__escapemark_61d
]))(self
, var1
) /* escapemark= on <self:ADoExpr>*/;
611 /* method astbuilder#ADoExpr#make for (self: Object) */
612 void VIRTUAL_astbuilder__ADoExpr__make(val
* self
) {
613 astbuilder__ADoExpr__make(self
);
616 /* method astbuilder#ADoExpr#make_break for (self: ADoExpr): ABreakExpr */
617 val
* astbuilder__ADoExpr__make_break(val
* self
) {
618 val
* var
/* : ABreakExpr */;
619 val
* var1
/* : nullable EscapeMark */;
620 val
* var_escapemark
/* var escapemark: nullable EscapeMark */;
621 val
* var2
/* : null */;
622 short int var3
/* : Bool */;
623 val
* var4
/* : EscapeMark */;
624 val
* var5
/* : null */;
625 short int var6
/* : Bool */;
626 val
* var7
/* : ABreakExpr */;
627 var1
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_scope__ADoExpr__escapemark
]))(self
) /* escapemark on <self:ADoExpr>*/;
628 var_escapemark
= var1
;
630 if (var_escapemark
== NULL
) {
631 var3
= 1; /* is null */
633 var3
= 0; /* arg is null but recv is not */
636 var4
= NEW_scope__EscapeMark(&type_scope__EscapeMark
);
639 ((void (*)(val
*, val
*, short int))(var4
->class->vft
[COLOR_scope__EscapeMark__init
]))(var4
, var5
, var6
) /* init on <var4:EscapeMark>*/;
640 CHECK_NEW_scope__EscapeMark(var4
);
641 var_escapemark
= var4
;
642 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_scope__ADoExpr__escapemark_61d
]))(self
, var_escapemark
) /* escapemark= on <self:ADoExpr>*/;
645 var7
= NEW_parser_nodes__ABreakExpr(&type_parser_nodes__ABreakExpr
);
646 ((void (*)(val
*, val
*))(var7
->class->vft
[COLOR_astbuilder__ABreakExpr__make
]))(var7
, var_escapemark
) /* make on <var7:ABreakExpr>*/;
647 CHECK_NEW_parser_nodes__ABreakExpr(var7
);
653 /* method astbuilder#ADoExpr#make_break for (self: Object): ABreakExpr */
654 val
* VIRTUAL_astbuilder__ADoExpr__make_break(val
* self
) {
655 val
* var
/* : ABreakExpr */;
656 val
* var1
/* : ABreakExpr */;
657 var1
= astbuilder__ADoExpr__make_break(self
);
662 /* method astbuilder#ABreakExpr#make for (self: ABreakExpr, EscapeMark) */
663 void astbuilder__ABreakExpr__make(val
* self
, val
* p0
) {
664 val
* var_escapemark
/* var escapemark: EscapeMark */;
666 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_scope__ABreakExpr__escapemark_61d
]))(self
, var_escapemark
) /* escapemark= on <self:ABreakExpr>*/;
669 /* method astbuilder#ABreakExpr#make for (self: Object, EscapeMark) */
670 void VIRTUAL_astbuilder__ABreakExpr__make(val
* self
, val
* p0
) {
671 astbuilder__ABreakExpr__make(self
, p0
);
674 /* method astbuilder#AIfExpr#make for (self: AIfExpr, AExpr, nullable MType) */
675 void astbuilder__AIfExpr__make(val
* self
, val
* p0
, val
* p1
) {
676 val
* var_condition
/* var condition: AExpr */;
677 val
* var_mtype
/* var mtype: nullable MType */;
678 val
* var
/* : TKwif */;
679 val
* var1
/* : AExpr */;
680 val
* var2
/* : ABlockExpr */;
681 val
* var3
/* : ABlockExpr */;
682 short int var4
/* : Bool */;
685 var
= NEW_parser_nodes__TKwif(&type_parser_nodes__TKwif
);
686 ((void (*)(val
*))(var
->class->vft
[COLOR_parser_nodes__TKwif__init
]))(var
) /* init on <var:TKwif>*/;
687 CHECK_NEW_parser_nodes__TKwif(var
);
688 self
->attrs
[COLOR_parser_nodes__AIfExpr___n_kwif
].val
= var
; /* _n_kwif on <self:AIfExpr> */
689 self
->attrs
[COLOR_parser_nodes__AIfExpr___n_expr
].val
= var_condition
; /* _n_expr on <self:AIfExpr> */
690 var1
= self
->attrs
[COLOR_parser_nodes__AIfExpr___n_expr
].val
; /* _n_expr on <self:AIfExpr> */
692 fprintf(stderr
, "Runtime error: %s", "Uninitialized attribute _n_expr");
693 fprintf(stderr
, " (%s:%d)\n", "src/astbuilder.nit", 208);
696 ((void (*)(val
*, val
*))(var1
->class->vft
[COLOR_parser_nodes__ANode__parent_61d
]))(var1
, self
) /* parent= on <var1:AExpr>*/;
697 var2
= NEW_parser_nodes__ABlockExpr(&type_parser_nodes__ABlockExpr
);
698 ((void (*)(val
*))(var2
->class->vft
[COLOR_astbuilder__ABlockExpr__make
]))(var2
) /* make on <var2:ABlockExpr>*/;
699 CHECK_NEW_parser_nodes__ABlockExpr(var2
);
700 self
->attrs
[COLOR_parser_nodes__AIfExpr___n_then
].val
= var2
; /* _n_then on <self:AIfExpr> */
701 var3
= NEW_parser_nodes__ABlockExpr(&type_parser_nodes__ABlockExpr
);
702 ((void (*)(val
*))(var3
->class->vft
[COLOR_astbuilder__ABlockExpr__make
]))(var3
) /* make on <var3:ABlockExpr>*/;
703 CHECK_NEW_parser_nodes__ABlockExpr(var3
);
704 self
->attrs
[COLOR_parser_nodes__AIfExpr___n_else
].val
= var3
; /* _n_else on <self:AIfExpr> */
705 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_typing__AExpr__mtype_61d
]))(self
, var_mtype
) /* mtype= on <self:AIfExpr>*/;
707 ((void (*)(val
*, short int))(self
->class->vft
[COLOR_typing__AExpr__is_typed_61d
]))(self
, var4
) /* is_typed= on <self:AIfExpr>*/;
710 /* method astbuilder#AIfExpr#make for (self: Object, AExpr, nullable MType) */
711 void VIRTUAL_astbuilder__AIfExpr__make(val
* self
, val
* p0
, val
* p1
) {
712 astbuilder__AIfExpr__make(self
, p0
, p1
);
715 /* method astbuilder#AType#make for (self: AType) */
716 void astbuilder__AType__make(val
* self
) {
717 val
* var
/* : TClassid */;
718 var
= NEW_parser_nodes__TClassid(&type_parser_nodes__TClassid
);
719 ((void (*)(val
*))(var
->class->vft
[COLOR_parser_nodes__TClassid__init
]))(var
) /* init on <var:TClassid>*/;
720 CHECK_NEW_parser_nodes__TClassid(var
);
721 self
->attrs
[COLOR_parser_nodes__AType___n_id
].val
= var
; /* _n_id on <self:AType> */
724 /* method astbuilder#AType#make for (self: Object) */
725 void VIRTUAL_astbuilder__AType__make(val
* self
) {
726 astbuilder__AType__make(self
);
729 /* method astbuilder#AIntExpr#make for (self: AIntExpr, Int, MType) */
730 void astbuilder__AIntExpr__make(val
* self
, long p0
, val
* p1
) {
731 long var_value
/* var value: Int */;
732 val
* var_t
/* var t: MType */;
733 val
* var
/* : nullable Int */;
734 val
* var1
/* : TNumber */;
737 var
= BOX_kernel__Int(var_value
); /* autobox from Int to nullable Int */
738 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_literal__AIntExpr__value_61d
]))(self
, var
) /* value= on <self:AIntExpr>*/;
739 var1
= NEW_parser_nodes__TNumber(&type_parser_nodes__TNumber
);
740 ((void (*)(val
*))(var1
->class->vft
[COLOR_parser_nodes__TNumber__init
]))(var1
) /* init on <var1:TNumber>*/;
741 CHECK_NEW_parser_nodes__TNumber(var1
);
742 self
->attrs
[COLOR_parser_nodes__AIntExpr___n_number
].val
= var1
; /* _n_number on <self:AIntExpr> */
743 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_typing__AExpr__mtype_61d
]))(self
, var_t
) /* mtype= on <self:AIntExpr>*/;
746 /* method astbuilder#AIntExpr#make for (self: Object, Int, MType) */
747 void VIRTUAL_astbuilder__AIntExpr__make(val
* self
, long p0
, val
* p1
) {
748 astbuilder__AIntExpr__make(self
, p0
, p1
);
751 /* method astbuilder#ANewExpr#make for (self: ANewExpr, MClassType, MMethod, nullable Array[AExpr]) */
752 void astbuilder__ANewExpr__make(val
* self
, val
* p0
, val
* p1
, val
* p2
) {
753 val
* var_mtype
/* var mtype: MClassType */;
754 val
* var_mmethod
/* var mmethod: MMethod */;
755 val
* var_args
/* var args: nullable Array[AExpr] */;
756 val
* var
/* : TKwnew */;
757 val
* var1
/* : AType */;
758 val
* var2
/* : AListExprs */;
759 val
* var3
/* : null */;
760 short int var4
/* : Bool */;
761 val
* var5
/* : AExprs */;
762 val
* var6
/* : ANodes[AExpr] */;
763 val
* var7
/* : CallSite */;
764 short int var8
/* : Bool */;
765 val
* var9
/* : MPropDef */;
766 val
* var10
/* : MPropDef */;
767 val
* var11
/* : nullable MSignature */;
768 short int var12
/* : Bool */;
772 var
= NEW_parser_nodes__TKwnew(&type_parser_nodes__TKwnew
);
773 ((void (*)(val
*))(var
->class->vft
[COLOR_parser_nodes__TKwnew__init
]))(var
) /* init on <var:TKwnew>*/;
774 CHECK_NEW_parser_nodes__TKwnew(var
);
775 self
->attrs
[COLOR_parser_nodes__ANewExpr___n_kwnew
].val
= var
; /* _n_kwnew on <self:ANewExpr> */
776 var1
= NEW_parser_nodes__AType(&type_parser_nodes__AType
);
777 ((void (*)(val
*))(var1
->class->vft
[COLOR_astbuilder__AType__make
]))(var1
) /* make on <var1:AType>*/;
778 CHECK_NEW_parser_nodes__AType(var1
);
779 self
->attrs
[COLOR_parser_nodes__ANewExpr___n_type
].val
= var1
; /* _n_type on <self:ANewExpr> */
780 var2
= NEW_parser_nodes__AListExprs(&type_parser_nodes__AListExprs
);
781 ((void (*)(val
*))(var2
->class->vft
[COLOR_parser_nodes__AListExprs__init
]))(var2
) /* init on <var2:AListExprs>*/;
782 CHECK_NEW_parser_nodes__AListExprs(var2
);
783 self
->attrs
[COLOR_parser_nodes__ANewExpr___n_args
].val
= var2
; /* _n_args on <self:ANewExpr> */
785 if (var_args
== NULL
) {
786 var4
= 0; /* is null */
788 var4
= 1; /* arg is null and recv is not */
791 var5
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_parser_nodes__ANewExpr__n_args
]))(self
) /* n_args on <self:ANewExpr>*/;
792 var6
= ((val
* (*)(val
*))(var5
->class->vft
[COLOR_parser_nodes__AExprs__n_exprs
]))(var5
) /* n_exprs on <var5:AExprs>*/;
793 ((void (*)(val
*, val
*))(var6
->class->vft
[COLOR_abstract_collection__SimpleCollection__add_all
]))(var6
, var_args
) /* add_all on <var6:ANodes[AExpr]>*/;
796 var7
= NEW_typing__CallSite(&type_typing__CallSite
);
798 var9
= ((val
* (*)(val
*))(var_mmethod
->class->vft
[COLOR_model__MProperty__intro
]))(var_mmethod
) /* intro on <var_mmethod:MMethod>*/;
799 var10
= ((val
* (*)(val
*))(var_mmethod
->class->vft
[COLOR_model__MProperty__intro
]))(var_mmethod
) /* intro on <var_mmethod:MMethod>*/;
800 var11
= ((val
* (*)(val
*))(var10
->class->vft
[COLOR_model__MMethodDef__msignature
]))(var10
) /* msignature on <var10:MPropDef(MMethodDef)>*/;
802 fprintf(stderr
, "Runtime error: %s", "Cast failed");
803 fprintf(stderr
, " (%s:%d)\n", "src/astbuilder.nit", 241);
807 ((void (*)(val
*, val
*, val
*, short int, val
*, val
*, val
*, short int))(var7
->class->vft
[COLOR_typing__CallSite__init
]))(var7
, self
, var_mtype
, var8
, var_mmethod
, var9
, var11
, var12
) /* init on <var7:CallSite>*/;
808 CHECK_NEW_typing__CallSite(var7
);
809 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_typing__ANewExpr__callsite_61d
]))(self
, var7
) /* callsite= on <self:ANewExpr>*/;
810 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_typing__AExpr__mtype_61d
]))(self
, var_mtype
) /* mtype= on <self:ANewExpr>*/;
813 /* method astbuilder#ANewExpr#make for (self: Object, MClassType, MMethod, nullable Array[AExpr]) */
814 void VIRTUAL_astbuilder__ANewExpr__make(val
* self
, val
* p0
, val
* p1
, val
* p2
) {
815 astbuilder__ANewExpr__make(self
, p0
, p1
, p2
);
818 /* method astbuilder#ACallExpr#make for (self: ACallExpr, AExpr, MMethod, nullable Array[AExpr], nullable MType) */
819 void astbuilder__ACallExpr__make(val
* self
, val
* p0
, val
* p1
, val
* p2
, val
* p3
) {
820 val
* var_recv
/* var recv: AExpr */;
821 val
* var_mmethod
/* var mmethod: MMethod */;
822 val
* var_args
/* var args: nullable Array[AExpr] */;
823 val
* var_t
/* var t: nullable MType */;
824 val
* var
/* : Array[AExpr] */;
825 val
* var1
/* : Array[AExpr] */;
826 val
* var2
/* : AListExprs */;
827 val
* var3
/* : TId */;
828 val
* var4
/* : null */;
829 short int var5
/* : Bool */;
830 val
* var6
/* : AExprs */;
831 val
* var7
/* : ANodes[AExpr] */;
832 val
* var8
/* : nullable MType */;
833 val
* var_mtype
/* var mtype: MType */;
834 val
* var9
/* : CallSite */;
835 short int var10
/* : Bool */;
836 val
* var11
/* : MPropDef */;
837 val
* var12
/* : MPropDef */;
838 val
* var13
/* : nullable MSignature */;
839 short int var14
/* : Bool */;
840 short int var15
/* : Bool */;
845 self
->attrs
[COLOR_parser_nodes__ASendExpr___n_expr
].val
= var_recv
; /* _n_expr on <self:ACallExpr> */
846 ((void (*)(val
*, val
*))(var_recv
->class->vft
[COLOR_parser_nodes__ANode__parent_61d
]))(var_recv
, self
) /* parent= on <var_recv:AExpr>*/;
847 if (var_args
!=NULL
) {
850 var1
= NEW_array__Array(&type_array__Arrayparser_nodes__AExpr
);
851 ((void (*)(val
*))(var1
->class->vft
[COLOR_array__Array__init
]))(var1
) /* init on <var1:Array[AExpr]>*/;
852 CHECK_NEW_array__Array(var1
);
855 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_typing__ASendExpr__raw_arguments_61d
]))(self
, var
) /* raw_arguments= on <self:ACallExpr>*/;
856 var2
= NEW_parser_nodes__AListExprs(&type_parser_nodes__AListExprs
);
857 ((void (*)(val
*))(var2
->class->vft
[COLOR_parser_nodes__AListExprs__init
]))(var2
) /* init on <var2:AListExprs>*/;
858 CHECK_NEW_parser_nodes__AListExprs(var2
);
859 self
->attrs
[COLOR_parser_nodes__ACallFormExpr___n_args
].val
= var2
; /* _n_args on <self:ACallExpr> */
860 var3
= NEW_parser_nodes__TId(&type_parser_nodes__TId
);
861 ((void (*)(val
*))(var3
->class->vft
[COLOR_parser_nodes__TId__init
]))(var3
) /* init on <var3:TId>*/;
862 CHECK_NEW_parser_nodes__TId(var3
);
863 self
->attrs
[COLOR_parser_nodes__ACallFormExpr___n_id
].val
= var3
; /* _n_id on <self:ACallExpr> */
865 if (var_args
== NULL
) {
866 var5
= 0; /* is null */
868 var5
= 1; /* arg is null and recv is not */
871 var6
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_parser_nodes__ACallFormExpr__n_args
]))(self
) /* n_args on <self:ACallExpr>*/;
872 var7
= ((val
* (*)(val
*))(var6
->class->vft
[COLOR_parser_nodes__AExprs__n_exprs
]))(var6
) /* n_exprs on <var6:AExprs>*/;
873 ((void (*)(val
*, val
*))(var7
->class->vft
[COLOR_abstract_collection__SimpleCollection__add_all
]))(var7
, var_args
) /* add_all on <var7:ANodes[AExpr]>*/;
876 var8
= ((val
* (*)(val
*))(var_recv
->class->vft
[COLOR_typing__AExpr__mtype
]))(var_recv
) /* mtype on <var_recv:AExpr>*/;
878 fprintf(stderr
, "Runtime error: %s", "Cast failed");
879 fprintf(stderr
, " (%s:%d)\n", "src/astbuilder.nit", 257);
883 var9
= NEW_typing__CallSite(&type_typing__CallSite
);
885 var11
= ((val
* (*)(val
*))(var_mmethod
->class->vft
[COLOR_model__MProperty__intro
]))(var_mmethod
) /* intro on <var_mmethod:MMethod>*/;
886 var12
= ((val
* (*)(val
*))(var_mmethod
->class->vft
[COLOR_model__MProperty__intro
]))(var_mmethod
) /* intro on <var_mmethod:MMethod>*/;
887 var13
= ((val
* (*)(val
*))(var12
->class->vft
[COLOR_model__MMethodDef__msignature
]))(var12
) /* msignature on <var12:MPropDef(MMethodDef)>*/;
889 fprintf(stderr
, "Runtime error: %s", "Cast failed");
890 fprintf(stderr
, " (%s:%d)\n", "src/astbuilder.nit", 258);
894 ((void (*)(val
*, val
*, val
*, short int, val
*, val
*, val
*, short int))(var9
->class->vft
[COLOR_typing__CallSite__init
]))(var9
, self
, var_mtype
, var10
, var_mmethod
, var11
, var13
, var14
) /* init on <var9:CallSite>*/;
895 CHECK_NEW_typing__CallSite(var9
);
896 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_typing__ASendExpr__callsite_61d
]))(self
, var9
) /* callsite= on <self:ACallExpr>*/;
897 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_typing__AExpr__mtype_61d
]))(self
, var_t
) /* mtype= on <self:ACallExpr>*/;
899 ((void (*)(val
*, short int))(self
->class->vft
[COLOR_typing__AExpr__is_typed_61d
]))(self
, var15
) /* is_typed= on <self:ACallExpr>*/;
902 /* method astbuilder#ACallExpr#make for (self: Object, AExpr, MMethod, nullable Array[AExpr], nullable MType) */
903 void VIRTUAL_astbuilder__ACallExpr__make(val
* self
, val
* p0
, val
* p1
, val
* p2
, val
* p3
) {
904 astbuilder__ACallExpr__make(self
, p0
, p1
, p2
, p3
);
907 /* method astbuilder#AAttrExpr#make for (self: AAttrExpr, AExpr, MAttribute, MType) */
908 void astbuilder__AAttrExpr__make(val
* self
, val
* p0
, val
* p1
, val
* p2
) {
909 val
* var_recv
/* var recv: AExpr */;
910 val
* var_attribute
/* var attribute: MAttribute */;
911 val
* var_t
/* var t: MType */;
912 val
* var
/* : TAttrid */;
916 self
->attrs
[COLOR_parser_nodes__AAttrFormExpr___n_expr
].val
= var_recv
; /* _n_expr on <self:AAttrExpr> */
917 ((void (*)(val
*, val
*))(var_recv
->class->vft
[COLOR_parser_nodes__ANode__parent_61d
]))(var_recv
, self
) /* parent= on <var_recv:AExpr>*/;
918 var
= NEW_parser_nodes__TAttrid(&type_parser_nodes__TAttrid
);
919 ((void (*)(val
*))(var
->class->vft
[COLOR_parser_nodes__TAttrid__init
]))(var
) /* init on <var:TAttrid>*/;
920 CHECK_NEW_parser_nodes__TAttrid(var
);
921 self
->attrs
[COLOR_parser_nodes__AAttrFormExpr___n_id
].val
= var
; /* _n_id on <self:AAttrExpr> */
922 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_typing__AAttrFormExpr__mproperty_61d
]))(self
, var_attribute
) /* mproperty= on <self:AAttrExpr>*/;
923 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_typing__AExpr__mtype_61d
]))(self
, var_t
) /* mtype= on <self:AAttrExpr>*/;
926 /* method astbuilder#AAttrExpr#make for (self: Object, AExpr, MAttribute, MType) */
927 void VIRTUAL_astbuilder__AAttrExpr__make(val
* self
, val
* p0
, val
* p1
, val
* p2
) {
928 astbuilder__AAttrExpr__make(self
, p0
, p1
, p2
);
931 /* method astbuilder#AAttrAssignExpr#make for (self: AAttrAssignExpr, AExpr, MAttribute, AExpr) */
932 void astbuilder__AAttrAssignExpr__make(val
* self
, val
* p0
, val
* p1
, val
* p2
) {
933 val
* var_recv
/* var recv: AExpr */;
934 val
* var_attribute
/* var attribute: MAttribute */;
935 val
* var_value
/* var value: AExpr */;
936 val
* var
/* : TAttrid */;
937 val
* var1
/* : TAssign */;
938 val
* var2
/* : nullable MType */;
942 self
->attrs
[COLOR_parser_nodes__AAttrFormExpr___n_expr
].val
= var_recv
; /* _n_expr on <self:AAttrAssignExpr> */
943 ((void (*)(val
*, val
*))(var_recv
->class->vft
[COLOR_parser_nodes__ANode__parent_61d
]))(var_recv
, self
) /* parent= on <var_recv:AExpr>*/;
944 var
= NEW_parser_nodes__TAttrid(&type_parser_nodes__TAttrid
);
945 ((void (*)(val
*))(var
->class->vft
[COLOR_parser_nodes__TAttrid__init
]))(var
) /* init on <var:TAttrid>*/;
946 CHECK_NEW_parser_nodes__TAttrid(var
);
947 self
->attrs
[COLOR_parser_nodes__AAttrFormExpr___n_id
].val
= var
; /* _n_id on <self:AAttrAssignExpr> */
948 self
->attrs
[COLOR_parser_nodes__AAssignFormExpr___n_value
].val
= var_value
; /* _n_value on <self:AAttrAssignExpr> */
949 ((void (*)(val
*, val
*))(var_value
->class->vft
[COLOR_parser_nodes__ANode__parent_61d
]))(var_value
, self
) /* parent= on <var_value:AExpr>*/;
950 var1
= NEW_parser_nodes__TAssign(&type_parser_nodes__TAssign
);
951 ((void (*)(val
*))(var1
->class->vft
[COLOR_parser_nodes__TAssign__init
]))(var1
) /* init on <var1:TAssign>*/;
952 CHECK_NEW_parser_nodes__TAssign(var1
);
953 self
->attrs
[COLOR_parser_nodes__AAssignFormExpr___n_assign
].val
= var1
; /* _n_assign on <self:AAttrAssignExpr> */
954 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_typing__AAttrFormExpr__mproperty_61d
]))(self
, var_attribute
) /* mproperty= on <self:AAttrAssignExpr>*/;
955 var2
= ((val
* (*)(val
*))(var_value
->class->vft
[COLOR_typing__AExpr__mtype
]))(var_value
) /* mtype on <var_value:AExpr>*/;
956 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_typing__AExpr__mtype_61d
]))(self
, var2
) /* mtype= on <self:AAttrAssignExpr>*/;
959 /* method astbuilder#AAttrAssignExpr#make for (self: Object, AExpr, MAttribute, AExpr) */
960 void VIRTUAL_astbuilder__AAttrAssignExpr__make(val
* self
, val
* p0
, val
* p1
, val
* p2
) {
961 astbuilder__AAttrAssignExpr__make(self
, p0
, p1
, p2
);
964 /* method astbuilder#AVarExpr#make for (self: AVarExpr, Variable) */
965 void astbuilder__AVarExpr__make(val
* self
, val
* p0
) {
966 val
* var_v
/* var v: Variable */;
967 val
* var
/* : TId */;
968 val
* var1
/* : nullable MType */;
970 var
= NEW_parser_nodes__TId(&type_parser_nodes__TId
);
971 ((void (*)(val
*))(var
->class->vft
[COLOR_parser_nodes__TId__init
]))(var
) /* init on <var:TId>*/;
972 CHECK_NEW_parser_nodes__TId(var
);
973 self
->attrs
[COLOR_parser_nodes__AVarFormExpr___n_id
].val
= var
; /* _n_id on <self:AVarExpr> */
974 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_scope__AVarFormExpr__variable_61d
]))(self
, var_v
) /* variable= on <self:AVarExpr>*/;
975 var1
= ((val
* (*)(val
*))(var_v
->class->vft
[COLOR_typing__Variable__declared_type
]))(var_v
) /* declared_type on <var_v:Variable>*/;
976 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_typing__AExpr__mtype_61d
]))(self
, var1
) /* mtype= on <self:AVarExpr>*/;
979 /* method astbuilder#AVarExpr#make for (self: Object, Variable) */
980 void VIRTUAL_astbuilder__AVarExpr__make(val
* self
, val
* p0
) {
981 astbuilder__AVarExpr__make(self
, p0
);
984 /* method astbuilder#AVarAssignExpr#make for (self: AVarAssignExpr, Variable, AExpr) */
985 void astbuilder__AVarAssignExpr__make(val
* self
, val
* p0
, val
* p1
) {
986 val
* var_v
/* var v: Variable */;
987 val
* var_value
/* var value: AExpr */;
988 val
* var
/* : TId */;
989 val
* var1
/* : TAssign */;
990 val
* var2
/* : nullable MType */;
993 var
= NEW_parser_nodes__TId(&type_parser_nodes__TId
);
994 ((void (*)(val
*))(var
->class->vft
[COLOR_parser_nodes__TId__init
]))(var
) /* init on <var:TId>*/;
995 CHECK_NEW_parser_nodes__TId(var
);
996 self
->attrs
[COLOR_parser_nodes__AVarFormExpr___n_id
].val
= var
; /* _n_id on <self:AVarAssignExpr> */
997 self
->attrs
[COLOR_parser_nodes__AAssignFormExpr___n_value
].val
= var_value
; /* _n_value on <self:AVarAssignExpr> */
998 ((void (*)(val
*, val
*))(var_value
->class->vft
[COLOR_parser_nodes__ANode__parent_61d
]))(var_value
, self
) /* parent= on <var_value:AExpr>*/;
999 var1
= NEW_parser_nodes__TAssign(&type_parser_nodes__TAssign
);
1000 ((void (*)(val
*))(var1
->class->vft
[COLOR_parser_nodes__TAssign__init
]))(var1
) /* init on <var1:TAssign>*/;
1001 CHECK_NEW_parser_nodes__TAssign(var1
);
1002 self
->attrs
[COLOR_parser_nodes__AAssignFormExpr___n_assign
].val
= var1
; /* _n_assign on <self:AVarAssignExpr> */
1003 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_scope__AVarFormExpr__variable_61d
]))(self
, var_v
) /* variable= on <self:AVarAssignExpr>*/;
1004 var2
= ((val
* (*)(val
*))(var_value
->class->vft
[COLOR_typing__AExpr__mtype
]))(var_value
) /* mtype on <var_value:AExpr>*/;
1005 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_typing__AExpr__mtype_61d
]))(self
, var2
) /* mtype= on <self:AVarAssignExpr>*/;
1008 /* method astbuilder#AVarAssignExpr#make for (self: Object, Variable, AExpr) */
1009 void VIRTUAL_astbuilder__AVarAssignExpr__make(val
* self
, val
* p0
, val
* p1
) {
1010 astbuilder__AVarAssignExpr__make(self
, p0
, p1
);