1 #include "nitc__modelize_class.sep.0.h"
2 /* method modelize_class#ToolContext#modelize_class_phase for (self: ToolContext): Phase */
3 val
* nitc__modelize_class___ToolContext___modelize_class_phase(val
* self
) {
4 val
* var
/* : Phase */;
5 val
* var1
/* : Phase */;
6 var1
= self
->attrs
[COLOR_nitc__modelize_class__ToolContext___modelize_class_phase
].val
; /* _modelize_class_phase on <self:ToolContext> */
7 if (unlikely(var1
== NULL
)) {
8 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelize_class_phase");
9 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelize_class
, 23);
16 /* method modelize_class#ModelizeClassPhase#process_nmodule for (self: ModelizeClassPhase, AModule) */
17 void nitc__modelize_class___nitc__modelize_class__ModelizeClassPhase___nitc__phase__Phase__process_nmodule(val
* self
, val
* p0
) {
18 val
* var_nmodule
/* var nmodule: AModule */;
19 val
* var
/* : ToolContext */;
20 val
* var2
/* : ToolContext */;
21 val
* var3
/* : ModelBuilder */;
24 { /* Inline phase#Phase#toolcontext (self) on <self:ModelizeClassPhase> */
25 var2
= self
->attrs
[COLOR_nitc__phase__Phase___toolcontext
].val
; /* _toolcontext on <self:ModelizeClassPhase> */
26 if (unlikely(var2
== NULL
)) {
27 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
28 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__phase
, 200);
36 var3
= nitc__modelbuilder_base___ToolContext___modelbuilder(var
);
39 nitc__modelize_class___ModelBuilder___build_classes(var3
, var_nmodule
); /* Direct call modelize_class#ModelBuilder#build_classes on <var3:ModelBuilder>*/
43 /* method modelize_class#ModelBuilder#build_a_mclass for (self: ModelBuilder, AModule, AClassdef) */
44 void nitc__modelize_class___ModelBuilder___build_a_mclass(val
* self
, val
* p0
, val
* p1
) {
45 val
* var_nmodule
/* var nmodule: AModule */;
46 val
* var_nclassdef
/* var nclassdef: AClassdef */;
47 val
* var
/* : nullable MModule */;
48 val
* var2
/* : nullable MModule */;
49 val
* var_mmodule
/* var mmodule: MModule */;
50 long var_arity
/* var arity: Int */;
51 val
* var3
/* : Array[String] */;
52 val
* var_names
/* var names: Array[String] */;
53 short int var4
/* : Bool */;
56 val
* var5
/* : nullable AQclassid */;
57 val
* var7
/* : nullable AQclassid */;
58 val
* var8
/* : TClassid */;
59 val
* var10
/* : TClassid */;
60 val
* var11
/* : String */;
61 val
* var_name
/* var name: String */;
62 val
* var12
/* : AClasskind */;
63 val
* var14
/* : AClasskind */;
64 val
* var_nkind
/* var nkind: nullable AClasskind */;
65 val
* var15
/* : MClassKind */;
66 val
* var_mkind
/* var mkind: MClassKind */;
67 val
* var16
/* : nullable AVisibility */;
68 val
* var18
/* : nullable AVisibility */;
69 val
* var_nvisibility
/* var nvisibility: nullable AVisibility */;
70 val
* var19
/* : MVisibility */;
71 val
* var_mvisibility
/* var mvisibility: nullable MVisibility */;
72 val
* var20
/* : ANodes[AFormaldef] */;
73 val
* var22
/* : ANodes[AFormaldef] */;
74 long var23
/* : Int */;
75 val
* var24
/* : Sys */;
76 val
* var25
/* : MVisibility */;
77 short int var26
/* : Bool */;
78 val
* var_other
/* var other: nullable Object */;
79 short int var28
/* : Bool */;
80 short int var30
/* : Bool */;
82 val
* var31
/* : String */;
83 char* var32
/* : NativeString */;
84 val
* var33
/* : String */;
85 val
* var34
/* : Sys */;
86 val
* var35
/* : MVisibility */;
87 short int var36
/* : Bool */;
88 short int var38
/* : Bool */;
89 short int var40
/* : Bool */;
90 static val
* varonce41
;
91 val
* var42
/* : String */;
92 char* var43
/* : NativeString */;
93 val
* var44
/* : String */;
94 long var_i
/* var i: Int */;
95 long var_
/* var : Int */;
96 short int var45
/* : Bool */;
97 short int var47
/* : Bool */;
100 const char* var_class_name
;
101 short int var50
/* : Bool */;
102 val
* var51
/* : ANodes[AFormaldef] */;
103 val
* var53
/* : ANodes[AFormaldef] */;
104 val
* var54
/* : ANode */;
105 val
* var_nfd
/* var nfd: AFormaldef */;
106 val
* var55
/* : TClassid */;
107 val
* var57
/* : TClassid */;
108 val
* var58
/* : String */;
109 val
* var_ptname
/* var ptname: String */;
110 short int var59
/* : Bool */;
111 val
* var61
/* : NativeArray[String] */;
112 static val
* varonce60
;
113 static val
* varonce62
;
114 val
* var63
/* : String */;
115 char* var64
/* : NativeString */;
116 val
* var65
/* : String */;
117 static val
* varonce66
;
118 val
* var67
/* : String */;
119 char* var68
/* : NativeString */;
120 val
* var69
/* : String */;
121 val
* var70
/* : String */;
122 val
* var71
/* : SequenceRead[Char] */;
123 val
* var_72
/* var : SequenceRead[Char] */;
124 val
* var73
/* : Iterator[nullable Object] */;
125 val
* var_74
/* var : IndexedIterator[Char] */;
126 short int var75
/* : Bool */;
127 val
* var77
/* : nullable Object */;
128 uint32_t var78
/* : Char */;
129 uint32_t var_c
/* var c: Char */;
130 short int var79
/* : Bool */;
131 short int var80
/* : Bool */;
132 short int var82
/* : Bool */;
135 const char* var_class_name85
;
136 short int var86
/* : Bool */;
137 short int var_87
/* var : Bool */;
138 short int var88
/* : Bool */;
139 short int var90
/* : Bool */;
142 const char* var_class_name93
;
143 short int var94
/* : Bool */;
144 static val
* varonce95
;
145 val
* var96
/* : String */;
146 char* var97
/* : NativeString */;
147 val
* var98
/* : String */;
148 val
* var100
/* : NativeArray[String] */;
149 static val
* varonce99
;
150 static val
* varonce101
;
151 val
* var102
/* : String */;
152 char* var103
/* : NativeString */;
153 val
* var104
/* : String */;
154 static val
* varonce105
;
155 val
* var106
/* : String */;
156 char* var107
/* : NativeString */;
157 val
* var108
/* : String */;
158 val
* var109
/* : String */;
159 long var110
/* : Int */;
160 short int var111
/* : Bool */;
161 short int var112
/* : Bool */;
164 short int var_115
/* var : Bool */;
165 val
* var116
/* : ANodes[APropdef] */;
166 val
* var118
/* : ANodes[APropdef] */;
167 val
* var119
/* : nullable Object */;
168 short int var120
/* : Bool */;
171 const char* var_class_name123
;
172 val
* var124
/* : nullable AMethid */;
173 val
* var126
/* : nullable AMethid */;
174 val
* var127
/* : String */;
175 static val
* varonce128
;
176 val
* var129
/* : String */;
177 char* var130
/* : NativeString */;
178 val
* var131
/* : String */;
179 short int var132
/* : Bool */;
180 static val
* varonce133
;
181 val
* var134
/* : String */;
182 char* var135
/* : NativeString */;
183 val
* var136
/* : String */;
184 val
* var137
/* : Sys */;
185 val
* var138
/* : MClassKind */;
186 val
* var139
/* : Sys */;
187 val
* var140
/* : MVisibility */;
188 static val
* varonce141
;
189 val
* var142
/* : String */;
190 char* var143
/* : NativeString */;
191 val
* var144
/* : String */;
192 val
* var145
/* : Sys */;
193 val
* var146
/* : MClassKind */;
194 val
* var147
/* : Sys */;
195 val
* var148
/* : MVisibility */;
196 val
* var149
/* : nullable MClass */;
197 val
* var_mclass
/* var mclass: nullable MClass */;
198 short int var150
/* : Bool */;
199 short int var151
/* : Bool */;
200 short int var153
/* : Bool */;
201 short int var155
/* : Bool */;
202 short int var156
/* : Bool */;
203 short int var157
/* : Bool */;
206 short int var_160
/* var : Bool */;
207 val
* var161
/* : nullable TKwredef */;
208 val
* var163
/* : nullable TKwredef */;
209 short int var164
/* : Bool */;
210 short int var165
/* : Bool */;
211 val
* var_other167
/* var other: nullable Object */;
212 short int var168
/* : Bool */;
213 short int var169
/* : Bool */;
214 val
* var171
/* : NativeArray[String] */;
215 static val
* varonce170
;
216 static val
* varonce172
;
217 val
* var173
/* : String */;
218 char* var174
/* : NativeString */;
219 val
* var175
/* : String */;
220 static val
* varonce176
;
221 val
* var177
/* : String */;
222 char* var178
/* : NativeString */;
223 val
* var179
/* : String */;
224 val
* var180
/* : String */;
225 short int var181
/* : Bool */;
226 val
* var182
/* : nullable MGroup */;
227 val
* var184
/* : nullable MGroup */;
228 short int var185
/* : Bool */;
229 short int var186
/* : Bool */;
230 short int var188
/* : Bool */;
231 short int var189
/* : Bool */;
232 short int var_190
/* var : Bool */;
233 val
* var191
/* : Sys */;
234 val
* var192
/* : MVisibility */;
235 short int var193
/* : Bool */;
236 val
* var194
/* : Model */;
237 val
* var196
/* : Model */;
238 val
* var197
/* : nullable Array[MClass] */;
239 val
* var_mclasses
/* var mclasses: nullable Array[MClass] */;
240 short int var198
/* : Bool */;
241 short int var199
/* : Bool */;
242 short int var201
/* : Bool */;
243 short int var202
/* : Bool */;
244 val
* var_203
/* var : Array[MClass] */;
245 val
* var204
/* : IndexedIterator[nullable Object] */;
246 val
* var_205
/* var : IndexedIterator[MClass] */;
247 short int var206
/* : Bool */;
248 val
* var208
/* : nullable Object */;
249 val
* var_other209
/* var other: MClass */;
250 short int var210
/* : Bool */;
251 val
* var211
/* : MModule */;
252 val
* var213
/* : MModule */;
253 val
* var214
/* : nullable MGroup */;
254 val
* var216
/* : nullable MGroup */;
255 short int var217
/* : Bool */;
256 short int var218
/* : Bool */;
257 short int var220
/* : Bool */;
258 short int var221
/* : Bool */;
259 short int var_222
/* var : Bool */;
260 val
* var223
/* : MModule */;
261 val
* var225
/* : MModule */;
262 val
* var226
/* : nullable MGroup */;
263 val
* var228
/* : nullable MGroup */;
264 val
* var229
/* : MPackage */;
265 val
* var231
/* : MPackage */;
266 val
* var232
/* : nullable MGroup */;
267 val
* var234
/* : nullable MGroup */;
268 val
* var235
/* : MPackage */;
269 val
* var237
/* : MPackage */;
270 short int var238
/* : Bool */;
271 short int var240
/* : Bool */;
272 short int var242
/* : Bool */;
273 val
* var243
/* : nullable MClassDef */;
274 short int var244
/* : Bool */;
275 short int var245
/* : Bool */;
276 short int var247
/* : Bool */;
277 short int var249
/* : Bool */;
278 static val
* varonce251
;
279 val
* var252
/* : String */;
280 char* var253
/* : NativeString */;
281 val
* var254
/* : String */;
282 val
* var256
/* : NativeArray[String] */;
283 static val
* varonce255
;
284 static val
* varonce257
;
285 val
* var258
/* : String */;
286 char* var259
/* : NativeString */;
287 val
* var260
/* : String */;
288 static val
* varonce261
;
289 val
* var262
/* : String */;
290 char* var263
/* : NativeString */;
291 val
* var264
/* : String */;
292 static val
* varonce265
;
293 val
* var266
/* : String */;
294 char* var267
/* : NativeString */;
295 val
* var268
/* : String */;
296 static val
* varonce269
;
297 val
* var270
/* : String */;
298 char* var271
/* : NativeString */;
299 val
* var272
/* : String */;
300 val
* var273
/* : String */;
301 val
* var274
/* : MModule */;
302 val
* var276
/* : MModule */;
303 val
* var277
/* : String */;
304 val
* var278
/* : MClassDef */;
305 val
* var280
/* : MClassDef */;
306 val
* var281
/* : Location */;
307 val
* var283
/* : Location */;
308 val
* var284
/* : String */;
309 val
* var285
/* : String */;
310 val
* var286
/* : MClass */;
311 short int var287
/* : Bool */;
312 short int var288
/* : Bool */;
315 short int var_291
/* var : Bool */;
316 val
* var292
/* : Map[MClass, AClassdef] */;
317 val
* var294
/* : Map[MClass, AClassdef] */;
318 short int var295
/* : Bool */;
319 val
* var297
/* : NativeArray[String] */;
320 static val
* varonce296
;
321 static val
* varonce298
;
322 val
* var299
/* : String */;
323 char* var300
/* : NativeString */;
324 val
* var301
/* : String */;
325 static val
* varonce302
;
326 val
* var303
/* : String */;
327 char* var304
/* : NativeString */;
328 val
* var305
/* : String */;
329 static val
* varonce306
;
330 val
* var307
/* : String */;
331 char* var308
/* : NativeString */;
332 val
* var309
/* : String */;
333 val
* var310
/* : Map[MClass, AClassdef] */;
334 val
* var312
/* : Map[MClass, AClassdef] */;
335 val
* var313
/* : nullable Object */;
336 val
* var314
/* : Location */;
337 val
* var316
/* : Location */;
338 long var317
/* : Int */;
339 long var319
/* : Int */;
340 val
* var320
/* : String */;
341 val
* var321
/* : String */;
342 short int var323
/* : Bool */;
343 short int var324
/* : Bool */;
346 short int var_327
/* var : Bool */;
347 val
* var328
/* : nullable TKwredef */;
348 val
* var330
/* : nullable TKwredef */;
349 short int var331
/* : Bool */;
350 short int var332
/* : Bool */;
351 short int var334
/* : Bool */;
352 short int var336
/* : Bool */;
353 val
* var338
/* : NativeArray[String] */;
354 static val
* varonce337
;
355 static val
* varonce339
;
356 val
* var340
/* : String */;
357 char* var341
/* : NativeString */;
358 val
* var342
/* : String */;
359 static val
* varonce343
;
360 val
* var344
/* : String */;
361 char* var345
/* : NativeString */;
362 val
* var346
/* : String */;
363 val
* var347
/* : String */;
364 short int var349
/* : Bool */;
365 short int var350
/* : Bool */;
366 short int var352
/* : Bool */;
367 short int var353
/* : Bool */;
368 short int var_354
/* var : Bool */;
369 long var355
/* : Int */;
370 long var357
/* : Int */;
371 short int var358
/* : Bool */;
372 short int var360
/* : Bool */;
373 short int var361
/* : Bool */;
374 val
* var363
/* : NativeArray[String] */;
375 static val
* varonce362
;
376 static val
* varonce364
;
377 val
* var365
/* : String */;
378 char* var366
/* : NativeString */;
379 val
* var367
/* : String */;
380 static val
* varonce368
;
381 val
* var369
/* : String */;
382 char* var370
/* : NativeString */;
383 val
* var371
/* : String */;
384 static val
* varonce372
;
385 val
* var373
/* : String */;
386 char* var374
/* : NativeString */;
387 val
* var375
/* : String */;
388 static val
* varonce376
;
389 val
* var377
/* : String */;
390 char* var378
/* : NativeString */;
391 val
* var379
/* : String */;
392 long var380
/* : Int */;
393 long var382
/* : Int */;
394 val
* var383
/* : String */;
395 val
* var384
/* : String */;
396 val
* var385
/* : String */;
397 val
* var386
/* : String */;
398 short int var388
/* : Bool */;
399 short int var389
/* : Bool */;
400 short int var390
/* : Bool */;
401 short int var391
/* : Bool */;
402 short int var393
/* : Bool */;
403 short int var394
/* : Bool */;
404 short int var_395
/* var : Bool */;
405 val
* var396
/* : Sys */;
406 val
* var397
/* : MClassKind */;
407 short int var398
/* : Bool */;
408 short int var400
/* : Bool */;
409 short int var401
/* : Bool */;
410 short int var_402
/* var : Bool */;
411 val
* var403
/* : MClassKind */;
412 val
* var405
/* : MClassKind */;
413 short int var406
/* : Bool */;
414 short int var408
/* : Bool */;
415 short int var409
/* : Bool */;
416 val
* var411
/* : NativeArray[String] */;
417 static val
* varonce410
;
418 static val
* varonce412
;
419 val
* var413
/* : String */;
420 char* var414
/* : NativeString */;
421 val
* var415
/* : String */;
422 static val
* varonce416
;
423 val
* var417
/* : String */;
424 char* var418
/* : NativeString */;
425 val
* var419
/* : String */;
426 static val
* varonce420
;
427 val
* var421
/* : String */;
428 char* var422
/* : NativeString */;
429 val
* var423
/* : String */;
430 val
* var424
/* : MClassKind */;
431 val
* var426
/* : MClassKind */;
432 val
* var427
/* : String */;
433 val
* var428
/* : String */;
434 val
* var429
/* : String */;
435 short int var430
/* : Bool */;
436 short int var431
/* : Bool */;
437 short int var432
/* : Bool */;
438 short int var433
/* : Bool */;
439 short int var435
/* : Bool */;
440 short int var436
/* : Bool */;
441 short int var_437
/* var : Bool */;
442 val
* var438
/* : Sys */;
443 val
* var439
/* : MVisibility */;
444 short int var440
/* : Bool */;
445 short int var442
/* : Bool */;
446 short int var443
/* : Bool */;
447 short int var_444
/* var : Bool */;
448 val
* var445
/* : MVisibility */;
449 val
* var447
/* : MVisibility */;
450 short int var448
/* : Bool */;
451 short int var450
/* : Bool */;
452 short int var451
/* : Bool */;
453 val
* var453
/* : NativeArray[String] */;
454 static val
* varonce452
;
455 static val
* varonce454
;
456 val
* var455
/* : String */;
457 char* var456
/* : NativeString */;
458 val
* var457
/* : String */;
459 static val
* varonce458
;
460 val
* var459
/* : String */;
461 char* var460
/* : NativeString */;
462 val
* var461
/* : String */;
463 static val
* varonce462
;
464 val
* var463
/* : String */;
465 char* var464
/* : NativeString */;
466 val
* var465
/* : String */;
467 val
* var466
/* : MVisibility */;
468 val
* var468
/* : MVisibility */;
469 val
* var469
/* : String */;
470 val
* var470
/* : String */;
471 val
* var471
/* : String */;
472 val
* var473
/* : Map[MClass, AClassdef] */;
473 val
* var475
/* : Map[MClass, AClassdef] */;
474 short int var476
/* : Bool */;
475 short int var477
/* : Bool */;
476 val
* var478
/* : Map[MClass, AClassdef] */;
477 val
* var480
/* : Map[MClass, AClassdef] */;
478 val
* var481
/* : Array[AClassdef] */;
479 val
* var_482
/* var : Array[AClassdef] */;
480 val
* var484
/* : Map[MClass, AClassdef] */;
481 val
* var486
/* : Map[MClass, AClassdef] */;
482 val
* var487
/* : nullable Object */;
483 val
* var488
/* : nullable Array[AClassdef] */;
484 val
* var490
/* : nullable Array[AClassdef] */;
488 { /* Inline loader#AModule#mmodule (var_nmodule) on <var_nmodule:AModule> */
489 var2
= var_nmodule
->attrs
[COLOR_nitc__loader__AModule___mmodule
].val
; /* _mmodule on <var_nmodule:AModule> */
494 if (unlikely(var
== NULL
)) {
495 PRINT_ERROR("Runtime error: %s", "Cast failed");
496 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelize_class
, 40);
501 var3
= NEW_core__Array(&type_core__Array__core__String
);
503 core___core__Array___core__kernel__Object__init(var3
); /* Direct call array#Array#init on <var3:Array[String]>*/
506 /* <var_nclassdef:AClassdef> isa AStdClassdef */
507 cltype
= type_nitc__AStdClassdef
.color
;
508 idtype
= type_nitc__AStdClassdef
.id
;
509 if(cltype
>= var_nclassdef
->type
->table_size
) {
512 var4
= var_nclassdef
->type
->type_table
[cltype
] == idtype
;
516 { /* Inline parser_nodes#AStdClassdef#n_qid (var_nclassdef) on <var_nclassdef:AClassdef(AStdClassdef)> */
517 var7
= var_nclassdef
->attrs
[COLOR_nitc__parser_nodes__AStdClassdef___n_qid
].val
; /* _n_qid on <var_nclassdef:AClassdef(AStdClassdef)> */
523 PRINT_ERROR("Runtime error: %s", "Receiver is null");
524 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelize_class
, 50);
527 { /* Inline parser_nodes#AQclassid#n_id (var5) on <var5:nullable AQclassid> */
528 if (unlikely(var5
== NULL
)) {
529 PRINT_ERROR("Runtime error: %s", "Receiver is null");
530 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1668);
533 var10
= var5
->attrs
[COLOR_nitc__parser_nodes__AQclassid___n_id
].val
; /* _n_id on <var5:nullable AQclassid> */
534 if (unlikely(var10
== NULL
)) {
535 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id");
536 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1668);
544 var11
= nitc__lexer_work___Token___text(var8
);
548 { /* Inline parser_nodes#AStdClassdef#n_classkind (var_nclassdef) on <var_nclassdef:AClassdef(AStdClassdef)> */
549 var14
= var_nclassdef
->attrs
[COLOR_nitc__parser_nodes__AStdClassdef___n_classkind
].val
; /* _n_classkind on <var_nclassdef:AClassdef(AStdClassdef)> */
550 if (unlikely(var14
== NULL
)) {
551 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_classkind");
552 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1164);
561 var15
= ((val
*(*)(val
* self
))(var_nkind
->class->vft
[COLOR_nitc__modelize_class__AClasskind__mkind
]))(var_nkind
); /* mkind on <var_nkind:nullable AClasskind(AClasskind)>*/
565 { /* Inline parser_nodes#ADefinition#n_visibility (var_nclassdef) on <var_nclassdef:AClassdef(AStdClassdef)> */
566 var18
= var_nclassdef
->attrs
[COLOR_nitc__parser_nodes__ADefinition___n_visibility
].val
; /* _n_visibility on <var_nclassdef:AClassdef(AStdClassdef)> */
571 var_nvisibility
= var16
;
572 if (var_nvisibility
== NULL
) {
573 PRINT_ERROR("Runtime error: %s", "Receiver is null");
574 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelize_class
, 54);
577 var19
= ((val
*(*)(val
* self
))(var_nvisibility
->class->vft
[COLOR_nitc__modelbuilder_base__AVisibility__mvisibility
]))(var_nvisibility
); /* mvisibility on <var_nvisibility:nullable AVisibility>*/
579 var_mvisibility
= var19
;
581 { /* Inline parser_nodes#AStdClassdef#n_formaldefs (var_nclassdef) on <var_nclassdef:AClassdef(AStdClassdef)> */
582 var22
= var_nclassdef
->attrs
[COLOR_nitc__parser_nodes__AStdClassdef___n_formaldefs
].val
; /* _n_formaldefs on <var_nclassdef:AClassdef(AStdClassdef)> */
583 if (unlikely(var22
== NULL
)) {
584 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_formaldefs");
585 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1173);
593 var23
= nitc___nitc__ANodes___core__abstract_collection__Collection__length(var20
);
598 var25
= nitc__model_base___core__Sys___protected_visibility(var24
);
601 { /* Inline kernel#Object#== (var_mvisibility,var25) on <var_mvisibility:nullable MVisibility(MVisibility)> */
604 { /* Inline kernel#Object#is_same_instance (var_mvisibility,var_other) on <var_mvisibility:nullable MVisibility(MVisibility)> */
605 var30
= var_mvisibility
== var_other
;
617 if (likely(varonce
!=NULL
)) {
620 var32
= "Error: only properties can be protected.";
621 var33
= core__flat___NativeString___to_s_full(var32
, 40l, 40l);
626 nitc___nitc__ModelBuilder___error(self
, var_nvisibility
, var31
); /* Direct call modelbuilder_base#ModelBuilder#error on <self:ModelBuilder>*/
632 var35
= nitc__model_base___core__Sys___intrude_visibility(var34
);
635 { /* Inline kernel#Object#== (var_mvisibility,var35) on <var_mvisibility:nullable MVisibility(MVisibility)> */
638 { /* Inline kernel#Object#is_same_instance (var_mvisibility,var_other) on <var_mvisibility:nullable MVisibility(MVisibility)> */
639 var40
= var_mvisibility
== var_other
;
651 if (likely(varonce41
!=NULL
)) {
654 var43
= "Error: intrude is not a legal visibility for classes.";
655 var44
= core__flat___NativeString___to_s_full(var43
, 53l, 53l);
660 nitc___nitc__ModelBuilder___error(self
, var_nvisibility
, var42
); /* Direct call modelbuilder_base#ModelBuilder#error on <self:ModelBuilder>*/
670 { /* Inline kernel#Int#< (var_i,var_) on <var_i:Int> */
671 /* Covariant cast for argument 0 (i) <var_:Int> isa OTHER */
672 /* <var_:Int> isa OTHER */
673 var47
= 1; /* easy <var_:Int> isa OTHER*/
674 if (unlikely(!var47
)) {
675 var_class_name
= type_core__Int
.name
;
676 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
677 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 728);
680 var50
= var_i
< var_
;
691 { /* Inline parser_nodes#AStdClassdef#n_formaldefs (var_nclassdef) on <var_nclassdef:AClassdef(AStdClassdef)> */
692 var53
= var_nclassdef
->attrs
[COLOR_nitc__parser_nodes__AStdClassdef___n_formaldefs
].val
; /* _n_formaldefs on <var_nclassdef:AClassdef(AStdClassdef)> */
693 if (unlikely(var53
== NULL
)) {
694 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_formaldefs");
695 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1173);
703 var54
= nitc___nitc__ANodes___core__abstract_collection__SequenceRead___91d_93d(var51
, var_i
);
707 { /* Inline parser_nodes#AFormaldef#n_id (var_nfd) on <var_nfd:AFormaldef> */
708 var57
= var_nfd
->attrs
[COLOR_nitc__parser_nodes__AFormaldef___n_id
].val
; /* _n_id on <var_nfd:AFormaldef> */
709 if (unlikely(var57
== NULL
)) {
710 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id");
711 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1257);
719 var58
= nitc__lexer_work___Token___text(var55
);
723 var59
= core___core__AbstractArrayRead___core__abstract_collection__Collection__has(var_names
, var_ptname
);
726 if (unlikely(varonce60
==NULL
)) {
727 var61
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
728 if (likely(varonce62
!=NULL
)) {
731 var64
= "Error: a formal parameter type `";
732 var65
= core__flat___NativeString___to_s_full(var64
, 32l, 32l);
736 ((struct instance_core__NativeArray
*)var61
)->values
[0]=var63
;
737 if (likely(varonce66
!=NULL
)) {
740 var68
= "` already exists.";
741 var69
= core__flat___NativeString___to_s_full(var68
, 17l, 17l);
745 ((struct instance_core__NativeArray
*)var61
)->values
[2]=var67
;
750 ((struct instance_core__NativeArray
*)var61
)->values
[1]=var_ptname
;
752 var70
= ((val
*(*)(val
* self
))(var61
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var61
); /* native_to_s on <var61:NativeArray[String]>*/
756 nitc___nitc__ModelBuilder___error(self
, var_nfd
, var70
); /* Direct call modelbuilder_base#ModelBuilder#error on <self:ModelBuilder>*/
762 var71
= ((val
*(*)(val
* self
))(var_ptname
->class->vft
[COLOR_core__abstract_text__Text__chars
]))(var_ptname
); /* chars on <var_ptname:String>*/
766 var73
= ((val
*(*)(val
* self
))((((long)var_72
&3)?class_info
[((long)var_72
&3)]:var_72
->class)->vft
[COLOR_core__abstract_collection__Collection__iterator
]))(var_72
); /* iterator on <var_72:SequenceRead[Char]>*/
771 var75
= ((short int(*)(val
* self
))((((long)var_74
&3)?class_info
[((long)var_74
&3)]:var_74
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_74
); /* is_ok on <var_74:IndexedIterator[Char]>*/
778 var77
= ((val
*(*)(val
* self
))((((long)var_74
&3)?class_info
[((long)var_74
&3)]:var_74
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_74
); /* item on <var_74:IndexedIterator[Char]>*/
780 var78
= (uint32_t)((long)(var77
)>>2);
783 { /* Inline kernel#Char#>= (var_c,'a') on <var_c:Char> */
784 /* Covariant cast for argument 0 (i) <'a':Char> isa OTHER */
785 /* <'a':Char> isa OTHER */
786 var82
= 1; /* easy <'a':Char> isa OTHER*/
787 if (unlikely(!var82
)) {
788 var_class_name85
= type_core__Char
.name
;
789 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name85
);
790 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 924);
793 var86
= var_c
>= 'a';
802 { /* Inline kernel#Char#<= (var_c,'z') on <var_c:Char> */
803 /* Covariant cast for argument 0 (i) <'z':Char> isa OTHER */
804 /* <'z':Char> isa OTHER */
805 var90
= 1; /* easy <'z':Char> isa OTHER*/
806 if (unlikely(!var90
)) {
807 var_class_name93
= type_core__Char
.name
;
808 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name93
);
809 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 922);
812 var94
= var_c
<= 'z';
823 if (likely(varonce95
!=NULL
)) {
826 var97
= "formal-type-name";
827 var98
= core__flat___NativeString___to_s_full(var97
, 16l, 16l);
831 if (unlikely(varonce99
==NULL
)) {
832 var100
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
833 if (likely(varonce101
!=NULL
)) {
836 var103
= "Warning: lowercase in the formal parameter type `";
837 var104
= core__flat___NativeString___to_s_full(var103
, 49l, 49l);
841 ((struct instance_core__NativeArray
*)var100
)->values
[0]=var102
;
842 if (likely(varonce105
!=NULL
)) {
846 var108
= core__flat___NativeString___to_s_full(var107
, 2l, 2l);
850 ((struct instance_core__NativeArray
*)var100
)->values
[2]=var106
;
855 ((struct instance_core__NativeArray
*)var100
)->values
[1]=var_ptname
;
857 var109
= ((val
*(*)(val
* self
))(var100
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var100
); /* native_to_s on <var100:NativeArray[String]>*/
861 nitc___nitc__ModelBuilder___warning(self
, var_nfd
, var96
, var109
); /* Direct call modelbuilder_base#ModelBuilder#warning on <self:ModelBuilder>*/
867 ((void(*)(val
* self
))((((long)var_74
&3)?class_info
[((long)var_74
&3)]:var_74
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_74
); /* next on <var_74:IndexedIterator[Char]>*/
870 BREAK_label76
: (void)0;
872 ((void(*)(val
* self
))((((long)var_74
&3)?class_info
[((long)var_74
&3)]:var_74
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_74
); /* finish on <var_74:IndexedIterator[Char]>*/
875 core___core__Array___core__abstract_collection__SimpleCollection__add(var_names
, var_ptname
); /* Direct call array#Array#add on <var_names:Array[String]>*/
878 var110
= core___core__Int___Discrete__successor(var_i
, 1l);
882 BREAK_label
: (void)0;
884 /* <var_nclassdef:AClassdef> isa ATopClassdef */
885 cltype113
= type_nitc__ATopClassdef
.color
;
886 idtype114
= type_nitc__ATopClassdef
.id
;
887 if(cltype113
>= var_nclassdef
->type
->table_size
) {
890 var112
= var_nclassdef
->type
->type_table
[cltype113
] == idtype114
;
895 { /* Inline parser_nodes#AClassdef#n_propdefs (var_nclassdef) on <var_nclassdef:AClassdef(ATopClassdef)> */
896 var118
= var_nclassdef
->attrs
[COLOR_nitc__parser_nodes__AClassdef___n_propdefs
].val
; /* _n_propdefs on <var_nclassdef:AClassdef(ATopClassdef)> */
897 if (unlikely(var118
== NULL
)) {
898 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_propdefs");
899 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1155);
903 RET_LABEL117
:(void)0;
907 var119
= core___core__SequenceRead___Collection__first(var116
);
909 /* <var119:nullable Object(APropdef)> isa AMethPropdef */
910 cltype121
= type_nitc__AMethPropdef
.color
;
911 idtype122
= type_nitc__AMethPropdef
.id
;
912 if(cltype121
>= var119
->type
->table_size
) {
915 var120
= var119
->type
->type_table
[cltype121
] == idtype122
;
917 if (unlikely(!var120
)) {
918 var_class_name123
= var119
== NULL ?
"null" : var119
->type
->name
;
919 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AMethPropdef", var_class_name123
);
920 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelize_class
, 78);
924 { /* Inline parser_nodes#AMethPropdef#n_methid (var119) on <var119:APropdef(AMethPropdef)> */
925 var126
= var119
->attrs
[COLOR_nitc__parser_nodes__AMethPropdef___n_methid
].val
; /* _n_methid on <var119:APropdef(AMethPropdef)> */
927 RET_LABEL125
:(void)0;
930 if (var124
== NULL
) {
931 PRINT_ERROR("Runtime error: %s", "Receiver is null");
932 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelize_class
, 78);
935 var127
= nitc__parser_work___Prod___collect_text(var124
);
937 if (likely(varonce128
!=NULL
)) {
941 var131
= core__flat___NativeString___to_s_full(var130
, 3l, 3l);
946 var132
= ((short int(*)(val
* self
, val
* p0
))(var127
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var127
, var129
); /* == on <var127:String>*/
953 if (likely(varonce133
!=NULL
)) {
957 var136
= core__flat___NativeString___to_s_full(var135
, 6l, 6l);
962 var_nkind
= ((val
*)NULL
);
965 var138
= nitc__model___core__Sys___interface_kind(var137
);
968 var_nvisibility
= ((val
*)NULL
);
971 var140
= nitc__model_base___core__Sys___public_visibility(var139
);
973 var_mvisibility
= var140
;
975 if (likely(varonce141
!=NULL
)) {
979 var144
= core__flat___NativeString___to_s_full(var143
, 3l, 3l);
984 var_nkind
= ((val
*)NULL
);
987 var146
= nitc__model___core__Sys___concrete_kind(var145
);
990 var_nvisibility
= ((val
*)NULL
);
993 var148
= nitc__model_base___core__Sys___public_visibility(var147
);
995 var_mvisibility
= var148
;
999 var149
= nitc___nitc__ModelBuilder___try_get_mclass_by_name(self
, var_nclassdef
, var_mmodule
, var_name
);
1001 var_mclass
= var149
;
1002 if (var_mclass
== NULL
) {
1003 var150
= 1; /* is null */
1005 var150
= 0; /* arg is null but recv is not */
1008 { /* Inline kernel#Object#== (var_mclass,((val*)NULL)) on <var_mclass:nullable MClass> */
1009 var_other
= ((val
*)NULL
);
1011 { /* Inline kernel#Object#is_same_instance (var_mclass,var_other) on <var_mclass:nullable MClass(MClass)> */
1012 var155
= var_mclass
== var_other
;
1015 RET_LABEL154
:(void)0;
1020 RET_LABEL152
:(void)0;
1025 /* <var_nclassdef:AClassdef> isa AStdClassdef */
1026 cltype158
= type_nitc__AStdClassdef
.color
;
1027 idtype159
= type_nitc__AStdClassdef
.id
;
1028 if(cltype158
>= var_nclassdef
->type
->table_size
) {
1031 var157
= var_nclassdef
->type
->type_table
[cltype158
] == idtype159
;
1036 { /* Inline parser_nodes#ADefinition#n_kwredef (var_nclassdef) on <var_nclassdef:AClassdef(AStdClassdef)> */
1037 var163
= var_nclassdef
->attrs
[COLOR_nitc__parser_nodes__ADefinition___n_kwredef
].val
; /* _n_kwredef on <var_nclassdef:AClassdef(AStdClassdef)> */
1039 RET_LABEL162
:(void)0;
1042 if (var161
== NULL
) {
1043 var164
= 0; /* is null */
1045 var164
= 1; /* arg is null and recv is not */
1048 { /* Inline kernel#Object#!= (var161,((val*)NULL)) on <var161:nullable TKwredef> */
1049 var_other167
= ((val
*)NULL
);
1051 var168
= ((short int(*)(val
* self
, val
* p0
))(var161
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var161
, var_other167
); /* == on <var161:nullable TKwredef(TKwredef)>*/
1056 RET_LABEL166
:(void)0;
1065 if (unlikely(varonce170
==NULL
)) {
1066 var171
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
1067 if (likely(varonce172
!=NULL
)) {
1068 var173
= varonce172
;
1070 var174
= "Redef Error: no imported class `";
1071 var175
= core__flat___NativeString___to_s_full(var174
, 32l, 32l);
1073 varonce172
= var173
;
1075 ((struct instance_core__NativeArray
*)var171
)->values
[0]=var173
;
1076 if (likely(varonce176
!=NULL
)) {
1077 var177
= varonce176
;
1079 var178
= "` to refine.";
1080 var179
= core__flat___NativeString___to_s_full(var178
, 12l, 12l);
1082 varonce176
= var177
;
1084 ((struct instance_core__NativeArray
*)var171
)->values
[2]=var177
;
1086 var171
= varonce170
;
1089 ((struct instance_core__NativeArray
*)var171
)->values
[1]=var_name
;
1091 var180
= ((val
*(*)(val
* self
))(var171
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var171
); /* native_to_s on <var171:NativeArray[String]>*/
1093 varonce170
= var171
;
1095 nitc___nitc__ModelBuilder___error(self
, var_nclassdef
, var180
); /* Direct call modelbuilder_base#ModelBuilder#error on <self:ModelBuilder>*/
1101 { /* Inline mmodule#MModule#mgroup (var_mmodule) on <var_mmodule:MModule> */
1102 var184
= var_mmodule
->attrs
[COLOR_nitc__mmodule__MModule___mgroup
].val
; /* _mgroup on <var_mmodule:MModule> */
1104 RET_LABEL183
:(void)0;
1107 if (var182
== NULL
) {
1108 var185
= 0; /* is null */
1110 var185
= 1; /* arg is null and recv is not */
1113 { /* Inline kernel#Object#!= (var182,((val*)NULL)) on <var182:nullable MGroup> */
1114 var_other167
= ((val
*)NULL
);
1116 var188
= ((short int(*)(val
* self
, val
* p0
))(var182
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var182
, var_other167
); /* == on <var182:nullable MGroup(MGroup)>*/
1121 RET_LABEL187
:(void)0;
1129 var192
= nitc__model_base___core__Sys___protected_visibility(var191
);
1132 var193
= core___core__Comparable____62d_61d(var_mvisibility
, var192
);
1140 { /* Inline modelbuilder_base#ModelBuilder#model (self) on <self:ModelBuilder> */
1141 var196
= self
->attrs
[COLOR_nitc__modelbuilder_base__ModelBuilder___model
].val
; /* _model on <self:ModelBuilder> */
1142 if (unlikely(var196
== NULL
)) {
1143 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _model");
1144 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelbuilder_base
, 44);
1148 RET_LABEL195
:(void)0;
1152 var197
= nitc__model___Model___get_mclasses_by_name(var194
, var_name
);
1154 var_mclasses
= var197
;
1155 if (var_mclasses
== NULL
) {
1156 var198
= 0; /* is null */
1158 var198
= 1; /* arg is null and recv is not */
1161 { /* Inline kernel#Object#!= (var_mclasses,((val*)NULL)) on <var_mclasses:nullable Array[MClass]> */
1162 var_other167
= ((val
*)NULL
);
1164 var201
= ((short int(*)(val
* self
, val
* p0
))(var_mclasses
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_mclasses
, var_other167
); /* == on <var_mclasses:nullable Array[MClass](Array[MClass])>*/
1169 RET_LABEL200
:(void)0;
1174 var_203
= var_mclasses
;
1176 var204
= core___core__AbstractArrayRead___core__abstract_collection__Collection__iterator(var_203
);
1181 var206
= ((short int(*)(val
* self
))((((long)var_205
&3)?class_info
[((long)var_205
&3)]:var_205
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_205
); /* is_ok on <var_205:IndexedIterator[MClass]>*/
1185 goto BREAK_label207
;
1188 var208
= ((val
*(*)(val
* self
))((((long)var_205
&3)?class_info
[((long)var_205
&3)]:var_205
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_205
); /* item on <var_205:IndexedIterator[MClass]>*/
1190 var_other209
= var208
;
1192 { /* Inline model#MClass#intro_mmodule (var_other209) on <var_other209:MClass> */
1193 var213
= var_other209
->attrs
[COLOR_nitc__model__MClass___intro_mmodule
].val
; /* _intro_mmodule on <var_other209:MClass> */
1194 if (unlikely(var213
== NULL
)) {
1195 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _intro_mmodule");
1196 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 380);
1200 RET_LABEL212
:(void)0;
1204 { /* Inline mmodule#MModule#mgroup (var211) on <var211:MModule> */
1205 var216
= var211
->attrs
[COLOR_nitc__mmodule__MModule___mgroup
].val
; /* _mgroup on <var211:MModule> */
1207 RET_LABEL215
:(void)0;
1210 if (var214
== NULL
) {
1211 var217
= 0; /* is null */
1213 var217
= 1; /* arg is null and recv is not */
1216 { /* Inline kernel#Object#!= (var214,((val*)NULL)) on <var214:nullable MGroup> */
1217 var_other167
= ((val
*)NULL
);
1219 var220
= ((short int(*)(val
* self
, val
* p0
))(var214
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var214
, var_other167
); /* == on <var214:nullable MGroup(MGroup)>*/
1224 RET_LABEL219
:(void)0;
1231 { /* Inline model#MClass#intro_mmodule (var_other209) on <var_other209:MClass> */
1232 var225
= var_other209
->attrs
[COLOR_nitc__model__MClass___intro_mmodule
].val
; /* _intro_mmodule on <var_other209:MClass> */
1233 if (unlikely(var225
== NULL
)) {
1234 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _intro_mmodule");
1235 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 380);
1239 RET_LABEL224
:(void)0;
1243 { /* Inline mmodule#MModule#mgroup (var223) on <var223:MModule> */
1244 var228
= var223
->attrs
[COLOR_nitc__mmodule__MModule___mgroup
].val
; /* _mgroup on <var223:MModule> */
1246 RET_LABEL227
:(void)0;
1249 if (var226
== NULL
) {
1250 PRINT_ERROR("Runtime error: %s", "Receiver is null");
1251 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelize_class
, 106);
1254 { /* Inline mpackage#MGroup#mpackage (var226) on <var226:nullable MGroup> */
1255 if (unlikely(var226
== NULL
)) {
1256 PRINT_ERROR("Runtime error: %s", "Receiver is null");
1257 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__mpackage
, 69);
1260 var231
= var226
->attrs
[COLOR_nitc__mpackage__MGroup___mpackage
].val
; /* _mpackage on <var226:nullable MGroup> */
1261 if (unlikely(var231
== NULL
)) {
1262 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mpackage");
1263 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__mpackage
, 69);
1267 RET_LABEL230
:(void)0;
1271 { /* Inline mmodule#MModule#mgroup (var_mmodule) on <var_mmodule:MModule> */
1272 var234
= var_mmodule
->attrs
[COLOR_nitc__mmodule__MModule___mgroup
].val
; /* _mgroup on <var_mmodule:MModule> */
1274 RET_LABEL233
:(void)0;
1277 if (var232
== NULL
) {
1278 PRINT_ERROR("Runtime error: %s", "Receiver is null");
1279 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelize_class
, 106);
1282 { /* Inline mpackage#MGroup#mpackage (var232) on <var232:nullable MGroup> */
1283 if (unlikely(var232
== NULL
)) {
1284 PRINT_ERROR("Runtime error: %s", "Receiver is null");
1285 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__mpackage
, 69);
1288 var237
= var232
->attrs
[COLOR_nitc__mpackage__MGroup___mpackage
].val
; /* _mpackage on <var232:nullable MGroup> */
1289 if (unlikely(var237
== NULL
)) {
1290 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mpackage");
1291 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__mpackage
, 69);
1295 RET_LABEL236
:(void)0;
1299 { /* Inline kernel#Object#== (var229,var235) on <var229:MPackage> */
1302 { /* Inline kernel#Object#is_same_instance (var229,var_other) on <var229:MPackage> */
1303 var242
= var229
== var_other
;
1306 RET_LABEL241
:(void)0;
1311 RET_LABEL239
:(void)0;
1320 var243
= nitc___nitc__MClass___try_intro(var_other209
);
1322 if (var243
== NULL
) {
1323 var244
= 1; /* is null */
1325 var244
= 0; /* arg is null but recv is not */
1328 { /* Inline kernel#Object#== (var243,((val*)NULL)) on <var243:nullable MClassDef> */
1329 var_other
= ((val
*)NULL
);
1331 { /* Inline kernel#Object#is_same_instance (var243,var_other) on <var243:nullable MClassDef(MClassDef)> */
1332 var249
= var243
== var_other
;
1335 RET_LABEL248
:(void)0;
1340 RET_LABEL246
:(void)0;
1345 goto BREAK_label250
;
1348 if (likely(varonce251
!=NULL
)) {
1349 var252
= varonce251
;
1351 var253
= "full-name-conflict";
1352 var254
= core__flat___NativeString___to_s_full(var253
, 18l, 18l);
1354 varonce251
= var252
;
1356 if (unlikely(varonce255
==NULL
)) {
1357 var256
= NEW_core__NativeArray(7l, &type_core__NativeArray__core__String
);
1358 if (likely(varonce257
!=NULL
)) {
1359 var258
= varonce257
;
1361 var259
= "Error: a class named `";
1362 var260
= core__flat___NativeString___to_s_full(var259
, 22l, 22l);
1364 varonce257
= var258
;
1366 ((struct instance_core__NativeArray
*)var256
)->values
[0]=var258
;
1367 if (likely(varonce261
!=NULL
)) {
1368 var262
= varonce261
;
1370 var263
= "` is already defined in module `";
1371 var264
= core__flat___NativeString___to_s_full(var263
, 32l, 32l);
1373 varonce261
= var262
;
1375 ((struct instance_core__NativeArray
*)var256
)->values
[2]=var262
;
1376 if (likely(varonce265
!=NULL
)) {
1377 var266
= varonce265
;
1380 var268
= core__flat___NativeString___to_s_full(var267
, 5l, 5l);
1382 varonce265
= var266
;
1384 ((struct instance_core__NativeArray
*)var256
)->values
[4]=var266
;
1385 if (likely(varonce269
!=NULL
)) {
1386 var270
= varonce269
;
1389 var272
= core__flat___NativeString___to_s_full(var271
, 1l, 1l);
1391 varonce269
= var270
;
1393 ((struct instance_core__NativeArray
*)var256
)->values
[6]=var270
;
1395 var256
= varonce255
;
1399 var273
= nitc___nitc__MClass___nitc__model_base__MEntity__full_name(var_other209
);
1401 ((struct instance_core__NativeArray
*)var256
)->values
[1]=var273
;
1403 { /* Inline model#MClass#intro_mmodule (var_other209) on <var_other209:MClass> */
1404 var276
= var_other209
->attrs
[COLOR_nitc__model__MClass___intro_mmodule
].val
; /* _intro_mmodule on <var_other209:MClass> */
1405 if (unlikely(var276
== NULL
)) {
1406 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _intro_mmodule");
1407 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 380);
1411 RET_LABEL275
:(void)0;
1415 var277
= ((val
*(*)(val
* self
))(var274
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var274
); /* to_s on <var274:MModule>*/
1417 ((struct instance_core__NativeArray
*)var256
)->values
[3]=var277
;
1419 { /* Inline model#MClass#intro (var_other209) on <var_other209:MClass> */
1420 var280
= var_other209
->attrs
[COLOR_nitc__model__MClass___intro
].val
; /* _intro on <var_other209:MClass> */
1421 if (unlikely(var280
== NULL
)) {
1422 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _intro");
1423 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 483);
1427 RET_LABEL279
:(void)0;
1431 { /* Inline model#MClassDef#location (var278) on <var278:MClassDef> */
1432 var283
= var278
->attrs
[COLOR_nitc__model__MClassDef___location
].val
; /* _location on <var278:MClassDef> */
1433 if (unlikely(var283
== NULL
)) {
1434 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _location");
1435 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 591);
1439 RET_LABEL282
:(void)0;
1443 var284
= ((val
*(*)(val
* self
))(var281
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var281
); /* to_s on <var281:Location>*/
1445 ((struct instance_core__NativeArray
*)var256
)->values
[5]=var284
;
1447 var285
= ((val
*(*)(val
* self
))(var256
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var256
); /* native_to_s on <var256:NativeArray[String]>*/
1449 varonce255
= var256
;
1451 nitc___nitc__ModelBuilder___warning(self
, var_nclassdef
, var252
, var285
); /* Direct call modelbuilder_base#ModelBuilder#warning on <self:ModelBuilder>*/
1453 goto BREAK_label207
;
1456 BREAK_label250
: (void)0;
1458 ((void(*)(val
* self
))((((long)var_205
&3)?class_info
[((long)var_205
&3)]:var_205
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_205
); /* next on <var_205:IndexedIterator[MClass]>*/
1461 BREAK_label207
: (void)0;
1463 ((void(*)(val
* self
))((((long)var_205
&3)?class_info
[((long)var_205
&3)]:var_205
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_205
); /* finish on <var_205:IndexedIterator[MClass]>*/
1469 var286
= NEW_nitc__MClass(&type_nitc__MClass
);
1471 ((void(*)(val
* self
, val
* p0
))(var286
->class->vft
[COLOR_nitc__model__MClass__intro_mmodule_61d
]))(var286
, var_mmodule
); /* intro_mmodule= on <var286:MClass>*/
1474 ((void(*)(val
* self
, val
* p0
))(var286
->class->vft
[COLOR_nitc__model__MClass__name_61d
]))(var286
, var_name
); /* name= on <var286:MClass>*/
1477 ((void(*)(val
* self
, val
* p0
))(var286
->class->vft
[COLOR_nitc__model__MClass__setup_parameter_names
]))(var286
, var_names
); /* setup_parameter_names on <var286:MClass>*/
1480 ((void(*)(val
* self
, val
* p0
))(var286
->class->vft
[COLOR_nitc__model__MClass__kind_61d
]))(var286
, var_mkind
); /* kind= on <var286:MClass>*/
1483 ((void(*)(val
* self
, val
* p0
))(var286
->class->vft
[COLOR_nitc__model__MClass__visibility_61d
]))(var286
, var_mvisibility
); /* visibility= on <var286:MClass>*/
1486 ((void(*)(val
* self
))(var286
->class->vft
[COLOR_core__kernel__Object__init
]))(var286
); /* init on <var286:MClass>*/
1488 var_mclass
= var286
;
1490 /* <var_nclassdef:AClassdef> isa AStdClassdef */
1491 cltype289
= type_nitc__AStdClassdef
.color
;
1492 idtype290
= type_nitc__AStdClassdef
.id
;
1493 if(cltype289
>= var_nclassdef
->type
->table_size
) {
1496 var288
= var_nclassdef
->type
->type_table
[cltype289
] == idtype290
;
1501 { /* Inline modelize_class#AModule#mclass2nclassdef (var_nmodule) on <var_nmodule:AModule> */
1502 var294
= var_nmodule
->attrs
[COLOR_nitc__modelize_class__AModule___mclass2nclassdef
].val
; /* _mclass2nclassdef on <var_nmodule:AModule> */
1503 if (unlikely(var294
== NULL
)) {
1504 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass2nclassdef");
1505 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelize_class
, 450);
1509 RET_LABEL293
:(void)0;
1513 var295
= ((short int(*)(val
* self
, val
* p0
))((((long)var292
&3)?class_info
[((long)var292
&3)]:var292
->class)->vft
[COLOR_core__abstract_collection__MapRead__has_key
]))(var292
, var_mclass
); /* has_key on <var292:Map[MClass, AClassdef]>*/
1520 if (unlikely(varonce296
==NULL
)) {
1521 var297
= NEW_core__NativeArray(5l, &type_core__NativeArray__core__String
);
1522 if (likely(varonce298
!=NULL
)) {
1523 var299
= varonce298
;
1525 var300
= "Error: a class `";
1526 var301
= core__flat___NativeString___to_s_full(var300
, 16l, 16l);
1528 varonce298
= var299
;
1530 ((struct instance_core__NativeArray
*)var297
)->values
[0]=var299
;
1531 if (likely(varonce302
!=NULL
)) {
1532 var303
= varonce302
;
1534 var304
= "` is already defined at line ";
1535 var305
= core__flat___NativeString___to_s_full(var304
, 29l, 29l);
1537 varonce302
= var303
;
1539 ((struct instance_core__NativeArray
*)var297
)->values
[2]=var303
;
1540 if (likely(varonce306
!=NULL
)) {
1541 var307
= varonce306
;
1544 var309
= core__flat___NativeString___to_s_full(var308
, 1l, 1l);
1546 varonce306
= var307
;
1548 ((struct instance_core__NativeArray
*)var297
)->values
[4]=var307
;
1550 var297
= varonce296
;
1553 ((struct instance_core__NativeArray
*)var297
)->values
[1]=var_name
;
1555 { /* Inline modelize_class#AModule#mclass2nclassdef (var_nmodule) on <var_nmodule:AModule> */
1556 var312
= var_nmodule
->attrs
[COLOR_nitc__modelize_class__AModule___mclass2nclassdef
].val
; /* _mclass2nclassdef on <var_nmodule:AModule> */
1557 if (unlikely(var312
== NULL
)) {
1558 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass2nclassdef");
1559 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelize_class
, 450);
1563 RET_LABEL311
:(void)0;
1567 var313
= ((val
*(*)(val
* self
, val
* p0
))((((long)var310
&3)?class_info
[((long)var310
&3)]:var310
->class)->vft
[COLOR_core__abstract_collection__MapRead___91d_93d
]))(var310
, var_mclass
); /* [] on <var310:Map[MClass, AClassdef]>*/
1570 { /* Inline parser_nodes#ANode#location (var313) on <var313:nullable Object(AClassdef)> */
1571 var316
= var313
->attrs
[COLOR_nitc__parser_nodes__ANode___location
].val
; /* _location on <var313:nullable Object(AClassdef)> */
1572 if (unlikely(var316
== NULL
)) {
1573 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _location");
1574 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 24);
1578 RET_LABEL315
:(void)0;
1582 { /* Inline location#Location#line_start (var314) on <var314:Location> */
1583 var319
= var314
->attrs
[COLOR_nitc__location__Location___line_start
].l
; /* _line_start on <var314:Location> */
1585 RET_LABEL318
:(void)0;
1588 var320
= core__flat___Int___core__abstract_text__Object__to_s(var317
);
1589 ((struct instance_core__NativeArray
*)var297
)->values
[3]=var320
;
1591 var321
= ((val
*(*)(val
* self
))(var297
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var297
); /* native_to_s on <var297:NativeArray[String]>*/
1593 varonce296
= var297
;
1595 nitc___nitc__ModelBuilder___error(self
, var_nclassdef
, var321
); /* Direct call modelbuilder_base#ModelBuilder#error on <self:ModelBuilder>*/
1598 { /* Inline model_base#MEntity#is_broken= (var_mclass,1) on <var_mclass:nullable MClass(MClass)> */
1599 var_mclass
->attrs
[COLOR_nitc__model_base__MEntity___is_broken
].s
= 1; /* _is_broken on <var_mclass:nullable MClass(MClass)> */
1600 RET_LABEL322
:(void)0;
1605 /* <var_nclassdef:AClassdef> isa AStdClassdef */
1606 cltype325
= type_nitc__AStdClassdef
.color
;
1607 idtype326
= type_nitc__AStdClassdef
.id
;
1608 if(cltype325
>= var_nclassdef
->type
->table_size
) {
1611 var324
= var_nclassdef
->type
->type_table
[cltype325
] == idtype326
;
1616 { /* Inline parser_nodes#ADefinition#n_kwredef (var_nclassdef) on <var_nclassdef:AClassdef(AStdClassdef)> */
1617 var330
= var_nclassdef
->attrs
[COLOR_nitc__parser_nodes__ADefinition___n_kwredef
].val
; /* _n_kwredef on <var_nclassdef:AClassdef(AStdClassdef)> */
1619 RET_LABEL329
:(void)0;
1622 if (var328
== NULL
) {
1623 var331
= 1; /* is null */
1625 var331
= 0; /* arg is null but recv is not */
1628 { /* Inline kernel#Object#== (var328,((val*)NULL)) on <var328:nullable TKwredef> */
1629 var_other
= ((val
*)NULL
);
1631 { /* Inline kernel#Object#is_same_instance (var328,var_other) on <var328:nullable TKwredef(TKwredef)> */
1632 var336
= var328
== var_other
;
1635 RET_LABEL335
:(void)0;
1640 RET_LABEL333
:(void)0;
1649 if (unlikely(varonce337
==NULL
)) {
1650 var338
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
1651 if (likely(varonce339
!=NULL
)) {
1652 var340
= varonce339
;
1654 var341
= "Redef Error: `";
1655 var342
= core__flat___NativeString___to_s_full(var341
, 14l, 14l);
1657 varonce339
= var340
;
1659 ((struct instance_core__NativeArray
*)var338
)->values
[0]=var340
;
1660 if (likely(varonce343
!=NULL
)) {
1661 var344
= varonce343
;
1663 var345
= "` is an imported class. Add the `redef` keyword to refine it.";
1664 var346
= core__flat___NativeString___to_s_full(var345
, 61l, 61l);
1666 varonce343
= var344
;
1668 ((struct instance_core__NativeArray
*)var338
)->values
[2]=var344
;
1670 var338
= varonce337
;
1673 ((struct instance_core__NativeArray
*)var338
)->values
[1]=var_name
;
1675 var347
= ((val
*(*)(val
* self
))(var338
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var338
); /* native_to_s on <var338:NativeArray[String]>*/
1677 varonce337
= var338
;
1679 nitc___nitc__ModelBuilder___error(self
, var_nclassdef
, var347
); /* Direct call modelbuilder_base#ModelBuilder#error on <self:ModelBuilder>*/
1682 { /* Inline model_base#MEntity#is_broken= (var_mclass,1) on <var_mclass:nullable MClass(MClass)> */
1683 var_mclass
->attrs
[COLOR_nitc__model_base__MEntity___is_broken
].s
= 1; /* _is_broken on <var_mclass:nullable MClass(MClass)> */
1684 RET_LABEL348
:(void)0;
1690 { /* Inline kernel#Int#!= (var_arity,0l) on <var_arity:Int> */
1691 var352
= var_arity
== 0l;
1695 RET_LABEL351
:(void)0;
1701 { /* Inline model#MClass#arity (var_mclass) on <var_mclass:nullable MClass(MClass)> */
1702 var357
= var_mclass
->attrs
[COLOR_nitc__model__MClass___arity
].l
; /* _arity on <var_mclass:nullable MClass(MClass)> */
1704 RET_LABEL356
:(void)0;
1708 { /* Inline kernel#Int#!= (var355,var_arity) on <var355:Int> */
1709 var360
= var355
== var_arity
;
1713 RET_LABEL359
:(void)0;
1721 if (unlikely(varonce362
==NULL
)) {
1722 var363
= NEW_core__NativeArray(7l, &type_core__NativeArray__core__String
);
1723 if (likely(varonce364
!=NULL
)) {
1724 var365
= varonce364
;
1726 var366
= "Redef Error: expected ";
1727 var367
= core__flat___NativeString___to_s_full(var366
, 22l, 22l);
1729 varonce364
= var365
;
1731 ((struct instance_core__NativeArray
*)var363
)->values
[0]=var365
;
1732 if (likely(varonce368
!=NULL
)) {
1733 var369
= varonce368
;
1735 var370
= " formal parameter(s) for ";
1736 var371
= core__flat___NativeString___to_s_full(var370
, 25l, 25l);
1738 varonce368
= var369
;
1740 ((struct instance_core__NativeArray
*)var363
)->values
[2]=var369
;
1741 if (likely(varonce372
!=NULL
)) {
1742 var373
= varonce372
;
1745 var375
= core__flat___NativeString___to_s_full(var374
, 6l, 6l);
1747 varonce372
= var373
;
1749 ((struct instance_core__NativeArray
*)var363
)->values
[4]=var373
;
1750 if (likely(varonce376
!=NULL
)) {
1751 var377
= varonce376
;
1754 var379
= core__flat___NativeString___to_s_full(var378
, 1l, 1l);
1756 varonce376
= var377
;
1758 ((struct instance_core__NativeArray
*)var363
)->values
[6]=var377
;
1760 var363
= varonce362
;
1764 { /* Inline model#MClass#arity (var_mclass) on <var_mclass:nullable MClass(MClass)> */
1765 var382
= var_mclass
->attrs
[COLOR_nitc__model__MClass___arity
].l
; /* _arity on <var_mclass:nullable MClass(MClass)> */
1767 RET_LABEL381
:(void)0;
1770 var383
= core__flat___Int___core__abstract_text__Object__to_s(var380
);
1771 ((struct instance_core__NativeArray
*)var363
)->values
[1]=var383
;
1773 var384
= nitc___nitc__MClass___signature_to_s(var_mclass
);
1775 ((struct instance_core__NativeArray
*)var363
)->values
[3]=var384
;
1776 var385
= core__flat___Int___core__abstract_text__Object__to_s(var_arity
);
1777 ((struct instance_core__NativeArray
*)var363
)->values
[5]=var385
;
1779 var386
= ((val
*(*)(val
* self
))(var363
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var363
); /* native_to_s on <var363:NativeArray[String]>*/
1781 varonce362
= var363
;
1783 nitc___nitc__ModelBuilder___error(self
, var_nclassdef
, var386
); /* Direct call modelbuilder_base#ModelBuilder#error on <self:ModelBuilder>*/
1786 { /* Inline model_base#MEntity#is_broken= (var_mclass,1) on <var_mclass:nullable MClass(MClass)> */
1787 var_mclass
->attrs
[COLOR_nitc__model_base__MEntity___is_broken
].s
= 1; /* _is_broken on <var_mclass:nullable MClass(MClass)> */
1788 RET_LABEL387
:(void)0;
1793 if (var_nkind
== NULL
) {
1794 var390
= 0; /* is null */
1796 var390
= 1; /* arg is null and recv is not */
1799 { /* Inline kernel#Object#!= (var_nkind,((val*)NULL)) on <var_nkind:nullable AClasskind> */
1800 var_other167
= ((val
*)NULL
);
1802 var393
= ((short int(*)(val
* self
, val
* p0
))(var_nkind
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_nkind
, var_other167
); /* == on <var_nkind:nullable AClasskind(AClasskind)>*/
1807 RET_LABEL392
:(void)0;
1815 var397
= nitc__model___core__Sys___concrete_kind(var396
);
1818 { /* Inline kernel#Object#!= (var_mkind,var397) on <var_mkind:MClassKind> */
1819 var_other167
= var397
;
1821 var400
= ((short int(*)(val
* self
, val
* p0
))(var_mkind
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_mkind
, var_other167
); /* == on <var_mkind:MClassKind>*/
1826 RET_LABEL399
:(void)0;
1836 { /* Inline model#MClass#kind (var_mclass) on <var_mclass:nullable MClass(MClass)> */
1837 var405
= var_mclass
->attrs
[COLOR_nitc__model__MClass___kind
].val
; /* _kind on <var_mclass:nullable MClass(MClass)> */
1838 if (unlikely(var405
== NULL
)) {
1839 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _kind");
1840 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 459);
1844 RET_LABEL404
:(void)0;
1848 { /* Inline kernel#Object#!= (var403,var_mkind) on <var403:MClassKind> */
1849 var_other167
= var_mkind
;
1851 var408
= ((short int(*)(val
* self
, val
* p0
))(var403
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var403
, var_other167
); /* == on <var403:MClassKind>*/
1856 RET_LABEL407
:(void)0;
1864 if (unlikely(varonce410
==NULL
)) {
1865 var411
= NEW_core__NativeArray(5l, &type_core__NativeArray__core__String
);
1866 if (likely(varonce412
!=NULL
)) {
1867 var413
= varonce412
;
1869 var414
= "Redef Error: refinement changed the kind from `";
1870 var415
= core__flat___NativeString___to_s_full(var414
, 47l, 47l);
1872 varonce412
= var413
;
1874 ((struct instance_core__NativeArray
*)var411
)->values
[0]=var413
;
1875 if (likely(varonce416
!=NULL
)) {
1876 var417
= varonce416
;
1879 var419
= core__flat___NativeString___to_s_full(var418
, 6l, 6l);
1881 varonce416
= var417
;
1883 ((struct instance_core__NativeArray
*)var411
)->values
[2]=var417
;
1884 if (likely(varonce420
!=NULL
)) {
1885 var421
= varonce420
;
1888 var423
= core__flat___NativeString___to_s_full(var422
, 2l, 2l);
1890 varonce420
= var421
;
1892 ((struct instance_core__NativeArray
*)var411
)->values
[4]=var421
;
1894 var411
= varonce410
;
1898 { /* Inline model#MClass#kind (var_mclass) on <var_mclass:nullable MClass(MClass)> */
1899 var426
= var_mclass
->attrs
[COLOR_nitc__model__MClass___kind
].val
; /* _kind on <var_mclass:nullable MClass(MClass)> */
1900 if (unlikely(var426
== NULL
)) {
1901 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _kind");
1902 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 459);
1906 RET_LABEL425
:(void)0;
1910 var427
= ((val
*(*)(val
* self
))(var424
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var424
); /* to_s on <var424:MClassKind>*/
1912 ((struct instance_core__NativeArray
*)var411
)->values
[1]=var427
;
1914 var428
= ((val
*(*)(val
* self
))(var_mkind
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_mkind
); /* to_s on <var_mkind:MClassKind>*/
1916 ((struct instance_core__NativeArray
*)var411
)->values
[3]=var428
;
1918 var429
= ((val
*(*)(val
* self
))(var411
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var411
); /* native_to_s on <var411:NativeArray[String]>*/
1920 varonce410
= var411
;
1922 nitc___nitc__ModelBuilder___error(self
, var_nkind
, var429
); /* Direct call modelbuilder_base#ModelBuilder#error on <self:ModelBuilder>*/
1925 if (var_nvisibility
== NULL
) {
1926 var432
= 0; /* is null */
1928 var432
= 1; /* arg is null and recv is not */
1931 { /* Inline kernel#Object#!= (var_nvisibility,((val*)NULL)) on <var_nvisibility:nullable AVisibility> */
1932 var_other167
= ((val
*)NULL
);
1934 var435
= ((short int(*)(val
* self
, val
* p0
))(var_nvisibility
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_nvisibility
, var_other167
); /* == on <var_nvisibility:nullable AVisibility(AVisibility)>*/
1939 RET_LABEL434
:(void)0;
1947 var439
= nitc__model_base___core__Sys___public_visibility(var438
);
1950 { /* Inline kernel#Object#!= (var_mvisibility,var439) on <var_mvisibility:nullable MVisibility(MVisibility)> */
1951 var_other167
= var439
;
1953 var442
= ((short int(*)(val
* self
, val
* p0
))(var_mvisibility
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_mvisibility
, var_other167
); /* == on <var_mvisibility:nullable MVisibility(MVisibility)>*/
1958 RET_LABEL441
:(void)0;
1968 { /* Inline model#MClass#visibility (var_mclass) on <var_mclass:nullable MClass(MClass)> */
1969 var447
= var_mclass
->attrs
[COLOR_nitc__model__MClass___visibility
].val
; /* _visibility on <var_mclass:nullable MClass(MClass)> */
1970 if (unlikely(var447
== NULL
)) {
1971 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _visibility");
1972 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 463);
1976 RET_LABEL446
:(void)0;
1980 { /* Inline kernel#Object#!= (var445,var_mvisibility) on <var445:MVisibility> */
1981 var_other167
= var_mvisibility
;
1983 var450
= ((short int(*)(val
* self
, val
* p0
))(var445
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var445
, var_other167
); /* == on <var445:MVisibility>*/
1988 RET_LABEL449
:(void)0;
1996 if (unlikely(varonce452
==NULL
)) {
1997 var453
= NEW_core__NativeArray(5l, &type_core__NativeArray__core__String
);
1998 if (likely(varonce454
!=NULL
)) {
1999 var455
= varonce454
;
2001 var456
= "Redef Error: refinement changed the visibility from `";
2002 var457
= core__flat___NativeString___to_s_full(var456
, 53l, 53l);
2004 varonce454
= var455
;
2006 ((struct instance_core__NativeArray
*)var453
)->values
[0]=var455
;
2007 if (likely(varonce458
!=NULL
)) {
2008 var459
= varonce458
;
2011 var461
= core__flat___NativeString___to_s_full(var460
, 6l, 6l);
2013 varonce458
= var459
;
2015 ((struct instance_core__NativeArray
*)var453
)->values
[2]=var459
;
2016 if (likely(varonce462
!=NULL
)) {
2017 var463
= varonce462
;
2020 var465
= core__flat___NativeString___to_s_full(var464
, 1l, 1l);
2022 varonce462
= var463
;
2024 ((struct instance_core__NativeArray
*)var453
)->values
[4]=var463
;
2026 var453
= varonce452
;
2030 { /* Inline model#MClass#visibility (var_mclass) on <var_mclass:nullable MClass(MClass)> */
2031 var468
= var_mclass
->attrs
[COLOR_nitc__model__MClass___visibility
].val
; /* _visibility on <var_mclass:nullable MClass(MClass)> */
2032 if (unlikely(var468
== NULL
)) {
2033 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _visibility");
2034 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 463);
2038 RET_LABEL467
:(void)0;
2042 var469
= ((val
*(*)(val
* self
))(var466
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var466
); /* to_s on <var466:MVisibility>*/
2044 ((struct instance_core__NativeArray
*)var453
)->values
[1]=var469
;
2046 var470
= ((val
*(*)(val
* self
))(var_mvisibility
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_mvisibility
); /* to_s on <var_mvisibility:nullable MVisibility(MVisibility)>*/
2048 ((struct instance_core__NativeArray
*)var453
)->values
[3]=var470
;
2050 var471
= ((val
*(*)(val
* self
))(var453
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var453
); /* native_to_s on <var453:NativeArray[String]>*/
2052 varonce452
= var453
;
2054 nitc___nitc__ModelBuilder___error(self
, var_nvisibility
, var471
); /* Direct call modelbuilder_base#ModelBuilder#error on <self:ModelBuilder>*/
2064 { /* Inline modelize_class#AClassdef#mclass= (var_nclassdef,var_mclass) on <var_nclassdef:AClassdef> */
2065 var_nclassdef
->attrs
[COLOR_nitc__modelize_class__AClassdef___mclass
].val
= var_mclass
; /* _mclass on <var_nclassdef:AClassdef> */
2066 RET_LABEL472
:(void)0;
2070 { /* Inline modelize_class#AModule#mclass2nclassdef (var_nmodule) on <var_nmodule:AModule> */
2071 var475
= var_nmodule
->attrs
[COLOR_nitc__modelize_class__AModule___mclass2nclassdef
].val
; /* _mclass2nclassdef on <var_nmodule:AModule> */
2072 if (unlikely(var475
== NULL
)) {
2073 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass2nclassdef");
2074 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelize_class
, 450);
2078 RET_LABEL474
:(void)0;
2082 var476
= ((short int(*)(val
* self
, val
* p0
))((((long)var473
&3)?class_info
[((long)var473
&3)]:var473
->class)->vft
[COLOR_core__abstract_collection__MapRead__has_key
]))(var473
, var_mclass
); /* has_key on <var473:Map[MClass, AClassdef]>*/
2087 { /* Inline modelize_class#AModule#mclass2nclassdef (var_nmodule) on <var_nmodule:AModule> */
2088 var480
= var_nmodule
->attrs
[COLOR_nitc__modelize_class__AModule___mclass2nclassdef
].val
; /* _mclass2nclassdef on <var_nmodule:AModule> */
2089 if (unlikely(var480
== NULL
)) {
2090 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass2nclassdef");
2091 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelize_class
, 450);
2095 RET_LABEL479
:(void)0;
2099 ((void(*)(val
* self
, val
* p0
, val
* p1
))((((long)var478
&3)?class_info
[((long)var478
&3)]:var478
->class)->vft
[COLOR_core__abstract_collection__Map___91d_93d_61d
]))(var478
, var_mclass
, var_nclassdef
); /* []= on <var478:Map[MClass, AClassdef]>*/
2101 var481
= NEW_core__Array(&type_core__Array__nitc__AClassdef
);
2103 core___core__Array___with_capacity(var481
, 1l); /* Direct call array#Array#with_capacity on <var481:Array[AClassdef]>*/
2107 core___core__AbstractArray___core__abstract_collection__Sequence__push(var_482
, var_nclassdef
); /* Direct call array#AbstractArray#push on <var_482:Array[AClassdef]>*/
2110 { /* Inline modelize_class#AClassdef#all_defs= (var_nclassdef,var_482) on <var_nclassdef:AClassdef> */
2111 var_nclassdef
->attrs
[COLOR_nitc__modelize_class__AClassdef___all_defs
].val
= var_482
; /* _all_defs on <var_nclassdef:AClassdef> */
2112 RET_LABEL483
:(void)0;
2117 { /* Inline modelize_class#AModule#mclass2nclassdef (var_nmodule) on <var_nmodule:AModule> */
2118 var486
= var_nmodule
->attrs
[COLOR_nitc__modelize_class__AModule___mclass2nclassdef
].val
; /* _mclass2nclassdef on <var_nmodule:AModule> */
2119 if (unlikely(var486
== NULL
)) {
2120 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass2nclassdef");
2121 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelize_class
, 450);
2125 RET_LABEL485
:(void)0;
2129 var487
= ((val
*(*)(val
* self
, val
* p0
))((((long)var484
&3)?class_info
[((long)var484
&3)]:var484
->class)->vft
[COLOR_core__abstract_collection__MapRead___91d_93d
]))(var484
, var_mclass
); /* [] on <var484:Map[MClass, AClassdef]>*/
2132 { /* Inline modelize_class#AClassdef#all_defs (var487) on <var487:nullable Object(AClassdef)> */
2133 var490
= var487
->attrs
[COLOR_nitc__modelize_class__AClassdef___all_defs
].val
; /* _all_defs on <var487:nullable Object(AClassdef)> */
2135 RET_LABEL489
:(void)0;
2138 if (var488
== NULL
) {
2139 PRINT_ERROR("Runtime error: %s", "Receiver is null");
2140 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelize_class
, 139);
2143 core___core__Array___core__abstract_collection__SimpleCollection__add(var488
, var_nclassdef
); /* Direct call array#Array#add on <var488:nullable Array[AClassdef]>*/
2148 /* method modelize_class#ModelBuilder#build_a_mclassdef for (self: ModelBuilder, AModule, AClassdef) */
2149 void nitc__modelize_class___ModelBuilder___build_a_mclassdef(val
* self
, val
* p0
, val
* p1
) {
2150 val
* var_nmodule
/* var nmodule: AModule */;
2151 val
* var_nclassdef
/* var nclassdef: AClassdef */;
2152 val
* var
/* : nullable MModule */;
2153 val
* var2
/* : nullable MModule */;
2154 val
* var_mmodule
/* var mmodule: MModule */;
2155 static val
* varonce
;
2156 val
* var3
/* : String */;
2157 char* var4
/* : NativeString */;
2158 val
* var5
/* : String */;
2159 val
* var6
/* : nullable MClass */;
2160 val
* var_objectclass
/* var objectclass: nullable MClass */;
2161 val
* var7
/* : nullable MClass */;
2162 val
* var9
/* : nullable MClass */;
2163 val
* var_mclass
/* var mclass: nullable MClass */;
2164 short int var10
/* : Bool */;
2165 short int var11
/* : Bool */;
2166 val
* var_other
/* var other: nullable Object */;
2167 short int var13
/* : Bool */;
2168 short int var15
/* : Bool */;
2169 val
* var16
/* : Map[MClass, AClassdef] */;
2170 val
* var18
/* : Map[MClass, AClassdef] */;
2171 val
* var19
/* : nullable Object */;
2172 val
* var_other_nclassdef
/* var other_nclassdef: AClassdef */;
2173 short int var20
/* : Bool */;
2174 val
* var_other22
/* var other: nullable Object */;
2175 short int var23
/* : Bool */;
2176 short int var24
/* : Bool */;
2177 short int var25
/* : Bool */;
2180 short int var26
/* : Bool */;
2181 val
* var27
/* : nullable MClassDef */;
2182 val
* var29
/* : nullable MClassDef */;
2183 val
* var31
/* : Array[MType] */;
2184 val
* var_bounds
/* var bounds: Array[MType] */;
2185 short int var32
/* : Bool */;
2186 short int var33
/* : Bool */;
2189 short int var_
/* var : Bool */;
2190 long var36
/* : Int */;
2191 long var38
/* : Int */;
2192 short int var39
/* : Bool */;
2193 short int var41
/* : Bool */;
2196 const char* var_class_name
;
2197 short int var44
/* : Bool */;
2198 long var_i
/* var i: Int */;
2199 long var45
/* : Int */;
2200 long var47
/* : Int */;
2201 long var_48
/* var : Int */;
2202 short int var49
/* : Bool */;
2203 short int var51
/* : Bool */;
2206 const char* var_class_name54
;
2207 short int var55
/* : Bool */;
2208 val
* var56
/* : ANodes[AFormaldef] */;
2209 val
* var58
/* : ANodes[AFormaldef] */;
2210 short int var59
/* : Bool */;
2211 val
* var60
/* : MClassDef */;
2212 val
* var62
/* : MClassDef */;
2213 val
* var63
/* : MClassType */;
2214 val
* var65
/* : MClassType */;
2215 val
* var66
/* : Array[MType] */;
2216 val
* var67
/* : nullable Object */;
2217 val
* var_bound
/* var bound: MType */;
2218 val
* var69
/* : ANodes[AFormaldef] */;
2219 val
* var71
/* : ANodes[AFormaldef] */;
2220 val
* var72
/* : ANode */;
2221 val
* var_nfd
/* var nfd: AFormaldef */;
2222 val
* var73
/* : Array[MParameterType] */;
2223 val
* var75
/* : Array[MParameterType] */;
2224 val
* var76
/* : nullable Object */;
2225 val
* var77
/* : String */;
2226 val
* var79
/* : String */;
2227 val
* var_pname
/* var pname: String */;
2228 val
* var80
/* : TClassid */;
2229 val
* var82
/* : TClassid */;
2230 val
* var83
/* : String */;
2231 short int var84
/* : Bool */;
2232 short int var86
/* : Bool */;
2233 short int var87
/* : Bool */;
2234 val
* var88
/* : TClassid */;
2235 val
* var90
/* : TClassid */;
2236 val
* var92
/* : NativeArray[String] */;
2237 static val
* varonce91
;
2238 static val
* varonce93
;
2239 val
* var94
/* : String */;
2240 char* var95
/* : NativeString */;
2241 val
* var96
/* : String */;
2242 static val
* varonce97
;
2243 val
* var98
/* : String */;
2244 char* var99
/* : NativeString */;
2245 val
* var100
/* : String */;
2246 static val
* varonce101
;
2247 val
* var102
/* : String */;
2248 char* var103
/* : NativeString */;
2249 val
* var104
/* : String */;
2250 static val
* varonce105
;
2251 val
* var106
/* : String */;
2252 char* var107
/* : NativeString */;
2253 val
* var108
/* : String */;
2254 static val
* varonce109
;
2255 val
* var110
/* : String */;
2256 char* var111
/* : NativeString */;
2257 val
* var112
/* : String */;
2258 val
* var113
/* : String */;
2259 val
* var114
/* : TClassid */;
2260 val
* var116
/* : TClassid */;
2261 val
* var117
/* : String */;
2262 val
* var118
/* : MClassDef */;
2263 val
* var120
/* : MClassDef */;
2264 val
* var121
/* : MModule */;
2265 val
* var123
/* : MModule */;
2266 val
* var124
/* : String */;
2267 val
* var125
/* : String */;
2268 val
* var126
/* : nullable AType */;
2269 val
* var128
/* : nullable AType */;
2270 val
* var_nfdt
/* var nfdt: nullable AType */;
2271 short int var129
/* : Bool */;
2272 short int var130
/* : Bool */;
2273 short int var132
/* : Bool */;
2274 short int var133
/* : Bool */;
2275 val
* var134
/* : nullable MType */;
2276 val
* var_bound135
/* var bound: nullable MType */;
2277 short int var136
/* : Bool */;
2278 short int var137
/* : Bool */;
2279 short int var139
/* : Bool */;
2280 short int var141
/* : Bool */;
2281 short int var142
/* : Bool */;
2282 val
* var144
/* : NativeArray[String] */;
2283 static val
* varonce143
;
2284 static val
* varonce145
;
2285 val
* var146
/* : String */;
2286 char* var147
/* : NativeString */;
2287 val
* var148
/* : String */;
2288 static val
* varonce149
;
2289 val
* var150
/* : String */;
2290 char* var151
/* : NativeString */;
2291 val
* var152
/* : String */;
2292 val
* var153
/* : String */;
2293 short int var155
/* : Bool */;
2294 short int var156
/* : Bool */;
2297 short int var_159
/* var : Bool */;
2298 val
* var160
/* : MClass */;
2299 val
* var162
/* : MClass */;
2300 val
* var163
/* : MClassKind */;
2301 val
* var165
/* : MClassKind */;
2302 val
* var166
/* : Sys */;
2303 val
* var167
/* : MClassKind */;
2304 short int var168
/* : Bool */;
2305 short int var170
/* : Bool */;
2306 short int var172
/* : Bool */;
2307 static val
* varonce173
;
2308 val
* var174
/* : String */;
2309 char* var175
/* : NativeString */;
2310 val
* var176
/* : String */;
2311 val
* var178
/* : NativeArray[String] */;
2312 static val
* varonce177
;
2313 static val
* varonce179
;
2314 val
* var180
/* : String */;
2315 char* var181
/* : NativeString */;
2316 val
* var182
/* : String */;
2317 static val
* varonce183
;
2318 val
* var184
/* : String */;
2319 char* var185
/* : NativeString */;
2320 val
* var186
/* : String */;
2321 val
* var187
/* : String */;
2322 val
* var188
/* : String */;
2323 val
* var189
/* : Array[MClassDef] */;
2324 val
* var191
/* : Array[MClassDef] */;
2325 short int var192
/* : Bool */;
2326 short int var193
/* : Bool */;
2327 short int var194
/* : Bool */;
2328 short int var196
/* : Bool */;
2329 short int var198
/* : Bool */;
2330 val
* var200
/* : NativeArray[String] */;
2331 static val
* varonce199
;
2332 static val
* varonce201
;
2333 val
* var202
/* : String */;
2334 char* var203
/* : NativeString */;
2335 val
* var204
/* : String */;
2336 static val
* varonce205
;
2337 val
* var206
/* : String */;
2338 char* var207
/* : NativeString */;
2339 val
* var208
/* : String */;
2340 val
* var209
/* : String */;
2341 val
* var210
/* : MClassType */;
2342 val
* var212
/* : MClassType */;
2343 val
* var213
/* : MType */;
2344 val
* var_bound214
/* var bound: MType */;
2345 val
* var216
/* : MClassDef */;
2346 val
* var218
/* : MClassDef */;
2347 val
* var219
/* : MClassType */;
2348 val
* var221
/* : MClassType */;
2349 val
* var222
/* : Array[MType] */;
2350 val
* var223
/* : nullable Object */;
2351 val
* var_bound224
/* var bound: MType */;
2352 long var226
/* : Int */;
2353 val
* var227
/* : MClassType */;
2354 val
* var_bound_mtype
/* var bound_mtype: MClassType */;
2355 val
* var228
/* : MClassDef */;
2356 val
* var229
/* : Location */;
2357 val
* var231
/* : Location */;
2358 val
* var_mclassdef
/* var mclassdef: MClassDef */;
2359 val
* var233
/* : HashMap[MClassDef, AClassdef] */;
2360 val
* var235
/* : HashMap[MClassDef, AClassdef] */;
2361 short int var236
/* : Bool */;
2364 val
* var239
/* : nullable ADoc */;
2365 val
* var241
/* : nullable ADoc */;
2366 val
* var_ndoc
/* var ndoc: nullable ADoc */;
2367 short int var242
/* : Bool */;
2368 short int var243
/* : Bool */;
2369 short int var245
/* : Bool */;
2370 short int var246
/* : Bool */;
2371 val
* var247
/* : MDoc */;
2372 val
* var_mdoc
/* var mdoc: MDoc */;
2373 short int var250
/* : Bool */;
2374 short int var251
/* : Bool */;
2375 short int var_252
/* var : Bool */;
2376 val
* var253
/* : MVisibility */;
2377 val
* var255
/* : MVisibility */;
2378 val
* var256
/* : Sys */;
2379 val
* var257
/* : MVisibility */;
2380 short int var258
/* : Bool */;
2381 static val
* varonce259
;
2382 val
* var260
/* : String */;
2383 char* var261
/* : NativeString */;
2384 val
* var262
/* : String */;
2385 val
* var264
/* : NativeArray[String] */;
2386 static val
* varonce263
;
2387 static val
* varonce265
;
2388 val
* var266
/* : String */;
2389 char* var267
/* : NativeString */;
2390 val
* var268
/* : String */;
2391 static val
* varonce269
;
2392 val
* var270
/* : String */;
2393 char* var271
/* : NativeString */;
2394 val
* var272
/* : String */;
2395 val
* var273
/* : String */;
2396 val
* var274
/* : String */;
2397 short int var275
/* : Bool */;
2398 val
* var276
/* : ToolContext */;
2399 val
* var278
/* : ToolContext */;
2400 val
* var280
/* : NativeArray[String] */;
2401 static val
* varonce279
;
2402 static val
* varonce281
;
2403 val
* var282
/* : String */;
2404 char* var283
/* : NativeString */;
2405 val
* var284
/* : String */;
2406 static val
* varonce285
;
2407 val
* var286
/* : String */;
2408 char* var287
/* : NativeString */;
2409 val
* var288
/* : String */;
2410 val
* var289
/* : String */;
2411 val
* var290
/* : MClassKind */;
2412 val
* var292
/* : MClassKind */;
2413 val
* var293
/* : String */;
2414 val
* var294
/* : String */;
2415 val
* var295
/* : String */;
2416 val
* var296
/* : ToolContext */;
2417 val
* var298
/* : ToolContext */;
2418 val
* var300
/* : NativeArray[String] */;
2419 static val
* varonce299
;
2420 static val
* varonce301
;
2421 val
* var302
/* : String */;
2422 char* var303
/* : NativeString */;
2423 val
* var304
/* : String */;
2424 static val
* varonce305
;
2425 val
* var306
/* : String */;
2426 char* var307
/* : NativeString */;
2427 val
* var308
/* : String */;
2428 val
* var309
/* : String */;
2429 val
* var310
/* : MClassKind */;
2430 val
* var312
/* : MClassKind */;
2431 val
* var313
/* : String */;
2432 val
* var314
/* : String */;
2433 val
* var315
/* : String */;
2437 { /* Inline loader#AModule#mmodule (var_nmodule) on <var_nmodule:AModule> */
2438 var2
= var_nmodule
->attrs
[COLOR_nitc__loader__AModule___mmodule
].val
; /* _mmodule on <var_nmodule:AModule> */
2443 if (unlikely(var
== NULL
)) {
2444 PRINT_ERROR("Runtime error: %s", "Cast failed");
2445 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelize_class
, 146);
2449 if (likely(varonce
!=NULL
)) {
2453 var5
= core__flat___NativeString___to_s_full(var4
, 6l, 6l);
2458 var6
= nitc___nitc__ModelBuilder___try_get_mclass_by_name(self
, var_nmodule
, var_mmodule
, var3
);
2460 var_objectclass
= var6
;
2462 { /* Inline modelize_class#AClassdef#mclass (var_nclassdef) on <var_nclassdef:AClassdef> */
2463 var9
= var_nclassdef
->attrs
[COLOR_nitc__modelize_class__AClassdef___mclass
].val
; /* _mclass on <var_nclassdef:AClassdef> */
2469 if (var_mclass
== NULL
) {
2470 var10
= 1; /* is null */
2472 var10
= 0; /* arg is null but recv is not */
2475 { /* Inline kernel#Object#== (var_mclass,((val*)NULL)) on <var_mclass:nullable MClass> */
2476 var_other
= ((val
*)NULL
);
2478 { /* Inline kernel#Object#is_same_instance (var_mclass,var_other) on <var_mclass:nullable MClass(MClass)> */
2479 var15
= var_mclass
== var_other
;
2482 RET_LABEL14
:(void)0;
2487 RET_LABEL12
:(void)0;
2496 { /* Inline modelize_class#AModule#mclass2nclassdef (var_nmodule) on <var_nmodule:AModule> */
2497 var18
= var_nmodule
->attrs
[COLOR_nitc__modelize_class__AModule___mclass2nclassdef
].val
; /* _mclass2nclassdef on <var_nmodule:AModule> */
2498 if (unlikely(var18
== NULL
)) {
2499 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass2nclassdef");
2500 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelize_class
, 450);
2504 RET_LABEL17
:(void)0;
2508 var19
= ((val
*(*)(val
* self
, val
* p0
))((((long)var16
&3)?class_info
[((long)var16
&3)]:var16
->class)->vft
[COLOR_core__abstract_collection__MapRead___91d_93d
]))(var16
, var_mclass
); /* [] on <var16:Map[MClass, AClassdef]>*/
2510 var_other_nclassdef
= var19
;
2512 { /* Inline kernel#Object#!= (var_other_nclassdef,var_nclassdef) on <var_other_nclassdef:AClassdef> */
2513 var_other22
= var_nclassdef
;
2515 var23
= ((short int(*)(val
* self
, val
* p0
))(var_other_nclassdef
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_other_nclassdef
, var_other22
); /* == on <var_other_nclassdef:AClassdef>*/
2520 RET_LABEL21
:(void)0;
2524 /* <var_nclassdef:AClassdef> isa AStdClassdef */
2525 cltype
= type_nitc__AStdClassdef
.color
;
2526 idtype
= type_nitc__AStdClassdef
.id
;
2527 if(cltype
>= var_nclassdef
->type
->table_size
) {
2530 var25
= var_nclassdef
->type
->type_table
[cltype
] == idtype
;
2533 if (unlikely(!var26
)) {
2534 PRINT_ERROR("Runtime error: %s", "Assert failed");
2535 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelize_class
, 154);
2539 { /* Inline modelize_class#AClassdef#mclassdef (var_other_nclassdef) on <var_other_nclassdef:AClassdef> */
2540 var29
= var_other_nclassdef
->attrs
[COLOR_nitc__modelize_class__AClassdef___mclassdef
].val
; /* _mclassdef on <var_other_nclassdef:AClassdef> */
2542 RET_LABEL28
:(void)0;
2546 { /* Inline modelize_class#AClassdef#mclassdef= (var_nclassdef,var27) on <var_nclassdef:AClassdef> */
2547 var_nclassdef
->attrs
[COLOR_nitc__modelize_class__AClassdef___mclassdef
].val
= var27
; /* _mclassdef on <var_nclassdef:AClassdef> */
2548 RET_LABEL30
:(void)0;
2554 var31
= NEW_core__Array(&type_core__Array__nitc__MType
);
2556 core___core__Array___core__kernel__Object__init(var31
); /* Direct call array#Array#init on <var31:Array[MType]>*/
2559 /* <var_nclassdef:AClassdef> isa AStdClassdef */
2560 cltype34
= type_nitc__AStdClassdef
.color
;
2561 idtype35
= type_nitc__AStdClassdef
.id
;
2562 if(cltype34
>= var_nclassdef
->type
->table_size
) {
2565 var33
= var_nclassdef
->type
->type_table
[cltype34
] == idtype35
;
2570 { /* Inline model#MClass#arity (var_mclass) on <var_mclass:nullable MClass(MClass)> */
2571 var38
= var_mclass
->attrs
[COLOR_nitc__model__MClass___arity
].l
; /* _arity on <var_mclass:nullable MClass(MClass)> */
2573 RET_LABEL37
:(void)0;
2577 { /* Inline kernel#Int#> (var36,0l) on <var36:Int> */
2578 /* Covariant cast for argument 0 (i) <0l:Int> isa OTHER */
2579 /* <0l:Int> isa OTHER */
2580 var41
= 1; /* easy <0l:Int> isa OTHER*/
2581 if (unlikely(!var41
)) {
2582 var_class_name
= type_core__Int
.name
;
2583 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
2584 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 730);
2590 RET_LABEL40
:(void)0;
2600 { /* Inline model#MClass#arity (var_mclass) on <var_mclass:nullable MClass(MClass)> */
2601 var47
= var_mclass
->attrs
[COLOR_nitc__model__MClass___arity
].l
; /* _arity on <var_mclass:nullable MClass(MClass)> */
2603 RET_LABEL46
:(void)0;
2609 { /* Inline kernel#Int#< (var_i,var_48) on <var_i:Int> */
2610 /* Covariant cast for argument 0 (i) <var_48:Int> isa OTHER */
2611 /* <var_48:Int> isa OTHER */
2612 var51
= 1; /* easy <var_48:Int> isa OTHER*/
2613 if (unlikely(!var51
)) {
2614 var_class_name54
= type_core__Int
.name
;
2615 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name54
);
2616 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 728);
2619 var55
= var_i
< var_48
;
2622 RET_LABEL50
:(void)0;
2630 { /* Inline parser_nodes#AStdClassdef#n_formaldefs (var_nclassdef) on <var_nclassdef:AClassdef(AStdClassdef)> */
2631 var58
= var_nclassdef
->attrs
[COLOR_nitc__parser_nodes__AStdClassdef___n_formaldefs
].val
; /* _n_formaldefs on <var_nclassdef:AClassdef(AStdClassdef)> */
2632 if (unlikely(var58
== NULL
)) {
2633 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_formaldefs");
2634 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1173);
2638 RET_LABEL57
:(void)0;
2642 var59
= nitc___nitc__ANodes___core__abstract_collection__Collection__is_empty(var56
);
2646 { /* Inline model#MClass#intro (var_mclass) on <var_mclass:nullable MClass(MClass)> */
2647 var62
= var_mclass
->attrs
[COLOR_nitc__model__MClass___intro
].val
; /* _intro on <var_mclass:nullable MClass(MClass)> */
2648 if (unlikely(var62
== NULL
)) {
2649 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _intro");
2650 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 483);
2654 RET_LABEL61
:(void)0;
2658 { /* Inline model#MClassDef#bound_mtype (var60) on <var60:MClassDef> */
2659 var65
= var60
->attrs
[COLOR_nitc__model__MClassDef___bound_mtype
].val
; /* _bound_mtype on <var60:MClassDef> */
2660 if (unlikely(var65
== NULL
)) {
2661 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _bound_mtype");
2662 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 579);
2666 RET_LABEL64
:(void)0;
2670 var66
= ((val
*(*)(val
* self
))(var63
->class->vft
[COLOR_nitc__model__MClassType__arguments
]))(var63
); /* arguments on <var63:MClassType>*/
2673 var67
= core___core__Array___core__abstract_collection__SequenceRead___91d_93d(var66
, var_i
);
2677 core___core__Array___core__abstract_collection__SimpleCollection__add(var_bounds
, var_bound
); /* Direct call array#Array#add on <var_bounds:Array[MType]>*/
2683 { /* Inline parser_nodes#AStdClassdef#n_formaldefs (var_nclassdef) on <var_nclassdef:AClassdef(AStdClassdef)> */
2684 var71
= var_nclassdef
->attrs
[COLOR_nitc__parser_nodes__AStdClassdef___n_formaldefs
].val
; /* _n_formaldefs on <var_nclassdef:AClassdef(AStdClassdef)> */
2685 if (unlikely(var71
== NULL
)) {
2686 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_formaldefs");
2687 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1173);
2691 RET_LABEL70
:(void)0;
2695 var72
= nitc___nitc__ANodes___core__abstract_collection__SequenceRead___91d_93d(var69
, var_i
);
2699 { /* Inline model#MClass#mparameters (var_mclass) on <var_mclass:nullable MClass(MClass)> */
2700 var75
= var_mclass
->attrs
[COLOR_nitc__model__MClass___mparameters
].val
; /* _mparameters on <var_mclass:nullable MClass(MClass)> */
2701 if (unlikely(var75
== NULL
)) {
2702 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mparameters");
2703 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 405);
2707 RET_LABEL74
:(void)0;
2711 var76
= core___core__Array___core__abstract_collection__SequenceRead___91d_93d(var73
, var_i
);
2714 { /* Inline model#MParameterType#name (var76) on <var76:nullable Object(MParameterType)> */
2715 var79
= var76
->attrs
[COLOR_nitc__model__MParameterType___name
].val
; /* _name on <var76:nullable Object(MParameterType)> */
2716 if (unlikely(var79
== NULL
)) {
2717 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _name");
2718 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1507);
2722 RET_LABEL78
:(void)0;
2727 { /* Inline parser_nodes#AFormaldef#n_id (var_nfd) on <var_nfd:AFormaldef> */
2728 var82
= var_nfd
->attrs
[COLOR_nitc__parser_nodes__AFormaldef___n_id
].val
; /* _n_id on <var_nfd:AFormaldef> */
2729 if (unlikely(var82
== NULL
)) {
2730 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id");
2731 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1257);
2735 RET_LABEL81
:(void)0;
2739 var83
= nitc__lexer_work___Token___text(var80
);
2742 { /* Inline kernel#Object#!= (var83,var_pname) on <var83:String> */
2743 var_other22
= var_pname
;
2745 var86
= ((short int(*)(val
* self
, val
* p0
))(var83
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var83
, var_other22
); /* == on <var83:String>*/
2750 RET_LABEL85
:(void)0;
2755 { /* Inline parser_nodes#AFormaldef#n_id (var_nfd) on <var_nfd:AFormaldef> */
2756 var90
= var_nfd
->attrs
[COLOR_nitc__parser_nodes__AFormaldef___n_id
].val
; /* _n_id on <var_nfd:AFormaldef> */
2757 if (unlikely(var90
== NULL
)) {
2758 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id");
2759 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1257);
2763 RET_LABEL89
:(void)0;
2766 if (unlikely(varonce91
==NULL
)) {
2767 var92
= NEW_core__NativeArray(9l, &type_core__NativeArray__core__String
);
2768 if (likely(varonce93
!=NULL
)) {
2771 var95
= "Error: formal parameter type #";
2772 var96
= core__flat___NativeString___to_s_full(var95
, 30l, 30l);
2776 ((struct instance_core__NativeArray
*)var92
)->values
[0]=var94
;
2777 if (likely(varonce97
!=NULL
)) {
2781 var100
= core__flat___NativeString___to_s_full(var99
, 2l, 2l);
2785 ((struct instance_core__NativeArray
*)var92
)->values
[2]=var98
;
2786 if (likely(varonce101
!=NULL
)) {
2787 var102
= varonce101
;
2789 var103
= "` must be named `";
2790 var104
= core__flat___NativeString___to_s_full(var103
, 17l, 17l);
2792 varonce101
= var102
;
2794 ((struct instance_core__NativeArray
*)var92
)->values
[4]=var102
;
2795 if (likely(varonce105
!=NULL
)) {
2796 var106
= varonce105
;
2798 var107
= "` as in the original definition in module `";
2799 var108
= core__flat___NativeString___to_s_full(var107
, 43l, 43l);
2801 varonce105
= var106
;
2803 ((struct instance_core__NativeArray
*)var92
)->values
[6]=var106
;
2804 if (likely(varonce109
!=NULL
)) {
2805 var110
= varonce109
;
2808 var112
= core__flat___NativeString___to_s_full(var111
, 2l, 2l);
2810 varonce109
= var110
;
2812 ((struct instance_core__NativeArray
*)var92
)->values
[8]=var110
;
2817 var113
= core__flat___Int___core__abstract_text__Object__to_s(var_i
);
2818 ((struct instance_core__NativeArray
*)var92
)->values
[1]=var113
;
2820 { /* Inline parser_nodes#AFormaldef#n_id (var_nfd) on <var_nfd:AFormaldef> */
2821 var116
= var_nfd
->attrs
[COLOR_nitc__parser_nodes__AFormaldef___n_id
].val
; /* _n_id on <var_nfd:AFormaldef> */
2822 if (unlikely(var116
== NULL
)) {
2823 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id");
2824 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1257);
2828 RET_LABEL115
:(void)0;
2832 var117
= nitc__lexer_work___Token___text(var114
);
2834 ((struct instance_core__NativeArray
*)var92
)->values
[3]=var117
;
2835 ((struct instance_core__NativeArray
*)var92
)->values
[5]=var_pname
;
2837 { /* Inline model#MClass#intro (var_mclass) on <var_mclass:nullable MClass(MClass)> */
2838 var120
= var_mclass
->attrs
[COLOR_nitc__model__MClass___intro
].val
; /* _intro on <var_mclass:nullable MClass(MClass)> */
2839 if (unlikely(var120
== NULL
)) {
2840 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _intro");
2841 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 483);
2845 RET_LABEL119
:(void)0;
2849 { /* Inline model#MClassDef#mmodule (var118) on <var118:MClassDef> */
2850 var123
= var118
->attrs
[COLOR_nitc__model__MClassDef___mmodule
].val
; /* _mmodule on <var118:MClassDef> */
2851 if (unlikely(var123
== NULL
)) {
2852 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mmodule");
2853 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 573);
2857 RET_LABEL122
:(void)0;
2861 var124
= ((val
*(*)(val
* self
))(var121
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var121
); /* to_s on <var121:MModule>*/
2863 ((struct instance_core__NativeArray
*)var92
)->values
[7]=var124
;
2865 var125
= ((val
*(*)(val
* self
))(var92
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var92
); /* native_to_s on <var92:NativeArray[String]>*/
2869 nitc___nitc__ModelBuilder___error(self
, var88
, var125
); /* Direct call modelbuilder_base#ModelBuilder#error on <self:ModelBuilder>*/
2874 { /* Inline parser_nodes#AFormaldef#n_type (var_nfd) on <var_nfd:AFormaldef> */
2875 var128
= var_nfd
->attrs
[COLOR_nitc__parser_nodes__AFormaldef___n_type
].val
; /* _n_type on <var_nfd:AFormaldef> */
2877 RET_LABEL127
:(void)0;
2881 if (var_nfdt
== NULL
) {
2882 var129
= 0; /* is null */
2884 var129
= 1; /* arg is null and recv is not */
2887 { /* Inline kernel#Object#!= (var_nfdt,((val*)NULL)) on <var_nfdt:nullable AType> */
2888 var_other22
= ((val
*)NULL
);
2890 var132
= ((short int(*)(val
* self
, val
* p0
))(var_nfdt
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_nfdt
, var_other22
); /* == on <var_nfdt:nullable AType(AType)>*/
2895 RET_LABEL131
:(void)0;
2901 var134
= nitc___nitc__ModelBuilder___resolve_mtype_unchecked(self
, var_mmodule
, ((val
*)NULL
), var_nfdt
, 0);
2903 var_bound135
= var134
;
2904 if (var_bound135
== NULL
) {
2905 var136
= 1; /* is null */
2907 var136
= 0; /* arg is null but recv is not */
2910 { /* Inline kernel#Object#== (var_bound135,((val*)NULL)) on <var_bound135:nullable MType> */
2911 var_other
= ((val
*)NULL
);
2913 { /* Inline kernel#Object#is_same_instance (var_bound135,var_other) on <var_bound135:nullable MType(MType)> */
2914 var141
= var_bound135
== var_other
;
2917 RET_LABEL140
:(void)0;
2922 RET_LABEL138
:(void)0;
2931 var142
= ((short int(*)(val
* self
))(var_bound135
->class->vft
[COLOR_nitc__model__MType__need_anchor
]))(var_bound135
); /* need_anchor on <var_bound135:nullable MType(MType)>*/
2934 if (unlikely(varonce143
==NULL
)) {
2935 var144
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
2936 if (likely(varonce145
!=NULL
)) {
2937 var146
= varonce145
;
2939 var147
= "Error: formal parameter type `";
2940 var148
= core__flat___NativeString___to_s_full(var147
, 30l, 30l);
2942 varonce145
= var146
;
2944 ((struct instance_core__NativeArray
*)var144
)->values
[0]=var146
;
2945 if (likely(varonce149
!=NULL
)) {
2946 var150
= varonce149
;
2948 var151
= "` bounded with a formal parameter type.";
2949 var152
= core__flat___NativeString___to_s_full(var151
, 39l, 39l);
2951 varonce149
= var150
;
2953 ((struct instance_core__NativeArray
*)var144
)->values
[2]=var150
;
2955 var144
= varonce143
;
2958 ((struct instance_core__NativeArray
*)var144
)->values
[1]=var_pname
;
2960 var153
= ((val
*(*)(val
* self
))(var144
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var144
); /* native_to_s on <var144:NativeArray[String]>*/
2962 varonce143
= var144
;
2964 nitc___nitc__ModelBuilder___error(self
, var_nfd
, var153
); /* Direct call modelbuilder_base#ModelBuilder#error on <self:ModelBuilder>*/
2968 core___core__Array___core__abstract_collection__SimpleCollection__add(var_bounds
, var_bound135
); /* Direct call array#Array#add on <var_bounds:Array[MType]>*/
2971 { /* Inline modelize_class#AFormaldef#bound= (var_nfd,var_bound135) on <var_nfd:AFormaldef> */
2972 var_nfd
->attrs
[COLOR_nitc__modelize_class__AFormaldef___bound
].val
= var_bound135
; /* _bound on <var_nfd:AFormaldef> */
2973 RET_LABEL154
:(void)0;
2977 /* <var_bound135:nullable MType(MType)> isa MClassType */
2978 cltype157
= type_nitc__MClassType
.color
;
2979 idtype158
= type_nitc__MClassType
.id
;
2980 if(cltype157
>= var_bound135
->type
->table_size
) {
2983 var156
= var_bound135
->type
->type_table
[cltype157
] == idtype158
;
2988 { /* Inline model#MClassType#mclass (var_bound135) on <var_bound135:nullable MType(MClassType)> */
2989 var162
= var_bound135
->attrs
[COLOR_nitc__model__MClassType___mclass
].val
; /* _mclass on <var_bound135:nullable MType(MClassType)> */
2990 if (unlikely(var162
== NULL
)) {
2991 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
2992 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1163);
2996 RET_LABEL161
:(void)0;
3000 { /* Inline model#MClass#kind (var160) on <var160:MClass> */
3001 var165
= var160
->attrs
[COLOR_nitc__model__MClass___kind
].val
; /* _kind on <var160:MClass> */
3002 if (unlikely(var165
== NULL
)) {
3003 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _kind");
3004 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 459);
3008 RET_LABEL164
:(void)0;
3013 var167
= nitc__model___core__Sys___enum_kind(var166
);
3016 { /* Inline kernel#Object#== (var163,var167) on <var163:MClassKind> */
3019 { /* Inline kernel#Object#is_same_instance (var163,var_other) on <var163:MClassKind> */
3020 var172
= var163
== var_other
;
3023 RET_LABEL171
:(void)0;
3028 RET_LABEL169
:(void)0;
3036 if (likely(varonce173
!=NULL
)) {
3037 var174
= varonce173
;
3039 var175
= "useless-bound";
3040 var176
= core__flat___NativeString___to_s_full(var175
, 13l, 13l);
3042 varonce173
= var174
;
3044 if (unlikely(varonce177
==NULL
)) {
3045 var178
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
3046 if (likely(varonce179
!=NULL
)) {
3047 var180
= varonce179
;
3049 var181
= "Warning: useless formal parameter type since `";
3050 var182
= core__flat___NativeString___to_s_full(var181
, 46l, 46l);
3052 varonce179
= var180
;
3054 ((struct instance_core__NativeArray
*)var178
)->values
[0]=var180
;
3055 if (likely(varonce183
!=NULL
)) {
3056 var184
= varonce183
;
3058 var185
= "` cannot have subclasses.";
3059 var186
= core__flat___NativeString___to_s_full(var185
, 25l, 25l);
3061 varonce183
= var184
;
3063 ((struct instance_core__NativeArray
*)var178
)->values
[2]=var184
;
3065 var178
= varonce177
;
3069 var187
= ((val
*(*)(val
* self
))(var_bound135
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_bound135
); /* to_s on <var_bound135:nullable MType(MClassType)>*/
3071 ((struct instance_core__NativeArray
*)var178
)->values
[1]=var187
;
3073 var188
= ((val
*(*)(val
* self
))(var178
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var178
); /* native_to_s on <var178:NativeArray[String]>*/
3075 varonce177
= var178
;
3077 nitc___nitc__ModelBuilder___warning(self
, var_nfdt
, var174
, var188
); /* Direct call modelbuilder_base#ModelBuilder#warning on <self:ModelBuilder>*/
3083 { /* Inline model#MClass#mclassdefs (var_mclass) on <var_mclass:nullable MClass(MClass)> */
3084 var191
= var_mclass
->attrs
[COLOR_nitc__model__MClass___mclassdefs
].val
; /* _mclassdefs on <var_mclass:nullable MClass(MClass)> */
3085 if (unlikely(var191
== NULL
)) {
3086 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdefs");
3087 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 477);
3091 RET_LABEL190
:(void)0;
3095 var192
= core___core__AbstractArrayRead___core__abstract_collection__Collection__is_empty(var189
);
3098 if (var_objectclass
== NULL
) {
3099 var193
= 1; /* is null */
3101 var193
= 0; /* arg is null but recv is not */
3104 { /* Inline kernel#Object#== (var_objectclass,((val*)NULL)) on <var_objectclass:nullable MClass> */
3105 var_other
= ((val
*)NULL
);
3107 { /* Inline kernel#Object#is_same_instance (var_objectclass,var_other) on <var_objectclass:nullable MClass(MClass)> */
3108 var198
= var_objectclass
== var_other
;
3111 RET_LABEL197
:(void)0;
3116 RET_LABEL195
:(void)0;
3121 if (unlikely(varonce199
==NULL
)) {
3122 var200
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
3123 if (likely(varonce201
!=NULL
)) {
3124 var202
= varonce201
;
3126 var203
= "Error: formal parameter type `";
3127 var204
= core__flat___NativeString___to_s_full(var203
, 30l, 30l);
3129 varonce201
= var202
;
3131 ((struct instance_core__NativeArray
*)var200
)->values
[0]=var202
;
3132 if (likely(varonce205
!=NULL
)) {
3133 var206
= varonce205
;
3135 var207
= "` unbounded but no `Object` class exists.";
3136 var208
= core__flat___NativeString___to_s_full(var207
, 41l, 41l);
3138 varonce205
= var206
;
3140 ((struct instance_core__NativeArray
*)var200
)->values
[2]=var206
;
3142 var200
= varonce199
;
3145 ((struct instance_core__NativeArray
*)var200
)->values
[1]=var_pname
;
3147 var209
= ((val
*(*)(val
* self
))(var200
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var200
); /* native_to_s on <var200:NativeArray[String]>*/
3149 varonce199
= var200
;
3151 nitc___nitc__ModelBuilder___error(self
, var_nfd
, var209
); /* Direct call modelbuilder_base#ModelBuilder#error on <self:ModelBuilder>*/
3157 { /* Inline model#MClass#mclass_type (var_objectclass) on <var_objectclass:nullable MClass(MClass)> */
3158 var212
= var_objectclass
->attrs
[COLOR_nitc__model__MClass___mclass_type
].val
; /* _mclass_type on <var_objectclass:nullable MClass(MClass)> */
3159 if (unlikely(var212
== NULL
)) {
3160 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass_type");
3161 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 507);
3165 RET_LABEL211
:(void)0;
3169 var213
= nitc___nitc__MType___as_nullable(var210
);
3171 var_bound214
= var213
;
3173 core___core__Array___core__abstract_collection__SimpleCollection__add(var_bounds
, var_bound214
); /* Direct call array#Array#add on <var_bounds:Array[MType]>*/
3176 { /* Inline modelize_class#AFormaldef#bound= (var_nfd,var_bound214) on <var_nfd:AFormaldef> */
3177 var_nfd
->attrs
[COLOR_nitc__modelize_class__AFormaldef___bound
].val
= var_bound214
; /* _bound on <var_nfd:AFormaldef> */
3178 RET_LABEL215
:(void)0;
3183 { /* Inline model#MClass#intro (var_mclass) on <var_mclass:nullable MClass(MClass)> */
3184 var218
= var_mclass
->attrs
[COLOR_nitc__model__MClass___intro
].val
; /* _intro on <var_mclass:nullable MClass(MClass)> */
3185 if (unlikely(var218
== NULL
)) {
3186 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _intro");
3187 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 483);
3191 RET_LABEL217
:(void)0;
3195 { /* Inline model#MClassDef#bound_mtype (var216) on <var216:MClassDef> */
3196 var221
= var216
->attrs
[COLOR_nitc__model__MClassDef___bound_mtype
].val
; /* _bound_mtype on <var216:MClassDef> */
3197 if (unlikely(var221
== NULL
)) {
3198 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _bound_mtype");
3199 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 579);
3203 RET_LABEL220
:(void)0;
3207 var222
= ((val
*(*)(val
* self
))(var219
->class->vft
[COLOR_nitc__model__MClassType__arguments
]))(var219
); /* arguments on <var219:MClassType>*/
3210 var223
= core___core__Array___core__abstract_collection__SequenceRead___91d_93d(var222
, var_i
);
3212 var_bound224
= var223
;
3214 core___core__Array___core__abstract_collection__SimpleCollection__add(var_bounds
, var_bound224
); /* Direct call array#Array#add on <var_bounds:Array[MType]>*/
3217 { /* Inline modelize_class#AFormaldef#bound= (var_nfd,var_bound224) on <var_nfd:AFormaldef> */
3218 var_nfd
->attrs
[COLOR_nitc__modelize_class__AFormaldef___bound
].val
= var_bound224
; /* _bound on <var_nfd:AFormaldef> */
3219 RET_LABEL225
:(void)0;
3224 BREAK_label68
: (void)0;
3226 var226
= core___core__Int___Discrete__successor(var_i
, 1l);
3230 BREAK_label
: (void)0;
3234 var227
= nitc___nitc__MClass___get_mtype(var_mclass
, var_bounds
);
3236 var_bound_mtype
= var227
;
3237 var228
= NEW_nitc__MClassDef(&type_nitc__MClassDef
);
3239 { /* Inline parser_nodes#ANode#location (var_nclassdef) on <var_nclassdef:AClassdef> */
3240 var231
= var_nclassdef
->attrs
[COLOR_nitc__parser_nodes__ANode___location
].val
; /* _location on <var_nclassdef:AClassdef> */
3241 if (unlikely(var231
== NULL
)) {
3242 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _location");
3243 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 24);
3247 RET_LABEL230
:(void)0;
3251 ((void(*)(val
* self
, val
* p0
))(var228
->class->vft
[COLOR_nitc__model__MClassDef__mmodule_61d
]))(var228
, var_mmodule
); /* mmodule= on <var228:MClassDef>*/
3254 ((void(*)(val
* self
, val
* p0
))(var228
->class->vft
[COLOR_nitc__model__MClassDef__bound_mtype_61d
]))(var228
, var_bound_mtype
); /* bound_mtype= on <var228:MClassDef>*/
3257 ((void(*)(val
* self
, val
* p0
))(var228
->class->vft
[COLOR_nitc__model__MClassDef__location_61d
]))(var228
, var229
); /* location= on <var228:MClassDef>*/
3260 ((void(*)(val
* self
))(var228
->class->vft
[COLOR_core__kernel__Object__init
]))(var228
); /* init on <var228:MClassDef>*/
3262 var_mclassdef
= var228
;
3264 { /* Inline modelize_class#AClassdef#mclassdef= (var_nclassdef,var_mclassdef) on <var_nclassdef:AClassdef> */
3265 var_nclassdef
->attrs
[COLOR_nitc__modelize_class__AClassdef___mclassdef
].val
= var_mclassdef
; /* _mclassdef on <var_nclassdef:AClassdef> */
3266 RET_LABEL232
:(void)0;
3270 { /* Inline modelize_class#ModelBuilder#mclassdef2nclassdef (self) on <self:ModelBuilder> */
3271 var235
= self
->attrs
[COLOR_nitc__modelize_class__ModelBuilder___mclassdef2nclassdef
].val
; /* _mclassdef2nclassdef on <self:ModelBuilder> */
3272 if (unlikely(var235
== NULL
)) {
3273 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef2nclassdef");
3274 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelize_class
, 435);
3278 RET_LABEL234
:(void)0;
3282 core___core__HashMap___core__abstract_collection__Map___91d_93d_61d(var233
, var_mclassdef
, var_nclassdef
); /* Direct call hash_collection#HashMap#[]= on <var233:HashMap[MClassDef, AClassdef]>*/
3284 /* <var_nclassdef:AClassdef> isa AStdClassdef */
3285 cltype237
= type_nitc__AStdClassdef
.color
;
3286 idtype238
= type_nitc__AStdClassdef
.id
;
3287 if(cltype237
>= var_nclassdef
->type
->table_size
) {
3290 var236
= var_nclassdef
->type
->type_table
[cltype237
] == idtype238
;
3294 { /* Inline parser_nodes#ADefinition#n_doc (var_nclassdef) on <var_nclassdef:AClassdef(AStdClassdef)> */
3295 var241
= var_nclassdef
->attrs
[COLOR_nitc__parser_nodes__ADefinition___n_doc
].val
; /* _n_doc on <var_nclassdef:AClassdef(AStdClassdef)> */
3297 RET_LABEL240
:(void)0;
3301 if (var_ndoc
== NULL
) {
3302 var242
= 0; /* is null */
3304 var242
= 1; /* arg is null and recv is not */
3307 { /* Inline kernel#Object#!= (var_ndoc,((val*)NULL)) on <var_ndoc:nullable ADoc> */
3308 var_other22
= ((val
*)NULL
);
3310 var245
= ((short int(*)(val
* self
, val
* p0
))(var_ndoc
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_ndoc
, var_other22
); /* == on <var_ndoc:nullable ADoc(ADoc)>*/
3315 RET_LABEL244
:(void)0;
3321 var247
= nitc__modelbuilder_base___ADoc___to_mdoc(var_ndoc
);
3325 { /* Inline mdoc#MEntity#mdoc= (var_mclassdef,var_mdoc) on <var_mclassdef:MClassDef> */
3326 var_mclassdef
->attrs
[COLOR_nitc__mdoc__MEntity___mdoc
].val
= var_mdoc
; /* _mdoc on <var_mclassdef:MClassDef> */
3327 RET_LABEL248
:(void)0;
3331 { /* Inline mdoc#MDoc#original_mentity= (var_mdoc,var_mclassdef) on <var_mdoc:MDoc> */
3332 var_mdoc
->attrs
[COLOR_nitc__mdoc__MDoc___original_mentity
].val
= var_mclassdef
; /* _original_mentity on <var_mdoc:MDoc> */
3333 RET_LABEL249
:(void)0;
3338 var251
= nitc___nitc__MClassDef___is_intro(var_mclassdef
);
3343 { /* Inline model#MClass#visibility (var_mclass) on <var_mclass:nullable MClass(MClass)> */
3344 var255
= var_mclass
->attrs
[COLOR_nitc__model__MClass___visibility
].val
; /* _visibility on <var_mclass:nullable MClass(MClass)> */
3345 if (unlikely(var255
== NULL
)) {
3346 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _visibility");
3347 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 463);
3351 RET_LABEL254
:(void)0;
3356 var257
= nitc__model_base___core__Sys___public_visibility(var256
);
3359 var258
= core___core__Comparable____62d_61d(var253
, var257
);
3366 if (likely(varonce259
!=NULL
)) {
3367 var260
= varonce259
;
3369 var261
= "missing-doc";
3370 var262
= core__flat___NativeString___to_s_full(var261
, 11l, 11l);
3372 varonce259
= var260
;
3374 if (unlikely(varonce263
==NULL
)) {
3375 var264
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
3376 if (likely(varonce265
!=NULL
)) {
3377 var266
= varonce265
;
3379 var267
= "Documentation warning: Undocumented public class `";
3380 var268
= core__flat___NativeString___to_s_full(var267
, 50l, 50l);
3382 varonce265
= var266
;
3384 ((struct instance_core__NativeArray
*)var264
)->values
[0]=var266
;
3385 if (likely(varonce269
!=NULL
)) {
3386 var270
= varonce269
;
3389 var272
= core__flat___NativeString___to_s_full(var271
, 1l, 1l);
3391 varonce269
= var270
;
3393 ((struct instance_core__NativeArray
*)var264
)->values
[2]=var270
;
3395 var264
= varonce263
;
3399 var273
= ((val
*(*)(val
* self
))(var_mclass
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_mclass
); /* to_s on <var_mclass:nullable MClass(MClass)>*/
3401 ((struct instance_core__NativeArray
*)var264
)->values
[1]=var273
;
3403 var274
= ((val
*(*)(val
* self
))(var264
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var264
); /* native_to_s on <var264:NativeArray[String]>*/
3405 varonce263
= var264
;
3407 nitc___nitc__ModelBuilder___advice(self
, var_nclassdef
, var260
, var274
); /* Direct call modelbuilder_base#ModelBuilder#advice on <self:ModelBuilder>*/
3415 var275
= nitc___nitc__MClassDef___is_intro(var_mclassdef
);
3419 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (self) on <self:ModelBuilder> */
3420 var278
= self
->attrs
[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <self:ModelBuilder> */
3421 if (unlikely(var278
== NULL
)) {
3422 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
3423 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelbuilder_base
, 47);
3427 RET_LABEL277
:(void)0;
3430 if (unlikely(varonce279
==NULL
)) {
3431 var280
= NEW_core__NativeArray(5l, &type_core__NativeArray__core__String
);
3432 if (likely(varonce281
!=NULL
)) {
3433 var282
= varonce281
;
3435 var283
= " introduces new ";
3436 var284
= core__flat___NativeString___to_s_full(var283
, 16l, 16l);
3438 varonce281
= var282
;
3440 ((struct instance_core__NativeArray
*)var280
)->values
[1]=var282
;
3441 if (likely(varonce285
!=NULL
)) {
3442 var286
= varonce285
;
3445 var288
= core__flat___NativeString___to_s_full(var287
, 1l, 1l);
3447 varonce285
= var286
;
3449 ((struct instance_core__NativeArray
*)var280
)->values
[3]=var286
;
3451 var280
= varonce279
;
3455 var289
= ((val
*(*)(val
* self
))(var_mclassdef
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_mclassdef
); /* to_s on <var_mclassdef:MClassDef>*/
3457 ((struct instance_core__NativeArray
*)var280
)->values
[0]=var289
;
3459 { /* Inline model#MClass#kind (var_mclass) on <var_mclass:nullable MClass(MClass)> */
3460 var292
= var_mclass
->attrs
[COLOR_nitc__model__MClass___kind
].val
; /* _kind on <var_mclass:nullable MClass(MClass)> */
3461 if (unlikely(var292
== NULL
)) {
3462 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _kind");
3463 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 459);
3467 RET_LABEL291
:(void)0;
3471 var293
= ((val
*(*)(val
* self
))(var290
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var290
); /* to_s on <var290:MClassKind>*/
3473 ((struct instance_core__NativeArray
*)var280
)->values
[2]=var293
;
3475 var294
= nitc___nitc__MClass___nitc__model_base__MEntity__full_name(var_mclass
);
3477 ((struct instance_core__NativeArray
*)var280
)->values
[4]=var294
;
3479 var295
= ((val
*(*)(val
* self
))(var280
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var280
); /* native_to_s on <var280:NativeArray[String]>*/
3481 varonce279
= var280
;
3483 nitc___nitc__ToolContext___info(var276
, var295
, 3l); /* Direct call toolcontext#ToolContext#info on <var276:ToolContext>*/
3487 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (self) on <self:ModelBuilder> */
3488 var298
= self
->attrs
[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <self:ModelBuilder> */
3489 if (unlikely(var298
== NULL
)) {
3490 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
3491 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelbuilder_base
, 47);
3495 RET_LABEL297
:(void)0;
3498 if (unlikely(varonce299
==NULL
)) {
3499 var300
= NEW_core__NativeArray(5l, &type_core__NativeArray__core__String
);
3500 if (likely(varonce301
!=NULL
)) {
3501 var302
= varonce301
;
3503 var303
= " refine ";
3504 var304
= core__flat___NativeString___to_s_full(var303
, 8l, 8l);
3506 varonce301
= var302
;
3508 ((struct instance_core__NativeArray
*)var300
)->values
[1]=var302
;
3509 if (likely(varonce305
!=NULL
)) {
3510 var306
= varonce305
;
3513 var308
= core__flat___NativeString___to_s_full(var307
, 1l, 1l);
3515 varonce305
= var306
;
3517 ((struct instance_core__NativeArray
*)var300
)->values
[3]=var306
;
3519 var300
= varonce299
;
3523 var309
= ((val
*(*)(val
* self
))(var_mclassdef
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_mclassdef
); /* to_s on <var_mclassdef:MClassDef>*/
3525 ((struct instance_core__NativeArray
*)var300
)->values
[0]=var309
;
3527 { /* Inline model#MClass#kind (var_mclass) on <var_mclass:nullable MClass(MClass)> */
3528 var312
= var_mclass
->attrs
[COLOR_nitc__model__MClass___kind
].val
; /* _kind on <var_mclass:nullable MClass(MClass)> */
3529 if (unlikely(var312
== NULL
)) {
3530 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _kind");
3531 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 459);
3535 RET_LABEL311
:(void)0;
3539 var313
= ((val
*(*)(val
* self
))(var310
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var310
); /* to_s on <var310:MClassKind>*/
3541 ((struct instance_core__NativeArray
*)var300
)->values
[2]=var313
;
3543 var314
= nitc___nitc__MClass___nitc__model_base__MEntity__full_name(var_mclass
);
3545 ((struct instance_core__NativeArray
*)var300
)->values
[4]=var314
;
3547 var315
= ((val
*(*)(val
* self
))(var300
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var300
); /* native_to_s on <var300:NativeArray[String]>*/
3549 varonce299
= var300
;
3551 nitc___nitc__ToolContext___info(var296
, var315
, 3l); /* Direct call toolcontext#ToolContext#info on <var296:ToolContext>*/
3556 /* method modelize_class#ModelBuilder#collect_a_mclassdef_inheritance for (self: ModelBuilder, AModule, AClassdef) */
3557 void nitc__modelize_class___ModelBuilder___collect_a_mclassdef_inheritance(val
* self
, val
* p0
, val
* p1
) {
3558 val
* var_nmodule
/* var nmodule: AModule */;
3559 val
* var_nclassdef
/* var nclassdef: AClassdef */;
3560 val
* var
/* : nullable MModule */;
3561 val
* var2
/* : nullable MModule */;
3562 val
* var_mmodule
/* var mmodule: nullable MModule */;
3563 short int var3
/* : Bool */;
3564 short int var4
/* : Bool */;
3565 val
* var_other
/* var other: nullable Object */;
3566 short int var6
/* : Bool */;
3567 short int var8
/* : Bool */;
3568 static val
* varonce
;
3569 val
* var9
/* : String */;
3570 char* var10
/* : NativeString */;
3571 val
* var11
/* : String */;
3572 val
* var12
/* : nullable MClass */;
3573 val
* var_objectclass
/* var objectclass: nullable MClass */;
3574 static val
* varonce13
;
3575 val
* var14
/* : String */;
3576 char* var15
/* : NativeString */;
3577 val
* var16
/* : String */;
3578 val
* var17
/* : nullable MClass */;
3579 val
* var_pointerclass
/* var pointerclass: nullable MClass */;
3580 val
* var18
/* : nullable MClass */;
3581 val
* var20
/* : nullable MClass */;
3582 val
* var_mclass
/* var mclass: nullable MClass */;
3583 short int var21
/* : Bool */;
3584 short int var22
/* : Bool */;
3585 short int var24
/* : Bool */;
3586 short int var26
/* : Bool */;
3587 val
* var27
/* : nullable MClassDef */;
3588 val
* var29
/* : nullable MClassDef */;
3589 val
* var_mclassdef
/* var mclassdef: nullable MClassDef */;
3590 short int var30
/* : Bool */;
3591 short int var31
/* : Bool */;
3592 short int var33
/* : Bool */;
3593 short int var35
/* : Bool */;
3594 short int var_specobject
/* var specobject: Bool */;
3595 short int var_specpointer
/* var specpointer: Bool */;
3596 val
* var36
/* : Array[MClassType] */;
3597 val
* var_supertypes
/* var supertypes: Array[MClassType] */;
3598 short int var37
/* : Bool */;
3601 val
* var38
/* : Array[ASuperPropdef] */;
3602 val
* var_
/* var : Array[ASuperPropdef] */;
3603 val
* var39
/* : IndexedIterator[nullable Object] */;
3604 val
* var_40
/* var : IndexedIterator[ASuperPropdef] */;
3605 short int var41
/* : Bool */;
3606 val
* var42
/* : nullable Object */;
3607 val
* var_nsc
/* var nsc: ASuperPropdef */;
3608 val
* var43
/* : AType */;
3609 val
* var45
/* : AType */;
3610 val
* var_ntype
/* var ntype: AType */;
3611 val
* var46
/* : nullable MType */;
3612 val
* var_mtype
/* var mtype: nullable MType */;
3613 short int var47
/* : Bool */;
3614 short int var48
/* : Bool */;
3615 short int var50
/* : Bool */;
3616 short int var52
/* : Bool */;
3617 short int var54
/* : Bool */;
3620 short int var57
/* : Bool */;
3621 static val
* varonce58
;
3622 val
* var59
/* : String */;
3623 char* var60
/* : NativeString */;
3624 val
* var61
/* : String */;
3625 val
* var62
/* : MClassKind */;
3626 val
* var64
/* : MClassKind */;
3627 val
* var65
/* : MClass */;
3628 val
* var67
/* : MClass */;
3629 val
* var68
/* : MClassKind */;
3630 val
* var70
/* : MClassKind */;
3631 short int var71
/* : Bool */;
3632 short int var72
/* : Bool */;
3633 val
* var74
/* : NativeArray[String] */;
3634 static val
* varonce73
;
3635 static val
* varonce75
;
3636 val
* var76
/* : String */;
3637 char* var77
/* : NativeString */;
3638 val
* var78
/* : String */;
3639 static val
* varonce79
;
3640 val
* var80
/* : String */;
3641 char* var81
/* : NativeString */;
3642 val
* var82
/* : String */;
3643 static val
* varonce83
;
3644 val
* var84
/* : String */;
3645 char* var85
/* : NativeString */;
3646 val
* var86
/* : String */;
3647 static val
* varonce87
;
3648 val
* var88
/* : String */;
3649 char* var89
/* : NativeString */;
3650 val
* var90
/* : String */;
3651 static val
* varonce91
;
3652 val
* var92
/* : String */;
3653 char* var93
/* : NativeString */;
3654 val
* var94
/* : String */;
3655 val
* var95
/* : MClassKind */;
3656 val
* var97
/* : MClassKind */;
3657 val
* var98
/* : String */;
3658 val
* var99
/* : String */;
3659 val
* var100
/* : MClass */;
3660 val
* var102
/* : MClass */;
3661 val
* var103
/* : MClassKind */;
3662 val
* var105
/* : MClassKind */;
3663 val
* var106
/* : String */;
3664 val
* var107
/* : MClass */;
3665 val
* var109
/* : MClass */;
3666 val
* var110
/* : String */;
3667 val
* var111
/* : String */;
3668 val
* var112
/* : MClass */;
3669 val
* var114
/* : MClass */;
3670 val
* var115
/* : MClassKind */;
3671 val
* var117
/* : MClassKind */;
3672 val
* var118
/* : Sys */;
3673 val
* var119
/* : MClassKind */;
3674 short int var120
/* : Bool */;
3675 short int var122
/* : Bool */;
3676 short int var124
/* : Bool */;
3677 short int var125
/* : Bool */;
3678 short int var126
/* : Bool */;
3679 short int var_127
/* var : Bool */;
3680 short int var128
/* : Bool */;
3681 short int var129
/* : Bool */;
3682 val
* var_other131
/* var other: nullable Object */;
3683 short int var132
/* : Bool */;
3684 short int var133
/* : Bool */;
3685 short int var134
/* : Bool */;
3686 val
* var135
/* : MClassKind */;
3687 val
* var137
/* : MClassKind */;
3688 val
* var138
/* : Sys */;
3689 val
* var139
/* : MClassKind */;
3690 short int var140
/* : Bool */;
3691 short int var142
/* : Bool */;
3692 short int var144
/* : Bool */;
3693 short int var_145
/* var : Bool */;
3694 val
* var146
/* : String */;
3695 val
* var148
/* : String */;
3696 static val
* varonce149
;
3697 val
* var150
/* : String */;
3698 char* var151
/* : NativeString */;
3699 val
* var152
/* : String */;
3700 short int var153
/* : Bool */;
3701 short int var155
/* : Bool */;
3702 short int var156
/* : Bool */;
3703 val
* var157
/* : MClassType */;
3704 val
* var159
/* : MClassType */;
3705 short int var160
/* : Bool */;
3706 short int var_161
/* var : Bool */;
3707 val
* var162
/* : String */;
3708 val
* var164
/* : String */;
3709 static val
* varonce165
;
3710 val
* var166
/* : String */;
3711 char* var167
/* : NativeString */;
3712 val
* var168
/* : String */;
3713 short int var169
/* : Bool */;
3714 short int var171
/* : Bool */;
3715 short int var172
/* : Bool */;
3716 val
* var173
/* : MClassType */;
3717 val
* var175
/* : MClassType */;
3718 short int var176
/* : Bool */;
3719 short int var177
/* : Bool */;
3720 val
* var178
/* : ToolContext */;
3721 val
* var180
/* : ToolContext */;
3722 val
* var182
/* : NativeArray[String] */;
3723 static val
* varonce181
;
3724 static val
* varonce183
;
3725 val
* var184
/* : String */;
3726 char* var185
/* : NativeString */;
3727 val
* var186
/* : String */;
3728 val
* var187
/* : String */;
3729 static val
* varonce188
;
3730 val
* var189
/* : String */;
3731 char* var190
/* : NativeString */;
3732 val
* var191
/* : String */;
3733 val
* var192
/* : String */;
3734 val
* var193
/* : String */;
3738 { /* Inline loader#AModule#mmodule (var_nmodule) on <var_nmodule:AModule> */
3739 var2
= var_nmodule
->attrs
[COLOR_nitc__loader__AModule___mmodule
].val
; /* _mmodule on <var_nmodule:AModule> */
3745 if (var_mmodule
== NULL
) {
3746 var3
= 1; /* is null */
3748 var3
= 0; /* arg is null but recv is not */
3751 { /* Inline kernel#Object#== (var_mmodule,((val*)NULL)) on <var_mmodule:nullable MModule> */
3752 var_other
= ((val
*)NULL
);
3754 { /* Inline kernel#Object#is_same_instance (var_mmodule,var_other) on <var_mmodule:nullable MModule(MModule)> */
3755 var8
= var_mmodule
== var_other
;
3771 if (likely(varonce
!=NULL
)) {
3775 var11
= core__flat___NativeString___to_s_full(var10
, 6l, 6l);
3780 var12
= nitc___nitc__ModelBuilder___try_get_mclass_by_name(self
, var_nmodule
, var_mmodule
, var9
);
3782 var_objectclass
= var12
;
3783 if (likely(varonce13
!=NULL
)) {
3787 var16
= core__flat___NativeString___to_s_full(var15
, 7l, 7l);
3792 var17
= nitc___nitc__ModelBuilder___try_get_mclass_by_name(self
, var_nmodule
, var_mmodule
, var14
);
3794 var_pointerclass
= var17
;
3796 { /* Inline modelize_class#AClassdef#mclass (var_nclassdef) on <var_nclassdef:AClassdef> */
3797 var20
= var_nclassdef
->attrs
[COLOR_nitc__modelize_class__AClassdef___mclass
].val
; /* _mclass on <var_nclassdef:AClassdef> */
3799 RET_LABEL19
:(void)0;
3803 if (var_mclass
== NULL
) {
3804 var21
= 1; /* is null */
3806 var21
= 0; /* arg is null but recv is not */
3809 { /* Inline kernel#Object#== (var_mclass,((val*)NULL)) on <var_mclass:nullable MClass> */
3810 var_other
= ((val
*)NULL
);
3812 { /* Inline kernel#Object#is_same_instance (var_mclass,var_other) on <var_mclass:nullable MClass(MClass)> */
3813 var26
= var_mclass
== var_other
;
3816 RET_LABEL25
:(void)0;
3821 RET_LABEL23
:(void)0;
3830 { /* Inline modelize_class#AClassdef#mclassdef (var_nclassdef) on <var_nclassdef:AClassdef> */
3831 var29
= var_nclassdef
->attrs
[COLOR_nitc__modelize_class__AClassdef___mclassdef
].val
; /* _mclassdef on <var_nclassdef:AClassdef> */
3833 RET_LABEL28
:(void)0;
3836 var_mclassdef
= var27
;
3837 if (var_mclassdef
== NULL
) {
3838 var30
= 1; /* is null */
3840 var30
= 0; /* arg is null but recv is not */
3843 { /* Inline kernel#Object#== (var_mclassdef,((val*)NULL)) on <var_mclassdef:nullable MClassDef> */
3844 var_other
= ((val
*)NULL
);
3846 { /* Inline kernel#Object#is_same_instance (var_mclassdef,var_other) on <var_mclassdef:nullable MClassDef(MClassDef)> */
3847 var35
= var_mclassdef
== var_other
;
3850 RET_LABEL34
:(void)0;
3855 RET_LABEL32
:(void)0;
3864 var_specpointer
= 1;
3865 var36
= NEW_core__Array(&type_core__Array__nitc__MClassType
);
3867 core___core__Array___core__kernel__Object__init(var36
); /* Direct call array#Array#init on <var36:Array[MClassType]>*/
3869 var_supertypes
= var36
;
3870 /* <var_nclassdef:AClassdef> isa AStdClassdef */
3871 cltype
= type_nitc__AStdClassdef
.color
;
3872 idtype
= type_nitc__AStdClassdef
.id
;
3873 if(cltype
>= var_nclassdef
->type
->table_size
) {
3876 var37
= var_nclassdef
->type
->type_table
[cltype
] == idtype
;
3880 var38
= nitc___nitc__AStdClassdef___n_superclasses(var_nclassdef
);
3884 var39
= core___core__AbstractArrayRead___core__abstract_collection__Collection__iterator(var_
);
3889 var41
= ((short int(*)(val
* self
))((((long)var_40
&3)?class_info
[((long)var_40
&3)]:var_40
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_40
); /* is_ok on <var_40:IndexedIterator[ASuperPropdef]>*/
3896 var42
= ((val
*(*)(val
* self
))((((long)var_40
&3)?class_info
[((long)var_40
&3)]:var_40
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_40
); /* item on <var_40:IndexedIterator[ASuperPropdef]>*/
3901 { /* Inline parser_nodes#ASuperPropdef#n_type (var_nsc) on <var_nsc:ASuperPropdef> */
3902 var45
= var_nsc
->attrs
[COLOR_nitc__parser_nodes__ASuperPropdef___n_type
].val
; /* _n_type on <var_nsc:ASuperPropdef> */
3903 if (unlikely(var45
== NULL
)) {
3904 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_type");
3905 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1369);
3909 RET_LABEL44
:(void)0;
3914 var46
= nitc___nitc__ModelBuilder___resolve_mtype_unchecked(self
, var_mmodule
, var_mclassdef
, var_ntype
, 0);
3917 if (var_mtype
== NULL
) {
3918 var47
= 1; /* is null */
3920 var47
= 0; /* arg is null but recv is not */
3923 { /* Inline kernel#Object#== (var_mtype,((val*)NULL)) on <var_mtype:nullable MType> */
3924 var_other
= ((val
*)NULL
);
3926 { /* Inline kernel#Object#is_same_instance (var_mtype,var_other) on <var_mtype:nullable MType(MType)> */
3927 var52
= var_mtype
== var_other
;
3930 RET_LABEL51
:(void)0;
3935 RET_LABEL49
:(void)0;
3943 /* <var_mtype:nullable MType(MType)> isa MClassType */
3944 cltype55
= type_nitc__MClassType
.color
;
3945 idtype56
= type_nitc__MClassType
.id
;
3946 if(cltype55
>= var_mtype
->type
->table_size
) {
3949 var54
= var_mtype
->type
->type_table
[cltype55
] == idtype56
;
3953 if (likely(varonce58
!=NULL
)) {
3956 var60
= "Error: supertypes cannot be a formal type.";
3957 var61
= core__flat___NativeString___to_s_full(var60
, 42l, 42l);
3962 nitc___nitc__ModelBuilder___error(self
, var_ntype
, var59
); /* Direct call modelbuilder_base#ModelBuilder#error on <self:ModelBuilder>*/
3968 { /* Inline model#MClass#kind (var_mclass) on <var_mclass:nullable MClass(MClass)> */
3969 var64
= var_mclass
->attrs
[COLOR_nitc__model__MClass___kind
].val
; /* _kind on <var_mclass:nullable MClass(MClass)> */
3970 if (unlikely(var64
== NULL
)) {
3971 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _kind");
3972 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 459);
3976 RET_LABEL63
:(void)0;
3980 { /* Inline model#MClassType#mclass (var_mtype) on <var_mtype:nullable MType(MClassType)> */
3981 var67
= var_mtype
->attrs
[COLOR_nitc__model__MClassType___mclass
].val
; /* _mclass on <var_mtype:nullable MType(MClassType)> */
3982 if (unlikely(var67
== NULL
)) {
3983 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
3984 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1163);
3988 RET_LABEL66
:(void)0;
3992 { /* Inline model#MClass#kind (var65) on <var65:MClass> */
3993 var70
= var65
->attrs
[COLOR_nitc__model__MClass___kind
].val
; /* _kind on <var65:MClass> */
3994 if (unlikely(var70
== NULL
)) {
3995 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _kind");
3996 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 459);
4000 RET_LABEL69
:(void)0;
4004 var71
= nitc___nitc__MClassKind___can_specialize(var62
, var68
);
4008 if (unlikely(varonce73
==NULL
)) {
4009 var74
= NEW_core__NativeArray(9l, &type_core__NativeArray__core__String
);
4010 if (likely(varonce75
!=NULL
)) {
4014 var78
= core__flat___NativeString___to_s_full(var77
, 7l, 7l);
4018 ((struct instance_core__NativeArray
*)var74
)->values
[0]=var76
;
4019 if (likely(varonce79
!=NULL
)) {
4023 var82
= core__flat___NativeString___to_s_full(var81
, 2l, 2l);
4027 ((struct instance_core__NativeArray
*)var74
)->values
[2]=var80
;
4028 if (likely(varonce83
!=NULL
)) {
4031 var85
= "` cannot specialize ";
4032 var86
= core__flat___NativeString___to_s_full(var85
, 20l, 20l);
4036 ((struct instance_core__NativeArray
*)var74
)->values
[4]=var84
;
4037 if (likely(varonce87
!=NULL
)) {
4041 var90
= core__flat___NativeString___to_s_full(var89
, 2l, 2l);
4045 ((struct instance_core__NativeArray
*)var74
)->values
[6]=var88
;
4046 if (likely(varonce91
!=NULL
)) {
4050 var94
= core__flat___NativeString___to_s_full(var93
, 2l, 2l);
4054 ((struct instance_core__NativeArray
*)var74
)->values
[8]=var92
;
4060 { /* Inline model#MClass#kind (var_mclass) on <var_mclass:nullable MClass(MClass)> */
4061 var97
= var_mclass
->attrs
[COLOR_nitc__model__MClass___kind
].val
; /* _kind on <var_mclass:nullable MClass(MClass)> */
4062 if (unlikely(var97
== NULL
)) {
4063 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _kind");
4064 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 459);
4068 RET_LABEL96
:(void)0;
4072 var98
= ((val
*(*)(val
* self
))(var95
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var95
); /* to_s on <var95:MClassKind>*/
4074 ((struct instance_core__NativeArray
*)var74
)->values
[1]=var98
;
4076 var99
= ((val
*(*)(val
* self
))(var_mclass
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_mclass
); /* to_s on <var_mclass:nullable MClass(MClass)>*/
4078 ((struct instance_core__NativeArray
*)var74
)->values
[3]=var99
;
4080 { /* Inline model#MClassType#mclass (var_mtype) on <var_mtype:nullable MType(MClassType)> */
4081 var102
= var_mtype
->attrs
[COLOR_nitc__model__MClassType___mclass
].val
; /* _mclass on <var_mtype:nullable MType(MClassType)> */
4082 if (unlikely(var102
== NULL
)) {
4083 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
4084 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1163);
4088 RET_LABEL101
:(void)0;
4092 { /* Inline model#MClass#kind (var100) on <var100:MClass> */
4093 var105
= var100
->attrs
[COLOR_nitc__model__MClass___kind
].val
; /* _kind on <var100:MClass> */
4094 if (unlikely(var105
== NULL
)) {
4095 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _kind");
4096 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 459);
4100 RET_LABEL104
:(void)0;
4104 var106
= ((val
*(*)(val
* self
))(var103
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var103
); /* to_s on <var103:MClassKind>*/
4106 ((struct instance_core__NativeArray
*)var74
)->values
[5]=var106
;
4108 { /* Inline model#MClassType#mclass (var_mtype) on <var_mtype:nullable MType(MClassType)> */
4109 var109
= var_mtype
->attrs
[COLOR_nitc__model__MClassType___mclass
].val
; /* _mclass on <var_mtype:nullable MType(MClassType)> */
4110 if (unlikely(var109
== NULL
)) {
4111 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
4112 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1163);
4116 RET_LABEL108
:(void)0;
4120 var110
= ((val
*(*)(val
* self
))(var107
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var107
); /* to_s on <var107:MClass>*/
4122 ((struct instance_core__NativeArray
*)var74
)->values
[7]=var110
;
4124 var111
= ((val
*(*)(val
* self
))(var74
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var74
); /* native_to_s on <var74:NativeArray[String]>*/
4128 nitc___nitc__ModelBuilder___error(self
, var_ntype
, var111
); /* Direct call modelbuilder_base#ModelBuilder#error on <self:ModelBuilder>*/
4133 core___core__Array___core__abstract_collection__SimpleCollection__add(var_supertypes
, var_mtype
); /* Direct call array#Array#add on <var_supertypes:Array[MClassType]>*/
4136 { /* Inline model#MClassType#mclass (var_mtype) on <var_mtype:nullable MType(MClassType)> */
4137 var114
= var_mtype
->attrs
[COLOR_nitc__model__MClassType___mclass
].val
; /* _mclass on <var_mtype:nullable MType(MClassType)> */
4138 if (unlikely(var114
== NULL
)) {
4139 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
4140 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1163);
4144 RET_LABEL113
:(void)0;
4148 { /* Inline model#MClass#kind (var112) on <var112:MClass> */
4149 var117
= var112
->attrs
[COLOR_nitc__model__MClass___kind
].val
; /* _kind on <var112:MClass> */
4150 if (unlikely(var117
== NULL
)) {
4151 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _kind");
4152 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 459);
4156 RET_LABEL116
:(void)0;
4161 var119
= nitc__model___core__Sys___extern_kind(var118
);
4164 { /* Inline kernel#Object#== (var115,var119) on <var115:MClassKind> */
4167 { /* Inline kernel#Object#is_same_instance (var115,var_other) on <var115:MClassKind> */
4168 var124
= var115
== var_other
;
4171 RET_LABEL123
:(void)0;
4176 RET_LABEL121
:(void)0;
4180 var_specpointer
= 0;
4183 BREAK_label53
: (void)0;
4185 ((void(*)(val
* self
))((((long)var_40
&3)?class_info
[((long)var_40
&3)]:var_40
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_40
); /* next on <var_40:IndexedIterator[ASuperPropdef]>*/
4188 BREAK_label
: (void)0;
4190 ((void(*)(val
* self
))((((long)var_40
&3)?class_info
[((long)var_40
&3)]:var_40
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_40
); /* finish on <var_40:IndexedIterator[ASuperPropdef]>*/
4195 var126
= nitc___nitc__MClassDef___is_intro(var_mclassdef
);
4199 if (var_objectclass
== NULL
) {
4200 var128
= 0; /* is null */
4202 var128
= 1; /* arg is null and recv is not */
4205 { /* Inline kernel#Object#!= (var_objectclass,((val*)NULL)) on <var_objectclass:nullable MClass> */
4206 var_other131
= ((val
*)NULL
);
4208 var132
= ((short int(*)(val
* self
, val
* p0
))(var_objectclass
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_objectclass
, var_other131
); /* == on <var_objectclass:nullable MClass(MClass)>*/
4213 RET_LABEL130
:(void)0;
4223 { /* Inline model#MClass#kind (var_mclass) on <var_mclass:nullable MClass(MClass)> */
4224 var137
= var_mclass
->attrs
[COLOR_nitc__model__MClass___kind
].val
; /* _kind on <var_mclass:nullable MClass(MClass)> */
4225 if (unlikely(var137
== NULL
)) {
4226 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _kind");
4227 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 459);
4231 RET_LABEL136
:(void)0;
4236 var139
= nitc__model___core__Sys___extern_kind(var138
);
4239 { /* Inline kernel#Object#== (var135,var139) on <var135:MClassKind> */
4242 { /* Inline kernel#Object#is_same_instance (var135,var_other) on <var135:MClassKind> */
4243 var144
= var135
== var_other
;
4246 RET_LABEL143
:(void)0;
4251 RET_LABEL141
:(void)0;
4257 { /* Inline model#MClass#name (var_mclass) on <var_mclass:nullable MClass(MClass)> */
4258 var148
= var_mclass
->attrs
[COLOR_nitc__model__MClass___name
].val
; /* _name on <var_mclass:nullable MClass(MClass)> */
4259 if (unlikely(var148
== NULL
)) {
4260 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _name");
4261 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 385);
4265 RET_LABEL147
:(void)0;
4268 if (likely(varonce149
!=NULL
)) {
4269 var150
= varonce149
;
4272 var152
= core__flat___NativeString___to_s_full(var151
, 7l, 7l);
4274 varonce149
= var150
;
4277 { /* Inline kernel#Object#!= (var146,var150) on <var146:String> */
4278 var_other131
= var150
;
4280 var155
= ((short int(*)(val
* self
, val
* p0
))(var146
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var146
, var_other131
); /* == on <var146:String>*/
4285 RET_LABEL154
:(void)0;
4293 if (var_specpointer
){
4294 if (var_pointerclass
== NULL
) {
4295 PRINT_ERROR("Runtime error: %s", "Receiver is null");
4296 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelize_class
, 272);
4299 { /* Inline model#MClass#mclass_type (var_pointerclass) on <var_pointerclass:nullable MClass> */
4300 if (unlikely(var_pointerclass
== NULL
)) {
4301 PRINT_ERROR("Runtime error: %s", "Receiver is null");
4302 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 507);
4305 var159
= var_pointerclass
->attrs
[COLOR_nitc__model__MClass___mclass_type
].val
; /* _mclass_type on <var_pointerclass:nullable MClass> */
4306 if (unlikely(var159
== NULL
)) {
4307 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass_type");
4308 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 507);
4312 RET_LABEL158
:(void)0;
4316 core___core__Array___core__abstract_collection__SimpleCollection__add(var_supertypes
, var157
); /* Direct call array#Array#add on <var_supertypes:Array[MClassType]>*/
4321 var_161
= var_specobject
;
4322 if (var_specobject
){
4324 { /* Inline model#MClass#name (var_mclass) on <var_mclass:nullable MClass(MClass)> */
4325 var164
= var_mclass
->attrs
[COLOR_nitc__model__MClass___name
].val
; /* _name on <var_mclass:nullable MClass(MClass)> */
4326 if (unlikely(var164
== NULL
)) {
4327 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _name");
4328 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 385);
4332 RET_LABEL163
:(void)0;
4335 if (likely(varonce165
!=NULL
)) {
4336 var166
= varonce165
;
4339 var168
= core__flat___NativeString___to_s_full(var167
, 6l, 6l);
4341 varonce165
= var166
;
4344 { /* Inline kernel#Object#!= (var162,var166) on <var162:String> */
4345 var_other131
= var166
;
4347 var171
= ((short int(*)(val
* self
, val
* p0
))(var162
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var162
, var_other131
); /* == on <var162:String>*/
4352 RET_LABEL170
:(void)0;
4361 { /* Inline model#MClass#mclass_type (var_objectclass) on <var_objectclass:nullable MClass(MClass)> */
4362 var175
= var_objectclass
->attrs
[COLOR_nitc__model__MClass___mclass_type
].val
; /* _mclass_type on <var_objectclass:nullable MClass(MClass)> */
4363 if (unlikely(var175
== NULL
)) {
4364 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass_type");
4365 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 507);
4369 RET_LABEL174
:(void)0;
4373 core___core__Array___core__abstract_collection__SimpleCollection__add(var_supertypes
, var173
); /* Direct call array#Array#add on <var_supertypes:Array[MClassType]>*/
4381 nitc___nitc__MClassDef___set_supertypes(var_mclassdef
, var_supertypes
); /* Direct call model#MClassDef#set_supertypes on <var_mclassdef:nullable MClassDef(MClassDef)>*/
4384 var176
= core___core__AbstractArrayRead___core__abstract_collection__Collection__is_empty(var_supertypes
);
4389 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (self) on <self:ModelBuilder> */
4390 var180
= self
->attrs
[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <self:ModelBuilder> */
4391 if (unlikely(var180
== NULL
)) {
4392 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
4393 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelbuilder_base
, 47);
4397 RET_LABEL179
:(void)0;
4400 if (unlikely(varonce181
==NULL
)) {
4401 var182
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
4402 if (likely(varonce183
!=NULL
)) {
4403 var184
= varonce183
;
4405 var185
= " new super-types: ";
4406 var186
= core__flat___NativeString___to_s_full(var185
, 18l, 18l);
4408 varonce183
= var184
;
4410 ((struct instance_core__NativeArray
*)var182
)->values
[1]=var184
;
4412 var182
= varonce181
;
4416 var187
= ((val
*(*)(val
* self
))(var_mclassdef
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_mclassdef
); /* to_s on <var_mclassdef:nullable MClassDef(MClassDef)>*/
4418 ((struct instance_core__NativeArray
*)var182
)->values
[0]=var187
;
4419 if (likely(varonce188
!=NULL
)) {
4420 var189
= varonce188
;
4423 var191
= core__flat___NativeString___to_s_full(var190
, 2l, 2l);
4425 varonce188
= var189
;
4428 var192
= core__abstract_text___Collection___join(var_supertypes
, var189
);
4430 ((struct instance_core__NativeArray
*)var182
)->values
[2]=var192
;
4432 var193
= ((val
*(*)(val
* self
))(var182
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var182
); /* native_to_s on <var182:NativeArray[String]>*/
4434 varonce181
= var182
;
4436 nitc___nitc__ToolContext___info(var178
, var193
, 3l); /* Direct call toolcontext#ToolContext#info on <var178:ToolContext>*/
4442 /* method modelize_class#ModelBuilder#check_supertypes for (self: ModelBuilder, AModule, AClassdef) */
4443 void nitc__modelize_class___ModelBuilder___check_supertypes(val
* self
, val
* p0
, val
* p1
) {
4444 val
* var_nmodule
/* var nmodule: AModule */;
4445 val
* var_nclassdef
/* var nclassdef: AClassdef */;
4446 val
* var
/* : nullable MModule */;
4447 val
* var2
/* : nullable MModule */;
4448 val
* var_mmodule
/* var mmodule: nullable MModule */;
4449 short int var3
/* : Bool */;
4450 short int var4
/* : Bool */;
4451 val
* var_other
/* var other: nullable Object */;
4452 short int var6
/* : Bool */;
4453 short int var8
/* : Bool */;
4454 val
* var9
/* : nullable MClass */;
4455 val
* var11
/* : nullable MClass */;
4456 val
* var_mclass
/* var mclass: nullable MClass */;
4457 short int var12
/* : Bool */;
4458 short int var13
/* : Bool */;
4459 short int var15
/* : Bool */;
4460 short int var17
/* : Bool */;
4461 val
* var18
/* : nullable MClassDef */;
4462 val
* var20
/* : nullable MClassDef */;
4463 val
* var_mclassdef
/* var mclassdef: nullable MClassDef */;
4464 short int var21
/* : Bool */;
4465 short int var22
/* : Bool */;
4466 short int var24
/* : Bool */;
4467 short int var26
/* : Bool */;
4468 val
* var27
/* : Array[MClassType] */;
4469 val
* var29
/* : Array[MClassType] */;
4470 val
* var_
/* var : Array[MClassType] */;
4471 val
* var30
/* : IndexedIterator[nullable Object] */;
4472 val
* var_31
/* var : IndexedIterator[MClassType] */;
4473 short int var32
/* : Bool */;
4474 val
* var33
/* : nullable Object */;
4475 val
* var_s
/* var s: MClassType */;
4476 val
* var34
/* : MClassType */;
4477 val
* var36
/* : MClassType */;
4478 val
* var37
/* : MClassType */;
4479 val
* var39
/* : MClassType */;
4480 short int var40
/* : Bool */;
4481 val
* var41
/* : NativeArray[String] */;
4482 static val
* varonce
;
4483 static val
* varonce42
;
4484 val
* var43
/* : String */;
4485 char* var44
/* : NativeString */;
4486 val
* var45
/* : String */;
4487 static val
* varonce46
;
4488 val
* var47
/* : String */;
4489 char* var48
/* : NativeString */;
4490 val
* var49
/* : String */;
4491 static val
* varonce50
;
4492 val
* var51
/* : String */;
4493 char* var52
/* : NativeString */;
4494 val
* var53
/* : String */;
4495 val
* var54
/* : String */;
4496 val
* var55
/* : String */;
4497 val
* var56
/* : String */;
4501 { /* Inline loader#AModule#mmodule (var_nmodule) on <var_nmodule:AModule> */
4502 var2
= var_nmodule
->attrs
[COLOR_nitc__loader__AModule___mmodule
].val
; /* _mmodule on <var_nmodule:AModule> */
4508 if (var_mmodule
== NULL
) {
4509 var3
= 1; /* is null */
4511 var3
= 0; /* arg is null but recv is not */
4514 { /* Inline kernel#Object#== (var_mmodule,((val*)NULL)) on <var_mmodule:nullable MModule> */
4515 var_other
= ((val
*)NULL
);
4517 { /* Inline kernel#Object#is_same_instance (var_mmodule,var_other) on <var_mmodule:nullable MModule(MModule)> */
4518 var8
= var_mmodule
== var_other
;
4535 { /* Inline modelize_class#AClassdef#mclass (var_nclassdef) on <var_nclassdef:AClassdef> */
4536 var11
= var_nclassdef
->attrs
[COLOR_nitc__modelize_class__AClassdef___mclass
].val
; /* _mclass on <var_nclassdef:AClassdef> */
4538 RET_LABEL10
:(void)0;
4542 if (var_mclass
== NULL
) {
4543 var12
= 1; /* is null */
4545 var12
= 0; /* arg is null but recv is not */
4548 { /* Inline kernel#Object#== (var_mclass,((val*)NULL)) on <var_mclass:nullable MClass> */
4549 var_other
= ((val
*)NULL
);
4551 { /* Inline kernel#Object#is_same_instance (var_mclass,var_other) on <var_mclass:nullable MClass(MClass)> */
4552 var17
= var_mclass
== var_other
;
4555 RET_LABEL16
:(void)0;
4560 RET_LABEL14
:(void)0;
4569 { /* Inline modelize_class#AClassdef#mclassdef (var_nclassdef) on <var_nclassdef:AClassdef> */
4570 var20
= var_nclassdef
->attrs
[COLOR_nitc__modelize_class__AClassdef___mclassdef
].val
; /* _mclassdef on <var_nclassdef:AClassdef> */
4572 RET_LABEL19
:(void)0;
4575 var_mclassdef
= var18
;
4576 if (var_mclassdef
== NULL
) {
4577 var21
= 1; /* is null */
4579 var21
= 0; /* arg is null but recv is not */
4582 { /* Inline kernel#Object#== (var_mclassdef,((val*)NULL)) on <var_mclassdef:nullable MClassDef> */
4583 var_other
= ((val
*)NULL
);
4585 { /* Inline kernel#Object#is_same_instance (var_mclassdef,var_other) on <var_mclassdef:nullable MClassDef(MClassDef)> */
4586 var26
= var_mclassdef
== var_other
;
4589 RET_LABEL25
:(void)0;
4594 RET_LABEL23
:(void)0;
4603 { /* Inline model#MClassDef#supertypes (var_mclassdef) on <var_mclassdef:nullable MClassDef(MClassDef)> */
4604 var29
= var_mclassdef
->attrs
[COLOR_nitc__model__MClassDef___supertypes
].val
; /* _supertypes on <var_mclassdef:nullable MClassDef(MClassDef)> */
4605 if (unlikely(var29
== NULL
)) {
4606 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _supertypes");
4607 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 650);
4611 RET_LABEL28
:(void)0;
4616 var30
= core___core__AbstractArrayRead___core__abstract_collection__Collection__iterator(var_
);
4621 var32
= ((short int(*)(val
* self
))((((long)var_31
&3)?class_info
[((long)var_31
&3)]:var_31
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_31
); /* is_ok on <var_31:IndexedIterator[MClassType]>*/
4628 var33
= ((val
*(*)(val
* self
))((((long)var_31
&3)?class_info
[((long)var_31
&3)]:var_31
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_31
); /* item on <var_31:IndexedIterator[MClassType]>*/
4632 { /* Inline model#MClassDef#bound_mtype (var_mclassdef) on <var_mclassdef:nullable MClassDef(MClassDef)> */
4633 var36
= var_mclassdef
->attrs
[COLOR_nitc__model__MClassDef___bound_mtype
].val
; /* _bound_mtype on <var_mclassdef:nullable MClassDef(MClassDef)> */
4634 if (unlikely(var36
== NULL
)) {
4635 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _bound_mtype");
4636 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 579);
4640 RET_LABEL35
:(void)0;
4644 { /* Inline model#MClassDef#bound_mtype (var_mclassdef) on <var_mclassdef:nullable MClassDef(MClassDef)> */
4645 var39
= var_mclassdef
->attrs
[COLOR_nitc__model__MClassDef___bound_mtype
].val
; /* _bound_mtype on <var_mclassdef:nullable MClassDef(MClassDef)> */
4646 if (unlikely(var39
== NULL
)) {
4647 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _bound_mtype");
4648 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 579);
4652 RET_LABEL38
:(void)0;
4656 var40
= nitc___nitc__MType___is_subtype(var_s
, var_mmodule
, var34
, var37
);
4659 if (unlikely(varonce
==NULL
)) {
4660 var41
= NEW_core__NativeArray(5l, &type_core__NativeArray__core__String
);
4661 if (likely(varonce42
!=NULL
)) {
4664 var44
= "Error: inheritance loop for class `";
4665 var45
= core__flat___NativeString___to_s_full(var44
, 35l, 35l);
4669 ((struct instance_core__NativeArray
*)var41
)->values
[0]=var43
;
4670 if (likely(varonce46
!=NULL
)) {
4673 var48
= "` with type `";
4674 var49
= core__flat___NativeString___to_s_full(var48
, 13l, 13l);
4678 ((struct instance_core__NativeArray
*)var41
)->values
[2]=var47
;
4679 if (likely(varonce50
!=NULL
)) {
4683 var53
= core__flat___NativeString___to_s_full(var52
, 2l, 2l);
4687 ((struct instance_core__NativeArray
*)var41
)->values
[4]=var51
;
4693 var54
= ((val
*(*)(val
* self
))(var_mclass
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_mclass
); /* to_s on <var_mclass:nullable MClass(MClass)>*/
4695 ((struct instance_core__NativeArray
*)var41
)->values
[1]=var54
;
4697 var55
= ((val
*(*)(val
* self
))(var_s
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_s
); /* to_s on <var_s:MClassType>*/
4699 ((struct instance_core__NativeArray
*)var41
)->values
[3]=var55
;
4701 var56
= ((val
*(*)(val
* self
))(var41
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var41
); /* native_to_s on <var41:NativeArray[String]>*/
4705 nitc___nitc__ModelBuilder___error(self
, var_nclassdef
, var56
); /* Direct call modelbuilder_base#ModelBuilder#error on <self:ModelBuilder>*/
4710 ((void(*)(val
* self
))((((long)var_31
&3)?class_info
[((long)var_31
&3)]:var_31
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_31
); /* next on <var_31:IndexedIterator[MClassType]>*/
4713 BREAK_label
: (void)0;
4715 ((void(*)(val
* self
))((((long)var_31
&3)?class_info
[((long)var_31
&3)]:var_31
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_31
); /* finish on <var_31:IndexedIterator[MClassType]>*/
4719 /* method modelize_class#ModelBuilder#build_classes for (self: ModelBuilder, AModule) */
4720 void nitc__modelize_class___ModelBuilder___build_classes(val
* self
, val
* p0
) {
4721 val
* var_nmodule
/* var nmodule: AModule */;
4722 short int var
/* : Bool */;
4723 short int var2
/* : Bool */;
4724 val
* var4
/* : nullable MModule */;
4725 val
* var6
/* : nullable MModule */;
4726 val
* var_mmodule
/* var mmodule: nullable MModule */;
4727 short int var7
/* : Bool */;
4728 short int var8
/* : Bool */;
4729 val
* var_other
/* var other: nullable Object */;
4730 short int var10
/* : Bool */;
4731 short int var12
/* : Bool */;
4732 val
* var13
/* : POSetElement[MModule] */;
4733 val
* var15
/* : POSetElement[MModule] */;
4734 val
* var16
/* : Collection[nullable Object] */;
4735 val
* var_
/* var : Collection[MModule] */;
4736 val
* var17
/* : Iterator[nullable Object] */;
4737 val
* var_18
/* var : Iterator[MModule] */;
4738 short int var19
/* : Bool */;
4739 val
* var20
/* : nullable Object */;
4740 val
* var_imp
/* var imp: MModule */;
4741 val
* var21
/* : nullable AModule */;
4742 val
* var_nimp
/* var nimp: nullable AModule */;
4743 short int var22
/* : Bool */;
4744 short int var23
/* : Bool */;
4745 val
* var_other25
/* var other: nullable Object */;
4746 short int var26
/* : Bool */;
4747 short int var27
/* : Bool */;
4748 val
* var28
/* : ANodes[AClassdef] */;
4749 val
* var30
/* : ANodes[AClassdef] */;
4750 val
* var_31
/* var : ANodes[AClassdef] */;
4751 val
* var32
/* : Iterator[ANode] */;
4752 val
* var_33
/* var : Iterator[AClassdef] */;
4753 short int var34
/* : Bool */;
4754 val
* var36
/* : nullable Object */;
4755 val
* var_nclassdef
/* var nclassdef: AClassdef */;
4756 short int var37
/* : Bool */;
4759 short int var38
/* : Bool */;
4760 val
* var40
/* : ANodes[AClassdef] */;
4761 val
* var42
/* : ANodes[AClassdef] */;
4762 val
* var_43
/* var : ANodes[AClassdef] */;
4763 val
* var44
/* : Iterator[ANode] */;
4764 val
* var_45
/* var : Iterator[AClassdef] */;
4765 short int var46
/* : Bool */;
4766 val
* var48
/* : nullable Object */;
4767 val
* var_nclassdef49
/* var nclassdef: AClassdef */;
4768 short int var50
/* : Bool */;
4771 val
* var54
/* : ANodes[AClassdef] */;
4772 val
* var56
/* : ANodes[AClassdef] */;
4773 val
* var_57
/* var : ANodes[AClassdef] */;
4774 val
* var58
/* : Iterator[ANode] */;
4775 val
* var_59
/* var : Iterator[AClassdef] */;
4776 short int var60
/* : Bool */;
4777 val
* var62
/* : nullable Object */;
4778 val
* var_nclassdef63
/* var nclassdef: AClassdef */;
4779 short int var64
/* : Bool */;
4782 short int var67
/* : Bool */;
4783 val
* var69
/* : ANodes[AClassdef] */;
4784 val
* var71
/* : ANodes[AClassdef] */;
4785 val
* var_72
/* var : ANodes[AClassdef] */;
4786 val
* var73
/* : Iterator[ANode] */;
4787 val
* var_74
/* var : Iterator[AClassdef] */;
4788 short int var75
/* : Bool */;
4789 val
* var77
/* : nullable Object */;
4790 val
* var_nclassdef78
/* var nclassdef: AClassdef */;
4791 short int var79
/* : Bool */;
4794 val
* var83
/* : ANodes[AClassdef] */;
4795 val
* var85
/* : ANodes[AClassdef] */;
4796 val
* var_86
/* var : ANodes[AClassdef] */;
4797 val
* var87
/* : Iterator[ANode] */;
4798 val
* var_88
/* var : Iterator[AClassdef] */;
4799 short int var89
/* : Bool */;
4800 val
* var91
/* : nullable Object */;
4801 val
* var_nclassdef92
/* var nclassdef: AClassdef */;
4802 val
* var93
/* : Array[MClassDef] */;
4803 val
* var95
/* : Array[MClassDef] */;
4804 val
* var_96
/* var : Array[MClassDef] */;
4805 val
* var97
/* : IndexedIterator[nullable Object] */;
4806 val
* var_98
/* var : IndexedIterator[MClassDef] */;
4807 short int var99
/* : Bool */;
4808 val
* var101
/* : nullable Object */;
4809 val
* var_mclassdef
/* var mclassdef: MClassDef */;
4810 val
* var102
/* : ANodes[AClassdef] */;
4811 val
* var104
/* : ANodes[AClassdef] */;
4812 val
* var_105
/* var : ANodes[AClassdef] */;
4813 val
* var106
/* : Iterator[ANode] */;
4814 val
* var_107
/* var : Iterator[AClassdef] */;
4815 short int var108
/* : Bool */;
4816 val
* var110
/* : nullable Object */;
4817 val
* var_nclassdef111
/* var nclassdef: AClassdef */;
4818 val
* var112
/* : ANodes[AClassdef] */;
4819 val
* var114
/* : ANodes[AClassdef] */;
4820 val
* var_115
/* var : ANodes[AClassdef] */;
4821 val
* var116
/* : Iterator[ANode] */;
4822 val
* var_117
/* var : Iterator[AClassdef] */;
4823 short int var118
/* : Bool */;
4824 val
* var120
/* : nullable Object */;
4825 val
* var_nclassdef121
/* var nclassdef: AClassdef */;
4826 short int var122
/* : Bool */;
4829 val
* var125
/* : nullable MClassDef */;
4830 val
* var127
/* : nullable MClassDef */;
4831 val
* var_mclassdef128
/* var mclassdef: nullable MClassDef */;
4832 val
* var129
/* : ANodes[AFormaldef] */;
4833 val
* var131
/* : ANodes[AFormaldef] */;
4834 val
* var_132
/* var : ANodes[AFormaldef] */;
4835 val
* var133
/* : Iterator[ANode] */;
4836 val
* var_134
/* var : Iterator[AFormaldef] */;
4837 short int var135
/* : Bool */;
4838 val
* var137
/* : nullable Object */;
4839 val
* var_nfd
/* var nfd: AFormaldef */;
4840 val
* var138
/* : nullable AType */;
4841 val
* var140
/* : nullable AType */;
4842 val
* var_nfdt
/* var nfdt: nullable AType */;
4843 short int var141
/* : Bool */;
4844 short int var142
/* : Bool */;
4845 short int var143
/* : Bool */;
4846 short int var145
/* : Bool */;
4847 short int var146
/* : Bool */;
4848 short int var_147
/* var : Bool */;
4849 val
* var148
/* : nullable MType */;
4850 val
* var150
/* : nullable MType */;
4851 short int var151
/* : Bool */;
4852 short int var152
/* : Bool */;
4853 short int var154
/* : Bool */;
4854 short int var155
/* : Bool */;
4855 val
* var156
/* : nullable MType */;
4856 val
* var_bound
/* var bound: nullable MType */;
4857 short int var157
/* : Bool */;
4858 short int var158
/* : Bool */;
4859 short int var160
/* : Bool */;
4860 short int var162
/* : Bool */;
4861 val
* var163
/* : Array[ASuperPropdef] */;
4862 val
* var_164
/* var : Array[ASuperPropdef] */;
4863 val
* var165
/* : IndexedIterator[nullable Object] */;
4864 val
* var_166
/* var : IndexedIterator[ASuperPropdef] */;
4865 short int var167
/* : Bool */;
4866 val
* var169
/* : nullable Object */;
4867 val
* var_nsc
/* var nsc: ASuperPropdef */;
4868 val
* var170
/* : AType */;
4869 val
* var172
/* : AType */;
4870 val
* var_ntype
/* var ntype: AType */;
4871 val
* var173
/* : nullable MType */;
4872 val
* var175
/* : nullable MType */;
4873 short int var176
/* : Bool */;
4874 short int var177
/* : Bool */;
4875 short int var179
/* : Bool */;
4876 short int var180
/* : Bool */;
4877 val
* var181
/* : nullable MType */;
4878 val
* var_mtype
/* var mtype: nullable MType */;
4879 short int var182
/* : Bool */;
4880 short int var183
/* : Bool */;
4881 short int var185
/* : Bool */;
4882 short int var187
/* : Bool */;
4883 val
* var188
/* : ANodes[AClassdef] */;
4884 val
* var190
/* : ANodes[AClassdef] */;
4885 val
* var_191
/* var : ANodes[AClassdef] */;
4886 val
* var192
/* : Iterator[ANode] */;
4887 val
* var_193
/* var : Iterator[AClassdef] */;
4888 short int var194
/* : Bool */;
4889 val
* var196
/* : nullable Object */;
4890 val
* var_nclassdef197
/* var nclassdef: AClassdef */;
4891 val
* var198
/* : nullable MClassDef */;
4892 val
* var200
/* : nullable MClassDef */;
4893 val
* var_mclassdef201
/* var mclassdef: nullable MClassDef */;
4894 short int var202
/* : Bool */;
4895 short int var203
/* : Bool */;
4896 short int var205
/* : Bool */;
4897 short int var207
/* : Bool */;
4898 val
* var209
/* : HashMap[MClass, MClassType] */;
4899 val
* var_superclasses
/* var superclasses: HashMap[MClass, MClassType] */;
4900 val
* var210
/* : nullable POSetElement[MClassDef] */;
4901 val
* var212
/* : nullable POSetElement[MClassDef] */;
4902 val
* var213
/* : Collection[nullable Object] */;
4903 val
* var_214
/* var : Collection[MClassDef] */;
4904 val
* var215
/* : Iterator[nullable Object] */;
4905 val
* var_216
/* var : Iterator[MClassDef] */;
4906 short int var217
/* : Bool */;
4907 val
* var219
/* : nullable Object */;
4908 val
* var_scd
/* var scd: MClassDef */;
4909 val
* var220
/* : Array[MClassType] */;
4910 val
* var222
/* : Array[MClassType] */;
4911 val
* var_223
/* var : Array[MClassType] */;
4912 val
* var224
/* : IndexedIterator[nullable Object] */;
4913 val
* var_225
/* var : IndexedIterator[MClassType] */;
4914 short int var226
/* : Bool */;
4915 val
* var228
/* : nullable Object */;
4916 val
* var_st
/* var st: MClassType */;
4917 val
* var229
/* : MClass */;
4918 val
* var231
/* : MClass */;
4919 short int var232
/* : Bool */;
4920 short int var233
/* : Bool */;
4921 val
* var234
/* : MClass */;
4922 val
* var236
/* : MClass */;
4923 val
* var237
/* : MClass */;
4924 val
* var239
/* : MClass */;
4925 val
* var240
/* : nullable Object */;
4926 short int var241
/* : Bool */;
4927 short int var243
/* : Bool */;
4928 short int var244
/* : Bool */;
4929 val
* var245
/* : MClass */;
4930 val
* var247
/* : MClass */;
4931 val
* var248
/* : nullable Object */;
4932 val
* var249
/* : MClass */;
4933 val
* var251
/* : MClass */;
4934 val
* var252
/* : MClassType */;
4935 val
* var254
/* : MClassType */;
4936 val
* var255
/* : MClassType */;
4937 val
* var257
/* : MClassType */;
4938 val
* var258
/* : MType */;
4939 val
* var_st1
/* var st1: MClassType */;
4940 val
* var259
/* : MClass */;
4941 val
* var261
/* : MClass */;
4942 val
* var262
/* : MClassType */;
4943 val
* var264
/* : MClassType */;
4944 val
* var265
/* : MClassType */;
4945 val
* var267
/* : MClassType */;
4946 val
* var268
/* : MType */;
4947 val
* var_st2
/* var st2: MClassType */;
4948 short int var269
/* : Bool */;
4949 short int var271
/* : Bool */;
4950 short int var272
/* : Bool */;
4951 val
* var273
/* : NativeArray[String] */;
4952 static val
* varonce
;
4953 static val
* varonce274
;
4954 val
* var275
/* : String */;
4955 char* var276
/* : NativeString */;
4956 val
* var277
/* : String */;
4957 static val
* varonce278
;
4958 val
* var279
/* : String */;
4959 char* var280
/* : NativeString */;
4960 val
* var281
/* : String */;
4961 static val
* varonce282
;
4962 val
* var283
/* : String */;
4963 char* var284
/* : NativeString */;
4964 val
* var285
/* : String */;
4965 static val
* varonce286
;
4966 val
* var287
/* : String */;
4967 char* var288
/* : NativeString */;
4968 val
* var289
/* : String */;
4969 val
* var290
/* : MClass */;
4970 val
* var292
/* : MClass */;
4971 val
* var293
/* : String */;
4972 val
* var294
/* : String */;
4973 val
* var295
/* : String */;
4974 val
* var296
/* : String */;
4975 val
* var297
/* : ANodes[AClassdef] */;
4976 val
* var299
/* : ANodes[AClassdef] */;
4977 val
* var_300
/* var : ANodes[AClassdef] */;
4978 val
* var301
/* : Iterator[ANode] */;
4979 val
* var_302
/* var : Iterator[AClassdef] */;
4980 short int var303
/* : Bool */;
4981 val
* var305
/* : nullable Object */;
4982 val
* var_nclassdef306
/* var nclassdef: AClassdef */;
4983 short int var307
/* : Bool */;
4984 short int var308
/* : Bool */;
4987 short int var311
/* : Bool */;
4988 short int var_312
/* var : Bool */;
4989 short int var313
/* : Bool */;
4990 short int var315
/* : Bool */;
4991 val
* var317
/* : nullable MClassDef */;
4992 val
* var319
/* : nullable MClassDef */;
4993 val
* var_mclassdef320
/* var mclassdef: nullable MClassDef */;
4994 short int var321
/* : Bool */;
4995 short int var322
/* : Bool */;
4996 short int var324
/* : Bool */;
4997 short int var326
/* : Bool */;
4998 val
* var327
/* : Array[MClass] */;
4999 val
* var_parents
/* var parents: Array[MClass] */;
5000 val
* var328
/* : nullable POSetElement[MClassDef] */;
5001 val
* var330
/* : nullable POSetElement[MClassDef] */;
5002 val
* var331
/* : Collection[nullable Object] */;
5003 val
* var_332
/* var : Collection[MClassDef] */;
5004 val
* var333
/* : Iterator[nullable Object] */;
5005 val
* var_334
/* var : Iterator[MClassDef] */;
5006 short int var335
/* : Bool */;
5007 val
* var337
/* : nullable Object */;
5008 val
* var_sup
/* var sup: MClassDef */;
5009 val
* var338
/* : MClass */;
5010 val
* var340
/* : MClass */;
5011 val
* var341
/* : ArrayMap[MClass, AType] */;
5012 val
* var_seen_parents
/* var seen_parents: ArrayMap[MClass, AType] */;
5013 static val
* varonce343
;
5014 val
* var344
/* : String */;
5015 char* var345
/* : NativeString */;
5016 val
* var346
/* : String */;
5017 val
* var347
/* : nullable MClass */;
5018 val
* var_objectclass
/* var objectclass: nullable MClass */;
5019 val
* var348
/* : Array[ASuperPropdef] */;
5020 val
* var_349
/* var : Array[ASuperPropdef] */;
5021 val
* var350
/* : IndexedIterator[nullable Object] */;
5022 val
* var_351
/* var : IndexedIterator[ASuperPropdef] */;
5023 short int var352
/* : Bool */;
5024 val
* var354
/* : nullable Object */;
5025 val
* var_nsc355
/* var nsc: ASuperPropdef */;
5026 val
* var356
/* : AType */;
5027 val
* var358
/* : AType */;
5028 val
* var_ntype359
/* var ntype: AType */;
5029 val
* var360
/* : nullable MType */;
5030 val
* var362
/* : nullable MType */;
5031 val
* var_mtype363
/* var mtype: nullable MType */;
5032 short int var364
/* : Bool */;
5033 short int var365
/* : Bool */;
5034 short int var367
/* : Bool */;
5035 short int var369
/* : Bool */;
5036 short int var371
/* : Bool */;
5039 val
* var374
/* : MClass */;
5040 val
* var376
/* : MClass */;
5041 val
* var_sc
/* var sc: MClass */;
5042 short int var377
/* : Bool */;
5043 short int var378
/* : Bool */;
5044 short int var379
/* : Bool */;
5045 short int var_380
/* var : Bool */;
5046 short int var381
/* : Bool */;
5047 short int var383
/* : Bool */;
5048 short int var385
/* : Bool */;
5049 short int var386
/* : Bool */;
5050 val
* var387
/* : Location */;
5051 val
* var389
/* : Location */;
5052 val
* var390
/* : nullable SourceFile */;
5053 val
* var392
/* : nullable SourceFile */;
5054 short int var393
/* : Bool */;
5055 short int var394
/* : Bool */;
5056 short int var396
/* : Bool */;
5057 short int var397
/* : Bool */;
5058 short int var_398
/* var : Bool */;
5059 val
* var399
/* : Location */;
5060 val
* var401
/* : Location */;
5061 val
* var402
/* : nullable SourceFile */;
5062 val
* var404
/* : nullable SourceFile */;
5063 val
* var405
/* : String */;
5064 val
* var407
/* : String */;
5065 short int var408
/* : Bool */;
5066 short int var409
/* : Bool */;
5067 static val
* varonce410
;
5068 val
* var411
/* : String */;
5069 char* var412
/* : NativeString */;
5070 val
* var413
/* : String */;
5071 val
* var415
/* : NativeArray[String] */;
5072 static val
* varonce414
;
5073 static val
* varonce416
;
5074 val
* var417
/* : String */;
5075 char* var418
/* : NativeString */;
5076 val
* var419
/* : String */;
5077 static val
* varonce420
;
5078 val
* var421
/* : String */;
5079 char* var422
/* : NativeString */;
5080 val
* var423
/* : String */;
5081 static val
* varonce424
;
5082 val
* var425
/* : String */;
5083 char* var426
/* : NativeString */;
5084 val
* var427
/* : String */;
5085 val
* var428
/* : String */;
5086 val
* var429
/* : MClass */;
5087 val
* var431
/* : MClass */;
5088 val
* var432
/* : String */;
5089 val
* var433
/* : String */;
5090 short int var434
/* : Bool */;
5091 short int var435
/* : Bool */;
5092 static val
* varonce436
;
5093 val
* var437
/* : String */;
5094 char* var438
/* : NativeString */;
5095 val
* var439
/* : String */;
5096 val
* var441
/* : NativeArray[String] */;
5097 static val
* varonce440
;
5098 static val
* varonce442
;
5099 val
* var443
/* : String */;
5100 char* var444
/* : NativeString */;
5101 val
* var445
/* : String */;
5102 static val
* varonce446
;
5103 val
* var447
/* : String */;
5104 char* var448
/* : NativeString */;
5105 val
* var449
/* : String */;
5106 static val
* varonce450
;
5107 val
* var451
/* : String */;
5108 char* var452
/* : NativeString */;
5109 val
* var453
/* : String */;
5110 val
* var454
/* : String */;
5111 val
* var455
/* : MClass */;
5112 val
* var457
/* : MClass */;
5113 val
* var458
/* : String */;
5114 val
* var459
/* : String */;
5117 { /* Inline modelize_class#AModule#build_classes_is_done (var_nmodule) on <var_nmodule:AModule> */
5118 var2
= var_nmodule
->attrs
[COLOR_nitc__modelize_class__AModule___build_classes_is_done
].s
; /* _build_classes_is_done on <var_nmodule:AModule> */
5128 { /* Inline modelize_class#AModule#build_classes_is_done= (var_nmodule,1) on <var_nmodule:AModule> */
5129 var_nmodule
->attrs
[COLOR_nitc__modelize_class__AModule___build_classes_is_done
].s
= 1; /* _build_classes_is_done on <var_nmodule:AModule> */
5134 { /* Inline loader#AModule#mmodule (var_nmodule) on <var_nmodule:AModule> */
5135 var6
= var_nmodule
->attrs
[COLOR_nitc__loader__AModule___mmodule
].val
; /* _mmodule on <var_nmodule:AModule> */
5141 if (var_mmodule
== NULL
) {
5142 var7
= 1; /* is null */
5144 var7
= 0; /* arg is null but recv is not */
5147 { /* Inline kernel#Object#== (var_mmodule,((val*)NULL)) on <var_mmodule:nullable MModule> */
5148 var_other
= ((val
*)NULL
);
5150 { /* Inline kernel#Object#is_same_instance (var_mmodule,var_other) on <var_mmodule:nullable MModule(MModule)> */
5151 var12
= var_mmodule
== var_other
;
5154 RET_LABEL11
:(void)0;
5168 { /* Inline mmodule#MModule#in_importation (var_mmodule) on <var_mmodule:nullable MModule(MModule)> */
5169 var15
= var_mmodule
->attrs
[COLOR_nitc__mmodule__MModule___in_importation
].val
; /* _in_importation on <var_mmodule:nullable MModule(MModule)> */
5170 if (unlikely(var15
== NULL
)) {
5171 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _in_importation");
5172 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__mmodule
, 104);
5176 RET_LABEL14
:(void)0;
5180 var16
= poset___poset__POSetElement___direct_greaters(var13
);
5184 var17
= ((val
*(*)(val
* self
))((((long)var_
&3)?class_info
[((long)var_
&3)]:var_
->class)->vft
[COLOR_core__abstract_collection__Collection__iterator
]))(var_
); /* iterator on <var_:Collection[MModule]>*/
5189 var19
= ((short int(*)(val
* self
))((((long)var_18
&3)?class_info
[((long)var_18
&3)]:var_18
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_18
); /* is_ok on <var_18:Iterator[MModule]>*/
5196 var20
= ((val
*(*)(val
* self
))((((long)var_18
&3)?class_info
[((long)var_18
&3)]:var_18
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_18
); /* item on <var_18:Iterator[MModule]>*/
5200 var21
= nitc__loader___ModelBuilder___mmodule2node(self
, var_imp
);
5203 if (var_nimp
== NULL
) {
5204 var22
= 0; /* is null */
5206 var22
= 1; /* arg is null and recv is not */
5209 { /* Inline kernel#Object#!= (var_nimp,((val*)NULL)) on <var_nimp:nullable AModule> */
5210 var_other25
= ((val
*)NULL
);
5212 var26
= ((short int(*)(val
* self
, val
* p0
))(var_nimp
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_nimp
, var_other25
); /* == on <var_nimp:nullable AModule(AModule)>*/
5217 RET_LABEL24
:(void)0;
5223 nitc__modelize_class___ModelBuilder___build_classes(self
, var_nimp
); /* Direct call modelize_class#ModelBuilder#build_classes on <self:ModelBuilder>*/
5228 ((void(*)(val
* self
))((((long)var_18
&3)?class_info
[((long)var_18
&3)]:var_18
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_18
); /* next on <var_18:Iterator[MModule]>*/
5231 BREAK_label
: (void)0;
5233 ((void(*)(val
* self
))((((long)var_18
&3)?class_info
[((long)var_18
&3)]:var_18
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_18
); /* finish on <var_18:Iterator[MModule]>*/
5236 { /* Inline parser_nodes#AModule#n_classdefs (var_nmodule) on <var_nmodule:AModule> */
5237 var30
= var_nmodule
->attrs
[COLOR_nitc__parser_nodes__AModule___n_classdefs
].val
; /* _n_classdefs on <var_nmodule:AModule> */
5238 if (unlikely(var30
== NULL
)) {
5239 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_classdefs");
5240 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1062);
5244 RET_LABEL29
:(void)0;
5249 var32
= nitc___nitc__ANodes___core__abstract_collection__Collection__iterator(var_31
);
5254 var34
= ((short int(*)(val
* self
))((((long)var_33
&3)?class_info
[((long)var_33
&3)]:var_33
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_33
); /* is_ok on <var_33:Iterator[AClassdef]>*/
5261 var36
= ((val
*(*)(val
* self
))((((long)var_33
&3)?class_info
[((long)var_33
&3)]:var_33
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_33
); /* item on <var_33:Iterator[AClassdef]>*/
5263 var_nclassdef
= var36
;
5264 /* <var_nclassdef:AClassdef> isa AStdClassdef */
5265 cltype
= type_nitc__AStdClassdef
.color
;
5266 idtype
= type_nitc__AStdClassdef
.id
;
5267 if(cltype
>= var_nclassdef
->type
->table_size
) {
5270 var37
= var_nclassdef
->type
->type_table
[cltype
] == idtype
;
5278 nitc__modelize_class___ModelBuilder___build_a_mclass(self
, var_nmodule
, var_nclassdef
); /* Direct call modelize_class#ModelBuilder#build_a_mclass on <self:ModelBuilder>*/
5280 BREAK_label39
: (void)0;
5282 ((void(*)(val
* self
))((((long)var_33
&3)?class_info
[((long)var_33
&3)]:var_33
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_33
); /* next on <var_33:Iterator[AClassdef]>*/
5285 BREAK_label35
: (void)0;
5287 ((void(*)(val
* self
))((((long)var_33
&3)?class_info
[((long)var_33
&3)]:var_33
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_33
); /* finish on <var_33:Iterator[AClassdef]>*/
5290 { /* Inline parser_nodes#AModule#n_classdefs (var_nmodule) on <var_nmodule:AModule> */
5291 var42
= var_nmodule
->attrs
[COLOR_nitc__parser_nodes__AModule___n_classdefs
].val
; /* _n_classdefs on <var_nmodule:AModule> */
5292 if (unlikely(var42
== NULL
)) {
5293 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_classdefs");
5294 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1062);
5298 RET_LABEL41
:(void)0;
5303 var44
= nitc___nitc__ANodes___core__abstract_collection__Collection__iterator(var_43
);
5308 var46
= ((short int(*)(val
* self
))((((long)var_45
&3)?class_info
[((long)var_45
&3)]:var_45
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_45
); /* is_ok on <var_45:Iterator[AClassdef]>*/
5315 var48
= ((val
*(*)(val
* self
))((((long)var_45
&3)?class_info
[((long)var_45
&3)]:var_45
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_45
); /* item on <var_45:Iterator[AClassdef]>*/
5317 var_nclassdef49
= var48
;
5318 /* <var_nclassdef49:AClassdef> isa AStdClassdef */
5319 cltype51
= type_nitc__AStdClassdef
.color
;
5320 idtype52
= type_nitc__AStdClassdef
.id
;
5321 if(cltype51
>= var_nclassdef49
->type
->table_size
) {
5324 var50
= var_nclassdef49
->type
->type_table
[cltype51
] == idtype52
;
5331 nitc__modelize_class___ModelBuilder___build_a_mclass(self
, var_nmodule
, var_nclassdef49
); /* Direct call modelize_class#ModelBuilder#build_a_mclass on <self:ModelBuilder>*/
5333 BREAK_label53
: (void)0;
5335 ((void(*)(val
* self
))((((long)var_45
&3)?class_info
[((long)var_45
&3)]:var_45
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_45
); /* next on <var_45:Iterator[AClassdef]>*/
5338 BREAK_label47
: (void)0;
5340 ((void(*)(val
* self
))((((long)var_45
&3)?class_info
[((long)var_45
&3)]:var_45
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_45
); /* finish on <var_45:Iterator[AClassdef]>*/
5343 { /* Inline parser_nodes#AModule#n_classdefs (var_nmodule) on <var_nmodule:AModule> */
5344 var56
= var_nmodule
->attrs
[COLOR_nitc__parser_nodes__AModule___n_classdefs
].val
; /* _n_classdefs on <var_nmodule:AModule> */
5345 if (unlikely(var56
== NULL
)) {
5346 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_classdefs");
5347 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1062);
5351 RET_LABEL55
:(void)0;
5356 var58
= nitc___nitc__ANodes___core__abstract_collection__Collection__iterator(var_57
);
5361 var60
= ((short int(*)(val
* self
))((((long)var_59
&3)?class_info
[((long)var_59
&3)]:var_59
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_59
); /* is_ok on <var_59:Iterator[AClassdef]>*/
5368 var62
= ((val
*(*)(val
* self
))((((long)var_59
&3)?class_info
[((long)var_59
&3)]:var_59
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_59
); /* item on <var_59:Iterator[AClassdef]>*/
5370 var_nclassdef63
= var62
;
5371 /* <var_nclassdef63:AClassdef> isa AStdClassdef */
5372 cltype65
= type_nitc__AStdClassdef
.color
;
5373 idtype66
= type_nitc__AStdClassdef
.id
;
5374 if(cltype65
>= var_nclassdef63
->type
->table_size
) {
5377 var64
= var_nclassdef63
->type
->type_table
[cltype65
] == idtype66
;
5385 nitc__modelize_class___ModelBuilder___build_a_mclassdef(self
, var_nmodule
, var_nclassdef63
); /* Direct call modelize_class#ModelBuilder#build_a_mclassdef on <self:ModelBuilder>*/
5387 BREAK_label68
: (void)0;
5389 ((void(*)(val
* self
))((((long)var_59
&3)?class_info
[((long)var_59
&3)]:var_59
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_59
); /* next on <var_59:Iterator[AClassdef]>*/
5392 BREAK_label61
: (void)0;
5394 ((void(*)(val
* self
))((((long)var_59
&3)?class_info
[((long)var_59
&3)]:var_59
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_59
); /* finish on <var_59:Iterator[AClassdef]>*/
5397 { /* Inline parser_nodes#AModule#n_classdefs (var_nmodule) on <var_nmodule:AModule> */
5398 var71
= var_nmodule
->attrs
[COLOR_nitc__parser_nodes__AModule___n_classdefs
].val
; /* _n_classdefs on <var_nmodule:AModule> */
5399 if (unlikely(var71
== NULL
)) {
5400 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_classdefs");
5401 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1062);
5405 RET_LABEL70
:(void)0;
5410 var73
= nitc___nitc__ANodes___core__abstract_collection__Collection__iterator(var_72
);
5415 var75
= ((short int(*)(val
* self
))((((long)var_74
&3)?class_info
[((long)var_74
&3)]:var_74
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_74
); /* is_ok on <var_74:Iterator[AClassdef]>*/
5422 var77
= ((val
*(*)(val
* self
))((((long)var_74
&3)?class_info
[((long)var_74
&3)]:var_74
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_74
); /* item on <var_74:Iterator[AClassdef]>*/
5424 var_nclassdef78
= var77
;
5425 /* <var_nclassdef78:AClassdef> isa AStdClassdef */
5426 cltype80
= type_nitc__AStdClassdef
.color
;
5427 idtype81
= type_nitc__AStdClassdef
.id
;
5428 if(cltype80
>= var_nclassdef78
->type
->table_size
) {
5431 var79
= var_nclassdef78
->type
->type_table
[cltype80
] == idtype81
;
5438 nitc__modelize_class___ModelBuilder___build_a_mclassdef(self
, var_nmodule
, var_nclassdef78
); /* Direct call modelize_class#ModelBuilder#build_a_mclassdef on <self:ModelBuilder>*/
5440 BREAK_label82
: (void)0;
5442 ((void(*)(val
* self
))((((long)var_74
&3)?class_info
[((long)var_74
&3)]:var_74
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_74
); /* next on <var_74:Iterator[AClassdef]>*/
5445 BREAK_label76
: (void)0;
5447 ((void(*)(val
* self
))((((long)var_74
&3)?class_info
[((long)var_74
&3)]:var_74
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_74
); /* finish on <var_74:Iterator[AClassdef]>*/
5450 { /* Inline parser_nodes#AModule#n_classdefs (var_nmodule) on <var_nmodule:AModule> */
5451 var85
= var_nmodule
->attrs
[COLOR_nitc__parser_nodes__AModule___n_classdefs
].val
; /* _n_classdefs on <var_nmodule:AModule> */
5452 if (unlikely(var85
== NULL
)) {
5453 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_classdefs");
5454 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1062);
5458 RET_LABEL84
:(void)0;
5463 var87
= nitc___nitc__ANodes___core__abstract_collection__Collection__iterator(var_86
);
5468 var89
= ((short int(*)(val
* self
))((((long)var_88
&3)?class_info
[((long)var_88
&3)]:var_88
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_88
); /* is_ok on <var_88:Iterator[AClassdef]>*/
5475 var91
= ((val
*(*)(val
* self
))((((long)var_88
&3)?class_info
[((long)var_88
&3)]:var_88
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_88
); /* item on <var_88:Iterator[AClassdef]>*/
5477 var_nclassdef92
= var91
;
5479 nitc__modelize_class___ModelBuilder___collect_a_mclassdef_inheritance(self
, var_nmodule
, var_nclassdef92
); /* Direct call modelize_class#ModelBuilder#collect_a_mclassdef_inheritance on <self:ModelBuilder>*/
5482 ((void(*)(val
* self
))((((long)var_88
&3)?class_info
[((long)var_88
&3)]:var_88
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_88
); /* next on <var_88:Iterator[AClassdef]>*/
5485 BREAK_label90
: (void)0;
5487 ((void(*)(val
* self
))((((long)var_88
&3)?class_info
[((long)var_88
&3)]:var_88
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_88
); /* finish on <var_88:Iterator[AClassdef]>*/
5490 { /* Inline model#MModule#mclassdefs (var_mmodule) on <var_mmodule:nullable MModule(MModule)> */
5491 var95
= var_mmodule
->attrs
[COLOR_nitc__model__MModule___mclassdefs
].val
; /* _mclassdefs on <var_mmodule:nullable MModule(MModule)> */
5492 if (unlikely(var95
== NULL
)) {
5493 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdefs");
5494 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 141);
5498 RET_LABEL94
:(void)0;
5503 var97
= core___core__AbstractArrayRead___core__abstract_collection__Collection__iterator(var_96
);
5508 var99
= ((short int(*)(val
* self
))((((long)var_98
&3)?class_info
[((long)var_98
&3)]:var_98
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_98
); /* is_ok on <var_98:IndexedIterator[MClassDef]>*/
5512 goto BREAK_label100
;
5515 var101
= ((val
*(*)(val
* self
))((((long)var_98
&3)?class_info
[((long)var_98
&3)]:var_98
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_98
); /* item on <var_98:IndexedIterator[MClassDef]>*/
5517 var_mclassdef
= var101
;
5519 nitc___nitc__MClassDef___add_in_hierarchy(var_mclassdef
); /* Direct call model#MClassDef#add_in_hierarchy on <var_mclassdef:MClassDef>*/
5522 ((void(*)(val
* self
))((((long)var_98
&3)?class_info
[((long)var_98
&3)]:var_98
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_98
); /* next on <var_98:IndexedIterator[MClassDef]>*/
5525 BREAK_label100
: (void)0;
5527 ((void(*)(val
* self
))((((long)var_98
&3)?class_info
[((long)var_98
&3)]:var_98
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_98
); /* finish on <var_98:IndexedIterator[MClassDef]>*/
5530 { /* Inline parser_nodes#AModule#n_classdefs (var_nmodule) on <var_nmodule:AModule> */
5531 var104
= var_nmodule
->attrs
[COLOR_nitc__parser_nodes__AModule___n_classdefs
].val
; /* _n_classdefs on <var_nmodule:AModule> */
5532 if (unlikely(var104
== NULL
)) {
5533 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_classdefs");
5534 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1062);
5538 RET_LABEL103
:(void)0;
5543 var106
= nitc___nitc__ANodes___core__abstract_collection__Collection__iterator(var_105
);
5548 var108
= ((short int(*)(val
* self
))((((long)var_107
&3)?class_info
[((long)var_107
&3)]:var_107
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_107
); /* is_ok on <var_107:Iterator[AClassdef]>*/
5552 goto BREAK_label109
;
5555 var110
= ((val
*(*)(val
* self
))((((long)var_107
&3)?class_info
[((long)var_107
&3)]:var_107
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_107
); /* item on <var_107:Iterator[AClassdef]>*/
5557 var_nclassdef111
= var110
;
5559 nitc__modelize_class___ModelBuilder___check_supertypes(self
, var_nmodule
, var_nclassdef111
); /* Direct call modelize_class#ModelBuilder#check_supertypes on <self:ModelBuilder>*/
5562 ((void(*)(val
* self
))((((long)var_107
&3)?class_info
[((long)var_107
&3)]:var_107
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_107
); /* next on <var_107:Iterator[AClassdef]>*/
5565 BREAK_label109
: (void)0;
5567 ((void(*)(val
* self
))((((long)var_107
&3)?class_info
[((long)var_107
&3)]:var_107
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_107
); /* finish on <var_107:Iterator[AClassdef]>*/
5570 { /* Inline parser_nodes#AModule#n_classdefs (var_nmodule) on <var_nmodule:AModule> */
5571 var114
= var_nmodule
->attrs
[COLOR_nitc__parser_nodes__AModule___n_classdefs
].val
; /* _n_classdefs on <var_nmodule:AModule> */
5572 if (unlikely(var114
== NULL
)) {
5573 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_classdefs");
5574 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1062);
5578 RET_LABEL113
:(void)0;
5583 var116
= nitc___nitc__ANodes___core__abstract_collection__Collection__iterator(var_115
);
5588 var118
= ((short int(*)(val
* self
))((((long)var_117
&3)?class_info
[((long)var_117
&3)]:var_117
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_117
); /* is_ok on <var_117:Iterator[AClassdef]>*/
5592 goto BREAK_label119
;
5595 var120
= ((val
*(*)(val
* self
))((((long)var_117
&3)?class_info
[((long)var_117
&3)]:var_117
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_117
); /* item on <var_117:Iterator[AClassdef]>*/
5597 var_nclassdef121
= var120
;
5598 /* <var_nclassdef121:AClassdef> isa AStdClassdef */
5599 cltype123
= type_nitc__AStdClassdef
.color
;
5600 idtype124
= type_nitc__AStdClassdef
.id
;
5601 if(cltype123
>= var_nclassdef121
->type
->table_size
) {
5604 var122
= var_nclassdef121
->type
->type_table
[cltype123
] == idtype124
;
5608 { /* Inline modelize_class#AClassdef#mclassdef (var_nclassdef121) on <var_nclassdef121:AClassdef(AStdClassdef)> */
5609 var127
= var_nclassdef121
->attrs
[COLOR_nitc__modelize_class__AClassdef___mclassdef
].val
; /* _mclassdef on <var_nclassdef121:AClassdef(AStdClassdef)> */
5611 RET_LABEL126
:(void)0;
5614 var_mclassdef128
= var125
;
5616 { /* Inline parser_nodes#AStdClassdef#n_formaldefs (var_nclassdef121) on <var_nclassdef121:AClassdef(AStdClassdef)> */
5617 var131
= var_nclassdef121
->attrs
[COLOR_nitc__parser_nodes__AStdClassdef___n_formaldefs
].val
; /* _n_formaldefs on <var_nclassdef121:AClassdef(AStdClassdef)> */
5618 if (unlikely(var131
== NULL
)) {
5619 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_formaldefs");
5620 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1173);
5624 RET_LABEL130
:(void)0;
5629 var133
= nitc___nitc__ANodes___core__abstract_collection__Collection__iterator(var_132
);
5634 var135
= ((short int(*)(val
* self
))((((long)var_134
&3)?class_info
[((long)var_134
&3)]:var_134
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_134
); /* is_ok on <var_134:Iterator[AFormaldef]>*/
5638 goto BREAK_label136
;
5641 var137
= ((val
*(*)(val
* self
))((((long)var_134
&3)?class_info
[((long)var_134
&3)]:var_134
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_134
); /* item on <var_134:Iterator[AFormaldef]>*/
5645 { /* Inline parser_nodes#AFormaldef#n_type (var_nfd) on <var_nfd:AFormaldef> */
5646 var140
= var_nfd
->attrs
[COLOR_nitc__parser_nodes__AFormaldef___n_type
].val
; /* _n_type on <var_nfd:AFormaldef> */
5648 RET_LABEL139
:(void)0;
5652 if (var_nfdt
== NULL
) {
5653 var142
= 0; /* is null */
5655 var142
= 1; /* arg is null and recv is not */
5658 { /* Inline kernel#Object#!= (var_nfdt,((val*)NULL)) on <var_nfdt:nullable AType> */
5659 var_other25
= ((val
*)NULL
);
5661 var145
= ((short int(*)(val
* self
, val
* p0
))(var_nfdt
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_nfdt
, var_other25
); /* == on <var_nfdt:nullable AType(AType)>*/
5666 RET_LABEL144
:(void)0;
5673 { /* Inline modelbuilder_base#AType#mtype (var_nfdt) on <var_nfdt:nullable AType(AType)> */
5674 var150
= var_nfdt
->attrs
[COLOR_nitc__modelbuilder_base__AType___mtype
].val
; /* _mtype on <var_nfdt:nullable AType(AType)> */
5676 RET_LABEL149
:(void)0;
5679 if (var148
== NULL
) {
5680 var151
= 0; /* is null */
5682 var151
= 1; /* arg is null and recv is not */
5685 { /* Inline kernel#Object#!= (var148,((val*)NULL)) on <var148:nullable MType> */
5686 var_other25
= ((val
*)NULL
);
5688 var154
= ((short int(*)(val
* self
, val
* p0
))(var148
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var148
, var_other25
); /* == on <var148:nullable MType(MType)>*/
5693 RET_LABEL153
:(void)0;
5703 var156
= nitc___nitc__ModelBuilder___resolve_mtype(self
, var_mmodule
, var_mclassdef128
, var_nfdt
);
5706 if (var_bound
== NULL
) {
5707 var157
= 1; /* is null */
5709 var157
= 0; /* arg is null but recv is not */
5712 { /* Inline kernel#Object#== (var_bound,((val*)NULL)) on <var_bound:nullable MType> */
5713 var_other
= ((val
*)NULL
);
5715 { /* Inline kernel#Object#is_same_instance (var_bound,var_other) on <var_bound:nullable MType(MType)> */
5716 var162
= var_bound
== var_other
;
5719 RET_LABEL161
:(void)0;
5724 RET_LABEL159
:(void)0;
5735 ((void(*)(val
* self
))((((long)var_134
&3)?class_info
[((long)var_134
&3)]:var_134
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_134
); /* next on <var_134:Iterator[AFormaldef]>*/
5738 BREAK_label136
: (void)0;
5740 ((void(*)(val
* self
))((((long)var_134
&3)?class_info
[((long)var_134
&3)]:var_134
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_134
); /* finish on <var_134:Iterator[AFormaldef]>*/
5743 var163
= nitc___nitc__AStdClassdef___n_superclasses(var_nclassdef121
);
5747 var165
= core___core__AbstractArrayRead___core__abstract_collection__Collection__iterator(var_164
);
5752 var167
= ((short int(*)(val
* self
))((((long)var_166
&3)?class_info
[((long)var_166
&3)]:var_166
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_166
); /* is_ok on <var_166:IndexedIterator[ASuperPropdef]>*/
5756 goto BREAK_label168
;
5759 var169
= ((val
*(*)(val
* self
))((((long)var_166
&3)?class_info
[((long)var_166
&3)]:var_166
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_166
); /* item on <var_166:IndexedIterator[ASuperPropdef]>*/
5763 { /* Inline parser_nodes#ASuperPropdef#n_type (var_nsc) on <var_nsc:ASuperPropdef> */
5764 var172
= var_nsc
->attrs
[COLOR_nitc__parser_nodes__ASuperPropdef___n_type
].val
; /* _n_type on <var_nsc:ASuperPropdef> */
5765 if (unlikely(var172
== NULL
)) {
5766 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_type");
5767 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1369);
5771 RET_LABEL171
:(void)0;
5776 { /* Inline modelbuilder_base#AType#mtype (var_ntype) on <var_ntype:AType> */
5777 var175
= var_ntype
->attrs
[COLOR_nitc__modelbuilder_base__AType___mtype
].val
; /* _mtype on <var_ntype:AType> */
5779 RET_LABEL174
:(void)0;
5782 if (var173
== NULL
) {
5783 var176
= 0; /* is null */
5785 var176
= 1; /* arg is null and recv is not */
5788 { /* Inline kernel#Object#!= (var173,((val*)NULL)) on <var173:nullable MType> */
5789 var_other25
= ((val
*)NULL
);
5791 var179
= ((short int(*)(val
* self
, val
* p0
))(var173
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var173
, var_other25
); /* == on <var173:nullable MType(MType)>*/
5796 RET_LABEL178
:(void)0;
5802 var181
= nitc___nitc__ModelBuilder___resolve_mtype(self
, var_mmodule
, var_mclassdef128
, var_ntype
);
5805 if (var_mtype
== NULL
) {
5806 var182
= 1; /* is null */
5808 var182
= 0; /* arg is null but recv is not */
5811 { /* Inline kernel#Object#== (var_mtype,((val*)NULL)) on <var_mtype:nullable MType> */
5812 var_other
= ((val
*)NULL
);
5814 { /* Inline kernel#Object#is_same_instance (var_mtype,var_other) on <var_mtype:nullable MType(MType)> */
5815 var187
= var_mtype
== var_other
;
5818 RET_LABEL186
:(void)0;
5823 RET_LABEL184
:(void)0;
5834 ((void(*)(val
* self
))((((long)var_166
&3)?class_info
[((long)var_166
&3)]:var_166
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_166
); /* next on <var_166:IndexedIterator[ASuperPropdef]>*/
5837 BREAK_label168
: (void)0;
5839 ((void(*)(val
* self
))((((long)var_166
&3)?class_info
[((long)var_166
&3)]:var_166
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_166
); /* finish on <var_166:IndexedIterator[ASuperPropdef]>*/
5844 ((void(*)(val
* self
))((((long)var_117
&3)?class_info
[((long)var_117
&3)]:var_117
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_117
); /* next on <var_117:Iterator[AClassdef]>*/
5847 BREAK_label119
: (void)0;
5849 ((void(*)(val
* self
))((((long)var_117
&3)?class_info
[((long)var_117
&3)]:var_117
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_117
); /* finish on <var_117:Iterator[AClassdef]>*/
5852 { /* Inline parser_nodes#AModule#n_classdefs (var_nmodule) on <var_nmodule:AModule> */
5853 var190
= var_nmodule
->attrs
[COLOR_nitc__parser_nodes__AModule___n_classdefs
].val
; /* _n_classdefs on <var_nmodule:AModule> */
5854 if (unlikely(var190
== NULL
)) {
5855 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_classdefs");
5856 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1062);
5860 RET_LABEL189
:(void)0;
5865 var192
= nitc___nitc__ANodes___core__abstract_collection__Collection__iterator(var_191
);
5870 var194
= ((short int(*)(val
* self
))((((long)var_193
&3)?class_info
[((long)var_193
&3)]:var_193
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_193
); /* is_ok on <var_193:Iterator[AClassdef]>*/
5874 goto BREAK_label195
;
5877 var196
= ((val
*(*)(val
* self
))((((long)var_193
&3)?class_info
[((long)var_193
&3)]:var_193
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_193
); /* item on <var_193:Iterator[AClassdef]>*/
5879 var_nclassdef197
= var196
;
5881 { /* Inline modelize_class#AClassdef#mclassdef (var_nclassdef197) on <var_nclassdef197:AClassdef> */
5882 var200
= var_nclassdef197
->attrs
[COLOR_nitc__modelize_class__AClassdef___mclassdef
].val
; /* _mclassdef on <var_nclassdef197:AClassdef> */
5884 RET_LABEL199
:(void)0;
5887 var_mclassdef201
= var198
;
5888 if (var_mclassdef201
== NULL
) {
5889 var202
= 1; /* is null */
5891 var202
= 0; /* arg is null but recv is not */
5894 { /* Inline kernel#Object#== (var_mclassdef201,((val*)NULL)) on <var_mclassdef201:nullable MClassDef> */
5895 var_other
= ((val
*)NULL
);
5897 { /* Inline kernel#Object#is_same_instance (var_mclassdef201,var_other) on <var_mclassdef201:nullable MClassDef(MClassDef)> */
5898 var207
= var_mclassdef201
== var_other
;
5901 RET_LABEL206
:(void)0;
5906 RET_LABEL204
:(void)0;
5911 goto BREAK_label208
;
5914 var209
= NEW_core__HashMap(&type_core__HashMap__nitc__MClass__nitc__MClassType
);
5916 core___core__HashMap___core__kernel__Object__init(var209
); /* Direct call hash_collection#HashMap#init on <var209:HashMap[MClass, MClassType]>*/
5918 var_superclasses
= var209
;
5920 { /* Inline model#MClassDef#in_hierarchy (var_mclassdef201) on <var_mclassdef201:nullable MClassDef(MClassDef)> */
5921 var212
= var_mclassdef201
->attrs
[COLOR_nitc__model__MClassDef___in_hierarchy
].val
; /* _in_hierarchy on <var_mclassdef201:nullable MClassDef(MClassDef)> */
5923 RET_LABEL211
:(void)0;
5926 if (var210
== NULL
) {
5927 PRINT_ERROR("Runtime error: %s", "Receiver is null");
5928 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelize_class
, 378);
5931 var213
= poset___poset__POSetElement___greaters(var210
);
5935 var215
= ((val
*(*)(val
* self
))((((long)var_214
&3)?class_info
[((long)var_214
&3)]:var_214
->class)->vft
[COLOR_core__abstract_collection__Collection__iterator
]))(var_214
); /* iterator on <var_214:Collection[MClassDef]>*/
5940 var217
= ((short int(*)(val
* self
))((((long)var_216
&3)?class_info
[((long)var_216
&3)]:var_216
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_216
); /* is_ok on <var_216:Iterator[MClassDef]>*/
5944 goto BREAK_label218
;
5947 var219
= ((val
*(*)(val
* self
))((((long)var_216
&3)?class_info
[((long)var_216
&3)]:var_216
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_216
); /* item on <var_216:Iterator[MClassDef]>*/
5951 { /* Inline model#MClassDef#supertypes (var_scd) on <var_scd:MClassDef> */
5952 var222
= var_scd
->attrs
[COLOR_nitc__model__MClassDef___supertypes
].val
; /* _supertypes on <var_scd:MClassDef> */
5953 if (unlikely(var222
== NULL
)) {
5954 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _supertypes");
5955 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 650);
5959 RET_LABEL221
:(void)0;
5964 var224
= core___core__AbstractArrayRead___core__abstract_collection__Collection__iterator(var_223
);
5969 var226
= ((short int(*)(val
* self
))((((long)var_225
&3)?class_info
[((long)var_225
&3)]:var_225
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_225
); /* is_ok on <var_225:IndexedIterator[MClassType]>*/
5973 goto BREAK_label227
;
5976 var228
= ((val
*(*)(val
* self
))((((long)var_225
&3)?class_info
[((long)var_225
&3)]:var_225
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_225
); /* item on <var_225:IndexedIterator[MClassType]>*/
5980 { /* Inline model#MClassType#mclass (var_st) on <var_st:MClassType> */
5981 var231
= var_st
->attrs
[COLOR_nitc__model__MClassType___mclass
].val
; /* _mclass on <var_st:MClassType> */
5982 if (unlikely(var231
== NULL
)) {
5983 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
5984 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1163);
5988 RET_LABEL230
:(void)0;
5992 var232
= core___core__HashMap___core__abstract_collection__MapRead__has_key(var_superclasses
, var229
);
5997 { /* Inline model#MClassType#mclass (var_st) on <var_st:MClassType> */
5998 var236
= var_st
->attrs
[COLOR_nitc__model__MClassType___mclass
].val
; /* _mclass on <var_st:MClassType> */
5999 if (unlikely(var236
== NULL
)) {
6000 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
6001 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1163);
6005 RET_LABEL235
:(void)0;
6009 core___core__HashMap___core__abstract_collection__Map___91d_93d_61d(var_superclasses
, var234
, var_st
); /* Direct call hash_collection#HashMap#[]= on <var_superclasses:HashMap[MClass, MClassType]>*/
6013 { /* Inline model#MClassType#mclass (var_st) on <var_st:MClassType> */
6014 var239
= var_st
->attrs
[COLOR_nitc__model__MClassType___mclass
].val
; /* _mclass on <var_st:MClassType> */
6015 if (unlikely(var239
== NULL
)) {
6016 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
6017 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1163);
6021 RET_LABEL238
:(void)0;
6025 var240
= core___core__HashMap___core__abstract_collection__MapRead___91d_93d(var_superclasses
, var237
);
6028 { /* Inline kernel#Object#!= (var240,var_st) on <var240:nullable Object(MClassType)> */
6029 var_other25
= var_st
;
6031 var243
= ((short int(*)(val
* self
, val
* p0
))(var240
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var240
, var_other25
); /* == on <var240:nullable Object(MClassType)>*/
6036 RET_LABEL242
:(void)0;
6041 { /* Inline model#MClassType#mclass (var_st) on <var_st:MClassType> */
6042 var247
= var_st
->attrs
[COLOR_nitc__model__MClassType___mclass
].val
; /* _mclass on <var_st:MClassType> */
6043 if (unlikely(var247
== NULL
)) {
6044 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
6045 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1163);
6049 RET_LABEL246
:(void)0;
6053 var248
= core___core__HashMap___core__abstract_collection__MapRead___91d_93d(var_superclasses
, var245
);
6056 { /* Inline model#MClassDef#mclass (var_mclassdef201) on <var_mclassdef201:nullable MClassDef(MClassDef)> */
6057 var251
= var_mclassdef201
->attrs
[COLOR_nitc__model__MClassDef___mclass
].val
; /* _mclass on <var_mclassdef201:nullable MClassDef(MClassDef)> */
6058 if (unlikely(var251
== NULL
)) {
6059 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
6060 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 576);
6064 RET_LABEL250
:(void)0;
6068 { /* Inline model#MClass#mclass_type (var249) on <var249:MClass> */
6069 var254
= var249
->attrs
[COLOR_nitc__model__MClass___mclass_type
].val
; /* _mclass_type on <var249:MClass> */
6070 if (unlikely(var254
== NULL
)) {
6071 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass_type");
6072 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 507);
6076 RET_LABEL253
:(void)0;
6080 { /* Inline model#MClassDef#bound_mtype (var_mclassdef201) on <var_mclassdef201:nullable MClassDef(MClassDef)> */
6081 var257
= var_mclassdef201
->attrs
[COLOR_nitc__model__MClassDef___bound_mtype
].val
; /* _bound_mtype on <var_mclassdef201:nullable MClassDef(MClassDef)> */
6082 if (unlikely(var257
== NULL
)) {
6083 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _bound_mtype");
6084 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 579);
6088 RET_LABEL256
:(void)0;
6092 var258
= ((val
*(*)(val
* self
, val
* p0
, val
* p1
, val
* p2
, short int p3
))(var248
->class->vft
[COLOR_nitc__model__MType__resolve_for
]))(var248
, var252
, var255
, var_mmodule
, 0); /* resolve_for on <var248:nullable Object(MClassType)>*/
6096 { /* Inline model#MClassDef#mclass (var_mclassdef201) on <var_mclassdef201:nullable MClassDef(MClassDef)> */
6097 var261
= var_mclassdef201
->attrs
[COLOR_nitc__model__MClassDef___mclass
].val
; /* _mclass on <var_mclassdef201:nullable MClassDef(MClassDef)> */
6098 if (unlikely(var261
== NULL
)) {
6099 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
6100 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 576);
6104 RET_LABEL260
:(void)0;
6108 { /* Inline model#MClass#mclass_type (var259) on <var259:MClass> */
6109 var264
= var259
->attrs
[COLOR_nitc__model__MClass___mclass_type
].val
; /* _mclass_type on <var259:MClass> */
6110 if (unlikely(var264
== NULL
)) {
6111 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass_type");
6112 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 507);
6116 RET_LABEL263
:(void)0;
6120 { /* Inline model#MClassDef#bound_mtype (var_mclassdef201) on <var_mclassdef201:nullable MClassDef(MClassDef)> */
6121 var267
= var_mclassdef201
->attrs
[COLOR_nitc__model__MClassDef___bound_mtype
].val
; /* _bound_mtype on <var_mclassdef201:nullable MClassDef(MClassDef)> */
6122 if (unlikely(var267
== NULL
)) {
6123 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _bound_mtype");
6124 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 579);
6128 RET_LABEL266
:(void)0;
6132 var268
= ((val
*(*)(val
* self
, val
* p0
, val
* p1
, val
* p2
, short int p3
))(var_st
->class->vft
[COLOR_nitc__model__MType__resolve_for
]))(var_st
, var262
, var265
, var_mmodule
, 0); /* resolve_for on <var_st:MClassType>*/
6136 { /* Inline kernel#Object#!= (var_st1,var_st2) on <var_st1:MClassType> */
6137 var_other25
= var_st2
;
6139 var271
= ((short int(*)(val
* self
, val
* p0
))(var_st1
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_st1
, var_other25
); /* == on <var_st1:MClassType>*/
6144 RET_LABEL270
:(void)0;
6148 if (unlikely(varonce
==NULL
)) {
6149 var273
= NEW_core__NativeArray(7l, &type_core__NativeArray__core__String
);
6150 if (likely(varonce274
!=NULL
)) {
6151 var275
= varonce274
;
6153 var276
= "Error: incompatible ancestors for `";
6154 var277
= core__flat___NativeString___to_s_full(var276
, 35l, 35l);
6156 varonce274
= var275
;
6158 ((struct instance_core__NativeArray
*)var273
)->values
[0]=var275
;
6159 if (likely(varonce278
!=NULL
)) {
6160 var279
= varonce278
;
6162 var280
= "`; conflict: `";
6163 var281
= core__flat___NativeString___to_s_full(var280
, 14l, 14l);
6165 varonce278
= var279
;
6167 ((struct instance_core__NativeArray
*)var273
)->values
[2]=var279
;
6168 if (likely(varonce282
!=NULL
)) {
6169 var283
= varonce282
;
6172 var285
= core__flat___NativeString___to_s_full(var284
, 7l, 7l);
6174 varonce282
= var283
;
6176 ((struct instance_core__NativeArray
*)var273
)->values
[4]=var283
;
6177 if (likely(varonce286
!=NULL
)) {
6178 var287
= varonce286
;
6181 var289
= core__flat___NativeString___to_s_full(var288
, 1l, 1l);
6183 varonce286
= var287
;
6185 ((struct instance_core__NativeArray
*)var273
)->values
[6]=var287
;
6191 { /* Inline model#MClassDef#mclass (var_mclassdef201) on <var_mclassdef201:nullable MClassDef(MClassDef)> */
6192 var292
= var_mclassdef201
->attrs
[COLOR_nitc__model__MClassDef___mclass
].val
; /* _mclass on <var_mclassdef201:nullable MClassDef(MClassDef)> */
6193 if (unlikely(var292
== NULL
)) {
6194 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
6195 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 576);
6199 RET_LABEL291
:(void)0;
6203 var293
= ((val
*(*)(val
* self
))(var290
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var290
); /* to_s on <var290:MClass>*/
6205 ((struct instance_core__NativeArray
*)var273
)->values
[1]=var293
;
6207 var294
= ((val
*(*)(val
* self
))(var_st1
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_st1
); /* to_s on <var_st1:MClassType>*/
6209 ((struct instance_core__NativeArray
*)var273
)->values
[3]=var294
;
6211 var295
= ((val
*(*)(val
* self
))(var_st2
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_st2
); /* to_s on <var_st2:MClassType>*/
6213 ((struct instance_core__NativeArray
*)var273
)->values
[5]=var295
;
6215 var296
= ((val
*(*)(val
* self
))(var273
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var273
); /* native_to_s on <var273:NativeArray[String]>*/
6219 nitc___nitc__ModelBuilder___error(self
, var_nclassdef197
, var296
); /* Direct call modelbuilder_base#ModelBuilder#error on <self:ModelBuilder>*/
6227 ((void(*)(val
* self
))((((long)var_225
&3)?class_info
[((long)var_225
&3)]:var_225
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_225
); /* next on <var_225:IndexedIterator[MClassType]>*/
6230 BREAK_label227
: (void)0;
6232 ((void(*)(val
* self
))((((long)var_225
&3)?class_info
[((long)var_225
&3)]:var_225
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_225
); /* finish on <var_225:IndexedIterator[MClassType]>*/
6235 ((void(*)(val
* self
))((((long)var_216
&3)?class_info
[((long)var_216
&3)]:var_216
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_216
); /* next on <var_216:Iterator[MClassDef]>*/
6238 BREAK_label218
: (void)0;
6240 ((void(*)(val
* self
))((((long)var_216
&3)?class_info
[((long)var_216
&3)]:var_216
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_216
); /* finish on <var_216:Iterator[MClassDef]>*/
6242 BREAK_label208
: (void)0;
6244 ((void(*)(val
* self
))((((long)var_193
&3)?class_info
[((long)var_193
&3)]:var_193
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_193
); /* next on <var_193:Iterator[AClassdef]>*/
6247 BREAK_label195
: (void)0;
6249 ((void(*)(val
* self
))((((long)var_193
&3)?class_info
[((long)var_193
&3)]:var_193
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_193
); /* finish on <var_193:Iterator[AClassdef]>*/
6252 { /* Inline parser_nodes#AModule#n_classdefs (var_nmodule) on <var_nmodule:AModule> */
6253 var299
= var_nmodule
->attrs
[COLOR_nitc__parser_nodes__AModule___n_classdefs
].val
; /* _n_classdefs on <var_nmodule:AModule> */
6254 if (unlikely(var299
== NULL
)) {
6255 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_classdefs");
6256 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1062);
6260 RET_LABEL298
:(void)0;
6265 var301
= nitc___nitc__ANodes___core__abstract_collection__Collection__iterator(var_300
);
6270 var303
= ((short int(*)(val
* self
))((((long)var_302
&3)?class_info
[((long)var_302
&3)]:var_302
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_302
); /* is_ok on <var_302:Iterator[AClassdef]>*/
6274 goto BREAK_label304
;
6277 var305
= ((val
*(*)(val
* self
))((((long)var_302
&3)?class_info
[((long)var_302
&3)]:var_302
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_302
); /* item on <var_302:Iterator[AClassdef]>*/
6279 var_nclassdef306
= var305
;
6280 /* <var_nclassdef306:AClassdef> isa AStdClassdef */
6281 cltype309
= type_nitc__AStdClassdef
.color
;
6282 idtype310
= type_nitc__AStdClassdef
.id
;
6283 if(cltype309
>= var_nclassdef306
->type
->table_size
) {
6286 var308
= var_nclassdef306
->type
->type_table
[cltype309
] == idtype310
;
6294 { /* Inline modelbuilder_base#ANode#is_broken (var_nclassdef306) on <var_nclassdef306:AClassdef(AStdClassdef)> */
6295 var315
= var_nclassdef306
->attrs
[COLOR_nitc__modelbuilder_base__ANode___is_broken
].s
; /* _is_broken on <var_nclassdef306:AClassdef(AStdClassdef)> */
6297 RET_LABEL314
:(void)0;
6303 goto BREAK_label316
;
6307 { /* Inline modelize_class#AClassdef#mclassdef (var_nclassdef306) on <var_nclassdef306:AClassdef(AStdClassdef)> */
6308 var319
= var_nclassdef306
->attrs
[COLOR_nitc__modelize_class__AClassdef___mclassdef
].val
; /* _mclassdef on <var_nclassdef306:AClassdef(AStdClassdef)> */
6310 RET_LABEL318
:(void)0;
6313 var_mclassdef320
= var317
;
6314 if (var_mclassdef320
== NULL
) {
6315 var321
= 1; /* is null */
6317 var321
= 0; /* arg is null but recv is not */
6320 { /* Inline kernel#Object#== (var_mclassdef320,((val*)NULL)) on <var_mclassdef320:nullable MClassDef> */
6321 var_other
= ((val
*)NULL
);
6323 { /* Inline kernel#Object#is_same_instance (var_mclassdef320,var_other) on <var_mclassdef320:nullable MClassDef(MClassDef)> */
6324 var326
= var_mclassdef320
== var_other
;
6327 RET_LABEL325
:(void)0;
6332 RET_LABEL323
:(void)0;
6337 goto BREAK_label316
;
6340 var327
= NEW_core__Array(&type_core__Array__nitc__MClass
);
6342 core___core__Array___core__kernel__Object__init(var327
); /* Direct call array#Array#init on <var327:Array[MClass]>*/
6344 var_parents
= var327
;
6346 { /* Inline model#MClassDef#in_hierarchy (var_mclassdef320) on <var_mclassdef320:nullable MClassDef(MClassDef)> */
6347 var330
= var_mclassdef320
->attrs
[COLOR_nitc__model__MClassDef___in_hierarchy
].val
; /* _in_hierarchy on <var_mclassdef320:nullable MClassDef(MClassDef)> */
6349 RET_LABEL329
:(void)0;
6352 if (var328
== NULL
) {
6353 PRINT_ERROR("Runtime error: %s", "Receiver is null");
6354 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelize_class
, 404);
6357 var331
= poset___poset__POSetElement___direct_greaters(var328
);
6361 var333
= ((val
*(*)(val
* self
))((((long)var_332
&3)?class_info
[((long)var_332
&3)]:var_332
->class)->vft
[COLOR_core__abstract_collection__Collection__iterator
]))(var_332
); /* iterator on <var_332:Collection[MClassDef]>*/
6366 var335
= ((short int(*)(val
* self
))((((long)var_334
&3)?class_info
[((long)var_334
&3)]:var_334
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_334
); /* is_ok on <var_334:Iterator[MClassDef]>*/
6370 goto BREAK_label336
;
6373 var337
= ((val
*(*)(val
* self
))((((long)var_334
&3)?class_info
[((long)var_334
&3)]:var_334
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_334
); /* item on <var_334:Iterator[MClassDef]>*/
6377 { /* Inline model#MClassDef#mclass (var_sup) on <var_sup:MClassDef> */
6378 var340
= var_sup
->attrs
[COLOR_nitc__model__MClassDef___mclass
].val
; /* _mclass on <var_sup:MClassDef> */
6379 if (unlikely(var340
== NULL
)) {
6380 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
6381 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 576);
6385 RET_LABEL339
:(void)0;
6389 core___core__Array___core__abstract_collection__SimpleCollection__add(var_parents
, var338
); /* Direct call array#Array#add on <var_parents:Array[MClass]>*/
6392 ((void(*)(val
* self
))((((long)var_334
&3)?class_info
[((long)var_334
&3)]:var_334
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_334
); /* next on <var_334:Iterator[MClassDef]>*/
6395 BREAK_label336
: (void)0;
6397 ((void(*)(val
* self
))((((long)var_334
&3)?class_info
[((long)var_334
&3)]:var_334
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_334
); /* finish on <var_334:Iterator[MClassDef]>*/
6399 var341
= NEW_core__ArrayMap(&type_core__ArrayMap__nitc__MClass__nitc__AType
);
6401 { /* Inline kernel#Object#init (var341) on <var341:ArrayMap[MClass, AType]> */
6402 RET_LABEL342
:(void)0;
6405 var_seen_parents
= var341
;
6406 if (likely(varonce343
!=NULL
)) {
6407 var344
= varonce343
;
6410 var346
= core__flat___NativeString___to_s_full(var345
, 6l, 6l);
6412 varonce343
= var344
;
6415 var347
= nitc___nitc__ModelBuilder___try_get_mclass_by_name(self
, var_nmodule
, var_mmodule
, var344
);
6417 var_objectclass
= var347
;
6419 var348
= nitc___nitc__AStdClassdef___n_superclasses(var_nclassdef306
);
6423 var350
= core___core__AbstractArrayRead___core__abstract_collection__Collection__iterator(var_349
);
6428 var352
= ((short int(*)(val
* self
))((((long)var_351
&3)?class_info
[((long)var_351
&3)]:var_351
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_351
); /* is_ok on <var_351:IndexedIterator[ASuperPropdef]>*/
6432 goto BREAK_label353
;
6435 var354
= ((val
*(*)(val
* self
))((((long)var_351
&3)?class_info
[((long)var_351
&3)]:var_351
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_351
); /* item on <var_351:IndexedIterator[ASuperPropdef]>*/
6437 var_nsc355
= var354
;
6439 { /* Inline parser_nodes#ASuperPropdef#n_type (var_nsc355) on <var_nsc355:ASuperPropdef> */
6440 var358
= var_nsc355
->attrs
[COLOR_nitc__parser_nodes__ASuperPropdef___n_type
].val
; /* _n_type on <var_nsc355:ASuperPropdef> */
6441 if (unlikely(var358
== NULL
)) {
6442 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_type");
6443 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1369);
6447 RET_LABEL357
:(void)0;
6450 var_ntype359
= var356
;
6452 { /* Inline modelbuilder_base#AType#mtype (var_ntype359) on <var_ntype359:AType> */
6453 var362
= var_ntype359
->attrs
[COLOR_nitc__modelbuilder_base__AType___mtype
].val
; /* _mtype on <var_ntype359:AType> */
6455 RET_LABEL361
:(void)0;
6458 var_mtype363
= var360
;
6459 if (var_mtype363
== NULL
) {
6460 var364
= 1; /* is null */
6462 var364
= 0; /* arg is null but recv is not */
6465 { /* Inline kernel#Object#== (var_mtype363,((val*)NULL)) on <var_mtype363:nullable MType> */
6466 var_other
= ((val
*)NULL
);
6468 { /* Inline kernel#Object#is_same_instance (var_mtype363,var_other) on <var_mtype363:nullable MType(MType)> */
6469 var369
= var_mtype363
== var_other
;
6472 RET_LABEL368
:(void)0;
6477 RET_LABEL366
:(void)0;
6482 goto BREAK_label370
;
6485 /* <var_mtype363:nullable MType(MType)> isa MClassType */
6486 cltype372
= type_nitc__MClassType
.color
;
6487 idtype373
= type_nitc__MClassType
.id
;
6488 if(cltype372
>= var_mtype363
->type
->table_size
) {
6491 var371
= var_mtype363
->type
->type_table
[cltype372
] == idtype373
;
6493 if (unlikely(!var371
)) {
6494 PRINT_ERROR("Runtime error: %s", "Assert failed");
6495 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelize_class
, 419);
6499 { /* Inline model#MClassType#mclass (var_mtype363) on <var_mtype363:nullable MType(MClassType)> */
6500 var376
= var_mtype363
->attrs
[COLOR_nitc__model__MClassType___mclass
].val
; /* _mclass on <var_mtype363:nullable MType(MClassType)> */
6501 if (unlikely(var376
== NULL
)) {
6502 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
6503 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1163);
6507 RET_LABEL375
:(void)0;
6512 var378
= core___core__AbstractArrayRead___core__abstract_collection__Collection__has(var_parents
, var_sc
);
6520 { /* Inline kernel#Object#== (var_sc,var_objectclass) on <var_sc:MClass> */
6521 var_other
= var_objectclass
;
6523 { /* Inline kernel#Object#is_same_instance (var_sc,var_other) on <var_sc:MClass> */
6524 var385
= var_sc
== var_other
;
6527 RET_LABEL384
:(void)0;
6532 RET_LABEL382
:(void)0;
6539 { /* Inline parser_nodes#ANode#location (var_ntype359) on <var_ntype359:AType> */
6540 var389
= var_ntype359
->attrs
[COLOR_nitc__parser_nodes__ANode___location
].val
; /* _location on <var_ntype359:AType> */
6541 if (unlikely(var389
== NULL
)) {
6542 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _location");
6543 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 24);
6547 RET_LABEL388
:(void)0;
6551 { /* Inline location#Location#file (var387) on <var387:Location> */
6552 var392
= var387
->attrs
[COLOR_nitc__location__Location___file
].val
; /* _file on <var387:Location> */
6554 RET_LABEL391
:(void)0;
6557 if (var390
== NULL
) {
6558 var393
= 0; /* is null */
6560 var393
= 1; /* arg is null and recv is not */
6563 { /* Inline kernel#Object#!= (var390,((val*)NULL)) on <var390:nullable SourceFile> */
6564 var_other25
= ((val
*)NULL
);
6566 var396
= ((short int(*)(val
* self
, val
* p0
))(var390
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var390
, var_other25
); /* == on <var390:nullable SourceFile(SourceFile)>*/
6571 RET_LABEL395
:(void)0;
6578 { /* Inline parser_nodes#ANode#location (var_ntype359) on <var_ntype359:AType> */
6579 var401
= var_ntype359
->attrs
[COLOR_nitc__parser_nodes__ANode___location
].val
; /* _location on <var_ntype359:AType> */
6580 if (unlikely(var401
== NULL
)) {
6581 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _location");
6582 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 24);
6586 RET_LABEL400
:(void)0;
6590 { /* Inline location#Location#file (var399) on <var399:Location> */
6591 var404
= var399
->attrs
[COLOR_nitc__location__Location___file
].val
; /* _file on <var399:Location> */
6593 RET_LABEL403
:(void)0;
6596 if (var402
== NULL
) {
6597 PRINT_ERROR("Runtime error: %s", "Receiver is null");
6598 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelize_class
, 423);
6601 { /* Inline location#SourceFile#filename (var402) on <var402:nullable SourceFile> */
6602 if (unlikely(var402
== NULL
)) {
6603 PRINT_ERROR("Runtime error: %s", "Receiver is null");
6604 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__location
, 22);
6607 var407
= var402
->attrs
[COLOR_nitc__location__SourceFile___filename
].val
; /* _filename on <var402:nullable SourceFile> */
6608 if (unlikely(var407
== NULL
)) {
6609 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _filename");
6610 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__location
, 22);
6614 RET_LABEL406
:(void)0;
6618 var408
= ((short int(*)(val
* self
))(var405
->class->vft
[COLOR_core__abstract_text__Text__is_empty
]))(var405
); /* is_empty on <var405:String>*/
6626 if (likely(varonce410
!=NULL
)) {
6627 var411
= varonce410
;
6629 var412
= "useless-superclass";
6630 var413
= core__flat___NativeString___to_s_full(var412
, 18l, 18l);
6632 varonce410
= var411
;
6634 if (unlikely(varonce414
==NULL
)) {
6635 var415
= NEW_core__NativeArray(5l, &type_core__NativeArray__core__String
);
6636 if (likely(varonce416
!=NULL
)) {
6637 var417
= varonce416
;
6639 var418
= "Warning: superfluous super-class `";
6640 var419
= core__flat___NativeString___to_s_full(var418
, 34l, 34l);
6642 varonce416
= var417
;
6644 ((struct instance_core__NativeArray
*)var415
)->values
[0]=var417
;
6645 if (likely(varonce420
!=NULL
)) {
6646 var421
= varonce420
;
6648 var422
= "` in class `";
6649 var423
= core__flat___NativeString___to_s_full(var422
, 12l, 12l);
6651 varonce420
= var421
;
6653 ((struct instance_core__NativeArray
*)var415
)->values
[2]=var421
;
6654 if (likely(varonce424
!=NULL
)) {
6655 var425
= varonce424
;
6658 var427
= core__flat___NativeString___to_s_full(var426
, 2l, 2l);
6660 varonce424
= var425
;
6662 ((struct instance_core__NativeArray
*)var415
)->values
[4]=var425
;
6664 var415
= varonce414
;
6668 var428
= ((val
*(*)(val
* self
))(var_mtype363
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_mtype363
); /* to_s on <var_mtype363:nullable MType(MClassType)>*/
6670 ((struct instance_core__NativeArray
*)var415
)->values
[1]=var428
;
6672 { /* Inline model#MClassDef#mclass (var_mclassdef320) on <var_mclassdef320:nullable MClassDef(MClassDef)> */
6673 var431
= var_mclassdef320
->attrs
[COLOR_nitc__model__MClassDef___mclass
].val
; /* _mclass on <var_mclassdef320:nullable MClassDef(MClassDef)> */
6674 if (unlikely(var431
== NULL
)) {
6675 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
6676 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 576);
6680 RET_LABEL430
:(void)0;
6684 var432
= ((val
*(*)(val
* self
))(var429
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var429
); /* to_s on <var429:MClass>*/
6686 ((struct instance_core__NativeArray
*)var415
)->values
[3]=var432
;
6688 var433
= ((val
*(*)(val
* self
))(var415
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var415
); /* native_to_s on <var415:NativeArray[String]>*/
6690 varonce414
= var415
;
6692 nitc___nitc__ModelBuilder___warning(self
, var_ntype359
, var411
, var433
); /* Direct call modelbuilder_base#ModelBuilder#warning on <self:ModelBuilder>*/
6698 var434
= core___core__CoupleMap___MapRead__has_key(var_seen_parents
, var_sc
);
6703 core___core__ArrayMap___core__abstract_collection__Map___91d_93d_61d(var_seen_parents
, var_sc
, var_ntype359
); /* Direct call array#ArrayMap#[]= on <var_seen_parents:ArrayMap[MClass, AType]>*/
6706 if (likely(varonce436
!=NULL
)) {
6707 var437
= varonce436
;
6709 var438
= "useless-superclass";
6710 var439
= core__flat___NativeString___to_s_full(var438
, 18l, 18l);
6712 varonce436
= var437
;
6714 if (unlikely(varonce440
==NULL
)) {
6715 var441
= NEW_core__NativeArray(5l, &type_core__NativeArray__core__String
);
6716 if (likely(varonce442
!=NULL
)) {
6717 var443
= varonce442
;
6719 var444
= "Warning: duplicated super-class `";
6720 var445
= core__flat___NativeString___to_s_full(var444
, 33l, 33l);
6722 varonce442
= var443
;
6724 ((struct instance_core__NativeArray
*)var441
)->values
[0]=var443
;
6725 if (likely(varonce446
!=NULL
)) {
6726 var447
= varonce446
;
6728 var448
= "` in class `";
6729 var449
= core__flat___NativeString___to_s_full(var448
, 12l, 12l);
6731 varonce446
= var447
;
6733 ((struct instance_core__NativeArray
*)var441
)->values
[2]=var447
;
6734 if (likely(varonce450
!=NULL
)) {
6735 var451
= varonce450
;
6738 var453
= core__flat___NativeString___to_s_full(var452
, 2l, 2l);
6740 varonce450
= var451
;
6742 ((struct instance_core__NativeArray
*)var441
)->values
[4]=var451
;
6744 var441
= varonce440
;
6748 var454
= ((val
*(*)(val
* self
))(var_mtype363
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_mtype363
); /* to_s on <var_mtype363:nullable MType(MClassType)>*/
6750 ((struct instance_core__NativeArray
*)var441
)->values
[1]=var454
;
6752 { /* Inline model#MClassDef#mclass (var_mclassdef320) on <var_mclassdef320:nullable MClassDef(MClassDef)> */
6753 var457
= var_mclassdef320
->attrs
[COLOR_nitc__model__MClassDef___mclass
].val
; /* _mclass on <var_mclassdef320:nullable MClassDef(MClassDef)> */
6754 if (unlikely(var457
== NULL
)) {
6755 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
6756 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 576);
6760 RET_LABEL456
:(void)0;
6764 var458
= ((val
*(*)(val
* self
))(var455
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var455
); /* to_s on <var455:MClass>*/
6766 ((struct instance_core__NativeArray
*)var441
)->values
[3]=var458
;
6768 var459
= ((val
*(*)(val
* self
))(var441
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var441
); /* native_to_s on <var441:NativeArray[String]>*/
6770 varonce440
= var441
;
6772 nitc___nitc__ModelBuilder___warning(self
, var_ntype359
, var437
, var459
); /* Direct call modelbuilder_base#ModelBuilder#warning on <self:ModelBuilder>*/
6776 BREAK_label370
: (void)0;
6778 ((void(*)(val
* self
))((((long)var_351
&3)?class_info
[((long)var_351
&3)]:var_351
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_351
); /* next on <var_351:IndexedIterator[ASuperPropdef]>*/
6781 BREAK_label353
: (void)0;
6783 ((void(*)(val
* self
))((((long)var_351
&3)?class_info
[((long)var_351
&3)]:var_351
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_351
); /* finish on <var_351:IndexedIterator[ASuperPropdef]>*/
6785 BREAK_label316
: (void)0;
6787 ((void(*)(val
* self
))((((long)var_302
&3)?class_info
[((long)var_302
&3)]:var_302
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_302
); /* next on <var_302:Iterator[AClassdef]>*/
6790 BREAK_label304
: (void)0;
6792 ((void(*)(val
* self
))((((long)var_302
&3)?class_info
[((long)var_302
&3)]:var_302
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_302
); /* finish on <var_302:Iterator[AClassdef]>*/
6796 /* method modelize_class#ModelBuilder#mclassdef2nclassdef for (self: ModelBuilder): HashMap[MClassDef, AClassdef] */
6797 val
* nitc__modelize_class___ModelBuilder___mclassdef2nclassdef(val
* self
) {
6798 val
* var
/* : HashMap[MClassDef, AClassdef] */;
6799 val
* var1
/* : HashMap[MClassDef, AClassdef] */;
6800 var1
= self
->attrs
[COLOR_nitc__modelize_class__ModelBuilder___mclassdef2nclassdef
].val
; /* _mclassdef2nclassdef on <self:ModelBuilder> */
6801 if (unlikely(var1
== NULL
)) {
6802 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef2nclassdef");
6803 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelize_class
, 435);
6810 /* method modelize_class#AModule#build_classes_is_done for (self: AModule): Bool */
6811 short int nitc__modelize_class___AModule___build_classes_is_done(val
* self
) {
6812 short int var
/* : Bool */;
6813 short int var1
/* : Bool */;
6814 var1
= self
->attrs
[COLOR_nitc__modelize_class__AModule___build_classes_is_done
].s
; /* _build_classes_is_done on <self:AModule> */
6819 /* method modelize_class#AModule#build_classes_is_done= for (self: AModule, Bool) */
6820 void nitc__modelize_class___AModule___build_classes_is_done_61d(val
* self
, short int p0
) {
6821 self
->attrs
[COLOR_nitc__modelize_class__AModule___build_classes_is_done
].s
= p0
; /* _build_classes_is_done on <self:AModule> */
6824 /* method modelize_class#AModule#mclass2nclassdef for (self: AModule): Map[MClass, AClassdef] */
6825 val
* nitc__modelize_class___AModule___mclass2nclassdef(val
* self
) {
6826 val
* var
/* : Map[MClass, AClassdef] */;
6827 val
* var1
/* : Map[MClass, AClassdef] */;
6828 var1
= self
->attrs
[COLOR_nitc__modelize_class__AModule___mclass2nclassdef
].val
; /* _mclass2nclassdef on <self:AModule> */
6829 if (unlikely(var1
== NULL
)) {
6830 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass2nclassdef");
6831 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelize_class
, 450);
6838 /* method modelize_class#AClassdef#mclass for (self: AClassdef): nullable MClass */
6839 val
* nitc__modelize_class___AClassdef___mclass(val
* self
) {
6840 val
* var
/* : nullable MClass */;
6841 val
* var1
/* : nullable MClass */;
6842 var1
= self
->attrs
[COLOR_nitc__modelize_class__AClassdef___mclass
].val
; /* _mclass on <self:AClassdef> */
6847 /* method modelize_class#AClassdef#mclass= for (self: AClassdef, nullable MClass) */
6848 void nitc__modelize_class___AClassdef___mclass_61d(val
* self
, val
* p0
) {
6849 self
->attrs
[COLOR_nitc__modelize_class__AClassdef___mclass
].val
= p0
; /* _mclass on <self:AClassdef> */
6852 /* method modelize_class#AClassdef#mclassdef for (self: AClassdef): nullable MClassDef */
6853 val
* nitc__modelize_class___AClassdef___mclassdef(val
* self
) {
6854 val
* var
/* : nullable MClassDef */;
6855 val
* var1
/* : nullable MClassDef */;
6856 var1
= self
->attrs
[COLOR_nitc__modelize_class__AClassdef___mclassdef
].val
; /* _mclassdef on <self:AClassdef> */
6861 /* method modelize_class#AClassdef#mclassdef= for (self: AClassdef, nullable MClassDef) */
6862 void nitc__modelize_class___AClassdef___mclassdef_61d(val
* self
, val
* p0
) {
6863 self
->attrs
[COLOR_nitc__modelize_class__AClassdef___mclassdef
].val
= p0
; /* _mclassdef on <self:AClassdef> */
6866 /* method modelize_class#AClassdef#all_defs for (self: AClassdef): nullable Array[AClassdef] */
6867 val
* nitc__modelize_class___AClassdef___all_defs(val
* self
) {
6868 val
* var
/* : nullable Array[AClassdef] */;
6869 val
* var1
/* : nullable Array[AClassdef] */;
6870 var1
= self
->attrs
[COLOR_nitc__modelize_class__AClassdef___all_defs
].val
; /* _all_defs on <self:AClassdef> */
6875 /* method modelize_class#AClassdef#all_defs= for (self: AClassdef, nullable Array[AClassdef]) */
6876 void nitc__modelize_class___AClassdef___all_defs_61d(val
* self
, val
* p0
) {
6877 self
->attrs
[COLOR_nitc__modelize_class__AClassdef___all_defs
].val
= p0
; /* _all_defs on <self:AClassdef> */
6880 /* method modelize_class#AConcreteClasskind#mkind for (self: AConcreteClasskind): MClassKind */
6881 val
* nitc__modelize_class___AConcreteClasskind___AClasskind__mkind(val
* self
) {
6882 val
* var
/* : MClassKind */;
6883 val
* var1
/* : Sys */;
6884 val
* var2
/* : MClassKind */;
6887 var2
= nitc__model___core__Sys___concrete_kind(var1
);
6894 /* method modelize_class#AAbstractClasskind#mkind for (self: AAbstractClasskind): MClassKind */
6895 val
* nitc__modelize_class___AAbstractClasskind___AClasskind__mkind(val
* self
) {
6896 val
* var
/* : MClassKind */;
6897 val
* var1
/* : Sys */;
6898 val
* var2
/* : MClassKind */;
6901 var2
= nitc__model___core__Sys___abstract_kind(var1
);
6908 /* method modelize_class#AInterfaceClasskind#mkind for (self: AInterfaceClasskind): MClassKind */
6909 val
* nitc__modelize_class___AInterfaceClasskind___AClasskind__mkind(val
* self
) {
6910 val
* var
/* : MClassKind */;
6911 val
* var1
/* : Sys */;
6912 val
* var2
/* : MClassKind */;
6915 var2
= nitc__model___core__Sys___interface_kind(var1
);
6922 /* method modelize_class#AEnumClasskind#mkind for (self: AEnumClasskind): MClassKind */
6923 val
* nitc__modelize_class___AEnumClasskind___AClasskind__mkind(val
* self
) {
6924 val
* var
/* : MClassKind */;
6925 val
* var1
/* : Sys */;
6926 val
* var2
/* : MClassKind */;
6929 var2
= nitc__model___core__Sys___enum_kind(var1
);
6936 /* method modelize_class#AExternClasskind#mkind for (self: AExternClasskind): MClassKind */
6937 val
* nitc__modelize_class___AExternClasskind___AClasskind__mkind(val
* self
) {
6938 val
* var
/* : MClassKind */;
6939 val
* var1
/* : Sys */;
6940 val
* var2
/* : MClassKind */;
6943 var2
= nitc__model___core__Sys___extern_kind(var1
);
6950 /* method modelize_class#AFormaldef#bound= for (self: AFormaldef, nullable MType) */
6951 void nitc__modelize_class___AFormaldef___bound_61d(val
* self
, val
* p0
) {
6952 self
->attrs
[COLOR_nitc__modelize_class__AFormaldef___bound
].val
= p0
; /* _bound on <self:AFormaldef> */