1 #include "model_base.sep.0.h"
2 /* method model_base#Model#mmodules for (self: Model): Array[MModule] */
3 val
* model_base__Model__mmodules(val
* self
) {
4 val
* var
/* : Array[MModule] */;
5 val
* var1
/* : Array[MModule] */;
6 var1
= self
->attrs
[COLOR_model_base__Model___64dmmodules
].val
; /* @mmodules on <self:Model> */
8 fprintf(stderr
, "Runtime error: %s", "Uninitialized attribute @mmodules");
9 fprintf(stderr
, " (%s:%d)\n", "src/model/model_base.nit", 26);
16 /* method model_base#Model#mmodules for (self: Object): Array[MModule] */
17 val
* VIRTUAL_model_base__Model__mmodules(val
* self
) {
18 val
* var
/* : Array[MModule] */;
19 val
* var1
/* : Array[MModule] */;
20 var1
= model_base__Model__mmodules(self
);
25 /* method model_base#Model#mmodules= for (self: Model, Array[MModule]) */
26 void model_base__Model__mmodules_61d(val
* self
, val
* p0
) {
27 self
->attrs
[COLOR_model_base__Model___64dmmodules
].val
= p0
; /* @mmodules on <self:Model> */
30 /* method model_base#Model#mmodules= for (self: Object, Array[MModule]) */
31 void VIRTUAL_model_base__Model__mmodules_61d(val
* self
, val
* p0
) {
32 model_base__Model__mmodules_61d(self
, p0
);
35 /* method model_base#Model#mmodule_nesting_hierarchy for (self: Model): POSet[MModule] */
36 val
* model_base__Model__mmodule_nesting_hierarchy(val
* self
) {
37 val
* var
/* : POSet[MModule] */;
38 val
* var1
/* : POSet[MModule] */;
39 var1
= self
->attrs
[COLOR_model_base__Model___64dmmodule_nesting_hierarchy
].val
; /* @mmodule_nesting_hierarchy on <self:Model> */
41 fprintf(stderr
, "Runtime error: %s", "Uninitialized attribute @mmodule_nesting_hierarchy");
42 fprintf(stderr
, " (%s:%d)\n", "src/model/model_base.nit", 29);
49 /* method model_base#Model#mmodule_nesting_hierarchy for (self: Object): POSet[MModule] */
50 val
* VIRTUAL_model_base__Model__mmodule_nesting_hierarchy(val
* self
) {
51 val
* var
/* : POSet[MModule] */;
52 val
* var1
/* : POSet[MModule] */;
53 var1
= model_base__Model__mmodule_nesting_hierarchy(self
);
58 /* method model_base#Model#mmodule_nesting_hierarchy= for (self: Model, POSet[MModule]) */
59 void model_base__Model__mmodule_nesting_hierarchy_61d(val
* self
, val
* p0
) {
60 self
->attrs
[COLOR_model_base__Model___64dmmodule_nesting_hierarchy
].val
= p0
; /* @mmodule_nesting_hierarchy on <self:Model> */
63 /* method model_base#Model#mmodule_nesting_hierarchy= for (self: Object, POSet[MModule]) */
64 void VIRTUAL_model_base__Model__mmodule_nesting_hierarchy_61d(val
* self
, val
* p0
) {
65 model_base__Model__mmodule_nesting_hierarchy_61d(self
, p0
);
68 /* method model_base#Model#mmodule_importation_hierarchy for (self: Model): POSet[MModule] */
69 val
* model_base__Model__mmodule_importation_hierarchy(val
* self
) {
70 val
* var
/* : POSet[MModule] */;
71 val
* var1
/* : POSet[MModule] */;
72 var1
= self
->attrs
[COLOR_model_base__Model___64dmmodule_importation_hierarchy
].val
; /* @mmodule_importation_hierarchy on <self:Model> */
74 fprintf(stderr
, "Runtime error: %s", "Uninitialized attribute @mmodule_importation_hierarchy");
75 fprintf(stderr
, " (%s:%d)\n", "src/model/model_base.nit", 33);
82 /* method model_base#Model#mmodule_importation_hierarchy for (self: Object): POSet[MModule] */
83 val
* VIRTUAL_model_base__Model__mmodule_importation_hierarchy(val
* self
) {
84 val
* var
/* : POSet[MModule] */;
85 val
* var1
/* : POSet[MModule] */;
86 var1
= model_base__Model__mmodule_importation_hierarchy(self
);
91 /* method model_base#Model#mmodule_importation_hierarchy= for (self: Model, POSet[MModule]) */
92 void model_base__Model__mmodule_importation_hierarchy_61d(val
* self
, val
* p0
) {
93 self
->attrs
[COLOR_model_base__Model___64dmmodule_importation_hierarchy
].val
= p0
; /* @mmodule_importation_hierarchy on <self:Model> */
96 /* method model_base#Model#mmodule_importation_hierarchy= for (self: Object, POSet[MModule]) */
97 void VIRTUAL_model_base__Model__mmodule_importation_hierarchy_61d(val
* self
, val
* p0
) {
98 model_base__Model__mmodule_importation_hierarchy_61d(self
, p0
);
101 /* method model_base#Model#mmodules_by_name for (self: Model): MultiHashMap[String, MModule] */
102 val
* model_base__Model__mmodules_by_name(val
* self
) {
103 val
* var
/* : MultiHashMap[String, MModule] */;
104 val
* var1
/* : MultiHashMap[String, MModule] */;
105 var1
= self
->attrs
[COLOR_model_base__Model___64dmmodules_by_name
].val
; /* @mmodules_by_name on <self:Model> */
107 fprintf(stderr
, "Runtime error: %s", "Uninitialized attribute @mmodules_by_name");
108 fprintf(stderr
, " (%s:%d)\n", "src/model/model_base.nit", 36);
115 /* method model_base#Model#mmodules_by_name for (self: Object): MultiHashMap[String, MModule] */
116 val
* VIRTUAL_model_base__Model__mmodules_by_name(val
* self
) {
117 val
* var
/* : MultiHashMap[String, MModule] */;
118 val
* var1
/* : MultiHashMap[String, MModule] */;
119 var1
= model_base__Model__mmodules_by_name(self
);
124 /* method model_base#Model#mmodules_by_name= for (self: Model, MultiHashMap[String, MModule]) */
125 void model_base__Model__mmodules_by_name_61d(val
* self
, val
* p0
) {
126 self
->attrs
[COLOR_model_base__Model___64dmmodules_by_name
].val
= p0
; /* @mmodules_by_name on <self:Model> */
129 /* method model_base#Model#mmodules_by_name= for (self: Object, MultiHashMap[String, MModule]) */
130 void VIRTUAL_model_base__Model__mmodules_by_name_61d(val
* self
, val
* p0
) {
131 model_base__Model__mmodules_by_name_61d(self
, p0
);
134 /* method model_base#Model#get_mmodules_by_name for (self: Model, String): nullable Array[MModule] */
135 val
* model_base__Model__get_mmodules_by_name(val
* self
, val
* p0
) {
136 val
* var
/* : nullable Array[MModule] */;
137 val
* var_name
/* var name: String */;
138 val
* var1
/* : MultiHashMap[String, MModule] */;
139 short int var2
/* : Bool */;
140 val
* var3
/* : MultiHashMap[String, MModule] */;
141 val
* var4
/* : nullable Object */;
142 val
* var5
/* : null */;
144 var1
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__Model__mmodules_by_name
]))(self
) /* mmodules_by_name on <self:Model>*/;
145 var2
= ((short int (*)(val
*, val
*))(var1
->class->vft
[COLOR_abstract_collection__MapRead__has_key
]))(var1
, var_name
) /* has_key on <var1:MultiHashMap[String, MModule]>*/;
147 var3
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__Model__mmodules_by_name
]))(self
) /* mmodules_by_name on <self:Model>*/;
148 var4
= ((val
* (*)(val
*, val
*))(var3
->class->vft
[COLOR_abstract_collection__MapRead___91d_93d
]))(var3
, var_name
) /* [] on <var3:MultiHashMap[String, MModule]>*/;
159 /* method model_base#Model#get_mmodules_by_name for (self: Object, String): nullable Array[MModule] */
160 val
* VIRTUAL_model_base__Model__get_mmodules_by_name(val
* self
, val
* p0
) {
161 val
* var
/* : nullable Array[MModule] */;
162 val
* var1
/* : nullable Array[MModule] */;
163 var1
= model_base__Model__get_mmodules_by_name(self
, p0
);
168 /* method model_base#Model#init for (self: Model) */
169 void model_base__Model__init(val
* self
) {
172 /* method model_base#Model#init for (self: Object) */
173 void VIRTUAL_model_base__Model__init(val
* self
) {
174 model_base__Model__init(self
);
177 /* method model_base#MModule#model for (self: MModule): Model */
178 val
* model_base__MModule__model(val
* self
) {
179 val
* var
/* : Model */;
180 val
* var1
/* : Model */;
181 var1
= self
->attrs
[COLOR_model_base__MModule___64dmodel
].val
; /* @model on <self:MModule> */
183 fprintf(stderr
, "Runtime error: %s", "Uninitialized attribute @model");
184 fprintf(stderr
, " (%s:%d)\n", "src/model/model_base.nit", 56);
191 /* method model_base#MModule#model for (self: Object): Model */
192 val
* VIRTUAL_model_base__MModule__model(val
* self
) {
193 val
* var
/* : Model */;
194 val
* var1
/* : Model */;
195 var1
= model_base__MModule__model(self
);
200 /* method model_base#MModule#model= for (self: MModule, Model) */
201 void model_base__MModule__model_61d(val
* self
, val
* p0
) {
202 self
->attrs
[COLOR_model_base__MModule___64dmodel
].val
= p0
; /* @model on <self:MModule> */
205 /* method model_base#MModule#model= for (self: Object, Model) */
206 void VIRTUAL_model_base__MModule__model_61d(val
* self
, val
* p0
) {
207 model_base__MModule__model_61d(self
, p0
);
210 /* method model_base#MModule#direct_owner for (self: MModule): nullable MModule */
211 val
* model_base__MModule__direct_owner(val
* self
) {
212 val
* var
/* : nullable MModule */;
213 val
* var1
/* : nullable MModule */;
214 var1
= self
->attrs
[COLOR_model_base__MModule___64ddirect_owner
].val
; /* @direct_owner on <self:MModule> */
219 /* method model_base#MModule#direct_owner for (self: Object): nullable MModule */
220 val
* VIRTUAL_model_base__MModule__direct_owner(val
* self
) {
221 val
* var
/* : nullable MModule */;
222 val
* var1
/* : nullable MModule */;
223 var1
= model_base__MModule__direct_owner(self
);
228 /* method model_base#MModule#direct_owner= for (self: MModule, nullable MModule) */
229 void model_base__MModule__direct_owner_61d(val
* self
, val
* p0
) {
230 self
->attrs
[COLOR_model_base__MModule___64ddirect_owner
].val
= p0
; /* @direct_owner on <self:MModule> */
233 /* method model_base#MModule#direct_owner= for (self: Object, nullable MModule) */
234 void VIRTUAL_model_base__MModule__direct_owner_61d(val
* self
, val
* p0
) {
235 model_base__MModule__direct_owner_61d(self
, p0
);
238 /* method model_base#MModule#name for (self: MModule): String */
239 val
* model_base__MModule__name(val
* self
) {
240 val
* var
/* : String */;
241 val
* var1
/* : String */;
242 var1
= self
->attrs
[COLOR_model_base__MModule___64dname
].val
; /* @name on <self:MModule> */
244 fprintf(stderr
, "Runtime error: %s", "Uninitialized attribute @name");
245 fprintf(stderr
, " (%s:%d)\n", "src/model/model_base.nit", 62);
252 /* method model_base#MModule#name for (self: Object): String */
253 val
* VIRTUAL_model_base__MModule__name(val
* self
) {
254 val
* var
/* : String */;
255 val
* var1
/* : String */;
256 var1
= model_base__MModule__name(self
);
261 /* method model_base#MModule#name= for (self: MModule, String) */
262 void model_base__MModule__name_61d(val
* self
, val
* p0
) {
263 self
->attrs
[COLOR_model_base__MModule___64dname
].val
= p0
; /* @name on <self:MModule> */
266 /* method model_base#MModule#name= for (self: Object, String) */
267 void VIRTUAL_model_base__MModule__name_61d(val
* self
, val
* p0
) {
268 model_base__MModule__name_61d(self
, p0
);
271 /* method model_base#MModule#location for (self: MModule): Location */
272 val
* model_base__MModule__location(val
* self
) {
273 val
* var
/* : Location */;
274 val
* var1
/* : Location */;
275 var1
= self
->attrs
[COLOR_model_base__MModule___64dlocation
].val
; /* @location on <self:MModule> */
277 fprintf(stderr
, "Runtime error: %s", "Uninitialized attribute @location");
278 fprintf(stderr
, " (%s:%d)\n", "src/model/model_base.nit", 65);
285 /* method model_base#MModule#location for (self: Object): Location */
286 val
* VIRTUAL_model_base__MModule__location(val
* self
) {
287 val
* var
/* : Location */;
288 val
* var1
/* : Location */;
289 var1
= model_base__MModule__location(self
);
294 /* method model_base#MModule#location= for (self: MModule, Location) */
295 void model_base__MModule__location_61d(val
* self
, val
* p0
) {
296 self
->attrs
[COLOR_model_base__MModule___64dlocation
].val
= p0
; /* @location on <self:MModule> */
299 /* method model_base#MModule#location= for (self: Object, Location) */
300 void VIRTUAL_model_base__MModule__location_61d(val
* self
, val
* p0
) {
301 model_base__MModule__location_61d(self
, p0
);
304 /* method model_base#MModule#to_s for (self: MModule): String */
305 val
* model_base__MModule__to_s(val
* self
) {
306 val
* var
/* : String */;
307 val
* var1
/* : String */;
308 var1
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__MModule__name
]))(self
) /* name on <self:MModule>*/;
314 /* method model_base#MModule#to_s for (self: Object): String */
315 val
* VIRTUAL_model_base__MModule__to_s(val
* self
) {
316 val
* var
/* : String */;
317 val
* var1
/* : String */;
318 var1
= model_base__MModule__to_s(self
);
323 /* method model_base#MModule#in_nesting for (self: MModule): POSetElement[MModule] */
324 val
* model_base__MModule__in_nesting(val
* self
) {
325 val
* var
/* : POSetElement[MModule] */;
326 val
* var1
/* : POSetElement[MModule] */;
327 var1
= self
->attrs
[COLOR_model_base__MModule___64din_nesting
].val
; /* @in_nesting on <self:MModule> */
329 fprintf(stderr
, "Runtime error: %s", "Uninitialized attribute @in_nesting");
330 fprintf(stderr
, " (%s:%d)\n", "src/model/model_base.nit", 71);
337 /* method model_base#MModule#in_nesting for (self: Object): POSetElement[MModule] */
338 val
* VIRTUAL_model_base__MModule__in_nesting(val
* self
) {
339 val
* var
/* : POSetElement[MModule] */;
340 val
* var1
/* : POSetElement[MModule] */;
341 var1
= model_base__MModule__in_nesting(self
);
346 /* method model_base#MModule#in_nesting= for (self: MModule, POSetElement[MModule]) */
347 void model_base__MModule__in_nesting_61d(val
* self
, val
* p0
) {
348 self
->attrs
[COLOR_model_base__MModule___64din_nesting
].val
= p0
; /* @in_nesting on <self:MModule> */
351 /* method model_base#MModule#in_nesting= for (self: Object, POSetElement[MModule]) */
352 void VIRTUAL_model_base__MModule__in_nesting_61d(val
* self
, val
* p0
) {
353 model_base__MModule__in_nesting_61d(self
, p0
);
356 /* method model_base#MModule#in_importation for (self: MModule): POSetElement[MModule] */
357 val
* model_base__MModule__in_importation(val
* self
) {
358 val
* var
/* : POSetElement[MModule] */;
359 val
* var1
/* : POSetElement[MModule] */;
360 var1
= self
->attrs
[COLOR_model_base__MModule___64din_importation
].val
; /* @in_importation on <self:MModule> */
362 fprintf(stderr
, "Runtime error: %s", "Uninitialized attribute @in_importation");
363 fprintf(stderr
, " (%s:%d)\n", "src/model/model_base.nit", 74);
370 /* method model_base#MModule#in_importation for (self: Object): POSetElement[MModule] */
371 val
* VIRTUAL_model_base__MModule__in_importation(val
* self
) {
372 val
* var
/* : POSetElement[MModule] */;
373 val
* var1
/* : POSetElement[MModule] */;
374 var1
= model_base__MModule__in_importation(self
);
379 /* method model_base#MModule#in_importation= for (self: MModule, POSetElement[MModule]) */
380 void model_base__MModule__in_importation_61d(val
* self
, val
* p0
) {
381 self
->attrs
[COLOR_model_base__MModule___64din_importation
].val
= p0
; /* @in_importation on <self:MModule> */
384 /* method model_base#MModule#in_importation= for (self: Object, POSetElement[MModule]) */
385 void VIRTUAL_model_base__MModule__in_importation_61d(val
* self
, val
* p0
) {
386 model_base__MModule__in_importation_61d(self
, p0
);
389 /* method model_base#MModule#full_name for (self: MModule): String */
390 val
* model_base__MModule__full_name(val
* self
) {
391 val
* var
/* : String */;
392 val
* var1
/* : nullable MModule */;
393 val
* var_owner
/* var owner: nullable MModule */;
394 val
* var2
/* : null */;
395 short int var3
/* : Bool */;
396 val
* var4
/* : String */;
397 val
* var5
/* : Array[Object] */;
398 long var6
/* : Int */;
399 val
* var_
/* var : Array[Object] */;
401 val
* var7
/* : String */;
402 char* var8
/* : NativeString */;
403 long var9
/* : Int */;
404 val
* var10
/* : String */;
405 val
* var11
/* : String */;
406 static val
* varonce12
;
407 val
* var13
/* : String */;
408 char* var14
/* : NativeString */;
409 long var15
/* : Int */;
410 val
* var16
/* : String */;
411 val
* var17
/* : String */;
412 static val
* varonce18
;
413 val
* var19
/* : String */;
414 char* var20
/* : NativeString */;
415 long var21
/* : Int */;
416 val
* var22
/* : String */;
417 val
* var23
/* : String */;
418 var1
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__MModule__public_owner
]))(self
) /* public_owner on <self:MModule>*/;
421 if (var_owner
== NULL
) {
422 var3
= 1; /* is null */
424 var3
= 0; /* arg is null but recv is not */
427 var4
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__MModule__name
]))(self
) /* name on <self:MModule>*/;
431 var5
= NEW_array__Array(&type_array__Arraykernel__Object
);
433 ((void (*)(val
*, long))(var5
->class->vft
[COLOR_array__Array__with_capacity
]))(var5
, var6
) /* with_capacity on <var5:Array[Object]>*/;
434 CHECK_NEW_array__Array(var5
);
441 var10
= string__NativeString__to_s_with_length(var8
, var9
);
445 ((void (*)(val
*, val
*))(var_
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_
, var7
) /* add on <var_:Array[Object]>*/;
446 var11
= ((val
* (*)(val
*))(var_owner
->class->vft
[COLOR_model_base__MModule__full_name
]))(var_owner
) /* full_name on <var_owner:nullable MModule(MModule)>*/;
447 ((void (*)(val
*, val
*))(var_
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_
, var11
) /* add on <var_:Array[Object]>*/;
453 var16
= string__NativeString__to_s_with_length(var14
, var15
);
457 ((void (*)(val
*, val
*))(var_
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_
, var13
) /* add on <var_:Array[Object]>*/;
458 var17
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__MModule__name
]))(self
) /* name on <self:MModule>*/;
459 ((void (*)(val
*, val
*))(var_
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_
, var17
) /* add on <var_:Array[Object]>*/;
465 var22
= string__NativeString__to_s_with_length(var20
, var21
);
469 ((void (*)(val
*, val
*))(var_
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_
, var19
) /* add on <var_:Array[Object]>*/;
470 var23
= ((val
* (*)(val
*))(var_
->class->vft
[COLOR_string__Object__to_s
]))(var_
) /* to_s on <var_:Array[Object]>*/;
477 /* method model_base#MModule#full_name for (self: Object): String */
478 val
* VIRTUAL_model_base__MModule__full_name(val
* self
) {
479 val
* var
/* : String */;
480 val
* var1
/* : String */;
481 var1
= model_base__MModule__full_name(self
);
486 /* method model_base#MModule#init for (self: MModule, Model, nullable MModule, String, Location) */
487 void model_base__MModule__init(val
* self
, val
* p0
, val
* p1
, val
* p2
, val
* p3
) {
488 val
* var_model
/* var model: Model */;
489 val
* var_direct_owner
/* var direct_owner: nullable MModule */;
490 val
* var_name
/* var name: String */;
491 val
* var_location
/* var location: Location */;
492 val
* var
/* : MultiHashMap[String, MModule] */;
493 val
* var1
/* : Array[MModule] */;
494 val
* var2
/* : POSet[MModule] */;
495 val
* var3
/* : POSetElement[Object] */;
496 val
* var4
/* : null */;
497 short int var5
/* : Bool */;
498 val
* var6
/* : POSet[MModule] */;
499 val
* var7
/* : POSet[MModule] */;
500 val
* var8
/* : POSetElement[Object] */;
502 var_direct_owner
= p1
;
505 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_model_base__MModule__model_61d
]))(self
, var_model
) /* model= on <self:MModule>*/;
506 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_model_base__MModule__name_61d
]))(self
, var_name
) /* name= on <self:MModule>*/;
507 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_model_base__MModule__location_61d
]))(self
, var_location
) /* location= on <self:MModule>*/;
508 var
= ((val
* (*)(val
*))(var_model
->class->vft
[COLOR_model_base__Model__mmodules_by_name
]))(var_model
) /* mmodules_by_name on <var_model:Model>*/;
509 ((void (*)(val
*, val
*, val
*))(var
->class->vft
[COLOR_more_collections__MultiHashMap__add_one
]))(var
, var_name
, self
) /* add_one on <var:MultiHashMap[String, MModule]>*/;
510 var1
= ((val
* (*)(val
*))(var_model
->class->vft
[COLOR_model_base__Model__mmodules
]))(var_model
) /* mmodules on <var_model:Model>*/;
511 ((void (*)(val
*, val
*))(var1
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var1
, self
) /* add on <var1:Array[MModule]>*/;
512 var2
= ((val
* (*)(val
*))(var_model
->class->vft
[COLOR_model_base__Model__mmodule_nesting_hierarchy
]))(var_model
) /* mmodule_nesting_hierarchy on <var_model:Model>*/;
513 var3
= ((val
* (*)(val
*, val
*))(var2
->class->vft
[COLOR_poset__POSet__add_node
]))(var2
, self
) /* add_node on <var2:POSet[MModule]>*/;
514 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_model_base__MModule__in_nesting_61d
]))(self
, var3
) /* in_nesting= on <self:MModule>*/;
515 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_model_base__MModule__direct_owner_61d
]))(self
, var_direct_owner
) /* direct_owner= on <self:MModule>*/;
517 if (var_direct_owner
== NULL
) {
518 var5
= 0; /* is null */
520 var5
= 1; /* arg is null and recv is not */
523 var6
= ((val
* (*)(val
*))(var_model
->class->vft
[COLOR_model_base__Model__mmodule_nesting_hierarchy
]))(var_model
) /* mmodule_nesting_hierarchy on <var_model:Model>*/;
524 ((void (*)(val
*, val
*, val
*))(var6
->class->vft
[COLOR_poset__POSet__add_edge
]))(var6
, var_direct_owner
, self
) /* add_edge on <var6:POSet[MModule]>*/;
527 var7
= ((val
* (*)(val
*))(var_model
->class->vft
[COLOR_model_base__Model__mmodule_importation_hierarchy
]))(var_model
) /* mmodule_importation_hierarchy on <var_model:Model>*/;
528 var8
= ((val
* (*)(val
*, val
*))(var7
->class->vft
[COLOR_poset__POSet__add_node
]))(var7
, self
) /* add_node on <var7:POSet[MModule]>*/;
529 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_model_base__MModule__in_importation_61d
]))(self
, var8
) /* in_importation= on <self:MModule>*/;
532 /* method model_base#MModule#init for (self: Object, Model, nullable MModule, String, Location) */
533 void VIRTUAL_model_base__MModule__init(val
* self
, val
* p0
, val
* p1
, val
* p2
, val
* p3
) {
534 model_base__MModule__init(self
, p0
, p1
, p2
, p3
);
537 /* method model_base#MModule#set_imported_mmodules for (self: MModule, Array[MModule]) */
538 void model_base__MModule__set_imported_mmodules(val
* self
, val
* p0
) {
539 val
* var_imported_mmodules
/* var imported_mmodules: Array[MModule] */;
540 val
* var
/* : POSetElement[MModule] */;
541 val
* var1
/* : Collection[Object] */;
542 short int var2
/* : Bool */;
543 val
* var3
/* : Iterator[nullable Object] */;
544 short int var4
/* : Bool */;
545 val
* var5
/* : nullable Object */;
546 val
* var_m
/* var m: MModule */;
547 val
* var6
/* : Model */;
548 val
* var7
/* : POSet[MModule] */;
549 var_imported_mmodules
= p0
;
550 var
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__MModule__in_importation
]))(self
) /* in_importation on <self:MModule>*/;
551 var1
= ((val
* (*)(val
*))(var
->class->vft
[COLOR_poset__POSetElement__direct_greaters
]))(var
) /* direct_greaters on <var:POSetElement[MModule]>*/;
552 var2
= ((short int (*)(val
*))(var1
->class->vft
[COLOR_abstract_collection__Collection__is_empty
]))(var1
) /* is_empty on <var1:Collection[Object](Collection[MModule])>*/;
554 fprintf(stderr
, "Runtime error: %s", "Assert \'unique_invocation\' failed");
555 fprintf(stderr
, " (%s:%d)\n", "src/model/model_base.nit", 111);
558 var3
= ((val
* (*)(val
*))(var_imported_mmodules
->class->vft
[COLOR_abstract_collection__Collection__iterator
]))(var_imported_mmodules
) /* iterator on <var_imported_mmodules:Array[MModule]>*/;
560 var4
= ((short int (*)(val
*))(var3
->class->vft
[COLOR_abstract_collection__Iterator__is_ok
]))(var3
) /* is_ok on <var3:Iterator[nullable Object]>*/;
562 var5
= ((val
* (*)(val
*))(var3
->class->vft
[COLOR_abstract_collection__Iterator__item
]))(var3
) /* item on <var3:Iterator[nullable Object]>*/;
564 var6
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__MModule__model
]))(self
) /* model on <self:MModule>*/;
565 var7
= ((val
* (*)(val
*))(var6
->class->vft
[COLOR_model_base__Model__mmodule_importation_hierarchy
]))(var6
) /* mmodule_importation_hierarchy on <var6:Model>*/;
566 ((void (*)(val
*, val
*, val
*))(var7
->class->vft
[COLOR_poset__POSet__add_edge
]))(var7
, self
, var_m
) /* add_edge on <var7:POSet[MModule]>*/;
567 CONTINUE_label
: (void)0;
568 ((void (*)(val
*))(var3
->class->vft
[COLOR_abstract_collection__Iterator__next
]))(var3
) /* next on <var3:Iterator[nullable Object]>*/;
570 BREAK_label
: (void)0;
573 /* method model_base#MModule#set_imported_mmodules for (self: Object, Array[MModule]) */
574 void VIRTUAL_model_base__MModule__set_imported_mmodules(val
* self
, val
* p0
) {
575 model_base__MModule__set_imported_mmodules(self
, p0
);
578 /* method model_base#MModule#intrude_mmodules for (self: MModule): HashSet[MModule] */
579 val
* model_base__MModule__intrude_mmodules(val
* self
) {
580 val
* var
/* : HashSet[MModule] */;
581 val
* var1
/* : HashSet[MModule] */;
582 var1
= self
->attrs
[COLOR_model_base__MModule___64dintrude_mmodules
].val
; /* @intrude_mmodules on <self:MModule> */
584 fprintf(stderr
, "Runtime error: %s", "Uninitialized attribute @intrude_mmodules");
585 fprintf(stderr
, " (%s:%d)\n", "src/model/model_base.nit", 117);
592 /* method model_base#MModule#intrude_mmodules for (self: Object): HashSet[MModule] */
593 val
* VIRTUAL_model_base__MModule__intrude_mmodules(val
* self
) {
594 val
* var
/* : HashSet[MModule] */;
595 val
* var1
/* : HashSet[MModule] */;
596 var1
= model_base__MModule__intrude_mmodules(self
);
601 /* method model_base#MModule#intrude_mmodules= for (self: MModule, HashSet[MModule]) */
602 void model_base__MModule__intrude_mmodules_61d(val
* self
, val
* p0
) {
603 self
->attrs
[COLOR_model_base__MModule___64dintrude_mmodules
].val
= p0
; /* @intrude_mmodules on <self:MModule> */
606 /* method model_base#MModule#intrude_mmodules= for (self: Object, HashSet[MModule]) */
607 void VIRTUAL_model_base__MModule__intrude_mmodules_61d(val
* self
, val
* p0
) {
608 model_base__MModule__intrude_mmodules_61d(self
, p0
);
611 /* method model_base#MModule#public_mmodules for (self: MModule): HashSet[MModule] */
612 val
* model_base__MModule__public_mmodules(val
* self
) {
613 val
* var
/* : HashSet[MModule] */;
614 val
* var1
/* : HashSet[MModule] */;
615 var1
= self
->attrs
[COLOR_model_base__MModule___64dpublic_mmodules
].val
; /* @public_mmodules on <self:MModule> */
617 fprintf(stderr
, "Runtime error: %s", "Uninitialized attribute @public_mmodules");
618 fprintf(stderr
, " (%s:%d)\n", "src/model/model_base.nit", 118);
625 /* method model_base#MModule#public_mmodules for (self: Object): HashSet[MModule] */
626 val
* VIRTUAL_model_base__MModule__public_mmodules(val
* self
) {
627 val
* var
/* : HashSet[MModule] */;
628 val
* var1
/* : HashSet[MModule] */;
629 var1
= model_base__MModule__public_mmodules(self
);
634 /* method model_base#MModule#public_mmodules= for (self: MModule, HashSet[MModule]) */
635 void model_base__MModule__public_mmodules_61d(val
* self
, val
* p0
) {
636 self
->attrs
[COLOR_model_base__MModule___64dpublic_mmodules
].val
= p0
; /* @public_mmodules on <self:MModule> */
639 /* method model_base#MModule#public_mmodules= for (self: Object, HashSet[MModule]) */
640 void VIRTUAL_model_base__MModule__public_mmodules_61d(val
* self
, val
* p0
) {
641 model_base__MModule__public_mmodules_61d(self
, p0
);
644 /* method model_base#MModule#private_mmodules for (self: MModule): HashSet[MModule] */
645 val
* model_base__MModule__private_mmodules(val
* self
) {
646 val
* var
/* : HashSet[MModule] */;
647 val
* var1
/* : HashSet[MModule] */;
648 var1
= self
->attrs
[COLOR_model_base__MModule___64dprivate_mmodules
].val
; /* @private_mmodules on <self:MModule> */
650 fprintf(stderr
, "Runtime error: %s", "Uninitialized attribute @private_mmodules");
651 fprintf(stderr
, " (%s:%d)\n", "src/model/model_base.nit", 119);
658 /* method model_base#MModule#private_mmodules for (self: Object): HashSet[MModule] */
659 val
* VIRTUAL_model_base__MModule__private_mmodules(val
* self
) {
660 val
* var
/* : HashSet[MModule] */;
661 val
* var1
/* : HashSet[MModule] */;
662 var1
= model_base__MModule__private_mmodules(self
);
667 /* method model_base#MModule#private_mmodules= for (self: MModule, HashSet[MModule]) */
668 void model_base__MModule__private_mmodules_61d(val
* self
, val
* p0
) {
669 self
->attrs
[COLOR_model_base__MModule___64dprivate_mmodules
].val
= p0
; /* @private_mmodules on <self:MModule> */
672 /* method model_base#MModule#private_mmodules= for (self: Object, HashSet[MModule]) */
673 void VIRTUAL_model_base__MModule__private_mmodules_61d(val
* self
, val
* p0
) {
674 model_base__MModule__private_mmodules_61d(self
, p0
);
677 /* method model_base#MModule#visibility_for for (self: MModule, MModule): MVisibility */
678 val
* model_base__MModule__visibility_for(val
* self
, val
* p0
) {
679 val
* var
/* : MVisibility */;
680 val
* var_m
/* var m: MModule */;
681 short int var1
/* : Bool */;
682 val
* var2
/* : MVisibility */;
683 val
* var3
/* : HashSet[MModule] */;
684 short int var4
/* : Bool */;
685 val
* var5
/* : MVisibility */;
686 val
* var6
/* : HashSet[MModule] */;
687 short int var7
/* : Bool */;
688 val
* var8
/* : MVisibility */;
689 val
* var9
/* : HashSet[MModule] */;
690 short int var10
/* : Bool */;
691 val
* var11
/* : MVisibility */;
692 val
* var12
/* : MVisibility */;
694 var1
= ((short int (*)(val
*, val
*))(var_m
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_m
, self
) /* == on <var_m:MModule>*/;
696 var2
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__Object__intrude_visibility
]))(self
) /* intrude_visibility on <self:MModule>*/;
701 var3
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__MModule__intrude_mmodules
]))(self
) /* intrude_mmodules on <self:MModule>*/;
702 var4
= ((short int (*)(val
*, val
*))(var3
->class->vft
[COLOR_abstract_collection__Collection__has
]))(var3
, var_m
) /* has on <var3:HashSet[MModule]>*/;
704 var5
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__Object__intrude_visibility
]))(self
) /* intrude_visibility on <self:MModule>*/;
709 var6
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__MModule__public_mmodules
]))(self
) /* public_mmodules on <self:MModule>*/;
710 var7
= ((short int (*)(val
*, val
*))(var6
->class->vft
[COLOR_abstract_collection__Collection__has
]))(var6
, var_m
) /* has on <var6:HashSet[MModule]>*/;
712 var8
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__Object__public_visibility
]))(self
) /* public_visibility on <self:MModule>*/;
717 var9
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__MModule__private_mmodules
]))(self
) /* private_mmodules on <self:MModule>*/;
718 var10
= ((short int (*)(val
*, val
*))(var9
->class->vft
[COLOR_abstract_collection__Collection__has
]))(var9
, var_m
) /* has on <var9:HashSet[MModule]>*/;
720 var11
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__Object__private_visibility
]))(self
) /* private_visibility on <self:MModule>*/;
725 var12
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__Object__none_visibility
]))(self
) /* none_visibility on <self:MModule>*/;
731 /* method model_base#MModule#visibility_for for (self: Object, MModule): MVisibility */
732 val
* VIRTUAL_model_base__MModule__visibility_for(val
* self
, val
* p0
) {
733 val
* var
/* : MVisibility */;
734 val
* var1
/* : MVisibility */;
735 var1
= model_base__MModule__visibility_for(self
, p0
);
740 /* method model_base#MModule#set_visibility_for for (self: MModule, MModule, MVisibility) */
741 void model_base__MModule__set_visibility_for(val
* self
, val
* p0
, val
* p1
) {
742 val
* var_m
/* var m: MModule */;
743 val
* var_v
/* var v: MVisibility */;
744 val
* var
/* : MVisibility */;
745 short int var1
/* : Bool */;
746 val
* var2
/* : HashSet[MModule] */;
747 val
* var3
/* : HashSet[MModule] */;
748 val
* var4
/* : HashSet[MModule] */;
749 val
* var5
/* : HashSet[MModule] */;
750 val
* var6
/* : HashSet[MModule] */;
751 val
* var7
/* : HashSet[MModule] */;
752 val
* var8
/* : HashSet[MModule] */;
753 val
* var9
/* : MVisibility */;
754 short int var10
/* : Bool */;
755 val
* var11
/* : HashSet[MModule] */;
756 val
* var12
/* : HashSet[MModule] */;
757 val
* var13
/* : HashSet[MModule] */;
758 val
* var14
/* : HashSet[MModule] */;
759 val
* var15
/* : HashSet[MModule] */;
760 val
* var16
/* : MVisibility */;
761 short int var17
/* : Bool */;
762 val
* var18
/* : HashSet[MModule] */;
763 val
* var19
/* : HashSet[MModule] */;
764 val
* var20
/* : HashSet[MModule] */;
765 val
* var21
/* : HashSet[MModule] */;
766 val
* var22
/* : HashSet[MModule] */;
768 val
* var23
/* : String */;
769 char* var24
/* : NativeString */;
770 long var25
/* : Int */;
771 val
* var26
/* : String */;
772 static val
* varonce27
;
773 val
* var28
/* : String */;
774 char* var29
/* : NativeString */;
775 long var30
/* : Int */;
776 val
* var31
/* : String */;
777 val
* var32
/* : Array[Object] */;
778 long var33
/* : Int */;
779 val
* var34
/* : NativeArray[Object] */;
780 val
* var35
/* : String */;
783 var
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__Object__intrude_visibility
]))(self
) /* intrude_visibility on <self:MModule>*/;
784 var1
= ((short int (*)(val
*, val
*))(var_v
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_v
, var
) /* == on <var_v:MVisibility>*/;
786 var2
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__MModule__intrude_mmodules
]))(self
) /* intrude_mmodules on <self:MModule>*/;
787 ((void (*)(val
*, val
*))(var2
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var2
, var_m
) /* add on <var2:HashSet[MModule]>*/;
788 var3
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__MModule__intrude_mmodules
]))(self
) /* intrude_mmodules on <self:MModule>*/;
789 var4
= ((val
* (*)(val
*))(var_m
->class->vft
[COLOR_model_base__MModule__intrude_mmodules
]))(var_m
) /* intrude_mmodules on <var_m:MModule>*/;
790 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_abstract_collection__SimpleCollection__add_all
]))(var3
, var4
) /* add_all on <var3:HashSet[MModule]>*/;
791 var5
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__MModule__public_mmodules
]))(self
) /* public_mmodules on <self:MModule>*/;
792 var6
= ((val
* (*)(val
*))(var_m
->class->vft
[COLOR_model_base__MModule__public_mmodules
]))(var_m
) /* public_mmodules on <var_m:MModule>*/;
793 ((void (*)(val
*, val
*))(var5
->class->vft
[COLOR_abstract_collection__SimpleCollection__add_all
]))(var5
, var6
) /* add_all on <var5:HashSet[MModule]>*/;
794 var7
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__MModule__private_mmodules
]))(self
) /* private_mmodules on <self:MModule>*/;
795 var8
= ((val
* (*)(val
*))(var_m
->class->vft
[COLOR_model_base__MModule__private_mmodules
]))(var_m
) /* private_mmodules on <var_m:MModule>*/;
796 ((void (*)(val
*, val
*))(var7
->class->vft
[COLOR_abstract_collection__SimpleCollection__add_all
]))(var7
, var8
) /* add_all on <var7:HashSet[MModule]>*/;
798 var9
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__Object__public_visibility
]))(self
) /* public_visibility on <self:MModule>*/;
799 var10
= ((short int (*)(val
*, val
*))(var_v
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_v
, var9
) /* == on <var_v:MVisibility>*/;
801 var11
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__MModule__public_mmodules
]))(self
) /* public_mmodules on <self:MModule>*/;
802 ((void (*)(val
*, val
*))(var11
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var11
, var_m
) /* add on <var11:HashSet[MModule]>*/;
803 var12
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__MModule__public_mmodules
]))(self
) /* public_mmodules on <self:MModule>*/;
804 var13
= ((val
* (*)(val
*))(var_m
->class->vft
[COLOR_model_base__MModule__intrude_mmodules
]))(var_m
) /* intrude_mmodules on <var_m:MModule>*/;
805 ((void (*)(val
*, val
*))(var12
->class->vft
[COLOR_abstract_collection__SimpleCollection__add_all
]))(var12
, var13
) /* add_all on <var12:HashSet[MModule]>*/;
806 var14
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__MModule__public_mmodules
]))(self
) /* public_mmodules on <self:MModule>*/;
807 var15
= ((val
* (*)(val
*))(var_m
->class->vft
[COLOR_model_base__MModule__public_mmodules
]))(var_m
) /* public_mmodules on <var_m:MModule>*/;
808 ((void (*)(val
*, val
*))(var14
->class->vft
[COLOR_abstract_collection__SimpleCollection__add_all
]))(var14
, var15
) /* add_all on <var14:HashSet[MModule]>*/;
810 var16
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__Object__private_visibility
]))(self
) /* private_visibility on <self:MModule>*/;
811 var17
= ((short int (*)(val
*, val
*))(var_v
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_v
, var16
) /* == on <var_v:MVisibility>*/;
813 var18
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__MModule__private_mmodules
]))(self
) /* private_mmodules on <self:MModule>*/;
814 ((void (*)(val
*, val
*))(var18
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var18
, var_m
) /* add on <var18:HashSet[MModule]>*/;
815 var19
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__MModule__private_mmodules
]))(self
) /* private_mmodules on <self:MModule>*/;
816 var20
= ((val
* (*)(val
*))(var_m
->class->vft
[COLOR_model_base__MModule__intrude_mmodules
]))(var_m
) /* intrude_mmodules on <var_m:MModule>*/;
817 ((void (*)(val
*, val
*))(var19
->class->vft
[COLOR_abstract_collection__SimpleCollection__add_all
]))(var19
, var20
) /* add_all on <var19:HashSet[MModule]>*/;
818 var21
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__MModule__private_mmodules
]))(self
) /* private_mmodules on <self:MModule>*/;
819 var22
= ((val
* (*)(val
*))(var_m
->class->vft
[COLOR_model_base__MModule__public_mmodules
]))(var_m
) /* public_mmodules on <var_m:MModule>*/;
820 ((void (*)(val
*, val
*))(var21
->class->vft
[COLOR_abstract_collection__SimpleCollection__add_all
]))(var21
, var22
) /* add_all on <var21:HashSet[MModule]>*/;
825 var24
= " visibility for ";
827 var26
= string__NativeString__to_s_with_length(var24
, var25
);
836 var31
= string__NativeString__to_s_with_length(var29
, var30
);
840 var32
= NEW_array__Array(&type_array__Arraykernel__Object
);
841 { /* var32 = array_instance Array[Object] */
843 var34
= NEW_array__NativeArray(var33
, &type_array__NativeArraykernel__Object
);
844 ((struct instance_array__NativeArray
*)var34
)->values
[0] = (val
*) self
;
845 ((struct instance_array__NativeArray
*)var34
)->values
[1] = (val
*) var23
;
846 ((struct instance_array__NativeArray
*)var34
)->values
[2] = (val
*) var_m
;
847 ((struct instance_array__NativeArray
*)var34
)->values
[3] = (val
*) var28
;
848 ((struct instance_array__NativeArray
*)var34
)->values
[4] = (val
*) var_v
;
849 ((void (*)(val
*, val
*, long))(var32
->class->vft
[COLOR_array__Array__with_native
]))(var32
, var34
, var33
) /* with_native on <var32:Array[Object]>*/;
850 CHECK_NEW_array__Array(var32
);
852 var35
= ((val
* (*)(val
*))(var32
->class->vft
[COLOR_string__Object__to_s
]))(var32
) /* to_s on <var32:Array[Object]>*/;
853 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_file__Object__print
]))(self
, var35
) /* print on <self:MModule>*/;
854 fprintf(stderr
, "Runtime error: %s", "Aborted");
855 fprintf(stderr
, " (%s:%d)\n", "src/model/model_base.nit", 150);
862 /* method model_base#MModule#set_visibility_for for (self: Object, MModule, MVisibility) */
863 void VIRTUAL_model_base__MModule__set_visibility_for(val
* self
, val
* p0
, val
* p1
) {
864 model_base__MModule__set_visibility_for(self
, p0
, p1
);
867 /* method model_base#MModule#public_owner for (self: MModule): nullable MModule */
868 val
* model_base__MModule__public_owner(val
* self
) {
869 val
* var
/* : nullable MModule */;
870 val
* var1
/* : nullable MModule */;
871 val
* var_res
/* var res: nullable MModule */;
872 val
* var_last
/* var last: nullable MModule */;
873 val
* var2
/* : null */;
874 short int var3
/* : Bool */;
875 val
* var4
/* : MVisibility */;
876 val
* var5
/* : MVisibility */;
877 short int var6
/* : Bool */;
878 val
* var7
/* : nullable MModule */;
879 var1
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__MModule__direct_owner
]))(self
) /* direct_owner on <self:MModule>*/;
884 if (var_last
== NULL
) {
885 var3
= 0; /* is null */
887 var3
= 1; /* arg is null and recv is not */
890 var4
= ((val
* (*)(val
*, val
*))(var_last
->class->vft
[COLOR_model_base__MModule__visibility_for
]))(var_last
, self
) /* visibility_for on <var_last:nullable MModule(MModule)>*/;
891 var5
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__Object__public_visibility
]))(self
) /* public_visibility on <self:MModule>*/;
892 var6
= ((short int (*)(val
*, val
*))(var4
->class->vft
[COLOR_kernel__Comparable___62d_61d
]))(var4
, var5
) /* >= on <var4:MVisibility>*/;
897 var7
= ((val
* (*)(val
*))(var_last
->class->vft
[COLOR_model_base__MModule__direct_owner
]))(var_last
) /* direct_owner on <var_last:nullable MModule(MModule)>*/;
899 CONTINUE_label
: (void)0;
901 BREAK_label
: (void)0;
907 /* method model_base#MModule#public_owner for (self: Object): nullable MModule */
908 val
* VIRTUAL_model_base__MModule__public_owner(val
* self
) {
909 val
* var
/* : nullable MModule */;
910 val
* var1
/* : nullable MModule */;
911 var1
= model_base__MModule__public_owner(self
);
916 /* method model_base#MModule#is_visible for (self: MModule, MModule, MVisibility): Bool */
917 short int model_base__MModule__is_visible(val
* self
, val
* p0
, val
* p1
) {
918 short int var
/* : Bool */;
919 val
* var_intro_mmodule
/* var intro_mmodule: MModule */;
920 val
* var_visibility
/* var visibility: MVisibility */;
921 val
* var1
/* : MVisibility */;
922 val
* var_v
/* var v: MVisibility */;
923 val
* var2
/* : MVisibility */;
924 short int var3
/* : Bool */;
925 val
* var4
/* : MVisibility */;
926 short int var5
/* : Bool */;
927 val
* var6
/* : MVisibility */;
928 short int var7
/* : Bool */;
929 val
* var8
/* : MVisibility */;
930 short int var9
/* : Bool */;
931 val
* var10
/* : MVisibility */;
932 short int var11
/* : Bool */;
933 val
* var12
/* : MVisibility */;
934 short int var13
/* : Bool */;
935 val
* var14
/* : MVisibility */;
936 short int var15
/* : Bool */;
937 short int var16
/* : Bool */;
938 var_intro_mmodule
= p0
;
940 var1
= ((val
* (*)(val
*, val
*))(self
->class->vft
[COLOR_model_base__MModule__visibility_for
]))(self
, var_intro_mmodule
) /* visibility_for on <self:MModule>*/;
942 var2
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__Object__intrude_visibility
]))(self
) /* intrude_visibility on <self:MModule>*/;
943 var3
= ((short int (*)(val
*, val
*))(var_v
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_v
, var2
) /* == on <var_v:MVisibility>*/;
945 var4
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__Object__private_visibility
]))(self
) /* private_visibility on <self:MModule>*/;
946 var5
= ((short int (*)(val
*, val
*))(var_visibility
->class->vft
[COLOR_kernel__Comparable___62d_61d
]))(var_visibility
, var4
) /* >= on <var_visibility:MVisibility>*/;
950 var6
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__Object__public_visibility
]))(self
) /* public_visibility on <self:MModule>*/;
951 var7
= ((short int (*)(val
*, val
*))(var_v
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_v
, var6
) /* == on <var_v:MVisibility>*/;
953 var8
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__Object__private_visibility
]))(self
) /* private_visibility on <self:MModule>*/;
954 var9
= ((short int (*)(val
*, val
*))(var_visibility
->class->vft
[COLOR_kernel__Comparable___62d
]))(var_visibility
, var8
) /* > on <var_visibility:MVisibility>*/;
958 var10
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__Object__private_visibility
]))(self
) /* private_visibility on <self:MModule>*/;
959 var11
= ((short int (*)(val
*, val
*))(var_v
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_v
, var10
) /* == on <var_v:MVisibility>*/;
961 var12
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__Object__private_visibility
]))(self
) /* private_visibility on <self:MModule>*/;
962 var13
= ((short int (*)(val
*, val
*))(var_visibility
->class->vft
[COLOR_kernel__Comparable___62d
]))(var_visibility
, var12
) /* > on <var_visibility:MVisibility>*/;
966 var14
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__Object__none_visibility
]))(self
) /* none_visibility on <self:MModule>*/;
967 var15
= ((short int (*)(val
*, val
*))(var_v
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_v
, var14
) /* == on <var_v:MVisibility>*/;
973 fprintf(stderr
, "Runtime error: %s", "Aborted");
974 fprintf(stderr
, " (%s:%d)\n", "src/model/model_base.nit", 181);
983 /* method model_base#MModule#is_visible for (self: Object, MModule, MVisibility): Bool */
984 short int VIRTUAL_model_base__MModule__is_visible(val
* self
, val
* p0
, val
* p1
) {
985 short int var
/* : Bool */;
986 short int var1
/* : Bool */;
987 var1
= model_base__MModule__is_visible(self
, p0
, p1
);
992 /* method model_base#MVisibility#to_s for (self: MVisibility): String */
993 val
* model_base__MVisibility__to_s(val
* self
) {
994 val
* var
/* : String */;
995 val
* var1
/* : String */;
996 var1
= self
->attrs
[COLOR_model_base__MVisibility___64dto_s
].val
; /* @to_s on <self:MVisibility> */
998 fprintf(stderr
, "Runtime error: %s", "Uninitialized attribute @to_s");
999 fprintf(stderr
, " (%s:%d)\n", "src/model/model_base.nit", 200);
1006 /* method model_base#MVisibility#to_s for (self: Object): String */
1007 val
* VIRTUAL_model_base__MVisibility__to_s(val
* self
) {
1008 val
* var
/* : String */;
1009 val
* var1
/* : String */;
1010 var1
= model_base__MVisibility__to_s(self
);
1015 /* method model_base#MVisibility#to_s= for (self: MVisibility, String) */
1016 void model_base__MVisibility__to_s_61d(val
* self
, val
* p0
) {
1017 self
->attrs
[COLOR_model_base__MVisibility___64dto_s
].val
= p0
; /* @to_s on <self:MVisibility> */
1020 /* method model_base#MVisibility#to_s= for (self: Object, String) */
1021 void VIRTUAL_model_base__MVisibility__to_s_61d(val
* self
, val
* p0
) {
1022 model_base__MVisibility__to_s_61d(self
, p0
);
1025 /* method model_base#MVisibility#level for (self: MVisibility): Int */
1026 long model_base__MVisibility__level(val
* self
) {
1027 long var
/* : Int */;
1028 long var1
/* : Int */;
1029 var1
= self
->attrs
[COLOR_model_base__MVisibility___64dlevel
].l
; /* @level on <self:MVisibility> */
1034 /* method model_base#MVisibility#level for (self: Object): Int */
1035 long VIRTUAL_model_base__MVisibility__level(val
* self
) {
1036 long var
/* : Int */;
1037 long var1
/* : Int */;
1038 var1
= model_base__MVisibility__level(self
);
1043 /* method model_base#MVisibility#level= for (self: MVisibility, Int) */
1044 void model_base__MVisibility__level_61d(val
* self
, long p0
) {
1045 self
->attrs
[COLOR_model_base__MVisibility___64dlevel
].l
= p0
; /* @level on <self:MVisibility> */
1048 /* method model_base#MVisibility#level= for (self: Object, Int) */
1049 void VIRTUAL_model_base__MVisibility__level_61d(val
* self
, long p0
) {
1050 model_base__MVisibility__level_61d(self
, p0
);
1053 /* method model_base#MVisibility#init for (self: MVisibility, String, Int) */
1054 void model_base__MVisibility__init(val
* self
, val
* p0
, long p1
) {
1055 val
* var_s
/* var s: String */;
1056 long var_level
/* var level: Int */;
1059 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_model_base__MVisibility__to_s_61d
]))(self
, var_s
) /* to_s= on <self:MVisibility>*/;
1060 ((void (*)(val
*, long))(self
->class->vft
[COLOR_model_base__MVisibility__level_61d
]))(self
, var_level
) /* level= on <self:MVisibility>*/;
1063 /* method model_base#MVisibility#init for (self: Object, String, Int) */
1064 void VIRTUAL_model_base__MVisibility__init(val
* self
, val
* p0
, long p1
) {
1065 model_base__MVisibility__init(self
, p0
, p1
);
1068 /* method model_base#MVisibility#< for (self: MVisibility, MVisibility): Bool */
1069 short int model_base__MVisibility___60d(val
* self
, val
* p0
) {
1070 short int var
/* : Bool */;
1071 short int var1
/* : Bool */;
1074 const struct type
* type_struct
;
1075 const char* var_class_name
;
1076 val
* var_other
/* var other: MVisibility */;
1077 long var2
/* : Int */;
1078 long var3
/* : Int */;
1079 short int var4
/* : Bool */;
1080 short int var6
/* : Bool */;
1083 const char* var_class_name9
;
1084 short int var10
/* : Bool */;
1085 /* Covariant cast for argument 0 (other) <p0:MVisibility> isa OTHER */
1086 /* <p0:MVisibility> isa OTHER */
1087 type_struct
= self
->type
->resolution_table
->types
[COLOR_kernel__Comparable_VTOTHER
];
1088 cltype
= type_struct
->color
;
1089 idtype
= type_struct
->id
;
1090 if(cltype
>= p0
->type
->table_size
) {
1093 var1
= p0
->type
->type_table
[cltype
] == idtype
;
1096 var_class_name
= p0
== NULL ?
"null" : p0
->type
->name
;
1097 fprintf(stderr
, "Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
1098 fprintf(stderr
, " (%s:%d)\n", "src/model/model_base.nit", 210);
1102 var2
= ((long (*)(val
*))(self
->class->vft
[COLOR_model_base__MVisibility__level
]))(self
) /* level on <self:MVisibility>*/;
1103 var3
= ((long (*)(val
*))(var_other
->class->vft
[COLOR_model_base__MVisibility__level
]))(var_other
) /* level on <var_other:MVisibility>*/;
1104 { /* Inline kernel#Int#< (var2,var3) */
1105 /* Covariant cast for argument 0 (i) <var3:Int> isa OTHER */
1106 /* <var3:Int> isa OTHER */
1107 var6
= 1; /* easy <var3:Int> isa OTHER*/
1109 var_class_name9
= type_kernel__Int
.name
;
1110 fprintf(stderr
, "Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name9
);
1111 fprintf(stderr
, " (%s:%d)\n", "lib/standard/kernel.nit", 261);
1114 var10
= var2
< var3
;
1124 /* method model_base#MVisibility#< for (self: Object, Comparable): Bool */
1125 short int VIRTUAL_model_base__MVisibility___60d(val
* self
, val
* p0
) {
1126 short int var
/* : Bool */;
1127 short int var1
/* : Bool */;
1128 var1
= model_base__MVisibility___60d(self
, p0
);
1133 /* method model_base#Object#intrude_visibility for (self: Object): MVisibility */
1134 val
* model_base__Object__intrude_visibility(val
* self
) {
1135 val
* var
/* : MVisibility */;
1136 static val
* varonce
;
1137 static int varonce_guard
;
1138 val
* var1
/* : MVisibility */;
1139 val
* var2
/* : MVisibility */;
1140 static val
* varonce3
;
1141 val
* var4
/* : String */;
1142 char* var5
/* : NativeString */;
1143 long var6
/* : Int */;
1144 val
* var7
/* : String */;
1145 long var8
/* : Int */;
1146 if (varonce_guard
) {
1149 var2
= NEW_model_base__MVisibility(&type_model_base__MVisibility
);
1155 var7
= string__NativeString__to_s_with_length(var5
, var6
);
1160 ((void (*)(val
*, val
*, long))(var2
->class->vft
[COLOR_model_base__MVisibility__init
]))(var2
, var4
, var8
) /* init on <var2:MVisibility>*/;
1161 CHECK_NEW_model_base__MVisibility(var2
);
1171 /* method model_base#Object#intrude_visibility for (self: Object): MVisibility */
1172 val
* VIRTUAL_model_base__Object__intrude_visibility(val
* self
) {
1173 val
* var
/* : MVisibility */;
1174 val
* var1
/* : MVisibility */;
1175 var1
= model_base__Object__intrude_visibility(self
);
1180 /* method model_base#Object#public_visibility for (self: Object): MVisibility */
1181 val
* model_base__Object__public_visibility(val
* self
) {
1182 val
* var
/* : MVisibility */;
1183 static val
* varonce
;
1184 static int varonce_guard
;
1185 val
* var1
/* : MVisibility */;
1186 val
* var2
/* : MVisibility */;
1187 static val
* varonce3
;
1188 val
* var4
/* : String */;
1189 char* var5
/* : NativeString */;
1190 long var6
/* : Int */;
1191 val
* var7
/* : String */;
1192 long var8
/* : Int */;
1193 if (varonce_guard
) {
1196 var2
= NEW_model_base__MVisibility(&type_model_base__MVisibility
);
1202 var7
= string__NativeString__to_s_with_length(var5
, var6
);
1207 ((void (*)(val
*, val
*, long))(var2
->class->vft
[COLOR_model_base__MVisibility__init
]))(var2
, var4
, var8
) /* init on <var2:MVisibility>*/;
1208 CHECK_NEW_model_base__MVisibility(var2
);
1218 /* method model_base#Object#public_visibility for (self: Object): MVisibility */
1219 val
* VIRTUAL_model_base__Object__public_visibility(val
* self
) {
1220 val
* var
/* : MVisibility */;
1221 val
* var1
/* : MVisibility */;
1222 var1
= model_base__Object__public_visibility(self
);
1227 /* method model_base#Object#protected_visibility for (self: Object): MVisibility */
1228 val
* model_base__Object__protected_visibility(val
* self
) {
1229 val
* var
/* : MVisibility */;
1230 static val
* varonce
;
1231 static int varonce_guard
;
1232 val
* var1
/* : MVisibility */;
1233 val
* var2
/* : MVisibility */;
1234 static val
* varonce3
;
1235 val
* var4
/* : String */;
1236 char* var5
/* : NativeString */;
1237 long var6
/* : Int */;
1238 val
* var7
/* : String */;
1239 long var8
/* : Int */;
1240 if (varonce_guard
) {
1243 var2
= NEW_model_base__MVisibility(&type_model_base__MVisibility
);
1249 var7
= string__NativeString__to_s_with_length(var5
, var6
);
1254 ((void (*)(val
*, val
*, long))(var2
->class->vft
[COLOR_model_base__MVisibility__init
]))(var2
, var4
, var8
) /* init on <var2:MVisibility>*/;
1255 CHECK_NEW_model_base__MVisibility(var2
);
1265 /* method model_base#Object#protected_visibility for (self: Object): MVisibility */
1266 val
* VIRTUAL_model_base__Object__protected_visibility(val
* self
) {
1267 val
* var
/* : MVisibility */;
1268 val
* var1
/* : MVisibility */;
1269 var1
= model_base__Object__protected_visibility(self
);
1274 /* method model_base#Object#private_visibility for (self: Object): MVisibility */
1275 val
* model_base__Object__private_visibility(val
* self
) {
1276 val
* var
/* : MVisibility */;
1277 static val
* varonce
;
1278 static int varonce_guard
;
1279 val
* var1
/* : MVisibility */;
1280 val
* var2
/* : MVisibility */;
1281 static val
* varonce3
;
1282 val
* var4
/* : String */;
1283 char* var5
/* : NativeString */;
1284 long var6
/* : Int */;
1285 val
* var7
/* : String */;
1286 long var8
/* : Int */;
1287 if (varonce_guard
) {
1290 var2
= NEW_model_base__MVisibility(&type_model_base__MVisibility
);
1296 var7
= string__NativeString__to_s_with_length(var5
, var6
);
1301 ((void (*)(val
*, val
*, long))(var2
->class->vft
[COLOR_model_base__MVisibility__init
]))(var2
, var4
, var8
) /* init on <var2:MVisibility>*/;
1302 CHECK_NEW_model_base__MVisibility(var2
);
1312 /* method model_base#Object#private_visibility for (self: Object): MVisibility */
1313 val
* VIRTUAL_model_base__Object__private_visibility(val
* self
) {
1314 val
* var
/* : MVisibility */;
1315 val
* var1
/* : MVisibility */;
1316 var1
= model_base__Object__private_visibility(self
);
1321 /* method model_base#Object#none_visibility for (self: Object): MVisibility */
1322 val
* model_base__Object__none_visibility(val
* self
) {
1323 val
* var
/* : MVisibility */;
1324 static val
* varonce
;
1325 static int varonce_guard
;
1326 val
* var1
/* : MVisibility */;
1327 val
* var2
/* : MVisibility */;
1328 static val
* varonce3
;
1329 val
* var4
/* : String */;
1330 char* var5
/* : NativeString */;
1331 long var6
/* : Int */;
1332 val
* var7
/* : String */;
1333 long var8
/* : Int */;
1334 if (varonce_guard
) {
1337 var2
= NEW_model_base__MVisibility(&type_model_base__MVisibility
);
1343 var7
= string__NativeString__to_s_with_length(var5
, var6
);
1348 ((void (*)(val
*, val
*, long))(var2
->class->vft
[COLOR_model_base__MVisibility__init
]))(var2
, var4
, var8
) /* init on <var2:MVisibility>*/;
1349 CHECK_NEW_model_base__MVisibility(var2
);
1359 /* method model_base#Object#none_visibility for (self: Object): MVisibility */
1360 val
* VIRTUAL_model_base__Object__none_visibility(val
* self
) {
1361 val
* var
/* : MVisibility */;
1362 val
* var1
/* : MVisibility */;
1363 var1
= model_base__Object__none_visibility(self
);