1 #include "nit__modelbuilder_base.sep.0.h"
2 /* method modelbuilder_base#ToolContext#modelbuilder for (self: ToolContext): ModelBuilder */
3 val
* nit__modelbuilder_base___ToolContext___modelbuilder(val
* self
) {
4 val
* var
/* : ModelBuilder */;
5 val
* var1
/* : nullable ModelBuilder */;
6 val
* var3
/* : nullable ModelBuilder */;
8 { /* Inline modelbuilder_base#ToolContext#modelbuilder_real (self) on <self:ToolContext> */
9 var3
= self
->attrs
[COLOR_nit__modelbuilder_base__ToolContext___modelbuilder_real
].val
; /* _modelbuilder_real on <self:ToolContext> */
14 if (unlikely(var1
== NULL
)) {
15 PRINT_ERROR("Runtime error: %s", "Cast failed");
16 PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base
, 36);
24 /* method modelbuilder_base#ToolContext#modelbuilder_real for (self: ToolContext): nullable ModelBuilder */
25 val
* nit__modelbuilder_base___ToolContext___modelbuilder_real(val
* self
) {
26 val
* var
/* : nullable ModelBuilder */;
27 val
* var1
/* : nullable ModelBuilder */;
28 var1
= self
->attrs
[COLOR_nit__modelbuilder_base__ToolContext___modelbuilder_real
].val
; /* _modelbuilder_real on <self:ToolContext> */
33 /* method modelbuilder_base#ToolContext#modelbuilder_real= for (self: ToolContext, nullable ModelBuilder) */
34 void nit__modelbuilder_base___ToolContext___modelbuilder_real_61d(val
* self
, val
* p0
) {
35 self
->attrs
[COLOR_nit__modelbuilder_base__ToolContext___modelbuilder_real
].val
= p0
; /* _modelbuilder_real on <self:ToolContext> */
38 /* method modelbuilder_base#ModelBuilder#model for (self: ModelBuilder): Model */
39 val
* nit___nit__ModelBuilder___model(val
* self
) {
40 val
* var
/* : Model */;
41 val
* var1
/* : Model */;
42 var1
= self
->attrs
[COLOR_nit__modelbuilder_base__ModelBuilder___model
].val
; /* _model on <self:ModelBuilder> */
43 if (unlikely(var1
== NULL
)) {
44 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _model");
45 PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base
, 44);
52 /* method modelbuilder_base#ModelBuilder#model= for (self: ModelBuilder, Model) */
53 void nit___nit__ModelBuilder___model_61d(val
* self
, val
* p0
) {
54 self
->attrs
[COLOR_nit__modelbuilder_base__ModelBuilder___model
].val
= p0
; /* _model on <self:ModelBuilder> */
57 /* method modelbuilder_base#ModelBuilder#toolcontext for (self: ModelBuilder): ToolContext */
58 val
* nit___nit__ModelBuilder___toolcontext(val
* self
) {
59 val
* var
/* : ToolContext */;
60 val
* var1
/* : ToolContext */;
61 var1
= self
->attrs
[COLOR_nit__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <self:ModelBuilder> */
62 if (unlikely(var1
== NULL
)) {
63 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
64 PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base
, 47);
71 /* method modelbuilder_base#ModelBuilder#toolcontext= for (self: ModelBuilder, ToolContext) */
72 void nit___nit__ModelBuilder___toolcontext_61d(val
* self
, val
* p0
) {
73 self
->attrs
[COLOR_nit__modelbuilder_base__ModelBuilder___toolcontext
].val
= p0
; /* _toolcontext on <self:ModelBuilder> */
76 /* method modelbuilder_base#ModelBuilder#init for (self: ModelBuilder) */
77 void nit___nit__ModelBuilder___standard__kernel__Object__init(val
* self
) {
78 val
* var
/* : ToolContext */;
79 val
* var2
/* : ToolContext */;
80 val
* var3
/* : nullable ModelBuilder */;
81 val
* var5
/* : nullable ModelBuilder */;
82 val
* var6
/* : null */;
83 short int var7
/* : Bool */;
84 short int var8
/* : Bool */;
85 val
* var_other
/* var other: nullable Object */;
86 short int var10
/* : Bool */;
87 short int var12
/* : Bool */;
88 val
* var13
/* : ToolContext */;
89 val
* var15
/* : ToolContext */;
91 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (self) on <self:ModelBuilder> */
92 var2
= self
->attrs
[COLOR_nit__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <self:ModelBuilder> */
93 if (unlikely(var2
== NULL
)) {
94 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
95 PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base
, 47);
103 { /* Inline modelbuilder_base#ToolContext#modelbuilder_real (var) on <var:ToolContext> */
104 var5
= var
->attrs
[COLOR_nit__modelbuilder_base__ToolContext___modelbuilder_real
].val
; /* _modelbuilder_real on <var:ToolContext> */
111 var7
= 1; /* is null */
113 var7
= 0; /* arg is null but recv is not */
116 { /* Inline kernel#Object#== (var3,var6) on <var3:nullable ModelBuilder> */
119 { /* Inline kernel#Object#is_same_instance (var3,var_other) on <var3:nullable ModelBuilder(ModelBuilder)> */
120 var12
= var3
== var_other
;
132 if (unlikely(!var7
)) {
133 PRINT_ERROR("Runtime error: %s", "Assert failed");
134 PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base
, 54);
138 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (self) on <self:ModelBuilder> */
139 var15
= self
->attrs
[COLOR_nit__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <self:ModelBuilder> */
140 if (unlikely(var15
== NULL
)) {
141 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
142 PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base
, 47);
150 { /* Inline modelbuilder_base#ToolContext#modelbuilder_real= (var13,self) on <var13:ToolContext> */
151 var13
->attrs
[COLOR_nit__modelbuilder_base__ToolContext___modelbuilder_real
].val
= self
; /* _modelbuilder_real on <var13:ToolContext> */
157 /* method modelbuilder_base#ModelBuilder#try_get_mclass_by_name for (self: ModelBuilder, ANode, MModule, String): nullable MClass */
158 val
* nit___nit__ModelBuilder___try_get_mclass_by_name(val
* self
, val
* p0
, val
* p1
, val
* p2
) {
159 val
* var
/* : nullable MClass */;
160 val
* var_anode
/* var anode: ANode */;
161 val
* var_mmodule
/* var mmodule: MModule */;
162 val
* var_name
/* var name: String */;
163 val
* var1
/* : Model */;
164 val
* var3
/* : Model */;
165 val
* var4
/* : nullable Array[MClass] */;
166 val
* var_classes
/* var classes: nullable Array[MClass] */;
167 val
* var5
/* : null */;
168 short int var6
/* : Bool */;
169 short int var7
/* : Bool */;
170 val
* var8
/* : null */;
171 val
* var9
/* : null */;
172 val
* var_res
/* var res: nullable MClass */;
173 val
* var_
/* var : Array[MClass] */;
174 val
* var10
/* : ArrayIterator[nullable Object] */;
175 val
* var_11
/* var : ArrayIterator[MClass] */;
176 short int var12
/* : Bool */;
177 val
* var13
/* : nullable Object */;
178 val
* var_mclass
/* var mclass: MClass */;
179 val
* var14
/* : POSetElement[MModule] */;
180 val
* var16
/* : POSetElement[MModule] */;
181 val
* var17
/* : MModule */;
182 val
* var19
/* : MModule */;
183 short int var20
/* : Bool */;
184 short int var21
/* : Bool */;
185 val
* var22
/* : MModule */;
186 val
* var24
/* : MModule */;
187 val
* var25
/* : MVisibility */;
188 val
* var27
/* : MVisibility */;
189 short int var28
/* : Bool */;
190 short int var29
/* : Bool */;
191 val
* var30
/* : null */;
192 short int var31
/* : Bool */;
193 short int var32
/* : Bool */;
194 val
* var_other
/* var other: nullable Object */;
195 short int var34
/* : Bool */;
196 short int var36
/* : Bool */;
198 val
* var37
/* : String */;
199 char* var38
/* : NativeString */;
200 long var39
/* : Int */;
201 val
* var40
/* : FlatString */;
202 static val
* varonce41
;
203 val
* var42
/* : String */;
204 char* var43
/* : NativeString */;
205 long var44
/* : Int */;
206 val
* var45
/* : FlatString */;
207 val
* var46
/* : String */;
208 static val
* varonce47
;
209 val
* var48
/* : String */;
210 char* var49
/* : NativeString */;
211 long var50
/* : Int */;
212 val
* var51
/* : FlatString */;
213 val
* var52
/* : String */;
214 val
* var53
/* : Array[Object] */;
215 long var54
/* : Int */;
216 val
* var55
/* : NativeArray[Object] */;
217 val
* var56
/* : String */;
218 val
* var57
/* : null */;
223 { /* Inline modelbuilder_base#ModelBuilder#model (self) on <self:ModelBuilder> */
224 var3
= self
->attrs
[COLOR_nit__modelbuilder_base__ModelBuilder___model
].val
; /* _model on <self:ModelBuilder> */
225 if (unlikely(var3
== NULL
)) {
226 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _model");
227 PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base
, 44);
235 var4
= nit__model___Model___get_mclasses_by_name(var1
, var_name
);
239 if (var_classes
== NULL
) {
240 var6
= 1; /* is null */
242 var6
= 0; /* arg is null but recv is not */
245 var7
= standard___standard__Array___standard__kernel__Object___61d_61d(var_classes
, var5
);
258 var10
= standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__iterator(var_
);
263 var12
= standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__is_ok(var_11
);
267 var13
= standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__item(var_11
);
271 { /* Inline mmodule#MModule#in_importation (var_mmodule) on <var_mmodule:MModule> */
272 var16
= var_mmodule
->attrs
[COLOR_nit__mmodule__MModule___in_importation
].val
; /* _in_importation on <var_mmodule:MModule> */
273 if (unlikely(var16
== NULL
)) {
274 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _in_importation");
275 PRINT_ERROR(" (%s:%d)\n", FILE_nit__mmodule
, 96);
283 { /* Inline model#MClass#intro_mmodule (var_mclass) on <var_mclass:MClass> */
284 var19
= var_mclass
->attrs
[COLOR_nit__model__MClass___intro_mmodule
].val
; /* _intro_mmodule on <var_mclass:MClass> */
285 if (unlikely(var19
== NULL
)) {
286 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _intro_mmodule");
287 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 343);
295 var20
= poset___poset__POSetElement____60d_61d(var14
, var17
);
303 { /* Inline model#MClass#intro_mmodule (var_mclass) on <var_mclass:MClass> */
304 var24
= var_mclass
->attrs
[COLOR_nit__model__MClass___intro_mmodule
].val
; /* _intro_mmodule on <var_mclass:MClass> */
305 if (unlikely(var24
== NULL
)) {
306 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _intro_mmodule");
307 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 343);
315 { /* Inline model#MClass#visibility (var_mclass) on <var_mclass:MClass> */
316 var27
= var_mclass
->attrs
[COLOR_nit__model__MClass___visibility
].val
; /* _visibility on <var_mclass:MClass> */
317 if (unlikely(var27
== NULL
)) {
318 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _visibility");
319 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 403);
327 var28
= nit___nit__MModule___is_visible(var_mmodule
, var22
, var25
);
335 if (var_res
== NULL
) {
336 var31
= 1; /* is null */
338 var31
= 0; /* arg is null but recv is not */
341 { /* Inline kernel#Object#== (var_res,var30) on <var_res:nullable MClass> */
344 { /* Inline kernel#Object#is_same_instance (var_res,var_other) on <var_res:nullable MClass(MClass)> */
345 var36
= var_res
== var_other
;
358 var_res
= var_mclass
;
363 var38
= "Ambigous class name \'";
365 var40
= standard___standard__NativeString___to_s_with_length(var38
, var39
);
372 var43
= "\'; conflict between ";
374 var45
= standard___standard__NativeString___to_s_with_length(var43
, var44
);
379 var46
= nit___nit__MClass___nit__model_base__MEntity__full_name(var_mclass
);
386 var51
= standard___standard__NativeString___to_s_with_length(var49
, var50
);
391 var52
= nit___nit__MClass___nit__model_base__MEntity__full_name(var_res
);
393 var53
= NEW_standard__Array(&type_standard__Array__standard__Object
);
394 { /* var53 = array_instance Array[Object] */
396 var55
= NEW_standard__NativeArray(var54
, &type_standard__NativeArray__standard__Object
);
397 ((struct instance_standard__NativeArray
*)var55
)->values
[0] = (val
*) var37
;
398 ((struct instance_standard__NativeArray
*)var55
)->values
[1] = (val
*) var_name
;
399 ((struct instance_standard__NativeArray
*)var55
)->values
[2] = (val
*) var42
;
400 ((struct instance_standard__NativeArray
*)var55
)->values
[3] = (val
*) var46
;
401 ((struct instance_standard__NativeArray
*)var55
)->values
[4] = (val
*) var48
;
402 ((struct instance_standard__NativeArray
*)var55
)->values
[5] = (val
*) var52
;
404 ((void (*)(val
* self
, val
* p0
, long p1
))(var53
->class->vft
[COLOR_standard__array__Array__with_native
]))(var53
, var55
, var54
) /* with_native on <var53:Array[Object]>*/;
408 var56
= ((val
* (*)(val
* self
))(var53
->class->vft
[COLOR_standard__string__Object__to_s
]))(var53
) /* to_s on <var53:Array[Object]>*/;
411 nit___nit__ModelBuilder___error(self
, var_anode
, var56
); /* Direct call modelbuilder_base#ModelBuilder#error on <self:ModelBuilder>*/
417 BREAK_label
: (void)0;
419 standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__next(var_11
); /* Direct call array#ArrayIterator#next on <var_11:ArrayIterator[MClass]>*/
425 BREAK_label58
: (void)0;
427 { /* Inline abstract_collection#Iterator#finish (var_11) on <var_11:ArrayIterator[MClass]> */
436 /* method modelbuilder_base#ModelBuilder#try_get_mproperty_by_name2 for (self: ModelBuilder, ANode, MModule, MType, String): nullable MProperty */
437 val
* nit___nit__ModelBuilder___try_get_mproperty_by_name2(val
* self
, val
* p0
, val
* p1
, val
* p2
, val
* p3
) {
438 val
* var
/* : nullable MProperty */;
439 val
* var_anode
/* var anode: ANode */;
440 val
* var_mmodule
/* var mmodule: MModule */;
441 val
* var_mtype
/* var mtype: MType */;
442 val
* var_name
/* var name: String */;
443 val
* var1
/* : Model */;
444 val
* var3
/* : Model */;
445 val
* var4
/* : nullable Array[MProperty] */;
446 val
* var_props
/* var props: nullable Array[MProperty] */;
447 val
* var5
/* : null */;
448 short int var6
/* : Bool */;
449 short int var7
/* : Bool */;
450 val
* var8
/* : null */;
451 val
* var9
/* : HashMap3[MModule, MType, String, nullable MProperty] */;
452 val
* var11
/* : HashMap3[MModule, MType, String, nullable MProperty] */;
453 val
* var12
/* : nullable Object */;
454 val
* var_cache
/* var cache: nullable MProperty */;
455 val
* var13
/* : null */;
456 short int var14
/* : Bool */;
457 short int var15
/* : Bool */;
458 val
* var_other
/* var other: nullable Object */;
459 short int var17
/* : Bool */;
460 short int var18
/* : Bool */;
461 val
* var19
/* : null */;
462 val
* var_res
/* var res: nullable MProperty */;
463 val
* var20
/* : null */;
464 val
* var_ress
/* var ress: nullable Array[MProperty] */;
465 val
* var_
/* var : Array[MProperty] */;
466 val
* var21
/* : ArrayIterator[nullable Object] */;
467 val
* var_22
/* var : ArrayIterator[MProperty] */;
468 short int var23
/* : Bool */;
469 val
* var24
/* : nullable Object */;
470 val
* var_mprop
/* var mprop: MProperty */;
471 short int var25
/* : Bool */;
472 short int var26
/* : Bool */;
473 val
* var27
/* : MClassDef */;
474 val
* var29
/* : MClassDef */;
475 val
* var30
/* : MModule */;
476 val
* var32
/* : MModule */;
477 val
* var33
/* : MVisibility */;
478 val
* var35
/* : MVisibility */;
479 short int var36
/* : Bool */;
480 short int var37
/* : Bool */;
481 short int var38
/* : Bool */;
482 short int var39
/* : Bool */;
483 short int var40
/* : Bool */;
486 short int var_41
/* var : Bool */;
487 short int var42
/* : Bool */;
488 short int var44
/* : Bool */;
489 short int var_45
/* var : Bool */;
490 short int var46
/* : Bool */;
491 short int var47
/* : Bool */;
494 short int var50
/* : Bool */;
495 short int var_51
/* var : Bool */;
496 val
* var52
/* : MClassDef */;
497 val
* var54
/* : MClassDef */;
498 val
* var55
/* : MClass */;
499 val
* var57
/* : MClass */;
500 val
* var58
/* : MClass */;
501 val
* var60
/* : MClass */;
502 short int var61
/* : Bool */;
503 short int var63
/* : Bool */;
504 short int var64
/* : Bool */;
505 val
* var65
/* : null */;
506 short int var66
/* : Bool */;
507 short int var67
/* : Bool */;
508 val
* var_other69
/* var other: nullable Object */;
509 short int var70
/* : Bool */;
510 short int var72
/* : Bool */;
511 short int var73
/* : Bool */;
512 short int var74
/* : Bool */;
513 short int var75
/* : Bool */;
514 short int var76
/* : Bool */;
517 short int var_79
/* var : Bool */;
518 short int var80
/* : Bool */;
521 short int var_83
/* var : Bool */;
522 short int var84
/* : Bool */;
523 short int var86
/* : Bool */;
524 short int var_87
/* var : Bool */;
525 short int var88
/* : Bool */;
526 short int var90
/* : Bool */;
527 val
* var91
/* : MClassDef */;
528 val
* var93
/* : MClassDef */;
529 val
* var94
/* : MClassType */;
530 val
* var96
/* : MClassType */;
531 val
* var_restype
/* var restype: MClassType */;
532 val
* var97
/* : MClassDef */;
533 val
* var99
/* : MClassDef */;
534 val
* var100
/* : MClassType */;
535 val
* var102
/* : MClassType */;
536 val
* var_mproptype
/* var mproptype: MClassType */;
537 val
* var103
/* : null */;
538 short int var104
/* : Bool */;
539 val
* var105
/* : null */;
540 short int var106
/* : Bool */;
541 short int var107
/* : Bool */;
542 val
* var108
/* : Array[MProperty] */;
543 short int var111
/* : Bool */;
544 short int var112
/* : Bool */;
545 val
* var113
/* : null */;
546 short int var114
/* : Bool */;
547 short int var115
/* : Bool */;
548 short int var117
/* : Bool */;
549 short int var118
/* : Bool */;
550 short int var_119
/* var : Bool */;
551 short int var120
/* : Bool */;
554 short int var_123
/* var : Bool */;
555 short int var124
/* : Bool */;
556 short int var126
/* : Bool */;
557 val
* var127
/* : MClassDef */;
558 val
* var129
/* : MClassDef */;
559 val
* var130
/* : MClassType */;
560 val
* var132
/* : MClassType */;
561 val
* var_restype133
/* var restype: MClassType */;
562 val
* var134
/* : Array[MProperty] */;
563 val
* var_ress2
/* var ress2: Array[MProperty] */;
564 val
* var_135
/* var : Array[MProperty] */;
565 val
* var136
/* : ArrayIterator[nullable Object] */;
566 val
* var_137
/* var : ArrayIterator[MProperty] */;
567 short int var138
/* : Bool */;
568 val
* var139
/* : nullable Object */;
569 val
* var_mprop140
/* var mprop: MProperty */;
570 val
* var141
/* : MClassDef */;
571 val
* var143
/* : MClassDef */;
572 val
* var144
/* : MClassType */;
573 val
* var146
/* : MClassType */;
574 val
* var_mproptype147
/* var mproptype: MClassType */;
575 val
* var148
/* : null */;
576 short int var149
/* : Bool */;
577 short int var150
/* : Bool */;
578 short int var151
/* : Bool */;
579 short int var152
/* : Bool */;
582 short int var155
/* : Bool */;
583 short int var_156
/* var : Bool */;
584 short int var157
/* : Bool */;
585 short int var159
/* : Bool */;
586 short int var160
/* : Bool */;
587 short int var163
/* : Bool */;
588 val
* var164
/* : null */;
589 val
* var165
/* : null */;
590 short int var166
/* : Bool */;
591 short int var167
/* : Bool */;
592 short int var169
/* : Bool */;
593 short int var170
/* : Bool */;
594 long var171
/* : Int */;
595 long var173
/* : Int */;
596 long var174
/* : Int */;
597 short int var175
/* : Bool */;
598 short int var177
/* : Bool */;
601 const char* var_class_name
;
602 short int var180
/* : Bool */;
603 val
* var181
/* : Array[String] */;
604 val
* var_s
/* var s: Array[String] */;
605 val
* var_182
/* var : Array[MProperty] */;
606 val
* var183
/* : ArrayIterator[nullable Object] */;
607 val
* var_184
/* var : ArrayIterator[MProperty] */;
608 short int var185
/* : Bool */;
609 val
* var186
/* : nullable Object */;
610 val
* var_mprop187
/* var mprop: MProperty */;
611 val
* var188
/* : String */;
613 val
* var191
/* : String */;
614 char* var192
/* : NativeString */;
615 long var193
/* : Int */;
616 val
* var194
/* : FlatString */;
617 static val
* varonce195
;
618 val
* var196
/* : String */;
619 char* var197
/* : NativeString */;
620 long var198
/* : Int */;
621 val
* var199
/* : FlatString */;
622 static val
* varonce200
;
623 val
* var201
/* : String */;
624 char* var202
/* : NativeString */;
625 long var203
/* : Int */;
626 val
* var204
/* : FlatString */;
627 static val
* varonce205
;
628 val
* var206
/* : String */;
629 char* var207
/* : NativeString */;
630 long var208
/* : Int */;
631 val
* var209
/* : FlatString */;
632 val
* var210
/* : String */;
633 val
* var211
/* : Array[Object] */;
634 long var212
/* : Int */;
635 val
* var213
/* : NativeArray[Object] */;
636 val
* var214
/* : String */;
637 val
* var215
/* : HashMap3[MModule, MType, String, nullable MProperty] */;
638 val
* var217
/* : HashMap3[MModule, MType, String, nullable MProperty] */;
644 { /* Inline modelbuilder_base#ModelBuilder#model (self) on <self:ModelBuilder> */
645 var3
= self
->attrs
[COLOR_nit__modelbuilder_base__ModelBuilder___model
].val
; /* _model on <self:ModelBuilder> */
646 if (unlikely(var3
== NULL
)) {
647 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _model");
648 PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base
, 44);
656 var4
= nit__model___Model___get_mproperties_by_name(var1
, var_name
);
660 if (var_props
== NULL
) {
661 var6
= 1; /* is null */
663 var6
= 0; /* arg is null but recv is not */
666 var7
= standard___standard__Array___standard__kernel__Object___61d_61d(var_props
, var5
);
676 { /* Inline modelbuilder_base#ModelBuilder#try_get_mproperty_by_name2_cache (self) on <self:ModelBuilder> */
677 var11
= self
->attrs
[COLOR_nit__modelbuilder_base__ModelBuilder___try_get_mproperty_by_name2_cache
].val
; /* _try_get_mproperty_by_name2_cache on <self:ModelBuilder> */
678 if (unlikely(var11
== NULL
)) {
679 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _try_get_mproperty_by_name2_cache");
680 PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base
, 168);
688 var12
= more_collections___more_collections__HashMap3____91d_93d(var9
, var_mmodule
, var_mtype
, var_name
);
692 if (var_cache
== NULL
) {
693 var14
= 0; /* is null */
695 var14
= 1; /* arg is null and recv is not */
698 { /* Inline kernel#Object#!= (var_cache,var13) on <var_cache:nullable MProperty> */
701 var17
= ((short int (*)(val
* self
, val
* p0
))(var_cache
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_cache
, var_other
) /* == on <var_cache:nullable MProperty(MProperty)>*/;
721 var21
= standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__iterator(var_
);
726 var23
= standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__is_ok(var_22
);
730 var24
= standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__item(var_22
);
734 var25
= nit___nit__MType___has_mproperty(var_mtype
, var_mmodule
, var_mprop
);
742 { /* Inline model#MProperty#intro_mclassdef (var_mprop) on <var_mprop:MProperty> */
743 var29
= var_mprop
->attrs
[COLOR_nit__model__MProperty___intro_mclassdef
].val
; /* _intro_mclassdef on <var_mprop:MProperty> */
744 if (unlikely(var29
== NULL
)) {
745 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _intro_mclassdef");
746 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 1736);
754 { /* Inline model#MClassDef#mmodule (var27) on <var27:MClassDef> */
755 var32
= var27
->attrs
[COLOR_nit__model__MClassDef___mmodule
].val
; /* _mmodule on <var27:MClassDef> */
756 if (unlikely(var32
== NULL
)) {
757 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mmodule");
758 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 489);
766 { /* Inline model#MProperty#visibility (var_mprop) on <var_mprop:MProperty> */
767 var35
= var_mprop
->attrs
[COLOR_nit__model__MProperty___visibility
].val
; /* _visibility on <var_mprop:MProperty> */
768 if (unlikely(var35
== NULL
)) {
769 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _visibility");
770 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 1757);
778 var36
= nit___nit__MModule___is_visible(var_mmodule
, var30
, var33
);
785 /* <var_mprop:MProperty> isa MMethod */
786 cltype
= type_nit__MMethod
.color
;
787 idtype
= type_nit__MMethod
.id
;
788 if(cltype
>= var_mprop
->type
->table_size
) {
791 var40
= var_mprop
->type
->type_table
[cltype
] == idtype
;
796 { /* Inline model#MMethod#is_new (var_mprop) on <var_mprop:MProperty(MMethod)> */
797 var44
= var_mprop
->attrs
[COLOR_nit__model__MMethod___is_new
].s
; /* _is_new on <var_mprop:MProperty(MMethod)> */
808 /* <var_mtype:MType> isa MClassType */
809 cltype48
= type_nit__MClassType
.color
;
810 idtype49
= type_nit__MClassType
.id
;
811 if(cltype48
>= var_mtype
->type
->table_size
) {
814 var47
= var_mtype
->type
->type_table
[cltype48
] == idtype49
;
822 { /* Inline model#MProperty#intro_mclassdef (var_mprop) on <var_mprop:MProperty(MMethod)> */
823 var54
= var_mprop
->attrs
[COLOR_nit__model__MProperty___intro_mclassdef
].val
; /* _intro_mclassdef on <var_mprop:MProperty(MMethod)> */
824 if (unlikely(var54
== NULL
)) {
825 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _intro_mclassdef");
826 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 1736);
834 { /* Inline model#MClassDef#mclass (var52) on <var52:MClassDef> */
835 var57
= var52
->attrs
[COLOR_nit__model__MClassDef___mclass
].val
; /* _mclass on <var52:MClassDef> */
836 if (unlikely(var57
== NULL
)) {
837 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
838 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 492);
846 { /* Inline model#MClassType#mclass (var_mtype) on <var_mtype:MType(MClassType)> */
847 var60
= var_mtype
->attrs
[COLOR_nit__model__MClassType___mclass
].val
; /* _mclass on <var_mtype:MType(MClassType)> */
848 if (unlikely(var60
== NULL
)) {
849 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
850 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 1058);
858 { /* Inline kernel#Object#!= (var55,var58) on <var55:MClass> */
861 var63
= ((short int (*)(val
* self
, val
* p0
))(var55
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var55
, var_other
) /* == on <var55:MClass>*/;
880 if (var_res
== NULL
) {
881 var66
= 1; /* is null */
883 var66
= 0; /* arg is null but recv is not */
886 { /* Inline kernel#Object#== (var_res,var65) on <var_res:nullable MProperty> */
889 { /* Inline kernel#Object#is_same_instance (var_res,var_other69) on <var_res:nullable MProperty(MProperty)> */
890 var72
= var_res
== var_other69
;
907 /* <var_res:nullable MProperty(MProperty)> isa MMethod */
908 cltype77
= type_nit__MMethod
.color
;
909 idtype78
= type_nit__MMethod
.id
;
910 if(cltype77
>= var_res
->type
->table_size
) {
913 var76
= var_res
->type
->type_table
[cltype77
] == idtype78
;
917 /* <var_mprop:MProperty> isa MMethod */
918 cltype81
= type_nit__MMethod
.color
;
919 idtype82
= type_nit__MMethod
.id
;
920 if(cltype81
>= var_mprop
->type
->table_size
) {
923 var80
= var_mprop
->type
->type_table
[cltype81
] == idtype82
;
932 { /* Inline model#MMethod#is_init (var_res) on <var_res:nullable MProperty(MMethod)> */
933 var86
= var_res
->attrs
[COLOR_nit__model__MMethod___is_init
].s
; /* _is_init on <var_res:nullable MProperty(MMethod)> */
945 { /* Inline model#MMethod#is_init (var_mprop) on <var_mprop:MProperty(MMethod)> */
946 var90
= var_mprop
->attrs
[COLOR_nit__model__MMethod___is_init
].s
; /* _is_init on <var_mprop:MProperty(MMethod)> */
957 { /* Inline model#MProperty#intro_mclassdef (var_res) on <var_res:nullable MProperty(MMethod)> */
958 var93
= var_res
->attrs
[COLOR_nit__model__MProperty___intro_mclassdef
].val
; /* _intro_mclassdef on <var_res:nullable MProperty(MMethod)> */
959 if (unlikely(var93
== NULL
)) {
960 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _intro_mclassdef");
961 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 1736);
969 { /* Inline model#MClassDef#bound_mtype (var91) on <var91:MClassDef> */
970 var96
= var91
->attrs
[COLOR_nit__model__MClassDef___bound_mtype
].val
; /* _bound_mtype on <var91:MClassDef> */
971 if (unlikely(var96
== NULL
)) {
972 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _bound_mtype");
973 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 495);
982 { /* Inline model#MProperty#intro_mclassdef (var_mprop) on <var_mprop:MProperty(MMethod)> */
983 var99
= var_mprop
->attrs
[COLOR_nit__model__MProperty___intro_mclassdef
].val
; /* _intro_mclassdef on <var_mprop:MProperty(MMethod)> */
984 if (unlikely(var99
== NULL
)) {
985 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _intro_mclassdef");
986 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 1736);
994 { /* Inline model#MClassDef#bound_mtype (var97) on <var97:MClassDef> */
995 var102
= var97
->attrs
[COLOR_nit__model__MClassDef___bound_mtype
].val
; /* _bound_mtype on <var97:MClassDef> */
996 if (unlikely(var102
== NULL
)) {
997 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _bound_mtype");
998 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 495);
1002 RET_LABEL101
:(void)0;
1005 var_mproptype
= var100
;
1008 var104
= nit___nit__MType___is_subtype(var_mproptype
, var_mmodule
, var103
, var_restype
);
1011 var_res
= var_mprop
;
1018 if (var_ress
== NULL
) {
1019 var106
= 1; /* is null */
1021 var106
= 0; /* arg is null but recv is not */
1024 var107
= standard___standard__Array___standard__kernel__Object___61d_61d(var_ress
, var105
);
1028 var108
= NEW_standard__Array(&type_standard__Array__nit__MProperty
);
1030 standard___standard__Array___standard__kernel__Object__init(var108
); /* Direct call array#Array#init on <var108:Array[MProperty]>*/
1034 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_ress
, var_res
); /* Direct call array#Array#add on <var_ress:nullable Array[MProperty](Array[MProperty])>*/
1039 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_ress
, var_mprop
); /* Direct call array#Array#add on <var_ress:nullable Array[MProperty](Array[MProperty])>*/
1041 BREAK_label
: (void)0;
1043 standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__next(var_22
); /* Direct call array#ArrayIterator#next on <var_22:ArrayIterator[MProperty]>*/
1046 goto BREAK_label109
;
1049 BREAK_label109
: (void)0;
1051 { /* Inline abstract_collection#Iterator#finish (var_22) on <var_22:ArrayIterator[MProperty]> */
1052 RET_LABEL110
:(void)0;
1056 if (var_ress
== NULL
) {
1057 var114
= 0; /* is null */
1059 var114
= 1; /* arg is null and recv is not */
1062 { /* Inline kernel#Object#!= (var_ress,var113) on <var_ress:nullable Array[MProperty]> */
1065 var117
= ((short int (*)(val
* self
, val
* p0
))(var_ress
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_ress
, var_other
) /* == on <var_ress:nullable Array[MProperty](Array[MProperty])>*/;
1070 RET_LABEL116
:(void)0;
1076 /* <var_res:nullable MProperty> isa MMethod */
1077 cltype121
= type_nit__MMethod
.color
;
1078 idtype122
= type_nit__MMethod
.id
;
1079 if(var_res
== NULL
) {
1082 if(cltype121
>= var_res
->type
->table_size
) {
1085 var120
= var_res
->type
->type_table
[cltype121
] == idtype122
;
1095 { /* Inline model#MMethod#is_init (var_res) on <var_res:nullable MProperty(MMethod)> */
1096 var126
= var_res
->attrs
[COLOR_nit__model__MMethod___is_init
].s
; /* _is_init on <var_res:nullable MProperty(MMethod)> */
1098 RET_LABEL125
:(void)0;
1107 { /* Inline model#MProperty#intro_mclassdef (var_res) on <var_res:nullable MProperty(MMethod)> */
1108 var129
= var_res
->attrs
[COLOR_nit__model__MProperty___intro_mclassdef
].val
; /* _intro_mclassdef on <var_res:nullable MProperty(MMethod)> */
1109 if (unlikely(var129
== NULL
)) {
1110 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _intro_mclassdef");
1111 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 1736);
1115 RET_LABEL128
:(void)0;
1119 { /* Inline model#MClassDef#bound_mtype (var127) on <var127:MClassDef> */
1120 var132
= var127
->attrs
[COLOR_nit__model__MClassDef___bound_mtype
].val
; /* _bound_mtype on <var127:MClassDef> */
1121 if (unlikely(var132
== NULL
)) {
1122 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _bound_mtype");
1123 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 495);
1127 RET_LABEL131
:(void)0;
1130 var_restype133
= var130
;
1131 var134
= NEW_standard__Array(&type_standard__Array__nit__MProperty
);
1133 standard___standard__Array___standard__kernel__Object__init(var134
); /* Direct call array#Array#init on <var134:Array[MProperty]>*/
1138 var136
= standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__iterator(var_135
);
1143 var138
= standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__is_ok(var_137
);
1147 var139
= standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__item(var_137
);
1149 var_mprop140
= var139
;
1151 { /* Inline model#MProperty#intro_mclassdef (var_mprop140) on <var_mprop140:MProperty> */
1152 var143
= var_mprop140
->attrs
[COLOR_nit__model__MProperty___intro_mclassdef
].val
; /* _intro_mclassdef on <var_mprop140:MProperty> */
1153 if (unlikely(var143
== NULL
)) {
1154 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _intro_mclassdef");
1155 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 1736);
1159 RET_LABEL142
:(void)0;
1163 { /* Inline model#MClassDef#bound_mtype (var141) on <var141:MClassDef> */
1164 var146
= var141
->attrs
[COLOR_nit__model__MClassDef___bound_mtype
].val
; /* _bound_mtype on <var141:MClassDef> */
1165 if (unlikely(var146
== NULL
)) {
1166 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _bound_mtype");
1167 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 495);
1171 RET_LABEL145
:(void)0;
1174 var_mproptype147
= var144
;
1177 var149
= nit___nit__MType___is_subtype(var_restype133
, var_mmodule
, var148
, var_mproptype147
);
1182 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_ress2
, var_mprop140
); /* Direct call array#Array#add on <var_ress2:Array[MProperty]>*/
1185 /* <var_mprop140:MProperty> isa MMethod */
1186 cltype153
= type_nit__MMethod
.color
;
1187 idtype154
= type_nit__MMethod
.id
;
1188 if(cltype153
>= var_mprop140
->type
->table_size
) {
1191 var152
= var_mprop140
->type
->type_table
[cltype153
] == idtype154
;
1199 { /* Inline model#MMethod#is_init (var_mprop140) on <var_mprop140:MProperty(MMethod)> */
1200 var159
= var_mprop140
->attrs
[COLOR_nit__model__MMethod___is_init
].s
; /* _is_init on <var_mprop140:MProperty(MMethod)> */
1202 RET_LABEL158
:(void)0;
1210 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_ress2
, var_mprop140
); /* Direct call array#Array#add on <var_ress2:Array[MProperty]>*/
1216 standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__next(var_137
); /* Direct call array#ArrayIterator#next on <var_137:ArrayIterator[MProperty]>*/
1219 goto BREAK_label161
;
1222 BREAK_label161
: (void)0;
1224 { /* Inline abstract_collection#Iterator#finish (var_137) on <var_137:ArrayIterator[MProperty]> */
1225 RET_LABEL162
:(void)0;
1229 var163
= standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__is_empty(var_ress2
);
1235 var_ress
= var_ress2
;
1237 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_ress
, var_res
); /* Direct call array#Array#add on <var_ress:nullable Array[MProperty](Array[MProperty])>*/
1243 if (var_ress
== NULL
) {
1244 var166
= 0; /* is null */
1246 var166
= 1; /* arg is null and recv is not */
1249 { /* Inline kernel#Object#!= (var_ress,var165) on <var_ress:nullable Array[MProperty]> */
1252 var169
= ((short int (*)(val
* self
, val
* p0
))(var_ress
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_ress
, var_other
) /* == on <var_ress:nullable Array[MProperty](Array[MProperty])>*/;
1257 RET_LABEL168
:(void)0;
1263 { /* Inline array#AbstractArrayRead#length (var_ress) on <var_ress:nullable Array[MProperty](Array[MProperty])> */
1264 var173
= var_ress
->attrs
[COLOR_standard__array__AbstractArrayRead___length
].l
; /* _length on <var_ress:nullable Array[MProperty](Array[MProperty])> */
1266 RET_LABEL172
:(void)0;
1271 { /* Inline kernel#Int#> (var171,var174) on <var171:Int> */
1272 /* Covariant cast for argument 0 (i) <var174:Int> isa OTHER */
1273 /* <var174:Int> isa OTHER */
1274 var177
= 1; /* easy <var174:Int> isa OTHER*/
1275 if (unlikely(!var177
)) {
1276 var_class_name
= type_standard__Int
.name
;
1277 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
1278 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 412);
1281 var180
= var171
> var174
;
1284 RET_LABEL176
:(void)0;
1287 if (unlikely(!var175
)) {
1288 PRINT_ERROR("Runtime error: %s", "Assert failed");
1289 PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base
, 158);
1292 var181
= NEW_standard__Array(&type_standard__Array__standard__String
);
1294 standard___standard__Array___standard__kernel__Object__init(var181
); /* Direct call array#Array#init on <var181:Array[String]>*/
1299 var183
= standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__iterator(var_182
);
1304 var185
= standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__is_ok(var_184
);
1308 var186
= standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__item(var_184
);
1310 var_mprop187
= var186
;
1312 var188
= nit___nit__MProperty___nit__model_base__MEntity__full_name(var_mprop187
);
1315 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_s
, var188
); /* Direct call array#Array#add on <var_s:Array[String]>*/
1318 standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__next(var_184
); /* Direct call array#ArrayIterator#next on <var_184:ArrayIterator[MProperty]>*/
1321 goto BREAK_label189
;
1324 BREAK_label189
: (void)0;
1326 { /* Inline abstract_collection#Iterator#finish (var_184) on <var_184:ArrayIterator[MProperty]> */
1327 RET_LABEL190
:(void)0;
1333 var192
= "Ambigous property name \'";
1335 var194
= standard___standard__NativeString___to_s_with_length(var192
, var193
);
1340 var196
= varonce195
;
1344 var199
= standard___standard__NativeString___to_s_with_length(var197
, var198
);
1346 varonce195
= var196
;
1349 var201
= varonce200
;
1351 var202
= "; conflict between ";
1353 var204
= standard___standard__NativeString___to_s_with_length(var202
, var203
);
1355 varonce200
= var201
;
1358 var206
= varonce205
;
1362 var209
= standard___standard__NativeString___to_s_with_length(var207
, var208
);
1364 varonce205
= var206
;
1367 var210
= standard__string___Collection___join(var_s
, var206
);
1369 var211
= NEW_standard__Array(&type_standard__Array__standard__Object
);
1370 { /* var211 = array_instance Array[Object] */
1372 var213
= NEW_standard__NativeArray(var212
, &type_standard__NativeArray__standard__Object
);
1373 ((struct instance_standard__NativeArray
*)var213
)->values
[0] = (val
*) var191
;
1374 ((struct instance_standard__NativeArray
*)var213
)->values
[1] = (val
*) var_name
;
1375 ((struct instance_standard__NativeArray
*)var213
)->values
[2] = (val
*) var196
;
1376 ((struct instance_standard__NativeArray
*)var213
)->values
[3] = (val
*) var_mtype
;
1377 ((struct instance_standard__NativeArray
*)var213
)->values
[4] = (val
*) var201
;
1378 ((struct instance_standard__NativeArray
*)var213
)->values
[5] = (val
*) var210
;
1380 ((void (*)(val
* self
, val
* p0
, long p1
))(var211
->class->vft
[COLOR_standard__array__Array__with_native
]))(var211
, var213
, var212
) /* with_native on <var211:Array[Object]>*/;
1384 var214
= ((val
* (*)(val
* self
))(var211
->class->vft
[COLOR_standard__string__Object__to_s
]))(var211
) /* to_s on <var211:Array[Object]>*/;
1387 nit___nit__ModelBuilder___error(self
, var_anode
, var214
); /* Direct call modelbuilder_base#ModelBuilder#error on <self:ModelBuilder>*/
1392 { /* Inline modelbuilder_base#ModelBuilder#try_get_mproperty_by_name2_cache (self) on <self:ModelBuilder> */
1393 var217
= self
->attrs
[COLOR_nit__modelbuilder_base__ModelBuilder___try_get_mproperty_by_name2_cache
].val
; /* _try_get_mproperty_by_name2_cache on <self:ModelBuilder> */
1394 if (unlikely(var217
== NULL
)) {
1395 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _try_get_mproperty_by_name2_cache");
1396 PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base
, 168);
1400 RET_LABEL216
:(void)0;
1404 more_collections___more_collections__HashMap3____91d_93d_61d(var215
, var_mmodule
, var_mtype
, var_name
, var_res
); /* Direct call more_collections#HashMap3#[]= on <var215:HashMap3[MModule, MType, String, nullable MProperty]>*/
1411 /* method modelbuilder_base#ModelBuilder#try_get_mproperty_by_name2_cache for (self: ModelBuilder): HashMap3[MModule, MType, String, nullable MProperty] */
1412 val
* nit___nit__ModelBuilder___try_get_mproperty_by_name2_cache(val
* self
) {
1413 val
* var
/* : HashMap3[MModule, MType, String, nullable MProperty] */;
1414 val
* var1
/* : HashMap3[MModule, MType, String, nullable MProperty] */;
1415 var1
= self
->attrs
[COLOR_nit__modelbuilder_base__ModelBuilder___try_get_mproperty_by_name2_cache
].val
; /* _try_get_mproperty_by_name2_cache on <self:ModelBuilder> */
1416 if (unlikely(var1
== NULL
)) {
1417 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _try_get_mproperty_by_name2_cache");
1418 PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base
, 168);
1425 /* method modelbuilder_base#ModelBuilder#try_get_mproperty_by_name for (self: ModelBuilder, ANode, MClassDef, String): nullable MProperty */
1426 val
* nit___nit__ModelBuilder___try_get_mproperty_by_name(val
* self
, val
* p0
, val
* p1
, val
* p2
) {
1427 val
* var
/* : nullable MProperty */;
1428 val
* var_anode
/* var anode: ANode */;
1429 val
* var_mclassdef
/* var mclassdef: MClassDef */;
1430 val
* var_name
/* var name: String */;
1431 val
* var1
/* : MModule */;
1432 val
* var3
/* : MModule */;
1433 val
* var4
/* : MClassType */;
1434 val
* var6
/* : MClassType */;
1435 val
* var7
/* : nullable MProperty */;
1440 { /* Inline model#MClassDef#mmodule (var_mclassdef) on <var_mclassdef:MClassDef> */
1441 var3
= var_mclassdef
->attrs
[COLOR_nit__model__MClassDef___mmodule
].val
; /* _mmodule on <var_mclassdef:MClassDef> */
1442 if (unlikely(var3
== NULL
)) {
1443 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mmodule");
1444 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 489);
1452 { /* Inline model#MClassDef#bound_mtype (var_mclassdef) on <var_mclassdef:MClassDef> */
1453 var6
= var_mclassdef
->attrs
[COLOR_nit__model__MClassDef___bound_mtype
].val
; /* _bound_mtype on <var_mclassdef:MClassDef> */
1454 if (unlikely(var6
== NULL
)) {
1455 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _bound_mtype");
1456 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 495);
1464 var7
= nit___nit__ModelBuilder___try_get_mproperty_by_name2(self
, var_anode
, var1
, var4
, var_name
);
1471 /* method modelbuilder_base#ModelBuilder#error for (self: ModelBuilder, nullable ANode, String) */
1472 void nit___nit__ModelBuilder___error(val
* self
, val
* p0
, val
* p1
) {
1473 val
* var_n
/* var n: nullable ANode */;
1474 val
* var_text
/* var text: String */;
1475 val
* var
/* : null */;
1476 val
* var_l
/* var l: nullable Object */;
1477 val
* var1
/* : null */;
1478 short int var2
/* : Bool */;
1479 short int var3
/* : Bool */;
1480 val
* var_other
/* var other: nullable Object */;
1481 short int var5
/* : Bool */;
1482 short int var6
/* : Bool */;
1483 val
* var7
/* : Location */;
1484 val
* var8
/* : ToolContext */;
1485 val
* var10
/* : ToolContext */;
1491 if (var_n
== NULL
) {
1492 var2
= 0; /* is null */
1494 var2
= 1; /* arg is null and recv is not */
1497 { /* Inline kernel#Object#!= (var_n,var1) on <var_n:nullable ANode> */
1500 var5
= ((short int (*)(val
* self
, val
* p0
))(var_n
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_n
, var_other
) /* == on <var_n:nullable ANode(ANode)>*/;
1511 var7
= ((val
* (*)(val
* self
))(var_n
->class->vft
[COLOR_nit__parser_nodes__ANode__hot_location
]))(var_n
) /* hot_location on <var_n:nullable ANode(ANode)>*/;
1517 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (self) on <self:ModelBuilder> */
1518 var10
= self
->attrs
[COLOR_nit__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <self:ModelBuilder> */
1519 if (unlikely(var10
== NULL
)) {
1520 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
1521 PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base
, 47);
1529 nit___nit__ToolContext___error(var8
, var_l
, var_text
); /* Direct call toolcontext#ToolContext#error on <var8:ToolContext>*/
1533 /* method modelbuilder_base#ModelBuilder#warning for (self: ModelBuilder, nullable ANode, String, String) */
1534 void nit___nit__ModelBuilder___warning(val
* self
, val
* p0
, val
* p1
, val
* p2
) {
1535 val
* var_n
/* var n: nullable ANode */;
1536 val
* var_tag
/* var tag: String */;
1537 val
* var_text
/* var text: String */;
1538 val
* var
/* : null */;
1539 val
* var_l
/* var l: nullable Object */;
1540 val
* var1
/* : null */;
1541 short int var2
/* : Bool */;
1542 short int var3
/* : Bool */;
1543 val
* var_other
/* var other: nullable Object */;
1544 short int var5
/* : Bool */;
1545 short int var6
/* : Bool */;
1546 val
* var7
/* : Location */;
1547 val
* var8
/* : ToolContext */;
1548 val
* var10
/* : ToolContext */;
1555 if (var_n
== NULL
) {
1556 var2
= 0; /* is null */
1558 var2
= 1; /* arg is null and recv is not */
1561 { /* Inline kernel#Object#!= (var_n,var1) on <var_n:nullable ANode> */
1564 var5
= ((short int (*)(val
* self
, val
* p0
))(var_n
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_n
, var_other
) /* == on <var_n:nullable ANode(ANode)>*/;
1575 var7
= ((val
* (*)(val
* self
))(var_n
->class->vft
[COLOR_nit__parser_nodes__ANode__hot_location
]))(var_n
) /* hot_location on <var_n:nullable ANode(ANode)>*/;
1581 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (self) on <self:ModelBuilder> */
1582 var10
= self
->attrs
[COLOR_nit__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <self:ModelBuilder> */
1583 if (unlikely(var10
== NULL
)) {
1584 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
1585 PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base
, 47);
1593 nit___nit__ToolContext___warning(var8
, var_l
, var_tag
, var_text
); /* Direct call toolcontext#ToolContext#warning on <var8:ToolContext>*/
1597 /* method modelbuilder_base#ModelBuilder#advice for (self: ModelBuilder, nullable ANode, String, String) */
1598 void nit___nit__ModelBuilder___advice(val
* self
, val
* p0
, val
* p1
, val
* p2
) {
1599 val
* var_n
/* var n: nullable ANode */;
1600 val
* var_tag
/* var tag: String */;
1601 val
* var_text
/* var text: String */;
1602 val
* var
/* : null */;
1603 val
* var_l
/* var l: nullable Object */;
1604 val
* var1
/* : null */;
1605 short int var2
/* : Bool */;
1606 short int var3
/* : Bool */;
1607 val
* var_other
/* var other: nullable Object */;
1608 short int var5
/* : Bool */;
1609 short int var6
/* : Bool */;
1610 val
* var7
/* : Location */;
1611 val
* var8
/* : ToolContext */;
1612 val
* var10
/* : ToolContext */;
1619 if (var_n
== NULL
) {
1620 var2
= 0; /* is null */
1622 var2
= 1; /* arg is null and recv is not */
1625 { /* Inline kernel#Object#!= (var_n,var1) on <var_n:nullable ANode> */
1628 var5
= ((short int (*)(val
* self
, val
* p0
))(var_n
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_n
, var_other
) /* == on <var_n:nullable ANode(ANode)>*/;
1639 var7
= ((val
* (*)(val
* self
))(var_n
->class->vft
[COLOR_nit__parser_nodes__ANode__hot_location
]))(var_n
) /* hot_location on <var_n:nullable ANode(ANode)>*/;
1645 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (self) on <self:ModelBuilder> */
1646 var10
= self
->attrs
[COLOR_nit__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <self:ModelBuilder> */
1647 if (unlikely(var10
== NULL
)) {
1648 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
1649 PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base
, 47);
1657 nit___nit__ToolContext___advice(var8
, var_l
, var_tag
, var_text
); /* Direct call toolcontext#ToolContext#advice on <var8:ToolContext>*/
1661 /* method modelbuilder_base#ModelBuilder#force_get_primitive_method for (self: ModelBuilder, nullable ANode, String, MClass, MModule): MMethod */
1662 val
* nit___nit__ModelBuilder___force_get_primitive_method(val
* self
, val
* p0
, val
* p1
, val
* p2
, val
* p3
) {
1663 val
* var
/* : MMethod */;
1664 val
* var_n
/* var n: nullable ANode */;
1665 val
* var_name
/* var name: String */;
1666 val
* var_recv
/* var recv: MClass */;
1667 val
* var_mmodule
/* var mmodule: MModule */;
1668 val
* var1
/* : nullable MMethod */;
1669 val
* var_res
/* var res: nullable MMethod */;
1670 val
* var2
/* : null */;
1671 short int var3
/* : Bool */;
1672 short int var4
/* : Bool */;
1673 val
* var_other
/* var other: nullable Object */;
1674 short int var6
/* : Bool */;
1675 short int var8
/* : Bool */;
1676 val
* var9
/* : null */;
1677 val
* var_l
/* var l: nullable Object */;
1678 val
* var10
/* : null */;
1679 short int var11
/* : Bool */;
1680 short int var12
/* : Bool */;
1681 val
* var_other14
/* var other: nullable Object */;
1682 short int var15
/* : Bool */;
1683 short int var16
/* : Bool */;
1684 val
* var17
/* : Location */;
1685 val
* var18
/* : ToolContext */;
1686 val
* var20
/* : ToolContext */;
1687 static val
* varonce
;
1688 val
* var21
/* : String */;
1689 char* var22
/* : NativeString */;
1690 long var23
/* : Int */;
1691 val
* var24
/* : FlatString */;
1692 static val
* varonce25
;
1693 val
* var26
/* : String */;
1694 char* var27
/* : NativeString */;
1695 long var28
/* : Int */;
1696 val
* var29
/* : FlatString */;
1697 static val
* varonce30
;
1698 val
* var31
/* : String */;
1699 char* var32
/* : NativeString */;
1700 long var33
/* : Int */;
1701 val
* var34
/* : FlatString */;
1702 val
* var35
/* : Array[Object] */;
1703 long var36
/* : Int */;
1704 val
* var37
/* : NativeArray[Object] */;
1705 val
* var38
/* : String */;
1711 var1
= nit__model___MModule___try_get_primitive_method(var_mmodule
, var_name
, var_recv
);
1715 if (var_res
== NULL
) {
1716 var3
= 1; /* is null */
1718 var3
= 0; /* arg is null but recv is not */
1721 { /* Inline kernel#Object#== (var_res,var2) on <var_res:nullable MMethod> */
1724 { /* Inline kernel#Object#is_same_instance (var_res,var_other) on <var_res:nullable MMethod(MMethod)> */
1725 var8
= var_res
== var_other
;
1741 if (var_n
== NULL
) {
1742 var11
= 0; /* is null */
1744 var11
= 1; /* arg is null and recv is not */
1747 { /* Inline kernel#Object#!= (var_n,var10) on <var_n:nullable ANode> */
1748 var_other14
= var10
;
1750 var15
= ((short int (*)(val
* self
, val
* p0
))(var_n
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_n
, var_other14
) /* == on <var_n:nullable ANode(ANode)>*/;
1755 RET_LABEL13
:(void)0;
1761 var17
= ((val
* (*)(val
* self
))(var_n
->class->vft
[COLOR_nit__parser_nodes__ANode__hot_location
]))(var_n
) /* hot_location on <var_n:nullable ANode(ANode)>*/;
1767 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (self) on <self:ModelBuilder> */
1768 var20
= self
->attrs
[COLOR_nit__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <self:ModelBuilder> */
1769 if (unlikely(var20
== NULL
)) {
1770 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
1771 PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base
, 47);
1775 RET_LABEL19
:(void)0;
1781 var22
= "Fatal Error: ";
1783 var24
= standard___standard__NativeString___to_s_with_length(var22
, var23
);
1790 var27
= " must have a property named ";
1792 var29
= standard___standard__NativeString___to_s_with_length(var27
, var28
);
1801 var34
= standard___standard__NativeString___to_s_with_length(var32
, var33
);
1805 var35
= NEW_standard__Array(&type_standard__Array__standard__Object
);
1806 { /* var35 = array_instance Array[Object] */
1808 var37
= NEW_standard__NativeArray(var36
, &type_standard__NativeArray__standard__Object
);
1809 ((struct instance_standard__NativeArray
*)var37
)->values
[0] = (val
*) var21
;
1810 ((struct instance_standard__NativeArray
*)var37
)->values
[1] = (val
*) var_recv
;
1811 ((struct instance_standard__NativeArray
*)var37
)->values
[2] = (val
*) var26
;
1812 ((struct instance_standard__NativeArray
*)var37
)->values
[3] = (val
*) var_name
;
1813 ((struct instance_standard__NativeArray
*)var37
)->values
[4] = (val
*) var31
;
1815 ((void (*)(val
* self
, val
* p0
, long p1
))(var35
->class->vft
[COLOR_standard__array__Array__with_native
]))(var35
, var37
, var36
) /* with_native on <var35:Array[Object]>*/;
1819 var38
= ((val
* (*)(val
* self
))(var35
->class->vft
[COLOR_standard__string__Object__to_s
]))(var35
) /* to_s on <var35:Array[Object]>*/;
1822 nit___nit__ToolContext___fatal_error(var18
, var_l
, var38
); /* Direct call toolcontext#ToolContext#fatal_error on <var18:ToolContext>*/
1824 PRINT_ERROR("Runtime error: %s", "Aborted");
1825 PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base
, 212);
1834 /* method modelbuilder_base#AIntrudeVisibility#mvisibility for (self: AIntrudeVisibility): MVisibility */
1835 val
* nit__modelbuilder_base___AIntrudeVisibility___AVisibility__mvisibility(val
* self
) {
1836 val
* var
/* : MVisibility */;
1837 val
* var1
/* : MVisibility */;
1839 var1
= nit__model_base___standard__Object___intrude_visibility(self
);
1846 /* method modelbuilder_base#APublicVisibility#mvisibility for (self: APublicVisibility): MVisibility */
1847 val
* nit__modelbuilder_base___APublicVisibility___AVisibility__mvisibility(val
* self
) {
1848 val
* var
/* : MVisibility */;
1849 val
* var1
/* : MVisibility */;
1851 var1
= nit__model_base___standard__Object___public_visibility(self
);
1858 /* method modelbuilder_base#AProtectedVisibility#mvisibility for (self: AProtectedVisibility): MVisibility */
1859 val
* nit__modelbuilder_base___AProtectedVisibility___AVisibility__mvisibility(val
* self
) {
1860 val
* var
/* : MVisibility */;
1861 val
* var1
/* : MVisibility */;
1863 var1
= nit__model_base___standard__Object___protected_visibility(self
);
1870 /* method modelbuilder_base#APrivateVisibility#mvisibility for (self: APrivateVisibility): MVisibility */
1871 val
* nit__modelbuilder_base___APrivateVisibility___AVisibility__mvisibility(val
* self
) {
1872 val
* var
/* : MVisibility */;
1873 val
* var1
/* : MVisibility */;
1875 var1
= nit__model_base___standard__Object___private_visibility(self
);
1882 /* method modelbuilder_base#ADoc#mdoc_cache for (self: ADoc): nullable MDoc */
1883 val
* nit__modelbuilder_base___ADoc___mdoc_cache(val
* self
) {
1884 val
* var
/* : nullable MDoc */;
1885 val
* var1
/* : nullable MDoc */;
1886 var1
= self
->attrs
[COLOR_nit__modelbuilder_base__ADoc___mdoc_cache
].val
; /* _mdoc_cache on <self:ADoc> */
1891 /* method modelbuilder_base#ADoc#mdoc_cache= for (self: ADoc, nullable MDoc) */
1892 void nit__modelbuilder_base___ADoc___mdoc_cache_61d(val
* self
, val
* p0
) {
1893 self
->attrs
[COLOR_nit__modelbuilder_base__ADoc___mdoc_cache
].val
= p0
; /* _mdoc_cache on <self:ADoc> */
1896 /* method modelbuilder_base#ADoc#to_mdoc for (self: ADoc): MDoc */
1897 val
* nit__modelbuilder_base___ADoc___to_mdoc(val
* self
) {
1898 val
* var
/* : MDoc */;
1899 val
* var1
/* : nullable MDoc */;
1900 val
* var3
/* : nullable MDoc */;
1901 val
* var_res
/* var res: nullable MDoc */;
1902 val
* var4
/* : null */;
1903 short int var5
/* : Bool */;
1904 short int var6
/* : Bool */;
1905 val
* var_other
/* var other: nullable Object */;
1906 short int var8
/* : Bool */;
1907 short int var9
/* : Bool */;
1908 val
* var10
/* : MDoc */;
1909 val
* var12
/* : ANodes[TComment] */;
1910 val
* var14
/* : ANodes[TComment] */;
1911 val
* var_
/* var : ANodes[TComment] */;
1912 val
* var15
/* : Iterator[ANode] */;
1913 val
* var_16
/* var : Iterator[TComment] */;
1914 short int var17
/* : Bool */;
1915 val
* var18
/* : nullable Object */;
1916 val
* var_c
/* var c: TComment */;
1917 val
* var19
/* : String */;
1918 val
* var_text
/* var text: String */;
1919 long var20
/* : Int */;
1920 long var21
/* : Int */;
1921 short int var22
/* : Bool */;
1922 short int var24
/* : Bool */;
1925 const char* var_class_name
;
1926 short int var25
/* : Bool */;
1927 val
* var26
/* : Array[String] */;
1928 val
* var28
/* : Array[String] */;
1929 static val
* varonce
;
1930 val
* var29
/* : String */;
1931 char* var30
/* : NativeString */;
1932 long var31
/* : Int */;
1933 val
* var32
/* : FlatString */;
1934 val
* var33
/* : SequenceRead[Char] */;
1935 long var34
/* : Int */;
1936 val
* var35
/* : nullable Object */;
1937 char var36
/* : Char */;
1938 short int var37
/* : Bool */;
1939 short int var39
/* : Bool */;
1940 char var40
/* : Char */;
1941 val
* var41
/* : SequenceRead[Char] */;
1942 long var42
/* : Int */;
1943 val
* var43
/* : nullable Object */;
1944 char var44
/* : Char */;
1945 short int var45
/* : Bool */;
1946 short int var47
/* : Bool */;
1947 char var48
/* : Char */;
1948 long var49
/* : Int */;
1949 val
* var50
/* : Text */;
1950 long var51
/* : Int */;
1951 val
* var52
/* : Text */;
1952 val
* var53
/* : SequenceRead[Char] */;
1953 val
* var54
/* : nullable Object */;
1954 char var55
/* : Char */;
1955 short int var56
/* : Bool */;
1956 short int var58
/* : Bool */;
1957 char var59
/* : Char */;
1958 long var60
/* : Int */;
1959 long var61
/* : Int */;
1960 long var62
/* : Int */;
1961 long var63
/* : Int */;
1962 short int var65
/* : Bool */;
1965 const char* var_class_name68
;
1966 long var69
/* : Int */;
1967 val
* var70
/* : Text */;
1968 val
* var71
/* : Array[String] */;
1969 val
* var73
/* : Array[String] */;
1971 { /* Inline modelbuilder_base#ADoc#mdoc_cache (self) on <self:ADoc> */
1972 var3
= self
->attrs
[COLOR_nit__modelbuilder_base__ADoc___mdoc_cache
].val
; /* _mdoc_cache on <self:ADoc> */
1979 if (var_res
== NULL
) {
1980 var5
= 0; /* is null */
1982 var5
= 1; /* arg is null and recv is not */
1985 { /* Inline kernel#Object#!= (var_res,var4) on <var_res:nullable MDoc> */
1988 var8
= ((short int (*)(val
* self
, val
* p0
))(var_res
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_res
, var_other
) /* == on <var_res:nullable MDoc(MDoc)>*/;
2002 var10
= NEW_nit__MDoc(&type_nit__MDoc
);
2004 { /* Inline kernel#Object#init (var10) on <var10:MDoc> */
2005 RET_LABEL11
:(void)0;
2010 { /* Inline parser_nodes#ADoc#n_comment (self) on <self:ADoc> */
2011 var14
= self
->attrs
[COLOR_nit__parser_nodes__ADoc___n_comment
].val
; /* _n_comment on <self:ADoc> */
2012 if (unlikely(var14
== NULL
)) {
2013 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_comment");
2014 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes
, 2515);
2018 RET_LABEL13
:(void)0;
2023 var15
= nit___nit__ANodes___standard__abstract_collection__Collection__iterator(var_
);
2028 var17
= ((short int (*)(val
* self
))(var_16
->class->vft
[COLOR_standard__abstract_collection__Iterator__is_ok
]))(var_16
) /* is_ok on <var_16:Iterator[TComment]>*/;
2032 var18
= ((val
* (*)(val
* self
))(var_16
->class->vft
[COLOR_standard__abstract_collection__Iterator__item
]))(var_16
) /* item on <var_16:Iterator[TComment]>*/;
2036 var19
= nit__lexer_work___Token___text(var_c
);
2040 var20
= ((long (*)(val
* self
))(var_text
->class->vft
[COLOR_standard__string__Text__length
]))(var_text
) /* length on <var_text:String>*/;
2044 { /* Inline kernel#Int#< (var20,var21) on <var20:Int> */
2045 /* Covariant cast for argument 0 (i) <var21:Int> isa OTHER */
2046 /* <var21:Int> isa OTHER */
2047 var24
= 1; /* easy <var21:Int> isa OTHER*/
2048 if (unlikely(!var24
)) {
2049 var_class_name
= type_standard__Int
.name
;
2050 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
2051 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 410);
2054 var25
= var20
< var21
;
2057 RET_LABEL23
:(void)0;
2062 { /* Inline mdoc#MDoc#content (var_res) on <var_res:nullable MDoc(MDoc)> */
2063 var28
= var_res
->attrs
[COLOR_nit__mdoc__MDoc___content
].val
; /* _content on <var_res:nullable MDoc(MDoc)> */
2064 if (unlikely(var28
== NULL
)) {
2065 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _content");
2066 PRINT_ERROR(" (%s:%d)\n", FILE_nit__mdoc
, 22);
2070 RET_LABEL27
:(void)0;
2078 var32
= standard___standard__NativeString___to_s_with_length(var30
, var31
);
2083 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var26
, var29
); /* Direct call array#Array#add on <var26:Array[String]>*/
2089 var33
= ((val
* (*)(val
* self
))(var_text
->class->vft
[COLOR_standard__string__Text__chars
]))(var_text
) /* chars on <var_text:String>*/;
2093 var35
= ((val
* (*)(val
* self
, long p0
))(var33
->class->vft
[COLOR_standard__abstract_collection__SequenceRead___91d_93d
]))(var33
, var34
) /* [] on <var33:SequenceRead[Char]>*/;
2097 { /* Inline kernel#Char#== (var35,var36) on <var35:nullable Object(Char)> */
2098 var39
= (var35
!= NULL
) && (var35
->class == &class_standard__Char
);
2100 var40
= ((struct instance_standard__Char
*)var35
)->value
; /* autounbox from nullable Object to Char */;
2101 var39
= (var40
== var36
);
2105 RET_LABEL38
:(void)0;
2108 if (unlikely(!var37
)) {
2109 PRINT_ERROR("Runtime error: %s", "Assert failed");
2110 PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base
, 250);
2114 var41
= ((val
* (*)(val
* self
))(var_text
->class->vft
[COLOR_standard__string__Text__chars
]))(var_text
) /* chars on <var_text:String>*/;
2118 var43
= ((val
* (*)(val
* self
, long p0
))(var41
->class->vft
[COLOR_standard__abstract_collection__SequenceRead___91d_93d
]))(var41
, var42
) /* [] on <var41:SequenceRead[Char]>*/;
2122 { /* Inline kernel#Char#== (var43,var44) on <var43:nullable Object(Char)> */
2123 var47
= (var43
!= NULL
) && (var43
->class == &class_standard__Char
);
2125 var48
= ((struct instance_standard__Char
*)var43
)->value
; /* autounbox from nullable Object to Char */;
2126 var47
= (var48
== var44
);
2130 RET_LABEL46
:(void)0;
2136 var50
= standard___standard__Text___substring_from(var_text
, var49
);
2142 var52
= standard___standard__Text___substring_from(var_text
, var51
);
2147 var53
= ((val
* (*)(val
* self
))(var_text
->class->vft
[COLOR_standard__string__Text__chars
]))(var_text
) /* chars on <var_text:String>*/;
2150 var54
= ((val
* (*)(val
* self
))(var53
->class->vft
[COLOR_standard__abstract_collection__SequenceRead__last
]))(var53
) /* last on <var53:SequenceRead[Char]>*/;
2154 { /* Inline kernel#Char#== (var54,var55) on <var54:nullable Object(Char)> */
2155 var58
= (var54
!= NULL
) && (var54
->class == &class_standard__Char
);
2157 var59
= ((struct instance_standard__Char
*)var54
)->value
; /* autounbox from nullable Object to Char */;
2158 var58
= (var59
== var55
);
2162 RET_LABEL57
:(void)0;
2168 var61
= ((long (*)(val
* self
))(var_text
->class->vft
[COLOR_standard__string__Text__length
]))(var_text
) /* length on <var_text:String>*/;
2172 { /* Inline kernel#Int#- (var61,var62) on <var61:Int> */
2173 /* Covariant cast for argument 0 (i) <var62:Int> isa OTHER */
2174 /* <var62:Int> isa OTHER */
2175 var65
= 1; /* easy <var62:Int> isa OTHER*/
2176 if (unlikely(!var65
)) {
2177 var_class_name68
= type_standard__Int
.name
;
2178 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name68
);
2179 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 416);
2182 var69
= var61
- var62
;
2185 RET_LABEL64
:(void)0;
2189 var70
= ((val
* (*)(val
* self
, long p0
, long p1
))(var_text
->class->vft
[COLOR_standard__string__Text__substring
]))(var_text
, var60
, var63
) /* substring on <var_text:String>*/;
2195 { /* Inline mdoc#MDoc#content (var_res) on <var_res:nullable MDoc(MDoc)> */
2196 var73
= var_res
->attrs
[COLOR_nit__mdoc__MDoc___content
].val
; /* _content on <var_res:nullable MDoc(MDoc)> */
2197 if (unlikely(var73
== NULL
)) {
2198 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _content");
2199 PRINT_ERROR(" (%s:%d)\n", FILE_nit__mdoc
, 22);
2203 RET_LABEL72
:(void)0;
2207 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var71
, var_text
); /* Direct call array#Array#add on <var71:Array[String]>*/
2209 BREAK_label
: (void)0;
2211 ((void (*)(val
* self
))(var_16
->class->vft
[COLOR_standard__abstract_collection__Iterator__next
]))(var_16
) /* next on <var_16:Iterator[TComment]>*/;
2217 BREAK_label74
: (void)0;
2219 { /* Inline abstract_collection#Iterator#finish (var_16) on <var_16:Iterator[TComment]> */
2220 RET_LABEL75
:(void)0;
2224 { /* Inline modelbuilder_base#ADoc#mdoc_cache= (self,var_res) on <self:ADoc> */
2225 self
->attrs
[COLOR_nit__modelbuilder_base__ADoc___mdoc_cache
].val
= var_res
; /* _mdoc_cache on <self:ADoc> */
2226 RET_LABEL76
:(void)0;