Merge: doc: fixed some typos and other misc. corrections
[nit.git] / c_src / nitc__model.sep.3.c
1 #include "nitc__model.sep.0.h"
2 /* method model$MVirtualTypeProp$mvirtualtype for (self: MVirtualTypeProp): MVirtualType */
3 val* nitc___nitc__MVirtualTypeProp___mvirtualtype(val* self) {
4 val* var /* : MVirtualType */;
5 val* var1 /* : MVirtualType */;
6 var1 = self->attrs[COLOR_nitc__model__MVirtualTypeProp___mvirtualtype].val; /* _mvirtualtype on <self:MVirtualTypeProp> */
7 if (unlikely(var1 == NULL)) {
8 if(catchStack.cursor >= 0){
9 longjmp(catchStack.envs[catchStack.cursor], 1);
10 }
11 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mvirtualtype");
12 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2333);
13 fatal_exit(1);
14 }
15 var = var1;
16 RET_LABEL:;
17 return var;
18 }
19 /* method model$MVirtualTypeProp$is_selftype for (self: MVirtualTypeProp): Bool */
20 short int nitc___nitc__MVirtualTypeProp___is_selftype(val* self) {
21 short int var /* : Bool */;
22 short int var1 /* : Bool */;
23 short int var2 /* : Bool */;
24 short int var3 /* : Bool */;
25 val* var5 /* : String */;
26 val* var7 /* : String */;
27 static val* varonce;
28 val* var8 /* : String */;
29 char* var9 /* : CString */;
30 val* var10 /* : String */;
31 val* var11 /* : nullable Int */;
32 val* var12 /* : nullable Int */;
33 val* var13 /* : nullable Bool */;
34 val* var14 /* : nullable Bool */;
35 short int var15 /* : Bool */;
36 var1 = self->attrs[COLOR_nitc__model__MVirtualTypeProp__lazy_32d_is_selftype].s; /* lazy _is_selftype on <self:MVirtualTypeProp> */
37 if(likely(var1)) {
38 var2 = self->attrs[COLOR_nitc__model__MVirtualTypeProp___is_selftype].s; /* _is_selftype on <self:MVirtualTypeProp> */
39 } else {
40 {
41 {
42 { /* Inline model$MProperty$name (self) on <self:MVirtualTypeProp> */
43 var7 = self->attrs[COLOR_nitc__model__MProperty___name].val; /* _name on <self:MVirtualTypeProp> */
44 if (unlikely(var7 == NULL)) {
45 if(catchStack.cursor >= 0){
46 longjmp(catchStack.envs[catchStack.cursor], 1);
47 }
48 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _name");
49 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2047);
50 fatal_exit(1);
51 }
52 var5 = var7;
53 RET_LABEL6:(void)0;
54 }
55 }
56 if (likely(varonce!=NULL)) {
57 var8 = varonce;
58 } else {
59 var9 = "SELF";
60 var11 = (val*)(4l<<2|1);
61 var12 = (val*)(4l<<2|1);
62 var13 = (val*)((long)(0)<<2|3);
63 var14 = (val*)((long)(0)<<2|3);
64 var10 = core__flat___CString___to_s_unsafe(var9, var11, var12, var13, var14);
65 var8 = var10;
66 varonce = var8;
67 }
68 {
69 var15 = ((short int(*)(val* self, val* p0))(var5->class->vft[COLOR_core__kernel__Object___61d_61d]))(var5, var8); /* == on <var5:String>*/
70 }
71 var3 = var15;
72 goto RET_LABEL4;
73 RET_LABEL4:(void)0;
74 }
75 self->attrs[COLOR_nitc__model__MVirtualTypeProp___is_selftype].s = var3; /* _is_selftype on <self:MVirtualTypeProp> */
76 var2 = var3;
77 self->attrs[COLOR_nitc__model__MVirtualTypeProp__lazy_32d_is_selftype].s = 1; /* lazy _is_selftype on <self:MVirtualTypeProp> */
78 }
79 var = var2;
80 RET_LABEL:;
81 return var;
82 }
83 /* method model$MPropDef$mclassdef for (self: MPropDef): MClassDef */
84 val* nitc___nitc__MPropDef___mclassdef(val* self) {
85 val* var /* : MClassDef */;
86 val* var1 /* : MClassDef */;
87 var1 = self->attrs[COLOR_nitc__model__MPropDef___mclassdef].val; /* _mclassdef on <self:MPropDef> */
88 if (unlikely(var1 == NULL)) {
89 if(catchStack.cursor >= 0){
90 longjmp(catchStack.envs[catchStack.cursor], 1);
91 }
92 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
93 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2354);
94 fatal_exit(1);
95 }
96 var = var1;
97 RET_LABEL:;
98 return var;
99 }
100 /* method model$MPropDef$mclassdef= for (self: MPropDef, MClassDef) */
101 void nitc___nitc__MPropDef___mclassdef_61d(val* self, val* p0) {
102 self->attrs[COLOR_nitc__model__MPropDef___mclassdef].val = p0; /* _mclassdef on <self:MPropDef> */
103 RET_LABEL:;
104 }
105 /* method model$MPropDef$mproperty for (self: MPropDef): MProperty */
106 val* nitc___nitc__MPropDef___mproperty(val* self) {
107 val* var /* : MProperty */;
108 val* var1 /* : MProperty */;
109 var1 = self->attrs[COLOR_nitc__model__MPropDef___mproperty].val; /* _mproperty on <self:MPropDef> */
110 if (unlikely(var1 == NULL)) {
111 if(catchStack.cursor >= 0){
112 longjmp(catchStack.envs[catchStack.cursor], 1);
113 }
114 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
115 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2357);
116 fatal_exit(1);
117 }
118 var = var1;
119 RET_LABEL:;
120 return var;
121 }
122 /* method model$MPropDef$mproperty= for (self: MPropDef, MProperty) */
123 void nitc___nitc__MPropDef___mproperty_61d(val* self, val* p0) {
124 short int var /* : Bool */;
125 int cltype;
126 int idtype;
127 const struct type* type_struct;
128 const char* var_class_name;
129 /* Covariant cast for argument 0 (mproperty) <p0:MProperty> isa MPROPERTY */
130 /* <p0:MProperty> isa MPROPERTY */
131 type_struct = self->type->resolution_table->types[COLOR_nitc__model__MPropDef__MPROPERTY];
132 cltype = type_struct->color;
133 idtype = type_struct->id;
134 if(cltype >= p0->type->table_size) {
135 var = 0;
136 } else {
137 var = p0->type->type_table[cltype] == idtype;
138 }
139 if (unlikely(!var)) {
140 var_class_name = p0 == NULL ? "null" : p0->type->name;
141 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "MPROPERTY", var_class_name);
142 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2357);
143 fatal_exit(1);
144 }
145 self->attrs[COLOR_nitc__model__MPropDef___mproperty].val = p0; /* _mproperty on <self:MPropDef> */
146 RET_LABEL:;
147 }
148 /* method model$MPropDef$location for (self: MPropDef): Location */
149 val* nitc___nitc__MPropDef___nitc__model_base__MEntity__location(val* self) {
150 val* var /* : Location */;
151 val* var1 /* : Location */;
152 var1 = self->attrs[COLOR_nitc__model__MPropDef___location].val; /* _location on <self:MPropDef> */
153 if (unlikely(var1 == NULL)) {
154 if(catchStack.cursor >= 0){
155 longjmp(catchStack.envs[catchStack.cursor], 1);
156 }
157 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _location");
158 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2360);
159 fatal_exit(1);
160 }
161 var = var1;
162 RET_LABEL:;
163 return var;
164 }
165 /* method model$MPropDef$location= for (self: MPropDef, Location) */
166 void nitc___nitc__MPropDef___location_61d(val* self, val* p0) {
167 self->attrs[COLOR_nitc__model__MPropDef___location].val = p0; /* _location on <self:MPropDef> */
168 RET_LABEL:;
169 }
170 /* method model$MPropDef$visibility for (self: MPropDef): MVisibility */
171 val* nitc___nitc__MPropDef___MEntity__visibility(val* self) {
172 val* var /* : MVisibility */;
173 val* var1 /* : MProperty */;
174 val* var3 /* : MProperty */;
175 val* var4 /* : MVisibility */;
176 val* var6 /* : MVisibility */;
177 {
178 { /* Inline model$MPropDef$mproperty (self) on <self:MPropDef> */
179 var3 = self->attrs[COLOR_nitc__model__MPropDef___mproperty].val; /* _mproperty on <self:MPropDef> */
180 if (unlikely(var3 == NULL)) {
181 if(catchStack.cursor >= 0){
182 longjmp(catchStack.envs[catchStack.cursor], 1);
183 }
184 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
185 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2357);
186 fatal_exit(1);
187 }
188 var1 = var3;
189 RET_LABEL2:(void)0;
190 }
191 }
192 {
193 { /* Inline model$MProperty$visibility (var1) on <var1:MProperty> */
194 var6 = var1->attrs[COLOR_nitc__model__MProperty___visibility].val; /* _visibility on <var1:MProperty> */
195 if (unlikely(var6 == NULL)) {
196 if(catchStack.cursor >= 0){
197 longjmp(catchStack.envs[catchStack.cursor], 1);
198 }
199 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _visibility");
200 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2078);
201 fatal_exit(1);
202 }
203 var4 = var6;
204 RET_LABEL5:(void)0;
205 }
206 }
207 var = var4;
208 goto RET_LABEL;
209 RET_LABEL:;
210 return var;
211 }
212 /* method model$MPropDef$init for (self: MPropDef) */
213 void nitc___nitc__MPropDef___core__kernel__Object__init(val* self) {
214 val* var /* : MClassDef */;
215 val* var2 /* : MClassDef */;
216 val* var3 /* : Array[MPropDef] */;
217 val* var5 /* : Array[MPropDef] */;
218 val* var6 /* : MProperty */;
219 val* var8 /* : MProperty */;
220 val* var9 /* : Array[MPropDef] */;
221 val* var11 /* : Array[MPropDef] */;
222 val* var12 /* : MClassDef */;
223 val* var14 /* : MClassDef */;
224 val* var15 /* : HashMap[MProperty, MPropDef] */;
225 val* var17 /* : HashMap[MProperty, MPropDef] */;
226 val* var18 /* : MProperty */;
227 val* var20 /* : MProperty */;
228 val* var21 /* : MProperty */;
229 val* var23 /* : MProperty */;
230 val* var24 /* : MClassDef */;
231 val* var26 /* : MClassDef */;
232 val* var27 /* : MClassDef */;
233 val* var29 /* : MClassDef */;
234 short int var30 /* : Bool */;
235 val* var_other /* var other: nullable Object */;
236 short int var32 /* : Bool */;
237 short int var34 /* : Bool */;
238 val* var35 /* : MProperty */;
239 val* var37 /* : MProperty */;
240 short int var38 /* : Bool */;
241 short int var39 /* : Bool */;
242 val* var40 /* : MProperty */;
243 val* var42 /* : MProperty */;
244 short int var44 /* : Bool */;
245 int cltype;
246 int idtype;
247 const struct type* type_struct;
248 const char* var_class_name;
249 val* var45 /* : NativeArray[String] */;
250 static val* varonce;
251 static val* varonce46;
252 val* var47 /* : String */;
253 char* var48 /* : CString */;
254 val* var49 /* : String */;
255 val* var50 /* : nullable Int */;
256 val* var51 /* : nullable Int */;
257 val* var52 /* : nullable Bool */;
258 val* var53 /* : nullable Bool */;
259 val* var54 /* : MClassDef */;
260 val* var56 /* : MClassDef */;
261 val* var57 /* : String */;
262 val* var58 /* : MProperty */;
263 val* var60 /* : MProperty */;
264 val* var61 /* : String */;
265 val* var62 /* : String */;
266 {
267 ((void(*)(val* self))(self->class->vft[COLOR_nitc___nitc__MPropDef___core__kernel__Object__init]))(self); /* init on <self:MPropDef>*/
268 }
269 {
270 { /* Inline model$MPropDef$mclassdef (self) on <self:MPropDef> */
271 var2 = self->attrs[COLOR_nitc__model__MPropDef___mclassdef].val; /* _mclassdef on <self:MPropDef> */
272 if (unlikely(var2 == NULL)) {
273 if(catchStack.cursor >= 0){
274 longjmp(catchStack.envs[catchStack.cursor], 1);
275 }
276 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
277 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2354);
278 fatal_exit(1);
279 }
280 var = var2;
281 RET_LABEL1:(void)0;
282 }
283 }
284 {
285 { /* Inline model$MClassDef$mpropdefs (var) on <var:MClassDef> */
286 var5 = var->attrs[COLOR_nitc__model__MClassDef___mpropdefs].val; /* _mpropdefs on <var:MClassDef> */
287 if (unlikely(var5 == NULL)) {
288 if(catchStack.cursor >= 0){
289 longjmp(catchStack.envs[catchStack.cursor], 1);
290 }
291 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mpropdefs");
292 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 723);
293 fatal_exit(1);
294 }
295 var3 = var5;
296 RET_LABEL4:(void)0;
297 }
298 }
299 {
300 core___core__Array___core__abstract_collection__SimpleCollection__add(var3, self); /* Direct call array$Array$add on <var3:Array[MPropDef]>*/
301 }
302 {
303 { /* Inline model$MPropDef$mproperty (self) on <self:MPropDef> */
304 var8 = self->attrs[COLOR_nitc__model__MPropDef___mproperty].val; /* _mproperty on <self:MPropDef> */
305 if (unlikely(var8 == NULL)) {
306 if(catchStack.cursor >= 0){
307 longjmp(catchStack.envs[catchStack.cursor], 1);
308 }
309 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
310 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2357);
311 fatal_exit(1);
312 }
313 var6 = var8;
314 RET_LABEL7:(void)0;
315 }
316 }
317 {
318 { /* Inline model$MProperty$mpropdefs (var6) on <var6:MProperty> */
319 var11 = var6->attrs[COLOR_nitc__model__MProperty___mpropdefs].val; /* _mpropdefs on <var6:MProperty> */
320 if (unlikely(var11 == NULL)) {
321 if(catchStack.cursor >= 0){
322 longjmp(catchStack.envs[catchStack.cursor], 1);
323 }
324 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mpropdefs");
325 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2092);
326 fatal_exit(1);
327 }
328 var9 = var11;
329 RET_LABEL10:(void)0;
330 }
331 }
332 {
333 core___core__Array___core__abstract_collection__SimpleCollection__add(var9, self); /* Direct call array$Array$add on <var9:Array[MPropDef]>*/
334 }
335 {
336 { /* Inline model$MPropDef$mclassdef (self) on <self:MPropDef> */
337 var14 = self->attrs[COLOR_nitc__model__MPropDef___mclassdef].val; /* _mclassdef on <self:MPropDef> */
338 if (unlikely(var14 == NULL)) {
339 if(catchStack.cursor >= 0){
340 longjmp(catchStack.envs[catchStack.cursor], 1);
341 }
342 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
343 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2354);
344 fatal_exit(1);
345 }
346 var12 = var14;
347 RET_LABEL13:(void)0;
348 }
349 }
350 {
351 { /* Inline model$MClassDef$mpropdefs_by_property (var12) on <var12:MClassDef> */
352 var17 = var12->attrs[COLOR_nitc__model__MClassDef___mpropdefs_by_property].val; /* _mpropdefs_by_property on <var12:MClassDef> */
353 if (unlikely(var17 == NULL)) {
354 if(catchStack.cursor >= 0){
355 longjmp(catchStack.envs[catchStack.cursor], 1);
356 }
357 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mpropdefs_by_property");
358 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 726);
359 fatal_exit(1);
360 }
361 var15 = var17;
362 RET_LABEL16:(void)0;
363 }
364 }
365 {
366 { /* Inline model$MPropDef$mproperty (self) on <self:MPropDef> */
367 var20 = self->attrs[COLOR_nitc__model__MPropDef___mproperty].val; /* _mproperty on <self:MPropDef> */
368 if (unlikely(var20 == NULL)) {
369 if(catchStack.cursor >= 0){
370 longjmp(catchStack.envs[catchStack.cursor], 1);
371 }
372 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
373 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2357);
374 fatal_exit(1);
375 }
376 var18 = var20;
377 RET_LABEL19:(void)0;
378 }
379 }
380 {
381 core___core__HashMap___core__abstract_collection__Map___91d_93d_61d(var15, var18, self); /* Direct call hash_collection$HashMap$[]= on <var15:HashMap[MProperty, MPropDef]>*/
382 }
383 {
384 { /* Inline model$MPropDef$mproperty (self) on <self:MPropDef> */
385 var23 = self->attrs[COLOR_nitc__model__MPropDef___mproperty].val; /* _mproperty on <self:MPropDef> */
386 if (unlikely(var23 == NULL)) {
387 if(catchStack.cursor >= 0){
388 longjmp(catchStack.envs[catchStack.cursor], 1);
389 }
390 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
391 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2357);
392 fatal_exit(1);
393 }
394 var21 = var23;
395 RET_LABEL22:(void)0;
396 }
397 }
398 {
399 { /* Inline model$MProperty$intro_mclassdef (var21) on <var21:MProperty> */
400 var26 = var21->attrs[COLOR_nitc__model__MProperty___intro_mclassdef].val; /* _intro_mclassdef on <var21:MProperty> */
401 if (unlikely(var26 == NULL)) {
402 if(catchStack.cursor >= 0){
403 longjmp(catchStack.envs[catchStack.cursor], 1);
404 }
405 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _intro_mclassdef");
406 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2042);
407 fatal_exit(1);
408 }
409 var24 = var26;
410 RET_LABEL25:(void)0;
411 }
412 }
413 {
414 { /* Inline model$MPropDef$mclassdef (self) on <self:MPropDef> */
415 var29 = self->attrs[COLOR_nitc__model__MPropDef___mclassdef].val; /* _mclassdef on <self:MPropDef> */
416 if (unlikely(var29 == NULL)) {
417 if(catchStack.cursor >= 0){
418 longjmp(catchStack.envs[catchStack.cursor], 1);
419 }
420 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
421 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2354);
422 fatal_exit(1);
423 }
424 var27 = var29;
425 RET_LABEL28:(void)0;
426 }
427 }
428 {
429 { /* Inline kernel$Object$== (var24,var27) on <var24:MClassDef> */
430 var_other = var27;
431 {
432 { /* Inline kernel$Object$is_same_instance (var24,var_other) on <var24:MClassDef> */
433 var34 = var24 == var_other;
434 var32 = var34;
435 goto RET_LABEL33;
436 RET_LABEL33:(void)0;
437 }
438 }
439 var30 = var32;
440 goto RET_LABEL31;
441 RET_LABEL31:(void)0;
442 }
443 }
444 if (var30){
445 {
446 { /* Inline model$MPropDef$mproperty (self) on <self:MPropDef> */
447 var37 = self->attrs[COLOR_nitc__model__MPropDef___mproperty].val; /* _mproperty on <self:MPropDef> */
448 if (unlikely(var37 == NULL)) {
449 if(catchStack.cursor >= 0){
450 longjmp(catchStack.envs[catchStack.cursor], 1);
451 }
452 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
453 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2357);
454 fatal_exit(1);
455 }
456 var35 = var37;
457 RET_LABEL36:(void)0;
458 }
459 }
460 var38 = var35->attrs[COLOR_nitc__model__MProperty___intro].val != NULL; /* _intro on <var35:MProperty> */
461 var39 = !var38;
462 if (unlikely(!var39)) {
463 if(catchStack.cursor >= 0){
464 longjmp(catchStack.envs[catchStack.cursor], 1);
465 }
466 PRINT_ERROR("Runtime error: %s", "Assert failed");
467 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2370);
468 fatal_exit(1);
469 }
470 {
471 { /* Inline model$MPropDef$mproperty (self) on <self:MPropDef> */
472 var42 = self->attrs[COLOR_nitc__model__MPropDef___mproperty].val; /* _mproperty on <self:MPropDef> */
473 if (unlikely(var42 == NULL)) {
474 if(catchStack.cursor >= 0){
475 longjmp(catchStack.envs[catchStack.cursor], 1);
476 }
477 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
478 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2357);
479 fatal_exit(1);
480 }
481 var40 = var42;
482 RET_LABEL41:(void)0;
483 }
484 }
485 {
486 { /* Inline model$MProperty$intro= (var40,self) on <var40:MProperty> */
487 /* Covariant cast for argument 0 (intro) <self:MPropDef> isa MPROPDEF */
488 /* <self:MPropDef> isa MPROPDEF */
489 type_struct = var40->type->resolution_table->types[COLOR_nitc__model__MProperty__MPROPDEF];
490 cltype = type_struct->color;
491 idtype = type_struct->id;
492 if(cltype >= self->type->table_size) {
493 var44 = 0;
494 } else {
495 var44 = self->type->type_table[cltype] == idtype;
496 }
497 if (unlikely(!var44)) {
498 var_class_name = self == NULL ? "null" : self->type->name;
499 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "MPROPDEF", var_class_name);
500 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2097);
501 fatal_exit(1);
502 }
503 var40->attrs[COLOR_nitc__model__MProperty___intro].val = self; /* _intro on <var40:MProperty> */
504 RET_LABEL43:(void)0;
505 }
506 }
507 } else {
508 }
509 if (unlikely(varonce==NULL)) {
510 var45 = NEW_core__NativeArray((int)3l, &type_core__NativeArray__core__String);
511 if (likely(varonce46!=NULL)) {
512 var47 = varonce46;
513 } else {
514 var48 = "$";
515 var50 = (val*)(1l<<2|1);
516 var51 = (val*)(1l<<2|1);
517 var52 = (val*)((long)(0)<<2|3);
518 var53 = (val*)((long)(0)<<2|3);
519 var49 = core__flat___CString___to_s_unsafe(var48, var50, var51, var52, var53);
520 var47 = var49;
521 varonce46 = var47;
522 }
523 ((struct instance_core__NativeArray*)var45)->values[1]=var47;
524 } else {
525 var45 = varonce;
526 varonce = NULL;
527 }
528 {
529 { /* Inline model$MPropDef$mclassdef (self) on <self:MPropDef> */
530 var56 = self->attrs[COLOR_nitc__model__MPropDef___mclassdef].val; /* _mclassdef on <self:MPropDef> */
531 if (unlikely(var56 == NULL)) {
532 if(catchStack.cursor >= 0){
533 longjmp(catchStack.envs[catchStack.cursor], 1);
534 }
535 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
536 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2354);
537 fatal_exit(1);
538 }
539 var54 = var56;
540 RET_LABEL55:(void)0;
541 }
542 }
543 {
544 var57 = ((val*(*)(val* self))(var54->class->vft[COLOR_core__abstract_text__Object__to_s]))(var54); /* to_s on <var54:MClassDef>*/
545 }
546 ((struct instance_core__NativeArray*)var45)->values[0]=var57;
547 {
548 { /* Inline model$MPropDef$mproperty (self) on <self:MPropDef> */
549 var60 = self->attrs[COLOR_nitc__model__MPropDef___mproperty].val; /* _mproperty on <self:MPropDef> */
550 if (unlikely(var60 == NULL)) {
551 if(catchStack.cursor >= 0){
552 longjmp(catchStack.envs[catchStack.cursor], 1);
553 }
554 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
555 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2357);
556 fatal_exit(1);
557 }
558 var58 = var60;
559 RET_LABEL59:(void)0;
560 }
561 }
562 {
563 var61 = ((val*(*)(val* self))(var58->class->vft[COLOR_core__abstract_text__Object__to_s]))(var58); /* to_s on <var58:MProperty>*/
564 }
565 ((struct instance_core__NativeArray*)var45)->values[2]=var61;
566 {
567 var62 = ((val*(*)(val* self))(var45->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var45); /* native_to_s on <var45:NativeArray[String]>*/
568 }
569 varonce = var45;
570 {
571 { /* Inline model$MPropDef$to_s= (self,var62) on <self:MPropDef> */
572 self->attrs[COLOR_nitc__model__MPropDef___to_s].val = var62; /* _to_s on <self:MPropDef> */
573 RET_LABEL63:(void)0;
574 }
575 }
576 RET_LABEL:;
577 }
578 /* method model$MPropDef$name for (self: MPropDef): String */
579 val* nitc___nitc__MPropDef___nitc__model_base__MEntity__name(val* self) {
580 val* var /* : String */;
581 val* var1 /* : MProperty */;
582 val* var3 /* : MProperty */;
583 val* var4 /* : String */;
584 val* var6 /* : String */;
585 {
586 { /* Inline model$MPropDef$mproperty (self) on <self:MPropDef> */
587 var3 = self->attrs[COLOR_nitc__model__MPropDef___mproperty].val; /* _mproperty on <self:MPropDef> */
588 if (unlikely(var3 == NULL)) {
589 if(catchStack.cursor >= 0){
590 longjmp(catchStack.envs[catchStack.cursor], 1);
591 }
592 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
593 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2357);
594 fatal_exit(1);
595 }
596 var1 = var3;
597 RET_LABEL2:(void)0;
598 }
599 }
600 {
601 { /* Inline model$MProperty$name (var1) on <var1:MProperty> */
602 var6 = var1->attrs[COLOR_nitc__model__MProperty___name].val; /* _name on <var1:MProperty> */
603 if (unlikely(var6 == NULL)) {
604 if(catchStack.cursor >= 0){
605 longjmp(catchStack.envs[catchStack.cursor], 1);
606 }
607 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _name");
608 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2047);
609 fatal_exit(1);
610 }
611 var4 = var6;
612 RET_LABEL5:(void)0;
613 }
614 }
615 var = var4;
616 goto RET_LABEL;
617 RET_LABEL:;
618 return var;
619 }
620 /* method model$MPropDef$full_name for (self: MPropDef): String */
621 val* nitc___nitc__MPropDef___nitc__model_base__MEntity__full_name(val* self) {
622 val* var /* : String */;
623 short int var1 /* : Bool */;
624 val* var2 /* : String */;
625 val* var3 /* : String */;
626 val* var5 /* : FlatBuffer */;
627 val* var_res /* var res: FlatBuffer */;
628 val* var7 /* : MClassDef */;
629 val* var9 /* : MClassDef */;
630 val* var10 /* : String */;
631 static val* varonce;
632 val* var11 /* : String */;
633 char* var12 /* : CString */;
634 val* var13 /* : String */;
635 val* var14 /* : nullable Int */;
636 val* var15 /* : nullable Int */;
637 val* var16 /* : nullable Bool */;
638 val* var17 /* : nullable Bool */;
639 val* var18 /* : MClassDef */;
640 val* var20 /* : MClassDef */;
641 val* var21 /* : MClass */;
642 val* var23 /* : MClass */;
643 val* var24 /* : MProperty */;
644 val* var26 /* : MProperty */;
645 val* var27 /* : MClassDef */;
646 val* var29 /* : MClassDef */;
647 val* var30 /* : MClass */;
648 val* var32 /* : MClass */;
649 short int var33 /* : Bool */;
650 val* var_other /* var other: nullable Object */;
651 short int var35 /* : Bool */;
652 short int var37 /* : Bool */;
653 val* var38 /* : String */;
654 val* var39 /* : MClassDef */;
655 val* var41 /* : MClassDef */;
656 val* var42 /* : MModule */;
657 val* var44 /* : MModule */;
658 val* var45 /* : nullable MPackage */;
659 val* var46 /* : MProperty */;
660 val* var48 /* : MProperty */;
661 val* var49 /* : MClassDef */;
662 val* var51 /* : MClassDef */;
663 val* var52 /* : MModule */;
664 val* var54 /* : MModule */;
665 val* var55 /* : nullable MPackage */;
666 short int var56 /* : Bool */;
667 short int var57 /* : Bool */;
668 val* var_other59 /* var other: nullable Object */;
669 short int var60 /* : Bool */;
670 short int var61 /* : Bool */;
671 val* var62 /* : MProperty */;
672 val* var64 /* : MProperty */;
673 val* var65 /* : MClassDef */;
674 val* var67 /* : MClassDef */;
675 val* var68 /* : MModule */;
676 val* var70 /* : MModule */;
677 val* var71 /* : MProperty */;
678 val* var73 /* : MProperty */;
679 val* var74 /* : MVisibility */;
680 val* var76 /* : MVisibility */;
681 val* var77 /* : String */;
682 static val* varonce78;
683 val* var79 /* : String */;
684 char* var80 /* : CString */;
685 val* var81 /* : String */;
686 val* var82 /* : nullable Int */;
687 val* var83 /* : nullable Int */;
688 val* var84 /* : nullable Bool */;
689 val* var85 /* : nullable Bool */;
690 val* var86 /* : MProperty */;
691 val* var88 /* : MProperty */;
692 val* var89 /* : MVisibility */;
693 val* var91 /* : MVisibility */;
694 val* var92 /* : Sys */;
695 val* var93 /* : MVisibility */;
696 short int var94 /* : Bool */;
697 val* var95 /* : MClassDef */;
698 val* var97 /* : MClassDef */;
699 val* var98 /* : MModule */;
700 val* var100 /* : MModule */;
701 val* var101 /* : MClassDef */;
702 val* var103 /* : MClassDef */;
703 val* var104 /* : MClass */;
704 val* var106 /* : MClass */;
705 val* var107 /* : MVisibility */;
706 val* var109 /* : MVisibility */;
707 val* var110 /* : String */;
708 val* var111 /* : MProperty */;
709 val* var113 /* : MProperty */;
710 val* var114 /* : MClassDef */;
711 val* var116 /* : MClassDef */;
712 val* var117 /* : MModule */;
713 val* var119 /* : MModule */;
714 val* var120 /* : nullable MPackage */;
715 short int var121 /* : Bool */;
716 short int var123 /* : Bool */;
717 short int var124 /* : Bool */;
718 static val* varonce125;
719 val* var126 /* : String */;
720 char* var127 /* : CString */;
721 val* var128 /* : String */;
722 val* var129 /* : nullable Int */;
723 val* var130 /* : nullable Int */;
724 val* var131 /* : nullable Bool */;
725 val* var132 /* : nullable Bool */;
726 val* var133 /* : MProperty */;
727 val* var135 /* : MProperty */;
728 val* var136 /* : MClassDef */;
729 val* var138 /* : MClassDef */;
730 val* var139 /* : MModule */;
731 val* var141 /* : MModule */;
732 val* var142 /* : String */;
733 val* var144 /* : String */;
734 static val* varonce145;
735 val* var146 /* : String */;
736 char* var147 /* : CString */;
737 val* var148 /* : String */;
738 val* var149 /* : nullable Int */;
739 val* var150 /* : nullable Int */;
740 val* var151 /* : nullable Bool */;
741 val* var152 /* : nullable Bool */;
742 val* var153 /* : MClassDef */;
743 val* var155 /* : MClassDef */;
744 val* var156 /* : MClass */;
745 val* var158 /* : MClass */;
746 val* var159 /* : MProperty */;
747 val* var161 /* : MProperty */;
748 val* var162 /* : MClassDef */;
749 val* var164 /* : MClassDef */;
750 val* var165 /* : MClass */;
751 val* var167 /* : MClass */;
752 short int var168 /* : Bool */;
753 short int var170 /* : Bool */;
754 short int var171 /* : Bool */;
755 val* var172 /* : MProperty */;
756 val* var174 /* : MProperty */;
757 val* var175 /* : MClassDef */;
758 val* var177 /* : MClassDef */;
759 val* var178 /* : String */;
760 static val* varonce179;
761 val* var180 /* : String */;
762 char* var181 /* : CString */;
763 val* var182 /* : String */;
764 val* var183 /* : nullable Int */;
765 val* var184 /* : nullable Int */;
766 val* var185 /* : nullable Bool */;
767 val* var186 /* : nullable Bool */;
768 val* var187 /* : MProperty */;
769 val* var189 /* : MProperty */;
770 val* var190 /* : String */;
771 val* var192 /* : String */;
772 val* var193 /* : String */;
773 var1 = self->attrs[COLOR_nitc__model__MPropDef___full_name].val != NULL; /* _full_name on <self:MPropDef> */
774 if(likely(var1)) {
775 var2 = self->attrs[COLOR_nitc__model__MPropDef___full_name].val; /* _full_name on <self:MPropDef> */
776 if (unlikely(var2 == NULL)) {
777 if(catchStack.cursor >= 0){
778 longjmp(catchStack.envs[catchStack.cursor], 1);
779 }
780 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _full_name");
781 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2379);
782 fatal_exit(1);
783 }
784 } else {
785 {
786 var5 = NEW_core__FlatBuffer(&type_core__FlatBuffer);
787 {
788 { /* Inline flat$FlatBuffer$init (var5) on <var5:FlatBuffer> */
789 {
790 ((void(*)(val* self))(var5->class->vft[COLOR_core___core__FlatBuffer___core__kernel__Object__init]))(var5); /* init on <var5:FlatBuffer>*/
791 }
792 RET_LABEL6:(void)0;
793 }
794 }
795 var_res = var5;
796 {
797 { /* Inline model$MPropDef$mclassdef (self) on <self:MPropDef> */
798 var9 = self->attrs[COLOR_nitc__model__MPropDef___mclassdef].val; /* _mclassdef on <self:MPropDef> */
799 if (unlikely(var9 == NULL)) {
800 if(catchStack.cursor >= 0){
801 longjmp(catchStack.envs[catchStack.cursor], 1);
802 }
803 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
804 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2354);
805 fatal_exit(1);
806 }
807 var7 = var9;
808 RET_LABEL8:(void)0;
809 }
810 }
811 {
812 var10 = nitc___nitc__MClassDef___nitc__model_base__MEntity__full_name(var7);
813 }
814 {
815 core___core__FlatBuffer___core__abstract_text__Buffer__append(var_res, var10); /* Direct call flat$FlatBuffer$append on <var_res:FlatBuffer>*/
816 }
817 if (likely(varonce!=NULL)) {
818 var11 = varonce;
819 } else {
820 var12 = "$";
821 var14 = (val*)(1l<<2|1);
822 var15 = (val*)(1l<<2|1);
823 var16 = (val*)((long)(0)<<2|3);
824 var17 = (val*)((long)(0)<<2|3);
825 var13 = core__flat___CString___to_s_unsafe(var12, var14, var15, var16, var17);
826 var11 = var13;
827 varonce = var11;
828 }
829 {
830 core___core__FlatBuffer___core__abstract_text__Buffer__append(var_res, var11); /* Direct call flat$FlatBuffer$append on <var_res:FlatBuffer>*/
831 }
832 {
833 { /* Inline model$MPropDef$mclassdef (self) on <self:MPropDef> */
834 var20 = self->attrs[COLOR_nitc__model__MPropDef___mclassdef].val; /* _mclassdef on <self:MPropDef> */
835 if (unlikely(var20 == NULL)) {
836 if(catchStack.cursor >= 0){
837 longjmp(catchStack.envs[catchStack.cursor], 1);
838 }
839 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
840 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2354);
841 fatal_exit(1);
842 }
843 var18 = var20;
844 RET_LABEL19:(void)0;
845 }
846 }
847 {
848 { /* Inline model$MClassDef$mclass (var18) on <var18:MClassDef> */
849 var23 = var18->attrs[COLOR_nitc__model__MClassDef___mclass].val; /* _mclass on <var18:MClassDef> */
850 if (unlikely(var23 == NULL)) {
851 if(catchStack.cursor >= 0){
852 longjmp(catchStack.envs[catchStack.cursor], 1);
853 }
854 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
855 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 591);
856 fatal_exit(1);
857 }
858 var21 = var23;
859 RET_LABEL22:(void)0;
860 }
861 }
862 {
863 { /* Inline model$MPropDef$mproperty (self) on <self:MPropDef> */
864 var26 = self->attrs[COLOR_nitc__model__MPropDef___mproperty].val; /* _mproperty on <self:MPropDef> */
865 if (unlikely(var26 == NULL)) {
866 if(catchStack.cursor >= 0){
867 longjmp(catchStack.envs[catchStack.cursor], 1);
868 }
869 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
870 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2357);
871 fatal_exit(1);
872 }
873 var24 = var26;
874 RET_LABEL25:(void)0;
875 }
876 }
877 {
878 { /* Inline model$MProperty$intro_mclassdef (var24) on <var24:MProperty> */
879 var29 = var24->attrs[COLOR_nitc__model__MProperty___intro_mclassdef].val; /* _intro_mclassdef on <var24:MProperty> */
880 if (unlikely(var29 == NULL)) {
881 if(catchStack.cursor >= 0){
882 longjmp(catchStack.envs[catchStack.cursor], 1);
883 }
884 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _intro_mclassdef");
885 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2042);
886 fatal_exit(1);
887 }
888 var27 = var29;
889 RET_LABEL28:(void)0;
890 }
891 }
892 {
893 { /* Inline model$MClassDef$mclass (var27) on <var27:MClassDef> */
894 var32 = var27->attrs[COLOR_nitc__model__MClassDef___mclass].val; /* _mclass on <var27:MClassDef> */
895 if (unlikely(var32 == NULL)) {
896 if(catchStack.cursor >= 0){
897 longjmp(catchStack.envs[catchStack.cursor], 1);
898 }
899 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
900 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 591);
901 fatal_exit(1);
902 }
903 var30 = var32;
904 RET_LABEL31:(void)0;
905 }
906 }
907 {
908 { /* Inline kernel$Object$== (var21,var30) on <var21:MClass> */
909 var_other = var30;
910 {
911 { /* Inline kernel$Object$is_same_instance (var21,var_other) on <var21:MClass> */
912 var37 = var21 == var_other;
913 var35 = var37;
914 goto RET_LABEL36;
915 RET_LABEL36:(void)0;
916 }
917 }
918 var33 = var35;
919 goto RET_LABEL34;
920 RET_LABEL34:(void)0;
921 }
922 }
923 if (var33){
924 {
925 var38 = nitc___nitc__MPropDef___nitc__model_base__MEntity__name(self);
926 }
927 {
928 core___core__FlatBuffer___core__abstract_text__Buffer__append(var_res, var38); /* Direct call flat$FlatBuffer$append on <var_res:FlatBuffer>*/
929 }
930 } else {
931 {
932 { /* Inline model$MPropDef$mclassdef (self) on <self:MPropDef> */
933 var41 = self->attrs[COLOR_nitc__model__MPropDef___mclassdef].val; /* _mclassdef on <self:MPropDef> */
934 if (unlikely(var41 == NULL)) {
935 if(catchStack.cursor >= 0){
936 longjmp(catchStack.envs[catchStack.cursor], 1);
937 }
938 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
939 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2354);
940 fatal_exit(1);
941 }
942 var39 = var41;
943 RET_LABEL40:(void)0;
944 }
945 }
946 {
947 { /* Inline model$MClassDef$mmodule (var39) on <var39:MClassDef> */
948 var44 = var39->attrs[COLOR_nitc__model__MClassDef___mmodule].val; /* _mmodule on <var39:MClassDef> */
949 if (unlikely(var44 == NULL)) {
950 if(catchStack.cursor >= 0){
951 longjmp(catchStack.envs[catchStack.cursor], 1);
952 }
953 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mmodule");
954 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 588);
955 fatal_exit(1);
956 }
957 var42 = var44;
958 RET_LABEL43:(void)0;
959 }
960 }
961 {
962 var45 = nitc___nitc__MModule___mpackage(var42);
963 }
964 {
965 { /* Inline model$MPropDef$mproperty (self) on <self:MPropDef> */
966 var48 = self->attrs[COLOR_nitc__model__MPropDef___mproperty].val; /* _mproperty on <self:MPropDef> */
967 if (unlikely(var48 == NULL)) {
968 if(catchStack.cursor >= 0){
969 longjmp(catchStack.envs[catchStack.cursor], 1);
970 }
971 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
972 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2357);
973 fatal_exit(1);
974 }
975 var46 = var48;
976 RET_LABEL47:(void)0;
977 }
978 }
979 {
980 { /* Inline model$MProperty$intro_mclassdef (var46) on <var46:MProperty> */
981 var51 = var46->attrs[COLOR_nitc__model__MProperty___intro_mclassdef].val; /* _intro_mclassdef on <var46:MProperty> */
982 if (unlikely(var51 == NULL)) {
983 if(catchStack.cursor >= 0){
984 longjmp(catchStack.envs[catchStack.cursor], 1);
985 }
986 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _intro_mclassdef");
987 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2042);
988 fatal_exit(1);
989 }
990 var49 = var51;
991 RET_LABEL50:(void)0;
992 }
993 }
994 {
995 { /* Inline model$MClassDef$mmodule (var49) on <var49:MClassDef> */
996 var54 = var49->attrs[COLOR_nitc__model__MClassDef___mmodule].val; /* _mmodule on <var49:MClassDef> */
997 if (unlikely(var54 == NULL)) {
998 if(catchStack.cursor >= 0){
999 longjmp(catchStack.envs[catchStack.cursor], 1);
1000 }
1001 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mmodule");
1002 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 588);
1003 fatal_exit(1);
1004 }
1005 var52 = var54;
1006 RET_LABEL53:(void)0;
1007 }
1008 }
1009 {
1010 var55 = nitc___nitc__MModule___mpackage(var52);
1011 }
1012 if (var45 == NULL) {
1013 var56 = (var55 != NULL);
1014 } else {
1015 { /* Inline kernel$Object$!= (var45,var55) on <var45:nullable MPackage> */
1016 var_other59 = var55;
1017 {
1018 var60 = ((short int(*)(val* self, val* p0))(var45->class->vft[COLOR_core__kernel__Object___61d_61d]))(var45, var_other59); /* == on <var45:nullable MPackage(MPackage)>*/
1019 }
1020 var61 = !var60;
1021 var57 = var61;
1022 goto RET_LABEL58;
1023 RET_LABEL58:(void)0;
1024 }
1025 var56 = var57;
1026 }
1027 if (var56){
1028 {
1029 { /* Inline model$MPropDef$mproperty (self) on <self:MPropDef> */
1030 var64 = self->attrs[COLOR_nitc__model__MPropDef___mproperty].val; /* _mproperty on <self:MPropDef> */
1031 if (unlikely(var64 == NULL)) {
1032 if(catchStack.cursor >= 0){
1033 longjmp(catchStack.envs[catchStack.cursor], 1);
1034 }
1035 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
1036 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2357);
1037 fatal_exit(1);
1038 }
1039 var62 = var64;
1040 RET_LABEL63:(void)0;
1041 }
1042 }
1043 {
1044 { /* Inline model$MProperty$intro_mclassdef (var62) on <var62:MProperty> */
1045 var67 = var62->attrs[COLOR_nitc__model__MProperty___intro_mclassdef].val; /* _intro_mclassdef on <var62:MProperty> */
1046 if (unlikely(var67 == NULL)) {
1047 if(catchStack.cursor >= 0){
1048 longjmp(catchStack.envs[catchStack.cursor], 1);
1049 }
1050 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _intro_mclassdef");
1051 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2042);
1052 fatal_exit(1);
1053 }
1054 var65 = var67;
1055 RET_LABEL66:(void)0;
1056 }
1057 }
1058 {
1059 { /* Inline model$MClassDef$mmodule (var65) on <var65:MClassDef> */
1060 var70 = var65->attrs[COLOR_nitc__model__MClassDef___mmodule].val; /* _mmodule on <var65:MClassDef> */
1061 if (unlikely(var70 == NULL)) {
1062 if(catchStack.cursor >= 0){
1063 longjmp(catchStack.envs[catchStack.cursor], 1);
1064 }
1065 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mmodule");
1066 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 588);
1067 fatal_exit(1);
1068 }
1069 var68 = var70;
1070 RET_LABEL69:(void)0;
1071 }
1072 }
1073 {
1074 { /* Inline model$MPropDef$mproperty (self) on <self:MPropDef> */
1075 var73 = self->attrs[COLOR_nitc__model__MPropDef___mproperty].val; /* _mproperty on <self:MPropDef> */
1076 if (unlikely(var73 == NULL)) {
1077 if(catchStack.cursor >= 0){
1078 longjmp(catchStack.envs[catchStack.cursor], 1);
1079 }
1080 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
1081 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2357);
1082 fatal_exit(1);
1083 }
1084 var71 = var73;
1085 RET_LABEL72:(void)0;
1086 }
1087 }
1088 {
1089 { /* Inline model$MProperty$visibility (var71) on <var71:MProperty> */
1090 var76 = var71->attrs[COLOR_nitc__model__MProperty___visibility].val; /* _visibility on <var71:MProperty> */
1091 if (unlikely(var76 == NULL)) {
1092 if(catchStack.cursor >= 0){
1093 longjmp(catchStack.envs[catchStack.cursor], 1);
1094 }
1095 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _visibility");
1096 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2078);
1097 fatal_exit(1);
1098 }
1099 var74 = var76;
1100 RET_LABEL75:(void)0;
1101 }
1102 }
1103 {
1104 var77 = nitc___nitc__MModule___namespace_for(var68, var74);
1105 }
1106 {
1107 core___core__FlatBuffer___core__abstract_text__Buffer__append(var_res, var77); /* Direct call flat$FlatBuffer$append on <var_res:FlatBuffer>*/
1108 }
1109 if (likely(varonce78!=NULL)) {
1110 var79 = varonce78;
1111 } else {
1112 var80 = "::";
1113 var82 = (val*)(2l<<2|1);
1114 var83 = (val*)(2l<<2|1);
1115 var84 = (val*)((long)(0)<<2|3);
1116 var85 = (val*)((long)(0)<<2|3);
1117 var81 = core__flat___CString___to_s_unsafe(var80, var82, var83, var84, var85);
1118 var79 = var81;
1119 varonce78 = var79;
1120 }
1121 {
1122 core___core__FlatBuffer___core__abstract_text__Buffer__append(var_res, var79); /* Direct call flat$FlatBuffer$append on <var_res:FlatBuffer>*/
1123 }
1124 } else {
1125 {
1126 { /* Inline model$MPropDef$mproperty (self) on <self:MPropDef> */
1127 var88 = self->attrs[COLOR_nitc__model__MPropDef___mproperty].val; /* _mproperty on <self:MPropDef> */
1128 if (unlikely(var88 == NULL)) {
1129 if(catchStack.cursor >= 0){
1130 longjmp(catchStack.envs[catchStack.cursor], 1);
1131 }
1132 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
1133 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2357);
1134 fatal_exit(1);
1135 }
1136 var86 = var88;
1137 RET_LABEL87:(void)0;
1138 }
1139 }
1140 {
1141 { /* Inline model$MProperty$visibility (var86) on <var86:MProperty> */
1142 var91 = var86->attrs[COLOR_nitc__model__MProperty___visibility].val; /* _visibility on <var86:MProperty> */
1143 if (unlikely(var91 == NULL)) {
1144 if(catchStack.cursor >= 0){
1145 longjmp(catchStack.envs[catchStack.cursor], 1);
1146 }
1147 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _visibility");
1148 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2078);
1149 fatal_exit(1);
1150 }
1151 var89 = var91;
1152 RET_LABEL90:(void)0;
1153 }
1154 }
1155 var92 = glob_sys;
1156 {
1157 var93 = nitc__model_base___core__Sys___private_visibility(var92);
1158 }
1159 {
1160 var94 = core___core__Comparable____60d_61d(var89, var93);
1161 }
1162 if (var94){
1163 {
1164 { /* Inline model$MPropDef$mclassdef (self) on <self:MPropDef> */
1165 var97 = self->attrs[COLOR_nitc__model__MPropDef___mclassdef].val; /* _mclassdef on <self:MPropDef> */
1166 if (unlikely(var97 == NULL)) {
1167 if(catchStack.cursor >= 0){
1168 longjmp(catchStack.envs[catchStack.cursor], 1);
1169 }
1170 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
1171 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2354);
1172 fatal_exit(1);
1173 }
1174 var95 = var97;
1175 RET_LABEL96:(void)0;
1176 }
1177 }
1178 {
1179 { /* Inline model$MClassDef$mmodule (var95) on <var95:MClassDef> */
1180 var100 = var95->attrs[COLOR_nitc__model__MClassDef___mmodule].val; /* _mmodule on <var95:MClassDef> */
1181 if (unlikely(var100 == NULL)) {
1182 if(catchStack.cursor >= 0){
1183 longjmp(catchStack.envs[catchStack.cursor], 1);
1184 }
1185 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mmodule");
1186 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 588);
1187 fatal_exit(1);
1188 }
1189 var98 = var100;
1190 RET_LABEL99:(void)0;
1191 }
1192 }
1193 {
1194 { /* Inline model$MPropDef$mclassdef (self) on <self:MPropDef> */
1195 var103 = self->attrs[COLOR_nitc__model__MPropDef___mclassdef].val; /* _mclassdef on <self:MPropDef> */
1196 if (unlikely(var103 == NULL)) {
1197 if(catchStack.cursor >= 0){
1198 longjmp(catchStack.envs[catchStack.cursor], 1);
1199 }
1200 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
1201 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2354);
1202 fatal_exit(1);
1203 }
1204 var101 = var103;
1205 RET_LABEL102:(void)0;
1206 }
1207 }
1208 {
1209 { /* Inline model$MClassDef$mclass (var101) on <var101:MClassDef> */
1210 var106 = var101->attrs[COLOR_nitc__model__MClassDef___mclass].val; /* _mclass on <var101:MClassDef> */
1211 if (unlikely(var106 == NULL)) {
1212 if(catchStack.cursor >= 0){
1213 longjmp(catchStack.envs[catchStack.cursor], 1);
1214 }
1215 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
1216 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 591);
1217 fatal_exit(1);
1218 }
1219 var104 = var106;
1220 RET_LABEL105:(void)0;
1221 }
1222 }
1223 {
1224 { /* Inline model$MClass$visibility (var104) on <var104:MClass> */
1225 var109 = var104->attrs[COLOR_nitc__model__MClass___visibility].val; /* _visibility on <var104:MClass> */
1226 if (unlikely(var109 == NULL)) {
1227 if(catchStack.cursor >= 0){
1228 longjmp(catchStack.envs[catchStack.cursor], 1);
1229 }
1230 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _visibility");
1231 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 476);
1232 fatal_exit(1);
1233 }
1234 var107 = var109;
1235 RET_LABEL108:(void)0;
1236 }
1237 }
1238 {
1239 var110 = nitc___nitc__MModule___namespace_for(var98, var107);
1240 }
1241 {
1242 { /* Inline model$MPropDef$mproperty (self) on <self:MPropDef> */
1243 var113 = self->attrs[COLOR_nitc__model__MPropDef___mproperty].val; /* _mproperty on <self:MPropDef> */
1244 if (unlikely(var113 == NULL)) {
1245 if(catchStack.cursor >= 0){
1246 longjmp(catchStack.envs[catchStack.cursor], 1);
1247 }
1248 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
1249 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2357);
1250 fatal_exit(1);
1251 }
1252 var111 = var113;
1253 RET_LABEL112:(void)0;
1254 }
1255 }
1256 {
1257 { /* Inline model$MProperty$intro_mclassdef (var111) on <var111:MProperty> */
1258 var116 = var111->attrs[COLOR_nitc__model__MProperty___intro_mclassdef].val; /* _intro_mclassdef on <var111:MProperty> */
1259 if (unlikely(var116 == NULL)) {
1260 if(catchStack.cursor >= 0){
1261 longjmp(catchStack.envs[catchStack.cursor], 1);
1262 }
1263 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _intro_mclassdef");
1264 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2042);
1265 fatal_exit(1);
1266 }
1267 var114 = var116;
1268 RET_LABEL115:(void)0;
1269 }
1270 }
1271 {
1272 { /* Inline model$MClassDef$mmodule (var114) on <var114:MClassDef> */
1273 var119 = var114->attrs[COLOR_nitc__model__MClassDef___mmodule].val; /* _mmodule on <var114:MClassDef> */
1274 if (unlikely(var119 == NULL)) {
1275 if(catchStack.cursor >= 0){
1276 longjmp(catchStack.envs[catchStack.cursor], 1);
1277 }
1278 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mmodule");
1279 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 588);
1280 fatal_exit(1);
1281 }
1282 var117 = var119;
1283 RET_LABEL118:(void)0;
1284 }
1285 }
1286 {
1287 var120 = nitc___nitc__MModule___mpackage(var117);
1288 }
1289 {
1290 { /* Inline kernel$Object$!= (var110,var120) on <var110:String> */
1291 var_other59 = var120;
1292 {
1293 var123 = ((short int(*)(val* self, val* p0))(var110->class->vft[COLOR_core__kernel__Object___61d_61d]))(var110, var_other59); /* == on <var110:String>*/
1294 }
1295 var124 = !var123;
1296 var121 = var124;
1297 goto RET_LABEL122;
1298 RET_LABEL122:(void)0;
1299 }
1300 }
1301 if (var121){
1302 if (likely(varonce125!=NULL)) {
1303 var126 = varonce125;
1304 } else {
1305 var127 = "::";
1306 var129 = (val*)(2l<<2|1);
1307 var130 = (val*)(2l<<2|1);
1308 var131 = (val*)((long)(0)<<2|3);
1309 var132 = (val*)((long)(0)<<2|3);
1310 var128 = core__flat___CString___to_s_unsafe(var127, var129, var130, var131, var132);
1311 var126 = var128;
1312 varonce125 = var126;
1313 }
1314 {
1315 core___core__FlatBuffer___core__abstract_text__Buffer__append(var_res, var126); /* Direct call flat$FlatBuffer$append on <var_res:FlatBuffer>*/
1316 }
1317 {
1318 { /* Inline model$MPropDef$mproperty (self) on <self:MPropDef> */
1319 var135 = self->attrs[COLOR_nitc__model__MPropDef___mproperty].val; /* _mproperty on <self:MPropDef> */
1320 if (unlikely(var135 == NULL)) {
1321 if(catchStack.cursor >= 0){
1322 longjmp(catchStack.envs[catchStack.cursor], 1);
1323 }
1324 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
1325 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2357);
1326 fatal_exit(1);
1327 }
1328 var133 = var135;
1329 RET_LABEL134:(void)0;
1330 }
1331 }
1332 {
1333 { /* Inline model$MProperty$intro_mclassdef (var133) on <var133:MProperty> */
1334 var138 = var133->attrs[COLOR_nitc__model__MProperty___intro_mclassdef].val; /* _intro_mclassdef on <var133:MProperty> */
1335 if (unlikely(var138 == NULL)) {
1336 if(catchStack.cursor >= 0){
1337 longjmp(catchStack.envs[catchStack.cursor], 1);
1338 }
1339 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _intro_mclassdef");
1340 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2042);
1341 fatal_exit(1);
1342 }
1343 var136 = var138;
1344 RET_LABEL137:(void)0;
1345 }
1346 }
1347 {
1348 { /* Inline model$MClassDef$mmodule (var136) on <var136:MClassDef> */
1349 var141 = var136->attrs[COLOR_nitc__model__MClassDef___mmodule].val; /* _mmodule on <var136:MClassDef> */
1350 if (unlikely(var141 == NULL)) {
1351 if(catchStack.cursor >= 0){
1352 longjmp(catchStack.envs[catchStack.cursor], 1);
1353 }
1354 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mmodule");
1355 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 588);
1356 fatal_exit(1);
1357 }
1358 var139 = var141;
1359 RET_LABEL140:(void)0;
1360 }
1361 }
1362 {
1363 { /* Inline mmodule$MModule$name (var139) on <var139:MModule> */
1364 var144 = var139->attrs[COLOR_nitc__mmodule__MModule___name].val; /* _name on <var139:MModule> */
1365 if (unlikely(var144 == NULL)) {
1366 if(catchStack.cursor >= 0){
1367 longjmp(catchStack.envs[catchStack.cursor], 1);
1368 }
1369 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _name");
1370 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__mmodule, 100);
1371 fatal_exit(1);
1372 }
1373 var142 = var144;
1374 RET_LABEL143:(void)0;
1375 }
1376 }
1377 {
1378 core___core__FlatBuffer___core__abstract_text__Buffer__append(var_res, var142); /* Direct call flat$FlatBuffer$append on <var_res:FlatBuffer>*/
1379 }
1380 if (likely(varonce145!=NULL)) {
1381 var146 = varonce145;
1382 } else {
1383 var147 = "::";
1384 var149 = (val*)(2l<<2|1);
1385 var150 = (val*)(2l<<2|1);
1386 var151 = (val*)((long)(0)<<2|3);
1387 var152 = (val*)((long)(0)<<2|3);
1388 var148 = core__flat___CString___to_s_unsafe(var147, var149, var150, var151, var152);
1389 var146 = var148;
1390 varonce145 = var146;
1391 }
1392 {
1393 core___core__FlatBuffer___core__abstract_text__Buffer__append(var_res, var146); /* Direct call flat$FlatBuffer$append on <var_res:FlatBuffer>*/
1394 }
1395 } else {
1396 }
1397 } else {
1398 }
1399 }
1400 {
1401 { /* Inline model$MPropDef$mclassdef (self) on <self:MPropDef> */
1402 var155 = self->attrs[COLOR_nitc__model__MPropDef___mclassdef].val; /* _mclassdef on <self:MPropDef> */
1403 if (unlikely(var155 == NULL)) {
1404 if(catchStack.cursor >= 0){
1405 longjmp(catchStack.envs[catchStack.cursor], 1);
1406 }
1407 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
1408 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2354);
1409 fatal_exit(1);
1410 }
1411 var153 = var155;
1412 RET_LABEL154:(void)0;
1413 }
1414 }
1415 {
1416 { /* Inline model$MClassDef$mclass (var153) on <var153:MClassDef> */
1417 var158 = var153->attrs[COLOR_nitc__model__MClassDef___mclass].val; /* _mclass on <var153:MClassDef> */
1418 if (unlikely(var158 == NULL)) {
1419 if(catchStack.cursor >= 0){
1420 longjmp(catchStack.envs[catchStack.cursor], 1);
1421 }
1422 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
1423 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 591);
1424 fatal_exit(1);
1425 }
1426 var156 = var158;
1427 RET_LABEL157:(void)0;
1428 }
1429 }
1430 {
1431 { /* Inline model$MPropDef$mproperty (self) on <self:MPropDef> */
1432 var161 = self->attrs[COLOR_nitc__model__MPropDef___mproperty].val; /* _mproperty on <self:MPropDef> */
1433 if (unlikely(var161 == NULL)) {
1434 if(catchStack.cursor >= 0){
1435 longjmp(catchStack.envs[catchStack.cursor], 1);
1436 }
1437 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
1438 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2357);
1439 fatal_exit(1);
1440 }
1441 var159 = var161;
1442 RET_LABEL160:(void)0;
1443 }
1444 }
1445 {
1446 { /* Inline model$MProperty$intro_mclassdef (var159) on <var159:MProperty> */
1447 var164 = var159->attrs[COLOR_nitc__model__MProperty___intro_mclassdef].val; /* _intro_mclassdef on <var159:MProperty> */
1448 if (unlikely(var164 == NULL)) {
1449 if(catchStack.cursor >= 0){
1450 longjmp(catchStack.envs[catchStack.cursor], 1);
1451 }
1452 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _intro_mclassdef");
1453 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2042);
1454 fatal_exit(1);
1455 }
1456 var162 = var164;
1457 RET_LABEL163:(void)0;
1458 }
1459 }
1460 {
1461 { /* Inline model$MClassDef$mclass (var162) on <var162:MClassDef> */
1462 var167 = var162->attrs[COLOR_nitc__model__MClassDef___mclass].val; /* _mclass on <var162:MClassDef> */
1463 if (unlikely(var167 == NULL)) {
1464 if(catchStack.cursor >= 0){
1465 longjmp(catchStack.envs[catchStack.cursor], 1);
1466 }
1467 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
1468 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 591);
1469 fatal_exit(1);
1470 }
1471 var165 = var167;
1472 RET_LABEL166:(void)0;
1473 }
1474 }
1475 {
1476 { /* Inline kernel$Object$!= (var156,var165) on <var156:MClass> */
1477 var_other59 = var165;
1478 {
1479 var170 = ((short int(*)(val* self, val* p0))(var156->class->vft[COLOR_core__kernel__Object___61d_61d]))(var156, var_other59); /* == on <var156:MClass>*/
1480 }
1481 var171 = !var170;
1482 var168 = var171;
1483 goto RET_LABEL169;
1484 RET_LABEL169:(void)0;
1485 }
1486 }
1487 if (var168){
1488 {
1489 { /* Inline model$MPropDef$mproperty (self) on <self:MPropDef> */
1490 var174 = self->attrs[COLOR_nitc__model__MPropDef___mproperty].val; /* _mproperty on <self:MPropDef> */
1491 if (unlikely(var174 == NULL)) {
1492 if(catchStack.cursor >= 0){
1493 longjmp(catchStack.envs[catchStack.cursor], 1);
1494 }
1495 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
1496 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2357);
1497 fatal_exit(1);
1498 }
1499 var172 = var174;
1500 RET_LABEL173:(void)0;
1501 }
1502 }
1503 {
1504 { /* Inline model$MProperty$intro_mclassdef (var172) on <var172:MProperty> */
1505 var177 = var172->attrs[COLOR_nitc__model__MProperty___intro_mclassdef].val; /* _intro_mclassdef on <var172:MProperty> */
1506 if (unlikely(var177 == NULL)) {
1507 if(catchStack.cursor >= 0){
1508 longjmp(catchStack.envs[catchStack.cursor], 1);
1509 }
1510 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _intro_mclassdef");
1511 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2042);
1512 fatal_exit(1);
1513 }
1514 var175 = var177;
1515 RET_LABEL176:(void)0;
1516 }
1517 }
1518 {
1519 var178 = nitc___nitc__MClassDef___nitc__model_base__MEntity__name(var175);
1520 }
1521 {
1522 core___core__FlatBuffer___core__abstract_text__Buffer__append(var_res, var178); /* Direct call flat$FlatBuffer$append on <var_res:FlatBuffer>*/
1523 }
1524 if (likely(varonce179!=NULL)) {
1525 var180 = varonce179;
1526 } else {
1527 var181 = "::";
1528 var183 = (val*)(2l<<2|1);
1529 var184 = (val*)(2l<<2|1);
1530 var185 = (val*)((long)(0)<<2|3);
1531 var186 = (val*)((long)(0)<<2|3);
1532 var182 = core__flat___CString___to_s_unsafe(var181, var183, var184, var185, var186);
1533 var180 = var182;
1534 varonce179 = var180;
1535 }
1536 {
1537 core___core__FlatBuffer___core__abstract_text__Buffer__append(var_res, var180); /* Direct call flat$FlatBuffer$append on <var_res:FlatBuffer>*/
1538 }
1539 } else {
1540 }
1541 {
1542 { /* Inline model$MPropDef$mproperty (self) on <self:MPropDef> */
1543 var189 = self->attrs[COLOR_nitc__model__MPropDef___mproperty].val; /* _mproperty on <self:MPropDef> */
1544 if (unlikely(var189 == NULL)) {
1545 if(catchStack.cursor >= 0){
1546 longjmp(catchStack.envs[catchStack.cursor], 1);
1547 }
1548 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
1549 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2357);
1550 fatal_exit(1);
1551 }
1552 var187 = var189;
1553 RET_LABEL188:(void)0;
1554 }
1555 }
1556 {
1557 { /* Inline model$MProperty$name (var187) on <var187:MProperty> */
1558 var192 = var187->attrs[COLOR_nitc__model__MProperty___name].val; /* _name on <var187:MProperty> */
1559 if (unlikely(var192 == NULL)) {
1560 if(catchStack.cursor >= 0){
1561 longjmp(catchStack.envs[catchStack.cursor], 1);
1562 }
1563 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _name");
1564 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2047);
1565 fatal_exit(1);
1566 }
1567 var190 = var192;
1568 RET_LABEL191:(void)0;
1569 }
1570 }
1571 {
1572 core___core__FlatBuffer___core__abstract_text__Buffer__append(var_res, var190); /* Direct call flat$FlatBuffer$append on <var_res:FlatBuffer>*/
1573 }
1574 }
1575 {
1576 var193 = core___core__FlatBuffer___core__abstract_text__Object__to_s(var_res);
1577 }
1578 var3 = var193;
1579 goto RET_LABEL4;
1580 RET_LABEL4:(void)0;
1581 }
1582 self->attrs[COLOR_nitc__model__MPropDef___full_name].val = var3; /* _full_name on <self:MPropDef> */
1583 var2 = var3;
1584 }
1585 var = var2;
1586 RET_LABEL:;
1587 return var;
1588 }
1589 /* method model$MPropDef$c_name for (self: MPropDef): String */
1590 val* nitc___nitc__MPropDef___nitc__model_base__MEntity__c_name(val* self) {
1591 val* var /* : String */;
1592 short int var1 /* : Bool */;
1593 val* var2 /* : String */;
1594 val* var3 /* : String */;
1595 val* var5 /* : FlatBuffer */;
1596 val* var_res /* var res: FlatBuffer */;
1597 val* var7 /* : MClassDef */;
1598 val* var9 /* : MClassDef */;
1599 val* var10 /* : String */;
1600 static val* varonce;
1601 val* var11 /* : String */;
1602 char* var12 /* : CString */;
1603 val* var13 /* : String */;
1604 val* var14 /* : nullable Int */;
1605 val* var15 /* : nullable Int */;
1606 val* var16 /* : nullable Bool */;
1607 val* var17 /* : nullable Bool */;
1608 val* var18 /* : MClassDef */;
1609 val* var20 /* : MClassDef */;
1610 val* var21 /* : MClass */;
1611 val* var23 /* : MClass */;
1612 val* var24 /* : MProperty */;
1613 val* var26 /* : MProperty */;
1614 val* var27 /* : MClassDef */;
1615 val* var29 /* : MClassDef */;
1616 val* var30 /* : MClass */;
1617 val* var32 /* : MClass */;
1618 short int var33 /* : Bool */;
1619 val* var_other /* var other: nullable Object */;
1620 short int var35 /* : Bool */;
1621 short int var37 /* : Bool */;
1622 val* var38 /* : String */;
1623 val* var39 /* : String */;
1624 val* var40 /* : MClassDef */;
1625 val* var42 /* : MClassDef */;
1626 val* var43 /* : MModule */;
1627 val* var45 /* : MModule */;
1628 val* var46 /* : MProperty */;
1629 val* var48 /* : MProperty */;
1630 val* var49 /* : MClassDef */;
1631 val* var51 /* : MClassDef */;
1632 val* var52 /* : MModule */;
1633 val* var54 /* : MModule */;
1634 short int var55 /* : Bool */;
1635 val* var_other57 /* var other: nullable Object */;
1636 short int var58 /* : Bool */;
1637 short int var59 /* : Bool */;
1638 val* var60 /* : MProperty */;
1639 val* var62 /* : MProperty */;
1640 val* var63 /* : MClassDef */;
1641 val* var65 /* : MClassDef */;
1642 val* var66 /* : MModule */;
1643 val* var68 /* : MModule */;
1644 val* var69 /* : String */;
1645 static val* varonce70;
1646 val* var71 /* : String */;
1647 char* var72 /* : CString */;
1648 val* var73 /* : String */;
1649 val* var74 /* : nullable Int */;
1650 val* var75 /* : nullable Int */;
1651 val* var76 /* : nullable Bool */;
1652 val* var77 /* : nullable Bool */;
1653 val* var78 /* : MClassDef */;
1654 val* var80 /* : MClassDef */;
1655 val* var81 /* : MClass */;
1656 val* var83 /* : MClass */;
1657 val* var84 /* : MProperty */;
1658 val* var86 /* : MProperty */;
1659 val* var87 /* : MClassDef */;
1660 val* var89 /* : MClassDef */;
1661 val* var90 /* : MClass */;
1662 val* var92 /* : MClass */;
1663 short int var93 /* : Bool */;
1664 short int var95 /* : Bool */;
1665 short int var96 /* : Bool */;
1666 val* var97 /* : MProperty */;
1667 val* var99 /* : MProperty */;
1668 val* var100 /* : MClassDef */;
1669 val* var102 /* : MClassDef */;
1670 val* var103 /* : String */;
1671 val* var104 /* : String */;
1672 static val* varonce105;
1673 val* var106 /* : String */;
1674 char* var107 /* : CString */;
1675 val* var108 /* : String */;
1676 val* var109 /* : nullable Int */;
1677 val* var110 /* : nullable Int */;
1678 val* var111 /* : nullable Bool */;
1679 val* var112 /* : nullable Bool */;
1680 val* var113 /* : MProperty */;
1681 val* var115 /* : MProperty */;
1682 val* var116 /* : String */;
1683 val* var118 /* : String */;
1684 val* var119 /* : String */;
1685 val* var120 /* : String */;
1686 var1 = self->attrs[COLOR_nitc__model__MPropDef___c_name].val != NULL; /* _c_name on <self:MPropDef> */
1687 if(likely(var1)) {
1688 var2 = self->attrs[COLOR_nitc__model__MPropDef___c_name].val; /* _c_name on <self:MPropDef> */
1689 if (unlikely(var2 == NULL)) {
1690 if(catchStack.cursor >= 0){
1691 longjmp(catchStack.envs[catchStack.cursor], 1);
1692 }
1693 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _c_name");
1694 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2428);
1695 fatal_exit(1);
1696 }
1697 } else {
1698 {
1699 var5 = NEW_core__FlatBuffer(&type_core__FlatBuffer);
1700 {
1701 { /* Inline flat$FlatBuffer$init (var5) on <var5:FlatBuffer> */
1702 {
1703 ((void(*)(val* self))(var5->class->vft[COLOR_core___core__FlatBuffer___core__kernel__Object__init]))(var5); /* init on <var5:FlatBuffer>*/
1704 }
1705 RET_LABEL6:(void)0;
1706 }
1707 }
1708 var_res = var5;
1709 {
1710 { /* Inline model$MPropDef$mclassdef (self) on <self:MPropDef> */
1711 var9 = self->attrs[COLOR_nitc__model__MPropDef___mclassdef].val; /* _mclassdef on <self:MPropDef> */
1712 if (unlikely(var9 == NULL)) {
1713 if(catchStack.cursor >= 0){
1714 longjmp(catchStack.envs[catchStack.cursor], 1);
1715 }
1716 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
1717 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2354);
1718 fatal_exit(1);
1719 }
1720 var7 = var9;
1721 RET_LABEL8:(void)0;
1722 }
1723 }
1724 {
1725 var10 = nitc___nitc__MClassDef___nitc__model_base__MEntity__c_name(var7);
1726 }
1727 {
1728 core___core__FlatBuffer___core__abstract_text__Buffer__append(var_res, var10); /* Direct call flat$FlatBuffer$append on <var_res:FlatBuffer>*/
1729 }
1730 if (likely(varonce!=NULL)) {
1731 var11 = varonce;
1732 } else {
1733 var12 = "___";
1734 var14 = (val*)(3l<<2|1);
1735 var15 = (val*)(3l<<2|1);
1736 var16 = (val*)((long)(0)<<2|3);
1737 var17 = (val*)((long)(0)<<2|3);
1738 var13 = core__flat___CString___to_s_unsafe(var12, var14, var15, var16, var17);
1739 var11 = var13;
1740 varonce = var11;
1741 }
1742 {
1743 core___core__FlatBuffer___core__abstract_text__Buffer__append(var_res, var11); /* Direct call flat$FlatBuffer$append on <var_res:FlatBuffer>*/
1744 }
1745 {
1746 { /* Inline model$MPropDef$mclassdef (self) on <self:MPropDef> */
1747 var20 = self->attrs[COLOR_nitc__model__MPropDef___mclassdef].val; /* _mclassdef on <self:MPropDef> */
1748 if (unlikely(var20 == NULL)) {
1749 if(catchStack.cursor >= 0){
1750 longjmp(catchStack.envs[catchStack.cursor], 1);
1751 }
1752 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
1753 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2354);
1754 fatal_exit(1);
1755 }
1756 var18 = var20;
1757 RET_LABEL19:(void)0;
1758 }
1759 }
1760 {
1761 { /* Inline model$MClassDef$mclass (var18) on <var18:MClassDef> */
1762 var23 = var18->attrs[COLOR_nitc__model__MClassDef___mclass].val; /* _mclass on <var18:MClassDef> */
1763 if (unlikely(var23 == NULL)) {
1764 if(catchStack.cursor >= 0){
1765 longjmp(catchStack.envs[catchStack.cursor], 1);
1766 }
1767 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
1768 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 591);
1769 fatal_exit(1);
1770 }
1771 var21 = var23;
1772 RET_LABEL22:(void)0;
1773 }
1774 }
1775 {
1776 { /* Inline model$MPropDef$mproperty (self) on <self:MPropDef> */
1777 var26 = self->attrs[COLOR_nitc__model__MPropDef___mproperty].val; /* _mproperty on <self:MPropDef> */
1778 if (unlikely(var26 == NULL)) {
1779 if(catchStack.cursor >= 0){
1780 longjmp(catchStack.envs[catchStack.cursor], 1);
1781 }
1782 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
1783 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2357);
1784 fatal_exit(1);
1785 }
1786 var24 = var26;
1787 RET_LABEL25:(void)0;
1788 }
1789 }
1790 {
1791 { /* Inline model$MProperty$intro_mclassdef (var24) on <var24:MProperty> */
1792 var29 = var24->attrs[COLOR_nitc__model__MProperty___intro_mclassdef].val; /* _intro_mclassdef on <var24:MProperty> */
1793 if (unlikely(var29 == NULL)) {
1794 if(catchStack.cursor >= 0){
1795 longjmp(catchStack.envs[catchStack.cursor], 1);
1796 }
1797 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _intro_mclassdef");
1798 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2042);
1799 fatal_exit(1);
1800 }
1801 var27 = var29;
1802 RET_LABEL28:(void)0;
1803 }
1804 }
1805 {
1806 { /* Inline model$MClassDef$mclass (var27) on <var27:MClassDef> */
1807 var32 = var27->attrs[COLOR_nitc__model__MClassDef___mclass].val; /* _mclass on <var27:MClassDef> */
1808 if (unlikely(var32 == NULL)) {
1809 if(catchStack.cursor >= 0){
1810 longjmp(catchStack.envs[catchStack.cursor], 1);
1811 }
1812 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
1813 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 591);
1814 fatal_exit(1);
1815 }
1816 var30 = var32;
1817 RET_LABEL31:(void)0;
1818 }
1819 }
1820 {
1821 { /* Inline kernel$Object$== (var21,var30) on <var21:MClass> */
1822 var_other = var30;
1823 {
1824 { /* Inline kernel$Object$is_same_instance (var21,var_other) on <var21:MClass> */
1825 var37 = var21 == var_other;
1826 var35 = var37;
1827 goto RET_LABEL36;
1828 RET_LABEL36:(void)0;
1829 }
1830 }
1831 var33 = var35;
1832 goto RET_LABEL34;
1833 RET_LABEL34:(void)0;
1834 }
1835 }
1836 if (var33){
1837 {
1838 var38 = nitc___nitc__MPropDef___nitc__model_base__MEntity__name(self);
1839 }
1840 {
1841 var39 = core___core__Text___to_cmangle(var38);
1842 }
1843 {
1844 core___core__FlatBuffer___core__abstract_text__Buffer__append(var_res, var39); /* Direct call flat$FlatBuffer$append on <var_res:FlatBuffer>*/
1845 }
1846 } else {
1847 {
1848 { /* Inline model$MPropDef$mclassdef (self) on <self:MPropDef> */
1849 var42 = self->attrs[COLOR_nitc__model__MPropDef___mclassdef].val; /* _mclassdef on <self:MPropDef> */
1850 if (unlikely(var42 == NULL)) {
1851 if(catchStack.cursor >= 0){
1852 longjmp(catchStack.envs[catchStack.cursor], 1);
1853 }
1854 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
1855 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2354);
1856 fatal_exit(1);
1857 }
1858 var40 = var42;
1859 RET_LABEL41:(void)0;
1860 }
1861 }
1862 {
1863 { /* Inline model$MClassDef$mmodule (var40) on <var40:MClassDef> */
1864 var45 = var40->attrs[COLOR_nitc__model__MClassDef___mmodule].val; /* _mmodule on <var40:MClassDef> */
1865 if (unlikely(var45 == NULL)) {
1866 if(catchStack.cursor >= 0){
1867 longjmp(catchStack.envs[catchStack.cursor], 1);
1868 }
1869 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mmodule");
1870 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 588);
1871 fatal_exit(1);
1872 }
1873 var43 = var45;
1874 RET_LABEL44:(void)0;
1875 }
1876 }
1877 {
1878 { /* Inline model$MPropDef$mproperty (self) on <self:MPropDef> */
1879 var48 = self->attrs[COLOR_nitc__model__MPropDef___mproperty].val; /* _mproperty on <self:MPropDef> */
1880 if (unlikely(var48 == NULL)) {
1881 if(catchStack.cursor >= 0){
1882 longjmp(catchStack.envs[catchStack.cursor], 1);
1883 }
1884 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
1885 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2357);
1886 fatal_exit(1);
1887 }
1888 var46 = var48;
1889 RET_LABEL47:(void)0;
1890 }
1891 }
1892 {
1893 { /* Inline model$MProperty$intro_mclassdef (var46) on <var46:MProperty> */
1894 var51 = var46->attrs[COLOR_nitc__model__MProperty___intro_mclassdef].val; /* _intro_mclassdef on <var46:MProperty> */
1895 if (unlikely(var51 == NULL)) {
1896 if(catchStack.cursor >= 0){
1897 longjmp(catchStack.envs[catchStack.cursor], 1);
1898 }
1899 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _intro_mclassdef");
1900 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2042);
1901 fatal_exit(1);
1902 }
1903 var49 = var51;
1904 RET_LABEL50:(void)0;
1905 }
1906 }
1907 {
1908 { /* Inline model$MClassDef$mmodule (var49) on <var49:MClassDef> */
1909 var54 = var49->attrs[COLOR_nitc__model__MClassDef___mmodule].val; /* _mmodule on <var49:MClassDef> */
1910 if (unlikely(var54 == NULL)) {
1911 if(catchStack.cursor >= 0){
1912 longjmp(catchStack.envs[catchStack.cursor], 1);
1913 }
1914 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mmodule");
1915 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 588);
1916 fatal_exit(1);
1917 }
1918 var52 = var54;
1919 RET_LABEL53:(void)0;
1920 }
1921 }
1922 {
1923 { /* Inline kernel$Object$!= (var43,var52) on <var43:MModule> */
1924 var_other57 = var52;
1925 {
1926 var58 = ((short int(*)(val* self, val* p0))(var43->class->vft[COLOR_core__kernel__Object___61d_61d]))(var43, var_other57); /* == on <var43:MModule>*/
1927 }
1928 var59 = !var58;
1929 var55 = var59;
1930 goto RET_LABEL56;
1931 RET_LABEL56:(void)0;
1932 }
1933 }
1934 if (var55){
1935 {
1936 { /* Inline model$MPropDef$mproperty (self) on <self:MPropDef> */
1937 var62 = self->attrs[COLOR_nitc__model__MPropDef___mproperty].val; /* _mproperty on <self:MPropDef> */
1938 if (unlikely(var62 == NULL)) {
1939 if(catchStack.cursor >= 0){
1940 longjmp(catchStack.envs[catchStack.cursor], 1);
1941 }
1942 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
1943 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2357);
1944 fatal_exit(1);
1945 }
1946 var60 = var62;
1947 RET_LABEL61:(void)0;
1948 }
1949 }
1950 {
1951 { /* Inline model$MProperty$intro_mclassdef (var60) on <var60:MProperty> */
1952 var65 = var60->attrs[COLOR_nitc__model__MProperty___intro_mclassdef].val; /* _intro_mclassdef on <var60:MProperty> */
1953 if (unlikely(var65 == NULL)) {
1954 if(catchStack.cursor >= 0){
1955 longjmp(catchStack.envs[catchStack.cursor], 1);
1956 }
1957 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _intro_mclassdef");
1958 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2042);
1959 fatal_exit(1);
1960 }
1961 var63 = var65;
1962 RET_LABEL64:(void)0;
1963 }
1964 }
1965 {
1966 { /* Inline model$MClassDef$mmodule (var63) on <var63:MClassDef> */
1967 var68 = var63->attrs[COLOR_nitc__model__MClassDef___mmodule].val; /* _mmodule on <var63:MClassDef> */
1968 if (unlikely(var68 == NULL)) {
1969 if(catchStack.cursor >= 0){
1970 longjmp(catchStack.envs[catchStack.cursor], 1);
1971 }
1972 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mmodule");
1973 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 588);
1974 fatal_exit(1);
1975 }
1976 var66 = var68;
1977 RET_LABEL67:(void)0;
1978 }
1979 }
1980 {
1981 var69 = nitc___nitc__MModule___nitc__model_base__MEntity__c_name(var66);
1982 }
1983 {
1984 core___core__FlatBuffer___core__abstract_text__Buffer__append(var_res, var69); /* Direct call flat$FlatBuffer$append on <var_res:FlatBuffer>*/
1985 }
1986 if (likely(varonce70!=NULL)) {
1987 var71 = varonce70;
1988 } else {
1989 var72 = "__";
1990 var74 = (val*)(2l<<2|1);
1991 var75 = (val*)(2l<<2|1);
1992 var76 = (val*)((long)(0)<<2|3);
1993 var77 = (val*)((long)(0)<<2|3);
1994 var73 = core__flat___CString___to_s_unsafe(var72, var74, var75, var76, var77);
1995 var71 = var73;
1996 varonce70 = var71;
1997 }
1998 {
1999 core___core__FlatBuffer___core__abstract_text__Buffer__append(var_res, var71); /* Direct call flat$FlatBuffer$append on <var_res:FlatBuffer>*/
2000 }
2001 } else {
2002 }
2003 {
2004 { /* Inline model$MPropDef$mclassdef (self) on <self:MPropDef> */
2005 var80 = self->attrs[COLOR_nitc__model__MPropDef___mclassdef].val; /* _mclassdef on <self:MPropDef> */
2006 if (unlikely(var80 == NULL)) {
2007 if(catchStack.cursor >= 0){
2008 longjmp(catchStack.envs[catchStack.cursor], 1);
2009 }
2010 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
2011 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2354);
2012 fatal_exit(1);
2013 }
2014 var78 = var80;
2015 RET_LABEL79:(void)0;
2016 }
2017 }
2018 {
2019 { /* Inline model$MClassDef$mclass (var78) on <var78:MClassDef> */
2020 var83 = var78->attrs[COLOR_nitc__model__MClassDef___mclass].val; /* _mclass on <var78:MClassDef> */
2021 if (unlikely(var83 == NULL)) {
2022 if(catchStack.cursor >= 0){
2023 longjmp(catchStack.envs[catchStack.cursor], 1);
2024 }
2025 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
2026 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 591);
2027 fatal_exit(1);
2028 }
2029 var81 = var83;
2030 RET_LABEL82:(void)0;
2031 }
2032 }
2033 {
2034 { /* Inline model$MPropDef$mproperty (self) on <self:MPropDef> */
2035 var86 = self->attrs[COLOR_nitc__model__MPropDef___mproperty].val; /* _mproperty on <self:MPropDef> */
2036 if (unlikely(var86 == NULL)) {
2037 if(catchStack.cursor >= 0){
2038 longjmp(catchStack.envs[catchStack.cursor], 1);
2039 }
2040 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
2041 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2357);
2042 fatal_exit(1);
2043 }
2044 var84 = var86;
2045 RET_LABEL85:(void)0;
2046 }
2047 }
2048 {
2049 { /* Inline model$MProperty$intro_mclassdef (var84) on <var84:MProperty> */
2050 var89 = var84->attrs[COLOR_nitc__model__MProperty___intro_mclassdef].val; /* _intro_mclassdef on <var84:MProperty> */
2051 if (unlikely(var89 == NULL)) {
2052 if(catchStack.cursor >= 0){
2053 longjmp(catchStack.envs[catchStack.cursor], 1);
2054 }
2055 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _intro_mclassdef");
2056 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2042);
2057 fatal_exit(1);
2058 }
2059 var87 = var89;
2060 RET_LABEL88:(void)0;
2061 }
2062 }
2063 {
2064 { /* Inline model$MClassDef$mclass (var87) on <var87:MClassDef> */
2065 var92 = var87->attrs[COLOR_nitc__model__MClassDef___mclass].val; /* _mclass on <var87:MClassDef> */
2066 if (unlikely(var92 == NULL)) {
2067 if(catchStack.cursor >= 0){
2068 longjmp(catchStack.envs[catchStack.cursor], 1);
2069 }
2070 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
2071 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 591);
2072 fatal_exit(1);
2073 }
2074 var90 = var92;
2075 RET_LABEL91:(void)0;
2076 }
2077 }
2078 {
2079 { /* Inline kernel$Object$!= (var81,var90) on <var81:MClass> */
2080 var_other57 = var90;
2081 {
2082 var95 = ((short int(*)(val* self, val* p0))(var81->class->vft[COLOR_core__kernel__Object___61d_61d]))(var81, var_other57); /* == on <var81:MClass>*/
2083 }
2084 var96 = !var95;
2085 var93 = var96;
2086 goto RET_LABEL94;
2087 RET_LABEL94:(void)0;
2088 }
2089 }
2090 if (var93){
2091 {
2092 { /* Inline model$MPropDef$mproperty (self) on <self:MPropDef> */
2093 var99 = self->attrs[COLOR_nitc__model__MPropDef___mproperty].val; /* _mproperty on <self:MPropDef> */
2094 if (unlikely(var99 == NULL)) {
2095 if(catchStack.cursor >= 0){
2096 longjmp(catchStack.envs[catchStack.cursor], 1);
2097 }
2098 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
2099 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2357);
2100 fatal_exit(1);
2101 }
2102 var97 = var99;
2103 RET_LABEL98:(void)0;
2104 }
2105 }
2106 {
2107 { /* Inline model$MProperty$intro_mclassdef (var97) on <var97:MProperty> */
2108 var102 = var97->attrs[COLOR_nitc__model__MProperty___intro_mclassdef].val; /* _intro_mclassdef on <var97:MProperty> */
2109 if (unlikely(var102 == NULL)) {
2110 if(catchStack.cursor >= 0){
2111 longjmp(catchStack.envs[catchStack.cursor], 1);
2112 }
2113 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _intro_mclassdef");
2114 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2042);
2115 fatal_exit(1);
2116 }
2117 var100 = var102;
2118 RET_LABEL101:(void)0;
2119 }
2120 }
2121 {
2122 var103 = nitc___nitc__MClassDef___nitc__model_base__MEntity__name(var100);
2123 }
2124 {
2125 var104 = core___core__Text___to_cmangle(var103);
2126 }
2127 {
2128 core___core__FlatBuffer___core__abstract_text__Buffer__append(var_res, var104); /* Direct call flat$FlatBuffer$append on <var_res:FlatBuffer>*/
2129 }
2130 if (likely(varonce105!=NULL)) {
2131 var106 = varonce105;
2132 } else {
2133 var107 = "__";
2134 var109 = (val*)(2l<<2|1);
2135 var110 = (val*)(2l<<2|1);
2136 var111 = (val*)((long)(0)<<2|3);
2137 var112 = (val*)((long)(0)<<2|3);
2138 var108 = core__flat___CString___to_s_unsafe(var107, var109, var110, var111, var112);
2139 var106 = var108;
2140 varonce105 = var106;
2141 }
2142 {
2143 core___core__FlatBuffer___core__abstract_text__Buffer__append(var_res, var106); /* Direct call flat$FlatBuffer$append on <var_res:FlatBuffer>*/
2144 }
2145 } else {
2146 }
2147 {
2148 { /* Inline model$MPropDef$mproperty (self) on <self:MPropDef> */
2149 var115 = self->attrs[COLOR_nitc__model__MPropDef___mproperty].val; /* _mproperty on <self:MPropDef> */
2150 if (unlikely(var115 == NULL)) {
2151 if(catchStack.cursor >= 0){
2152 longjmp(catchStack.envs[catchStack.cursor], 1);
2153 }
2154 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
2155 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2357);
2156 fatal_exit(1);
2157 }
2158 var113 = var115;
2159 RET_LABEL114:(void)0;
2160 }
2161 }
2162 {
2163 { /* Inline model$MProperty$name (var113) on <var113:MProperty> */
2164 var118 = var113->attrs[COLOR_nitc__model__MProperty___name].val; /* _name on <var113:MProperty> */
2165 if (unlikely(var118 == NULL)) {
2166 if(catchStack.cursor >= 0){
2167 longjmp(catchStack.envs[catchStack.cursor], 1);
2168 }
2169 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _name");
2170 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2047);
2171 fatal_exit(1);
2172 }
2173 var116 = var118;
2174 RET_LABEL117:(void)0;
2175 }
2176 }
2177 {
2178 var119 = core___core__Text___to_cmangle(var116);
2179 }
2180 {
2181 core___core__FlatBuffer___core__abstract_text__Buffer__append(var_res, var119); /* Direct call flat$FlatBuffer$append on <var_res:FlatBuffer>*/
2182 }
2183 }
2184 {
2185 var120 = core___core__FlatBuffer___core__abstract_text__Object__to_s(var_res);
2186 }
2187 var3 = var120;
2188 goto RET_LABEL4;
2189 RET_LABEL4:(void)0;
2190 }
2191 self->attrs[COLOR_nitc__model__MPropDef___c_name].val = var3; /* _c_name on <self:MPropDef> */
2192 var2 = var3;
2193 }
2194 var = var2;
2195 RET_LABEL:;
2196 return var;
2197 }
2198 /* method model$MPropDef$model for (self: MPropDef): Model */
2199 val* nitc___nitc__MPropDef___nitc__model_base__MEntity__model(val* self) {
2200 val* var /* : Model */;
2201 val* var1 /* : MClassDef */;
2202 val* var3 /* : MClassDef */;
2203 val* var4 /* : Model */;
2204 {
2205 { /* Inline model$MPropDef$mclassdef (self) on <self:MPropDef> */
2206 var3 = self->attrs[COLOR_nitc__model__MPropDef___mclassdef].val; /* _mclassdef on <self:MPropDef> */
2207 if (unlikely(var3 == NULL)) {
2208 if(catchStack.cursor >= 0){
2209 longjmp(catchStack.envs[catchStack.cursor], 1);
2210 }
2211 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
2212 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2354);
2213 fatal_exit(1);
2214 }
2215 var1 = var3;
2216 RET_LABEL2:(void)0;
2217 }
2218 }
2219 {
2220 var4 = nitc___nitc__MClassDef___nitc__model_base__MEntity__model(var1);
2221 }
2222 var = var4;
2223 goto RET_LABEL;
2224 RET_LABEL:;
2225 return var;
2226 }
2227 /* method model$MPropDef$to_s for (self: MPropDef): String */
2228 val* nitc___nitc__MPropDef___core__abstract_text__Object__to_s(val* self) {
2229 val* var /* : String */;
2230 val* var1 /* : String */;
2231 var1 = self->attrs[COLOR_nitc__model__MPropDef___to_s].val; /* _to_s on <self:MPropDef> */
2232 if (unlikely(var1 == NULL)) {
2233 if(catchStack.cursor >= 0){
2234 longjmp(catchStack.envs[catchStack.cursor], 1);
2235 }
2236 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _to_s");
2237 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2450);
2238 fatal_exit(1);
2239 }
2240 var = var1;
2241 RET_LABEL:;
2242 return var;
2243 }
2244 /* method model$MPropDef$to_s= for (self: MPropDef, String) */
2245 void nitc___nitc__MPropDef___to_s_61d(val* self, val* p0) {
2246 self->attrs[COLOR_nitc__model__MPropDef___to_s].val = p0; /* _to_s on <self:MPropDef> */
2247 RET_LABEL:;
2248 }
2249 /* method model$MPropDef$is_intro for (self: MPropDef): Bool */
2250 short int nitc___nitc__MPropDef___is_intro(val* self) {
2251 short int var /* : Bool */;
2252 short int var1 /* : Bool */;
2253 val* var2 /* : MProperty */;
2254 val* var4 /* : MProperty */;
2255 short int var5 /* : Bool */;
2256 short int var_ /* var : Bool */;
2257 val* var6 /* : MProperty */;
2258 val* var8 /* : MProperty */;
2259 val* var9 /* : MPropDef */;
2260 val* var11 /* : MPropDef */;
2261 short int var12 /* : Bool */;
2262 val* var_other /* var other: nullable Object */;
2263 short int var14 /* : Bool */;
2264 short int var16 /* : Bool */;
2265 {
2266 { /* Inline model$MPropDef$mproperty (self) on <self:MPropDef> */
2267 var4 = self->attrs[COLOR_nitc__model__MPropDef___mproperty].val; /* _mproperty on <self:MPropDef> */
2268 if (unlikely(var4 == NULL)) {
2269 if(catchStack.cursor >= 0){
2270 longjmp(catchStack.envs[catchStack.cursor], 1);
2271 }
2272 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
2273 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2357);
2274 fatal_exit(1);
2275 }
2276 var2 = var4;
2277 RET_LABEL3:(void)0;
2278 }
2279 }
2280 var5 = var2->attrs[COLOR_nitc__model__MProperty___intro].val != NULL; /* _intro on <var2:MProperty> */
2281 var_ = var5;
2282 if (var5){
2283 {
2284 { /* Inline model$MPropDef$mproperty (self) on <self:MPropDef> */
2285 var8 = self->attrs[COLOR_nitc__model__MPropDef___mproperty].val; /* _mproperty on <self:MPropDef> */
2286 if (unlikely(var8 == NULL)) {
2287 if(catchStack.cursor >= 0){
2288 longjmp(catchStack.envs[catchStack.cursor], 1);
2289 }
2290 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
2291 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2357);
2292 fatal_exit(1);
2293 }
2294 var6 = var8;
2295 RET_LABEL7:(void)0;
2296 }
2297 }
2298 {
2299 { /* Inline model$MProperty$intro (var6) on <var6:MProperty> */
2300 var11 = var6->attrs[COLOR_nitc__model__MProperty___intro].val; /* _intro on <var6:MProperty> */
2301 if (unlikely(var11 == NULL)) {
2302 if(catchStack.cursor >= 0){
2303 longjmp(catchStack.envs[catchStack.cursor], 1);
2304 }
2305 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _intro");
2306 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2097);
2307 fatal_exit(1);
2308 }
2309 var9 = var11;
2310 RET_LABEL10:(void)0;
2311 }
2312 }
2313 {
2314 { /* Inline kernel$Object$== (var9,self) on <var9:MPropDef> */
2315 var_other = self;
2316 {
2317 { /* Inline kernel$Object$is_same_instance (var9,var_other) on <var9:MPropDef> */
2318 var16 = var9 == var_other;
2319 var14 = var16;
2320 goto RET_LABEL15;
2321 RET_LABEL15:(void)0;
2322 }
2323 }
2324 var12 = var14;
2325 goto RET_LABEL13;
2326 RET_LABEL13:(void)0;
2327 }
2328 }
2329 var1 = var12;
2330 } else {
2331 var1 = var_;
2332 }
2333 var = var1;
2334 goto RET_LABEL;
2335 RET_LABEL:;
2336 return var;
2337 }
2338 /* method model$MPropDef$lookup_next_definition for (self: MPropDef, MModule, MType): MPropDef */
2339 val* nitc___nitc__MPropDef___lookup_next_definition(val* self, val* p0, val* p1) {
2340 val* var /* : MPropDef */;
2341 val* var_mmodule /* var mmodule: MModule */;
2342 val* var_mtype /* var mtype: MType */;
2343 short int var1 /* : Bool */;
2344 short int var2 /* : Bool */;
2345 val* var3 /* : MProperty */;
2346 val* var5 /* : MProperty */;
2347 val* var6 /* : Array[MPropDef] */;
2348 val* var_mpropdefs /* var mpropdefs: Array[MPropDef] */;
2349 val* var7 /* : IndexedIterator[nullable Object] */;
2350 val* var_i /* var i: IndexedIterator[MPropDef] */;
2351 short int var8 /* : Bool */;
2352 short int var9 /* : Bool */;
2353 short int var_ /* var : Bool */;
2354 val* var10 /* : nullable Object */;
2355 short int var11 /* : Bool */;
2356 val* var_other /* var other: nullable Object */;
2357 short int var13 /* : Bool */;
2358 short int var14 /* : Bool */;
2359 short int var15 /* : Bool */;
2360 short int var16 /* : Bool */;
2361 val* var17 /* : nullable Object */;
2362 short int var18 /* : Bool */;
2363 int cltype;
2364 int idtype;
2365 const struct type* type_struct;
2366 const char* var_class_name;
2367 var_mmodule = p0;
2368 var_mtype = p1;
2369 {
2370 var1 = ((short int(*)(val* self))(var_mtype->class->vft[COLOR_nitc__model__MType__need_anchor]))(var_mtype); /* need_anchor on <var_mtype:MType>*/
2371 }
2372 var2 = !var1;
2373 if (unlikely(!var2)) {
2374 if(catchStack.cursor >= 0){
2375 longjmp(catchStack.envs[catchStack.cursor], 1);
2376 }
2377 PRINT_ERROR("Runtime error: %s", "Assert failed");
2378 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2464);
2379 fatal_exit(1);
2380 }
2381 {
2382 { /* Inline model$MPropDef$mproperty (self) on <self:MPropDef> */
2383 var5 = self->attrs[COLOR_nitc__model__MPropDef___mproperty].val; /* _mproperty on <self:MPropDef> */
2384 if (unlikely(var5 == NULL)) {
2385 if(catchStack.cursor >= 0){
2386 longjmp(catchStack.envs[catchStack.cursor], 1);
2387 }
2388 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
2389 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2357);
2390 fatal_exit(1);
2391 }
2392 var3 = var5;
2393 RET_LABEL4:(void)0;
2394 }
2395 }
2396 {
2397 var6 = nitc___nitc__MProperty___lookup_all_definitions(var3, var_mmodule, var_mtype);
2398 }
2399 var_mpropdefs = var6;
2400 {
2401 var7 = core___core__AbstractArrayRead___core__abstract_collection__Collection__iterator(var_mpropdefs);
2402 }
2403 var_i = var7;
2404 for(;;) {
2405 {
2406 var9 = ((short int(*)(val* self))((((long)var_i&3)?class_info[((long)var_i&3)]:var_i->class)->vft[COLOR_core__abstract_collection__Iterator__is_ok]))(var_i); /* is_ok on <var_i:IndexedIterator[MPropDef]>*/
2407 }
2408 var_ = var9;
2409 if (var9){
2410 {
2411 var10 = ((val*(*)(val* self))((((long)var_i&3)?class_info[((long)var_i&3)]:var_i->class)->vft[COLOR_core__abstract_collection__Iterator__item]))(var_i); /* item on <var_i:IndexedIterator[MPropDef]>*/
2412 }
2413 {
2414 { /* Inline kernel$Object$!= (var10,self) on <var10:nullable Object(MPropDef)> */
2415 var_other = self;
2416 {
2417 var13 = ((short int(*)(val* self, val* p0))(var10->class->vft[COLOR_core__kernel__Object___61d_61d]))(var10, var_other); /* == on <var10:nullable Object(MPropDef)>*/
2418 }
2419 var14 = !var13;
2420 var11 = var14;
2421 goto RET_LABEL12;
2422 RET_LABEL12:(void)0;
2423 }
2424 }
2425 var8 = var11;
2426 } else {
2427 var8 = var_;
2428 }
2429 if (var8){
2430 {
2431 ((void(*)(val* self))((((long)var_i&3)?class_info[((long)var_i&3)]:var_i->class)->vft[COLOR_core__abstract_collection__Iterator__next]))(var_i); /* next on <var_i:IndexedIterator[MPropDef]>*/
2432 }
2433 } else {
2434 goto BREAK_label;
2435 }
2436 }
2437 BREAK_label: (void)0;
2438 {
2439 var15 = ((short int(*)(val* self))((((long)var_i&3)?class_info[((long)var_i&3)]:var_i->class)->vft[COLOR_core__abstract_collection__Iterator__is_ok]))(var_i); /* is_ok on <var_i:IndexedIterator[MPropDef]>*/
2440 }
2441 if (unlikely(!var15)) {
2442 if(catchStack.cursor >= 0){
2443 longjmp(catchStack.envs[catchStack.cursor], 1);
2444 }
2445 PRINT_ERROR("Runtime error: %s", "Assert \'has_property\' failed");
2446 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2469);
2447 fatal_exit(1);
2448 }
2449 {
2450 ((void(*)(val* self))((((long)var_i&3)?class_info[((long)var_i&3)]:var_i->class)->vft[COLOR_core__abstract_collection__Iterator__next]))(var_i); /* next on <var_i:IndexedIterator[MPropDef]>*/
2451 }
2452 {
2453 var16 = ((short int(*)(val* self))((((long)var_i&3)?class_info[((long)var_i&3)]:var_i->class)->vft[COLOR_core__abstract_collection__Iterator__is_ok]))(var_i); /* is_ok on <var_i:IndexedIterator[MPropDef]>*/
2454 }
2455 if (unlikely(!var16)) {
2456 if(catchStack.cursor >= 0){
2457 longjmp(catchStack.envs[catchStack.cursor], 1);
2458 }
2459 PRINT_ERROR("Runtime error: %s", "Assert \'has_next_property\' failed");
2460 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2471);
2461 fatal_exit(1);
2462 }
2463 {
2464 var17 = ((val*(*)(val* self))((((long)var_i&3)?class_info[((long)var_i&3)]:var_i->class)->vft[COLOR_core__abstract_collection__Iterator__item]))(var_i); /* item on <var_i:IndexedIterator[MPropDef]>*/
2465 }
2466 /* <var17:nullable Object(MPropDef)> isa MPROPDEF */
2467 type_struct = self->type->resolution_table->types[COLOR_nitc__model__MPropDef__MPROPDEF];
2468 cltype = type_struct->color;
2469 idtype = type_struct->id;
2470 if(cltype >= var17->type->table_size) {
2471 var18 = 0;
2472 } else {
2473 var18 = var17->type->type_table[cltype] == idtype;
2474 }
2475 if (unlikely(!var18)) {
2476 var_class_name = var17 == NULL ? "null" : var17->type->name;
2477 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "MPROPDEF", var_class_name);
2478 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2472);
2479 fatal_exit(1);
2480 }
2481 var = var17;
2482 goto RET_LABEL;
2483 RET_LABEL:;
2484 return var;
2485 }
2486 /* method model$MMethodDef$msignature for (self: MMethodDef): nullable MSignature */
2487 val* nitc___nitc__MMethodDef___msignature(val* self) {
2488 val* var /* : nullable MSignature */;
2489 val* var1 /* : nullable MSignature */;
2490 var1 = self->attrs[COLOR_nitc__model__MMethodDef___msignature].val; /* _msignature on <self:MMethodDef> */
2491 var = var1;
2492 RET_LABEL:;
2493 return var;
2494 }
2495 /* method model$MMethodDef$msignature= for (self: MMethodDef, nullable MSignature) */
2496 void nitc___nitc__MMethodDef___msignature_61d(val* self, val* p0) {
2497 self->attrs[COLOR_nitc__model__MMethodDef___msignature].val = p0; /* _msignature on <self:MMethodDef> */
2498 RET_LABEL:;
2499 }
2500 /* method model$MMethodDef$new_msignature for (self: MMethodDef): nullable MSignature */
2501 val* nitc___nitc__MMethodDef___new_msignature(val* self) {
2502 val* var /* : nullable MSignature */;
2503 val* var1 /* : nullable MSignature */;
2504 var1 = self->attrs[COLOR_nitc__model__MMethodDef___new_msignature].val; /* _new_msignature on <self:MMethodDef> */
2505 var = var1;
2506 RET_LABEL:;
2507 return var;
2508 }
2509 /* method model$MMethodDef$new_msignature= for (self: MMethodDef, nullable MSignature) */
2510 void nitc___nitc__MMethodDef___new_msignature_61d(val* self, val* p0) {
2511 self->attrs[COLOR_nitc__model__MMethodDef___new_msignature].val = p0; /* _new_msignature on <self:MMethodDef> */
2512 RET_LABEL:;
2513 }
2514 /* method model$MMethodDef$initializers for (self: MMethodDef): Array[MProperty] */
2515 val* nitc___nitc__MMethodDef___initializers(val* self) {
2516 val* var /* : Array[MProperty] */;
2517 val* var1 /* : Array[MProperty] */;
2518 var1 = self->attrs[COLOR_nitc__model__MMethodDef___initializers].val; /* _initializers on <self:MMethodDef> */
2519 if (unlikely(var1 == NULL)) {
2520 if(catchStack.cursor >= 0){
2521 longjmp(catchStack.envs[catchStack.cursor], 1);
2522 }
2523 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _initializers");
2524 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2492);
2525 fatal_exit(1);
2526 }
2527 var = var1;
2528 RET_LABEL:;
2529 return var;
2530 }
2531 /* method model$MMethodDef$is_abstract for (self: MMethodDef): Bool */
2532 short int nitc___nitc__MMethodDef___is_abstract(val* self) {
2533 short int var /* : Bool */;
2534 short int var1 /* : Bool */;
2535 var1 = self->attrs[COLOR_nitc__model__MMethodDef___is_abstract].s; /* _is_abstract on <self:MMethodDef> */
2536 var = var1;
2537 RET_LABEL:;
2538 return var;
2539 }
2540 /* method model$MMethodDef$is_abstract= for (self: MMethodDef, Bool) */
2541 void nitc___nitc__MMethodDef___is_abstract_61d(val* self, short int p0) {
2542 self->attrs[COLOR_nitc__model__MMethodDef___is_abstract].s = p0; /* _is_abstract on <self:MMethodDef> */
2543 RET_LABEL:;
2544 }
2545 /* method model$MMethodDef$is_intern for (self: MMethodDef): Bool */
2546 short int nitc___nitc__MMethodDef___is_intern(val* self) {
2547 short int var /* : Bool */;
2548 short int var1 /* : Bool */;
2549 var1 = self->attrs[COLOR_nitc__model__MMethodDef___is_intern].s; /* _is_intern on <self:MMethodDef> */
2550 var = var1;
2551 RET_LABEL:;
2552 return var;
2553 }
2554 /* method model$MMethodDef$is_intern= for (self: MMethodDef, Bool) */
2555 void nitc___nitc__MMethodDef___is_intern_61d(val* self, short int p0) {
2556 self->attrs[COLOR_nitc__model__MMethodDef___is_intern].s = p0; /* _is_intern on <self:MMethodDef> */
2557 RET_LABEL:;
2558 }
2559 /* method model$MMethodDef$is_extern for (self: MMethodDef): Bool */
2560 short int nitc___nitc__MMethodDef___is_extern(val* self) {
2561 short int var /* : Bool */;
2562 short int var1 /* : Bool */;
2563 var1 = self->attrs[COLOR_nitc__model__MMethodDef___is_extern].s; /* _is_extern on <self:MMethodDef> */
2564 var = var1;
2565 RET_LABEL:;
2566 return var;
2567 }
2568 /* method model$MMethodDef$is_extern= for (self: MMethodDef, Bool) */
2569 void nitc___nitc__MMethodDef___is_extern_61d(val* self, short int p0) {
2570 self->attrs[COLOR_nitc__model__MMethodDef___is_extern].s = p0; /* _is_extern on <self:MMethodDef> */
2571 RET_LABEL:;
2572 }
2573 /* method model$MMethodDef$constant_value for (self: MMethodDef): nullable Object */
2574 val* nitc___nitc__MMethodDef___constant_value(val* self) {
2575 val* var /* : nullable Object */;
2576 val* var1 /* : nullable Object */;
2577 var1 = self->attrs[COLOR_nitc__model__MMethodDef___constant_value].val; /* _constant_value on <self:MMethodDef> */
2578 var = var1;
2579 RET_LABEL:;
2580 return var;
2581 }
2582 /* method model$MMethodDef$constant_value= for (self: MMethodDef, nullable Object) */
2583 void nitc___nitc__MMethodDef___constant_value_61d(val* self, val* p0) {
2584 self->attrs[COLOR_nitc__model__MMethodDef___constant_value].val = p0; /* _constant_value on <self:MMethodDef> */
2585 RET_LABEL:;
2586 }
2587 /* method model$MAttributeDef$static_mtype for (self: MAttributeDef): nullable MType */
2588 val* nitc___nitc__MAttributeDef___static_mtype(val* self) {
2589 val* var /* : nullable MType */;
2590 val* var1 /* : nullable MType */;
2591 var1 = self->attrs[COLOR_nitc__model__MAttributeDef___static_mtype].val; /* _static_mtype on <self:MAttributeDef> */
2592 var = var1;
2593 RET_LABEL:;
2594 return var;
2595 }
2596 /* method model$MAttributeDef$static_mtype= for (self: MAttributeDef, nullable MType) */
2597 void nitc___nitc__MAttributeDef___static_mtype_61d(val* self, val* p0) {
2598 self->attrs[COLOR_nitc__model__MAttributeDef___static_mtype].val = p0; /* _static_mtype on <self:MAttributeDef> */
2599 RET_LABEL:;
2600 }
2601 /* method model$MVirtualTypeDef$bound for (self: MVirtualTypeDef): nullable MType */
2602 val* nitc___nitc__MVirtualTypeDef___bound(val* self) {
2603 val* var /* : nullable MType */;
2604 val* var1 /* : nullable MType */;
2605 var1 = self->attrs[COLOR_nitc__model__MVirtualTypeDef___bound].val; /* _bound on <self:MVirtualTypeDef> */
2606 var = var1;
2607 RET_LABEL:;
2608 return var;
2609 }
2610 /* method model$MVirtualTypeDef$bound= for (self: MVirtualTypeDef, nullable MType) */
2611 void nitc___nitc__MVirtualTypeDef___bound_61d(val* self, val* p0) {
2612 self->attrs[COLOR_nitc__model__MVirtualTypeDef___bound].val = p0; /* _bound on <self:MVirtualTypeDef> */
2613 RET_LABEL:;
2614 }
2615 /* method model$MVirtualTypeDef$is_fixed for (self: MVirtualTypeDef): Bool */
2616 short int nitc___nitc__MVirtualTypeDef___is_fixed(val* self) {
2617 short int var /* : Bool */;
2618 short int var1 /* : Bool */;
2619 var1 = self->attrs[COLOR_nitc__model__MVirtualTypeDef___is_fixed].s; /* _is_fixed on <self:MVirtualTypeDef> */
2620 var = var1;
2621 RET_LABEL:;
2622 return var;
2623 }
2624 /* method model$MVirtualTypeDef$is_fixed= for (self: MVirtualTypeDef, Bool) */
2625 void nitc___nitc__MVirtualTypeDef___is_fixed_61d(val* self, short int p0) {
2626 self->attrs[COLOR_nitc__model__MVirtualTypeDef___is_fixed].s = p0; /* _is_fixed on <self:MVirtualTypeDef> */
2627 RET_LABEL:;
2628 }
2629 /* method model$MClassKind$to_s for (self: MClassKind): String */
2630 val* nitc___nitc__MClassKind___core__abstract_text__Object__to_s(val* self) {
2631 val* var /* : String */;
2632 val* var1 /* : String */;
2633 var1 = self->attrs[COLOR_nitc__model__MClassKind___to_s].val; /* _to_s on <self:MClassKind> */
2634 if (unlikely(var1 == NULL)) {
2635 if(catchStack.cursor >= 0){
2636 longjmp(catchStack.envs[catchStack.cursor], 1);
2637 }
2638 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _to_s");
2639 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2555);
2640 fatal_exit(1);
2641 }
2642 var = var1;
2643 RET_LABEL:;
2644 return var;
2645 }
2646 /* method model$MClassKind$to_s= for (self: MClassKind, String) */
2647 void nitc___nitc__MClassKind___to_s_61d(val* self, val* p0) {
2648 self->attrs[COLOR_nitc__model__MClassKind___to_s].val = p0; /* _to_s on <self:MClassKind> */
2649 RET_LABEL:;
2650 }
2651 /* method model$MClassKind$need_init for (self: MClassKind): Bool */
2652 short int nitc___nitc__MClassKind___need_init(val* self) {
2653 short int var /* : Bool */;
2654 short int var1 /* : Bool */;
2655 var1 = self->attrs[COLOR_nitc__model__MClassKind___need_init].s; /* _need_init on <self:MClassKind> */
2656 var = var1;
2657 RET_LABEL:;
2658 return var;
2659 }
2660 /* method model$MClassKind$need_init= for (self: MClassKind, Bool) */
2661 void nitc___nitc__MClassKind___need_init_61d(val* self, short int p0) {
2662 self->attrs[COLOR_nitc__model__MClassKind___need_init].s = p0; /* _need_init on <self:MClassKind> */
2663 RET_LABEL:;
2664 }
2665 /* method model$MClassKind$can_specialize for (self: MClassKind, MClassKind): Bool */
2666 short int nitc___nitc__MClassKind___can_specialize(val* self, val* p0) {
2667 short int var /* : Bool */;
2668 val* var_other /* var other: MClassKind */;
2669 val* var1 /* : Sys */;
2670 val* var2 /* : MClassKind */;
2671 short int var3 /* : Bool */;
2672 val* var_other5 /* var other: nullable Object */;
2673 short int var6 /* : Bool */;
2674 short int var8 /* : Bool */;
2675 short int var9 /* : Bool */;
2676 val* var10 /* : Sys */;
2677 val* var11 /* : MClassKind */;
2678 short int var12 /* : Bool */;
2679 short int var14 /* : Bool */;
2680 short int var16 /* : Bool */;
2681 short int var_ /* var : Bool */;
2682 val* var17 /* : Sys */;
2683 val* var18 /* : MClassKind */;
2684 short int var19 /* : Bool */;
2685 short int var21 /* : Bool */;
2686 short int var23 /* : Bool */;
2687 val* var24 /* : Sys */;
2688 val* var25 /* : MClassKind */;
2689 short int var26 /* : Bool */;
2690 short int var28 /* : Bool */;
2691 short int var30 /* : Bool */;
2692 short int var31 /* : Bool */;
2693 short int var33 /* : Bool */;
2694 short int var35 /* : Bool */;
2695 short int var36 /* : Bool */;
2696 val* var37 /* : Sys */;
2697 val* var38 /* : MClassKind */;
2698 short int var39 /* : Bool */;
2699 short int var41 /* : Bool */;
2700 short int var43 /* : Bool */;
2701 short int var_44 /* var : Bool */;
2702 val* var45 /* : Sys */;
2703 val* var46 /* : MClassKind */;
2704 short int var47 /* : Bool */;
2705 short int var49 /* : Bool */;
2706 short int var51 /* : Bool */;
2707 var_other = p0;
2708 var1 = glob_sys;
2709 {
2710 var2 = nitc__model___core__Sys___interface_kind(var1);
2711 }
2712 {
2713 { /* Inline kernel$Object$== (var_other,var2) on <var_other:MClassKind> */
2714 var_other5 = var2;
2715 {
2716 { /* Inline kernel$Object$is_same_instance (var_other,var_other5) on <var_other:MClassKind> */
2717 var8 = var_other == var_other5;
2718 var6 = var8;
2719 goto RET_LABEL7;
2720 RET_LABEL7:(void)0;
2721 }
2722 }
2723 var3 = var6;
2724 goto RET_LABEL4;
2725 RET_LABEL4:(void)0;
2726 }
2727 }
2728 if (var3){
2729 var = 1;
2730 goto RET_LABEL;
2731 } else {
2732 }
2733 var10 = glob_sys;
2734 {
2735 var11 = nitc__model___core__Sys___interface_kind(var10);
2736 }
2737 {
2738 { /* Inline kernel$Object$== (self,var11) on <self:MClassKind> */
2739 var_other5 = var11;
2740 {
2741 { /* Inline kernel$Object$is_same_instance (self,var_other5) on <self:MClassKind> */
2742 var16 = self == var_other5;
2743 var14 = var16;
2744 goto RET_LABEL15;
2745 RET_LABEL15:(void)0;
2746 }
2747 }
2748 var12 = var14;
2749 goto RET_LABEL13;
2750 RET_LABEL13:(void)0;
2751 }
2752 }
2753 var_ = var12;
2754 if (var12){
2755 var9 = var_;
2756 } else {
2757 var17 = glob_sys;
2758 {
2759 var18 = nitc__model___core__Sys___enum_kind(var17);
2760 }
2761 {
2762 { /* Inline kernel$Object$== (self,var18) on <self:MClassKind> */
2763 var_other5 = var18;
2764 {
2765 { /* Inline kernel$Object$is_same_instance (self,var_other5) on <self:MClassKind> */
2766 var23 = self == var_other5;
2767 var21 = var23;
2768 goto RET_LABEL22;
2769 RET_LABEL22:(void)0;
2770 }
2771 }
2772 var19 = var21;
2773 goto RET_LABEL20;
2774 RET_LABEL20:(void)0;
2775 }
2776 }
2777 var9 = var19;
2778 }
2779 if (var9){
2780 var = 0;
2781 goto RET_LABEL;
2782 } else {
2783 var24 = glob_sys;
2784 {
2785 var25 = nitc__model___core__Sys___extern_kind(var24);
2786 }
2787 {
2788 { /* Inline kernel$Object$== (self,var25) on <self:MClassKind> */
2789 var_other5 = var25;
2790 {
2791 { /* Inline kernel$Object$is_same_instance (self,var_other5) on <self:MClassKind> */
2792 var30 = self == var_other5;
2793 var28 = var30;
2794 goto RET_LABEL29;
2795 RET_LABEL29:(void)0;
2796 }
2797 }
2798 var26 = var28;
2799 goto RET_LABEL27;
2800 RET_LABEL27:(void)0;
2801 }
2802 }
2803 if (var26){
2804 {
2805 { /* Inline kernel$Object$== (self,var_other) on <self:MClassKind> */
2806 var_other5 = var_other;
2807 {
2808 { /* Inline kernel$Object$is_same_instance (self,var_other5) on <self:MClassKind> */
2809 var35 = self == var_other5;
2810 var33 = var35;
2811 goto RET_LABEL34;
2812 RET_LABEL34:(void)0;
2813 }
2814 }
2815 var31 = var33;
2816 goto RET_LABEL32;
2817 RET_LABEL32:(void)0;
2818 }
2819 }
2820 var = var31;
2821 goto RET_LABEL;
2822 } else {
2823 var37 = glob_sys;
2824 {
2825 var38 = nitc__model___core__Sys___enum_kind(var37);
2826 }
2827 {
2828 { /* Inline kernel$Object$== (var_other,var38) on <var_other:MClassKind> */
2829 var_other5 = var38;
2830 {
2831 { /* Inline kernel$Object$is_same_instance (var_other,var_other5) on <var_other:MClassKind> */
2832 var43 = var_other == var_other5;
2833 var41 = var43;
2834 goto RET_LABEL42;
2835 RET_LABEL42:(void)0;
2836 }
2837 }
2838 var39 = var41;
2839 goto RET_LABEL40;
2840 RET_LABEL40:(void)0;
2841 }
2842 }
2843 var_44 = var39;
2844 if (var39){
2845 var36 = var_44;
2846 } else {
2847 var45 = glob_sys;
2848 {
2849 var46 = nitc__model___core__Sys___extern_kind(var45);
2850 }
2851 {
2852 { /* Inline kernel$Object$== (var_other,var46) on <var_other:MClassKind> */
2853 var_other5 = var46;
2854 {
2855 { /* Inline kernel$Object$is_same_instance (var_other,var_other5) on <var_other:MClassKind> */
2856 var51 = var_other == var_other5;
2857 var49 = var51;
2858 goto RET_LABEL50;
2859 RET_LABEL50:(void)0;
2860 }
2861 }
2862 var47 = var49;
2863 goto RET_LABEL48;
2864 RET_LABEL48:(void)0;
2865 }
2866 }
2867 var36 = var47;
2868 }
2869 if (var36){
2870 var = 0;
2871 goto RET_LABEL;
2872 } else {
2873 }
2874 }
2875 }
2876 var = 1;
2877 goto RET_LABEL;
2878 RET_LABEL:;
2879 return var;
2880 }
2881 /* method model$MClassKind$init for (self: MClassKind) */
2882 void nitc___nitc__MClassKind___core__kernel__Object__init(val* self) {
2883 {
2884 ((void(*)(val* self))(self->class->vft[COLOR_nitc___nitc__MClassKind___core__kernel__Object__init]))(self); /* init on <self:MClassKind>*/
2885 }
2886 RET_LABEL:;
2887 }
2888 /* method model$Sys$abstract_kind for (self: Sys): MClassKind */
2889 val* nitc__model___core__Sys___abstract_kind(val* self) {
2890 val* var /* : MClassKind */;
2891 static val* varonce;
2892 static int varonce_guard;
2893 val* var1 /* : MClassKind */;
2894 val* var2 /* : MClassKind */;
2895 static val* varonce3;
2896 val* var4 /* : String */;
2897 char* var5 /* : CString */;
2898 val* var6 /* : String */;
2899 val* var7 /* : nullable Int */;
2900 val* var8 /* : nullable Int */;
2901 val* var9 /* : nullable Bool */;
2902 val* var10 /* : nullable Bool */;
2903 if (likely(varonce_guard)) {
2904 var1 = varonce;
2905 } else {
2906 var2 = NEW_nitc__MClassKind(&type_nitc__MClassKind);
2907 if (likely(varonce3!=NULL)) {
2908 var4 = varonce3;
2909 } else {
2910 var5 = "abstract class";
2911 var7 = (val*)(14l<<2|1);
2912 var8 = (val*)(14l<<2|1);
2913 var9 = (val*)((long)(0)<<2|3);
2914 var10 = (val*)((long)(0)<<2|3);
2915 var6 = core__flat___CString___to_s_unsafe(var5, var7, var8, var9, var10);
2916 var4 = var6;
2917 varonce3 = var4;
2918 }
2919 {
2920 ((void(*)(val* self, val* p0))(var2->class->vft[COLOR_nitc__model__MClassKind__to_s_61d]))(var2, var4); /* to_s= on <var2:MClassKind>*/
2921 }
2922 {
2923 ((void(*)(val* self, short int p0))(var2->class->vft[COLOR_nitc__model__MClassKind__need_init_61d]))(var2, 1); /* need_init= on <var2:MClassKind>*/
2924 }
2925 {
2926 ((void(*)(val* self))(var2->class->vft[COLOR_core__kernel__Object__init]))(var2); /* init on <var2:MClassKind>*/
2927 }
2928 var1 = var2;
2929 varonce = var1;
2930 varonce_guard = 1;
2931 }
2932 var = var1;
2933 goto RET_LABEL;
2934 RET_LABEL:;
2935 return var;
2936 }
2937 /* method model$Sys$concrete_kind for (self: Sys): MClassKind */
2938 val* nitc__model___core__Sys___concrete_kind(val* self) {
2939 val* var /* : MClassKind */;
2940 static val* varonce;
2941 static int varonce_guard;
2942 val* var1 /* : MClassKind */;
2943 val* var2 /* : MClassKind */;
2944 static val* varonce3;
2945 val* var4 /* : String */;
2946 char* var5 /* : CString */;
2947 val* var6 /* : String */;
2948 val* var7 /* : nullable Int */;
2949 val* var8 /* : nullable Int */;
2950 val* var9 /* : nullable Bool */;
2951 val* var10 /* : nullable Bool */;
2952 if (likely(varonce_guard)) {
2953 var1 = varonce;
2954 } else {
2955 var2 = NEW_nitc__MClassKind(&type_nitc__MClassKind);
2956 if (likely(varonce3!=NULL)) {
2957 var4 = varonce3;
2958 } else {
2959 var5 = "class";
2960 var7 = (val*)(5l<<2|1);
2961 var8 = (val*)(5l<<2|1);
2962 var9 = (val*)((long)(0)<<2|3);
2963 var10 = (val*)((long)(0)<<2|3);
2964 var6 = core__flat___CString___to_s_unsafe(var5, var7, var8, var9, var10);
2965 var4 = var6;
2966 varonce3 = var4;
2967 }
2968 {
2969 ((void(*)(val* self, val* p0))(var2->class->vft[COLOR_nitc__model__MClassKind__to_s_61d]))(var2, var4); /* to_s= on <var2:MClassKind>*/
2970 }
2971 {
2972 ((void(*)(val* self, short int p0))(var2->class->vft[COLOR_nitc__model__MClassKind__need_init_61d]))(var2, 1); /* need_init= on <var2:MClassKind>*/
2973 }
2974 {
2975 ((void(*)(val* self))(var2->class->vft[COLOR_core__kernel__Object__init]))(var2); /* init on <var2:MClassKind>*/
2976 }
2977 var1 = var2;
2978 varonce = var1;
2979 varonce_guard = 1;
2980 }
2981 var = var1;
2982 goto RET_LABEL;
2983 RET_LABEL:;
2984 return var;
2985 }
2986 /* method model$Sys$interface_kind for (self: Sys): MClassKind */
2987 val* nitc__model___core__Sys___interface_kind(val* self) {
2988 val* var /* : MClassKind */;
2989 static val* varonce;
2990 static int varonce_guard;
2991 val* var1 /* : MClassKind */;
2992 val* var2 /* : MClassKind */;
2993 static val* varonce3;
2994 val* var4 /* : String */;
2995 char* var5 /* : CString */;
2996 val* var6 /* : String */;
2997 val* var7 /* : nullable Int */;
2998 val* var8 /* : nullable Int */;
2999 val* var9 /* : nullable Bool */;
3000 val* var10 /* : nullable Bool */;
3001 if (likely(varonce_guard)) {
3002 var1 = varonce;
3003 } else {
3004 var2 = NEW_nitc__MClassKind(&type_nitc__MClassKind);
3005 if (likely(varonce3!=NULL)) {
3006 var4 = varonce3;
3007 } else {
3008 var5 = "interface";
3009 var7 = (val*)(9l<<2|1);
3010 var8 = (val*)(9l<<2|1);
3011 var9 = (val*)((long)(0)<<2|3);
3012 var10 = (val*)((long)(0)<<2|3);
3013 var6 = core__flat___CString___to_s_unsafe(var5, var7, var8, var9, var10);
3014 var4 = var6;
3015 varonce3 = var4;
3016 }
3017 {
3018 ((void(*)(val* self, val* p0))(var2->class->vft[COLOR_nitc__model__MClassKind__to_s_61d]))(var2, var4); /* to_s= on <var2:MClassKind>*/
3019 }
3020 {
3021 ((void(*)(val* self, short int p0))(var2->class->vft[COLOR_nitc__model__MClassKind__need_init_61d]))(var2, 0); /* need_init= on <var2:MClassKind>*/
3022 }
3023 {
3024 ((void(*)(val* self))(var2->class->vft[COLOR_core__kernel__Object__init]))(var2); /* init on <var2:MClassKind>*/
3025 }
3026 var1 = var2;
3027 varonce = var1;
3028 varonce_guard = 1;
3029 }
3030 var = var1;
3031 goto RET_LABEL;
3032 RET_LABEL:;
3033 return var;
3034 }
3035 /* method model$Sys$enum_kind for (self: Sys): MClassKind */
3036 val* nitc__model___core__Sys___enum_kind(val* self) {
3037 val* var /* : MClassKind */;
3038 static val* varonce;
3039 static int varonce_guard;
3040 val* var1 /* : MClassKind */;
3041 val* var2 /* : MClassKind */;
3042 static val* varonce3;
3043 val* var4 /* : String */;
3044 char* var5 /* : CString */;
3045 val* var6 /* : String */;
3046 val* var7 /* : nullable Int */;
3047 val* var8 /* : nullable Int */;
3048 val* var9 /* : nullable Bool */;
3049 val* var10 /* : nullable Bool */;
3050 if (likely(varonce_guard)) {
3051 var1 = varonce;
3052 } else {
3053 var2 = NEW_nitc__MClassKind(&type_nitc__MClassKind);
3054 if (likely(varonce3!=NULL)) {
3055 var4 = varonce3;
3056 } else {
3057 var5 = "enum";
3058 var7 = (val*)(4l<<2|1);
3059 var8 = (val*)(4l<<2|1);
3060 var9 = (val*)((long)(0)<<2|3);
3061 var10 = (val*)((long)(0)<<2|3);
3062 var6 = core__flat___CString___to_s_unsafe(var5, var7, var8, var9, var10);
3063 var4 = var6;
3064 varonce3 = var4;
3065 }
3066 {
3067 ((void(*)(val* self, val* p0))(var2->class->vft[COLOR_nitc__model__MClassKind__to_s_61d]))(var2, var4); /* to_s= on <var2:MClassKind>*/
3068 }
3069 {
3070 ((void(*)(val* self, short int p0))(var2->class->vft[COLOR_nitc__model__MClassKind__need_init_61d]))(var2, 0); /* need_init= on <var2:MClassKind>*/
3071 }
3072 {
3073 ((void(*)(val* self))(var2->class->vft[COLOR_core__kernel__Object__init]))(var2); /* init on <var2:MClassKind>*/
3074 }
3075 var1 = var2;
3076 varonce = var1;
3077 varonce_guard = 1;
3078 }
3079 var = var1;
3080 goto RET_LABEL;
3081 RET_LABEL:;
3082 return var;
3083 }
3084 /* method model$Sys$extern_kind for (self: Sys): MClassKind */
3085 val* nitc__model___core__Sys___extern_kind(val* self) {
3086 val* var /* : MClassKind */;
3087 static val* varonce;
3088 static int varonce_guard;
3089 val* var1 /* : MClassKind */;
3090 val* var2 /* : MClassKind */;
3091 static val* varonce3;
3092 val* var4 /* : String */;
3093 char* var5 /* : CString */;
3094 val* var6 /* : String */;
3095 val* var7 /* : nullable Int */;
3096 val* var8 /* : nullable Int */;
3097 val* var9 /* : nullable Bool */;
3098 val* var10 /* : nullable Bool */;
3099 if (likely(varonce_guard)) {
3100 var1 = varonce;
3101 } else {
3102 var2 = NEW_nitc__MClassKind(&type_nitc__MClassKind);
3103 if (likely(varonce3!=NULL)) {
3104 var4 = varonce3;
3105 } else {
3106 var5 = "extern class";
3107 var7 = (val*)(12l<<2|1);
3108 var8 = (val*)(12l<<2|1);
3109 var9 = (val*)((long)(0)<<2|3);
3110 var10 = (val*)((long)(0)<<2|3);
3111 var6 = core__flat___CString___to_s_unsafe(var5, var7, var8, var9, var10);
3112 var4 = var6;
3113 varonce3 = var4;
3114 }
3115 {
3116 ((void(*)(val* self, val* p0))(var2->class->vft[COLOR_nitc__model__MClassKind__to_s_61d]))(var2, var4); /* to_s= on <var2:MClassKind>*/
3117 }
3118 {
3119 ((void(*)(val* self, short int p0))(var2->class->vft[COLOR_nitc__model__MClassKind__need_init_61d]))(var2, 0); /* need_init= on <var2:MClassKind>*/
3120 }
3121 {
3122 ((void(*)(val* self))(var2->class->vft[COLOR_core__kernel__Object__init]))(var2); /* init on <var2:MClassKind>*/
3123 }
3124 var1 = var2;
3125 varonce = var1;
3126 varonce_guard = 1;
3127 }
3128 var = var1;
3129 goto RET_LABEL;
3130 RET_LABEL:;
3131 return var;
3132 }