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 (%s:%d)\n", "Uninitialized attribute @mmodules", "src/model/model_base.nit", 26);
15 /* method model_base#Model#mmodules for (self: Object): Array[MModule] */
16 val
* VIRTUAL_model_base__Model__mmodules(val
* self
) {
17 val
* var
/* : Array[MModule] */;
18 val
* var1
/* : Array[MModule] */;
19 var1
= model_base__Model__mmodules(self
);
24 /* method model_base#Model#mmodules= for (self: Model, Array[MModule]) */
25 void model_base__Model__mmodules_61d(val
* self
, val
* p0
) {
26 self
->attrs
[COLOR_model_base__Model___64dmmodules
].val
= p0
; /* @mmodules on <self:Model> */
29 /* method model_base#Model#mmodules= for (self: Object, Array[MModule]) */
30 void VIRTUAL_model_base__Model__mmodules_61d(val
* self
, val
* p0
) {
31 model_base__Model__mmodules_61d(self
, p0
);
34 /* method model_base#Model#mmodule_nesting_hierarchy for (self: Model): POSet[MModule] */
35 val
* model_base__Model__mmodule_nesting_hierarchy(val
* self
) {
36 val
* var
/* : POSet[MModule] */;
37 val
* var1
/* : POSet[MModule] */;
38 var1
= self
->attrs
[COLOR_model_base__Model___64dmmodule_nesting_hierarchy
].val
; /* @mmodule_nesting_hierarchy on <self:Model> */
40 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute @mmodule_nesting_hierarchy", "src/model/model_base.nit", 29);
47 /* method model_base#Model#mmodule_nesting_hierarchy for (self: Object): POSet[MModule] */
48 val
* VIRTUAL_model_base__Model__mmodule_nesting_hierarchy(val
* self
) {
49 val
* var
/* : POSet[MModule] */;
50 val
* var1
/* : POSet[MModule] */;
51 var1
= model_base__Model__mmodule_nesting_hierarchy(self
);
56 /* method model_base#Model#mmodule_nesting_hierarchy= for (self: Model, POSet[MModule]) */
57 void model_base__Model__mmodule_nesting_hierarchy_61d(val
* self
, val
* p0
) {
58 self
->attrs
[COLOR_model_base__Model___64dmmodule_nesting_hierarchy
].val
= p0
; /* @mmodule_nesting_hierarchy on <self:Model> */
61 /* method model_base#Model#mmodule_nesting_hierarchy= for (self: Object, POSet[MModule]) */
62 void VIRTUAL_model_base__Model__mmodule_nesting_hierarchy_61d(val
* self
, val
* p0
) {
63 model_base__Model__mmodule_nesting_hierarchy_61d(self
, p0
);
66 /* method model_base#Model#mmodule_importation_hierarchy for (self: Model): POSet[MModule] */
67 val
* model_base__Model__mmodule_importation_hierarchy(val
* self
) {
68 val
* var
/* : POSet[MModule] */;
69 val
* var1
/* : POSet[MModule] */;
70 var1
= self
->attrs
[COLOR_model_base__Model___64dmmodule_importation_hierarchy
].val
; /* @mmodule_importation_hierarchy on <self:Model> */
72 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute @mmodule_importation_hierarchy", "src/model/model_base.nit", 33);
79 /* method model_base#Model#mmodule_importation_hierarchy for (self: Object): POSet[MModule] */
80 val
* VIRTUAL_model_base__Model__mmodule_importation_hierarchy(val
* self
) {
81 val
* var
/* : POSet[MModule] */;
82 val
* var1
/* : POSet[MModule] */;
83 var1
= model_base__Model__mmodule_importation_hierarchy(self
);
88 /* method model_base#Model#mmodule_importation_hierarchy= for (self: Model, POSet[MModule]) */
89 void model_base__Model__mmodule_importation_hierarchy_61d(val
* self
, val
* p0
) {
90 self
->attrs
[COLOR_model_base__Model___64dmmodule_importation_hierarchy
].val
= p0
; /* @mmodule_importation_hierarchy on <self:Model> */
93 /* method model_base#Model#mmodule_importation_hierarchy= for (self: Object, POSet[MModule]) */
94 void VIRTUAL_model_base__Model__mmodule_importation_hierarchy_61d(val
* self
, val
* p0
) {
95 model_base__Model__mmodule_importation_hierarchy_61d(self
, p0
);
98 /* method model_base#Model#mmodules_by_name for (self: Model): MultiHashMap[String, MModule] */
99 val
* model_base__Model__mmodules_by_name(val
* self
) {
100 val
* var
/* : MultiHashMap[String, MModule] */;
101 val
* var1
/* : MultiHashMap[String, MModule] */;
102 var1
= self
->attrs
[COLOR_model_base__Model___64dmmodules_by_name
].val
; /* @mmodules_by_name on <self:Model> */
104 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute @mmodules_by_name", "src/model/model_base.nit", 36);
111 /* method model_base#Model#mmodules_by_name for (self: Object): MultiHashMap[String, MModule] */
112 val
* VIRTUAL_model_base__Model__mmodules_by_name(val
* self
) {
113 val
* var
/* : MultiHashMap[String, MModule] */;
114 val
* var1
/* : MultiHashMap[String, MModule] */;
115 var1
= model_base__Model__mmodules_by_name(self
);
120 /* method model_base#Model#mmodules_by_name= for (self: Model, MultiHashMap[String, MModule]) */
121 void model_base__Model__mmodules_by_name_61d(val
* self
, val
* p0
) {
122 self
->attrs
[COLOR_model_base__Model___64dmmodules_by_name
].val
= p0
; /* @mmodules_by_name on <self:Model> */
125 /* method model_base#Model#mmodules_by_name= for (self: Object, MultiHashMap[String, MModule]) */
126 void VIRTUAL_model_base__Model__mmodules_by_name_61d(val
* self
, val
* p0
) {
127 model_base__Model__mmodules_by_name_61d(self
, p0
);
130 /* method model_base#Model#get_mmodules_by_name for (self: Model, String): nullable Array[MModule] */
131 val
* model_base__Model__get_mmodules_by_name(val
* self
, val
* p0
) {
132 val
* var
/* : nullable Array[MModule] */;
133 val
* var_name
/* var name: String */;
134 val
* var1
/* : MultiHashMap[String, MModule] */;
135 short int var2
/* : Bool */;
136 val
* var3
/* : MultiHashMap[String, MModule] */;
137 val
* var4
/* : nullable Object */;
138 val
* var5
/* : null */;
140 var1
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__Model__mmodules_by_name
]))(self
) /* mmodules_by_name on <self:Model>*/;
141 var2
= ((short int (*)(val
*, val
*))(var1
->class->vft
[COLOR_abstract_collection__MapRead__has_key
]))(var1
, var_name
) /* has_key on <var1:MultiHashMap[String, MModule]>*/;
143 var3
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__Model__mmodules_by_name
]))(self
) /* mmodules_by_name on <self:Model>*/;
144 var4
= ((val
* (*)(val
*, val
*))(var3
->class->vft
[COLOR_abstract_collection__MapRead___91d_93d
]))(var3
, var_name
) /* [] on <var3:MultiHashMap[String, MModule]>*/;
155 /* method model_base#Model#get_mmodules_by_name for (self: Object, String): nullable Array[MModule] */
156 val
* VIRTUAL_model_base__Model__get_mmodules_by_name(val
* self
, val
* p0
) {
157 val
* var
/* : nullable Array[MModule] */;
158 val
* var1
/* : nullable Array[MModule] */;
159 var1
= model_base__Model__get_mmodules_by_name(self
, p0
);
164 /* method model_base#Model#init for (self: Model) */
165 void model_base__Model__init(val
* self
) {
168 /* method model_base#Model#init for (self: Object) */
169 void VIRTUAL_model_base__Model__init(val
* self
) {
170 model_base__Model__init(self
);
173 /* method model_base#MModule#model for (self: MModule): Model */
174 val
* model_base__MModule__model(val
* self
) {
175 val
* var
/* : Model */;
176 val
* var1
/* : Model */;
177 var1
= self
->attrs
[COLOR_model_base__MModule___64dmodel
].val
; /* @model on <self:MModule> */
179 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute @model", "src/model/model_base.nit", 56);
186 /* method model_base#MModule#model for (self: Object): Model */
187 val
* VIRTUAL_model_base__MModule__model(val
* self
) {
188 val
* var
/* : Model */;
189 val
* var1
/* : Model */;
190 var1
= model_base__MModule__model(self
);
195 /* method model_base#MModule#model= for (self: MModule, Model) */
196 void model_base__MModule__model_61d(val
* self
, val
* p0
) {
197 self
->attrs
[COLOR_model_base__MModule___64dmodel
].val
= p0
; /* @model on <self:MModule> */
200 /* method model_base#MModule#model= for (self: Object, Model) */
201 void VIRTUAL_model_base__MModule__model_61d(val
* self
, val
* p0
) {
202 model_base__MModule__model_61d(self
, p0
);
205 /* method model_base#MModule#direct_owner for (self: MModule): nullable MModule */
206 val
* model_base__MModule__direct_owner(val
* self
) {
207 val
* var
/* : nullable MModule */;
208 val
* var1
/* : nullable MModule */;
209 var1
= self
->attrs
[COLOR_model_base__MModule___64ddirect_owner
].val
; /* @direct_owner on <self:MModule> */
214 /* method model_base#MModule#direct_owner for (self: Object): nullable MModule */
215 val
* VIRTUAL_model_base__MModule__direct_owner(val
* self
) {
216 val
* var
/* : nullable MModule */;
217 val
* var1
/* : nullable MModule */;
218 var1
= model_base__MModule__direct_owner(self
);
223 /* method model_base#MModule#direct_owner= for (self: MModule, nullable MModule) */
224 void model_base__MModule__direct_owner_61d(val
* self
, val
* p0
) {
225 self
->attrs
[COLOR_model_base__MModule___64ddirect_owner
].val
= p0
; /* @direct_owner on <self:MModule> */
228 /* method model_base#MModule#direct_owner= for (self: Object, nullable MModule) */
229 void VIRTUAL_model_base__MModule__direct_owner_61d(val
* self
, val
* p0
) {
230 model_base__MModule__direct_owner_61d(self
, p0
);
233 /* method model_base#MModule#name for (self: MModule): String */
234 val
* model_base__MModule__name(val
* self
) {
235 val
* var
/* : String */;
236 val
* var1
/* : String */;
237 var1
= self
->attrs
[COLOR_model_base__MModule___64dname
].val
; /* @name on <self:MModule> */
239 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute @name", "src/model/model_base.nit", 62);
246 /* method model_base#MModule#name for (self: Object): String */
247 val
* VIRTUAL_model_base__MModule__name(val
* self
) {
248 val
* var
/* : String */;
249 val
* var1
/* : String */;
250 var1
= model_base__MModule__name(self
);
255 /* method model_base#MModule#name= for (self: MModule, String) */
256 void model_base__MModule__name_61d(val
* self
, val
* p0
) {
257 self
->attrs
[COLOR_model_base__MModule___64dname
].val
= p0
; /* @name on <self:MModule> */
260 /* method model_base#MModule#name= for (self: Object, String) */
261 void VIRTUAL_model_base__MModule__name_61d(val
* self
, val
* p0
) {
262 model_base__MModule__name_61d(self
, p0
);
265 /* method model_base#MModule#location for (self: MModule): Location */
266 val
* model_base__MModule__location(val
* self
) {
267 val
* var
/* : Location */;
268 val
* var1
/* : Location */;
269 var1
= self
->attrs
[COLOR_model_base__MModule___64dlocation
].val
; /* @location on <self:MModule> */
271 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute @location", "src/model/model_base.nit", 65);
278 /* method model_base#MModule#location for (self: Object): Location */
279 val
* VIRTUAL_model_base__MModule__location(val
* self
) {
280 val
* var
/* : Location */;
281 val
* var1
/* : Location */;
282 var1
= model_base__MModule__location(self
);
287 /* method model_base#MModule#location= for (self: MModule, Location) */
288 void model_base__MModule__location_61d(val
* self
, val
* p0
) {
289 self
->attrs
[COLOR_model_base__MModule___64dlocation
].val
= p0
; /* @location on <self:MModule> */
292 /* method model_base#MModule#location= for (self: Object, Location) */
293 void VIRTUAL_model_base__MModule__location_61d(val
* self
, val
* p0
) {
294 model_base__MModule__location_61d(self
, p0
);
297 /* method model_base#MModule#to_s for (self: MModule): String */
298 val
* model_base__MModule__to_s(val
* self
) {
299 val
* var
/* : String */;
300 val
* var1
/* : String */;
301 var1
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__MModule__name
]))(self
) /* name on <self:MModule>*/;
307 /* method model_base#MModule#to_s for (self: Object): String */
308 val
* VIRTUAL_model_base__MModule__to_s(val
* self
) {
309 val
* var
/* : String */;
310 val
* var1
/* : String */;
311 var1
= model_base__MModule__to_s(self
);
316 /* method model_base#MModule#in_nesting for (self: MModule): POSetElement[MModule] */
317 val
* model_base__MModule__in_nesting(val
* self
) {
318 val
* var
/* : POSetElement[MModule] */;
319 val
* var1
/* : POSetElement[MModule] */;
320 var1
= self
->attrs
[COLOR_model_base__MModule___64din_nesting
].val
; /* @in_nesting on <self:MModule> */
322 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute @in_nesting", "src/model/model_base.nit", 71);
329 /* method model_base#MModule#in_nesting for (self: Object): POSetElement[MModule] */
330 val
* VIRTUAL_model_base__MModule__in_nesting(val
* self
) {
331 val
* var
/* : POSetElement[MModule] */;
332 val
* var1
/* : POSetElement[MModule] */;
333 var1
= model_base__MModule__in_nesting(self
);
338 /* method model_base#MModule#in_nesting= for (self: MModule, POSetElement[MModule]) */
339 void model_base__MModule__in_nesting_61d(val
* self
, val
* p0
) {
340 self
->attrs
[COLOR_model_base__MModule___64din_nesting
].val
= p0
; /* @in_nesting on <self:MModule> */
343 /* method model_base#MModule#in_nesting= for (self: Object, POSetElement[MModule]) */
344 void VIRTUAL_model_base__MModule__in_nesting_61d(val
* self
, val
* p0
) {
345 model_base__MModule__in_nesting_61d(self
, p0
);
348 /* method model_base#MModule#in_importation for (self: MModule): POSetElement[MModule] */
349 val
* model_base__MModule__in_importation(val
* self
) {
350 val
* var
/* : POSetElement[MModule] */;
351 val
* var1
/* : POSetElement[MModule] */;
352 var1
= self
->attrs
[COLOR_model_base__MModule___64din_importation
].val
; /* @in_importation on <self:MModule> */
354 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute @in_importation", "src/model/model_base.nit", 74);
361 /* method model_base#MModule#in_importation for (self: Object): POSetElement[MModule] */
362 val
* VIRTUAL_model_base__MModule__in_importation(val
* self
) {
363 val
* var
/* : POSetElement[MModule] */;
364 val
* var1
/* : POSetElement[MModule] */;
365 var1
= model_base__MModule__in_importation(self
);
370 /* method model_base#MModule#in_importation= for (self: MModule, POSetElement[MModule]) */
371 void model_base__MModule__in_importation_61d(val
* self
, val
* p0
) {
372 self
->attrs
[COLOR_model_base__MModule___64din_importation
].val
= p0
; /* @in_importation on <self:MModule> */
375 /* method model_base#MModule#in_importation= for (self: Object, POSetElement[MModule]) */
376 void VIRTUAL_model_base__MModule__in_importation_61d(val
* self
, val
* p0
) {
377 model_base__MModule__in_importation_61d(self
, p0
);
380 /* method model_base#MModule#full_name for (self: MModule): String */
381 val
* model_base__MModule__full_name(val
* self
) {
382 val
* var
/* : String */;
383 val
* var1
/* : nullable MModule */;
384 val
* var_owner
/* var owner: nullable MModule */;
385 val
* var2
/* : null */;
386 short int var3
/* : Bool */;
387 val
* var4
/* : String */;
388 val
* var5
/* : Array[Object] */;
389 long var6
/* : Int */;
390 val
* var_
/* var : Array[Object] */;
392 val
* var7
/* : String */;
393 char* var8
/* : NativeString */;
394 long var9
/* : Int */;
395 val
* var10
/* : String */;
396 val
* var11
/* : String */;
397 static val
* varonce12
;
398 val
* var13
/* : String */;
399 char* var14
/* : NativeString */;
400 long var15
/* : Int */;
401 val
* var16
/* : String */;
402 val
* var17
/* : String */;
403 static val
* varonce18
;
404 val
* var19
/* : String */;
405 char* var20
/* : NativeString */;
406 long var21
/* : Int */;
407 val
* var22
/* : String */;
408 val
* var23
/* : String */;
409 var1
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__MModule__public_owner
]))(self
) /* public_owner on <self:MModule>*/;
412 if (var_owner
== NULL
) {
413 var3
= 1; /* is null */
415 var3
= 0; /* arg is null but recv is not */
418 var4
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__MModule__name
]))(self
) /* name on <self:MModule>*/;
422 var5
= NEW_array__Array(&type_array__Arraykernel__Object
);
424 ((void (*)(val
*, long))(var5
->class->vft
[COLOR_array__Array__with_capacity
]))(var5
, var6
) /* with_capacity on <var5:Array[Object]>*/;
425 CHECK_NEW_array__Array(var5
);
432 var10
= string__NativeString__to_s_with_length(var8
, var9
);
436 ((void (*)(val
*, val
*))(var_
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_
, var7
) /* add on <var_:Array[Object]>*/;
437 var11
= ((val
* (*)(val
*))(var_owner
->class->vft
[COLOR_model_base__MModule__full_name
]))(var_owner
) /* full_name on <var_owner:nullable MModule(MModule)>*/;
438 ((void (*)(val
*, val
*))(var_
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_
, var11
) /* add on <var_:Array[Object]>*/;
444 var16
= string__NativeString__to_s_with_length(var14
, var15
);
448 ((void (*)(val
*, val
*))(var_
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_
, var13
) /* add on <var_:Array[Object]>*/;
449 var17
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__MModule__name
]))(self
) /* name on <self:MModule>*/;
450 ((void (*)(val
*, val
*))(var_
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_
, var17
) /* add on <var_:Array[Object]>*/;
456 var22
= string__NativeString__to_s_with_length(var20
, var21
);
460 ((void (*)(val
*, val
*))(var_
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_
, var19
) /* add on <var_:Array[Object]>*/;
461 var23
= ((val
* (*)(val
*))(var_
->class->vft
[COLOR_string__Object__to_s
]))(var_
) /* to_s on <var_:Array[Object]>*/;
468 /* method model_base#MModule#full_name for (self: Object): String */
469 val
* VIRTUAL_model_base__MModule__full_name(val
* self
) {
470 val
* var
/* : String */;
471 val
* var1
/* : String */;
472 var1
= model_base__MModule__full_name(self
);
477 /* method model_base#MModule#init for (self: MModule, Model, nullable MModule, String, Location) */
478 void model_base__MModule__init(val
* self
, val
* p0
, val
* p1
, val
* p2
, val
* p3
) {
479 val
* var_model
/* var model: Model */;
480 val
* var_direct_owner
/* var direct_owner: nullable MModule */;
481 val
* var_name
/* var name: String */;
482 val
* var_location
/* var location: Location */;
483 val
* var
/* : MultiHashMap[String, MModule] */;
484 val
* var1
/* : Array[MModule] */;
485 val
* var2
/* : POSet[MModule] */;
486 val
* var3
/* : POSetElement[Object] */;
487 val
* var4
/* : null */;
488 short int var5
/* : Bool */;
489 val
* var6
/* : POSet[MModule] */;
490 val
* var7
/* : POSet[MModule] */;
491 val
* var8
/* : POSetElement[Object] */;
493 var_direct_owner
= p1
;
496 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_model_base__MModule__model_61d
]))(self
, var_model
) /* model= on <self:MModule>*/;
497 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_model_base__MModule__name_61d
]))(self
, var_name
) /* name= on <self:MModule>*/;
498 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_model_base__MModule__location_61d
]))(self
, var_location
) /* location= on <self:MModule>*/;
499 var
= ((val
* (*)(val
*))(var_model
->class->vft
[COLOR_model_base__Model__mmodules_by_name
]))(var_model
) /* mmodules_by_name on <var_model:Model>*/;
500 ((void (*)(val
*, val
*, val
*))(var
->class->vft
[COLOR_more_collections__MultiHashMap__add_one
]))(var
, var_name
, self
) /* add_one on <var:MultiHashMap[String, MModule]>*/;
501 var1
= ((val
* (*)(val
*))(var_model
->class->vft
[COLOR_model_base__Model__mmodules
]))(var_model
) /* mmodules on <var_model:Model>*/;
502 ((void (*)(val
*, val
*))(var1
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var1
, self
) /* add on <var1:Array[MModule]>*/;
503 var2
= ((val
* (*)(val
*))(var_model
->class->vft
[COLOR_model_base__Model__mmodule_nesting_hierarchy
]))(var_model
) /* mmodule_nesting_hierarchy on <var_model:Model>*/;
504 var3
= ((val
* (*)(val
*, val
*))(var2
->class->vft
[COLOR_poset__POSet__add_node
]))(var2
, self
) /* add_node on <var2:POSet[MModule]>*/;
505 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_model_base__MModule__in_nesting_61d
]))(self
, var3
) /* in_nesting= on <self:MModule>*/;
506 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_model_base__MModule__direct_owner_61d
]))(self
, var_direct_owner
) /* direct_owner= on <self:MModule>*/;
508 if (var_direct_owner
== NULL
) {
509 var5
= 0; /* is null */
511 var5
= 1; /* arg is null and recv is not */
514 var6
= ((val
* (*)(val
*))(var_model
->class->vft
[COLOR_model_base__Model__mmodule_nesting_hierarchy
]))(var_model
) /* mmodule_nesting_hierarchy on <var_model:Model>*/;
515 ((void (*)(val
*, val
*, val
*))(var6
->class->vft
[COLOR_poset__POSet__add_edge
]))(var6
, var_direct_owner
, self
) /* add_edge on <var6:POSet[MModule]>*/;
518 var7
= ((val
* (*)(val
*))(var_model
->class->vft
[COLOR_model_base__Model__mmodule_importation_hierarchy
]))(var_model
) /* mmodule_importation_hierarchy on <var_model:Model>*/;
519 var8
= ((val
* (*)(val
*, val
*))(var7
->class->vft
[COLOR_poset__POSet__add_node
]))(var7
, self
) /* add_node on <var7:POSet[MModule]>*/;
520 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_model_base__MModule__in_importation_61d
]))(self
, var8
) /* in_importation= on <self:MModule>*/;
523 /* method model_base#MModule#init for (self: Object, Model, nullable MModule, String, Location) */
524 void VIRTUAL_model_base__MModule__init(val
* self
, val
* p0
, val
* p1
, val
* p2
, val
* p3
) {
525 model_base__MModule__init(self
, p0
, p1
, p2
, p3
);
528 /* method model_base#MModule#set_imported_mmodules for (self: MModule, Array[MModule]) */
529 void model_base__MModule__set_imported_mmodules(val
* self
, val
* p0
) {
530 val
* var_imported_mmodules
/* var imported_mmodules: Array[MModule] */;
531 val
* var
/* : POSetElement[MModule] */;
532 val
* var1
/* : Collection[Object] */;
533 short int var2
/* : Bool */;
534 val
* var3
/* : Iterator[nullable Object] */;
535 short int var4
/* : Bool */;
536 val
* var5
/* : nullable Object */;
537 val
* var_m
/* var m: MModule */;
538 val
* var6
/* : Model */;
539 val
* var7
/* : POSet[MModule] */;
540 var_imported_mmodules
= p0
;
541 var
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__MModule__in_importation
]))(self
) /* in_importation on <self:MModule>*/;
542 var1
= ((val
* (*)(val
*))(var
->class->vft
[COLOR_poset__POSetElement__direct_greaters
]))(var
) /* direct_greaters on <var:POSetElement[MModule]>*/;
543 var2
= ((short int (*)(val
*))(var1
->class->vft
[COLOR_abstract_collection__Collection__is_empty
]))(var1
) /* is_empty on <var1:Collection[Object](Collection[MModule])>*/;
545 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert \'unique_invocation\' failed", "src/model/model_base.nit", 111);
548 var3
= ((val
* (*)(val
*))(var_imported_mmodules
->class->vft
[COLOR_abstract_collection__Collection__iterator
]))(var_imported_mmodules
) /* iterator on <var_imported_mmodules:Array[MModule]>*/;
550 var4
= ((short int (*)(val
*))(var3
->class->vft
[COLOR_abstract_collection__Iterator__is_ok
]))(var3
) /* is_ok on <var3:Iterator[nullable Object]>*/;
552 var5
= ((val
* (*)(val
*))(var3
->class->vft
[COLOR_abstract_collection__Iterator__item
]))(var3
) /* item on <var3:Iterator[nullable Object]>*/;
554 var6
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__MModule__model
]))(self
) /* model on <self:MModule>*/;
555 var7
= ((val
* (*)(val
*))(var6
->class->vft
[COLOR_model_base__Model__mmodule_importation_hierarchy
]))(var6
) /* mmodule_importation_hierarchy on <var6:Model>*/;
556 ((void (*)(val
*, val
*, val
*))(var7
->class->vft
[COLOR_poset__POSet__add_edge
]))(var7
, self
, var_m
) /* add_edge on <var7:POSet[MModule]>*/;
557 CONTINUE_label
: (void)0;
558 ((void (*)(val
*))(var3
->class->vft
[COLOR_abstract_collection__Iterator__next
]))(var3
) /* next on <var3:Iterator[nullable Object]>*/;
560 BREAK_label
: (void)0;
563 /* method model_base#MModule#set_imported_mmodules for (self: Object, Array[MModule]) */
564 void VIRTUAL_model_base__MModule__set_imported_mmodules(val
* self
, val
* p0
) {
565 model_base__MModule__set_imported_mmodules(self
, p0
);
568 /* method model_base#MModule#intrude_mmodules for (self: MModule): HashSet[MModule] */
569 val
* model_base__MModule__intrude_mmodules(val
* self
) {
570 val
* var
/* : HashSet[MModule] */;
571 val
* var1
/* : HashSet[MModule] */;
572 var1
= self
->attrs
[COLOR_model_base__MModule___64dintrude_mmodules
].val
; /* @intrude_mmodules on <self:MModule> */
574 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute @intrude_mmodules", "src/model/model_base.nit", 117);
581 /* method model_base#MModule#intrude_mmodules for (self: Object): HashSet[MModule] */
582 val
* VIRTUAL_model_base__MModule__intrude_mmodules(val
* self
) {
583 val
* var
/* : HashSet[MModule] */;
584 val
* var1
/* : HashSet[MModule] */;
585 var1
= model_base__MModule__intrude_mmodules(self
);
590 /* method model_base#MModule#intrude_mmodules= for (self: MModule, HashSet[MModule]) */
591 void model_base__MModule__intrude_mmodules_61d(val
* self
, val
* p0
) {
592 self
->attrs
[COLOR_model_base__MModule___64dintrude_mmodules
].val
= p0
; /* @intrude_mmodules on <self:MModule> */
595 /* method model_base#MModule#intrude_mmodules= for (self: Object, HashSet[MModule]) */
596 void VIRTUAL_model_base__MModule__intrude_mmodules_61d(val
* self
, val
* p0
) {
597 model_base__MModule__intrude_mmodules_61d(self
, p0
);
600 /* method model_base#MModule#public_mmodules for (self: MModule): HashSet[MModule] */
601 val
* model_base__MModule__public_mmodules(val
* self
) {
602 val
* var
/* : HashSet[MModule] */;
603 val
* var1
/* : HashSet[MModule] */;
604 var1
= self
->attrs
[COLOR_model_base__MModule___64dpublic_mmodules
].val
; /* @public_mmodules on <self:MModule> */
606 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute @public_mmodules", "src/model/model_base.nit", 118);
613 /* method model_base#MModule#public_mmodules for (self: Object): HashSet[MModule] */
614 val
* VIRTUAL_model_base__MModule__public_mmodules(val
* self
) {
615 val
* var
/* : HashSet[MModule] */;
616 val
* var1
/* : HashSet[MModule] */;
617 var1
= model_base__MModule__public_mmodules(self
);
622 /* method model_base#MModule#public_mmodules= for (self: MModule, HashSet[MModule]) */
623 void model_base__MModule__public_mmodules_61d(val
* self
, val
* p0
) {
624 self
->attrs
[COLOR_model_base__MModule___64dpublic_mmodules
].val
= p0
; /* @public_mmodules on <self:MModule> */
627 /* method model_base#MModule#public_mmodules= for (self: Object, HashSet[MModule]) */
628 void VIRTUAL_model_base__MModule__public_mmodules_61d(val
* self
, val
* p0
) {
629 model_base__MModule__public_mmodules_61d(self
, p0
);
632 /* method model_base#MModule#private_mmodules for (self: MModule): HashSet[MModule] */
633 val
* model_base__MModule__private_mmodules(val
* self
) {
634 val
* var
/* : HashSet[MModule] */;
635 val
* var1
/* : HashSet[MModule] */;
636 var1
= self
->attrs
[COLOR_model_base__MModule___64dprivate_mmodules
].val
; /* @private_mmodules on <self:MModule> */
638 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute @private_mmodules", "src/model/model_base.nit", 119);
645 /* method model_base#MModule#private_mmodules for (self: Object): HashSet[MModule] */
646 val
* VIRTUAL_model_base__MModule__private_mmodules(val
* self
) {
647 val
* var
/* : HashSet[MModule] */;
648 val
* var1
/* : HashSet[MModule] */;
649 var1
= model_base__MModule__private_mmodules(self
);
654 /* method model_base#MModule#private_mmodules= for (self: MModule, HashSet[MModule]) */
655 void model_base__MModule__private_mmodules_61d(val
* self
, val
* p0
) {
656 self
->attrs
[COLOR_model_base__MModule___64dprivate_mmodules
].val
= p0
; /* @private_mmodules on <self:MModule> */
659 /* method model_base#MModule#private_mmodules= for (self: Object, HashSet[MModule]) */
660 void VIRTUAL_model_base__MModule__private_mmodules_61d(val
* self
, val
* p0
) {
661 model_base__MModule__private_mmodules_61d(self
, p0
);
664 /* method model_base#MModule#visibility_for for (self: MModule, MModule): MVisibility */
665 val
* model_base__MModule__visibility_for(val
* self
, val
* p0
) {
666 val
* var
/* : MVisibility */;
667 val
* var_m
/* var m: MModule */;
668 short int var1
/* : Bool */;
669 val
* var2
/* : MVisibility */;
670 val
* var3
/* : HashSet[MModule] */;
671 short int var4
/* : Bool */;
672 val
* var5
/* : MVisibility */;
673 val
* var6
/* : HashSet[MModule] */;
674 short int var7
/* : Bool */;
675 val
* var8
/* : MVisibility */;
676 val
* var9
/* : HashSet[MModule] */;
677 short int var10
/* : Bool */;
678 val
* var11
/* : MVisibility */;
679 val
* var12
/* : MVisibility */;
681 var1
= ((short int (*)(val
*, val
*))(var_m
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_m
, self
) /* == on <var_m:MModule>*/;
683 var2
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__Object__intrude_visibility
]))(self
) /* intrude_visibility on <self:MModule>*/;
688 var3
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__MModule__intrude_mmodules
]))(self
) /* intrude_mmodules on <self:MModule>*/;
689 var4
= ((short int (*)(val
*, val
*))(var3
->class->vft
[COLOR_abstract_collection__Collection__has
]))(var3
, var_m
) /* has on <var3:HashSet[MModule]>*/;
691 var5
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__Object__intrude_visibility
]))(self
) /* intrude_visibility on <self:MModule>*/;
696 var6
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__MModule__public_mmodules
]))(self
) /* public_mmodules on <self:MModule>*/;
697 var7
= ((short int (*)(val
*, val
*))(var6
->class->vft
[COLOR_abstract_collection__Collection__has
]))(var6
, var_m
) /* has on <var6:HashSet[MModule]>*/;
699 var8
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__Object__public_visibility
]))(self
) /* public_visibility on <self:MModule>*/;
704 var9
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__MModule__private_mmodules
]))(self
) /* private_mmodules on <self:MModule>*/;
705 var10
= ((short int (*)(val
*, val
*))(var9
->class->vft
[COLOR_abstract_collection__Collection__has
]))(var9
, var_m
) /* has on <var9:HashSet[MModule]>*/;
707 var11
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__Object__private_visibility
]))(self
) /* private_visibility on <self:MModule>*/;
712 var12
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__Object__none_visibility
]))(self
) /* none_visibility on <self:MModule>*/;
718 /* method model_base#MModule#visibility_for for (self: Object, MModule): MVisibility */
719 val
* VIRTUAL_model_base__MModule__visibility_for(val
* self
, val
* p0
) {
720 val
* var
/* : MVisibility */;
721 val
* var1
/* : MVisibility */;
722 var1
= model_base__MModule__visibility_for(self
, p0
);
727 /* method model_base#MModule#set_visibility_for for (self: MModule, MModule, MVisibility) */
728 void model_base__MModule__set_visibility_for(val
* self
, val
* p0
, val
* p1
) {
729 val
* var_m
/* var m: MModule */;
730 val
* var_v
/* var v: MVisibility */;
731 val
* var
/* : MVisibility */;
732 short int var1
/* : Bool */;
733 val
* var2
/* : HashSet[MModule] */;
734 val
* var3
/* : HashSet[MModule] */;
735 val
* var4
/* : HashSet[MModule] */;
736 val
* var5
/* : HashSet[MModule] */;
737 val
* var6
/* : HashSet[MModule] */;
738 val
* var7
/* : HashSet[MModule] */;
739 val
* var8
/* : HashSet[MModule] */;
740 val
* var9
/* : MVisibility */;
741 short int var10
/* : Bool */;
742 val
* var11
/* : HashSet[MModule] */;
743 val
* var12
/* : HashSet[MModule] */;
744 val
* var13
/* : HashSet[MModule] */;
745 val
* var14
/* : HashSet[MModule] */;
746 val
* var15
/* : HashSet[MModule] */;
747 val
* var16
/* : MVisibility */;
748 short int var17
/* : Bool */;
749 val
* var18
/* : HashSet[MModule] */;
750 val
* var19
/* : HashSet[MModule] */;
751 val
* var20
/* : HashSet[MModule] */;
752 val
* var21
/* : HashSet[MModule] */;
753 val
* var22
/* : HashSet[MModule] */;
755 val
* var23
/* : String */;
756 char* var24
/* : NativeString */;
757 long var25
/* : Int */;
758 val
* var26
/* : String */;
759 static val
* varonce27
;
760 val
* var28
/* : String */;
761 char* var29
/* : NativeString */;
762 long var30
/* : Int */;
763 val
* var31
/* : String */;
764 val
* var32
/* : Array[Object] */;
765 long var33
/* : Int */;
766 val
* var34
/* : NativeArray[Object] */;
767 val
* var35
/* : String */;
770 var
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__Object__intrude_visibility
]))(self
) /* intrude_visibility on <self:MModule>*/;
771 var1
= ((short int (*)(val
*, val
*))(var_v
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_v
, var
) /* == on <var_v:MVisibility>*/;
773 var2
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__MModule__intrude_mmodules
]))(self
) /* intrude_mmodules on <self:MModule>*/;
774 ((void (*)(val
*, val
*))(var2
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var2
, var_m
) /* add on <var2:HashSet[MModule]>*/;
775 var3
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__MModule__intrude_mmodules
]))(self
) /* intrude_mmodules on <self:MModule>*/;
776 var4
= ((val
* (*)(val
*))(var_m
->class->vft
[COLOR_model_base__MModule__intrude_mmodules
]))(var_m
) /* intrude_mmodules on <var_m:MModule>*/;
777 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_abstract_collection__SimpleCollection__add_all
]))(var3
, var4
) /* add_all on <var3:HashSet[MModule]>*/;
778 var5
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__MModule__public_mmodules
]))(self
) /* public_mmodules on <self:MModule>*/;
779 var6
= ((val
* (*)(val
*))(var_m
->class->vft
[COLOR_model_base__MModule__public_mmodules
]))(var_m
) /* public_mmodules on <var_m:MModule>*/;
780 ((void (*)(val
*, val
*))(var5
->class->vft
[COLOR_abstract_collection__SimpleCollection__add_all
]))(var5
, var6
) /* add_all on <var5:HashSet[MModule]>*/;
781 var7
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__MModule__private_mmodules
]))(self
) /* private_mmodules on <self:MModule>*/;
782 var8
= ((val
* (*)(val
*))(var_m
->class->vft
[COLOR_model_base__MModule__private_mmodules
]))(var_m
) /* private_mmodules on <var_m:MModule>*/;
783 ((void (*)(val
*, val
*))(var7
->class->vft
[COLOR_abstract_collection__SimpleCollection__add_all
]))(var7
, var8
) /* add_all on <var7:HashSet[MModule]>*/;
785 var9
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__Object__public_visibility
]))(self
) /* public_visibility on <self:MModule>*/;
786 var10
= ((short int (*)(val
*, val
*))(var_v
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_v
, var9
) /* == on <var_v:MVisibility>*/;
788 var11
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__MModule__public_mmodules
]))(self
) /* public_mmodules on <self:MModule>*/;
789 ((void (*)(val
*, val
*))(var11
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var11
, var_m
) /* add on <var11:HashSet[MModule]>*/;
790 var12
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__MModule__public_mmodules
]))(self
) /* public_mmodules on <self:MModule>*/;
791 var13
= ((val
* (*)(val
*))(var_m
->class->vft
[COLOR_model_base__MModule__intrude_mmodules
]))(var_m
) /* intrude_mmodules on <var_m:MModule>*/;
792 ((void (*)(val
*, val
*))(var12
->class->vft
[COLOR_abstract_collection__SimpleCollection__add_all
]))(var12
, var13
) /* add_all on <var12:HashSet[MModule]>*/;
793 var14
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__MModule__public_mmodules
]))(self
) /* public_mmodules on <self:MModule>*/;
794 var15
= ((val
* (*)(val
*))(var_m
->class->vft
[COLOR_model_base__MModule__public_mmodules
]))(var_m
) /* public_mmodules on <var_m:MModule>*/;
795 ((void (*)(val
*, val
*))(var14
->class->vft
[COLOR_abstract_collection__SimpleCollection__add_all
]))(var14
, var15
) /* add_all on <var14:HashSet[MModule]>*/;
797 var16
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__Object__private_visibility
]))(self
) /* private_visibility on <self:MModule>*/;
798 var17
= ((short int (*)(val
*, val
*))(var_v
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_v
, var16
) /* == on <var_v:MVisibility>*/;
800 var18
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__MModule__private_mmodules
]))(self
) /* private_mmodules on <self:MModule>*/;
801 ((void (*)(val
*, val
*))(var18
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var18
, var_m
) /* add on <var18:HashSet[MModule]>*/;
802 var19
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__MModule__private_mmodules
]))(self
) /* private_mmodules on <self:MModule>*/;
803 var20
= ((val
* (*)(val
*))(var_m
->class->vft
[COLOR_model_base__MModule__intrude_mmodules
]))(var_m
) /* intrude_mmodules on <var_m:MModule>*/;
804 ((void (*)(val
*, val
*))(var19
->class->vft
[COLOR_abstract_collection__SimpleCollection__add_all
]))(var19
, var20
) /* add_all on <var19:HashSet[MModule]>*/;
805 var21
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__MModule__private_mmodules
]))(self
) /* private_mmodules on <self:MModule>*/;
806 var22
= ((val
* (*)(val
*))(var_m
->class->vft
[COLOR_model_base__MModule__public_mmodules
]))(var_m
) /* public_mmodules on <var_m:MModule>*/;
807 ((void (*)(val
*, val
*))(var21
->class->vft
[COLOR_abstract_collection__SimpleCollection__add_all
]))(var21
, var22
) /* add_all on <var21:HashSet[MModule]>*/;
812 var24
= " visibility for ";
814 var26
= string__NativeString__to_s_with_length(var24
, var25
);
823 var31
= string__NativeString__to_s_with_length(var29
, var30
);
827 var32
= NEW_array__Array(&type_array__Arraykernel__Object
);
828 { /* var32 = array_instance Array[Object] */
830 var34
= NEW_array__NativeArray(var33
, &type_array__NativeArraykernel__Object
);
831 ((struct instance_array__NativeArray
*)var34
)->values
[0] = (val
*) self
;
832 ((struct instance_array__NativeArray
*)var34
)->values
[1] = (val
*) var23
;
833 ((struct instance_array__NativeArray
*)var34
)->values
[2] = (val
*) var_m
;
834 ((struct instance_array__NativeArray
*)var34
)->values
[3] = (val
*) var28
;
835 ((struct instance_array__NativeArray
*)var34
)->values
[4] = (val
*) var_v
;
836 ((void (*)(val
*, val
*, long))(var32
->class->vft
[COLOR_array__Array__with_native
]))(var32
, var34
, var33
) /* with_native on <var32:Array[Object]>*/;
837 CHECK_NEW_array__Array(var32
);
839 var35
= ((val
* (*)(val
*))(var32
->class->vft
[COLOR_string__Object__to_s
]))(var32
) /* to_s on <var32:Array[Object]>*/;
840 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_file__Object__print
]))(self
, var35
) /* print on <self:MModule>*/;
841 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Aborted", "src/model/model_base.nit", 150);
848 /* method model_base#MModule#set_visibility_for for (self: Object, MModule, MVisibility) */
849 void VIRTUAL_model_base__MModule__set_visibility_for(val
* self
, val
* p0
, val
* p1
) {
850 model_base__MModule__set_visibility_for(self
, p0
, p1
);
853 /* method model_base#MModule#public_owner for (self: MModule): nullable MModule */
854 val
* model_base__MModule__public_owner(val
* self
) {
855 val
* var
/* : nullable MModule */;
856 val
* var1
/* : nullable MModule */;
857 val
* var_res
/* var res: nullable MModule */;
858 val
* var_last
/* var last: nullable MModule */;
859 val
* var2
/* : null */;
860 short int var3
/* : Bool */;
861 val
* var4
/* : MVisibility */;
862 val
* var5
/* : MVisibility */;
863 short int var6
/* : Bool */;
864 val
* var7
/* : nullable MModule */;
865 var1
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__MModule__direct_owner
]))(self
) /* direct_owner on <self:MModule>*/;
870 if (var_last
== NULL
) {
871 var3
= 0; /* is null */
873 var3
= 1; /* arg is null and recv is not */
876 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)>*/;
877 var5
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__Object__public_visibility
]))(self
) /* public_visibility on <self:MModule>*/;
878 var6
= ((short int (*)(val
*, val
*))(var4
->class->vft
[COLOR_kernel__Comparable___62d_61d
]))(var4
, var5
) /* >= on <var4:MVisibility>*/;
883 var7
= ((val
* (*)(val
*))(var_last
->class->vft
[COLOR_model_base__MModule__direct_owner
]))(var_last
) /* direct_owner on <var_last:nullable MModule(MModule)>*/;
885 CONTINUE_label
: (void)0;
887 BREAK_label
: (void)0;
893 /* method model_base#MModule#public_owner for (self: Object): nullable MModule */
894 val
* VIRTUAL_model_base__MModule__public_owner(val
* self
) {
895 val
* var
/* : nullable MModule */;
896 val
* var1
/* : nullable MModule */;
897 var1
= model_base__MModule__public_owner(self
);
902 /* method model_base#MModule#is_visible for (self: MModule, MModule, MVisibility): Bool */
903 short int model_base__MModule__is_visible(val
* self
, val
* p0
, val
* p1
) {
904 short int var
/* : Bool */;
905 val
* var_intro_mmodule
/* var intro_mmodule: MModule */;
906 val
* var_visibility
/* var visibility: MVisibility */;
907 val
* var1
/* : MVisibility */;
908 val
* var_v
/* var v: MVisibility */;
909 val
* var2
/* : MVisibility */;
910 short int var3
/* : Bool */;
911 val
* var4
/* : MVisibility */;
912 short int var5
/* : Bool */;
913 val
* var6
/* : MVisibility */;
914 short int var7
/* : Bool */;
915 val
* var8
/* : MVisibility */;
916 short int var9
/* : Bool */;
917 val
* var10
/* : MVisibility */;
918 short int var11
/* : Bool */;
919 val
* var12
/* : MVisibility */;
920 short int var13
/* : Bool */;
921 val
* var14
/* : MVisibility */;
922 short int var15
/* : Bool */;
923 short int var16
/* : Bool */;
924 var_intro_mmodule
= p0
;
926 var1
= ((val
* (*)(val
*, val
*))(self
->class->vft
[COLOR_model_base__MModule__visibility_for
]))(self
, var_intro_mmodule
) /* visibility_for on <self:MModule>*/;
928 var2
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__Object__intrude_visibility
]))(self
) /* intrude_visibility on <self:MModule>*/;
929 var3
= ((short int (*)(val
*, val
*))(var_v
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_v
, var2
) /* == on <var_v:MVisibility>*/;
931 var4
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__Object__private_visibility
]))(self
) /* private_visibility on <self:MModule>*/;
932 var5
= ((short int (*)(val
*, val
*))(var_visibility
->class->vft
[COLOR_kernel__Comparable___62d_61d
]))(var_visibility
, var4
) /* >= on <var_visibility:MVisibility>*/;
936 var6
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__Object__public_visibility
]))(self
) /* public_visibility on <self:MModule>*/;
937 var7
= ((short int (*)(val
*, val
*))(var_v
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_v
, var6
) /* == on <var_v:MVisibility>*/;
939 var8
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__Object__private_visibility
]))(self
) /* private_visibility on <self:MModule>*/;
940 var9
= ((short int (*)(val
*, val
*))(var_visibility
->class->vft
[COLOR_kernel__Comparable___62d
]))(var_visibility
, var8
) /* > on <var_visibility:MVisibility>*/;
944 var10
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__Object__private_visibility
]))(self
) /* private_visibility on <self:MModule>*/;
945 var11
= ((short int (*)(val
*, val
*))(var_v
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_v
, var10
) /* == on <var_v:MVisibility>*/;
947 var12
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__Object__private_visibility
]))(self
) /* private_visibility on <self:MModule>*/;
948 var13
= ((short int (*)(val
*, val
*))(var_visibility
->class->vft
[COLOR_kernel__Comparable___62d
]))(var_visibility
, var12
) /* > on <var_visibility:MVisibility>*/;
952 var14
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_model_base__Object__none_visibility
]))(self
) /* none_visibility on <self:MModule>*/;
953 var15
= ((short int (*)(val
*, val
*))(var_v
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_v
, var14
) /* == on <var_v:MVisibility>*/;
959 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Aborted", "src/model/model_base.nit", 181);
968 /* method model_base#MModule#is_visible for (self: Object, MModule, MVisibility): Bool */
969 short int VIRTUAL_model_base__MModule__is_visible(val
* self
, val
* p0
, val
* p1
) {
970 short int var
/* : Bool */;
971 short int var1
/* : Bool */;
972 var1
= model_base__MModule__is_visible(self
, p0
, p1
);
977 /* method model_base#MVisibility#to_s for (self: MVisibility): String */
978 val
* model_base__MVisibility__to_s(val
* self
) {
979 val
* var
/* : String */;
980 val
* var1
/* : String */;
981 var1
= self
->attrs
[COLOR_model_base__MVisibility___64dto_s
].val
; /* @to_s on <self:MVisibility> */
983 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute @to_s", "src/model/model_base.nit", 200);
990 /* method model_base#MVisibility#to_s for (self: Object): String */
991 val
* VIRTUAL_model_base__MVisibility__to_s(val
* self
) {
992 val
* var
/* : String */;
993 val
* var1
/* : String */;
994 var1
= model_base__MVisibility__to_s(self
);
999 /* method model_base#MVisibility#to_s= for (self: MVisibility, String) */
1000 void model_base__MVisibility__to_s_61d(val
* self
, val
* p0
) {
1001 self
->attrs
[COLOR_model_base__MVisibility___64dto_s
].val
= p0
; /* @to_s on <self:MVisibility> */
1004 /* method model_base#MVisibility#to_s= for (self: Object, String) */
1005 void VIRTUAL_model_base__MVisibility__to_s_61d(val
* self
, val
* p0
) {
1006 model_base__MVisibility__to_s_61d(self
, p0
);
1009 /* method model_base#MVisibility#level for (self: MVisibility): Int */
1010 long model_base__MVisibility__level(val
* self
) {
1011 long var
/* : Int */;
1012 long var1
/* : Int */;
1013 var1
= self
->attrs
[COLOR_model_base__MVisibility___64dlevel
].l
; /* @level on <self:MVisibility> */
1018 /* method model_base#MVisibility#level for (self: Object): Int */
1019 long VIRTUAL_model_base__MVisibility__level(val
* self
) {
1020 long var
/* : Int */;
1021 long var1
/* : Int */;
1022 var1
= model_base__MVisibility__level(self
);
1027 /* method model_base#MVisibility#level= for (self: MVisibility, Int) */
1028 void model_base__MVisibility__level_61d(val
* self
, long p0
) {
1029 self
->attrs
[COLOR_model_base__MVisibility___64dlevel
].l
= p0
; /* @level on <self:MVisibility> */
1032 /* method model_base#MVisibility#level= for (self: Object, Int) */
1033 void VIRTUAL_model_base__MVisibility__level_61d(val
* self
, long p0
) {
1034 model_base__MVisibility__level_61d(self
, p0
);
1037 /* method model_base#MVisibility#init for (self: MVisibility, String, Int) */
1038 void model_base__MVisibility__init(val
* self
, val
* p0
, long p1
) {
1039 val
* var_s
/* var s: String */;
1040 long var_level
/* var level: Int */;
1043 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_model_base__MVisibility__to_s_61d
]))(self
, var_s
) /* to_s= on <self:MVisibility>*/;
1044 ((void (*)(val
*, long))(self
->class->vft
[COLOR_model_base__MVisibility__level_61d
]))(self
, var_level
) /* level= on <self:MVisibility>*/;
1047 /* method model_base#MVisibility#init for (self: Object, String, Int) */
1048 void VIRTUAL_model_base__MVisibility__init(val
* self
, val
* p0
, long p1
) {
1049 model_base__MVisibility__init(self
, p0
, p1
);
1052 /* method model_base#MVisibility#< for (self: MVisibility, MVisibility): Bool */
1053 short int model_base__MVisibility___60d(val
* self
, val
* p0
) {
1054 short int var
/* : Bool */;
1055 short int var1
/* : Bool */;
1058 const struct type
* type_struct
;
1059 val
* var_other
/* var other: MVisibility */;
1060 long var2
/* : Int */;
1061 long var3
/* : Int */;
1062 short int var4
/* : Bool */;
1063 short int var6
/* : Bool */;
1066 short int var9
/* : Bool */;
1067 /* Covariant cast for argument 0 (other) <p0:MVisibility> isa OTHER */
1068 /* <p0:MVisibility> isa OTHER */
1069 type_struct
= self
->type
->resolution_table
->types
[COLOR_kernel__Comparable_VTOTHER
];
1070 cltype
= type_struct
->color
;
1071 idtype
= type_struct
->id
;
1072 if(cltype
>= p0
->type
->table_size
) {
1075 var1
= p0
->type
->type_table
[cltype
] == idtype
;
1078 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Cast failed", "src/model/model_base.nit", 210);
1082 var2
= ((long (*)(val
*))(self
->class->vft
[COLOR_model_base__MVisibility__level
]))(self
) /* level on <self:MVisibility>*/;
1083 var3
= ((long (*)(val
*))(var_other
->class->vft
[COLOR_model_base__MVisibility__level
]))(var_other
) /* level on <var_other:MVisibility>*/;
1084 { /* Inline kernel#Int#< (var2,var3) */
1085 /* Covariant cast for argument 0 (i) <var3:Int> isa OTHER */
1086 /* <var3:Int> isa OTHER */
1087 var6
= 1; /* easy <var3:Int> isa OTHER*/
1089 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Cast failed", "lib/standard/kernel.nit", 257);
1102 /* method model_base#MVisibility#< for (self: Object, Comparable): Bool */
1103 short int VIRTUAL_model_base__MVisibility___60d(val
* self
, val
* p0
) {
1104 short int var
/* : Bool */;
1105 short int var1
/* : Bool */;
1106 var1
= model_base__MVisibility___60d(self
, p0
);
1111 /* method model_base#Object#intrude_visibility for (self: Object): MVisibility */
1112 val
* model_base__Object__intrude_visibility(val
* self
) {
1113 val
* var
/* : MVisibility */;
1114 static val
* varonce
;
1115 static int varonce_guard
;
1116 val
* var1
/* : MVisibility */;
1117 val
* var2
/* : MVisibility */;
1118 static val
* varonce3
;
1119 val
* var4
/* : String */;
1120 char* var5
/* : NativeString */;
1121 long var6
/* : Int */;
1122 val
* var7
/* : String */;
1123 long var8
/* : Int */;
1124 if (varonce_guard
) {
1127 var2
= NEW_model_base__MVisibility(&type_model_base__MVisibility
);
1133 var7
= string__NativeString__to_s_with_length(var5
, var6
);
1138 ((void (*)(val
*, val
*, long))(var2
->class->vft
[COLOR_model_base__MVisibility__init
]))(var2
, var4
, var8
) /* init on <var2:MVisibility>*/;
1139 CHECK_NEW_model_base__MVisibility(var2
);
1149 /* method model_base#Object#intrude_visibility for (self: Object): MVisibility */
1150 val
* VIRTUAL_model_base__Object__intrude_visibility(val
* self
) {
1151 val
* var
/* : MVisibility */;
1152 val
* var1
/* : MVisibility */;
1153 var1
= model_base__Object__intrude_visibility(self
);
1158 /* method model_base#Object#public_visibility for (self: Object): MVisibility */
1159 val
* model_base__Object__public_visibility(val
* self
) {
1160 val
* var
/* : MVisibility */;
1161 static val
* varonce
;
1162 static int varonce_guard
;
1163 val
* var1
/* : MVisibility */;
1164 val
* var2
/* : MVisibility */;
1165 static val
* varonce3
;
1166 val
* var4
/* : String */;
1167 char* var5
/* : NativeString */;
1168 long var6
/* : Int */;
1169 val
* var7
/* : String */;
1170 long var8
/* : Int */;
1171 if (varonce_guard
) {
1174 var2
= NEW_model_base__MVisibility(&type_model_base__MVisibility
);
1180 var7
= string__NativeString__to_s_with_length(var5
, var6
);
1185 ((void (*)(val
*, val
*, long))(var2
->class->vft
[COLOR_model_base__MVisibility__init
]))(var2
, var4
, var8
) /* init on <var2:MVisibility>*/;
1186 CHECK_NEW_model_base__MVisibility(var2
);
1196 /* method model_base#Object#public_visibility for (self: Object): MVisibility */
1197 val
* VIRTUAL_model_base__Object__public_visibility(val
* self
) {
1198 val
* var
/* : MVisibility */;
1199 val
* var1
/* : MVisibility */;
1200 var1
= model_base__Object__public_visibility(self
);
1205 /* method model_base#Object#protected_visibility for (self: Object): MVisibility */
1206 val
* model_base__Object__protected_visibility(val
* self
) {
1207 val
* var
/* : MVisibility */;
1208 static val
* varonce
;
1209 static int varonce_guard
;
1210 val
* var1
/* : MVisibility */;
1211 val
* var2
/* : MVisibility */;
1212 static val
* varonce3
;
1213 val
* var4
/* : String */;
1214 char* var5
/* : NativeString */;
1215 long var6
/* : Int */;
1216 val
* var7
/* : String */;
1217 long var8
/* : Int */;
1218 if (varonce_guard
) {
1221 var2
= NEW_model_base__MVisibility(&type_model_base__MVisibility
);
1227 var7
= string__NativeString__to_s_with_length(var5
, var6
);
1232 ((void (*)(val
*, val
*, long))(var2
->class->vft
[COLOR_model_base__MVisibility__init
]))(var2
, var4
, var8
) /* init on <var2:MVisibility>*/;
1233 CHECK_NEW_model_base__MVisibility(var2
);
1243 /* method model_base#Object#protected_visibility for (self: Object): MVisibility */
1244 val
* VIRTUAL_model_base__Object__protected_visibility(val
* self
) {
1245 val
* var
/* : MVisibility */;
1246 val
* var1
/* : MVisibility */;
1247 var1
= model_base__Object__protected_visibility(self
);
1252 /* method model_base#Object#private_visibility for (self: Object): MVisibility */
1253 val
* model_base__Object__private_visibility(val
* self
) {
1254 val
* var
/* : MVisibility */;
1255 static val
* varonce
;
1256 static int varonce_guard
;
1257 val
* var1
/* : MVisibility */;
1258 val
* var2
/* : MVisibility */;
1259 static val
* varonce3
;
1260 val
* var4
/* : String */;
1261 char* var5
/* : NativeString */;
1262 long var6
/* : Int */;
1263 val
* var7
/* : String */;
1264 long var8
/* : Int */;
1265 if (varonce_guard
) {
1268 var2
= NEW_model_base__MVisibility(&type_model_base__MVisibility
);
1274 var7
= string__NativeString__to_s_with_length(var5
, var6
);
1279 ((void (*)(val
*, val
*, long))(var2
->class->vft
[COLOR_model_base__MVisibility__init
]))(var2
, var4
, var8
) /* init on <var2:MVisibility>*/;
1280 CHECK_NEW_model_base__MVisibility(var2
);
1290 /* method model_base#Object#private_visibility for (self: Object): MVisibility */
1291 val
* VIRTUAL_model_base__Object__private_visibility(val
* self
) {
1292 val
* var
/* : MVisibility */;
1293 val
* var1
/* : MVisibility */;
1294 var1
= model_base__Object__private_visibility(self
);
1299 /* method model_base#Object#none_visibility for (self: Object): MVisibility */
1300 val
* model_base__Object__none_visibility(val
* self
) {
1301 val
* var
/* : MVisibility */;
1302 static val
* varonce
;
1303 static int varonce_guard
;
1304 val
* var1
/* : MVisibility */;
1305 val
* var2
/* : MVisibility */;
1306 static val
* varonce3
;
1307 val
* var4
/* : String */;
1308 char* var5
/* : NativeString */;
1309 long var6
/* : Int */;
1310 val
* var7
/* : String */;
1311 long var8
/* : Int */;
1312 if (varonce_guard
) {
1315 var2
= NEW_model_base__MVisibility(&type_model_base__MVisibility
);
1321 var7
= string__NativeString__to_s_with_length(var5
, var6
);
1326 ((void (*)(val
*, val
*, long))(var2
->class->vft
[COLOR_model_base__MVisibility__init
]))(var2
, var4
, var8
) /* init on <var2:MVisibility>*/;
1327 CHECK_NEW_model_base__MVisibility(var2
);
1337 /* method model_base#Object#none_visibility for (self: Object): MVisibility */
1338 val
* VIRTUAL_model_base__Object__none_visibility(val
* self
) {
1339 val
* var
/* : MVisibility */;
1340 val
* var1
/* : MVisibility */;
1341 var1
= model_base__Object__none_visibility(self
);