1 #include "nit__loader.sep.0.h"
2 /* method loader#ToolContext#opt_path for (self: ToolContext): OptionArray */
3 val
* nit__loader___ToolContext___opt_path(val
* self
) {
4 val
* var
/* : OptionArray */;
5 val
* var1
/* : OptionArray */;
6 var1
= self
->attrs
[COLOR_nit__loader__ToolContext___opt_path
].val
; /* _opt_path on <self:ToolContext> */
7 if (unlikely(var1
== NULL
)) {
8 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_path");
9 PRINT_ERROR(" (%s:%d)\n", FILE_nit__loader
, 23);
16 /* method loader#ToolContext#opt_only_metamodel for (self: ToolContext): OptionBool */
17 val
* nit__loader___ToolContext___opt_only_metamodel(val
* self
) {
18 val
* var
/* : OptionBool */;
19 val
* var1
/* : OptionBool */;
20 var1
= self
->attrs
[COLOR_nit__loader__ToolContext___opt_only_metamodel
].val
; /* _opt_only_metamodel on <self:ToolContext> */
21 if (unlikely(var1
== NULL
)) {
22 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_only_metamodel");
23 PRINT_ERROR(" (%s:%d)\n", FILE_nit__loader
, 26);
30 /* method loader#ToolContext#opt_only_parse for (self: ToolContext): OptionBool */
31 val
* nit__loader___ToolContext___opt_only_parse(val
* self
) {
32 val
* var
/* : OptionBool */;
33 val
* var1
/* : OptionBool */;
34 var1
= self
->attrs
[COLOR_nit__loader__ToolContext___opt_only_parse
].val
; /* _opt_only_parse on <self:ToolContext> */
35 if (unlikely(var1
== NULL
)) {
36 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_only_parse");
37 PRINT_ERROR(" (%s:%d)\n", FILE_nit__loader
, 29);
44 /* method loader#ToolContext#init for (self: ToolContext) */
45 void nit__loader___ToolContext___standard__kernel__Object__init(val
* self
) {
46 val
* var
/* : OptionContext */;
47 val
* var2
/* : OptionContext */;
48 val
* var3
/* : OptionArray */;
49 val
* var5
/* : OptionArray */;
50 val
* var6
/* : OptionBool */;
51 val
* var8
/* : OptionBool */;
52 val
* var9
/* : OptionBool */;
53 val
* var11
/* : OptionBool */;
54 val
* var12
/* : Array[Option] */;
55 val
* var13
/* : NativeArray[Option] */;
57 ((void(*)(val
* self
))(self
->class->vft
[COLOR_nit__loader___ToolContext___standard__kernel__Object__init
]))(self
); /* init on <self:ToolContext>*/
60 { /* Inline toolcontext#ToolContext#option_context (self) on <self:ToolContext> */
61 var2
= self
->attrs
[COLOR_nit__toolcontext__ToolContext___option_context
].val
; /* _option_context on <self:ToolContext> */
62 if (unlikely(var2
== NULL
)) {
63 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _option_context");
64 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 332);
72 { /* Inline loader#ToolContext#opt_path (self) on <self:ToolContext> */
73 var5
= self
->attrs
[COLOR_nit__loader__ToolContext___opt_path
].val
; /* _opt_path on <self:ToolContext> */
74 if (unlikely(var5
== NULL
)) {
75 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_path");
76 PRINT_ERROR(" (%s:%d)\n", FILE_nit__loader
, 23);
84 { /* Inline loader#ToolContext#opt_only_parse (self) on <self:ToolContext> */
85 var8
= self
->attrs
[COLOR_nit__loader__ToolContext___opt_only_parse
].val
; /* _opt_only_parse on <self:ToolContext> */
86 if (unlikely(var8
== NULL
)) {
87 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_only_parse");
88 PRINT_ERROR(" (%s:%d)\n", FILE_nit__loader
, 29);
96 { /* Inline loader#ToolContext#opt_only_metamodel (self) on <self:ToolContext> */
97 var11
= self
->attrs
[COLOR_nit__loader__ToolContext___opt_only_metamodel
].val
; /* _opt_only_metamodel on <self:ToolContext> */
98 if (unlikely(var11
== NULL
)) {
99 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_only_metamodel");
100 PRINT_ERROR(" (%s:%d)\n", FILE_nit__loader
, 26);
107 var12
= NEW_standard__Array(&type_standard__Array__opts__Option
);
108 { /* var12 = array_instance Array[Option] */
109 var13
= NEW_standard__NativeArray(3l, &type_standard__NativeArray__opts__Option
);
110 ((struct instance_standard__NativeArray
*)var13
)->values
[0] = (val
*) var3
;
111 ((struct instance_standard__NativeArray
*)var13
)->values
[1] = (val
*) var6
;
112 ((struct instance_standard__NativeArray
*)var13
)->values
[2] = (val
*) var9
;
114 ((void(*)(val
* self
, val
* p0
, long p1
))(var12
->class->vft
[COLOR_standard__array__Array__with_native
]))(var12
, var13
, 3l); /* with_native on <var12:Array[Option]>*/
118 opts___opts__OptionContext___add_option(var
, var12
); /* Direct call opts#OptionContext#add_option on <var:OptionContext>*/
122 /* method loader#ModelBuilder#init for (self: ModelBuilder) */
123 void nit__loader___ModelBuilder___standard__kernel__Object__init(val
* self
) {
124 val
* var
/* : Array[String] */;
125 val
* var2
/* : Array[String] */;
126 val
* var3
/* : ToolContext */;
127 val
* var5
/* : ToolContext */;
128 val
* var6
/* : OptionArray */;
129 val
* var8
/* : OptionArray */;
130 val
* var9
/* : nullable Object */;
131 val
* var11
/* : nullable Object */;
133 val
* var12
/* : String */;
134 char* var13
/* : NativeString */;
135 val
* var14
/* : FlatString */;
136 val
* var15
/* : String */;
137 val
* var_path_env
/* var path_env: String */;
138 short int var16
/* : Bool */;
139 short int var17
/* : Bool */;
140 val
* var18
/* : Array[String] */;
141 val
* var20
/* : Array[String] */;
142 val
* var21
/* : Array[String] */;
143 val
* var22
/* : Pattern */;
144 val
* var23
/* : ToolContext */;
145 val
* var25
/* : ToolContext */;
146 val
* var26
/* : String */;
147 val
* var28
/* : String */;
148 val
* var_nit_dir
/* var nit_dir: String */;
149 static val
* varonce29
;
150 val
* var30
/* : String */;
151 char* var31
/* : NativeString */;
152 val
* var32
/* : FlatString */;
153 val
* var33
/* : String */;
154 val
* var_libname
/* var libname: String */;
155 short int var34
/* : Bool */;
156 val
* var35
/* : Array[String] */;
157 val
* var37
/* : Array[String] */;
158 static val
* varonce38
;
159 val
* var39
/* : String */;
160 char* var40
/* : NativeString */;
161 val
* var41
/* : FlatString */;
162 val
* var42
/* : String */;
163 short int var43
/* : Bool */;
164 val
* var44
/* : Array[String] */;
165 val
* var46
/* : Array[String] */;
167 ((void(*)(val
* self
))(self
->class->vft
[COLOR_nit__loader___ModelBuilder___standard__kernel__Object__init
]))(self
); /* init on <self:ModelBuilder>*/
170 { /* Inline loader#ModelBuilder#paths (self) on <self:ModelBuilder> */
171 var2
= self
->attrs
[COLOR_nit__loader__ModelBuilder___paths
].val
; /* _paths on <self:ModelBuilder> */
172 if (unlikely(var2
== NULL
)) {
173 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _paths");
174 PRINT_ERROR(" (%s:%d)\n", FILE_nit__loader
, 192);
182 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (self) on <self:ModelBuilder> */
183 var5
= self
->attrs
[COLOR_nit__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <self:ModelBuilder> */
184 if (unlikely(var5
== NULL
)) {
185 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
186 PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base
, 47);
194 { /* Inline loader#ToolContext#opt_path (var3) on <var3:ToolContext> */
195 var8
= var3
->attrs
[COLOR_nit__loader__ToolContext___opt_path
].val
; /* _opt_path on <var3:ToolContext> */
196 if (unlikely(var8
== NULL
)) {
197 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_path");
198 PRINT_ERROR(" (%s:%d)\n", FILE_nit__loader
, 23);
206 { /* Inline opts#Option#value (var6) on <var6:OptionArray> */
207 var11
= var6
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var6:OptionArray> */
213 standard___standard__Sequence___append(var
, var9
); /* Direct call abstract_collection#Sequence#append on <var:Array[String]>*/
215 if (likely(varonce
!=NULL
)) {
219 var14
= standard___standard__NativeString___to_s_with_length(var13
, 8l);
224 var15
= standard__environ___String___environ(var12
);
226 var_path_env
= var15
;
228 var16
= standard___standard__Text___is_empty(var_path_env
);
233 { /* Inline loader#ModelBuilder#paths (self) on <self:ModelBuilder> */
234 var20
= self
->attrs
[COLOR_nit__loader__ModelBuilder___paths
].val
; /* _paths on <self:ModelBuilder> */
235 if (unlikely(var20
== NULL
)) {
236 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _paths");
237 PRINT_ERROR(" (%s:%d)\n", FILE_nit__loader
, 192);
245 var22
= (val
*)((long)(':')<<2|2);
246 var21
= standard__string_search___Text___split_with(var_path_env
, var22
);
249 standard___standard__Sequence___append(var18
, var21
); /* Direct call abstract_collection#Sequence#append on <var18:Array[String]>*/
254 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (self) on <self:ModelBuilder> */
255 var25
= self
->attrs
[COLOR_nit__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <self:ModelBuilder> */
256 if (unlikely(var25
== NULL
)) {
257 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
258 PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base
, 47);
266 { /* Inline toolcontext#ToolContext#nit_dir (var23) on <var23:ToolContext> */
267 var28
= var23
->attrs
[COLOR_nit__toolcontext__ToolContext___nit_dir
].val
; /* _nit_dir on <var23:ToolContext> */
268 if (unlikely(var28
== NULL
)) {
269 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _nit_dir");
270 PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext
, 521);
278 if (likely(varonce29
!=NULL
)) {
282 var32
= standard___standard__NativeString___to_s_with_length(var31
, 3l);
287 var33
= standard__file___String____47d(var_nit_dir
, var30
);
291 var34
= standard__file___String___file_exists(var_libname
);
295 { /* Inline loader#ModelBuilder#paths (self) on <self:ModelBuilder> */
296 var37
= self
->attrs
[COLOR_nit__loader__ModelBuilder___paths
].val
; /* _paths on <self:ModelBuilder> */
297 if (unlikely(var37
== NULL
)) {
298 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _paths");
299 PRINT_ERROR(" (%s:%d)\n", FILE_nit__loader
, 192);
307 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var35
, var_libname
); /* Direct call array#Array#add on <var35:Array[String]>*/
311 if (likely(varonce38
!=NULL
)) {
315 var41
= standard___standard__NativeString___to_s_with_length(var40
, 7l);
320 var42
= standard__file___String____47d(var_nit_dir
, var39
);
324 var43
= standard__file___String___file_exists(var_libname
);
328 { /* Inline loader#ModelBuilder#paths (self) on <self:ModelBuilder> */
329 var46
= self
->attrs
[COLOR_nit__loader__ModelBuilder___paths
].val
; /* _paths on <self:ModelBuilder> */
330 if (unlikely(var46
== NULL
)) {
331 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _paths");
332 PRINT_ERROR(" (%s:%d)\n", FILE_nit__loader
, 192);
340 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var44
, var_libname
); /* Direct call array#Array#add on <var44:Array[String]>*/
346 /* method loader#ModelBuilder#parse for (self: ModelBuilder, Sequence[String]): Array[MModule] */
347 val
* nit__loader___ModelBuilder___parse(val
* self
, val
* p0
) {
348 val
* var
/* : Array[MModule] */;
349 val
* var_modules
/* var modules: Sequence[String] */;
350 long var1
/* : Int */;
351 long var3
/* : Int for extern */;
352 long var_time0
/* var time0: Int */;
353 val
* var4
/* : ToolContext */;
354 val
* var6
/* : ToolContext */;
356 val
* var7
/* : String */;
357 char* var8
/* : NativeString */;
358 val
* var9
/* : FlatString */;
359 val
* var10
/* : ArraySet[MModule] */;
360 val
* var_mmodules
/* var mmodules: ArraySet[MModule] */;
361 val
* var_
/* var : Sequence[String] */;
362 val
* var11
/* : Iterator[nullable Object] */;
363 val
* var_12
/* var : IndexedIterator[String] */;
364 short int var13
/* : Bool */;
365 val
* var14
/* : nullable Object */;
366 val
* var_a
/* var a: String */;
367 val
* var15
/* : nullable AModule */;
368 val
* var_nmodule
/* var nmodule: nullable AModule */;
369 short int var16
/* : Bool */;
370 short int var17
/* : Bool */;
371 val
* var_other
/* var other: nullable Object */;
372 short int var19
/* : Bool */;
373 short int var21
/* : Bool */;
374 val
* var22
/* : nullable MModule */;
375 val
* var24
/* : nullable MModule */;
376 val
* var_mmodule
/* var mmodule: nullable MModule */;
377 short int var25
/* : Bool */;
378 short int var26
/* : Bool */;
379 short int var28
/* : Bool */;
380 short int var30
/* : Bool */;
381 long var32
/* : Int */;
382 long var34
/* : Int for extern */;
383 long var_time1
/* var time1: Int */;
384 val
* var35
/* : ToolContext */;
385 val
* var37
/* : ToolContext */;
386 val
* var39
/* : NativeArray[String] */;
387 static val
* varonce38
;
388 static val
* varonce40
;
389 val
* var41
/* : String */;
390 char* var42
/* : NativeString */;
391 val
* var43
/* : FlatString */;
392 static val
* varonce44
;
393 val
* var45
/* : String */;
394 char* var46
/* : NativeString */;
395 val
* var47
/* : FlatString */;
396 long var48
/* : Int */;
397 short int var50
/* : Bool */;
400 const char* var_class_name
;
401 long var51
/* : Int */;
402 val
* var52
/* : String */;
403 val
* var53
/* : String */;
404 val
* var54
/* : ToolContext */;
405 val
* var56
/* : ToolContext */;
406 short int var57
/* : Bool */;
407 val
* var58
/* : ToolContext */;
408 val
* var60
/* : ToolContext */;
409 val
* var61
/* : OptionBool */;
410 val
* var63
/* : OptionBool */;
411 val
* var64
/* : nullable Object */;
412 val
* var66
/* : nullable Object */;
413 short int var67
/* : Bool */;
414 val
* var68
/* : ToolContext */;
415 val
* var70
/* : ToolContext */;
416 static val
* varonce71
;
417 val
* var72
/* : String */;
418 char* var73
/* : NativeString */;
419 val
* var74
/* : FlatString */;
420 val
* var75
/* : Sys */;
421 val
* var77
/* : Array[nullable Object] */;
424 { /* Inline time#Object#get_time (self) on <self:ModelBuilder> */
425 var3
= kernel_Any_Any_get_time_0(self
);
433 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (self) on <self:ModelBuilder> */
434 var6
= self
->attrs
[COLOR_nit__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <self:ModelBuilder> */
435 if (unlikely(var6
== NULL
)) {
436 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
437 PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base
, 47);
444 if (likely(varonce
!=NULL
)) {
447 var8
= "*** PARSE ***";
448 var9
= standard___standard__NativeString___to_s_with_length(var8
, 13l);
453 nit___nit__ToolContext___info(var4
, var7
, 1l); /* Direct call toolcontext#ToolContext#info on <var4:ToolContext>*/
455 var10
= NEW_standard__ArraySet(&type_standard__ArraySet__nit__MModule
);
457 standard___standard__ArraySet___standard__kernel__Object__init(var10
); /* Direct call array#ArraySet#init on <var10:ArraySet[MModule]>*/
459 var_mmodules
= var10
;
462 var11
= ((val
*(*)(val
* self
))((((long)var_
&3)?class_info
[((long)var_
&3)]:var_
->class)->vft
[COLOR_standard__abstract_collection__Collection__iterator
]))(var_
); /* iterator on <var_:Sequence[String]>*/
467 var13
= ((short int(*)(val
* self
))((((long)var_12
&3)?class_info
[((long)var_12
&3)]:var_12
->class)->vft
[COLOR_standard__abstract_collection__Iterator__is_ok
]))(var_12
); /* is_ok on <var_12:IndexedIterator[String]>*/
471 var14
= ((val
*(*)(val
* self
))((((long)var_12
&3)?class_info
[((long)var_12
&3)]:var_12
->class)->vft
[COLOR_standard__abstract_collection__Iterator__item
]))(var_12
); /* item on <var_12:IndexedIterator[String]>*/
475 var15
= nit__loader___ModelBuilder___load_module(self
, var_a
);
478 if (var_nmodule
== NULL
) {
479 var16
= 1; /* is null */
481 var16
= 0; /* arg is null but recv is not */
484 { /* Inline kernel#Object#== (var_nmodule,((val*)NULL)) on <var_nmodule:nullable AModule> */
485 var_other
= ((val
*)NULL
);
487 { /* Inline kernel#Object#is_same_instance (var_nmodule,var_other) on <var_nmodule:nullable AModule(AModule)> */
488 var21
= var_nmodule
== var_other
;
505 nit__loader___ModelBuilder___build_module_importation(self
, var_nmodule
); /* Direct call loader#ModelBuilder#build_module_importation on <self:ModelBuilder>*/
508 { /* Inline loader#AModule#mmodule (var_nmodule) on <var_nmodule:nullable AModule(AModule)> */
509 var24
= var_nmodule
->attrs
[COLOR_nit__loader__AModule___mmodule
].val
; /* _mmodule on <var_nmodule:nullable AModule(AModule)> */
515 if (var_mmodule
== NULL
) {
516 var25
= 1; /* is null */
518 var25
= 0; /* arg is null but recv is not */
521 { /* Inline kernel#Object#== (var_mmodule,((val*)NULL)) on <var_mmodule:nullable MModule> */
522 var_other
= ((val
*)NULL
);
524 { /* Inline kernel#Object#is_same_instance (var_mmodule,var_other) on <var_mmodule:nullable MModule(MModule)> */
525 var30
= var_mmodule
== var_other
;
542 standard___standard__ArraySet___standard__abstract_collection__SimpleCollection__add(var_mmodules
, var_mmodule
); /* Direct call array#ArraySet#add on <var_mmodules:ArraySet[MModule]>*/
544 BREAK_label
: (void)0;
546 ((void(*)(val
* self
))((((long)var_12
&3)?class_info
[((long)var_12
&3)]:var_12
->class)->vft
[COLOR_standard__abstract_collection__Iterator__next
]))(var_12
); /* next on <var_12:IndexedIterator[String]>*/
552 BREAK_label31
: (void)0;
554 ((void(*)(val
* self
))((((long)var_12
&3)?class_info
[((long)var_12
&3)]:var_12
->class)->vft
[COLOR_standard__abstract_collection__Iterator__finish
]))(var_12
); /* finish on <var_12:IndexedIterator[String]>*/
557 { /* Inline time#Object#get_time (self) on <self:ModelBuilder> */
558 var34
= kernel_Any_Any_get_time_0(self
);
566 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (self) on <self:ModelBuilder> */
567 var37
= self
->attrs
[COLOR_nit__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <self:ModelBuilder> */
568 if (unlikely(var37
== NULL
)) {
569 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
570 PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base
, 47);
577 if (unlikely(varonce38
==NULL
)) {
578 var39
= NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String
);
579 if (likely(varonce40
!=NULL
)) {
582 var42
= "*** END PARSE: ";
583 var43
= standard___standard__NativeString___to_s_with_length(var42
, 15l);
587 ((struct instance_standard__NativeArray
*)var39
)->values
[0]=var41
;
588 if (likely(varonce44
!=NULL
)) {
592 var47
= standard___standard__NativeString___to_s_with_length(var46
, 4l);
596 ((struct instance_standard__NativeArray
*)var39
)->values
[2]=var45
;
602 { /* Inline kernel#Int#- (var_time1,var_time0) on <var_time1:Int> */
603 /* Covariant cast for argument 0 (i) <var_time0:Int> isa OTHER */
604 /* <var_time0:Int> isa OTHER */
605 var50
= 1; /* easy <var_time0:Int> isa OTHER*/
606 if (unlikely(!var50
)) {
607 var_class_name
= type_standard__Int
.name
;
608 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
609 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 540);
612 var51
= var_time1
- var_time0
;
618 var52
= standard__string___Int___Object__to_s(var48
);
619 ((struct instance_standard__NativeArray
*)var39
)->values
[1]=var52
;
621 var53
= ((val
*(*)(val
* self
))(var39
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var39
); /* native_to_s on <var39:NativeArray[String]>*/
625 nit___nit__ToolContext___info(var35
, var53
, 2l); /* Direct call toolcontext#ToolContext#info on <var35:ToolContext>*/
628 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (self) on <self:ModelBuilder> */
629 var56
= self
->attrs
[COLOR_nit__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <self:ModelBuilder> */
630 if (unlikely(var56
== NULL
)) {
631 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
632 PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base
, 47);
640 var57
= nit___nit__ToolContext___check_errors(var54
);
643 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (self) on <self:ModelBuilder> */
644 var60
= self
->attrs
[COLOR_nit__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <self:ModelBuilder> */
645 if (unlikely(var60
== NULL
)) {
646 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
647 PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base
, 47);
655 { /* Inline loader#ToolContext#opt_only_parse (var58) on <var58:ToolContext> */
656 var63
= var58
->attrs
[COLOR_nit__loader__ToolContext___opt_only_parse
].val
; /* _opt_only_parse on <var58:ToolContext> */
657 if (unlikely(var63
== NULL
)) {
658 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_only_parse");
659 PRINT_ERROR(" (%s:%d)\n", FILE_nit__loader
, 29);
667 { /* Inline opts#Option#value (var61) on <var61:OptionBool> */
668 var66
= var61
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var61:OptionBool> */
673 var67
= (short int)((long)(var64
)>>2);
676 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (self) on <self:ModelBuilder> */
677 var70
= self
->attrs
[COLOR_nit__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <self:ModelBuilder> */
678 if (unlikely(var70
== NULL
)) {
679 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
680 PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base
, 47);
687 if (likely(varonce71
!=NULL
)) {
690 var73
= "*** ONLY PARSE...";
691 var74
= standard___standard__NativeString___to_s_with_length(var73
, 17l);
696 nit___nit__ToolContext___info(var68
, var72
, 1l); /* Direct call toolcontext#ToolContext#info on <var68:ToolContext>*/
700 { /* Inline kernel#Sys#exit (var75,0l) on <var75:Sys> */
708 var77
= standard__array___Collection___to_a(var_mmodules
);
715 /* method loader#ModelBuilder#paths for (self: ModelBuilder): Array[String] */
716 val
* nit__loader___ModelBuilder___paths(val
* self
) {
717 val
* var
/* : Array[String] */;
718 val
* var1
/* : Array[String] */;
719 var1
= self
->attrs
[COLOR_nit__loader__ModelBuilder___paths
].val
; /* _paths on <self:ModelBuilder> */
720 if (unlikely(var1
== NULL
)) {
721 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _paths");
722 PRINT_ERROR(" (%s:%d)\n", FILE_nit__loader
, 192);
729 /* method loader#ModelBuilder#search_mmodule_by_name for (self: ModelBuilder, nullable ANode, nullable MGroup, String): nullable ModulePath */
730 val
* nit__loader___ModelBuilder___search_mmodule_by_name(val
* self
, val
* p0
, val
* p1
, val
* p2
) {
731 val
* var
/* : nullable ModulePath */;
732 val
* var_anode
/* var anode: nullable ANode */;
733 val
* var_mgroup
/* var mgroup: nullable MGroup */;
734 val
* var_name
/* var name: String */;
735 val
* var_c
/* var c: nullable MGroup */;
736 short int var1
/* : Bool */;
737 short int var2
/* : Bool */;
738 val
* var_other
/* var other: nullable Object */;
739 short int var4
/* : Bool */;
740 short int var5
/* : Bool */;
741 val
* var6
/* : nullable String */;
742 val
* var8
/* : nullable String */;
743 val
* var_dirname
/* var dirname: nullable String */;
744 short int var9
/* : Bool */;
745 short int var10
/* : Bool */;
747 val
* var11
/* : String */;
748 char* var12
/* : NativeString */;
749 val
* var13
/* : FlatString */;
750 short int var14
/* : Bool */;
751 static val
* varonce15
;
752 val
* var16
/* : String */;
753 char* var17
/* : NativeString */;
754 val
* var18
/* : FlatString */;
755 val
* var19
/* : String */;
756 val
* var20
/* : String */;
757 static val
* varonce21
;
758 val
* var22
/* : String */;
759 char* var23
/* : NativeString */;
760 val
* var24
/* : FlatString */;
761 val
* var25
/* : String */;
762 val
* var_try_file
/* var try_file: String */;
763 short int var26
/* : Bool */;
764 val
* var27
/* : String */;
765 val
* var28
/* : nullable ModulePath */;
766 val
* var_res
/* var res: nullable ModulePath */;
767 short int var29
/* : Bool */;
768 short int var30
/* : Bool */;
769 short int var32
/* : Bool */;
770 short int var33
/* : Bool */;
771 static val
* varonce34
;
772 val
* var35
/* : String */;
773 char* var36
/* : NativeString */;
774 val
* var37
/* : FlatString */;
775 val
* var38
/* : String */;
776 val
* var39
/* : String */;
777 static val
* varonce40
;
778 val
* var41
/* : String */;
779 char* var42
/* : NativeString */;
780 val
* var43
/* : FlatString */;
781 val
* var44
/* : String */;
782 val
* var45
/* : String */;
783 static val
* varonce46
;
784 val
* var47
/* : String */;
785 char* var48
/* : NativeString */;
786 val
* var49
/* : FlatString */;
787 val
* var50
/* : String */;
788 short int var51
/* : Bool */;
789 val
* var52
/* : String */;
790 val
* var53
/* : nullable ModulePath */;
791 val
* var_res54
/* var res: nullable ModulePath */;
792 short int var55
/* : Bool */;
793 short int var56
/* : Bool */;
794 short int var58
/* : Bool */;
795 short int var59
/* : Bool */;
796 static val
* varonce60
;
797 val
* var61
/* : String */;
798 char* var62
/* : NativeString */;
799 val
* var63
/* : FlatString */;
800 val
* var64
/* : String */;
801 val
* var65
/* : String */;
802 static val
* varonce66
;
803 val
* var67
/* : String */;
804 char* var68
/* : NativeString */;
805 val
* var69
/* : FlatString */;
806 val
* var70
/* : String */;
807 val
* var71
/* : String */;
808 static val
* varonce72
;
809 val
* var73
/* : String */;
810 char* var74
/* : NativeString */;
811 val
* var75
/* : FlatString */;
812 val
* var76
/* : String */;
813 short int var77
/* : Bool */;
814 val
* var78
/* : String */;
815 val
* var79
/* : nullable ModulePath */;
816 val
* var_res80
/* var res: nullable ModulePath */;
817 short int var81
/* : Bool */;
818 short int var82
/* : Bool */;
819 short int var84
/* : Bool */;
820 short int var85
/* : Bool */;
821 val
* var86
/* : nullable MGroup */;
822 val
* var88
/* : nullable MGroup */;
823 val
* var89
/* : Array[String] */;
824 val
* var91
/* : Array[String] */;
825 val
* var_lookpaths
/* var lookpaths: Array[String] */;
826 short int var92
/* : Bool */;
827 short int var93
/* : Bool */;
828 short int var95
/* : Bool */;
829 short int var96
/* : Bool */;
830 val
* var97
/* : MProject */;
831 val
* var99
/* : MProject */;
832 val
* var100
/* : nullable MGroup */;
833 val
* var102
/* : nullable MGroup */;
834 val
* var103
/* : nullable String */;
835 val
* var105
/* : nullable String */;
836 val
* var_dirname106
/* var dirname: nullable String */;
837 short int var107
/* : Bool */;
838 short int var108
/* : Bool */;
839 short int var110
/* : Bool */;
840 short int var111
/* : Bool */;
841 static val
* varonce112
;
842 val
* var113
/* : String */;
843 char* var114
/* : NativeString */;
844 val
* var115
/* : FlatString */;
845 val
* var116
/* : String */;
846 val
* var117
/* : String */;
847 short int var118
/* : Bool */;
848 short int var119
/* : Bool */;
849 short int var120
/* : Bool */;
850 short int var_
/* var : Bool */;
851 short int var121
/* : Bool */;
852 val
* var122
/* : Array[nullable Object] */;
853 val
* var123
/* : Location */;
854 val
* var124
/* : nullable ModulePath */;
855 val
* var_candidate
/* var candidate: nullable ModulePath */;
856 short int var125
/* : Bool */;
857 short int var126
/* : Bool */;
858 val
* var_other128
/* var other: nullable Object */;
859 short int var129
/* : Bool */;
860 short int var131
/* : Bool */;
861 short int var132
/* : Bool */;
862 short int var133
/* : Bool */;
863 short int var135
/* : Bool */;
864 short int var136
/* : Bool */;
865 val
* var138
/* : NativeArray[String] */;
866 static val
* varonce137
;
867 static val
* varonce139
;
868 val
* var140
/* : String */;
869 char* var141
/* : NativeString */;
870 val
* var142
/* : FlatString */;
871 static val
* varonce143
;
872 val
* var144
/* : String */;
873 char* var145
/* : NativeString */;
874 val
* var146
/* : FlatString */;
875 static val
* varonce147
;
876 val
* var148
/* : String */;
877 char* var149
/* : NativeString */;
878 val
* var150
/* : FlatString */;
879 static val
* varonce151
;
880 val
* var152
/* : String */;
881 char* var153
/* : NativeString */;
882 val
* var154
/* : FlatString */;
883 val
* var155
/* : String */;
884 val
* var157
/* : String */;
885 static val
* varonce158
;
886 val
* var159
/* : String */;
887 char* var160
/* : NativeString */;
888 val
* var161
/* : FlatString */;
889 val
* var162
/* : String */;
890 val
* var163
/* : String */;
891 val
* var165
/* : NativeArray[String] */;
892 static val
* varonce164
;
893 static val
* varonce166
;
894 val
* var167
/* : String */;
895 char* var168
/* : NativeString */;
896 val
* var169
/* : FlatString */;
897 static val
* varonce170
;
898 val
* var171
/* : String */;
899 char* var172
/* : NativeString */;
900 val
* var173
/* : FlatString */;
901 static val
* varonce174
;
902 val
* var175
/* : String */;
903 char* var176
/* : NativeString */;
904 val
* var177
/* : FlatString */;
905 static val
* varonce178
;
906 val
* var179
/* : String */;
907 char* var180
/* : NativeString */;
908 val
* var181
/* : FlatString */;
909 val
* var182
/* : String */;
910 val
* var183
/* : String */;
917 var1
= 0; /* is null */
919 var1
= 1; /* arg is null and recv is not */
922 { /* Inline kernel#Object#!= (var_c,((val*)NULL)) on <var_c:nullable MGroup> */
923 var_other
= ((val
*)NULL
);
925 var4
= ((short int(*)(val
* self
, val
* p0
))(var_c
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_c
, var_other
); /* == on <var_c:nullable MGroup(MGroup)>*/
936 { /* Inline mproject#MGroup#filepath (var_c) on <var_c:nullable MGroup(MGroup)> */
937 var8
= var_c
->attrs
[COLOR_nit__mproject__MGroup___filepath
].val
; /* _filepath on <var_c:nullable MGroup(MGroup)> */
943 if (var_dirname
== NULL
) {
944 var9
= 1; /* is null */
946 var9
= 0; /* arg is null but recv is not */
949 var10
= ((short int(*)(val
* self
, val
* p0
))(var_dirname
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_dirname
, ((val
*)NULL
)); /* == on <var_dirname:nullable String>*/
956 if (likely(varonce
!=NULL
)) {
960 var13
= standard___standard__NativeString___to_s_with_length(var12
, 4l);
965 var14
= standard___standard__Text___has_suffix(var_dirname
, var11
);
971 if (likely(varonce15
!=NULL
)) {
975 var18
= standard___standard__NativeString___to_s_with_length(var17
, 1l);
980 var19
= ((val
*(*)(val
* self
, val
* p0
))(var_dirname
->class->vft
[COLOR_standard__string__String___43d
]))(var_dirname
, var16
); /* + on <var_dirname:nullable String(String)>*/
983 var20
= ((val
*(*)(val
* self
, val
* p0
))(var19
->class->vft
[COLOR_standard__string__String___43d
]))(var19
, var_name
); /* + on <var19:String>*/
985 if (likely(varonce21
!=NULL
)) {
989 var24
= standard___standard__NativeString___to_s_with_length(var23
, 4l);
994 var25
= ((val
*(*)(val
* self
, val
* p0
))(var20
->class->vft
[COLOR_standard__string__String___43d
]))(var20
, var22
); /* + on <var20:String>*/
996 var_try_file
= var25
;
998 var26
= standard__file___String___file_exists(var_try_file
);
1002 var27
= standard__file___String___simplify_path(var_try_file
);
1005 var28
= nit__loader___ModelBuilder___identify_file(self
, var27
);
1008 if (var_res
== NULL
) {
1009 var29
= 0; /* is null */
1011 var29
= 1; /* arg is null and recv is not */
1014 { /* Inline kernel#Object#!= (var_res,((val*)NULL)) on <var_res:nullable ModulePath> */
1015 var_other
= ((val
*)NULL
);
1017 var32
= ((short int(*)(val
* self
, val
* p0
))(var_res
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_res
, var_other
); /* == on <var_res:nullable ModulePath(ModulePath)>*/
1022 RET_LABEL31
:(void)0;
1026 if (unlikely(!var29
)) {
1027 PRINT_ERROR("Runtime error: %s", "Assert failed");
1028 PRINT_ERROR(" (%s:%d)\n", FILE_nit__loader
, 215);
1035 if (likely(varonce34
!=NULL
)) {
1039 var37
= standard___standard__NativeString___to_s_with_length(var36
, 1l);
1044 var38
= ((val
*(*)(val
* self
, val
* p0
))(var_dirname
->class->vft
[COLOR_standard__string__String___43d
]))(var_dirname
, var35
); /* + on <var_dirname:nullable String(String)>*/
1047 var39
= ((val
*(*)(val
* self
, val
* p0
))(var38
->class->vft
[COLOR_standard__string__String___43d
]))(var38
, var_name
); /* + on <var38:String>*/
1049 if (likely(varonce40
!=NULL
)) {
1053 var43
= standard___standard__NativeString___to_s_with_length(var42
, 1l);
1058 var44
= ((val
*(*)(val
* self
, val
* p0
))(var39
->class->vft
[COLOR_standard__string__String___43d
]))(var39
, var41
); /* + on <var39:String>*/
1061 var45
= ((val
*(*)(val
* self
, val
* p0
))(var44
->class->vft
[COLOR_standard__string__String___43d
]))(var44
, var_name
); /* + on <var44:String>*/
1063 if (likely(varonce46
!=NULL
)) {
1067 var49
= standard___standard__NativeString___to_s_with_length(var48
, 4l);
1072 var50
= ((val
*(*)(val
* self
, val
* p0
))(var45
->class->vft
[COLOR_standard__string__String___43d
]))(var45
, var47
); /* + on <var45:String>*/
1074 var_try_file
= var50
;
1076 var51
= standard__file___String___file_exists(var_try_file
);
1080 var52
= standard__file___String___simplify_path(var_try_file
);
1083 var53
= nit__loader___ModelBuilder___identify_file(self
, var52
);
1086 if (var_res54
== NULL
) {
1087 var55
= 0; /* is null */
1089 var55
= 1; /* arg is null and recv is not */
1092 { /* Inline kernel#Object#!= (var_res54,((val*)NULL)) on <var_res54:nullable ModulePath> */
1093 var_other
= ((val
*)NULL
);
1095 var58
= ((short int(*)(val
* self
, val
* p0
))(var_res54
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_res54
, var_other
); /* == on <var_res54:nullable ModulePath(ModulePath)>*/
1100 RET_LABEL57
:(void)0;
1104 if (unlikely(!var55
)) {
1105 PRINT_ERROR("Runtime error: %s", "Assert failed");
1106 PRINT_ERROR(" (%s:%d)\n", FILE_nit__loader
, 223);
1113 if (likely(varonce60
!=NULL
)) {
1117 var63
= standard___standard__NativeString___to_s_with_length(var62
, 1l);
1122 var64
= ((val
*(*)(val
* self
, val
* p0
))(var_dirname
->class->vft
[COLOR_standard__string__String___43d
]))(var_dirname
, var61
); /* + on <var_dirname:nullable String(String)>*/
1125 var65
= ((val
*(*)(val
* self
, val
* p0
))(var64
->class->vft
[COLOR_standard__string__String___43d
]))(var64
, var_name
); /* + on <var64:String>*/
1127 if (likely(varonce66
!=NULL
)) {
1131 var69
= standard___standard__NativeString___to_s_with_length(var68
, 5l);
1136 var70
= ((val
*(*)(val
* self
, val
* p0
))(var65
->class->vft
[COLOR_standard__string__String___43d
]))(var65
, var67
); /* + on <var65:String>*/
1139 var71
= ((val
*(*)(val
* self
, val
* p0
))(var70
->class->vft
[COLOR_standard__string__String___43d
]))(var70
, var_name
); /* + on <var70:String>*/
1141 if (likely(varonce72
!=NULL
)) {
1145 var75
= standard___standard__NativeString___to_s_with_length(var74
, 4l);
1150 var76
= ((val
*(*)(val
* self
, val
* p0
))(var71
->class->vft
[COLOR_standard__string__String___43d
]))(var71
, var73
); /* + on <var71:String>*/
1152 var_try_file
= var76
;
1154 var77
= standard__file___String___file_exists(var_try_file
);
1158 var78
= standard__file___String___simplify_path(var_try_file
);
1161 var79
= nit__loader___ModelBuilder___identify_file(self
, var78
);
1164 if (var_res80
== NULL
) {
1165 var81
= 0; /* is null */
1167 var81
= 1; /* arg is null and recv is not */
1170 { /* Inline kernel#Object#!= (var_res80,((val*)NULL)) on <var_res80:nullable ModulePath> */
1171 var_other
= ((val
*)NULL
);
1173 var84
= ((short int(*)(val
* self
, val
* p0
))(var_res80
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_res80
, var_other
); /* == on <var_res80:nullable ModulePath(ModulePath)>*/
1178 RET_LABEL83
:(void)0;
1182 if (unlikely(!var81
)) {
1183 PRINT_ERROR("Runtime error: %s", "Assert failed");
1184 PRINT_ERROR(" (%s:%d)\n", FILE_nit__loader
, 231);
1192 { /* Inline mproject#MGroup#parent (var_c) on <var_c:nullable MGroup(MGroup)> */
1193 var88
= var_c
->attrs
[COLOR_nit__mproject__MGroup___parent
].val
; /* _parent on <var_c:nullable MGroup(MGroup)> */
1195 RET_LABEL87
:(void)0;
1203 BREAK_label
: (void)0;
1205 { /* Inline loader#ModelBuilder#paths (self) on <self:ModelBuilder> */
1206 var91
= self
->attrs
[COLOR_nit__loader__ModelBuilder___paths
].val
; /* _paths on <self:ModelBuilder> */
1207 if (unlikely(var91
== NULL
)) {
1208 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _paths");
1209 PRINT_ERROR(" (%s:%d)\n", FILE_nit__loader
, 192);
1213 RET_LABEL90
:(void)0;
1216 var_lookpaths
= var89
;
1217 if (var_mgroup
== NULL
) {
1218 var92
= 0; /* is null */
1220 var92
= 1; /* arg is null and recv is not */
1223 { /* Inline kernel#Object#!= (var_mgroup,((val*)NULL)) on <var_mgroup:nullable MGroup> */
1224 var_other
= ((val
*)NULL
);
1226 var95
= ((short int(*)(val
* self
, val
* p0
))(var_mgroup
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_mgroup
, var_other
); /* == on <var_mgroup:nullable MGroup(MGroup)>*/
1231 RET_LABEL94
:(void)0;
1237 { /* Inline mproject#MGroup#mproject (var_mgroup) on <var_mgroup:nullable MGroup(MGroup)> */
1238 var99
= var_mgroup
->attrs
[COLOR_nit__mproject__MGroup___mproject
].val
; /* _mproject on <var_mgroup:nullable MGroup(MGroup)> */
1239 if (unlikely(var99
== NULL
)) {
1240 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproject");
1241 PRINT_ERROR(" (%s:%d)\n", FILE_nit__mproject
, 69);
1245 RET_LABEL98
:(void)0;
1249 { /* Inline mproject#MProject#root (var97) on <var97:MProject> */
1250 var102
= var97
->attrs
[COLOR_nit__mproject__MProject___root
].val
; /* _root on <var97:MProject> */
1252 RET_LABEL101
:(void)0;
1255 if (var100
== NULL
) {
1256 PRINT_ERROR("Runtime error: %s", "Receiver is null");
1257 PRINT_ERROR(" (%s:%d)\n", FILE_nit__loader
, 244);
1260 { /* Inline mproject#MGroup#filepath (var100) on <var100:nullable MGroup> */
1261 if (unlikely(var100
== NULL
)) {
1262 PRINT_ERROR("Runtime error: %s", "Receiver is null");
1263 PRINT_ERROR(" (%s:%d)\n", FILE_nit__mproject
, 93);
1266 var105
= var100
->attrs
[COLOR_nit__mproject__MGroup___filepath
].val
; /* _filepath on <var100:nullable MGroup> */
1268 RET_LABEL104
:(void)0;
1271 var_dirname106
= var103
;
1272 if (var_dirname106
== NULL
) {
1273 var107
= 0; /* is null */
1275 var107
= 1; /* arg is null and recv is not */
1278 { /* Inline kernel#Object#!= (var_dirname106,((val*)NULL)) on <var_dirname106:nullable String> */
1279 var_other
= ((val
*)NULL
);
1281 var110
= ((short int(*)(val
* self
, val
* p0
))(var_dirname106
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_dirname106
, var_other
); /* == on <var_dirname106:nullable String(String)>*/
1286 RET_LABEL109
:(void)0;
1291 if (likely(varonce112
!=NULL
)) {
1292 var113
= varonce112
;
1295 var115
= standard___standard__NativeString___to_s_with_length(var114
, 2l);
1297 varonce112
= var113
;
1300 var116
= standard__file___String___join_path(var_dirname106
, var113
);
1303 var117
= standard__file___String___simplify_path(var116
);
1305 var_dirname106
= var117
;
1307 var119
= standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__has(var_lookpaths
, var_dirname106
);
1313 var121
= standard__file___String___file_exists(var_dirname106
);
1321 var122
= standard__array___Collection___to_a(var_lookpaths
);
1323 var_lookpaths
= var122
;
1325 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_lookpaths
, var_dirname106
); /* Direct call array#Array#add on <var_lookpaths:Array[String]>*/
1333 if (var_anode
== NULL
) {
1334 PRINT_ERROR("Runtime error: %s", "Receiver is null");
1335 PRINT_ERROR(" (%s:%d)\n", FILE_nit__loader
, 254);
1338 var123
= ((val
*(*)(val
* self
))(var_anode
->class->vft
[COLOR_nit__parser_nodes__ANode__hot_location
]))(var_anode
); /* hot_location on <var_anode:nullable ANode>*/
1341 var124
= nit__loader___ModelBuilder___search_module_in_paths(self
, var123
, var_name
, var_lookpaths
);
1343 var_candidate
= var124
;
1344 if (var_candidate
== NULL
) {
1345 var125
= 1; /* is null */
1347 var125
= 0; /* arg is null but recv is not */
1350 { /* Inline kernel#Object#== (var_candidate,((val*)NULL)) on <var_candidate:nullable ModulePath> */
1351 var_other128
= ((val
*)NULL
);
1353 { /* Inline kernel#Object#is_same_instance (var_candidate,var_other128) on <var_candidate:nullable ModulePath(ModulePath)> */
1354 var131
= var_candidate
== var_other128
;
1357 RET_LABEL130
:(void)0;
1362 RET_LABEL127
:(void)0;
1367 if (var_mgroup
== NULL
) {
1368 var132
= 0; /* is null */
1370 var132
= 1; /* arg is null and recv is not */
1373 { /* Inline kernel#Object#!= (var_mgroup,((val*)NULL)) on <var_mgroup:nullable MGroup> */
1374 var_other
= ((val
*)NULL
);
1376 var135
= ((short int(*)(val
* self
, val
* p0
))(var_mgroup
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_mgroup
, var_other
); /* == on <var_mgroup:nullable MGroup(MGroup)>*/
1381 RET_LABEL134
:(void)0;
1386 if (unlikely(varonce137
==NULL
)) {
1387 var138
= NEW_standard__NativeArray(7l, &type_standard__NativeArray__standard__String
);
1388 if (likely(varonce139
!=NULL
)) {
1389 var140
= varonce139
;
1391 var141
= "Error: cannot find module `";
1392 var142
= standard___standard__NativeString___to_s_with_length(var141
, 27l);
1394 varonce139
= var140
;
1396 ((struct instance_standard__NativeArray
*)var138
)->values
[0]=var140
;
1397 if (likely(varonce143
!=NULL
)) {
1398 var144
= varonce143
;
1400 var145
= "` from `";
1401 var146
= standard___standard__NativeString___to_s_with_length(var145
, 8l);
1403 varonce143
= var144
;
1405 ((struct instance_standard__NativeArray
*)var138
)->values
[2]=var144
;
1406 if (likely(varonce147
!=NULL
)) {
1407 var148
= varonce147
;
1409 var149
= "`. Tried: ";
1410 var150
= standard___standard__NativeString___to_s_with_length(var149
, 10l);
1412 varonce147
= var148
;
1414 ((struct instance_standard__NativeArray
*)var138
)->values
[4]=var148
;
1415 if (likely(varonce151
!=NULL
)) {
1416 var152
= varonce151
;
1419 var154
= standard___standard__NativeString___to_s_with_length(var153
, 1l);
1421 varonce151
= var152
;
1423 ((struct instance_standard__NativeArray
*)var138
)->values
[6]=var152
;
1425 var138
= varonce137
;
1428 ((struct instance_standard__NativeArray
*)var138
)->values
[1]=var_name
;
1430 { /* Inline mproject#MGroup#name (var_mgroup) on <var_mgroup:nullable MGroup(MGroup)> */
1431 var157
= var_mgroup
->attrs
[COLOR_nit__mproject__MGroup___name
].val
; /* _name on <var_mgroup:nullable MGroup(MGroup)> */
1432 if (unlikely(var157
== NULL
)) {
1433 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _name");
1434 PRINT_ERROR(" (%s:%d)\n", FILE_nit__mproject
, 65);
1438 RET_LABEL156
:(void)0;
1441 ((struct instance_standard__NativeArray
*)var138
)->values
[3]=var155
;
1442 if (likely(varonce158
!=NULL
)) {
1443 var159
= varonce158
;
1446 var161
= standard___standard__NativeString___to_s_with_length(var160
, 2l);
1448 varonce158
= var159
;
1451 var162
= standard__string___Collection___join(var_lookpaths
, var159
);
1453 ((struct instance_standard__NativeArray
*)var138
)->values
[5]=var162
;
1455 var163
= ((val
*(*)(val
* self
))(var138
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var138
); /* native_to_s on <var138:NativeArray[String]>*/
1457 varonce137
= var138
;
1459 nit___nit__ModelBuilder___error(self
, var_anode
, var163
); /* Direct call modelbuilder_base#ModelBuilder#error on <self:ModelBuilder>*/
1462 if (unlikely(varonce164
==NULL
)) {
1463 var165
= NEW_standard__NativeArray(5l, &type_standard__NativeArray__standard__String
);
1464 if (likely(varonce166
!=NULL
)) {
1465 var167
= varonce166
;
1467 var168
= "Error: cannot find module `";
1468 var169
= standard___standard__NativeString___to_s_with_length(var168
, 27l);
1470 varonce166
= var167
;
1472 ((struct instance_standard__NativeArray
*)var165
)->values
[0]=var167
;
1473 if (likely(varonce170
!=NULL
)) {
1474 var171
= varonce170
;
1476 var172
= "`. Tried: ";
1477 var173
= standard___standard__NativeString___to_s_with_length(var172
, 10l);
1479 varonce170
= var171
;
1481 ((struct instance_standard__NativeArray
*)var165
)->values
[2]=var171
;
1482 if (likely(varonce174
!=NULL
)) {
1483 var175
= varonce174
;
1486 var177
= standard___standard__NativeString___to_s_with_length(var176
, 1l);
1488 varonce174
= var175
;
1490 ((struct instance_standard__NativeArray
*)var165
)->values
[4]=var175
;
1492 var165
= varonce164
;
1495 ((struct instance_standard__NativeArray
*)var165
)->values
[1]=var_name
;
1496 if (likely(varonce178
!=NULL
)) {
1497 var179
= varonce178
;
1500 var181
= standard___standard__NativeString___to_s_with_length(var180
, 2l);
1502 varonce178
= var179
;
1505 var182
= standard__string___Collection___join(var_lookpaths
, var179
);
1507 ((struct instance_standard__NativeArray
*)var165
)->values
[3]=var182
;
1509 var183
= ((val
*(*)(val
* self
))(var165
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var165
); /* native_to_s on <var165:NativeArray[String]>*/
1511 varonce164
= var165
;
1513 nit___nit__ModelBuilder___error(self
, var_anode
, var183
); /* Direct call modelbuilder_base#ModelBuilder#error on <self:ModelBuilder>*/
1520 var
= var_candidate
;
1525 /* method loader#ModelBuilder#get_mmodule_by_name for (self: ModelBuilder, nullable ANode, nullable MGroup, String): nullable MModule */
1526 val
* nit__loader___ModelBuilder___get_mmodule_by_name(val
* self
, val
* p0
, val
* p1
, val
* p2
) {
1527 val
* var
/* : nullable MModule */;
1528 val
* var_anode
/* var anode: nullable ANode */;
1529 val
* var_mgroup
/* var mgroup: nullable MGroup */;
1530 val
* var_name
/* var name: String */;
1531 val
* var1
/* : nullable ModulePath */;
1532 val
* var_path
/* var path: nullable ModulePath */;
1533 short int var2
/* : Bool */;
1534 short int var3
/* : Bool */;
1535 val
* var_other
/* var other: nullable Object */;
1536 short int var5
/* : Bool */;
1537 short int var7
/* : Bool */;
1538 val
* var8
/* : String */;
1539 val
* var10
/* : String */;
1540 val
* var11
/* : nullable AModule */;
1541 val
* var_res
/* var res: nullable AModule */;
1542 short int var12
/* : Bool */;
1543 short int var13
/* : Bool */;
1544 short int var15
/* : Bool */;
1545 short int var17
/* : Bool */;
1546 val
* var18
/* : nullable MModule */;
1547 val
* var20
/* : nullable MModule */;
1552 var1
= nit__loader___ModelBuilder___search_mmodule_by_name(self
, var_anode
, var_mgroup
, var_name
);
1555 if (var_path
== NULL
) {
1556 var2
= 1; /* is null */
1558 var2
= 0; /* arg is null but recv is not */
1561 { /* Inline kernel#Object#== (var_path,((val*)NULL)) on <var_path:nullable ModulePath> */
1562 var_other
= ((val
*)NULL
);
1564 { /* Inline kernel#Object#is_same_instance (var_path,var_other) on <var_path:nullable ModulePath(ModulePath)> */
1565 var7
= var_path
== var_other
;
1583 { /* Inline loader#ModulePath#filepath (var_path) on <var_path:nullable ModulePath(ModulePath)> */
1584 var10
= var_path
->attrs
[COLOR_nit__loader__ModulePath___filepath
].val
; /* _filepath on <var_path:nullable ModulePath(ModulePath)> */
1585 if (unlikely(var10
== NULL
)) {
1586 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _filepath");
1587 PRINT_ERROR(" (%s:%d)\n", FILE_nit__loader
, 786);
1595 var11
= nit__loader___ModelBuilder___load_module(self
, var8
);
1598 if (var_res
== NULL
) {
1599 var12
= 1; /* is null */
1601 var12
= 0; /* arg is null but recv is not */
1604 { /* Inline kernel#Object#== (var_res,((val*)NULL)) on <var_res:nullable AModule> */
1605 var_other
= ((val
*)NULL
);
1607 { /* Inline kernel#Object#is_same_instance (var_res,var_other) on <var_res:nullable AModule(AModule)> */
1608 var17
= var_res
== var_other
;
1611 RET_LABEL16
:(void)0;
1616 RET_LABEL14
:(void)0;
1626 nit__loader___ModelBuilder___build_module_importation(self
, var_res
); /* Direct call loader#ModelBuilder#build_module_importation on <self:ModelBuilder>*/
1629 { /* Inline loader#AModule#mmodule (var_res) on <var_res:nullable AModule(AModule)> */
1630 var20
= var_res
->attrs
[COLOR_nit__loader__AModule___mmodule
].val
; /* _mmodule on <var_res:nullable AModule(AModule)> */
1632 RET_LABEL19
:(void)0;
1640 /* method loader#ModelBuilder#search_module_in_paths for (self: ModelBuilder, nullable Location, String, Collection[String]): nullable ModulePath */
1641 val
* nit__loader___ModelBuilder___search_module_in_paths(val
* self
, val
* p0
, val
* p1
, val
* p2
) {
1642 val
* var
/* : nullable ModulePath */;
1643 val
* var_location
/* var location: nullable Location */;
1644 val
* var_name
/* var name: String */;
1645 val
* var_lookpaths
/* var lookpaths: Collection[String] */;
1646 val
* var_candidate
/* var candidate: nullable String */;
1647 val
* var_
/* var : Collection[String] */;
1648 val
* var1
/* : Iterator[nullable Object] */;
1649 val
* var_2
/* var : Iterator[String] */;
1650 short int var3
/* : Bool */;
1651 val
* var4
/* : nullable Object */;
1652 val
* var_dirname
/* var dirname: String */;
1653 static val
* varonce
;
1654 val
* var5
/* : String */;
1655 char* var6
/* : NativeString */;
1656 val
* var7
/* : FlatString */;
1657 val
* var8
/* : String */;
1658 val
* var9
/* : String */;
1659 static val
* varonce10
;
1660 val
* var11
/* : String */;
1661 char* var12
/* : NativeString */;
1662 val
* var13
/* : FlatString */;
1663 val
* var14
/* : String */;
1664 val
* var15
/* : String */;
1665 val
* var_try_file
/* var try_file: String */;
1666 short int var16
/* : Bool */;
1667 short int var17
/* : Bool */;
1668 short int var18
/* : Bool */;
1669 short int var19
/* : Bool */;
1670 val
* var_other
/* var other: nullable Object */;
1671 short int var21
/* : Bool */;
1672 short int var22
/* : Bool */;
1673 val
* var23
/* : String */;
1674 val
* var_abs_candidate
/* var abs_candidate: String */;
1675 val
* var24
/* : String */;
1676 val
* var_abs_try_file
/* var abs_try_file: String */;
1677 short int var25
/* : Bool */;
1678 short int var27
/* : Bool */;
1679 short int var28
/* : Bool */;
1680 val
* var29
/* : ToolContext */;
1681 val
* var31
/* : ToolContext */;
1682 val
* var33
/* : NativeArray[String] */;
1683 static val
* varonce32
;
1684 static val
* varonce34
;
1685 val
* var35
/* : String */;
1686 char* var36
/* : NativeString */;
1687 val
* var37
/* : FlatString */;
1688 static val
* varonce38
;
1689 val
* var39
/* : String */;
1690 char* var40
/* : NativeString */;
1691 val
* var41
/* : FlatString */;
1692 static val
* varonce42
;
1693 val
* var43
/* : String */;
1694 char* var44
/* : NativeString */;
1695 val
* var45
/* : FlatString */;
1696 static val
* varonce46
;
1697 val
* var47
/* : String */;
1698 char* var48
/* : NativeString */;
1699 val
* var49
/* : FlatString */;
1700 val
* var50
/* : String */;
1701 val
* var51
/* : Message */;
1702 static val
* varonce52
;
1703 val
* var53
/* : String */;
1704 char* var54
/* : NativeString */;
1705 val
* var55
/* : FlatString */;
1706 val
* var56
/* : String */;
1707 val
* var57
/* : String */;
1708 static val
* varonce58
;
1709 val
* var59
/* : String */;
1710 char* var60
/* : NativeString */;
1711 val
* var61
/* : FlatString */;
1712 val
* var62
/* : String */;
1713 val
* var63
/* : String */;
1714 static val
* varonce64
;
1715 val
* var65
/* : String */;
1716 char* var66
/* : NativeString */;
1717 val
* var67
/* : FlatString */;
1718 val
* var68
/* : String */;
1719 val
* var69
/* : String */;
1720 short int var70
/* : Bool */;
1721 short int var71
/* : Bool */;
1722 short int var72
/* : Bool */;
1723 short int var73
/* : Bool */;
1724 short int var75
/* : Bool */;
1725 short int var76
/* : Bool */;
1726 val
* var77
/* : String */;
1727 val
* var_abs_candidate78
/* var abs_candidate: String */;
1728 val
* var79
/* : String */;
1729 val
* var_abs_try_file80
/* var abs_try_file: String */;
1730 short int var81
/* : Bool */;
1731 short int var83
/* : Bool */;
1732 short int var84
/* : Bool */;
1733 val
* var85
/* : ToolContext */;
1734 val
* var87
/* : ToolContext */;
1735 val
* var89
/* : NativeArray[String] */;
1736 static val
* varonce88
;
1737 static val
* varonce90
;
1738 val
* var91
/* : String */;
1739 char* var92
/* : NativeString */;
1740 val
* var93
/* : FlatString */;
1741 static val
* varonce94
;
1742 val
* var95
/* : String */;
1743 char* var96
/* : NativeString */;
1744 val
* var97
/* : FlatString */;
1745 static val
* varonce98
;
1746 val
* var99
/* : String */;
1747 char* var100
/* : NativeString */;
1748 val
* var101
/* : FlatString */;
1749 static val
* varonce102
;
1750 val
* var103
/* : String */;
1751 char* var104
/* : NativeString */;
1752 val
* var105
/* : FlatString */;
1753 val
* var106
/* : String */;
1754 val
* var107
/* : Message */;
1755 static val
* varonce108
;
1756 val
* var109
/* : String */;
1757 char* var110
/* : NativeString */;
1758 val
* var111
/* : FlatString */;
1759 val
* var112
/* : String */;
1760 val
* var113
/* : String */;
1761 static val
* varonce114
;
1762 val
* var115
/* : String */;
1763 char* var116
/* : NativeString */;
1764 val
* var117
/* : FlatString */;
1765 val
* var118
/* : String */;
1766 val
* var119
/* : String */;
1767 static val
* varonce120
;
1768 val
* var121
/* : String */;
1769 char* var122
/* : NativeString */;
1770 val
* var123
/* : FlatString */;
1771 val
* var124
/* : String */;
1772 val
* var125
/* : String */;
1773 short int var126
/* : Bool */;
1774 short int var127
/* : Bool */;
1775 short int var128
/* : Bool */;
1776 short int var129
/* : Bool */;
1777 short int var131
/* : Bool */;
1778 short int var132
/* : Bool */;
1779 val
* var133
/* : String */;
1780 val
* var_abs_candidate134
/* var abs_candidate: String */;
1781 val
* var135
/* : String */;
1782 val
* var_abs_try_file136
/* var abs_try_file: String */;
1783 short int var137
/* : Bool */;
1784 short int var139
/* : Bool */;
1785 short int var140
/* : Bool */;
1786 val
* var141
/* : ToolContext */;
1787 val
* var143
/* : ToolContext */;
1788 val
* var145
/* : NativeArray[String] */;
1789 static val
* varonce144
;
1790 static val
* varonce146
;
1791 val
* var147
/* : String */;
1792 char* var148
/* : NativeString */;
1793 val
* var149
/* : FlatString */;
1794 static val
* varonce150
;
1795 val
* var151
/* : String */;
1796 char* var152
/* : NativeString */;
1797 val
* var153
/* : FlatString */;
1798 static val
* varonce154
;
1799 val
* var155
/* : String */;
1800 char* var156
/* : NativeString */;
1801 val
* var157
/* : FlatString */;
1802 static val
* varonce158
;
1803 val
* var159
/* : String */;
1804 char* var160
/* : NativeString */;
1805 val
* var161
/* : FlatString */;
1806 val
* var162
/* : String */;
1807 val
* var163
/* : Message */;
1808 short int var164
/* : Bool */;
1809 short int var165
/* : Bool */;
1810 val
* var166
/* : nullable ModulePath */;
1814 var_candidate
= ((val
*)NULL
);
1815 var_
= var_lookpaths
;
1817 var1
= ((val
*(*)(val
* self
))((((long)var_
&3)?class_info
[((long)var_
&3)]:var_
->class)->vft
[COLOR_standard__abstract_collection__Collection__iterator
]))(var_
); /* iterator on <var_:Collection[String]>*/
1822 var3
= ((short int(*)(val
* self
))((((long)var_2
&3)?class_info
[((long)var_2
&3)]:var_2
->class)->vft
[COLOR_standard__abstract_collection__Iterator__is_ok
]))(var_2
); /* is_ok on <var_2:Iterator[String]>*/
1826 var4
= ((val
*(*)(val
* self
))((((long)var_2
&3)?class_info
[((long)var_2
&3)]:var_2
->class)->vft
[COLOR_standard__abstract_collection__Iterator__item
]))(var_2
); /* item on <var_2:Iterator[String]>*/
1829 if (likely(varonce
!=NULL
)) {
1833 var7
= standard___standard__NativeString___to_s_with_length(var6
, 1l);
1838 var8
= ((val
*(*)(val
* self
, val
* p0
))(var_dirname
->class->vft
[COLOR_standard__string__String___43d
]))(var_dirname
, var5
); /* + on <var_dirname:String>*/
1841 var9
= ((val
*(*)(val
* self
, val
* p0
))(var8
->class->vft
[COLOR_standard__string__String___43d
]))(var8
, var_name
); /* + on <var8:String>*/
1843 if (likely(varonce10
!=NULL
)) {
1847 var13
= standard___standard__NativeString___to_s_with_length(var12
, 4l);
1852 var14
= ((val
*(*)(val
* self
, val
* p0
))(var9
->class->vft
[COLOR_standard__string__String___43d
]))(var9
, var11
); /* + on <var9:String>*/
1855 var15
= standard__file___String___simplify_path(var14
);
1857 var_try_file
= var15
;
1859 var16
= standard__file___String___file_exists(var_try_file
);
1862 if (var_candidate
== NULL
) {
1863 var17
= 1; /* is null */
1865 var17
= 0; /* arg is null but recv is not */
1868 var18
= ((short int(*)(val
* self
, val
* p0
))(var_candidate
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_candidate
, ((val
*)NULL
)); /* == on <var_candidate:nullable String>*/
1872 var_candidate
= var_try_file
;
1875 { /* Inline kernel#Object#!= (var_candidate,var_try_file) on <var_candidate:nullable String(String)> */
1876 var_other
= var_try_file
;
1878 var21
= ((short int(*)(val
* self
, val
* p0
))(var_candidate
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_candidate
, var_other
); /* == on <var_candidate:nullable String(String)>*/
1883 RET_LABEL20
:(void)0;
1888 var23
= nit__loader___ModelBuilder___module_absolute_path(self
, var_candidate
);
1890 var_abs_candidate
= var23
;
1892 var24
= nit__loader___ModelBuilder___module_absolute_path(self
, var_try_file
);
1894 var_abs_try_file
= var24
;
1896 { /* Inline kernel#Object#!= (var_abs_candidate,var_abs_try_file) on <var_abs_candidate:String> */
1897 var_other
= var_abs_try_file
;
1899 var27
= ((short int(*)(val
* self
, val
* p0
))(var_abs_candidate
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_abs_candidate
, var_other
); /* == on <var_abs_candidate:String>*/
1904 RET_LABEL26
:(void)0;
1909 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (self) on <self:ModelBuilder> */
1910 var31
= self
->attrs
[COLOR_nit__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <self:ModelBuilder> */
1911 if (unlikely(var31
== NULL
)) {
1912 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
1913 PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base
, 47);
1917 RET_LABEL30
:(void)0;
1920 if (unlikely(varonce32
==NULL
)) {
1921 var33
= NEW_standard__NativeArray(7l, &type_standard__NativeArray__standard__String
);
1922 if (likely(varonce34
!=NULL
)) {
1925 var36
= "Error: conflicting module file for `";
1926 var37
= standard___standard__NativeString___to_s_with_length(var36
, 36l);
1930 ((struct instance_standard__NativeArray
*)var33
)->values
[0]=var35
;
1931 if (likely(varonce38
!=NULL
)) {
1935 var41
= standard___standard__NativeString___to_s_with_length(var40
, 4l);
1939 ((struct instance_standard__NativeArray
*)var33
)->values
[2]=var39
;
1940 if (likely(varonce42
!=NULL
)) {
1944 var45
= standard___standard__NativeString___to_s_with_length(var44
, 3l);
1948 ((struct instance_standard__NativeArray
*)var33
)->values
[4]=var43
;
1949 if (likely(varonce46
!=NULL
)) {
1953 var49
= standard___standard__NativeString___to_s_with_length(var48
, 1l);
1957 ((struct instance_standard__NativeArray
*)var33
)->values
[6]=var47
;
1962 ((struct instance_standard__NativeArray
*)var33
)->values
[1]=var_name
;
1963 ((struct instance_standard__NativeArray
*)var33
)->values
[3]=var_candidate
;
1964 ((struct instance_standard__NativeArray
*)var33
)->values
[5]=var_try_file
;
1966 var50
= ((val
*(*)(val
* self
))(var33
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var33
); /* native_to_s on <var33:NativeArray[String]>*/
1970 var51
= nit___nit__ToolContext___error(var29
, var_location
, var50
);
1979 if (likely(varonce52
!=NULL
)) {
1983 var55
= standard___standard__NativeString___to_s_with_length(var54
, 1l);
1988 var56
= ((val
*(*)(val
* self
, val
* p0
))(var_dirname
->class->vft
[COLOR_standard__string__String___43d
]))(var_dirname
, var53
); /* + on <var_dirname:String>*/
1991 var57
= ((val
*(*)(val
* self
, val
* p0
))(var56
->class->vft
[COLOR_standard__string__String___43d
]))(var56
, var_name
); /* + on <var56:String>*/
1993 if (likely(varonce58
!=NULL
)) {
1997 var61
= standard___standard__NativeString___to_s_with_length(var60
, 1l);
2002 var62
= ((val
*(*)(val
* self
, val
* p0
))(var57
->class->vft
[COLOR_standard__string__String___43d
]))(var57
, var59
); /* + on <var57:String>*/
2005 var63
= ((val
*(*)(val
* self
, val
* p0
))(var62
->class->vft
[COLOR_standard__string__String___43d
]))(var62
, var_name
); /* + on <var62:String>*/
2007 if (likely(varonce64
!=NULL
)) {
2011 var67
= standard___standard__NativeString___to_s_with_length(var66
, 4l);
2016 var68
= ((val
*(*)(val
* self
, val
* p0
))(var63
->class->vft
[COLOR_standard__string__String___43d
]))(var63
, var65
); /* + on <var63:String>*/
2019 var69
= standard__file___String___simplify_path(var68
);
2021 var_try_file
= var69
;
2023 var70
= standard__file___String___file_exists(var_try_file
);
2026 if (var_candidate
== NULL
) {
2027 var71
= 1; /* is null */
2029 var71
= 0; /* arg is null but recv is not */
2032 var72
= ((short int(*)(val
* self
, val
* p0
))(var_candidate
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_candidate
, ((val
*)NULL
)); /* == on <var_candidate:nullable String>*/
2036 var_candidate
= var_try_file
;
2039 { /* Inline kernel#Object#!= (var_candidate,var_try_file) on <var_candidate:nullable String(String)> */
2040 var_other
= var_try_file
;
2042 var75
= ((short int(*)(val
* self
, val
* p0
))(var_candidate
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_candidate
, var_other
); /* == on <var_candidate:nullable String(String)>*/
2047 RET_LABEL74
:(void)0;
2052 var77
= nit__loader___ModelBuilder___module_absolute_path(self
, var_candidate
);
2054 var_abs_candidate78
= var77
;
2056 var79
= nit__loader___ModelBuilder___module_absolute_path(self
, var_try_file
);
2058 var_abs_try_file80
= var79
;
2060 { /* Inline kernel#Object#!= (var_abs_candidate78,var_abs_try_file80) on <var_abs_candidate78:String> */
2061 var_other
= var_abs_try_file80
;
2063 var83
= ((short int(*)(val
* self
, val
* p0
))(var_abs_candidate78
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_abs_candidate78
, var_other
); /* == on <var_abs_candidate78:String>*/
2068 RET_LABEL82
:(void)0;
2073 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (self) on <self:ModelBuilder> */
2074 var87
= self
->attrs
[COLOR_nit__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <self:ModelBuilder> */
2075 if (unlikely(var87
== NULL
)) {
2076 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
2077 PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base
, 47);
2081 RET_LABEL86
:(void)0;
2084 if (unlikely(varonce88
==NULL
)) {
2085 var89
= NEW_standard__NativeArray(7l, &type_standard__NativeArray__standard__String
);
2086 if (likely(varonce90
!=NULL
)) {
2089 var92
= "Error: conflicting module file for `";
2090 var93
= standard___standard__NativeString___to_s_with_length(var92
, 36l);
2094 ((struct instance_standard__NativeArray
*)var89
)->values
[0]=var91
;
2095 if (likely(varonce94
!=NULL
)) {
2099 var97
= standard___standard__NativeString___to_s_with_length(var96
, 4l);
2103 ((struct instance_standard__NativeArray
*)var89
)->values
[2]=var95
;
2104 if (likely(varonce98
!=NULL
)) {
2108 var101
= standard___standard__NativeString___to_s_with_length(var100
, 3l);
2112 ((struct instance_standard__NativeArray
*)var89
)->values
[4]=var99
;
2113 if (likely(varonce102
!=NULL
)) {
2114 var103
= varonce102
;
2117 var105
= standard___standard__NativeString___to_s_with_length(var104
, 1l);
2119 varonce102
= var103
;
2121 ((struct instance_standard__NativeArray
*)var89
)->values
[6]=var103
;
2126 ((struct instance_standard__NativeArray
*)var89
)->values
[1]=var_name
;
2127 ((struct instance_standard__NativeArray
*)var89
)->values
[3]=var_candidate
;
2128 ((struct instance_standard__NativeArray
*)var89
)->values
[5]=var_try_file
;
2130 var106
= ((val
*(*)(val
* self
))(var89
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var89
); /* native_to_s on <var89:NativeArray[String]>*/
2134 var107
= nit___nit__ToolContext___error(var85
, var_location
, var106
);
2143 if (likely(varonce108
!=NULL
)) {
2144 var109
= varonce108
;
2147 var111
= standard___standard__NativeString___to_s_with_length(var110
, 1l);
2149 varonce108
= var109
;
2152 var112
= ((val
*(*)(val
* self
, val
* p0
))(var_dirname
->class->vft
[COLOR_standard__string__String___43d
]))(var_dirname
, var109
); /* + on <var_dirname:String>*/
2155 var113
= ((val
*(*)(val
* self
, val
* p0
))(var112
->class->vft
[COLOR_standard__string__String___43d
]))(var112
, var_name
); /* + on <var112:String>*/
2157 if (likely(varonce114
!=NULL
)) {
2158 var115
= varonce114
;
2161 var117
= standard___standard__NativeString___to_s_with_length(var116
, 5l);
2163 varonce114
= var115
;
2166 var118
= ((val
*(*)(val
* self
, val
* p0
))(var113
->class->vft
[COLOR_standard__string__String___43d
]))(var113
, var115
); /* + on <var113:String>*/
2169 var119
= ((val
*(*)(val
* self
, val
* p0
))(var118
->class->vft
[COLOR_standard__string__String___43d
]))(var118
, var_name
); /* + on <var118:String>*/
2171 if (likely(varonce120
!=NULL
)) {
2172 var121
= varonce120
;
2175 var123
= standard___standard__NativeString___to_s_with_length(var122
, 4l);
2177 varonce120
= var121
;
2180 var124
= ((val
*(*)(val
* self
, val
* p0
))(var119
->class->vft
[COLOR_standard__string__String___43d
]))(var119
, var121
); /* + on <var119:String>*/
2183 var125
= standard__file___String___simplify_path(var124
);
2185 var_try_file
= var125
;
2187 var126
= standard__file___String___file_exists(var_try_file
);
2190 if (var_candidate
== NULL
) {
2191 var127
= 1; /* is null */
2193 var127
= 0; /* arg is null but recv is not */
2196 var128
= ((short int(*)(val
* self
, val
* p0
))(var_candidate
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_candidate
, ((val
*)NULL
)); /* == on <var_candidate:nullable String>*/
2200 var_candidate
= var_try_file
;
2203 { /* Inline kernel#Object#!= (var_candidate,var_try_file) on <var_candidate:nullable String(String)> */
2204 var_other
= var_try_file
;
2206 var131
= ((short int(*)(val
* self
, val
* p0
))(var_candidate
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_candidate
, var_other
); /* == on <var_candidate:nullable String(String)>*/
2211 RET_LABEL130
:(void)0;
2216 var133
= nit__loader___ModelBuilder___module_absolute_path(self
, var_candidate
);
2218 var_abs_candidate134
= var133
;
2220 var135
= nit__loader___ModelBuilder___module_absolute_path(self
, var_try_file
);
2222 var_abs_try_file136
= var135
;
2224 { /* Inline kernel#Object#!= (var_abs_candidate134,var_abs_try_file136) on <var_abs_candidate134:String> */
2225 var_other
= var_abs_try_file136
;
2227 var139
= ((short int(*)(val
* self
, val
* p0
))(var_abs_candidate134
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_abs_candidate134
, var_other
); /* == on <var_abs_candidate134:String>*/
2232 RET_LABEL138
:(void)0;
2237 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (self) on <self:ModelBuilder> */
2238 var143
= self
->attrs
[COLOR_nit__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <self:ModelBuilder> */
2239 if (unlikely(var143
== NULL
)) {
2240 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
2241 PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base
, 47);
2245 RET_LABEL142
:(void)0;
2248 if (unlikely(varonce144
==NULL
)) {
2249 var145
= NEW_standard__NativeArray(7l, &type_standard__NativeArray__standard__String
);
2250 if (likely(varonce146
!=NULL
)) {
2251 var147
= varonce146
;
2253 var148
= "Error: conflicting module file for `";
2254 var149
= standard___standard__NativeString___to_s_with_length(var148
, 36l);
2256 varonce146
= var147
;
2258 ((struct instance_standard__NativeArray
*)var145
)->values
[0]=var147
;
2259 if (likely(varonce150
!=NULL
)) {
2260 var151
= varonce150
;
2263 var153
= standard___standard__NativeString___to_s_with_length(var152
, 4l);
2265 varonce150
= var151
;
2267 ((struct instance_standard__NativeArray
*)var145
)->values
[2]=var151
;
2268 if (likely(varonce154
!=NULL
)) {
2269 var155
= varonce154
;
2272 var157
= standard___standard__NativeString___to_s_with_length(var156
, 3l);
2274 varonce154
= var155
;
2276 ((struct instance_standard__NativeArray
*)var145
)->values
[4]=var155
;
2277 if (likely(varonce158
!=NULL
)) {
2278 var159
= varonce158
;
2281 var161
= standard___standard__NativeString___to_s_with_length(var160
, 1l);
2283 varonce158
= var159
;
2285 ((struct instance_standard__NativeArray
*)var145
)->values
[6]=var159
;
2287 var145
= varonce144
;
2290 ((struct instance_standard__NativeArray
*)var145
)->values
[1]=var_name
;
2291 ((struct instance_standard__NativeArray
*)var145
)->values
[3]=var_candidate
;
2292 ((struct instance_standard__NativeArray
*)var145
)->values
[5]=var_try_file
;
2294 var162
= ((val
*(*)(val
* self
))(var145
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var145
); /* native_to_s on <var145:NativeArray[String]>*/
2296 varonce144
= var145
;
2298 var163
= nit___nit__ToolContext___error(var141
, var_location
, var162
);
2308 ((void(*)(val
* self
))((((long)var_2
&3)?class_info
[((long)var_2
&3)]:var_2
->class)->vft
[COLOR_standard__abstract_collection__Iterator__next
]))(var_2
); /* next on <var_2:Iterator[String]>*/
2314 BREAK_label
: (void)0;
2316 ((void(*)(val
* self
))((((long)var_2
&3)?class_info
[((long)var_2
&3)]:var_2
->class)->vft
[COLOR_standard__abstract_collection__Iterator__finish
]))(var_2
); /* finish on <var_2:Iterator[String]>*/
2318 if (var_candidate
== NULL
) {
2319 var164
= 1; /* is null */
2321 var164
= 0; /* arg is null but recv is not */
2324 var165
= ((short int(*)(val
* self
, val
* p0
))(var_candidate
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_candidate
, ((val
*)NULL
)); /* == on <var_candidate:nullable String>*/
2333 var166
= nit__loader___ModelBuilder___identify_file(self
, var_candidate
);
2340 /* method loader#ModelBuilder#identified_files_by_path for (self: ModelBuilder): HashMap[String, nullable ModulePath] */
2341 val
* nit__loader___ModelBuilder___identified_files_by_path(val
* self
) {
2342 val
* var
/* : HashMap[String, nullable ModulePath] */;
2343 val
* var1
/* : HashMap[String, nullable ModulePath] */;
2344 var1
= self
->attrs
[COLOR_nit__loader__ModelBuilder___identified_files_by_path
].val
; /* _identified_files_by_path on <self:ModelBuilder> */
2345 if (unlikely(var1
== NULL
)) {
2346 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _identified_files_by_path");
2347 PRINT_ERROR(" (%s:%d)\n", FILE_nit__loader
, 332);
2354 /* method loader#ModelBuilder#identified_files for (self: ModelBuilder): Array[ModulePath] */
2355 val
* nit__loader___ModelBuilder___identified_files(val
* self
) {
2356 val
* var
/* : Array[ModulePath] */;
2357 val
* var1
/* : Array[ModulePath] */;
2358 var1
= self
->attrs
[COLOR_nit__loader__ModelBuilder___identified_files
].val
; /* _identified_files on <self:ModelBuilder> */
2359 if (unlikely(var1
== NULL
)) {
2360 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _identified_files");
2361 PRINT_ERROR(" (%s:%d)\n", FILE_nit__loader
, 335);
2368 /* method loader#ModelBuilder#identify_file for (self: ModelBuilder, String): nullable ModulePath */
2369 val
* nit__loader___ModelBuilder___identify_file(val
* self
, val
* p0
) {
2370 val
* var
/* : nullable ModulePath */;
2371 val
* var_path
/* var path: String */;
2372 val
* var1
/* : nullable String */;
2373 static val
* varonce
;
2374 val
* var2
/* : String */;
2375 char* var3
/* : NativeString */;
2376 val
* var4
/* : FlatString */;
2377 short int var5
/* : Bool */;
2378 short int var6
/* : Bool */;
2379 val
* var_other
/* var other: nullable Object */;
2380 short int var8
/* : Bool */;
2381 short int var9
/* : Bool */;
2382 val
* var10
/* : String */;
2383 static val
* varonce11
;
2384 val
* var12
/* : String */;
2385 char* var13
/* : NativeString */;
2386 val
* var14
/* : FlatString */;
2387 short int var15
/* : Bool */;
2388 val
* var16
/* : Array[String] */;
2389 val
* var18
/* : Array[String] */;
2390 val
* var19
/* : nullable ModulePath */;
2391 val
* var_res
/* var res: nullable ModulePath */;
2392 short int var20
/* : Bool */;
2393 short int var21
/* : Bool */;
2394 short int var23
/* : Bool */;
2395 short int var24
/* : Bool */;
2396 val
* var_candidate
/* var candidate: nullable Object */;
2397 short int var25
/* : Bool */;
2398 val
* var26
/* : nullable MGroup */;
2399 val
* var_mgroup
/* var mgroup: nullable MGroup */;
2400 short int var27
/* : Bool */;
2401 short int var28
/* : Bool */;
2402 short int var30
/* : Bool */;
2403 short int var31
/* : Bool */;
2404 val
* var32
/* : nullable String */;
2405 val
* var34
/* : nullable String */;
2406 val
* var35
/* : String */;
2407 val
* var37
/* : String */;
2408 static val
* varonce38
;
2409 val
* var39
/* : String */;
2410 char* var40
/* : NativeString */;
2411 val
* var41
/* : FlatString */;
2412 val
* var42
/* : String */;
2413 val
* var43
/* : String */;
2414 val
* var_owner_path
/* var owner_path: String */;
2415 short int var44
/* : Bool */;
2416 short int var45
/* : Bool */;
2417 short int var46
/* : Bool */;
2418 static val
* varonce47
;
2419 val
* var48
/* : String */;
2420 char* var49
/* : NativeString */;
2421 val
* var50
/* : FlatString */;
2422 val
* var51
/* : String */;
2423 val
* var_pn
/* var pn: String */;
2424 val
* var52
/* : String */;
2425 val
* var_rp
/* var rp: String */;
2426 val
* var53
/* : HashMap[String, nullable ModulePath] */;
2427 val
* var55
/* : HashMap[String, nullable ModulePath] */;
2428 short int var56
/* : Bool */;
2429 val
* var57
/* : HashMap[String, nullable ModulePath] */;
2430 val
* var59
/* : HashMap[String, nullable ModulePath] */;
2431 val
* var60
/* : nullable Object */;
2432 static val
* varonce61
;
2433 val
* var62
/* : String */;
2434 char* var63
/* : NativeString */;
2435 val
* var64
/* : FlatString */;
2436 val
* var65
/* : String */;
2437 val
* var66
/* : String */;
2438 val
* var_mgrouppath
/* var mgrouppath: String */;
2439 val
* var67
/* : nullable MGroup */;
2440 val
* var_mgroup68
/* var mgroup: nullable MGroup */;
2441 short int var69
/* : Bool */;
2442 short int var70
/* : Bool */;
2443 val
* var_other72
/* var other: nullable Object */;
2444 short int var73
/* : Bool */;
2445 short int var75
/* : Bool */;
2446 val
* var76
/* : MProject */;
2447 val
* var77
/* : Model */;
2448 val
* var79
/* : Model */;
2449 val
* var_mproject
/* var mproject: MProject */;
2450 val
* var80
/* : MGroup */;
2451 val
* var83
/* : ToolContext */;
2452 val
* var85
/* : ToolContext */;
2453 val
* var87
/* : NativeArray[String] */;
2454 static val
* varonce86
;
2455 static val
* varonce88
;
2456 val
* var89
/* : String */;
2457 char* var90
/* : NativeString */;
2458 val
* var91
/* : FlatString */;
2459 static val
* varonce92
;
2460 val
* var93
/* : String */;
2461 char* var94
/* : NativeString */;
2462 val
* var95
/* : FlatString */;
2463 val
* var96
/* : String */;
2464 val
* var97
/* : ModulePath */;
2465 val
* var_res98
/* var res: ModulePath */;
2466 val
* var99
/* : Array[ModulePath] */;
2467 val
* var101
/* : Array[ModulePath] */;
2468 val
* var102
/* : HashMap[String, nullable ModulePath] */;
2469 val
* var104
/* : HashMap[String, nullable ModulePath] */;
2470 val
* var105
/* : Array[ModulePath] */;
2471 val
* var107
/* : Array[ModulePath] */;
2474 var1
= standard__file___String___file_extension(var_path
);
2476 if (likely(varonce
!=NULL
)) {
2480 var4
= standard___standard__NativeString___to_s_with_length(var3
, 3l);
2485 var5
= 1; /* <var2:String> cannot be null */
2487 { /* Inline kernel#Object#!= (var1,var2) on <var1:nullable String> */
2490 var8
= ((short int(*)(val
* self
, val
* p0
))(var1
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var1
, var_other
); /* == on <var1:nullable String(String)>*/
2501 var10
= standard__file___String___dirname(var_path
);
2503 if (likely(varonce11
!=NULL
)) {
2507 var14
= standard___standard__NativeString___to_s_with_length(var13
, 0l);
2512 var15
= ((short int(*)(val
* self
, val
* p0
))(var10
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var10
, var12
); /* == on <var10:String>*/
2516 { /* Inline loader#ModelBuilder#paths (self) on <self:ModelBuilder> */
2517 var18
= self
->attrs
[COLOR_nit__loader__ModelBuilder___paths
].val
; /* _paths on <self:ModelBuilder> */
2518 if (unlikely(var18
== NULL
)) {
2519 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _paths");
2520 PRINT_ERROR(" (%s:%d)\n", FILE_nit__loader
, 192);
2524 RET_LABEL17
:(void)0;
2528 var19
= nit__loader___ModelBuilder___search_module_in_paths(self
, ((val
*)NULL
), var_path
, var16
);
2531 if (var_res
== NULL
) {
2532 var20
= 0; /* is null */
2534 var20
= 1; /* arg is null and recv is not */
2537 { /* Inline kernel#Object#!= (var_res,((val*)NULL)) on <var_res:nullable ModulePath> */
2538 var_other
= ((val
*)NULL
);
2540 var23
= ((short int(*)(val
* self
, val
* p0
))(var_res
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_res
, var_other
); /* == on <var_res:nullable ModulePath(ModulePath)>*/
2545 RET_LABEL22
:(void)0;
2556 var_candidate
= ((val
*)NULL
);
2558 var25
= standard__file___String___file_exists(var_path
);
2562 var26
= nit__loader___ModelBuilder___get_mgroup(self
, var_path
);
2565 if (var_mgroup
== NULL
) {
2566 var27
= 0; /* is null */
2568 var27
= 1; /* arg is null and recv is not */
2571 { /* Inline kernel#Object#!= (var_mgroup,((val*)NULL)) on <var_mgroup:nullable MGroup> */
2572 var_other
= ((val
*)NULL
);
2574 var30
= ((short int(*)(val
* self
, val
* p0
))(var_mgroup
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_mgroup
, var_other
); /* == on <var_mgroup:nullable MGroup(MGroup)>*/
2579 RET_LABEL29
:(void)0;
2585 { /* Inline mproject#MGroup#filepath (var_mgroup) on <var_mgroup:nullable MGroup(MGroup)> */
2586 var34
= var_mgroup
->attrs
[COLOR_nit__mproject__MGroup___filepath
].val
; /* _filepath on <var_mgroup:nullable MGroup(MGroup)> */
2588 RET_LABEL33
:(void)0;
2592 { /* Inline mproject#MGroup#name (var_mgroup) on <var_mgroup:nullable MGroup(MGroup)> */
2593 var37
= var_mgroup
->attrs
[COLOR_nit__mproject__MGroup___name
].val
; /* _name on <var_mgroup:nullable MGroup(MGroup)> */
2594 if (unlikely(var37
== NULL
)) {
2595 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _name");
2596 PRINT_ERROR(" (%s:%d)\n", FILE_nit__mproject
, 65);
2600 RET_LABEL36
:(void)0;
2603 if (likely(varonce38
!=NULL
)) {
2607 var41
= standard___standard__NativeString___to_s_with_length(var40
, 4l);
2612 var42
= ((val
*(*)(val
* self
, val
* p0
))(var35
->class->vft
[COLOR_standard__string__String___43d
]))(var35
, var39
); /* + on <var35:String>*/
2614 if (var32
== NULL
) {
2615 PRINT_ERROR("Runtime error: %s", "Receiver is null");
2616 PRINT_ERROR(" (%s:%d)\n", FILE_nit__loader
, 358);
2619 var43
= standard__file___String___join_path(var32
, var42
);
2621 var_owner_path
= var43
;
2623 var44
= standard__file___String___file_exists(var_owner_path
);
2626 var_candidate
= var_owner_path
;
2633 if (var_candidate
== NULL
) {
2634 var45
= 1; /* is null */
2636 var45
= 0; /* arg is null but recv is not */
2639 var46
= ((short int(*)(val
* self
, val
* p0
))(var_candidate
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_candidate
, ((val
*)NULL
)); /* == on <var_candidate:nullable Object(nullable String)>*/
2647 var_path
= var_candidate
;
2650 if (likely(varonce47
!=NULL
)) {
2654 var50
= standard___standard__NativeString___to_s_with_length(var49
, 4l);
2659 var51
= standard__file___String___basename(var_path
, var48
);
2663 var52
= nit__loader___ModelBuilder___module_absolute_path(self
, var_path
);
2667 { /* Inline loader#ModelBuilder#identified_files_by_path (self) on <self:ModelBuilder> */
2668 var55
= self
->attrs
[COLOR_nit__loader__ModelBuilder___identified_files_by_path
].val
; /* _identified_files_by_path on <self:ModelBuilder> */
2669 if (unlikely(var55
== NULL
)) {
2670 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _identified_files_by_path");
2671 PRINT_ERROR(" (%s:%d)\n", FILE_nit__loader
, 332);
2675 RET_LABEL54
:(void)0;
2679 var56
= standard___standard__HashMap___standard__abstract_collection__MapRead__has_key(var53
, var_rp
);
2683 { /* Inline loader#ModelBuilder#identified_files_by_path (self) on <self:ModelBuilder> */
2684 var59
= self
->attrs
[COLOR_nit__loader__ModelBuilder___identified_files_by_path
].val
; /* _identified_files_by_path on <self:ModelBuilder> */
2685 if (unlikely(var59
== NULL
)) {
2686 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _identified_files_by_path");
2687 PRINT_ERROR(" (%s:%d)\n", FILE_nit__loader
, 332);
2691 RET_LABEL58
:(void)0;
2695 var60
= standard___standard__HashMap___standard__abstract_collection__MapRead___91d_93d(var57
, var_rp
);
2701 if (likely(varonce61
!=NULL
)) {
2705 var64
= standard___standard__NativeString___to_s_with_length(var63
, 2l);
2710 var65
= standard__file___String___join_path(var_path
, var62
);
2713 var66
= standard__file___String___simplify_path(var65
);
2715 var_mgrouppath
= var66
;
2717 var67
= nit__loader___ModelBuilder___get_mgroup(self
, var_mgrouppath
);
2719 var_mgroup68
= var67
;
2720 if (var_mgroup68
== NULL
) {
2721 var69
= 1; /* is null */
2723 var69
= 0; /* arg is null but recv is not */
2726 { /* Inline kernel#Object#== (var_mgroup68,((val*)NULL)) on <var_mgroup68:nullable MGroup> */
2727 var_other72
= ((val
*)NULL
);
2729 { /* Inline kernel#Object#is_same_instance (var_mgroup68,var_other72) on <var_mgroup68:nullable MGroup(MGroup)> */
2730 var75
= var_mgroup68
== var_other72
;
2733 RET_LABEL74
:(void)0;
2738 RET_LABEL71
:(void)0;
2743 var76
= NEW_nit__MProject(&type_nit__MProject
);
2745 { /* Inline modelbuilder_base#ModelBuilder#model (self) on <self:ModelBuilder> */
2746 var79
= self
->attrs
[COLOR_nit__modelbuilder_base__ModelBuilder___model
].val
; /* _model on <self:ModelBuilder> */
2747 if (unlikely(var79
== NULL
)) {
2748 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _model");
2749 PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base
, 44);
2753 RET_LABEL78
:(void)0;
2757 ((void(*)(val
* self
, val
* p0
))(var76
->class->vft
[COLOR_nit__mproject__MProject__name_61d
]))(var76
, var_pn
); /* name= on <var76:MProject>*/
2760 ((void(*)(val
* self
, val
* p0
))(var76
->class->vft
[COLOR_nit__mproject__MProject__model_61d
]))(var76
, var77
); /* model= on <var76:MProject>*/
2763 ((void(*)(val
* self
))(var76
->class->vft
[COLOR_standard__kernel__Object__init
]))(var76
); /* init on <var76:MProject>*/
2765 var_mproject
= var76
;
2766 var80
= NEW_nit__MGroup(&type_nit__MGroup
);
2768 ((void(*)(val
* self
, val
* p0
))(var80
->class->vft
[COLOR_nit__mproject__MGroup__name_61d
]))(var80
, var_pn
); /* name= on <var80:MGroup>*/
2771 ((void(*)(val
* self
, val
* p0
))(var80
->class->vft
[COLOR_nit__mproject__MGroup__mproject_61d
]))(var80
, var_mproject
); /* mproject= on <var80:MGroup>*/
2774 ((void(*)(val
* self
, val
* p0
))(var80
->class->vft
[COLOR_nit__mproject__MGroup__parent_61d
]))(var80
, ((val
*)NULL
)); /* parent= on <var80:MGroup>*/
2777 ((void(*)(val
* self
))(var80
->class->vft
[COLOR_standard__kernel__Object__init
]))(var80
); /* init on <var80:MGroup>*/
2779 var_mgroup68
= var80
;
2781 { /* Inline mproject#MGroup#filepath= (var_mgroup68,var_path) on <var_mgroup68:nullable MGroup(MGroup)> */
2782 var_mgroup68
->attrs
[COLOR_nit__mproject__MGroup___filepath
].val
= var_path
; /* _filepath on <var_mgroup68:nullable MGroup(MGroup)> */
2783 RET_LABEL81
:(void)0;
2787 { /* Inline mproject#MProject#root= (var_mproject,var_mgroup68) on <var_mproject:MProject> */
2788 var_mproject
->attrs
[COLOR_nit__mproject__MProject___root
].val
= var_mgroup68
; /* _root on <var_mproject:MProject> */
2789 RET_LABEL82
:(void)0;
2793 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (self) on <self:ModelBuilder> */
2794 var85
= self
->attrs
[COLOR_nit__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <self:ModelBuilder> */
2795 if (unlikely(var85
== NULL
)) {
2796 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
2797 PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base
, 47);
2801 RET_LABEL84
:(void)0;
2804 if (unlikely(varonce86
==NULL
)) {
2805 var87
= NEW_standard__NativeArray(4l, &type_standard__NativeArray__standard__String
);
2806 if (likely(varonce88
!=NULL
)) {
2809 var90
= "found project `";
2810 var91
= standard___standard__NativeString___to_s_with_length(var90
, 15l);
2814 ((struct instance_standard__NativeArray
*)var87
)->values
[0]=var89
;
2815 if (likely(varonce92
!=NULL
)) {
2819 var95
= standard___standard__NativeString___to_s_with_length(var94
, 5l);
2823 ((struct instance_standard__NativeArray
*)var87
)->values
[2]=var93
;
2828 ((struct instance_standard__NativeArray
*)var87
)->values
[1]=var_pn
;
2829 ((struct instance_standard__NativeArray
*)var87
)->values
[3]=var_path
;
2831 var96
= ((val
*(*)(val
* self
))(var87
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var87
); /* native_to_s on <var87:NativeArray[String]>*/
2835 nit___nit__ToolContext___info(var83
, var96
, 2l); /* Direct call toolcontext#ToolContext#info on <var83:ToolContext>*/
2839 var97
= NEW_nit__ModulePath(&type_nit__ModulePath
);
2841 ((void(*)(val
* self
, val
* p0
))(var97
->class->vft
[COLOR_nit__loader__ModulePath__name_61d
]))(var97
, var_pn
); /* name= on <var97:ModulePath>*/
2844 ((void(*)(val
* self
, val
* p0
))(var97
->class->vft
[COLOR_nit__loader__ModulePath__filepath_61d
]))(var97
, var_path
); /* filepath= on <var97:ModulePath>*/
2847 ((void(*)(val
* self
, val
* p0
))(var97
->class->vft
[COLOR_nit__loader__ModulePath__mgroup_61d
]))(var97
, var_mgroup68
); /* mgroup= on <var97:ModulePath>*/
2850 ((void(*)(val
* self
))(var97
->class->vft
[COLOR_standard__kernel__Object__init
]))(var97
); /* init on <var97:ModulePath>*/
2854 { /* Inline loader#MGroup#module_paths (var_mgroup68) on <var_mgroup68:nullable MGroup(MGroup)> */
2855 var101
= var_mgroup68
->attrs
[COLOR_nit__loader__MGroup___module_paths
].val
; /* _module_paths on <var_mgroup68:nullable MGroup(MGroup)> */
2856 if (unlikely(var101
== NULL
)) {
2857 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _module_paths");
2858 PRINT_ERROR(" (%s:%d)\n", FILE_nit__loader
, 799);
2862 RET_LABEL100
:(void)0;
2866 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var99
, var_res98
); /* Direct call array#Array#add on <var99:Array[ModulePath]>*/
2869 { /* Inline loader#ModelBuilder#identified_files_by_path (self) on <self:ModelBuilder> */
2870 var104
= self
->attrs
[COLOR_nit__loader__ModelBuilder___identified_files_by_path
].val
; /* _identified_files_by_path on <self:ModelBuilder> */
2871 if (unlikely(var104
== NULL
)) {
2872 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _identified_files_by_path");
2873 PRINT_ERROR(" (%s:%d)\n", FILE_nit__loader
, 332);
2877 RET_LABEL103
:(void)0;
2881 standard___standard__HashMap___standard__abstract_collection__Map___91d_93d_61d(var102
, var_rp
, var_res98
); /* Direct call hash_collection#HashMap#[]= on <var102:HashMap[String, nullable ModulePath]>*/
2884 { /* Inline loader#ModelBuilder#identified_files (self) on <self:ModelBuilder> */
2885 var107
= self
->attrs
[COLOR_nit__loader__ModelBuilder___identified_files
].val
; /* _identified_files on <self:ModelBuilder> */
2886 if (unlikely(var107
== NULL
)) {
2887 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _identified_files");
2888 PRINT_ERROR(" (%s:%d)\n", FILE_nit__loader
, 335);
2892 RET_LABEL106
:(void)0;
2896 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var105
, var_res98
); /* Direct call array#Array#add on <var105:Array[ModulePath]>*/
2903 /* method loader#ModelBuilder#mgroups for (self: ModelBuilder): HashMap[String, nullable MGroup] */
2904 val
* nit__loader___ModelBuilder___mgroups(val
* self
) {
2905 val
* var
/* : HashMap[String, nullable MGroup] */;
2906 val
* var1
/* : HashMap[String, nullable MGroup] */;
2907 var1
= self
->attrs
[COLOR_nit__loader__ModelBuilder___mgroups
].val
; /* _mgroups on <self:ModelBuilder> */
2908 if (unlikely(var1
== NULL
)) {
2909 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mgroups");
2910 PRINT_ERROR(" (%s:%d)\n", FILE_nit__loader
, 395);
2917 /* method loader#ModelBuilder#get_mgroup for (self: ModelBuilder, String): nullable MGroup */
2918 val
* nit__loader___ModelBuilder___get_mgroup(val
* self
, val
* p0
) {
2919 val
* var
/* : nullable MGroup */;
2920 val
* var_dirpath
/* var dirpath: String */;
2921 short int var1
/* : Bool */;
2922 short int var2
/* : Bool */;
2923 val
* var3
/* : Array[String] */;
2924 val
* var5
/* : Array[String] */;
2925 val
* var_
/* var : Array[String] */;
2926 val
* var6
/* : ArrayIterator[nullable Object] */;
2927 val
* var_7
/* var : ArrayIterator[String] */;
2928 short int var8
/* : Bool */;
2929 val
* var9
/* : nullable Object */;
2930 val
* var_p
/* var p: String */;
2931 val
* var10
/* : String */;
2932 val
* var_try
/* var try: String */;
2933 short int var11
/* : Bool */;
2934 val
* var12
/* : String */;
2935 val
* var_rdp
/* var rdp: String */;
2936 val
* var13
/* : HashMap[String, nullable MGroup] */;
2937 val
* var15
/* : HashMap[String, nullable MGroup] */;
2938 short int var16
/* : Bool */;
2939 val
* var17
/* : HashMap[String, nullable MGroup] */;
2940 val
* var19
/* : HashMap[String, nullable MGroup] */;
2941 val
* var20
/* : nullable Object */;
2942 static val
* varonce
;
2943 val
* var21
/* : String */;
2944 char* var22
/* : NativeString */;
2945 val
* var23
/* : FlatString */;
2946 val
* var24
/* : String */;
2947 val
* var_pn
/* var pn: String */;
2948 static val
* varonce25
;
2949 val
* var26
/* : String */;
2950 char* var27
/* : NativeString */;
2951 val
* var28
/* : FlatString */;
2952 val
* var29
/* : String */;
2953 val
* var30
/* : String */;
2954 val
* var31
/* : String */;
2955 val
* var_mp
/* var mp: String */;
2956 val
* var_dirpath2
/* var dirpath2: String */;
2957 short int var32
/* : Bool */;
2958 short int var33
/* : Bool */;
2959 static val
* varonce34
;
2960 val
* var35
/* : String */;
2961 char* var36
/* : NativeString */;
2962 val
* var37
/* : FlatString */;
2963 short int var38
/* : Bool */;
2964 val
* var39
/* : String */;
2965 static val
* varonce40
;
2966 val
* var41
/* : String */;
2967 char* var42
/* : NativeString */;
2968 val
* var43
/* : FlatString */;
2969 val
* var44
/* : String */;
2970 static val
* varonce45
;
2971 val
* var46
/* : String */;
2972 char* var47
/* : NativeString */;
2973 val
* var48
/* : FlatString */;
2974 val
* var49
/* : String */;
2975 short int var50
/* : Bool */;
2976 short int var51
/* : Bool */;
2977 static val
* varonce52
;
2978 val
* var53
/* : String */;
2979 char* var54
/* : NativeString */;
2980 val
* var55
/* : FlatString */;
2981 val
* var56
/* : String */;
2982 val
* var57
/* : String */;
2983 val
* var_parentpath
/* var parentpath: String */;
2984 val
* var58
/* : nullable MGroup */;
2985 val
* var_parent
/* var parent: nullable MGroup */;
2986 short int var59
/* : Bool */;
2987 short int var60
/* : Bool */;
2988 val
* var_other
/* var other: nullable Object */;
2989 short int var62
/* : Bool */;
2990 short int var64
/* : Bool */;
2991 val
* var65
/* : MProject */;
2992 val
* var66
/* : Model */;
2993 val
* var68
/* : Model */;
2994 val
* var_mproject
/* var mproject: MProject */;
2995 val
* var69
/* : MGroup */;
2996 val
* var_mgroup
/* var mgroup: nullable Object */;
2997 val
* var71
/* : ToolContext */;
2998 val
* var73
/* : ToolContext */;
2999 val
* var75
/* : NativeArray[String] */;
3000 static val
* varonce74
;
3001 static val
* varonce76
;
3002 val
* var77
/* : String */;
3003 char* var78
/* : NativeString */;
3004 val
* var79
/* : FlatString */;
3005 static val
* varonce80
;
3006 val
* var81
/* : String */;
3007 char* var82
/* : NativeString */;
3008 val
* var83
/* : FlatString */;
3009 val
* var84
/* : String */;
3010 val
* var85
/* : String */;
3011 val
* var86
/* : MGroup */;
3012 val
* var87
/* : MProject */;
3013 val
* var89
/* : MProject */;
3014 val
* var90
/* : ToolContext */;
3015 val
* var92
/* : ToolContext */;
3016 val
* var94
/* : NativeArray[String] */;
3017 static val
* varonce93
;
3018 static val
* varonce95
;
3019 val
* var96
/* : String */;
3020 char* var97
/* : NativeString */;
3021 val
* var98
/* : FlatString */;
3022 static val
* varonce99
;
3023 val
* var100
/* : String */;
3024 char* var101
/* : NativeString */;
3025 val
* var102
/* : FlatString */;
3026 val
* var103
/* : String */;
3027 val
* var104
/* : String */;
3028 static val
* varonce105
;
3029 val
* var106
/* : String */;
3030 char* var107
/* : NativeString */;
3031 val
* var108
/* : FlatString */;
3032 val
* var109
/* : String */;
3033 val
* var_readme
/* var readme: String */;
3034 short int var110
/* : Bool */;
3035 short int var111
/* : Bool */;
3036 static val
* varonce112
;
3037 val
* var113
/* : String */;
3038 char* var114
/* : NativeString */;
3039 val
* var115
/* : FlatString */;
3040 val
* var116
/* : String */;
3041 short int var117
/* : Bool */;
3042 short int var118
/* : Bool */;
3043 static val
* varonce119
;
3044 val
* var120
/* : String */;
3045 char* var121
/* : NativeString */;
3046 val
* var122
/* : FlatString */;
3047 val
* var123
/* : String */;
3048 short int var124
/* : Bool */;
3049 short int var125
/* : Bool */;
3050 static val
* varonce126
;
3051 val
* var127
/* : String */;
3052 char* var128
/* : NativeString */;
3053 val
* var129
/* : FlatString */;
3054 val
* var130
/* : String */;
3055 short int var131
/* : Bool */;
3056 val
* var132
/* : MDoc */;
3057 val
* var_mdoc
/* var mdoc: MDoc */;
3058 val
* var136
/* : HashMap[String, nullable MGroup] */;
3059 val
* var138
/* : HashMap[String, nullable MGroup] */;
3060 val
* var139
/* : String */;
3061 val
* var140
/* : HashMap[String, nullable MGroup] */;
3062 val
* var142
/* : HashMap[String, nullable MGroup] */;
3063 val
* var143
/* : String */;
3066 var1
= standard__file___String___file_exists(var_dirpath
);
3071 { /* Inline loader#ModelBuilder#paths (self) on <self:ModelBuilder> */
3072 var5
= self
->attrs
[COLOR_nit__loader__ModelBuilder___paths
].val
; /* _paths on <self:ModelBuilder> */
3073 if (unlikely(var5
== NULL
)) {
3074 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _paths");
3075 PRINT_ERROR(" (%s:%d)\n", FILE_nit__loader
, 192);
3084 var6
= standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__iterator(var_
);
3089 var8
= standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__is_ok(var_7
);
3093 var9
= standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__item(var_7
);
3097 var10
= standard__file___String____47d(var_p
, var_dirpath
);
3101 var11
= standard__file___String___file_exists(var_try
);
3104 var_dirpath
= var_try
;
3109 standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__next(var_7
); /* Direct call array#ArrayIterator#next on <var_7:ArrayIterator[String]>*/
3115 BREAK_label
: (void)0;
3117 standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__finish(var_7
); /* Direct call array#ArrayIterator#finish on <var_7:ArrayIterator[String]>*/
3125 var12
= nit__loader___ModelBuilder___module_absolute_path(self
, var_dirpath
);
3129 { /* Inline loader#ModelBuilder#mgroups (self) on <self:ModelBuilder> */
3130 var15
= self
->attrs
[COLOR_nit__loader__ModelBuilder___mgroups
].val
; /* _mgroups on <self:ModelBuilder> */
3131 if (unlikely(var15
== NULL
)) {
3132 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mgroups");
3133 PRINT_ERROR(" (%s:%d)\n", FILE_nit__loader
, 395);
3137 RET_LABEL14
:(void)0;
3141 var16
= standard___standard__HashMap___standard__abstract_collection__MapRead__has_key(var13
, var_rdp
);
3145 { /* Inline loader#ModelBuilder#mgroups (self) on <self:ModelBuilder> */
3146 var19
= self
->attrs
[COLOR_nit__loader__ModelBuilder___mgroups
].val
; /* _mgroups on <self:ModelBuilder> */
3147 if (unlikely(var19
== NULL
)) {
3148 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mgroups");
3149 PRINT_ERROR(" (%s:%d)\n", FILE_nit__loader
, 395);
3153 RET_LABEL18
:(void)0;
3157 var20
= standard___standard__HashMap___standard__abstract_collection__MapRead___91d_93d(var17
, var_rdp
);
3163 if (likely(varonce
!=NULL
)) {
3167 var23
= standard___standard__NativeString___to_s_with_length(var22
, 4l);
3172 var24
= standard__file___String___basename(var_rdp
, var21
);
3175 if (likely(varonce25
!=NULL
)) {
3179 var28
= standard___standard__NativeString___to_s_with_length(var27
, 4l);
3184 var29
= ((val
*(*)(val
* self
, val
* p0
))(var_pn
->class->vft
[COLOR_standard__string__String___43d
]))(var_pn
, var26
); /* + on <var_pn:String>*/
3187 var30
= standard__file___String___join_path(var_dirpath
, var29
);
3190 var31
= standard__file___String___simplify_path(var30
);
3193 var_dirpath2
= var_dirpath
;
3195 var32
= standard__file___String___file_exists(var_mp
);
3199 if (likely(varonce34
!=NULL
)) {
3203 var37
= standard___standard__NativeString___to_s_with_length(var36
, 3l);
3208 var38
= ((short int(*)(val
* self
, val
* p0
))(var_pn
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_pn
, var35
); /* == on <var_pn:String>*/
3212 var39
= standard__file___String___dirname(var_rdp
);
3214 var_dirpath2
= var39
;
3215 if (likely(varonce40
!=NULL
)) {
3219 var43
= standard___standard__NativeString___to_s_with_length(var42
, 0l);
3224 var44
= standard__file___String___basename(var_dirpath2
, var41
);
3228 if (likely(varonce45
!=NULL
)) {
3232 var48
= standard___standard__NativeString___to_s_with_length(var47
, 3l);
3237 var49
= standard__file___String____47d(var_dirpath2
, var46
);
3239 var_dirpath
= var49
;
3241 var50
= standard__file___String___file_exists(var_dirpath
);
3252 if (likely(varonce52
!=NULL
)) {
3256 var55
= standard___standard__NativeString___to_s_with_length(var54
, 2l);
3261 var56
= standard__file___String___join_path(var_dirpath2
, var53
);
3264 var57
= standard__file___String___simplify_path(var56
);
3266 var_parentpath
= var57
;
3268 var58
= nit__loader___ModelBuilder___get_mgroup(self
, var_parentpath
);
3271 if (var_parent
== NULL
) {
3272 var59
= 1; /* is null */
3274 var59
= 0; /* arg is null but recv is not */
3277 { /* Inline kernel#Object#== (var_parent,((val*)NULL)) on <var_parent:nullable MGroup> */
3278 var_other
= ((val
*)NULL
);
3280 { /* Inline kernel#Object#is_same_instance (var_parent,var_other) on <var_parent:nullable MGroup(MGroup)> */
3281 var64
= var_parent
== var_other
;
3284 RET_LABEL63
:(void)0;
3289 RET_LABEL61
:(void)0;
3294 var65
= NEW_nit__MProject(&type_nit__MProject
);
3296 { /* Inline modelbuilder_base#ModelBuilder#model (self) on <self:ModelBuilder> */
3297 var68
= self
->attrs
[COLOR_nit__modelbuilder_base__ModelBuilder___model
].val
; /* _model on <self:ModelBuilder> */
3298 if (unlikely(var68
== NULL
)) {
3299 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _model");
3300 PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base
, 44);
3304 RET_LABEL67
:(void)0;
3308 ((void(*)(val
* self
, val
* p0
))(var65
->class->vft
[COLOR_nit__mproject__MProject__name_61d
]))(var65
, var_pn
); /* name= on <var65:MProject>*/
3311 ((void(*)(val
* self
, val
* p0
))(var65
->class->vft
[COLOR_nit__mproject__MProject__model_61d
]))(var65
, var66
); /* model= on <var65:MProject>*/
3314 ((void(*)(val
* self
))(var65
->class->vft
[COLOR_standard__kernel__Object__init
]))(var65
); /* init on <var65:MProject>*/
3316 var_mproject
= var65
;
3317 var69
= NEW_nit__MGroup(&type_nit__MGroup
);
3319 ((void(*)(val
* self
, val
* p0
))(var69
->class->vft
[COLOR_nit__mproject__MGroup__name_61d
]))(var69
, var_pn
); /* name= on <var69:MGroup>*/
3322 ((void(*)(val
* self
, val
* p0
))(var69
->class->vft
[COLOR_nit__mproject__MGroup__mproject_61d
]))(var69
, var_mproject
); /* mproject= on <var69:MGroup>*/
3325 ((void(*)(val
* self
, val
* p0
))(var69
->class->vft
[COLOR_nit__mproject__MGroup__parent_61d
]))(var69
, ((val
*)NULL
)); /* parent= on <var69:MGroup>*/
3328 ((void(*)(val
* self
))(var69
->class->vft
[COLOR_standard__kernel__Object__init
]))(var69
); /* init on <var69:MGroup>*/
3332 { /* Inline mproject#MProject#root= (var_mproject,var_mgroup) on <var_mproject:MProject> */
3333 var_mproject
->attrs
[COLOR_nit__mproject__MProject___root
].val
= var_mgroup
; /* _root on <var_mproject:MProject> */
3334 RET_LABEL70
:(void)0;
3338 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (self) on <self:ModelBuilder> */
3339 var73
= self
->attrs
[COLOR_nit__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <self:ModelBuilder> */
3340 if (unlikely(var73
== NULL
)) {
3341 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
3342 PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base
, 47);
3346 RET_LABEL72
:(void)0;
3349 if (unlikely(varonce74
==NULL
)) {
3350 var75
= NEW_standard__NativeArray(4l, &type_standard__NativeArray__standard__String
);
3351 if (likely(varonce76
!=NULL
)) {
3354 var78
= "found project `";
3355 var79
= standard___standard__NativeString___to_s_with_length(var78
, 15l);
3359 ((struct instance_standard__NativeArray
*)var75
)->values
[0]=var77
;
3360 if (likely(varonce80
!=NULL
)) {
3364 var83
= standard___standard__NativeString___to_s_with_length(var82
, 5l);
3368 ((struct instance_standard__NativeArray
*)var75
)->values
[2]=var81
;
3374 var84
= ((val
*(*)(val
* self
))(var_mproject
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_mproject
); /* to_s on <var_mproject:MProject>*/
3376 ((struct instance_standard__NativeArray
*)var75
)->values
[1]=var84
;
3377 ((struct instance_standard__NativeArray
*)var75
)->values
[3]=var_dirpath
;
3379 var85
= ((val
*(*)(val
* self
))(var75
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var75
); /* native_to_s on <var75:NativeArray[String]>*/
3383 nit___nit__ToolContext___info(var71
, var85
, 2l); /* Direct call toolcontext#ToolContext#info on <var71:ToolContext>*/
3386 var86
= NEW_nit__MGroup(&type_nit__MGroup
);
3388 { /* Inline mproject#MGroup#mproject (var_parent) on <var_parent:nullable MGroup(MGroup)> */
3389 var89
= var_parent
->attrs
[COLOR_nit__mproject__MGroup___mproject
].val
; /* _mproject on <var_parent:nullable MGroup(MGroup)> */
3390 if (unlikely(var89
== NULL
)) {
3391 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproject");
3392 PRINT_ERROR(" (%s:%d)\n", FILE_nit__mproject
, 69);
3396 RET_LABEL88
:(void)0;
3400 ((void(*)(val
* self
, val
* p0
))(var86
->class->vft
[COLOR_nit__mproject__MGroup__name_61d
]))(var86
, var_pn
); /* name= on <var86:MGroup>*/
3403 ((void(*)(val
* self
, val
* p0
))(var86
->class->vft
[COLOR_nit__mproject__MGroup__mproject_61d
]))(var86
, var87
); /* mproject= on <var86:MGroup>*/
3406 ((void(*)(val
* self
, val
* p0
))(var86
->class->vft
[COLOR_nit__mproject__MGroup__parent_61d
]))(var86
, var_parent
); /* parent= on <var86:MGroup>*/
3409 ((void(*)(val
* self
))(var86
->class->vft
[COLOR_standard__kernel__Object__init
]))(var86
); /* init on <var86:MGroup>*/
3413 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (self) on <self:ModelBuilder> */
3414 var92
= self
->attrs
[COLOR_nit__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <self:ModelBuilder> */
3415 if (unlikely(var92
== NULL
)) {
3416 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
3417 PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base
, 47);
3421 RET_LABEL91
:(void)0;
3424 if (unlikely(varonce93
==NULL
)) {
3425 var94
= NEW_standard__NativeArray(4l, &type_standard__NativeArray__standard__String
);
3426 if (likely(varonce95
!=NULL
)) {
3429 var97
= "found sub group `";
3430 var98
= standard___standard__NativeString___to_s_with_length(var97
, 17l);
3434 ((struct instance_standard__NativeArray
*)var94
)->values
[0]=var96
;
3435 if (likely(varonce99
!=NULL
)) {
3439 var102
= standard___standard__NativeString___to_s_with_length(var101
, 5l);
3443 ((struct instance_standard__NativeArray
*)var94
)->values
[2]=var100
;
3449 var103
= nit___nit__MGroup___nit__model_base__MEntity__full_name(var_mgroup
);
3451 ((struct instance_standard__NativeArray
*)var94
)->values
[1]=var103
;
3452 ((struct instance_standard__NativeArray
*)var94
)->values
[3]=var_dirpath
;
3454 var104
= ((val
*(*)(val
* self
))(var94
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var94
); /* native_to_s on <var94:NativeArray[String]>*/
3458 nit___nit__ToolContext___info(var90
, var104
, 2l); /* Direct call toolcontext#ToolContext#info on <var90:ToolContext>*/
3461 if (likely(varonce105
!=NULL
)) {
3462 var106
= varonce105
;
3464 var107
= "README.md";
3465 var108
= standard___standard__NativeString___to_s_with_length(var107
, 9l);
3467 varonce105
= var106
;
3470 var109
= standard__file___String___join_path(var_dirpath
, var106
);
3472 var_readme
= var109
;
3474 var110
= standard__file___String___file_exists(var_readme
);
3478 if (likely(varonce112
!=NULL
)) {
3479 var113
= varonce112
;
3482 var115
= standard___standard__NativeString___to_s_with_length(var114
, 6l);
3484 varonce112
= var113
;
3487 var116
= standard__file___String___join_path(var_dirpath
, var113
);
3489 var_readme
= var116
;
3493 var117
= standard__file___String___file_exists(var_readme
);
3497 if (likely(varonce119
!=NULL
)) {
3498 var120
= varonce119
;
3500 var121
= "README.md";
3501 var122
= standard___standard__NativeString___to_s_with_length(var121
, 9l);
3503 varonce119
= var120
;
3506 var123
= standard__file___String___join_path(var_dirpath2
, var120
);
3508 var_readme
= var123
;
3512 var124
= standard__file___String___file_exists(var_readme
);
3516 if (likely(varonce126
!=NULL
)) {
3517 var127
= varonce126
;
3520 var129
= standard___standard__NativeString___to_s_with_length(var128
, 6l);
3522 varonce126
= var127
;
3525 var130
= standard__file___String___join_path(var_dirpath2
, var127
);
3527 var_readme
= var130
;
3531 var131
= standard__file___String___file_exists(var_readme
);
3535 var132
= nit__loader___ModelBuilder___load_markdown(self
, var_readme
);
3539 { /* Inline mdoc#MEntity#mdoc= (var_mgroup,var_mdoc) on <var_mgroup:nullable Object(MGroup)> */
3540 var_mgroup
->attrs
[COLOR_nit__mdoc__MEntity___mdoc
].val
= var_mdoc
; /* _mdoc on <var_mgroup:nullable Object(MGroup)> */
3541 RET_LABEL133
:(void)0;
3545 { /* Inline mdoc#MDoc#original_mentity= (var_mdoc,var_mgroup) on <var_mdoc:MDoc> */
3546 var_mdoc
->attrs
[COLOR_nit__mdoc__MDoc___original_mentity
].val
= var_mgroup
; /* _original_mentity on <var_mdoc:MDoc> */
3547 RET_LABEL134
:(void)0;
3553 { /* Inline mproject#MGroup#filepath= (var_mgroup,var_dirpath) on <var_mgroup:nullable Object(MGroup)> */
3554 var_mgroup
->attrs
[COLOR_nit__mproject__MGroup___filepath
].val
= var_dirpath
; /* _filepath on <var_mgroup:nullable Object(MGroup)> */
3555 RET_LABEL135
:(void)0;
3559 { /* Inline loader#ModelBuilder#mgroups (self) on <self:ModelBuilder> */
3560 var138
= self
->attrs
[COLOR_nit__loader__ModelBuilder___mgroups
].val
; /* _mgroups on <self:ModelBuilder> */
3561 if (unlikely(var138
== NULL
)) {
3562 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mgroups");
3563 PRINT_ERROR(" (%s:%d)\n", FILE_nit__loader
, 395);
3567 RET_LABEL137
:(void)0;
3571 var139
= nit__loader___ModelBuilder___module_absolute_path(self
, var_dirpath
);
3574 standard___standard__HashMap___standard__abstract_collection__Map___91d_93d_61d(var136
, var139
, var_mgroup
); /* Direct call hash_collection#HashMap#[]= on <var136:HashMap[String, nullable MGroup]>*/
3577 { /* Inline loader#ModelBuilder#mgroups (self) on <self:ModelBuilder> */
3578 var142
= self
->attrs
[COLOR_nit__loader__ModelBuilder___mgroups
].val
; /* _mgroups on <self:ModelBuilder> */
3579 if (unlikely(var142
== NULL
)) {
3580 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mgroups");
3581 PRINT_ERROR(" (%s:%d)\n", FILE_nit__loader
, 395);
3585 RET_LABEL141
:(void)0;
3589 var143
= nit__loader___ModelBuilder___module_absolute_path(self
, var_dirpath2
);
3592 standard___standard__HashMap___standard__abstract_collection__Map___91d_93d_61d(var140
, var143
, var_mgroup
); /* Direct call hash_collection#HashMap#[]= on <var140:HashMap[String, nullable MGroup]>*/
3599 /* method loader#ModelBuilder#load_markdown for (self: ModelBuilder, String): MDoc */
3600 val
* nit__loader___ModelBuilder___load_markdown(val
* self
, val
* p0
) {
3601 val
* var
/* : MDoc */;
3602 val
* var_filepath
/* var filepath: String */;
3603 val
* var1
/* : MDoc */;
3604 val
* var2
/* : Location */;
3605 val
* var3
/* : SourceFile */;
3606 static val
* varonce
;
3607 val
* var4
/* : String */;
3608 char* var5
/* : NativeString */;
3609 val
* var6
/* : FlatString */;
3610 val
* var_mdoc
/* var mdoc: MDoc */;
3611 val
* var7
/* : FileReader */;
3612 val
* var_s
/* var s: FileReader */;
3613 short int var8
/* : Bool */;
3614 short int var9
/* : Bool */;
3615 val
* var10
/* : Array[String] */;
3616 val
* var12
/* : Array[String] */;
3617 val
* var13
/* : String */;
3619 var1
= NEW_nit__MDoc(&type_nit__MDoc
);
3620 var2
= NEW_nit__Location(&type_nit__Location
);
3621 var3
= NEW_nit__SourceFile(&type_nit__SourceFile
);
3622 if (likely(varonce
!=NULL
)) {
3626 var6
= standard___standard__NativeString___to_s_with_length(var5
, 0l);
3631 nit___nit__SourceFile___from_string(var3
, var_filepath
, var4
); /* Direct call location#SourceFile#from_string on <var3:SourceFile>*/
3634 ((void(*)(val
* self
, val
* p0
))(var2
->class->vft
[COLOR_nit__location__Location__file_61d
]))(var2
, var3
); /* file= on <var2:Location>*/
3637 ((void(*)(val
* self
, long p0
))(var2
->class->vft
[COLOR_nit__location__Location__line_start_61d
]))(var2
, 0l); /* line_start= on <var2:Location>*/
3640 ((void(*)(val
* self
, long p0
))(var2
->class->vft
[COLOR_nit__location__Location__line_end_61d
]))(var2
, 0l); /* line_end= on <var2:Location>*/
3643 ((void(*)(val
* self
, long p0
))(var2
->class->vft
[COLOR_nit__location__Location__column_start_61d
]))(var2
, 0l); /* column_start= on <var2:Location>*/
3646 ((void(*)(val
* self
, long p0
))(var2
->class->vft
[COLOR_nit__location__Location__column_end_61d
]))(var2
, 0l); /* column_end= on <var2:Location>*/
3649 ((void(*)(val
* self
))(var2
->class->vft
[COLOR_standard__kernel__Object__init
]))(var2
); /* init on <var2:Location>*/
3652 ((void(*)(val
* self
, val
* p0
))(var1
->class->vft
[COLOR_nit__mdoc__MDoc__location_61d
]))(var1
, var2
); /* location= on <var1:MDoc>*/
3655 ((void(*)(val
* self
))(var1
->class->vft
[COLOR_standard__kernel__Object__init
]))(var1
); /* init on <var1:MDoc>*/
3658 var7
= NEW_standard__FileReader(&type_standard__FileReader
);
3660 standard___standard__FileReader___open(var7
, var_filepath
); /* Direct call file#FileReader#open on <var7:FileReader>*/
3665 var8
= standard___standard__BufferedReader___Reader__eof(var_s
);
3670 { /* Inline mdoc#MDoc#content (var_mdoc) on <var_mdoc:MDoc> */
3671 var12
= var_mdoc
->attrs
[COLOR_nit__mdoc__MDoc___content
].val
; /* _content on <var_mdoc:MDoc> */
3672 if (unlikely(var12
== NULL
)) {
3673 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _content");
3674 PRINT_ERROR(" (%s:%d)\n", FILE_nit__mdoc
, 23);
3678 RET_LABEL11
:(void)0;
3682 var13
= standard___standard__Reader___read_line(var_s
);
3685 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var10
, var13
); /* Direct call array#Array#add on <var10:Array[String]>*/
3691 BREAK_label
: (void)0;
3697 /* method loader#ModelBuilder#module_absolute_path for (self: ModelBuilder, String): String */
3698 val
* nit__loader___ModelBuilder___module_absolute_path(val
* self
, val
* p0
) {
3699 val
* var
/* : String */;
3700 val
* var_path
/* var path: String */;
3701 val
* var1
/* : Sys */;
3702 val
* var2
/* : String */;
3703 val
* var3
/* : String */;
3704 val
* var4
/* : String */;
3708 var2
= standard__file___Sys___getcwd(var1
);
3711 var3
= standard__file___String___join_path(var2
, var_path
);
3714 var4
= standard__file___String___simplify_path(var3
);
3721 /* method loader#ModelBuilder#load_module_ast for (self: ModelBuilder, String): nullable AModule */
3722 val
* nit__loader___ModelBuilder___load_module_ast(val
* self
, val
* p0
) {
3723 val
* var
/* : nullable AModule */;
3724 val
* var_filename
/* var filename: String */;
3725 val
* var1
/* : nullable String */;
3726 static val
* varonce
;
3727 val
* var2
/* : String */;
3728 char* var3
/* : NativeString */;
3729 val
* var4
/* : FlatString */;
3730 short int var5
/* : Bool */;
3731 short int var6
/* : Bool */;
3732 val
* var_other
/* var other: nullable Object */;
3733 short int var8
/* : Bool */;
3734 short int var9
/* : Bool */;
3735 val
* var10
/* : ToolContext */;
3736 val
* var12
/* : ToolContext */;
3737 val
* var14
/* : NativeArray[String] */;
3738 static val
* varonce13
;
3739 static val
* varonce15
;
3740 val
* var16
/* : String */;
3741 char* var17
/* : NativeString */;
3742 val
* var18
/* : FlatString */;
3743 static val
* varonce19
;
3744 val
* var20
/* : String */;
3745 char* var21
/* : NativeString */;
3746 val
* var22
/* : FlatString */;
3747 val
* var23
/* : String */;
3748 val
* var24
/* : Message */;
3749 short int var25
/* : Bool */;
3750 short int var26
/* : Bool */;
3751 val
* var27
/* : ToolContext */;
3752 val
* var29
/* : ToolContext */;
3753 val
* var31
/* : NativeArray[String] */;
3754 static val
* varonce30
;
3755 static val
* varonce32
;
3756 val
* var33
/* : String */;
3757 char* var34
/* : NativeString */;
3758 val
* var35
/* : FlatString */;
3759 static val
* varonce36
;
3760 val
* var37
/* : String */;
3761 char* var38
/* : NativeString */;
3762 val
* var39
/* : FlatString */;
3763 val
* var40
/* : String */;
3764 val
* var41
/* : Message */;
3765 val
* var42
/* : ToolContext */;
3766 val
* var44
/* : ToolContext */;
3767 val
* var46
/* : NativeArray[String] */;
3768 static val
* varonce45
;
3769 static val
* varonce47
;
3770 val
* var48
/* : String */;
3771 char* var49
/* : NativeString */;
3772 val
* var50
/* : FlatString */;
3773 val
* var51
/* : String */;
3774 val
* var52
/* : FileReader */;
3775 val
* var_file
/* var file: FileReader */;
3776 val
* var53
/* : Lexer */;
3777 val
* var54
/* : SourceFile */;
3778 val
* var_lexer
/* var lexer: Lexer */;
3779 val
* var55
/* : Parser */;
3780 val
* var_parser
/* var parser: Parser */;
3781 val
* var56
/* : Start */;
3782 val
* var_tree
/* var tree: Start */;
3783 val
* var57
/* : nullable AModule */;
3784 val
* var59
/* : nullable AModule */;
3785 val
* var_nmodule
/* var nmodule: nullable AModule */;
3786 short int var60
/* : Bool */;
3787 short int var61
/* : Bool */;
3788 val
* var_other63
/* var other: nullable Object */;
3789 short int var64
/* : Bool */;
3790 short int var66
/* : Bool */;
3791 val
* var67
/* : EOF */;
3792 val
* var69
/* : EOF */;
3793 val
* var_neof
/* var neof: EOF */;
3794 short int var70
/* : Bool */;
3797 val
* var71
/* : String */;
3798 val
* var73
/* : String */;
3801 var1
= standard__file___String___file_extension(var_filename
);
3803 if (likely(varonce
!=NULL
)) {
3807 var4
= standard___standard__NativeString___to_s_with_length(var3
, 3l);
3812 var5
= 1; /* <var2:String> cannot be null */
3814 { /* Inline kernel#Object#!= (var1,var2) on <var1:nullable String> */
3817 var8
= ((short int(*)(val
* self
, val
* p0
))(var1
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var1
, var_other
); /* == on <var1:nullable String(String)>*/
3828 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (self) on <self:ModelBuilder> */
3829 var12
= self
->attrs
[COLOR_nit__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <self:ModelBuilder> */
3830 if (unlikely(var12
== NULL
)) {
3831 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
3832 PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base
, 47);
3836 RET_LABEL11
:(void)0;
3839 if (unlikely(varonce13
==NULL
)) {
3840 var14
= NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String
);
3841 if (likely(varonce15
!=NULL
)) {
3844 var17
= "Error: file `";
3845 var18
= standard___standard__NativeString___to_s_with_length(var17
, 13l);
3849 ((struct instance_standard__NativeArray
*)var14
)->values
[0]=var16
;
3850 if (likely(varonce19
!=NULL
)) {
3853 var21
= "` is not a valid nit module.";
3854 var22
= standard___standard__NativeString___to_s_with_length(var21
, 28l);
3858 ((struct instance_standard__NativeArray
*)var14
)->values
[2]=var20
;
3863 ((struct instance_standard__NativeArray
*)var14
)->values
[1]=var_filename
;
3865 var23
= ((val
*(*)(val
* self
))(var14
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var14
); /* native_to_s on <var14:NativeArray[String]>*/
3869 var24
= nit___nit__ToolContext___error(var10
, ((val
*)NULL
), var23
);
3876 var25
= standard__file___String___file_exists(var_filename
);
3881 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (self) on <self:ModelBuilder> */
3882 var29
= self
->attrs
[COLOR_nit__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <self:ModelBuilder> */
3883 if (unlikely(var29
== NULL
)) {
3884 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
3885 PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base
, 47);
3889 RET_LABEL28
:(void)0;
3892 if (unlikely(varonce30
==NULL
)) {
3893 var31
= NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String
);
3894 if (likely(varonce32
!=NULL
)) {
3897 var34
= "Error: file `";
3898 var35
= standard___standard__NativeString___to_s_with_length(var34
, 13l);
3902 ((struct instance_standard__NativeArray
*)var31
)->values
[0]=var33
;
3903 if (likely(varonce36
!=NULL
)) {
3906 var38
= "` not found.";
3907 var39
= standard___standard__NativeString___to_s_with_length(var38
, 12l);
3911 ((struct instance_standard__NativeArray
*)var31
)->values
[2]=var37
;
3916 ((struct instance_standard__NativeArray
*)var31
)->values
[1]=var_filename
;
3918 var40
= ((val
*(*)(val
* self
))(var31
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var31
); /* native_to_s on <var31:NativeArray[String]>*/
3922 var41
= nit___nit__ToolContext___error(var27
, ((val
*)NULL
), var40
);
3929 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (self) on <self:ModelBuilder> */
3930 var44
= self
->attrs
[COLOR_nit__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <self:ModelBuilder> */
3931 if (unlikely(var44
== NULL
)) {
3932 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
3933 PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base
, 47);
3937 RET_LABEL43
:(void)0;
3940 if (unlikely(varonce45
==NULL
)) {
3941 var46
= NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String
);
3942 if (likely(varonce47
!=NULL
)) {
3945 var49
= "load module ";
3946 var50
= standard___standard__NativeString___to_s_with_length(var49
, 12l);
3950 ((struct instance_standard__NativeArray
*)var46
)->values
[0]=var48
;
3955 ((struct instance_standard__NativeArray
*)var46
)->values
[1]=var_filename
;
3957 var51
= ((val
*(*)(val
* self
))(var46
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var46
); /* native_to_s on <var46:NativeArray[String]>*/
3961 nit___nit__ToolContext___info(var42
, var51
, 2l); /* Direct call toolcontext#ToolContext#info on <var42:ToolContext>*/
3963 var52
= NEW_standard__FileReader(&type_standard__FileReader
);
3965 standard___standard__FileReader___open(var52
, var_filename
); /* Direct call file#FileReader#open on <var52:FileReader>*/
3968 var53
= NEW_nit__Lexer(&type_nit__Lexer
);
3969 var54
= NEW_nit__SourceFile(&type_nit__SourceFile
);
3971 ((void(*)(val
* self
, val
* p0
))(var54
->class->vft
[COLOR_nit__location__SourceFile__filename_61d
]))(var54
, var_filename
); /* filename= on <var54:SourceFile>*/
3974 ((void(*)(val
* self
, val
* p0
))(var54
->class->vft
[COLOR_nit__location__SourceFile__stream_61d
]))(var54
, var_file
); /* stream= on <var54:SourceFile>*/
3977 ((void(*)(val
* self
))(var54
->class->vft
[COLOR_standard__kernel__Object__init
]))(var54
); /* init on <var54:SourceFile>*/
3980 ((void(*)(val
* self
, val
* p0
))(var53
->class->vft
[COLOR_nit__lexer_work__Lexer__file_61d
]))(var53
, var54
); /* file= on <var53:Lexer>*/
3983 ((void(*)(val
* self
))(var53
->class->vft
[COLOR_standard__kernel__Object__init
]))(var53
); /* init on <var53:Lexer>*/
3986 var55
= NEW_nit__Parser(&type_nit__Parser
);
3988 ((void(*)(val
* self
, val
* p0
))(var55
->class->vft
[COLOR_nit__parser_work__Parser__lexer_61d
]))(var55
, var_lexer
); /* lexer= on <var55:Parser>*/
3991 ((void(*)(val
* self
))(var55
->class->vft
[COLOR_standard__kernel__Object__init
]))(var55
); /* init on <var55:Parser>*/
3995 var56
= nit___nit__Parser___parse(var_parser
);
3999 standard___standard__FileReader___standard__stream__Stream__close(var_file
); /* Direct call file#FileReader#close on <var_file:FileReader>*/
4002 { /* Inline parser_nodes#Start#n_base (var_tree) on <var_tree:Start> */
4003 var59
= var_tree
->attrs
[COLOR_nit__parser_nodes__Start___n_base
].val
; /* _n_base on <var_tree:Start> */
4005 RET_LABEL58
:(void)0;
4008 var_nmodule
= var57
;
4009 if (var_nmodule
== NULL
) {
4010 var60
= 1; /* is null */
4012 var60
= 0; /* arg is null but recv is not */
4015 { /* Inline kernel#Object#== (var_nmodule,((val*)NULL)) on <var_nmodule:nullable AModule> */
4016 var_other63
= ((val
*)NULL
);
4018 { /* Inline kernel#Object#is_same_instance (var_nmodule,var_other63) on <var_nmodule:nullable AModule(AModule)> */
4019 var66
= var_nmodule
== var_other63
;
4022 RET_LABEL65
:(void)0;
4027 RET_LABEL62
:(void)0;
4033 { /* Inline parser_nodes#Start#n_eof (var_tree) on <var_tree:Start> */
4034 var69
= var_tree
->attrs
[COLOR_nit__parser_nodes__Start___n_eof
].val
; /* _n_eof on <var_tree:Start> */
4035 if (unlikely(var69
== NULL
)) {
4036 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_eof");
4037 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes
, 3037);
4041 RET_LABEL68
:(void)0;
4045 /* <var_neof:EOF> isa AError */
4046 cltype
= type_nit__AError
.color
;
4047 idtype
= type_nit__AError
.id
;
4048 if(cltype
>= var_neof
->type
->table_size
) {
4051 var70
= var_neof
->type
->type_table
[cltype
] == idtype
;
4053 if (unlikely(!var70
)) {
4054 PRINT_ERROR("Runtime error: %s", "Assert failed");
4055 PRINT_ERROR(" (%s:%d)\n", FILE_nit__loader
, 532);
4059 { /* Inline lexer_work#AError#message (var_neof) on <var_neof:EOF(AError)> */
4060 var73
= var_neof
->attrs
[COLOR_nit__lexer_work__AError___message
].val
; /* _message on <var_neof:EOF(AError)> */
4061 if (unlikely(var73
== NULL
)) {
4062 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _message");
4063 PRINT_ERROR(" (%s:%d)\n", FILE_nit__lexer_work
, 50);
4067 RET_LABEL72
:(void)0;
4071 nit___nit__ModelBuilder___error(self
, var_neof
, var71
); /* Direct call modelbuilder_base#ModelBuilder#error on <self:ModelBuilder>*/
4082 /* method loader#ModelBuilder#load_module for (self: ModelBuilder, String): nullable AModule */
4083 val
* nit__loader___ModelBuilder___load_module(val
* self
, val
* p0
) {
4084 val
* var
/* : nullable AModule */;
4085 val
* var_filename
/* var filename: String */;
4086 val
* var1
/* : nullable ModulePath */;
4087 val
* var_file
/* var file: nullable ModulePath */;
4088 short int var2
/* : Bool */;
4089 short int var3
/* : Bool */;
4090 val
* var_other
/* var other: nullable Object */;
4091 short int var5
/* : Bool */;
4092 short int var7
/* : Bool */;
4093 short int var8
/* : Bool */;
4094 val
* var9
/* : ToolContext */;
4095 val
* var11
/* : ToolContext */;
4096 val
* var12
/* : NativeArray[String] */;
4097 static val
* varonce
;
4098 static val
* varonce13
;
4099 val
* var14
/* : String */;
4100 char* var15
/* : NativeString */;
4101 val
* var16
/* : FlatString */;
4102 static val
* varonce17
;
4103 val
* var18
/* : String */;
4104 char* var19
/* : NativeString */;
4105 val
* var20
/* : FlatString */;
4106 val
* var21
/* : String */;
4107 val
* var22
/* : Message */;
4108 val
* var23
/* : ToolContext */;
4109 val
* var25
/* : ToolContext */;
4110 val
* var27
/* : NativeArray[String] */;
4111 static val
* varonce26
;
4112 static val
* varonce28
;
4113 val
* var29
/* : String */;
4114 char* var30
/* : NativeString */;
4115 val
* var31
/* : FlatString */;
4116 static val
* varonce32
;
4117 val
* var33
/* : String */;
4118 char* var34
/* : NativeString */;
4119 val
* var35
/* : FlatString */;
4120 val
* var36
/* : String */;
4121 val
* var37
/* : Message */;
4122 val
* var38
/* : nullable MModule */;
4123 val
* var40
/* : nullable MModule */;
4124 val
* var_mmodule
/* var mmodule: nullable MModule */;
4125 short int var41
/* : Bool */;
4126 short int var42
/* : Bool */;
4127 val
* var_other44
/* var other: nullable Object */;
4128 short int var45
/* : Bool */;
4129 short int var46
/* : Bool */;
4130 val
* var47
/* : HashMap[MModule, AModule] */;
4131 val
* var49
/* : HashMap[MModule, AModule] */;
4132 val
* var50
/* : nullable Object */;
4133 val
* var51
/* : String */;
4134 val
* var53
/* : String */;
4135 val
* var54
/* : nullable AModule */;
4136 val
* var_nmodule
/* var nmodule: nullable AModule */;
4137 short int var55
/* : Bool */;
4138 short int var56
/* : Bool */;
4139 short int var58
/* : Bool */;
4140 short int var60
/* : Bool */;
4141 val
* var61
/* : MGroup */;
4142 val
* var63
/* : MGroup */;
4143 val
* var64
/* : String */;
4144 val
* var66
/* : String */;
4145 val
* var67
/* : nullable MModule */;
4146 short int var68
/* : Bool */;
4147 short int var69
/* : Bool */;
4148 short int var71
/* : Bool */;
4149 short int var73
/* : Bool */;
4152 var1
= nit__loader___ModelBuilder___identify_file(self
, var_filename
);
4155 if (var_file
== NULL
) {
4156 var2
= 1; /* is null */
4158 var2
= 0; /* arg is null but recv is not */
4161 { /* Inline kernel#Object#== (var_file,((val*)NULL)) on <var_file:nullable ModulePath> */
4162 var_other
= ((val
*)NULL
);
4164 { /* Inline kernel#Object#is_same_instance (var_file,var_other) on <var_file:nullable ModulePath(ModulePath)> */
4165 var7
= var_file
== var_other
;
4179 var8
= standard__file___String___file_exists(var_filename
);
4183 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (self) on <self:ModelBuilder> */
4184 var11
= self
->attrs
[COLOR_nit__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <self:ModelBuilder> */
4185 if (unlikely(var11
== NULL
)) {
4186 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
4187 PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base
, 47);
4191 RET_LABEL10
:(void)0;
4194 if (unlikely(varonce
==NULL
)) {
4195 var12
= NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String
);
4196 if (likely(varonce13
!=NULL
)) {
4200 var16
= standard___standard__NativeString___to_s_with_length(var15
, 8l);
4204 ((struct instance_standard__NativeArray
*)var12
)->values
[0]=var14
;
4205 if (likely(varonce17
!=NULL
)) {
4208 var19
= "` is not a Nit source file.";
4209 var20
= standard___standard__NativeString___to_s_with_length(var19
, 27l);
4213 ((struct instance_standard__NativeArray
*)var12
)->values
[2]=var18
;
4218 ((struct instance_standard__NativeArray
*)var12
)->values
[1]=var_filename
;
4220 var21
= ((val
*(*)(val
* self
))(var12
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var12
); /* native_to_s on <var12:NativeArray[String]>*/
4224 var22
= nit___nit__ToolContext___error(var9
, ((val
*)NULL
), var21
);
4228 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (self) on <self:ModelBuilder> */
4229 var25
= self
->attrs
[COLOR_nit__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <self:ModelBuilder> */
4230 if (unlikely(var25
== NULL
)) {
4231 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
4232 PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base
, 47);
4236 RET_LABEL24
:(void)0;
4239 if (unlikely(varonce26
==NULL
)) {
4240 var27
= NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String
);
4241 if (likely(varonce28
!=NULL
)) {
4244 var30
= "Error: cannot find module `";
4245 var31
= standard___standard__NativeString___to_s_with_length(var30
, 27l);
4249 ((struct instance_standard__NativeArray
*)var27
)->values
[0]=var29
;
4250 if (likely(varonce32
!=NULL
)) {
4254 var35
= standard___standard__NativeString___to_s_with_length(var34
, 2l);
4258 ((struct instance_standard__NativeArray
*)var27
)->values
[2]=var33
;
4263 ((struct instance_standard__NativeArray
*)var27
)->values
[1]=var_filename
;
4265 var36
= ((val
*(*)(val
* self
))(var27
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var27
); /* native_to_s on <var27:NativeArray[String]>*/
4269 var37
= nit___nit__ToolContext___error(var23
, ((val
*)NULL
), var36
);
4277 { /* Inline loader#ModulePath#mmodule (var_file) on <var_file:nullable ModulePath(ModulePath)> */
4278 var40
= var_file
->attrs
[COLOR_nit__loader__ModulePath___mmodule
].val
; /* _mmodule on <var_file:nullable ModulePath(ModulePath)> */
4280 RET_LABEL39
:(void)0;
4283 var_mmodule
= var38
;
4284 if (var_mmodule
== NULL
) {
4285 var41
= 0; /* is null */
4287 var41
= 1; /* arg is null and recv is not */
4290 { /* Inline kernel#Object#!= (var_mmodule,((val*)NULL)) on <var_mmodule:nullable MModule> */
4291 var_other44
= ((val
*)NULL
);
4293 var45
= ((short int(*)(val
* self
, val
* p0
))(var_mmodule
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_mmodule
, var_other44
); /* == on <var_mmodule:nullable MModule(MModule)>*/
4298 RET_LABEL43
:(void)0;
4304 { /* Inline loader#ModelBuilder#mmodule2nmodule (self) on <self:ModelBuilder> */
4305 var49
= self
->attrs
[COLOR_nit__loader__ModelBuilder___mmodule2nmodule
].val
; /* _mmodule2nmodule on <self:ModelBuilder> */
4306 if (unlikely(var49
== NULL
)) {
4307 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mmodule2nmodule");
4308 PRINT_ERROR(" (%s:%d)\n", FILE_nit__loader
, 765);
4312 RET_LABEL48
:(void)0;
4316 var50
= standard___standard__HashMap___standard__abstract_collection__MapRead___91d_93d(var47
, var_mmodule
);
4323 { /* Inline loader#ModulePath#filepath (var_file) on <var_file:nullable ModulePath(ModulePath)> */
4324 var53
= var_file
->attrs
[COLOR_nit__loader__ModulePath___filepath
].val
; /* _filepath on <var_file:nullable ModulePath(ModulePath)> */
4325 if (unlikely(var53
== NULL
)) {
4326 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _filepath");
4327 PRINT_ERROR(" (%s:%d)\n", FILE_nit__loader
, 786);
4331 RET_LABEL52
:(void)0;
4335 var54
= nit__loader___ModelBuilder___load_module_ast(self
, var51
);
4337 var_nmodule
= var54
;
4338 if (var_nmodule
== NULL
) {
4339 var55
= 1; /* is null */
4341 var55
= 0; /* arg is null but recv is not */
4344 { /* Inline kernel#Object#== (var_nmodule,((val*)NULL)) on <var_nmodule:nullable AModule> */
4345 var_other
= ((val
*)NULL
);
4347 { /* Inline kernel#Object#is_same_instance (var_nmodule,var_other) on <var_nmodule:nullable AModule(AModule)> */
4348 var60
= var_nmodule
== var_other
;
4351 RET_LABEL59
:(void)0;
4356 RET_LABEL57
:(void)0;
4366 { /* Inline loader#ModulePath#mgroup (var_file) on <var_file:nullable ModulePath(ModulePath)> */
4367 var63
= var_file
->attrs
[COLOR_nit__loader__ModulePath___mgroup
].val
; /* _mgroup on <var_file:nullable ModulePath(ModulePath)> */
4368 if (unlikely(var63
== NULL
)) {
4369 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mgroup");
4370 PRINT_ERROR(" (%s:%d)\n", FILE_nit__loader
, 789);
4374 RET_LABEL62
:(void)0;
4378 { /* Inline loader#ModulePath#name (var_file) on <var_file:nullable ModulePath(ModulePath)> */
4379 var66
= var_file
->attrs
[COLOR_nit__loader__ModulePath___name
].val
; /* _name on <var_file:nullable ModulePath(ModulePath)> */
4380 if (unlikely(var66
== NULL
)) {
4381 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _name");
4382 PRINT_ERROR(" (%s:%d)\n", FILE_nit__loader
, 782);
4386 RET_LABEL65
:(void)0;
4390 var67
= nit__loader___ModelBuilder___build_a_mmodule(self
, var61
, var64
, var_nmodule
);
4392 var_mmodule
= var67
;
4393 if (var_mmodule
== NULL
) {
4394 var68
= 1; /* is null */
4396 var68
= 0; /* arg is null but recv is not */
4399 { /* Inline kernel#Object#== (var_mmodule,((val*)NULL)) on <var_mmodule:nullable MModule> */
4400 var_other
= ((val
*)NULL
);
4402 { /* Inline kernel#Object#is_same_instance (var_mmodule,var_other) on <var_mmodule:nullable MModule(MModule)> */
4403 var73
= var_mmodule
== var_other
;
4406 RET_LABEL72
:(void)0;
4411 RET_LABEL70
:(void)0;
4421 { /* Inline loader#ModulePath#mmodule= (var_file,var_mmodule) on <var_file:nullable ModulePath(ModulePath)> */
4422 var_file
->attrs
[COLOR_nit__loader__ModulePath___mmodule
].val
= var_mmodule
; /* _mmodule on <var_file:nullable ModulePath(ModulePath)> */
4423 RET_LABEL74
:(void)0;
4431 /* method loader#ModelBuilder#build_a_mmodule for (self: ModelBuilder, nullable MGroup, String, AModule): nullable MModule */
4432 val
* nit__loader___ModelBuilder___build_a_mmodule(val
* self
, val
* p0
, val
* p1
, val
* p2
) {
4433 val
* var
/* : nullable MModule */;
4434 val
* var_mgroup
/* var mgroup: nullable MGroup */;
4435 val
* var_mod_name
/* var mod_name: String */;
4436 val
* var_nmodule
/* var nmodule: AModule */;
4437 val
* var1
/* : nullable AModuledecl */;
4438 val
* var3
/* : nullable AModuledecl */;
4439 val
* var_decl
/* var decl: nullable AModuledecl */;
4440 short int var4
/* : Bool */;
4441 short int var5
/* : Bool */;
4442 val
* var_other
/* var other: nullable Object */;
4443 short int var7
/* : Bool */;
4444 short int var8
/* : Bool */;
4445 val
* var9
/* : AModuleName */;
4446 val
* var11
/* : AModuleName */;
4447 val
* var12
/* : TId */;
4448 val
* var14
/* : TId */;
4449 val
* var15
/* : String */;
4450 val
* var_decl_name
/* var decl_name: String */;
4451 short int var16
/* : Bool */;
4452 short int var18
/* : Bool */;
4453 short int var19
/* : Bool */;
4454 val
* var20
/* : AModuleName */;
4455 val
* var22
/* : AModuleName */;
4456 val
* var23
/* : NativeArray[String] */;
4457 static val
* varonce
;
4458 static val
* varonce24
;
4459 val
* var25
/* : String */;
4460 char* var26
/* : NativeString */;
4461 val
* var27
/* : FlatString */;
4462 static val
* varonce28
;
4463 val
* var29
/* : String */;
4464 char* var30
/* : NativeString */;
4465 val
* var31
/* : FlatString */;
4466 static val
* varonce32
;
4467 val
* var33
/* : String */;
4468 char* var34
/* : NativeString */;
4469 val
* var35
/* : FlatString */;
4470 val
* var36
/* : String */;
4471 short int var37
/* : Bool */;
4472 short int var38
/* : Bool */;
4473 short int var40
/* : Bool */;
4474 short int var41
/* : Bool */;
4475 val
* var42
/* : Model */;
4476 val
* var44
/* : Model */;
4477 val
* var45
/* : nullable Array[MModule] */;
4478 val
* var_others
/* var others: nullable Array[MModule] */;
4479 short int var46
/* : Bool */;
4480 short int var47
/* : Bool */;
4481 short int var49
/* : Bool */;
4482 short int var50
/* : Bool */;
4483 val
* var_
/* var : Array[MModule] */;
4484 val
* var51
/* : ArrayIterator[nullable Object] */;
4485 val
* var_52
/* var : ArrayIterator[MModule] */;
4486 short int var53
/* : Bool */;
4487 val
* var54
/* : nullable Object */;
4488 val
* var_other55
/* var other: MModule */;
4489 short int var56
/* : Bool */;
4490 val
* var57
/* : nullable MGroup */;
4491 val
* var59
/* : nullable MGroup */;
4492 short int var60
/* : Bool */;
4493 short int var61
/* : Bool */;
4494 short int var63
/* : Bool */;
4495 short int var64
/* : Bool */;
4496 short int var_65
/* var : Bool */;
4497 val
* var66
/* : nullable MGroup */;
4498 val
* var68
/* : nullable MGroup */;
4499 val
* var69
/* : MProject */;
4500 val
* var71
/* : MProject */;
4501 val
* var72
/* : MProject */;
4502 val
* var74
/* : MProject */;
4503 short int var75
/* : Bool */;
4504 val
* var_other77
/* var other: nullable Object */;
4505 short int var78
/* : Bool */;
4506 short int var80
/* : Bool */;
4507 short int var81
/* : Bool */;
4508 short int var82
/* : Bool */;
4509 short int var84
/* : Bool */;
4510 short int var86
/* : Bool */;
4511 val
* var_node
/* var node: ANode */;
4512 val
* var87
/* : AModuleName */;
4513 val
* var89
/* : AModuleName */;
4514 val
* var91
/* : NativeArray[String] */;
4515 static val
* varonce90
;
4516 static val
* varonce92
;
4517 val
* var93
/* : String */;
4518 char* var94
/* : NativeString */;
4519 val
* var95
/* : FlatString */;
4520 static val
* varonce96
;
4521 val
* var97
/* : String */;
4522 char* var98
/* : NativeString */;
4523 val
* var99
/* : FlatString */;
4524 static val
* varonce100
;
4525 val
* var101
/* : String */;
4526 char* var102
/* : NativeString */;
4527 val
* var103
/* : FlatString */;
4528 val
* var104
/* : String */;
4529 val
* var105
/* : Location */;
4530 val
* var107
/* : Location */;
4531 val
* var108
/* : String */;
4532 val
* var109
/* : String */;
4533 val
* var110
/* : MModule */;
4534 val
* var111
/* : Model */;
4535 val
* var113
/* : Model */;
4536 val
* var114
/* : Location */;
4537 val
* var116
/* : Location */;
4538 val
* var_mmodule
/* var mmodule: MModule */;
4539 val
* var118
/* : Array[AModule] */;
4540 val
* var120
/* : Array[AModule] */;
4541 val
* var121
/* : HashMap[MModule, AModule] */;
4542 val
* var123
/* : HashMap[MModule, AModule] */;
4543 val
* var124
/* : Location */;
4544 val
* var126
/* : Location */;
4545 val
* var127
/* : nullable SourceFile */;
4546 val
* var129
/* : nullable SourceFile */;
4547 val
* var_source
/* var source: nullable SourceFile */;
4548 short int var130
/* : Bool */;
4549 short int var131
/* : Bool */;
4550 short int var133
/* : Bool */;
4551 short int var134
/* : Bool */;
4552 val
* var135
/* : nullable MModule */;
4553 val
* var137
/* : nullable MModule */;
4554 short int var138
/* : Bool */;
4555 short int var139
/* : Bool */;
4556 short int var141
/* : Bool */;
4557 short int var143
/* : Bool */;
4558 short int var145
/* : Bool */;
4559 short int var146
/* : Bool */;
4560 short int var148
/* : Bool */;
4561 short int var149
/* : Bool */;
4562 val
* var150
/* : nullable ADoc */;
4563 val
* var152
/* : nullable ADoc */;
4564 val
* var_ndoc
/* var ndoc: nullable ADoc */;
4565 short int var153
/* : Bool */;
4566 short int var154
/* : Bool */;
4567 short int var156
/* : Bool */;
4568 short int var157
/* : Bool */;
4569 val
* var158
/* : MDoc */;
4570 val
* var_mdoc
/* var mdoc: MDoc */;
4571 static val
* varonce161
;
4572 val
* var162
/* : String */;
4573 char* var163
/* : NativeString */;
4574 val
* var164
/* : FlatString */;
4575 val
* var166
/* : NativeArray[String] */;
4576 static val
* varonce165
;
4577 static val
* varonce167
;
4578 val
* var168
/* : String */;
4579 char* var169
/* : NativeString */;
4580 val
* var170
/* : FlatString */;
4581 static val
* varonce171
;
4582 val
* var172
/* : String */;
4583 char* var173
/* : NativeString */;
4584 val
* var174
/* : FlatString */;
4585 val
* var175
/* : String */;
4586 val
* var176
/* : String */;
4587 static val
* varonce177
;
4588 val
* var178
/* : String */;
4589 char* var179
/* : NativeString */;
4590 val
* var180
/* : FlatString */;
4591 val
* var181
/* : Array[AAnnotation] */;
4592 short int var182
/* : Bool */;
4593 short int var183
/* : Bool */;
4598 { /* Inline parser_nodes#AModule#n_moduledecl (var_nmodule) on <var_nmodule:AModule> */
4599 var3
= var_nmodule
->attrs
[COLOR_nit__parser_nodes__AModule___n_moduledecl
].val
; /* _n_moduledecl on <var_nmodule:AModule> */
4605 if (var_decl
== NULL
) {
4606 var4
= 0; /* is null */
4608 var4
= 1; /* arg is null and recv is not */
4611 { /* Inline kernel#Object#!= (var_decl,((val*)NULL)) on <var_decl:nullable AModuledecl> */
4612 var_other
= ((val
*)NULL
);
4614 var7
= ((short int(*)(val
* self
, val
* p0
))(var_decl
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_decl
, var_other
); /* == on <var_decl:nullable AModuledecl(AModuledecl)>*/
4625 { /* Inline parser_nodes#AModuledecl#n_name (var_decl) on <var_decl:nullable AModuledecl(AModuledecl)> */
4626 var11
= var_decl
->attrs
[COLOR_nit__parser_nodes__AModuledecl___n_name
].val
; /* _n_name on <var_decl:nullable AModuledecl(AModuledecl)> */
4627 if (unlikely(var11
== NULL
)) {
4628 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_name");
4629 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes
, 1120);
4633 RET_LABEL10
:(void)0;
4637 { /* Inline parser_nodes#AModuleName#n_id (var9) on <var9:AModuleName> */
4638 var14
= var9
->attrs
[COLOR_nit__parser_nodes__AModuleName___n_id
].val
; /* _n_id on <var9:AModuleName> */
4639 if (unlikely(var14
== NULL
)) {
4640 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id");
4641 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes
, 2900);
4645 RET_LABEL13
:(void)0;
4649 var15
= nit__lexer_work___Token___text(var12
);
4651 var_decl_name
= var15
;
4653 { /* Inline kernel#Object#!= (var_decl_name,var_mod_name) on <var_decl_name:String> */
4654 var_other
= var_mod_name
;
4656 var18
= ((short int(*)(val
* self
, val
* p0
))(var_decl_name
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_decl_name
, var_other
); /* == on <var_decl_name:String>*/
4661 RET_LABEL17
:(void)0;
4666 { /* Inline parser_nodes#AModuledecl#n_name (var_decl) on <var_decl:nullable AModuledecl(AModuledecl)> */
4667 var22
= var_decl
->attrs
[COLOR_nit__parser_nodes__AModuledecl___n_name
].val
; /* _n_name on <var_decl:nullable AModuledecl(AModuledecl)> */
4668 if (unlikely(var22
== NULL
)) {
4669 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_name");
4670 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes
, 1120);
4674 RET_LABEL21
:(void)0;
4677 if (unlikely(varonce
==NULL
)) {
4678 var23
= NEW_standard__NativeArray(5l, &type_standard__NativeArray__standard__String
);
4679 if (likely(varonce24
!=NULL
)) {
4682 var26
= "Error: module name mismatch; declared ";
4683 var27
= standard___standard__NativeString___to_s_with_length(var26
, 38l);
4687 ((struct instance_standard__NativeArray
*)var23
)->values
[0]=var25
;
4688 if (likely(varonce28
!=NULL
)) {
4691 var30
= " file named ";
4692 var31
= standard___standard__NativeString___to_s_with_length(var30
, 12l);
4696 ((struct instance_standard__NativeArray
*)var23
)->values
[2]=var29
;
4697 if (likely(varonce32
!=NULL
)) {
4701 var35
= standard___standard__NativeString___to_s_with_length(var34
, 1l);
4705 ((struct instance_standard__NativeArray
*)var23
)->values
[4]=var33
;
4710 ((struct instance_standard__NativeArray
*)var23
)->values
[1]=var_decl_name
;
4711 ((struct instance_standard__NativeArray
*)var23
)->values
[3]=var_mod_name
;
4713 var36
= ((val
*(*)(val
* self
))(var23
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var23
); /* native_to_s on <var23:NativeArray[String]>*/
4717 nit___nit__ModelBuilder___error(self
, var20
, var36
); /* Direct call modelbuilder_base#ModelBuilder#error on <self:ModelBuilder>*/
4723 if (var_mgroup
== NULL
) {
4724 var37
= 0; /* is null */
4726 var37
= 1; /* arg is null and recv is not */
4729 { /* Inline kernel#Object#!= (var_mgroup,((val*)NULL)) on <var_mgroup:nullable MGroup> */
4730 var_other
= ((val
*)NULL
);
4732 var40
= ((short int(*)(val
* self
, val
* p0
))(var_mgroup
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_mgroup
, var_other
); /* == on <var_mgroup:nullable MGroup(MGroup)>*/
4737 RET_LABEL39
:(void)0;
4743 { /* Inline modelbuilder_base#ModelBuilder#model (self) on <self:ModelBuilder> */
4744 var44
= self
->attrs
[COLOR_nit__modelbuilder_base__ModelBuilder___model
].val
; /* _model on <self:ModelBuilder> */
4745 if (unlikely(var44
== NULL
)) {
4746 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _model");
4747 PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base
, 44);
4751 RET_LABEL43
:(void)0;
4755 var45
= nit__mmodule___Model___get_mmodules_by_name(var42
, var_mod_name
);
4758 if (var_others
== NULL
) {
4759 var46
= 0; /* is null */
4761 var46
= 1; /* arg is null and recv is not */
4764 { /* Inline kernel#Object#!= (var_others,((val*)NULL)) on <var_others:nullable Array[MModule]> */
4765 var_other
= ((val
*)NULL
);
4767 var49
= ((short int(*)(val
* self
, val
* p0
))(var_others
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_others
, var_other
); /* == on <var_others:nullable Array[MModule](Array[MModule])>*/
4772 RET_LABEL48
:(void)0;
4779 var51
= standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__iterator(var_
);
4784 var53
= standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__is_ok(var_52
);
4788 var54
= standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__item(var_52
);
4790 var_other55
= var54
;
4792 { /* Inline mmodule#MModule#mgroup (var_other55) on <var_other55:MModule> */
4793 var59
= var_other55
->attrs
[COLOR_nit__mmodule__MModule___mgroup
].val
; /* _mgroup on <var_other55:MModule> */
4795 RET_LABEL58
:(void)0;
4798 if (var57
== NULL
) {
4799 var60
= 0; /* is null */
4801 var60
= 1; /* arg is null and recv is not */
4804 { /* Inline kernel#Object#!= (var57,((val*)NULL)) on <var57:nullable MGroup> */
4805 var_other
= ((val
*)NULL
);
4807 var63
= ((short int(*)(val
* self
, val
* p0
))(var57
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var57
, var_other
); /* == on <var57:nullable MGroup(MGroup)>*/
4812 RET_LABEL62
:(void)0;
4819 { /* Inline mmodule#MModule#mgroup (var_other55) on <var_other55:MModule> */
4820 var68
= var_other55
->attrs
[COLOR_nit__mmodule__MModule___mgroup
].val
; /* _mgroup on <var_other55:MModule> */
4822 RET_LABEL67
:(void)0;
4825 if (var66
== NULL
) {
4826 PRINT_ERROR("Runtime error: %s", "Receiver is null");
4827 PRINT_ERROR(" (%s:%d)\n", FILE_nit__loader
, 641);
4830 { /* Inline mproject#MGroup#mproject (var66) on <var66:nullable MGroup> */
4831 if (unlikely(var66
== NULL
)) {
4832 PRINT_ERROR("Runtime error: %s", "Receiver is null");
4833 PRINT_ERROR(" (%s:%d)\n", FILE_nit__mproject
, 69);
4836 var71
= var66
->attrs
[COLOR_nit__mproject__MGroup___mproject
].val
; /* _mproject on <var66:nullable MGroup> */
4837 if (unlikely(var71
== NULL
)) {
4838 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproject");
4839 PRINT_ERROR(" (%s:%d)\n", FILE_nit__mproject
, 69);
4843 RET_LABEL70
:(void)0;
4847 { /* Inline mproject#MGroup#mproject (var_mgroup) on <var_mgroup:nullable MGroup(MGroup)> */
4848 var74
= var_mgroup
->attrs
[COLOR_nit__mproject__MGroup___mproject
].val
; /* _mproject on <var_mgroup:nullable MGroup(MGroup)> */
4849 if (unlikely(var74
== NULL
)) {
4850 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproject");
4851 PRINT_ERROR(" (%s:%d)\n", FILE_nit__mproject
, 69);
4855 RET_LABEL73
:(void)0;
4859 { /* Inline kernel#Object#== (var69,var72) on <var69:MProject> */
4860 var_other77
= var72
;
4862 { /* Inline kernel#Object#is_same_instance (var69,var_other77) on <var69:MProject> */
4863 var80
= var69
== var_other77
;
4866 RET_LABEL79
:(void)0;
4871 RET_LABEL76
:(void)0;
4879 if (var_decl
== NULL
) {
4880 var81
= 1; /* is null */
4882 var81
= 0; /* arg is null but recv is not */
4885 { /* Inline kernel#Object#== (var_decl,((val*)NULL)) on <var_decl:nullable AModuledecl> */
4886 var_other77
= ((val
*)NULL
);
4888 { /* Inline kernel#Object#is_same_instance (var_decl,var_other77) on <var_decl:nullable AModuledecl(AModuledecl)> */
4889 var86
= var_decl
== var_other77
;
4892 RET_LABEL85
:(void)0;
4897 RET_LABEL83
:(void)0;
4902 var_node
= var_nmodule
;
4905 { /* Inline parser_nodes#AModuledecl#n_name (var_decl) on <var_decl:nullable AModuledecl(AModuledecl)> */
4906 var89
= var_decl
->attrs
[COLOR_nit__parser_nodes__AModuledecl___n_name
].val
; /* _n_name on <var_decl:nullable AModuledecl(AModuledecl)> */
4907 if (unlikely(var89
== NULL
)) {
4908 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_name");
4909 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes
, 1120);
4913 RET_LABEL88
:(void)0;
4918 if (unlikely(varonce90
==NULL
)) {
4919 var91
= NEW_standard__NativeArray(5l, &type_standard__NativeArray__standard__String
);
4920 if (likely(varonce92
!=NULL
)) {
4923 var94
= "Error: a module named `";
4924 var95
= standard___standard__NativeString___to_s_with_length(var94
, 23l);
4928 ((struct instance_standard__NativeArray
*)var91
)->values
[0]=var93
;
4929 if (likely(varonce96
!=NULL
)) {
4932 var98
= "` already exists at ";
4933 var99
= standard___standard__NativeString___to_s_with_length(var98
, 20l);
4937 ((struct instance_standard__NativeArray
*)var91
)->values
[2]=var97
;
4938 if (likely(varonce100
!=NULL
)) {
4939 var101
= varonce100
;
4942 var103
= standard___standard__NativeString___to_s_with_length(var102
, 1l);
4944 varonce100
= var101
;
4946 ((struct instance_standard__NativeArray
*)var91
)->values
[4]=var101
;
4952 var104
= nit___nit__MModule___nit__model_base__MEntity__full_name(var_other55
);
4954 ((struct instance_standard__NativeArray
*)var91
)->values
[1]=var104
;
4956 { /* Inline mmodule#MModule#location (var_other55) on <var_other55:MModule> */
4957 var107
= var_other55
->attrs
[COLOR_nit__mmodule__MModule___location
].val
; /* _location on <var_other55:MModule> */
4958 if (unlikely(var107
== NULL
)) {
4959 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _location");
4960 PRINT_ERROR(" (%s:%d)\n", FILE_nit__mmodule
, 90);
4964 RET_LABEL106
:(void)0;
4968 var108
= ((val
*(*)(val
* self
))(var105
->class->vft
[COLOR_standard__string__Object__to_s
]))(var105
); /* to_s on <var105:Location>*/
4970 ((struct instance_standard__NativeArray
*)var91
)->values
[3]=var108
;
4972 var109
= ((val
*(*)(val
* self
))(var91
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var91
); /* native_to_s on <var91:NativeArray[String]>*/
4976 nit___nit__ModelBuilder___error(self
, var_node
, var109
); /* Direct call modelbuilder_base#ModelBuilder#error on <self:ModelBuilder>*/
4982 standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__next(var_52
); /* Direct call array#ArrayIterator#next on <var_52:ArrayIterator[MModule]>*/
4988 BREAK_label
: (void)0;
4990 standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__finish(var_52
); /* Direct call array#ArrayIterator#finish on <var_52:ArrayIterator[MModule]>*/
4996 var110
= NEW_nit__MModule(&type_nit__MModule
);
4998 { /* Inline modelbuilder_base#ModelBuilder#model (self) on <self:ModelBuilder> */
4999 var113
= self
->attrs
[COLOR_nit__modelbuilder_base__ModelBuilder___model
].val
; /* _model on <self:ModelBuilder> */
5000 if (unlikely(var113
== NULL
)) {
5001 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _model");
5002 PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base
, 44);
5006 RET_LABEL112
:(void)0;
5010 { /* Inline parser_nodes#ANode#location (var_nmodule) on <var_nmodule:AModule> */
5011 var116
= var_nmodule
->attrs
[COLOR_nit__parser_nodes__ANode___location
].val
; /* _location on <var_nmodule:AModule> */
5012 if (unlikely(var116
== NULL
)) {
5013 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _location");
5014 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes
, 24);
5018 RET_LABEL115
:(void)0;
5022 ((void(*)(val
* self
, val
* p0
))(var110
->class->vft
[COLOR_nit__mmodule__MModule__model_61d
]))(var110
, var111
); /* model= on <var110:MModule>*/
5025 ((void(*)(val
* self
, val
* p0
))(var110
->class->vft
[COLOR_nit__mmodule__MModule__mgroup_61d
]))(var110
, var_mgroup
); /* mgroup= on <var110:MModule>*/
5028 ((void(*)(val
* self
, val
* p0
))(var110
->class->vft
[COLOR_nit__mmodule__MModule__name_61d
]))(var110
, var_mod_name
); /* name= on <var110:MModule>*/
5031 ((void(*)(val
* self
, val
* p0
))(var110
->class->vft
[COLOR_nit__mmodule__MModule__location_61d
]))(var110
, var114
); /* location= on <var110:MModule>*/
5034 ((void(*)(val
* self
))(var110
->class->vft
[COLOR_standard__kernel__Object__init
]))(var110
); /* init on <var110:MModule>*/
5036 var_mmodule
= var110
;
5038 { /* Inline loader#AModule#mmodule= (var_nmodule,var_mmodule) on <var_nmodule:AModule> */
5039 var_nmodule
->attrs
[COLOR_nit__loader__AModule___mmodule
].val
= var_mmodule
; /* _mmodule on <var_nmodule:AModule> */
5040 RET_LABEL117
:(void)0;
5044 { /* Inline loader#ModelBuilder#nmodules (self) on <self:ModelBuilder> */
5045 var120
= self
->attrs
[COLOR_nit__loader__ModelBuilder___nmodules
].val
; /* _nmodules on <self:ModelBuilder> */
5046 if (unlikely(var120
== NULL
)) {
5047 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _nmodules");
5048 PRINT_ERROR(" (%s:%d)\n", FILE_nit__loader
, 762);
5052 RET_LABEL119
:(void)0;
5056 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var118
, var_nmodule
); /* Direct call array#Array#add on <var118:Array[AModule]>*/
5059 { /* Inline loader#ModelBuilder#mmodule2nmodule (self) on <self:ModelBuilder> */
5060 var123
= self
->attrs
[COLOR_nit__loader__ModelBuilder___mmodule2nmodule
].val
; /* _mmodule2nmodule on <self:ModelBuilder> */
5061 if (unlikely(var123
== NULL
)) {
5062 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mmodule2nmodule");
5063 PRINT_ERROR(" (%s:%d)\n", FILE_nit__loader
, 765);
5067 RET_LABEL122
:(void)0;
5071 standard___standard__HashMap___standard__abstract_collection__Map___91d_93d_61d(var121
, var_mmodule
, var_nmodule
); /* Direct call hash_collection#HashMap#[]= on <var121:HashMap[MModule, AModule]>*/
5074 { /* Inline parser_nodes#ANode#location (var_nmodule) on <var_nmodule:AModule> */
5075 var126
= var_nmodule
->attrs
[COLOR_nit__parser_nodes__ANode___location
].val
; /* _location on <var_nmodule:AModule> */
5076 if (unlikely(var126
== NULL
)) {
5077 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _location");
5078 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes
, 24);
5082 RET_LABEL125
:(void)0;
5086 { /* Inline location#Location#file (var124) on <var124:Location> */
5087 var129
= var124
->attrs
[COLOR_nit__location__Location___file
].val
; /* _file on <var124:Location> */
5089 RET_LABEL128
:(void)0;
5092 var_source
= var127
;
5093 if (var_source
== NULL
) {
5094 var130
= 0; /* is null */
5096 var130
= 1; /* arg is null and recv is not */
5099 { /* Inline kernel#Object#!= (var_source,((val*)NULL)) on <var_source:nullable SourceFile> */
5100 var_other
= ((val
*)NULL
);
5102 var133
= ((short int(*)(val
* self
, val
* p0
))(var_source
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_source
, var_other
); /* == on <var_source:nullable SourceFile(SourceFile)>*/
5107 RET_LABEL132
:(void)0;
5113 { /* Inline loader#SourceFile#mmodule (var_source) on <var_source:nullable SourceFile(SourceFile)> */
5114 var137
= var_source
->attrs
[COLOR_nit__loader__SourceFile___mmodule
].val
; /* _mmodule on <var_source:nullable SourceFile(SourceFile)> */
5116 RET_LABEL136
:(void)0;
5119 if (var135
== NULL
) {
5120 var138
= 1; /* is null */
5122 var138
= 0; /* arg is null but recv is not */
5125 { /* Inline kernel#Object#== (var135,((val*)NULL)) on <var135:nullable MModule> */
5126 var_other77
= ((val
*)NULL
);
5128 { /* Inline kernel#Object#is_same_instance (var135,var_other77) on <var135:nullable MModule(MModule)> */
5129 var143
= var135
== var_other77
;
5132 RET_LABEL142
:(void)0;
5137 RET_LABEL140
:(void)0;
5141 if (unlikely(!var138
)) {
5142 PRINT_ERROR("Runtime error: %s", "Assert failed");
5143 PRINT_ERROR(" (%s:%d)\n", FILE_nit__loader
, 658);
5147 { /* Inline loader#SourceFile#mmodule= (var_source,var_mmodule) on <var_source:nullable SourceFile(SourceFile)> */
5148 var_source
->attrs
[COLOR_nit__loader__SourceFile___mmodule
].val
= var_mmodule
; /* _mmodule on <var_source:nullable SourceFile(SourceFile)> */
5149 RET_LABEL144
:(void)0;
5154 if (var_decl
== NULL
) {
5155 var145
= 0; /* is null */
5157 var145
= 1; /* arg is null and recv is not */
5160 { /* Inline kernel#Object#!= (var_decl,((val*)NULL)) on <var_decl:nullable AModuledecl> */
5161 var_other
= ((val
*)NULL
);
5163 var148
= ((short int(*)(val
* self
, val
* p0
))(var_decl
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_decl
, var_other
); /* == on <var_decl:nullable AModuledecl(AModuledecl)>*/
5168 RET_LABEL147
:(void)0;
5174 { /* Inline parser_nodes#ADefinition#n_doc (var_decl) on <var_decl:nullable AModuledecl(AModuledecl)> */
5175 var152
= var_decl
->attrs
[COLOR_nit__parser_nodes__ADefinition___n_doc
].val
; /* _n_doc on <var_decl:nullable AModuledecl(AModuledecl)> */
5177 RET_LABEL151
:(void)0;
5181 if (var_ndoc
== NULL
) {
5182 var153
= 0; /* is null */
5184 var153
= 1; /* arg is null and recv is not */
5187 { /* Inline kernel#Object#!= (var_ndoc,((val*)NULL)) on <var_ndoc:nullable ADoc> */
5188 var_other
= ((val
*)NULL
);
5190 var156
= ((short int(*)(val
* self
, val
* p0
))(var_ndoc
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_ndoc
, var_other
); /* == on <var_ndoc:nullable ADoc(ADoc)>*/
5195 RET_LABEL155
:(void)0;
5201 var158
= nit__modelbuilder_base___ADoc___to_mdoc(var_ndoc
);
5205 { /* Inline mdoc#MEntity#mdoc= (var_mmodule,var_mdoc) on <var_mmodule:MModule> */
5206 var_mmodule
->attrs
[COLOR_nit__mdoc__MEntity___mdoc
].val
= var_mdoc
; /* _mdoc on <var_mmodule:MModule> */
5207 RET_LABEL159
:(void)0;
5211 { /* Inline mdoc#MDoc#original_mentity= (var_mdoc,var_mmodule) on <var_mdoc:MDoc> */
5212 var_mdoc
->attrs
[COLOR_nit__mdoc__MDoc___original_mentity
].val
= var_mmodule
; /* _original_mentity on <var_mdoc:MDoc> */
5213 RET_LABEL160
:(void)0;
5217 if (likely(varonce161
!=NULL
)) {
5218 var162
= varonce161
;
5220 var163
= "missing-doc";
5221 var164
= standard___standard__NativeString___to_s_with_length(var163
, 11l);
5223 varonce161
= var162
;
5225 if (unlikely(varonce165
==NULL
)) {
5226 var166
= NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String
);
5227 if (likely(varonce167
!=NULL
)) {
5228 var168
= varonce167
;
5230 var169
= "Documentation warning: Undocumented module `";
5231 var170
= standard___standard__NativeString___to_s_with_length(var169
, 44l);
5233 varonce167
= var168
;
5235 ((struct instance_standard__NativeArray
*)var166
)->values
[0]=var168
;
5236 if (likely(varonce171
!=NULL
)) {
5237 var172
= varonce171
;
5240 var174
= standard___standard__NativeString___to_s_with_length(var173
, 1l);
5242 varonce171
= var172
;
5244 ((struct instance_standard__NativeArray
*)var166
)->values
[2]=var172
;
5246 var166
= varonce165
;
5250 var175
= ((val
*(*)(val
* self
))(var_mmodule
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_mmodule
); /* to_s on <var_mmodule:MModule>*/
5252 ((struct instance_standard__NativeArray
*)var166
)->values
[1]=var175
;
5254 var176
= ((val
*(*)(val
* self
))(var166
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var166
); /* native_to_s on <var166:NativeArray[String]>*/
5256 varonce165
= var166
;
5258 nit___nit__ModelBuilder___advice(self
, var_decl
, var162
, var176
); /* Direct call modelbuilder_base#ModelBuilder#advice on <self:ModelBuilder>*/
5261 if (likely(varonce177
!=NULL
)) {
5262 var178
= varonce177
;
5264 var179
= "test_suite";
5265 var180
= standard___standard__NativeString___to_s_with_length(var179
, 10l);
5267 varonce177
= var178
;
5270 var181
= nit___nit__Prod___get_annotations(var_decl
, var178
);
5273 var182
= standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__is_empty(var181
);
5277 { /* Inline mmodule#MModule#is_test_suite= (var_mmodule,var183) on <var_mmodule:MModule> */
5278 var_mmodule
->attrs
[COLOR_nit__mmodule__MModule___is_test_suite
].s
= var183
; /* _is_test_suite on <var_mmodule:MModule> */
5279 RET_LABEL184
:(void)0;
5289 /* method loader#ModelBuilder#build_module_importation for (self: ModelBuilder, AModule) */
5290 void nit__loader___ModelBuilder___build_module_importation(val
* self
, val
* p0
) {
5291 val
* var_nmodule
/* var nmodule: AModule */;
5292 short int var
/* : Bool */;
5293 short int var2
/* : Bool */;
5294 val
* var4
/* : nullable MModule */;
5295 val
* var6
/* : nullable MModule */;
5296 val
* var_mmodule
/* var mmodule: MModule */;
5297 short int var_stdimport
/* var stdimport: Bool */;
5298 val
* var7
/* : Array[MModule] */;
5299 val
* var_imported_modules
/* var imported_modules: Array[MModule] */;
5300 val
* var8
/* : ANodes[AImport] */;
5301 val
* var10
/* : ANodes[AImport] */;
5302 val
* var_
/* var : ANodes[AImport] */;
5303 val
* var11
/* : Iterator[ANode] */;
5304 val
* var_12
/* var : Iterator[AImport] */;
5305 short int var13
/* : Bool */;
5306 val
* var14
/* : nullable Object */;
5307 val
* var_aimport
/* var aimport: AImport */;
5308 short int var15
/* : Bool */;
5311 short int var16
/* : Bool */;
5312 val
* var17
/* : nullable MGroup */;
5313 val
* var19
/* : nullable MGroup */;
5314 val
* var_mgroup
/* var mgroup: nullable MGroup */;
5315 val
* var20
/* : AModuleName */;
5316 val
* var22
/* : AModuleName */;
5317 val
* var23
/* : nullable TQuad */;
5318 val
* var25
/* : nullable TQuad */;
5319 short int var26
/* : Bool */;
5320 short int var27
/* : Bool */;
5321 val
* var_other
/* var other: nullable Object */;
5322 short int var29
/* : Bool */;
5323 short int var30
/* : Bool */;
5324 val
* var31
/* : AModuleName */;
5325 val
* var33
/* : AModuleName */;
5326 val
* var34
/* : ANodes[TId] */;
5327 val
* var36
/* : ANodes[TId] */;
5328 val
* var_37
/* var : ANodes[TId] */;
5329 val
* var38
/* : Iterator[ANode] */;
5330 val
* var_39
/* var : Iterator[TId] */;
5331 short int var40
/* : Bool */;
5332 val
* var41
/* : nullable Object */;
5333 val
* var_grp
/* var grp: TId */;
5334 val
* var42
/* : String */;
5335 val
* var43
/* : nullable ModulePath */;
5336 val
* var_path
/* var path: nullable ModulePath */;
5337 short int var44
/* : Bool */;
5338 short int var45
/* : Bool */;
5339 val
* var_other47
/* var other: nullable Object */;
5340 short int var48
/* : Bool */;
5341 short int var50
/* : Bool */;
5342 val
* var52
/* : MGroup */;
5343 val
* var54
/* : MGroup */;
5344 val
* var56
/* : AModuleName */;
5345 val
* var58
/* : AModuleName */;
5346 val
* var59
/* : TId */;
5347 val
* var61
/* : TId */;
5348 val
* var62
/* : String */;
5349 val
* var_mod_name
/* var mod_name: String */;
5350 val
* var63
/* : AModuleName */;
5351 val
* var65
/* : AModuleName */;
5352 val
* var66
/* : nullable MModule */;
5353 val
* var_sup
/* var sup: nullable MModule */;
5354 short int var67
/* : Bool */;
5355 short int var68
/* : Bool */;
5356 short int var70
/* : Bool */;
5357 short int var72
/* : Bool */;
5358 val
* var75
/* : AVisibility */;
5359 val
* var77
/* : AVisibility */;
5360 val
* var78
/* : MVisibility */;
5361 val
* var_mvisibility
/* var mvisibility: MVisibility */;
5362 val
* var79
/* : Sys */;
5363 val
* var80
/* : MVisibility */;
5364 short int var81
/* : Bool */;
5365 short int var83
/* : Bool */;
5366 short int var85
/* : Bool */;
5367 val
* var86
/* : AVisibility */;
5368 val
* var88
/* : AVisibility */;
5369 static val
* varonce
;
5370 val
* var89
/* : String */;
5371 char* var90
/* : NativeString */;
5372 val
* var91
/* : FlatString */;
5373 short int var93
/* : Bool */;
5374 short int var95
/* : Bool */;
5375 short int var97
/* : Bool */;
5376 val
* var98
/* : AModuleName */;
5377 val
* var100
/* : AModuleName */;
5378 val
* var102
/* : NativeArray[String] */;
5379 static val
* varonce101
;
5380 static val
* varonce103
;
5381 val
* var104
/* : String */;
5382 char* var105
/* : NativeString */;
5383 val
* var106
/* : FlatString */;
5384 static val
* varonce107
;
5385 val
* var108
/* : String */;
5386 char* var109
/* : NativeString */;
5387 val
* var110
/* : FlatString */;
5388 val
* var111
/* : String */;
5389 val
* var112
/* : String */;
5390 val
* var114
/* : POSetElement[MModule] */;
5391 val
* var116
/* : POSetElement[MModule] */;
5392 short int var117
/* : Bool */;
5393 val
* var118
/* : AModuleName */;
5394 val
* var120
/* : AModuleName */;
5395 val
* var122
/* : NativeArray[String] */;
5396 static val
* varonce121
;
5397 static val
* varonce123
;
5398 val
* var124
/* : String */;
5399 char* var125
/* : NativeString */;
5400 val
* var126
/* : FlatString */;
5401 static val
* varonce127
;
5402 val
* var128
/* : String */;
5403 char* var129
/* : NativeString */;
5404 val
* var130
/* : FlatString */;
5405 static val
* varonce131
;
5406 val
* var132
/* : String */;
5407 char* var133
/* : NativeString */;
5408 val
* var134
/* : FlatString */;
5409 val
* var135
/* : String */;
5410 val
* var136
/* : String */;
5411 val
* var137
/* : String */;
5412 static val
* varonce140
;
5413 val
* var141
/* : String */;
5414 char* var142
/* : NativeString */;
5415 val
* var143
/* : FlatString */;
5416 val
* var_mod_name144
/* var mod_name: String */;
5417 val
* var145
/* : nullable MModule */;
5418 val
* var_sup146
/* var sup: nullable MModule */;
5419 short int var147
/* : Bool */;
5420 short int var148
/* : Bool */;
5421 short int var150
/* : Bool */;
5422 short int var152
/* : Bool */;
5423 val
* var154
/* : Sys */;
5424 val
* var155
/* : MVisibility */;
5425 val
* var156
/* : ToolContext */;
5426 val
* var158
/* : ToolContext */;
5427 val
* var160
/* : NativeArray[String] */;
5428 static val
* varonce159
;
5429 static val
* varonce161
;
5430 val
* var162
/* : String */;
5431 char* var163
/* : NativeString */;
5432 val
* var164
/* : FlatString */;
5433 val
* var165
/* : String */;
5434 static val
* varonce166
;
5435 val
* var167
/* : String */;
5436 char* var168
/* : NativeString */;
5437 val
* var169
/* : FlatString */;
5438 val
* var170
/* : String */;
5439 val
* var171
/* : String */;
5440 val
* var172
/* : POSetElement[MModule] */;
5441 val
* var174
/* : POSetElement[MModule] */;
5442 val
* var175
/* : Collection[nullable Object] */;
5443 val
* var_176
/* var : Collection[MModule] */;
5444 val
* var177
/* : Iterator[nullable Object] */;
5445 val
* var_178
/* var : Iterator[MModule] */;
5446 short int var179
/* : Bool */;
5447 val
* var180
/* : nullable Object */;
5448 val
* var_sup181
/* var sup: MModule */;
5449 val
* var182
/* : String */;
5450 val
* var184
/* : String */;
5451 static val
* varonce185
;
5452 val
* var186
/* : String */;
5453 char* var187
/* : NativeString */;
5454 val
* var188
/* : FlatString */;
5455 short int var189
/* : Bool */;
5456 val
* var190
/* : Sys */;
5457 val
* var191
/* : MVisibility */;
5458 val
* var193
/* : POSetElement[MModule] */;
5459 val
* var195
/* : POSetElement[MModule] */;
5460 val
* var196
/* : Collection[nullable Object] */;
5461 val
* var_directs
/* var directs: Collection[MModule] */;
5462 val
* var197
/* : ANodes[AImport] */;
5463 val
* var199
/* : ANodes[AImport] */;
5464 val
* var_200
/* var : ANodes[AImport] */;
5465 val
* var201
/* : Iterator[ANode] */;
5466 val
* var_202
/* var : Iterator[AImport] */;
5467 short int var203
/* : Bool */;
5468 val
* var204
/* : nullable Object */;
5469 val
* var_nim
/* var nim: AImport */;
5470 short int var205
/* : Bool */;
5473 short int var208
/* : Bool */;
5474 val
* var210
/* : nullable MModule */;
5475 val
* var212
/* : nullable MModule */;
5476 val
* var_im
/* var im: nullable MModule */;
5477 short int var213
/* : Bool */;
5478 short int var214
/* : Bool */;
5479 short int var216
/* : Bool */;
5480 short int var218
/* : Bool */;
5481 short int var219
/* : Bool */;
5484 { /* Inline loader#AModule#is_importation_done (var_nmodule) on <var_nmodule:AModule> */
5485 var2
= var_nmodule
->attrs
[COLOR_nit__loader__AModule___is_importation_done
].s
; /* _is_importation_done on <var_nmodule:AModule> */
5495 { /* Inline loader#AModule#is_importation_done= (var_nmodule,1) on <var_nmodule:AModule> */
5496 var_nmodule
->attrs
[COLOR_nit__loader__AModule___is_importation_done
].s
= 1; /* _is_importation_done on <var_nmodule:AModule> */
5501 { /* Inline loader#AModule#mmodule (var_nmodule) on <var_nmodule:AModule> */
5502 var6
= var_nmodule
->attrs
[COLOR_nit__loader__AModule___mmodule
].val
; /* _mmodule on <var_nmodule:AModule> */
5507 if (unlikely(var4
== NULL
)) {
5508 PRINT_ERROR("Runtime error: %s", "Cast failed");
5509 PRINT_ERROR(" (%s:%d)\n", FILE_nit__loader
, 686);
5514 var7
= NEW_standard__Array(&type_standard__Array__nit__MModule
);
5516 standard___standard__Array___standard__kernel__Object__init(var7
); /* Direct call array#Array#init on <var7:Array[MModule]>*/
5518 var_imported_modules
= var7
;
5520 { /* Inline parser_nodes#AModule#n_imports (var_nmodule) on <var_nmodule:AModule> */
5521 var10
= var_nmodule
->attrs
[COLOR_nit__parser_nodes__AModule___n_imports
].val
; /* _n_imports on <var_nmodule:AModule> */
5522 if (unlikely(var10
== NULL
)) {
5523 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_imports");
5524 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes
, 1090);
5533 var11
= nit___nit__ANodes___standard__abstract_collection__Collection__iterator(var_
);
5538 var13
= ((short int(*)(val
* self
))((((long)var_12
&3)?class_info
[((long)var_12
&3)]:var_12
->class)->vft
[COLOR_standard__abstract_collection__Iterator__is_ok
]))(var_12
); /* is_ok on <var_12:Iterator[AImport]>*/
5542 var14
= ((val
*(*)(val
* self
))((((long)var_12
&3)?class_info
[((long)var_12
&3)]:var_12
->class)->vft
[COLOR_standard__abstract_collection__Iterator__item
]))(var_12
); /* item on <var_12:Iterator[AImport]>*/
5544 var_aimport
= var14
;
5546 /* <var_aimport:AImport> isa AStdImport */
5547 cltype
= type_nit__AStdImport
.color
;
5548 idtype
= type_nit__AStdImport
.id
;
5549 if(cltype
>= var_aimport
->type
->table_size
) {
5552 var15
= var_aimport
->type
->type_table
[cltype
] == idtype
;
5560 { /* Inline mmodule#MModule#mgroup (var_mmodule) on <var_mmodule:MModule> */
5561 var19
= var_mmodule
->attrs
[COLOR_nit__mmodule__MModule___mgroup
].val
; /* _mgroup on <var_mmodule:MModule> */
5563 RET_LABEL18
:(void)0;
5568 { /* Inline parser_nodes#AStdImport#n_name (var_aimport) on <var_aimport:AImport(AStdImport)> */
5569 var22
= var_aimport
->attrs
[COLOR_nit__parser_nodes__AStdImport___n_name
].val
; /* _n_name on <var_aimport:AImport(AStdImport)> */
5570 if (unlikely(var22
== NULL
)) {
5571 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_name");
5572 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes
, 1138);
5576 RET_LABEL21
:(void)0;
5580 { /* Inline parser_nodes#AModuleName#n_quad (var20) on <var20:AModuleName> */
5581 var25
= var20
->attrs
[COLOR_nit__parser_nodes__AModuleName___n_quad
].val
; /* _n_quad on <var20:AModuleName> */
5583 RET_LABEL24
:(void)0;
5586 if (var23
== NULL
) {
5587 var26
= 0; /* is null */
5589 var26
= 1; /* arg is null and recv is not */
5592 { /* Inline kernel#Object#!= (var23,((val*)NULL)) on <var23:nullable TQuad> */
5593 var_other
= ((val
*)NULL
);
5595 var29
= ((short int(*)(val
* self
, val
* p0
))(var23
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var23
, var_other
); /* == on <var23:nullable TQuad(TQuad)>*/
5600 RET_LABEL28
:(void)0;
5605 var_mgroup
= ((val
*)NULL
);
5609 { /* Inline parser_nodes#AStdImport#n_name (var_aimport) on <var_aimport:AImport(AStdImport)> */
5610 var33
= var_aimport
->attrs
[COLOR_nit__parser_nodes__AStdImport___n_name
].val
; /* _n_name on <var_aimport:AImport(AStdImport)> */
5611 if (unlikely(var33
== NULL
)) {
5612 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_name");
5613 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes
, 1138);
5617 RET_LABEL32
:(void)0;
5621 { /* Inline parser_nodes#AModuleName#n_path (var31) on <var31:AModuleName> */
5622 var36
= var31
->attrs
[COLOR_nit__parser_nodes__AModuleName___n_path
].val
; /* _n_path on <var31:AModuleName> */
5623 if (unlikely(var36
== NULL
)) {
5624 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_path");
5625 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes
, 2897);
5629 RET_LABEL35
:(void)0;
5634 var38
= nit___nit__ANodes___standard__abstract_collection__Collection__iterator(var_37
);
5639 var40
= ((short int(*)(val
* self
))((((long)var_39
&3)?class_info
[((long)var_39
&3)]:var_39
->class)->vft
[COLOR_standard__abstract_collection__Iterator__is_ok
]))(var_39
); /* is_ok on <var_39:Iterator[TId]>*/
5643 var41
= ((val
*(*)(val
* self
))((((long)var_39
&3)?class_info
[((long)var_39
&3)]:var_39
->class)->vft
[COLOR_standard__abstract_collection__Iterator__item
]))(var_39
); /* item on <var_39:Iterator[TId]>*/
5647 var42
= nit__lexer_work___Token___text(var_grp
);
5650 var43
= nit__loader___ModelBuilder___search_mmodule_by_name(self
, var_grp
, var_mgroup
, var42
);
5653 if (var_path
== NULL
) {
5654 var44
= 1; /* is null */
5656 var44
= 0; /* arg is null but recv is not */
5659 { /* Inline kernel#Object#== (var_path,((val*)NULL)) on <var_path:nullable ModulePath> */
5660 var_other47
= ((val
*)NULL
);
5662 { /* Inline kernel#Object#is_same_instance (var_path,var_other47) on <var_path:nullable ModulePath(ModulePath)> */
5663 var50
= var_path
== var_other47
;
5666 RET_LABEL49
:(void)0;
5671 RET_LABEL46
:(void)0;
5677 { /* Inline loader#AModule#mmodule= (var_nmodule,((val*)NULL)) on <var_nmodule:AModule> */
5678 var_nmodule
->attrs
[COLOR_nit__loader__AModule___mmodule
].val
= ((val
*)NULL
); /* _mmodule on <var_nmodule:AModule> */
5679 RET_LABEL51
:(void)0;
5686 { /* Inline loader#ModulePath#mgroup (var_path) on <var_path:nullable ModulePath(ModulePath)> */
5687 var54
= var_path
->attrs
[COLOR_nit__loader__ModulePath___mgroup
].val
; /* _mgroup on <var_path:nullable ModulePath(ModulePath)> */
5688 if (unlikely(var54
== NULL
)) {
5689 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mgroup");
5690 PRINT_ERROR(" (%s:%d)\n", FILE_nit__loader
, 789);
5694 RET_LABEL53
:(void)0;
5699 ((void(*)(val
* self
))((((long)var_39
&3)?class_info
[((long)var_39
&3)]:var_39
->class)->vft
[COLOR_standard__abstract_collection__Iterator__next
]))(var_39
); /* next on <var_39:Iterator[TId]>*/
5705 BREAK_label55
: (void)0;
5707 ((void(*)(val
* self
))((((long)var_39
&3)?class_info
[((long)var_39
&3)]:var_39
->class)->vft
[COLOR_standard__abstract_collection__Iterator__finish
]))(var_39
); /* finish on <var_39:Iterator[TId]>*/
5710 { /* Inline parser_nodes#AStdImport#n_name (var_aimport) on <var_aimport:AImport(AStdImport)> */
5711 var58
= var_aimport
->attrs
[COLOR_nit__parser_nodes__AStdImport___n_name
].val
; /* _n_name on <var_aimport:AImport(AStdImport)> */
5712 if (unlikely(var58
== NULL
)) {
5713 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_name");
5714 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes
, 1138);
5718 RET_LABEL57
:(void)0;
5722 { /* Inline parser_nodes#AModuleName#n_id (var56) on <var56:AModuleName> */
5723 var61
= var56
->attrs
[COLOR_nit__parser_nodes__AModuleName___n_id
].val
; /* _n_id on <var56:AModuleName> */
5724 if (unlikely(var61
== NULL
)) {
5725 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id");
5726 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes
, 2900);
5730 RET_LABEL60
:(void)0;
5734 var62
= nit__lexer_work___Token___text(var59
);
5736 var_mod_name
= var62
;
5738 { /* Inline parser_nodes#AStdImport#n_name (var_aimport) on <var_aimport:AImport(AStdImport)> */
5739 var65
= var_aimport
->attrs
[COLOR_nit__parser_nodes__AStdImport___n_name
].val
; /* _n_name on <var_aimport:AImport(AStdImport)> */
5740 if (unlikely(var65
== NULL
)) {
5741 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_name");
5742 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes
, 1138);
5746 RET_LABEL64
:(void)0;
5750 var66
= nit__loader___ModelBuilder___get_mmodule_by_name(self
, var63
, var_mgroup
, var_mod_name
);
5753 if (var_sup
== NULL
) {
5754 var67
= 1; /* is null */
5756 var67
= 0; /* arg is null but recv is not */
5759 { /* Inline kernel#Object#== (var_sup,((val*)NULL)) on <var_sup:nullable MModule> */
5760 var_other47
= ((val
*)NULL
);
5762 { /* Inline kernel#Object#is_same_instance (var_sup,var_other47) on <var_sup:nullable MModule(MModule)> */
5763 var72
= var_sup
== var_other47
;
5766 RET_LABEL71
:(void)0;
5771 RET_LABEL69
:(void)0;
5777 { /* Inline loader#AModule#mmodule= (var_nmodule,((val*)NULL)) on <var_nmodule:AModule> */
5778 var_nmodule
->attrs
[COLOR_nit__loader__AModule___mmodule
].val
= ((val
*)NULL
); /* _mmodule on <var_nmodule:AModule> */
5779 RET_LABEL73
:(void)0;
5786 { /* Inline loader#AStdImport#mmodule= (var_aimport,var_sup) on <var_aimport:AImport(AStdImport)> */
5787 var_aimport
->attrs
[COLOR_nit__loader__AStdImport___mmodule
].val
= var_sup
; /* _mmodule on <var_aimport:AImport(AStdImport)> */
5788 RET_LABEL74
:(void)0;
5792 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_imported_modules
, var_sup
); /* Direct call array#Array#add on <var_imported_modules:Array[MModule]>*/
5795 { /* Inline parser_nodes#AImport#n_visibility (var_aimport) on <var_aimport:AImport(AStdImport)> */
5796 var77
= var_aimport
->attrs
[COLOR_nit__parser_nodes__AImport___n_visibility
].val
; /* _n_visibility on <var_aimport:AImport(AStdImport)> */
5797 if (unlikely(var77
== NULL
)) {
5798 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_visibility");
5799 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes
, 1128);
5803 RET_LABEL76
:(void)0;
5807 var78
= ((val
*(*)(val
* self
))(var75
->class->vft
[COLOR_nit__modelbuilder_base__AVisibility__mvisibility
]))(var75
); /* mvisibility on <var75:AVisibility>*/
5809 var_mvisibility
= var78
;
5812 var80
= nit__model_base___standard__Sys___protected_visibility(var79
);
5815 { /* Inline kernel#Object#== (var_mvisibility,var80) on <var_mvisibility:MVisibility> */
5816 var_other47
= var80
;
5818 { /* Inline kernel#Object#is_same_instance (var_mvisibility,var_other47) on <var_mvisibility:MVisibility> */
5819 var85
= var_mvisibility
== var_other47
;
5822 RET_LABEL84
:(void)0;
5827 RET_LABEL82
:(void)0;
5832 { /* Inline parser_nodes#AImport#n_visibility (var_aimport) on <var_aimport:AImport(AStdImport)> */
5833 var88
= var_aimport
->attrs
[COLOR_nit__parser_nodes__AImport___n_visibility
].val
; /* _n_visibility on <var_aimport:AImport(AStdImport)> */
5834 if (unlikely(var88
== NULL
)) {
5835 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_visibility");
5836 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes
, 1128);
5840 RET_LABEL87
:(void)0;
5843 if (likely(varonce
!=NULL
)) {
5846 var90
= "Error: only properties can be protected.";
5847 var91
= standard___standard__NativeString___to_s_with_length(var90
, 40l);
5852 nit___nit__ModelBuilder___error(self
, var86
, var89
); /* Direct call modelbuilder_base#ModelBuilder#error on <self:ModelBuilder>*/
5855 { /* Inline loader#AModule#mmodule= (var_nmodule,((val*)NULL)) on <var_nmodule:AModule> */
5856 var_nmodule
->attrs
[COLOR_nit__loader__AModule___mmodule
].val
= ((val
*)NULL
); /* _mmodule on <var_nmodule:AModule> */
5857 RET_LABEL92
:(void)0;
5864 { /* Inline kernel#Object#== (var_sup,var_mmodule) on <var_sup:nullable MModule(MModule)> */
5865 var_other47
= var_mmodule
;
5867 { /* Inline kernel#Object#is_same_instance (var_sup,var_other47) on <var_sup:nullable MModule(MModule)> */
5868 var97
= var_sup
== var_other47
;
5871 RET_LABEL96
:(void)0;
5876 RET_LABEL94
:(void)0;
5881 { /* Inline parser_nodes#AStdImport#n_name (var_aimport) on <var_aimport:AImport(AStdImport)> */
5882 var100
= var_aimport
->attrs
[COLOR_nit__parser_nodes__AStdImport___n_name
].val
; /* _n_name on <var_aimport:AImport(AStdImport)> */
5883 if (unlikely(var100
== NULL
)) {
5884 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_name");
5885 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes
, 1138);
5889 RET_LABEL99
:(void)0;
5892 if (unlikely(varonce101
==NULL
)) {
5893 var102
= NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String
);
5894 if (likely(varonce103
!=NULL
)) {
5895 var104
= varonce103
;
5897 var105
= "Error: dependency loop in module ";
5898 var106
= standard___standard__NativeString___to_s_with_length(var105
, 33l);
5900 varonce103
= var104
;
5902 ((struct instance_standard__NativeArray
*)var102
)->values
[0]=var104
;
5903 if (likely(varonce107
!=NULL
)) {
5904 var108
= varonce107
;
5907 var110
= standard___standard__NativeString___to_s_with_length(var109
, 1l);
5909 varonce107
= var108
;
5911 ((struct instance_standard__NativeArray
*)var102
)->values
[2]=var108
;
5913 var102
= varonce101
;
5917 var111
= ((val
*(*)(val
* self
))(var_mmodule
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_mmodule
); /* to_s on <var_mmodule:MModule>*/
5919 ((struct instance_standard__NativeArray
*)var102
)->values
[1]=var111
;
5921 var112
= ((val
*(*)(val
* self
))(var102
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var102
); /* native_to_s on <var102:NativeArray[String]>*/
5923 varonce101
= var102
;
5925 nit___nit__ModelBuilder___error(self
, var98
, var112
); /* Direct call modelbuilder_base#ModelBuilder#error on <self:ModelBuilder>*/
5928 { /* Inline loader#AModule#mmodule= (var_nmodule,((val*)NULL)) on <var_nmodule:AModule> */
5929 var_nmodule
->attrs
[COLOR_nit__loader__AModule___mmodule
].val
= ((val
*)NULL
); /* _mmodule on <var_nmodule:AModule> */
5930 RET_LABEL113
:(void)0;
5936 { /* Inline mmodule#MModule#in_importation (var_sup) on <var_sup:nullable MModule(MModule)> */
5937 var116
= var_sup
->attrs
[COLOR_nit__mmodule__MModule___in_importation
].val
; /* _in_importation on <var_sup:nullable MModule(MModule)> */
5938 if (unlikely(var116
== NULL
)) {
5939 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _in_importation");
5940 PRINT_ERROR(" (%s:%d)\n", FILE_nit__mmodule
, 96);
5944 RET_LABEL115
:(void)0;
5948 var117
= poset___poset__POSetElement____60d(var114
, var_mmodule
);
5952 { /* Inline parser_nodes#AStdImport#n_name (var_aimport) on <var_aimport:AImport(AStdImport)> */
5953 var120
= var_aimport
->attrs
[COLOR_nit__parser_nodes__AStdImport___n_name
].val
; /* _n_name on <var_aimport:AImport(AStdImport)> */
5954 if (unlikely(var120
== NULL
)) {
5955 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_name");
5956 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes
, 1138);
5960 RET_LABEL119
:(void)0;
5963 if (unlikely(varonce121
==NULL
)) {
5964 var122
= NEW_standard__NativeArray(5l, &type_standard__NativeArray__standard__String
);
5965 if (likely(varonce123
!=NULL
)) {
5966 var124
= varonce123
;
5968 var125
= "Error: dependency loop between modules ";
5969 var126
= standard___standard__NativeString___to_s_with_length(var125
, 39l);
5971 varonce123
= var124
;
5973 ((struct instance_standard__NativeArray
*)var122
)->values
[0]=var124
;
5974 if (likely(varonce127
!=NULL
)) {
5975 var128
= varonce127
;
5978 var130
= standard___standard__NativeString___to_s_with_length(var129
, 5l);
5980 varonce127
= var128
;
5982 ((struct instance_standard__NativeArray
*)var122
)->values
[2]=var128
;
5983 if (likely(varonce131
!=NULL
)) {
5984 var132
= varonce131
;
5987 var134
= standard___standard__NativeString___to_s_with_length(var133
, 1l);
5989 varonce131
= var132
;
5991 ((struct instance_standard__NativeArray
*)var122
)->values
[4]=var132
;
5993 var122
= varonce121
;
5997 var135
= ((val
*(*)(val
* self
))(var_mmodule
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_mmodule
); /* to_s on <var_mmodule:MModule>*/
5999 ((struct instance_standard__NativeArray
*)var122
)->values
[1]=var135
;
6001 var136
= ((val
*(*)(val
* self
))(var_sup
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_sup
); /* to_s on <var_sup:nullable MModule(MModule)>*/
6003 ((struct instance_standard__NativeArray
*)var122
)->values
[3]=var136
;
6005 var137
= ((val
*(*)(val
* self
))(var122
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var122
); /* native_to_s on <var122:NativeArray[String]>*/
6007 varonce121
= var122
;
6009 nit___nit__ModelBuilder___error(self
, var118
, var137
); /* Direct call modelbuilder_base#ModelBuilder#error on <self:ModelBuilder>*/
6012 { /* Inline loader#AModule#mmodule= (var_nmodule,((val*)NULL)) on <var_nmodule:AModule> */
6013 var_nmodule
->attrs
[COLOR_nit__loader__AModule___mmodule
].val
= ((val
*)NULL
); /* _mmodule on <var_nmodule:AModule> */
6014 RET_LABEL138
:(void)0;
6021 nit___nit__MModule___set_visibility_for(var_mmodule
, var_sup
, var_mvisibility
); /* Direct call mmodule#MModule#set_visibility_for on <var_mmodule:MModule>*/
6023 BREAK_label
: (void)0;
6025 ((void(*)(val
* self
))((((long)var_12
&3)?class_info
[((long)var_12
&3)]:var_12
->class)->vft
[COLOR_standard__abstract_collection__Iterator__next
]))(var_12
); /* next on <var_12:Iterator[AImport]>*/
6028 goto BREAK_label139
;
6031 BREAK_label139
: (void)0;
6033 ((void(*)(val
* self
))((((long)var_12
&3)?class_info
[((long)var_12
&3)]:var_12
->class)->vft
[COLOR_standard__abstract_collection__Iterator__finish
]))(var_12
); /* finish on <var_12:Iterator[AImport]>*/
6036 if (likely(varonce140
!=NULL
)) {
6037 var141
= varonce140
;
6039 var142
= "standard";
6040 var143
= standard___standard__NativeString___to_s_with_length(var142
, 8l);
6042 varonce140
= var141
;
6044 var_mod_name144
= var141
;
6046 var145
= nit__loader___ModelBuilder___get_mmodule_by_name(self
, var_nmodule
, ((val
*)NULL
), var_mod_name144
);
6048 var_sup146
= var145
;
6049 if (var_sup146
== NULL
) {
6050 var147
= 1; /* is null */
6052 var147
= 0; /* arg is null but recv is not */
6055 { /* Inline kernel#Object#== (var_sup146,((val*)NULL)) on <var_sup146:nullable MModule> */
6056 var_other47
= ((val
*)NULL
);
6058 { /* Inline kernel#Object#is_same_instance (var_sup146,var_other47) on <var_sup146:nullable MModule(MModule)> */
6059 var152
= var_sup146
== var_other47
;
6062 RET_LABEL151
:(void)0;
6067 RET_LABEL149
:(void)0;
6073 { /* Inline loader#AModule#mmodule= (var_nmodule,((val*)NULL)) on <var_nmodule:AModule> */
6074 var_nmodule
->attrs
[COLOR_nit__loader__AModule___mmodule
].val
= ((val
*)NULL
); /* _mmodule on <var_nmodule:AModule> */
6075 RET_LABEL153
:(void)0;
6080 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_imported_modules
, var_sup146
); /* Direct call array#Array#add on <var_imported_modules:Array[MModule]>*/
6084 var155
= nit__model_base___standard__Sys___public_visibility(var154
);
6087 nit___nit__MModule___set_visibility_for(var_mmodule
, var_sup146
, var155
); /* Direct call mmodule#MModule#set_visibility_for on <var_mmodule:MModule>*/
6093 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (self) on <self:ModelBuilder> */
6094 var158
= self
->attrs
[COLOR_nit__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <self:ModelBuilder> */
6095 if (unlikely(var158
== NULL
)) {
6096 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
6097 PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base
, 47);
6101 RET_LABEL157
:(void)0;
6104 if (unlikely(varonce159
==NULL
)) {
6105 var160
= NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String
);
6106 if (likely(varonce161
!=NULL
)) {
6107 var162
= varonce161
;
6109 var163
= " imports ";
6110 var164
= standard___standard__NativeString___to_s_with_length(var163
, 9l);
6112 varonce161
= var162
;
6114 ((struct instance_standard__NativeArray
*)var160
)->values
[1]=var162
;
6116 var160
= varonce159
;
6120 var165
= ((val
*(*)(val
* self
))(var_mmodule
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_mmodule
); /* to_s on <var_mmodule:MModule>*/
6122 ((struct instance_standard__NativeArray
*)var160
)->values
[0]=var165
;
6123 if (likely(varonce166
!=NULL
)) {
6124 var167
= varonce166
;
6127 var169
= standard___standard__NativeString___to_s_with_length(var168
, 2l);
6129 varonce166
= var167
;
6132 var170
= standard__string___Collection___join(var_imported_modules
, var167
);
6134 ((struct instance_standard__NativeArray
*)var160
)->values
[2]=var170
;
6136 var171
= ((val
*(*)(val
* self
))(var160
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var160
); /* native_to_s on <var160:NativeArray[String]>*/
6138 varonce159
= var160
;
6140 nit___nit__ToolContext___info(var156
, var171
, 3l); /* Direct call toolcontext#ToolContext#info on <var156:ToolContext>*/
6143 nit___nit__MModule___set_imported_mmodules(var_mmodule
, var_imported_modules
); /* Direct call mmodule#MModule#set_imported_mmodules on <var_mmodule:MModule>*/
6146 { /* Inline mmodule#MModule#in_importation (var_mmodule) on <var_mmodule:MModule> */
6147 var174
= var_mmodule
->attrs
[COLOR_nit__mmodule__MModule___in_importation
].val
; /* _in_importation on <var_mmodule:MModule> */
6148 if (unlikely(var174
== NULL
)) {
6149 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _in_importation");
6150 PRINT_ERROR(" (%s:%d)\n", FILE_nit__mmodule
, 96);
6154 RET_LABEL173
:(void)0;
6158 var175
= poset___poset__POSetElement___greaters(var172
);
6162 var177
= ((val
*(*)(val
* self
))((((long)var_176
&3)?class_info
[((long)var_176
&3)]:var_176
->class)->vft
[COLOR_standard__abstract_collection__Collection__iterator
]))(var_176
); /* iterator on <var_176:Collection[MModule]>*/
6167 var179
= ((short int(*)(val
* self
))((((long)var_178
&3)?class_info
[((long)var_178
&3)]:var_178
->class)->vft
[COLOR_standard__abstract_collection__Iterator__is_ok
]))(var_178
); /* is_ok on <var_178:Iterator[MModule]>*/
6171 var180
= ((val
*(*)(val
* self
))((((long)var_178
&3)?class_info
[((long)var_178
&3)]:var_178
->class)->vft
[COLOR_standard__abstract_collection__Iterator__item
]))(var_178
); /* item on <var_178:Iterator[MModule]>*/
6173 var_sup181
= var180
;
6175 { /* Inline mmodule#MModule#name (var_sup181) on <var_sup181:MModule> */
6176 var184
= var_sup181
->attrs
[COLOR_nit__mmodule__MModule___name
].val
; /* _name on <var_sup181:MModule> */
6177 if (unlikely(var184
== NULL
)) {
6178 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _name");
6179 PRINT_ERROR(" (%s:%d)\n", FILE_nit__mmodule
, 87);
6183 RET_LABEL183
:(void)0;
6186 if (likely(varonce185
!=NULL
)) {
6187 var186
= varonce185
;
6189 var187
= "standard";
6190 var188
= standard___standard__NativeString___to_s_with_length(var187
, 8l);
6192 varonce185
= var186
;
6195 var189
= ((short int(*)(val
* self
, val
* p0
))(var182
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var182
, var186
); /* == on <var182:String>*/
6200 var191
= nit__model_base___standard__Sys___public_visibility(var190
);
6203 nit___nit__MModule___set_visibility_for(var_mmodule
, var_sup181
, var191
); /* Direct call mmodule#MModule#set_visibility_for on <var_mmodule:MModule>*/
6208 ((void(*)(val
* self
))((((long)var_178
&3)?class_info
[((long)var_178
&3)]:var_178
->class)->vft
[COLOR_standard__abstract_collection__Iterator__next
]))(var_178
); /* next on <var_178:Iterator[MModule]>*/
6211 goto BREAK_label192
;
6214 BREAK_label192
: (void)0;
6216 ((void(*)(val
* self
))((((long)var_178
&3)?class_info
[((long)var_178
&3)]:var_178
->class)->vft
[COLOR_standard__abstract_collection__Iterator__finish
]))(var_178
); /* finish on <var_178:Iterator[MModule]>*/
6219 { /* Inline mmodule#MModule#in_importation (var_mmodule) on <var_mmodule:MModule> */
6220 var195
= var_mmodule
->attrs
[COLOR_nit__mmodule__MModule___in_importation
].val
; /* _in_importation on <var_mmodule:MModule> */
6221 if (unlikely(var195
== NULL
)) {
6222 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _in_importation");
6223 PRINT_ERROR(" (%s:%d)\n", FILE_nit__mmodule
, 96);
6227 RET_LABEL194
:(void)0;
6231 var196
= poset___poset__POSetElement___direct_greaters(var193
);
6233 var_directs
= var196
;
6235 { /* Inline parser_nodes#AModule#n_imports (var_nmodule) on <var_nmodule:AModule> */
6236 var199
= var_nmodule
->attrs
[COLOR_nit__parser_nodes__AModule___n_imports
].val
; /* _n_imports on <var_nmodule:AModule> */
6237 if (unlikely(var199
== NULL
)) {
6238 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_imports");
6239 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes
, 1090);
6243 RET_LABEL198
:(void)0;
6248 var201
= nit___nit__ANodes___standard__abstract_collection__Collection__iterator(var_200
);
6253 var203
= ((short int(*)(val
* self
))((((long)var_202
&3)?class_info
[((long)var_202
&3)]:var_202
->class)->vft
[COLOR_standard__abstract_collection__Iterator__is_ok
]))(var_202
); /* is_ok on <var_202:Iterator[AImport]>*/
6257 var204
= ((val
*(*)(val
* self
))((((long)var_202
&3)?class_info
[((long)var_202
&3)]:var_202
->class)->vft
[COLOR_standard__abstract_collection__Iterator__item
]))(var_202
); /* item on <var_202:Iterator[AImport]>*/
6260 /* <var_nim:AImport> isa AStdImport */
6261 cltype206
= type_nit__AStdImport
.color
;
6262 idtype207
= type_nit__AStdImport
.id
;
6263 if(cltype206
>= var_nim
->type
->table_size
) {
6266 var205
= var_nim
->type
->type_table
[cltype206
] == idtype207
;
6270 goto BREAK_label209
;
6274 { /* Inline loader#AStdImport#mmodule (var_nim) on <var_nim:AImport(AStdImport)> */
6275 var212
= var_nim
->attrs
[COLOR_nit__loader__AStdImport___mmodule
].val
; /* _mmodule on <var_nim:AImport(AStdImport)> */
6277 RET_LABEL211
:(void)0;
6281 if (var_im
== NULL
) {
6282 var213
= 1; /* is null */
6284 var213
= 0; /* arg is null but recv is not */
6287 { /* Inline kernel#Object#== (var_im,((val*)NULL)) on <var_im:nullable MModule> */
6288 var_other47
= ((val
*)NULL
);
6290 { /* Inline kernel#Object#is_same_instance (var_im,var_other47) on <var_im:nullable MModule(MModule)> */
6291 var218
= var_im
== var_other47
;
6294 RET_LABEL217
:(void)0;
6299 RET_LABEL215
:(void)0;
6304 goto BREAK_label209
;
6308 var219
= ((short int(*)(val
* self
, val
* p0
))((((long)var_directs
&3)?class_info
[((long)var_directs
&3)]:var_directs
->class)->vft
[COLOR_standard__abstract_collection__Collection__has
]))(var_directs
, var_im
); /* has on <var_directs:Collection[MModule]>*/
6311 goto BREAK_label209
;
6314 BREAK_label209
: (void)0;
6316 ((void(*)(val
* self
))((((long)var_202
&3)?class_info
[((long)var_202
&3)]:var_202
->class)->vft
[COLOR_standard__abstract_collection__Iterator__next
]))(var_202
); /* next on <var_202:Iterator[AImport]>*/
6319 goto BREAK_label220
;
6322 BREAK_label220
: (void)0;
6324 ((void(*)(val
* self
))((((long)var_202
&3)?class_info
[((long)var_202
&3)]:var_202
->class)->vft
[COLOR_standard__abstract_collection__Iterator__finish
]))(var_202
); /* finish on <var_202:Iterator[AImport]>*/
6328 /* method loader#ModelBuilder#nmodules for (self: ModelBuilder): Array[AModule] */
6329 val
* nit__loader___ModelBuilder___nmodules(val
* self
) {
6330 val
* var
/* : Array[AModule] */;
6331 val
* var1
/* : Array[AModule] */;
6332 var1
= self
->attrs
[COLOR_nit__loader__ModelBuilder___nmodules
].val
; /* _nmodules on <self:ModelBuilder> */
6333 if (unlikely(var1
== NULL
)) {
6334 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _nmodules");
6335 PRINT_ERROR(" (%s:%d)\n", FILE_nit__loader
, 762);
6342 /* method loader#ModelBuilder#mmodule2nmodule for (self: ModelBuilder): HashMap[MModule, AModule] */
6343 val
* nit__loader___ModelBuilder___mmodule2nmodule(val
* self
) {
6344 val
* var
/* : HashMap[MModule, AModule] */;
6345 val
* var1
/* : HashMap[MModule, AModule] */;
6346 var1
= self
->attrs
[COLOR_nit__loader__ModelBuilder___mmodule2nmodule
].val
; /* _mmodule2nmodule on <self:ModelBuilder> */
6347 if (unlikely(var1
== NULL
)) {
6348 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mmodule2nmodule");
6349 PRINT_ERROR(" (%s:%d)\n", FILE_nit__loader
, 765);
6356 /* method loader#ModelBuilder#mmodule2node for (self: ModelBuilder, MModule): nullable AModule */
6357 val
* nit__loader___ModelBuilder___mmodule2node(val
* self
, val
* p0
) {
6358 val
* var
/* : nullable AModule */;
6359 val
* var_mmodule
/* var mmodule: MModule */;
6360 val
* var1
/* : HashMap[MModule, AModule] */;
6361 val
* var3
/* : HashMap[MModule, AModule] */;
6362 val
* var4
/* : nullable Object */;
6365 { /* Inline loader#ModelBuilder#mmodule2nmodule (self) on <self:ModelBuilder> */
6366 var3
= self
->attrs
[COLOR_nit__loader__ModelBuilder___mmodule2nmodule
].val
; /* _mmodule2nmodule on <self:ModelBuilder> */
6367 if (unlikely(var3
== NULL
)) {
6368 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mmodule2nmodule");
6369 PRINT_ERROR(" (%s:%d)\n", FILE_nit__loader
, 765);
6377 var4
= standard___standard__HashMap___standard__abstract_collection__MapRead__get_or_null(var1
, var_mmodule
);
6384 /* method loader#ModulePath#name for (self: ModulePath): String */
6385 val
* nit___nit__ModulePath___name(val
* self
) {
6386 val
* var
/* : String */;
6387 val
* var1
/* : String */;
6388 var1
= self
->attrs
[COLOR_nit__loader__ModulePath___name
].val
; /* _name on <self:ModulePath> */
6389 if (unlikely(var1
== NULL
)) {
6390 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _name");
6391 PRINT_ERROR(" (%s:%d)\n", FILE_nit__loader
, 782);
6398 /* method loader#ModulePath#name= for (self: ModulePath, String) */
6399 void nit___nit__ModulePath___name_61d(val
* self
, val
* p0
) {
6400 self
->attrs
[COLOR_nit__loader__ModulePath___name
].val
= p0
; /* _name on <self:ModulePath> */
6403 /* method loader#ModulePath#filepath for (self: ModulePath): String */
6404 val
* nit___nit__ModulePath___filepath(val
* self
) {
6405 val
* var
/* : String */;
6406 val
* var1
/* : String */;
6407 var1
= self
->attrs
[COLOR_nit__loader__ModulePath___filepath
].val
; /* _filepath on <self:ModulePath> */
6408 if (unlikely(var1
== NULL
)) {
6409 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _filepath");
6410 PRINT_ERROR(" (%s:%d)\n", FILE_nit__loader
, 786);
6417 /* method loader#ModulePath#filepath= for (self: ModulePath, String) */
6418 void nit___nit__ModulePath___filepath_61d(val
* self
, val
* p0
) {
6419 self
->attrs
[COLOR_nit__loader__ModulePath___filepath
].val
= p0
; /* _filepath on <self:ModulePath> */
6422 /* method loader#ModulePath#mgroup for (self: ModulePath): MGroup */
6423 val
* nit___nit__ModulePath___mgroup(val
* self
) {
6424 val
* var
/* : MGroup */;
6425 val
* var1
/* : MGroup */;
6426 var1
= self
->attrs
[COLOR_nit__loader__ModulePath___mgroup
].val
; /* _mgroup on <self:ModulePath> */
6427 if (unlikely(var1
== NULL
)) {
6428 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mgroup");
6429 PRINT_ERROR(" (%s:%d)\n", FILE_nit__loader
, 789);
6436 /* method loader#ModulePath#mgroup= for (self: ModulePath, MGroup) */
6437 void nit___nit__ModulePath___mgroup_61d(val
* self
, val
* p0
) {
6438 self
->attrs
[COLOR_nit__loader__ModulePath___mgroup
].val
= p0
; /* _mgroup on <self:ModulePath> */
6441 /* method loader#ModulePath#mmodule for (self: ModulePath): nullable MModule */
6442 val
* nit___nit__ModulePath___mmodule(val
* self
) {
6443 val
* var
/* : nullable MModule */;
6444 val
* var1
/* : nullable MModule */;
6445 var1
= self
->attrs
[COLOR_nit__loader__ModulePath___mmodule
].val
; /* _mmodule on <self:ModulePath> */
6450 /* method loader#ModulePath#mmodule= for (self: ModulePath, nullable MModule) */
6451 void nit___nit__ModulePath___mmodule_61d(val
* self
, val
* p0
) {
6452 self
->attrs
[COLOR_nit__loader__ModulePath___mmodule
].val
= p0
; /* _mmodule on <self:ModulePath> */
6455 /* method loader#ModulePath#to_s for (self: ModulePath): String */
6456 val
* nit___nit__ModulePath___standard__string__Object__to_s(val
* self
) {
6457 val
* var
/* : String */;
6458 val
* var1
/* : String */;
6459 val
* var3
/* : String */;
6461 { /* Inline loader#ModulePath#filepath (self) on <self:ModulePath> */
6462 var3
= self
->attrs
[COLOR_nit__loader__ModulePath___filepath
].val
; /* _filepath on <self:ModulePath> */
6463 if (unlikely(var3
== NULL
)) {
6464 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _filepath");
6465 PRINT_ERROR(" (%s:%d)\n", FILE_nit__loader
, 786);
6477 /* method loader#ModulePath#init for (self: ModulePath) */
6478 void nit___nit__ModulePath___standard__kernel__Object__init(val
* self
) {
6480 ((void(*)(val
* self
))(self
->class->vft
[COLOR_nit___nit__ModulePath___standard__kernel__Object__init
]))(self
); /* init on <self:ModulePath>*/
6484 /* method loader#MGroup#module_paths for (self: MGroup): Array[ModulePath] */
6485 val
* nit__loader___MGroup___module_paths(val
* self
) {
6486 val
* var
/* : Array[ModulePath] */;
6487 val
* var1
/* : Array[ModulePath] */;
6488 var1
= self
->attrs
[COLOR_nit__loader__MGroup___module_paths
].val
; /* _module_paths on <self:MGroup> */
6489 if (unlikely(var1
== NULL
)) {
6490 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _module_paths");
6491 PRINT_ERROR(" (%s:%d)\n", FILE_nit__loader
, 799);
6498 /* method loader#SourceFile#mmodule for (self: SourceFile): nullable MModule */
6499 val
* nit__loader___SourceFile___mmodule(val
* self
) {
6500 val
* var
/* : nullable MModule */;
6501 val
* var1
/* : nullable MModule */;
6502 var1
= self
->attrs
[COLOR_nit__loader__SourceFile___mmodule
].val
; /* _mmodule on <self:SourceFile> */
6507 /* method loader#SourceFile#mmodule= for (self: SourceFile, nullable MModule) */
6508 void nit__loader___SourceFile___mmodule_61d(val
* self
, val
* p0
) {
6509 self
->attrs
[COLOR_nit__loader__SourceFile___mmodule
].val
= p0
; /* _mmodule on <self:SourceFile> */
6512 /* method loader#AStdImport#mmodule for (self: AStdImport): nullable MModule */
6513 val
* nit__loader___AStdImport___mmodule(val
* self
) {
6514 val
* var
/* : nullable MModule */;
6515 val
* var1
/* : nullable MModule */;
6516 var1
= self
->attrs
[COLOR_nit__loader__AStdImport___mmodule
].val
; /* _mmodule on <self:AStdImport> */
6521 /* method loader#AStdImport#mmodule= for (self: AStdImport, nullable MModule) */
6522 void nit__loader___AStdImport___mmodule_61d(val
* self
, val
* p0
) {
6523 self
->attrs
[COLOR_nit__loader__AStdImport___mmodule
].val
= p0
; /* _mmodule on <self:AStdImport> */
6526 /* method loader#AModule#mmodule for (self: AModule): nullable MModule */
6527 val
* nit__loader___AModule___mmodule(val
* self
) {
6528 val
* var
/* : nullable MModule */;
6529 val
* var1
/* : nullable MModule */;
6530 var1
= self
->attrs
[COLOR_nit__loader__AModule___mmodule
].val
; /* _mmodule on <self:AModule> */
6535 /* method loader#AModule#mmodule= for (self: AModule, nullable MModule) */
6536 void nit__loader___AModule___mmodule_61d(val
* self
, val
* p0
) {
6537 self
->attrs
[COLOR_nit__loader__AModule___mmodule
].val
= p0
; /* _mmodule on <self:AModule> */
6540 /* method loader#AModule#is_importation_done for (self: AModule): Bool */
6541 short int nit__loader___AModule___is_importation_done(val
* self
) {
6542 short int var
/* : Bool */;
6543 short int var1
/* : Bool */;
6544 var1
= self
->attrs
[COLOR_nit__loader__AModule___is_importation_done
].s
; /* _is_importation_done on <self:AModule> */
6549 /* method loader#AModule#is_importation_done= for (self: AModule, Bool) */
6550 void nit__loader___AModule___is_importation_done_61d(val
* self
, short int p0
) {
6551 self
->attrs
[COLOR_nit__loader__AModule___is_importation_done
].s
= p0
; /* _is_importation_done on <self:AModule> */