1 #include "nitc__modelize_property.sep.0.h"
2 /* method modelize_property#AAttrPropdef#check_signature for (self: AAttrPropdef, ModelBuilder) */
3 void nitc__modelize_property___AAttrPropdef___APropdef__check_signature(val
* self
, val
* p0
) {
4 val
* var_modelbuilder
/* var modelbuilder: ModelBuilder */;
5 val
* var
/* : nullable MPropDef */;
6 val
* var2
/* : nullable MPropDef */;
7 val
* var_mpropdef
/* var mpropdef: nullable MAttributeDef */;
8 short int var3
/* : Bool */;
9 short int var4
/* : Bool */;
10 val
* var_other
/* var other: nullable Object */;
11 short int var6
/* : Bool */;
12 short int var8
/* : Bool */;
13 val
* var9
/* : nullable AType */;
14 val
* var11
/* : nullable AType */;
15 val
* var_ntype
/* var ntype: nullable AType */;
16 val
* var12
/* : nullable MType */;
17 val
* var14
/* : nullable MType */;
18 val
* var_mtype
/* var mtype: nullable MType */;
19 short int var15
/* : Bool */;
20 short int var16
/* : Bool */;
21 short int var18
/* : Bool */;
22 short int var20
/* : Bool */;
23 val
* var21
/* : MClassDef */;
24 val
* var23
/* : MClassDef */;
25 val
* var_mclassdef
/* var mclassdef: MClassDef */;
26 val
* var24
/* : MModule */;
27 val
* var26
/* : MModule */;
28 val
* var_mmodule
/* var mmodule: MModule */;
29 short int var27
/* : Bool */;
30 short int var28
/* : Bool */;
31 val
* var_other30
/* var other: nullable Object */;
32 short int var31
/* : Bool */;
33 short int var32
/* : Bool */;
34 val
* var33
/* : nullable MType */;
35 short int var34
/* : Bool */;
36 short int var35
/* : Bool */;
37 short int var37
/* : Bool */;
38 short int var39
/* : Bool */;
39 val
* var40
/* : nullable AExpr */;
40 val
* var42
/* : nullable AExpr */;
41 val
* var_nexpr
/* var nexpr: nullable AExpr */;
42 short int var43
/* : Bool */;
45 val
* var44
/* : AType */;
46 val
* var46
/* : AType */;
47 val
* var47
/* : nullable MType */;
48 short int var48
/* : Bool */;
49 short int var49
/* : Bool */;
50 short int var51
/* : Bool */;
51 short int var53
/* : Bool */;
52 short int var54
/* : Bool */;
53 short int var55
/* : Bool */;
54 val
* var56
/* : MProperty */;
55 val
* var58
/* : MProperty */;
56 val
* var59
/* : MPropDef */;
57 val
* var61
/* : MPropDef */;
58 val
* var62
/* : nullable MType */;
59 val
* var64
/* : nullable MType */;
60 val
* var_precursor_type
/* var precursor_type: nullable MType */;
61 short int var65
/* : Bool */;
62 short int var66
/* : Bool */;
63 short int var68
/* : Bool */;
64 short int var70
/* : Bool */;
65 short int var71
/* : Bool */;
66 short int var73
/* : Bool */;
67 short int var74
/* : Bool */;
68 val
* var75
/* : NativeArray[String] */;
70 static val
* varonce76
;
71 val
* var77
/* : String */;
72 char* var78
/* : NativeString */;
73 val
* var79
/* : String */;
74 static val
* varonce80
;
75 val
* var81
/* : String */;
76 char* var82
/* : NativeString */;
77 val
* var83
/* : String */;
78 static val
* varonce84
;
79 val
* var85
/* : String */;
80 char* var86
/* : NativeString */;
81 val
* var87
/* : String */;
82 val
* var88
/* : String */;
83 val
* var89
/* : String */;
84 val
* var90
/* : String */;
85 val
* var91
/* : nullable MMethodDef */;
86 val
* var93
/* : nullable MMethodDef */;
87 val
* var_meth
/* var meth: nullable MMethodDef */;
88 short int var94
/* : Bool */;
89 short int var95
/* : Bool */;
90 short int var97
/* : Bool */;
91 short int var98
/* : Bool */;
92 val
* var_node
/* var node: nullable ANode */;
93 short int var99
/* : Bool */;
94 short int var100
/* : Bool */;
95 short int var102
/* : Bool */;
96 short int var104
/* : Bool */;
97 val
* var105
/* : nullable MMethodDef */;
98 val
* var107
/* : nullable MMethodDef */;
99 short int var108
/* : Bool */;
100 short int var109
/* : Bool */;
101 short int var111
/* : Bool */;
102 short int var112
/* : Bool */;
103 val
* var_node113
/* var node: nullable ANode */;
104 short int var114
/* : Bool */;
105 short int var115
/* : Bool */;
106 short int var117
/* : Bool */;
107 short int var119
/* : Bool */;
108 var_modelbuilder
= p0
;
110 { /* Inline modelize_property#APropdef#mpropdef (self) on <self:AAttrPropdef> */
111 var2
= self
->attrs
[COLOR_nitc__modelize_property__APropdef___mpropdef
].val
; /* _mpropdef on <self:AAttrPropdef> */
117 if (var_mpropdef
== NULL
) {
118 var3
= 1; /* is null */
120 var3
= 0; /* arg is null but recv is not */
123 { /* Inline kernel#Object#== (var_mpropdef,((val*)NULL)) on <var_mpropdef:nullable MAttributeDef> */
124 var_other
= ((val
*)NULL
);
126 { /* Inline kernel#Object#is_same_instance (var_mpropdef,var_other) on <var_mpropdef:nullable MAttributeDef(MAttributeDef)> */
127 var8
= var_mpropdef
== var_other
;
144 { /* Inline parser_nodes#AAttrPropdef#n_type (self) on <self:AAttrPropdef> */
145 var11
= self
->attrs
[COLOR_nitc__parser_nodes__AAttrPropdef___n_type
].val
; /* _n_type on <self:AAttrPropdef> */
152 { /* Inline modelize_property#AAttrPropdef#mtype (self) on <self:AAttrPropdef> */
153 var14
= self
->attrs
[COLOR_nitc__modelize_property__AAttrPropdef___mtype
].val
; /* _mtype on <self:AAttrPropdef> */
159 if (var_mtype
== NULL
) {
160 var15
= 1; /* is null */
162 var15
= 0; /* arg is null but recv is not */
165 { /* Inline kernel#Object#== (var_mtype,((val*)NULL)) on <var_mtype:nullable MType> */
166 var_other
= ((val
*)NULL
);
168 { /* Inline kernel#Object#is_same_instance (var_mtype,var_other) on <var_mtype:nullable MType(MType)> */
169 var20
= var_mtype
== var_other
;
186 { /* Inline model#MPropDef#mclassdef (var_mpropdef) on <var_mpropdef:nullable MAttributeDef(MAttributeDef)> */
187 var23
= var_mpropdef
->attrs
[COLOR_nitc__model__MPropDef___mclassdef
].val
; /* _mclassdef on <var_mpropdef:nullable MAttributeDef(MAttributeDef)> */
188 if (unlikely(var23
== NULL
)) {
189 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
190 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 2227);
197 var_mclassdef
= var21
;
199 { /* Inline model#MClassDef#mmodule (var_mclassdef) on <var_mclassdef:MClassDef> */
200 var26
= var_mclassdef
->attrs
[COLOR_nitc__model__MClassDef___mmodule
].val
; /* _mmodule on <var_mclassdef:MClassDef> */
201 if (unlikely(var26
== NULL
)) {
202 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mmodule");
203 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 573);
211 if (var_ntype
== NULL
) {
212 var27
= 0; /* is null */
214 var27
= 1; /* arg is null and recv is not */
217 { /* Inline kernel#Object#!= (var_ntype,((val*)NULL)) on <var_ntype:nullable AType> */
218 var_other30
= ((val
*)NULL
);
220 var31
= ((short int(*)(val
* self
, val
* p0
))(var_ntype
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_ntype
, var_other30
); /* == on <var_ntype:nullable AType(AType)>*/
231 var33
= nitc___nitc__ModelBuilder___resolve_mtype(var_modelbuilder
, var_mmodule
, var_mclassdef
, var_ntype
);
234 var34
= 1; /* is null */
236 var34
= 0; /* arg is null but recv is not */
239 { /* Inline kernel#Object#== (var33,((val*)NULL)) on <var33:nullable MType> */
240 var_other
= ((val
*)NULL
);
242 { /* Inline kernel#Object#is_same_instance (var33,var_other) on <var33:nullable MType(MType)> */
243 var39
= var33
== var_other
;
262 { /* Inline parser_nodes#AAttrPropdef#n_expr (self) on <self:AAttrPropdef> */
263 var42
= self
->attrs
[COLOR_nitc__parser_nodes__AAttrPropdef___n_expr
].val
; /* _n_expr on <self:AAttrPropdef> */
269 /* <var_nexpr:nullable AExpr> isa ANewExpr */
270 cltype
= type_nitc__ANewExpr
.color
;
271 idtype
= type_nitc__ANewExpr
.id
;
272 if(var_nexpr
== NULL
) {
275 if(cltype
>= var_nexpr
->type
->table_size
) {
278 var43
= var_nexpr
->type
->type_table
[cltype
] == idtype
;
283 { /* Inline parser_nodes#ANewExpr#n_type (var_nexpr) on <var_nexpr:nullable AExpr(ANewExpr)> */
284 var46
= var_nexpr
->attrs
[COLOR_nitc__parser_nodes__ANewExpr___n_type
].val
; /* _n_type on <var_nexpr:nullable AExpr(ANewExpr)> */
285 if (unlikely(var46
== NULL
)) {
286 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_type");
287 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2259);
295 var47
= nitc___nitc__ModelBuilder___resolve_mtype(var_modelbuilder
, var_mmodule
, var_mclassdef
, var44
);
298 var48
= 1; /* is null */
300 var48
= 0; /* arg is null but recv is not */
303 { /* Inline kernel#Object#== (var47,((val*)NULL)) on <var47:nullable MType> */
304 var_other
= ((val
*)NULL
);
306 { /* Inline kernel#Object#is_same_instance (var47,var_other) on <var47:nullable MType(MType)> */
307 var53
= var47
== var_other
;
326 var54
= nitc___nitc__MPropDef___is_intro(var_mpropdef
);
331 { /* Inline model#MPropDef#mproperty (var_mpropdef) on <var_mpropdef:nullable MAttributeDef(MAttributeDef)> */
332 var58
= var_mpropdef
->attrs
[COLOR_nitc__model__MPropDef___mproperty
].val
; /* _mproperty on <var_mpropdef:nullable MAttributeDef(MAttributeDef)> */
333 if (unlikely(var58
== NULL
)) {
334 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
335 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 2230);
343 { /* Inline model#MProperty#intro (var56) on <var56:MProperty(MAttribute)> */
344 var61
= var56
->attrs
[COLOR_nitc__model__MProperty___intro
].val
; /* _intro on <var56:MProperty(MAttribute)> */
345 if (unlikely(var61
== NULL
)) {
346 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _intro");
347 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1986);
355 { /* Inline model#MAttributeDef#static_mtype (var59) on <var59:MPropDef(MAttributeDef)> */
356 var64
= var59
->attrs
[COLOR_nitc__model__MAttributeDef___static_mtype
].val
; /* _static_mtype on <var59:MPropDef(MAttributeDef)> */
361 var_precursor_type
= var62
;
362 if (var_precursor_type
== NULL
) {
363 var65
= 1; /* is null */
365 var65
= 0; /* arg is null but recv is not */
368 { /* Inline kernel#Object#== (var_precursor_type,((val*)NULL)) on <var_precursor_type:nullable MType> */
369 var_other
= ((val
*)NULL
);
371 { /* Inline kernel#Object#is_same_instance (var_precursor_type,var_other) on <var_precursor_type:nullable MType(MType)> */
372 var70
= var_precursor_type
== var_other
;
389 { /* Inline kernel#Object#!= (var_mtype,var_precursor_type) on <var_mtype:nullable MType(MType)> */
390 var_other30
= var_precursor_type
;
392 var73
= ((short int(*)(val
* self
, val
* p0
))(var_mtype
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_mtype
, var_other30
); /* == on <var_mtype:nullable MType(MType)>*/
401 if (unlikely(var_ntype
== NULL
)) {
402 PRINT_ERROR("Runtime error: %s", "Cast failed");
403 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelize_property
, 1470);
406 if (unlikely(varonce
==NULL
)) {
407 var75
= NEW_core__NativeArray(5l, &type_core__NativeArray__core__String
);
408 if (likely(varonce76
!=NULL
)) {
411 var78
= "Redef Error: expected `";
412 var79
= core__flat___NativeString___to_s_full(var78
, 23l, 23l);
416 ((struct instance_core__NativeArray
*)var75
)->values
[0]=var77
;
417 if (likely(varonce80
!=NULL
)) {
420 var82
= "` type as a bound; got `";
421 var83
= core__flat___NativeString___to_s_full(var82
, 24l, 24l);
425 ((struct instance_core__NativeArray
*)var75
)->values
[2]=var81
;
426 if (likely(varonce84
!=NULL
)) {
430 var87
= core__flat___NativeString___to_s_full(var86
, 2l, 2l);
434 ((struct instance_core__NativeArray
*)var75
)->values
[4]=var85
;
440 var88
= ((val
*(*)(val
* self
))(var_precursor_type
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_precursor_type
); /* to_s on <var_precursor_type:nullable MType(MType)>*/
442 ((struct instance_core__NativeArray
*)var75
)->values
[1]=var88
;
444 var89
= ((val
*(*)(val
* self
))(var_mtype
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_mtype
); /* to_s on <var_mtype:nullable MType(MType)>*/
446 ((struct instance_core__NativeArray
*)var75
)->values
[3]=var89
;
448 var90
= ((val
*(*)(val
* self
))(var75
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var75
); /* native_to_s on <var75:NativeArray[String]>*/
452 nitc___nitc__ModelBuilder___error(var_modelbuilder
, var_ntype
, var90
); /* Direct call modelbuilder_base#ModelBuilder#error on <var_modelbuilder:ModelBuilder>*/
460 { /* Inline modelize_property#AAttrPropdef#mreadpropdef (self) on <self:AAttrPropdef> */
461 var93
= self
->attrs
[COLOR_nitc__modelize_property__AAttrPropdef___mreadpropdef
].val
; /* _mreadpropdef on <self:AAttrPropdef> */
467 if (var_meth
== NULL
) {
468 var94
= 0; /* is null */
470 var94
= 1; /* arg is null and recv is not */
473 { /* Inline kernel#Object#!= (var_meth,((val*)NULL)) on <var_meth:nullable MMethodDef> */
474 var_other30
= ((val
*)NULL
);
476 var97
= ((short int(*)(val
* self
, val
* p0
))(var_meth
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_meth
, var_other30
); /* == on <var_meth:nullable MMethodDef(MMethodDef)>*/
487 nitc__modelize_property___AAttrPropdef___check_method_signature(self
, var_modelbuilder
, var_meth
); /* Direct call modelize_property#AAttrPropdef#check_method_signature on <self:AAttrPropdef>*/
489 var_node
= var_ntype
;
490 if (var_node
== NULL
) {
491 var99
= 1; /* is null */
493 var99
= 0; /* arg is null but recv is not */
496 { /* Inline kernel#Object#== (var_node,((val*)NULL)) on <var_node:nullable ANode> */
497 var_other
= ((val
*)NULL
);
499 { /* Inline kernel#Object#is_same_instance (var_node,var_other) on <var_node:nullable ANode(ANode)> */
500 var104
= var_node
== var_other
;
503 RET_LABEL103
:(void)0;
508 RET_LABEL101
:(void)0;
517 nitc__modelize_property___ModelBuilder___check_visibility(var_modelbuilder
, var_node
, var_mtype
, var_meth
); /* Direct call modelize_property#ModelBuilder#check_visibility on <var_modelbuilder:ModelBuilder>*/
522 { /* Inline modelize_property#AAttrPropdef#mwritepropdef (self) on <self:AAttrPropdef> */
523 var107
= self
->attrs
[COLOR_nitc__modelize_property__AAttrPropdef___mwritepropdef
].val
; /* _mwritepropdef on <self:AAttrPropdef> */
525 RET_LABEL106
:(void)0;
529 if (var_meth
== NULL
) {
530 var108
= 0; /* is null */
532 var108
= 1; /* arg is null and recv is not */
535 { /* Inline kernel#Object#!= (var_meth,((val*)NULL)) on <var_meth:nullable MMethodDef> */
536 var_other30
= ((val
*)NULL
);
538 var111
= ((short int(*)(val
* self
, val
* p0
))(var_meth
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_meth
, var_other30
); /* == on <var_meth:nullable MMethodDef(MMethodDef)>*/
543 RET_LABEL110
:(void)0;
549 nitc__modelize_property___AAttrPropdef___check_method_signature(self
, var_modelbuilder
, var_meth
); /* Direct call modelize_property#AAttrPropdef#check_method_signature on <self:AAttrPropdef>*/
551 var_node113
= var_ntype
;
552 if (var_node113
== NULL
) {
553 var114
= 1; /* is null */
555 var114
= 0; /* arg is null but recv is not */
558 { /* Inline kernel#Object#== (var_node113,((val*)NULL)) on <var_node113:nullable ANode> */
559 var_other
= ((val
*)NULL
);
561 { /* Inline kernel#Object#is_same_instance (var_node113,var_other) on <var_node113:nullable ANode(ANode)> */
562 var119
= var_node113
== var_other
;
565 RET_LABEL118
:(void)0;
570 RET_LABEL116
:(void)0;
579 nitc__modelize_property___ModelBuilder___check_visibility(var_modelbuilder
, var_node113
, var_mtype
, var_meth
); /* Direct call modelize_property#ModelBuilder#check_visibility on <var_modelbuilder:ModelBuilder>*/
585 /* method modelize_property#AAttrPropdef#check_method_signature for (self: AAttrPropdef, ModelBuilder, MMethodDef) */
586 void nitc__modelize_property___AAttrPropdef___check_method_signature(val
* self
, val
* p0
, val
* p1
) {
587 val
* var_modelbuilder
/* var modelbuilder: ModelBuilder */;
588 val
* var_mpropdef
/* var mpropdef: MMethodDef */;
589 val
* var
/* : MClassDef */;
590 val
* var2
/* : MClassDef */;
591 val
* var_mclassdef
/* var mclassdef: MClassDef */;
592 val
* var3
/* : MModule */;
593 val
* var5
/* : MModule */;
594 val
* var_mmodule
/* var mmodule: MModule */;
595 val
* var6
/* : nullable AType */;
596 val
* var8
/* : nullable AType */;
597 val
* var_nsig
/* var nsig: nullable AType */;
598 val
* var9
/* : nullable MSignature */;
599 val
* var11
/* : nullable MSignature */;
600 val
* var_mysignature
/* var mysignature: nullable MSignature */;
601 short int var12
/* : Bool */;
602 short int var13
/* : Bool */;
603 val
* var_other
/* var other: nullable Object */;
604 short int var15
/* : Bool */;
605 short int var17
/* : Bool */;
606 short int var18
/* : Bool */;
607 short int var19
/* : Bool */;
608 val
* var20
/* : MProperty */;
609 val
* var22
/* : MProperty */;
610 val
* var23
/* : MPropDef */;
611 val
* var25
/* : MPropDef */;
612 val
* var26
/* : nullable MSignature */;
613 val
* var28
/* : nullable MSignature */;
614 val
* var_msignature
/* var msignature: nullable MSignature */;
615 short int var29
/* : Bool */;
616 short int var30
/* : Bool */;
617 short int var32
/* : Bool */;
618 short int var34
/* : Bool */;
619 long var35
/* : Int */;
620 long var36
/* : Int */;
621 short int var37
/* : Bool */;
622 short int var39
/* : Bool */;
623 short int var40
/* : Bool */;
624 short int var41
/* : Bool */;
625 short int var42
/* : Bool */;
626 val
* var_other44
/* var other: nullable Object */;
627 short int var45
/* : Bool */;
628 short int var46
/* : Bool */;
629 val
* var_node
/* var node: ANode */;
630 val
* var47
/* : NativeArray[String] */;
632 static val
* varonce48
;
633 val
* var49
/* : String */;
634 char* var50
/* : NativeString */;
635 val
* var51
/* : String */;
636 static val
* varonce52
;
637 val
* var53
/* : String */;
638 char* var54
/* : NativeString */;
639 val
* var55
/* : String */;
640 static val
* varonce56
;
641 val
* var57
/* : String */;
642 char* var58
/* : NativeString */;
643 val
* var59
/* : String */;
644 static val
* varonce60
;
645 val
* var61
/* : String */;
646 char* var62
/* : NativeString */;
647 val
* var63
/* : String */;
648 static val
* varonce64
;
649 val
* var65
/* : String */;
650 char* var66
/* : NativeString */;
651 val
* var67
/* : String */;
652 long var68
/* : Int */;
653 val
* var69
/* : String */;
654 val
* var70
/* : MProperty */;
655 val
* var72
/* : MProperty */;
656 val
* var73
/* : String */;
657 val
* var75
/* : String */;
658 val
* var76
/* : String */;
659 long var77
/* : Int */;
660 val
* var78
/* : String */;
661 val
* var79
/* : MProperty */;
662 val
* var81
/* : MProperty */;
663 val
* var82
/* : String */;
664 val
* var83
/* : String */;
665 val
* var84
/* : nullable MType */;
666 val
* var86
/* : nullable MType */;
667 val
* var_precursor_ret_type
/* var precursor_ret_type: nullable MType */;
668 val
* var87
/* : nullable MType */;
669 val
* var89
/* : nullable MType */;
670 val
* var_ret_type
/* var ret_type: nullable MType */;
671 short int var90
/* : Bool */;
672 short int var91
/* : Bool */;
673 short int var92
/* : Bool */;
674 short int var94
/* : Bool */;
675 short int var95
/* : Bool */;
676 short int var_
/* var : Bool */;
677 short int var96
/* : Bool */;
678 short int var97
/* : Bool */;
679 short int var99
/* : Bool */;
680 short int var101
/* : Bool */;
681 short int var102
/* : Bool */;
682 short int var103
/* : Bool */;
683 short int var105
/* : Bool */;
684 short int var106
/* : Bool */;
685 val
* var_node107
/* var node: ANode */;
686 val
* var109
/* : NativeArray[String] */;
687 static val
* varonce108
;
688 static val
* varonce110
;
689 val
* var111
/* : String */;
690 char* var112
/* : NativeString */;
691 val
* var113
/* : String */;
692 static val
* varonce114
;
693 val
* var115
/* : String */;
694 char* var116
/* : NativeString */;
695 val
* var117
/* : String */;
696 val
* var118
/* : MProperty */;
697 val
* var120
/* : MProperty */;
698 val
* var121
/* : String */;
699 val
* var122
/* : String */;
700 long var123
/* : Int */;
701 short int var124
/* : Bool */;
702 short int var126
/* : Bool */;
705 const char* var_class_name
;
706 short int var127
/* : Bool */;
707 long var_i
/* var i: Int */;
708 long var128
/* : Int */;
709 long var_129
/* var : Int */;
710 short int var130
/* : Bool */;
711 short int var132
/* : Bool */;
714 const char* var_class_name135
;
715 short int var136
/* : Bool */;
716 val
* var137
/* : Array[MParameter] */;
717 val
* var139
/* : Array[MParameter] */;
718 val
* var140
/* : nullable Object */;
719 val
* var141
/* : MType */;
720 val
* var143
/* : MType */;
721 val
* var_myt
/* var myt: MType */;
722 val
* var144
/* : Array[MParameter] */;
723 val
* var146
/* : Array[MParameter] */;
724 val
* var147
/* : nullable Object */;
725 val
* var148
/* : MType */;
726 val
* var150
/* : MType */;
727 val
* var_prt
/* var prt: MType */;
728 short int var151
/* : Bool */;
729 short int var152
/* : Bool */;
730 short int var154
/* : Bool */;
731 short int var155
/* : Bool */;
732 val
* var_node156
/* var node: ANode */;
733 val
* var157
/* : MClassType */;
734 val
* var159
/* : MClassType */;
735 short int var160
/* : Bool */;
736 short int var161
/* : Bool */;
737 val
* var163
/* : NativeArray[String] */;
738 static val
* varonce162
;
739 static val
* varonce164
;
740 val
* var165
/* : String */;
741 char* var166
/* : NativeString */;
742 val
* var167
/* : String */;
743 static val
* varonce168
;
744 val
* var169
/* : String */;
745 char* var170
/* : NativeString */;
746 val
* var171
/* : String */;
747 static val
* varonce172
;
748 val
* var173
/* : String */;
749 char* var174
/* : NativeString */;
750 val
* var175
/* : String */;
751 static val
* varonce176
;
752 val
* var177
/* : String */;
753 char* var178
/* : NativeString */;
754 val
* var179
/* : String */;
755 val
* var180
/* : String */;
756 val
* var181
/* : Array[MParameter] */;
757 val
* var183
/* : Array[MParameter] */;
758 val
* var184
/* : nullable Object */;
759 val
* var185
/* : String */;
760 val
* var187
/* : String */;
761 val
* var188
/* : String */;
762 val
* var189
/* : String */;
763 long var190
/* : Int */;
764 short int var191
/* : Bool */;
765 short int var192
/* : Bool */;
766 short int var194
/* : Bool */;
767 short int var195
/* : Bool */;
768 short int var196
/* : Bool */;
769 short int var197
/* : Bool */;
770 short int var199
/* : Bool */;
771 short int var200
/* : Bool */;
772 val
* var_node201
/* var node: ANode */;
773 short int var202
/* : Bool */;
774 short int var203
/* : Bool */;
775 short int var205
/* : Bool */;
776 short int var207
/* : Bool */;
777 val
* var208
/* : MClassType */;
778 val
* var210
/* : MClassType */;
779 short int var211
/* : Bool */;
780 short int var212
/* : Bool */;
781 val
* var214
/* : NativeArray[String] */;
782 static val
* varonce213
;
783 static val
* varonce215
;
784 val
* var216
/* : String */;
785 char* var217
/* : NativeString */;
786 val
* var218
/* : String */;
787 static val
* varonce219
;
788 val
* var220
/* : String */;
789 char* var221
/* : NativeString */;
790 val
* var222
/* : String */;
791 static val
* varonce223
;
792 val
* var224
/* : String */;
793 char* var225
/* : NativeString */;
794 val
* var226
/* : String */;
795 val
* var227
/* : String */;
796 val
* var228
/* : String */;
797 val
* var229
/* : String */;
798 var_modelbuilder
= p0
;
801 { /* Inline model#MPropDef#mclassdef (var_mpropdef) on <var_mpropdef:MMethodDef> */
802 var2
= var_mpropdef
->attrs
[COLOR_nitc__model__MPropDef___mclassdef
].val
; /* _mclassdef on <var_mpropdef:MMethodDef> */
803 if (unlikely(var2
== NULL
)) {
804 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
805 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 2227);
814 { /* Inline model#MClassDef#mmodule (var_mclassdef) on <var_mclassdef:MClassDef> */
815 var5
= var_mclassdef
->attrs
[COLOR_nitc__model__MClassDef___mmodule
].val
; /* _mmodule on <var_mclassdef:MClassDef> */
816 if (unlikely(var5
== NULL
)) {
817 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mmodule");
818 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 573);
827 { /* Inline parser_nodes#AAttrPropdef#n_type (self) on <self:AAttrPropdef> */
828 var8
= self
->attrs
[COLOR_nitc__parser_nodes__AAttrPropdef___n_type
].val
; /* _n_type on <self:AAttrPropdef> */
835 { /* Inline model#MMethodDef#msignature (var_mpropdef) on <var_mpropdef:MMethodDef> */
836 var11
= var_mpropdef
->attrs
[COLOR_nitc__model__MMethodDef___msignature
].val
; /* _msignature on <var_mpropdef:MMethodDef> */
841 var_mysignature
= var9
;
842 if (var_mysignature
== NULL
) {
843 var12
= 1; /* is null */
845 var12
= 0; /* arg is null but recv is not */
848 { /* Inline kernel#Object#== (var_mysignature,((val*)NULL)) on <var_mysignature:nullable MSignature> */
849 var_other
= ((val
*)NULL
);
851 { /* Inline kernel#Object#is_same_instance (var_mysignature,var_other) on <var_mysignature:nullable MSignature(MSignature)> */
852 var17
= var_mysignature
== var_other
;
869 var18
= nitc___nitc__MPropDef___is_intro(var_mpropdef
);
874 { /* Inline model#MPropDef#mproperty (var_mpropdef) on <var_mpropdef:MMethodDef> */
875 var22
= var_mpropdef
->attrs
[COLOR_nitc__model__MPropDef___mproperty
].val
; /* _mproperty on <var_mpropdef:MMethodDef> */
876 if (unlikely(var22
== NULL
)) {
877 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
878 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 2230);
886 { /* Inline model#MProperty#intro (var20) on <var20:MProperty(MMethod)> */
887 var25
= var20
->attrs
[COLOR_nitc__model__MProperty___intro
].val
; /* _intro on <var20:MProperty(MMethod)> */
888 if (unlikely(var25
== NULL
)) {
889 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _intro");
890 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1986);
898 { /* Inline model#MMethodDef#msignature (var23) on <var23:MPropDef(MMethodDef)> */
899 var28
= var23
->attrs
[COLOR_nitc__model__MMethodDef___msignature
].val
; /* _msignature on <var23:MPropDef(MMethodDef)> */
904 var_msignature
= var26
;
905 if (var_msignature
== NULL
) {
906 var29
= 1; /* is null */
908 var29
= 0; /* arg is null but recv is not */
911 { /* Inline kernel#Object#== (var_msignature,((val*)NULL)) on <var_msignature:nullable MSignature> */
912 var_other
= ((val
*)NULL
);
914 { /* Inline kernel#Object#is_same_instance (var_msignature,var_other) on <var_msignature:nullable MSignature(MSignature)> */
915 var34
= var_msignature
== var_other
;
932 var35
= nitc___nitc__MSignature___arity(var_mysignature
);
935 var36
= nitc___nitc__MSignature___arity(var_msignature
);
938 { /* Inline kernel#Int#!= (var35,var36) on <var35:Int> */
939 var39
= var35
== var36
;
947 if (var_nsig
== NULL
) {
948 var41
= 0; /* is null */
950 var41
= 1; /* arg is null and recv is not */
953 { /* Inline kernel#Object#!= (var_nsig,((val*)NULL)) on <var_nsig:nullable AType> */
954 var_other44
= ((val
*)NULL
);
956 var45
= ((short int(*)(val
* self
, val
* p0
))(var_nsig
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_nsig
, var_other44
); /* == on <var_nsig:nullable AType(AType)>*/
970 if (unlikely(varonce
==NULL
)) {
971 var47
= NEW_core__NativeArray(10l, &type_core__NativeArray__core__String
);
972 if (likely(varonce48
!=NULL
)) {
975 var50
= "Redef Error: expected ";
976 var51
= core__flat___NativeString___to_s_full(var50
, 22l, 22l);
980 ((struct instance_core__NativeArray
*)var47
)->values
[0]=var49
;
981 if (likely(varonce52
!=NULL
)) {
984 var54
= " parameter(s) for `";
985 var55
= core__flat___NativeString___to_s_full(var54
, 19l, 19l);
989 ((struct instance_core__NativeArray
*)var47
)->values
[2]=var53
;
990 if (likely(varonce56
!=NULL
)) {
994 var59
= core__flat___NativeString___to_s_full(var58
, 7l, 7l);
998 ((struct instance_core__NativeArray
*)var47
)->values
[5]=var57
;
999 if (likely(varonce60
!=NULL
)) {
1002 var62
= ". See introduction at `";
1003 var63
= core__flat___NativeString___to_s_full(var62
, 23l, 23l);
1007 ((struct instance_core__NativeArray
*)var47
)->values
[7]=var61
;
1008 if (likely(varonce64
!=NULL
)) {
1012 var67
= core__flat___NativeString___to_s_full(var66
, 2l, 2l);
1016 ((struct instance_core__NativeArray
*)var47
)->values
[9]=var65
;
1022 var68
= nitc___nitc__MSignature___arity(var_msignature
);
1024 var69
= core__flat___Int___core__abstract_text__Object__to_s(var68
);
1025 ((struct instance_core__NativeArray
*)var47
)->values
[1]=var69
;
1027 { /* Inline model#MPropDef#mproperty (var_mpropdef) on <var_mpropdef:MMethodDef> */
1028 var72
= var_mpropdef
->attrs
[COLOR_nitc__model__MPropDef___mproperty
].val
; /* _mproperty on <var_mpropdef:MMethodDef> */
1029 if (unlikely(var72
== NULL
)) {
1030 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
1031 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 2230);
1035 RET_LABEL71
:(void)0;
1039 { /* Inline model#MProperty#name (var70) on <var70:MProperty(MMethod)> */
1040 var75
= var70
->attrs
[COLOR_nitc__model__MProperty___name
].val
; /* _name on <var70:MProperty(MMethod)> */
1041 if (unlikely(var75
== NULL
)) {
1042 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _name");
1043 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1951);
1047 RET_LABEL74
:(void)0;
1050 ((struct instance_core__NativeArray
*)var47
)->values
[3]=var73
;
1052 var76
= ((val
*(*)(val
* self
))(var_msignature
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_msignature
); /* to_s on <var_msignature:nullable MSignature(MSignature)>*/
1054 ((struct instance_core__NativeArray
*)var47
)->values
[4]=var76
;
1056 var77
= nitc___nitc__MSignature___arity(var_mysignature
);
1058 var78
= core__flat___Int___core__abstract_text__Object__to_s(var77
);
1059 ((struct instance_core__NativeArray
*)var47
)->values
[6]=var78
;
1061 { /* Inline model#MPropDef#mproperty (var_mpropdef) on <var_mpropdef:MMethodDef> */
1062 var81
= var_mpropdef
->attrs
[COLOR_nitc__model__MPropDef___mproperty
].val
; /* _mproperty on <var_mpropdef:MMethodDef> */
1063 if (unlikely(var81
== NULL
)) {
1064 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
1065 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 2230);
1069 RET_LABEL80
:(void)0;
1073 var82
= nitc___nitc__MProperty___nitc__model_base__MEntity__full_name(var79
);
1075 ((struct instance_core__NativeArray
*)var47
)->values
[8]=var82
;
1077 var83
= ((val
*(*)(val
* self
))(var47
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var47
); /* native_to_s on <var47:NativeArray[String]>*/
1081 nitc___nitc__ModelBuilder___error(var_modelbuilder
, var_node
, var83
); /* Direct call modelbuilder_base#ModelBuilder#error on <var_modelbuilder:ModelBuilder>*/
1087 { /* Inline model#MSignature#return_mtype (var_msignature) on <var_msignature:nullable MSignature(MSignature)> */
1088 var86
= var_msignature
->attrs
[COLOR_nitc__model__MSignature___return_mtype
].val
; /* _return_mtype on <var_msignature:nullable MSignature(MSignature)> */
1090 RET_LABEL85
:(void)0;
1093 var_precursor_ret_type
= var84
;
1095 { /* Inline model#MSignature#return_mtype (var_mysignature) on <var_mysignature:nullable MSignature(MSignature)> */
1096 var89
= var_mysignature
->attrs
[COLOR_nitc__model__MSignature___return_mtype
].val
; /* _return_mtype on <var_mysignature:nullable MSignature(MSignature)> */
1098 RET_LABEL88
:(void)0;
1101 var_ret_type
= var87
;
1102 if (var_ret_type
== NULL
) {
1103 var91
= 0; /* is null */
1105 var91
= 1; /* arg is null and recv is not */
1108 { /* Inline kernel#Object#!= (var_ret_type,((val*)NULL)) on <var_ret_type:nullable MType> */
1109 var_other44
= ((val
*)NULL
);
1111 var94
= ((short int(*)(val
* self
, val
* p0
))(var_ret_type
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_ret_type
, var_other44
); /* == on <var_ret_type:nullable MType(MType)>*/
1116 RET_LABEL93
:(void)0;
1122 if (var_precursor_ret_type
== NULL
) {
1123 var96
= 1; /* is null */
1125 var96
= 0; /* arg is null but recv is not */
1128 { /* Inline kernel#Object#== (var_precursor_ret_type,((val*)NULL)) on <var_precursor_ret_type:nullable MType> */
1129 var_other
= ((val
*)NULL
);
1131 { /* Inline kernel#Object#is_same_instance (var_precursor_ret_type,var_other) on <var_precursor_ret_type:nullable MType(MType)> */
1132 var101
= var_precursor_ret_type
== var_other
;
1135 RET_LABEL100
:(void)0;
1140 RET_LABEL98
:(void)0;
1149 if (var_nsig
== NULL
) {
1150 var102
= 0; /* is null */
1152 var102
= 1; /* arg is null and recv is not */
1155 { /* Inline kernel#Object#!= (var_nsig,((val*)NULL)) on <var_nsig:nullable AType> */
1156 var_other44
= ((val
*)NULL
);
1158 var105
= ((short int(*)(val
* self
, val
* p0
))(var_nsig
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_nsig
, var_other44
); /* == on <var_nsig:nullable AType(AType)>*/
1163 RET_LABEL104
:(void)0;
1168 var_node107
= var_nsig
;
1172 if (unlikely(varonce108
==NULL
)) {
1173 var109
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
1174 if (likely(varonce110
!=NULL
)) {
1175 var111
= varonce110
;
1177 var112
= "Redef Error: `";
1178 var113
= core__flat___NativeString___to_s_full(var112
, 14l, 14l);
1180 varonce110
= var111
;
1182 ((struct instance_core__NativeArray
*)var109
)->values
[0]=var111
;
1183 if (likely(varonce114
!=NULL
)) {
1184 var115
= varonce114
;
1186 var116
= "` is a procedure, not a function.";
1187 var117
= core__flat___NativeString___to_s_full(var116
, 33l, 33l);
1189 varonce114
= var115
;
1191 ((struct instance_core__NativeArray
*)var109
)->values
[2]=var115
;
1193 var109
= varonce108
;
1197 { /* Inline model#MPropDef#mproperty (var_mpropdef) on <var_mpropdef:MMethodDef> */
1198 var120
= var_mpropdef
->attrs
[COLOR_nitc__model__MPropDef___mproperty
].val
; /* _mproperty on <var_mpropdef:MMethodDef> */
1199 if (unlikely(var120
== NULL
)) {
1200 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
1201 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 2230);
1205 RET_LABEL119
:(void)0;
1209 var121
= ((val
*(*)(val
* self
))(var118
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var118
); /* to_s on <var118:MProperty(MMethod)>*/
1211 ((struct instance_core__NativeArray
*)var109
)->values
[1]=var121
;
1213 var122
= ((val
*(*)(val
* self
))(var109
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var109
); /* native_to_s on <var109:NativeArray[String]>*/
1215 varonce108
= var109
;
1217 nitc___nitc__ModelBuilder___error(var_modelbuilder
, var_node107
, var122
); /* Direct call modelbuilder_base#ModelBuilder#error on <var_modelbuilder:ModelBuilder>*/
1223 var123
= nitc___nitc__MSignature___arity(var_mysignature
);
1226 { /* Inline kernel#Int#> (var123,0l) on <var123:Int> */
1227 /* Covariant cast for argument 0 (i) <0l:Int> isa OTHER */
1228 /* <0l:Int> isa OTHER */
1229 var126
= 1; /* easy <0l:Int> isa OTHER*/
1230 if (unlikely(!var126
)) {
1231 var_class_name
= type_core__Int
.name
;
1232 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
1233 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 730);
1236 var127
= var123
> 0l;
1239 RET_LABEL125
:(void)0;
1245 var128
= nitc___nitc__MSignature___arity(var_mysignature
);
1250 { /* Inline kernel#Int#< (var_i,var_129) on <var_i:Int> */
1251 /* Covariant cast for argument 0 (i) <var_129:Int> isa OTHER */
1252 /* <var_129:Int> isa OTHER */
1253 var132
= 1; /* easy <var_129:Int> isa OTHER*/
1254 if (unlikely(!var132
)) {
1255 var_class_name135
= type_core__Int
.name
;
1256 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name135
);
1257 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 728);
1260 var136
= var_i
< var_129
;
1263 RET_LABEL131
:(void)0;
1271 { /* Inline model#MSignature#mparameters (var_mysignature) on <var_mysignature:nullable MSignature(MSignature)> */
1272 var139
= var_mysignature
->attrs
[COLOR_nitc__model__MSignature___mparameters
].val
; /* _mparameters on <var_mysignature:nullable MSignature(MSignature)> */
1273 if (unlikely(var139
== NULL
)) {
1274 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mparameters");
1275 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1783);
1279 RET_LABEL138
:(void)0;
1283 var140
= core___core__Array___core__abstract_collection__SequenceRead___91d_93d(var137
, var_i
);
1286 { /* Inline model#MParameter#mtype (var140) on <var140:nullable Object(MParameter)> */
1287 var143
= var140
->attrs
[COLOR_nitc__model__MParameter___mtype
].val
; /* _mtype on <var140:nullable Object(MParameter)> */
1288 if (unlikely(var143
== NULL
)) {
1289 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
1290 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1900);
1294 RET_LABEL142
:(void)0;
1299 { /* Inline model#MSignature#mparameters (var_msignature) on <var_msignature:nullable MSignature(MSignature)> */
1300 var146
= var_msignature
->attrs
[COLOR_nitc__model__MSignature___mparameters
].val
; /* _mparameters on <var_msignature:nullable MSignature(MSignature)> */
1301 if (unlikely(var146
== NULL
)) {
1302 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mparameters");
1303 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1783);
1307 RET_LABEL145
:(void)0;
1311 var147
= core___core__Array___core__abstract_collection__SequenceRead___91d_93d(var144
, var_i
);
1314 { /* Inline model#MParameter#mtype (var147) on <var147:nullable Object(MParameter)> */
1315 var150
= var147
->attrs
[COLOR_nitc__model__MParameter___mtype
].val
; /* _mtype on <var147:nullable Object(MParameter)> */
1316 if (unlikely(var150
== NULL
)) {
1317 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
1318 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1900);
1322 RET_LABEL149
:(void)0;
1326 if (var_nsig
== NULL
) {
1327 var151
= 0; /* is null */
1329 var151
= 1; /* arg is null and recv is not */
1332 { /* Inline kernel#Object#!= (var_nsig,((val*)NULL)) on <var_nsig:nullable AType> */
1333 var_other44
= ((val
*)NULL
);
1335 var154
= ((short int(*)(val
* self
, val
* p0
))(var_nsig
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_nsig
, var_other44
); /* == on <var_nsig:nullable AType(AType)>*/
1340 RET_LABEL153
:(void)0;
1345 var_node156
= var_nsig
;
1350 { /* Inline model#MClassDef#bound_mtype (var_mclassdef) on <var_mclassdef:MClassDef> */
1351 var159
= var_mclassdef
->attrs
[COLOR_nitc__model__MClassDef___bound_mtype
].val
; /* _bound_mtype on <var_mclassdef:MClassDef> */
1352 if (unlikely(var159
== NULL
)) {
1353 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _bound_mtype");
1354 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 579);
1358 RET_LABEL158
:(void)0;
1362 var160
= nitc___nitc__ModelBuilder___check_sametype(var_modelbuilder
, var_node156
, var_mmodule
, var157
, var_myt
, var_prt
);
1366 if (unlikely(varonce162
==NULL
)) {
1367 var163
= NEW_core__NativeArray(7l, &type_core__NativeArray__core__String
);
1368 if (likely(varonce164
!=NULL
)) {
1369 var165
= varonce164
;
1371 var166
= "Redef Error: expected `";
1372 var167
= core__flat___NativeString___to_s_full(var166
, 23l, 23l);
1374 varonce164
= var165
;
1376 ((struct instance_core__NativeArray
*)var163
)->values
[0]=var165
;
1377 if (likely(varonce168
!=NULL
)) {
1378 var169
= varonce168
;
1380 var170
= "` type for parameter `";
1381 var171
= core__flat___NativeString___to_s_full(var170
, 22l, 22l);
1383 varonce168
= var169
;
1385 ((struct instance_core__NativeArray
*)var163
)->values
[2]=var169
;
1386 if (likely(varonce172
!=NULL
)) {
1387 var173
= varonce172
;
1389 var174
= "\'; got `";
1390 var175
= core__flat___NativeString___to_s_full(var174
, 8l, 8l);
1392 varonce172
= var173
;
1394 ((struct instance_core__NativeArray
*)var163
)->values
[4]=var173
;
1395 if (likely(varonce176
!=NULL
)) {
1396 var177
= varonce176
;
1399 var179
= core__flat___NativeString___to_s_full(var178
, 2l, 2l);
1401 varonce176
= var177
;
1403 ((struct instance_core__NativeArray
*)var163
)->values
[6]=var177
;
1405 var163
= varonce162
;
1409 var180
= ((val
*(*)(val
* self
))(var_prt
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_prt
); /* to_s on <var_prt:MType>*/
1411 ((struct instance_core__NativeArray
*)var163
)->values
[1]=var180
;
1413 { /* Inline model#MSignature#mparameters (var_mysignature) on <var_mysignature:nullable MSignature(MSignature)> */
1414 var183
= var_mysignature
->attrs
[COLOR_nitc__model__MSignature___mparameters
].val
; /* _mparameters on <var_mysignature:nullable MSignature(MSignature)> */
1415 if (unlikely(var183
== NULL
)) {
1416 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mparameters");
1417 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1783);
1421 RET_LABEL182
:(void)0;
1425 var184
= core___core__Array___core__abstract_collection__SequenceRead___91d_93d(var181
, var_i
);
1428 { /* Inline model#MParameter#name (var184) on <var184:nullable Object(MParameter)> */
1429 var187
= var184
->attrs
[COLOR_nitc__model__MParameter___name
].val
; /* _name on <var184:nullable Object(MParameter)> */
1430 if (unlikely(var187
== NULL
)) {
1431 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _name");
1432 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1897);
1436 RET_LABEL186
:(void)0;
1439 ((struct instance_core__NativeArray
*)var163
)->values
[3]=var185
;
1441 var188
= ((val
*(*)(val
* self
))(var_myt
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_myt
); /* to_s on <var_myt:MType>*/
1443 ((struct instance_core__NativeArray
*)var163
)->values
[5]=var188
;
1445 var189
= ((val
*(*)(val
* self
))(var163
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var163
); /* native_to_s on <var163:NativeArray[String]>*/
1447 varonce162
= var163
;
1449 nitc___nitc__ModelBuilder___error(var_modelbuilder
, var_node156
, var189
); /* Direct call modelbuilder_base#ModelBuilder#error on <var_modelbuilder:ModelBuilder>*/
1454 var190
= core___core__Int___Discrete__successor(var_i
, 1l);
1458 BREAK_label
: (void)0;
1461 if (var_precursor_ret_type
== NULL
) {
1462 var191
= 0; /* is null */
1464 var191
= 1; /* arg is null and recv is not */
1467 { /* Inline kernel#Object#!= (var_precursor_ret_type,((val*)NULL)) on <var_precursor_ret_type:nullable MType> */
1468 var_other44
= ((val
*)NULL
);
1470 var194
= ((short int(*)(val
* self
, val
* p0
))(var_precursor_ret_type
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_precursor_ret_type
, var_other44
); /* == on <var_precursor_ret_type:nullable MType(MType)>*/
1475 RET_LABEL193
:(void)0;
1480 if (var_nsig
== NULL
) {
1481 var196
= 0; /* is null */
1483 var196
= 1; /* arg is null and recv is not */
1486 { /* Inline kernel#Object#!= (var_nsig,((val*)NULL)) on <var_nsig:nullable AType> */
1487 var_other44
= ((val
*)NULL
);
1489 var199
= ((short int(*)(val
* self
, val
* p0
))(var_nsig
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_nsig
, var_other44
); /* == on <var_nsig:nullable AType(AType)>*/
1494 RET_LABEL198
:(void)0;
1499 var_node201
= var_nsig
;
1503 if (var_ret_type
== NULL
) {
1504 var202
= 1; /* is null */
1506 var202
= 0; /* arg is null but recv is not */
1509 { /* Inline kernel#Object#== (var_ret_type,((val*)NULL)) on <var_ret_type:nullable MType> */
1510 var_other
= ((val
*)NULL
);
1512 { /* Inline kernel#Object#is_same_instance (var_ret_type,var_other) on <var_ret_type:nullable MType(MType)> */
1513 var207
= var_ret_type
== var_other
;
1516 RET_LABEL206
:(void)0;
1521 RET_LABEL204
:(void)0;
1526 var_ret_type
= var_precursor_ret_type
;
1529 { /* Inline model#MClassDef#bound_mtype (var_mclassdef) on <var_mclassdef:MClassDef> */
1530 var210
= var_mclassdef
->attrs
[COLOR_nitc__model__MClassDef___bound_mtype
].val
; /* _bound_mtype on <var_mclassdef:MClassDef> */
1531 if (unlikely(var210
== NULL
)) {
1532 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _bound_mtype");
1533 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 579);
1537 RET_LABEL209
:(void)0;
1541 var211
= nitc___nitc__ModelBuilder___check_subtype(var_modelbuilder
, var_node201
, var_mmodule
, var208
, var_ret_type
, var_precursor_ret_type
);
1545 if (unlikely(varonce213
==NULL
)) {
1546 var214
= NEW_core__NativeArray(5l, &type_core__NativeArray__core__String
);
1547 if (likely(varonce215
!=NULL
)) {
1548 var216
= varonce215
;
1550 var217
= "Redef Error: expected `";
1551 var218
= core__flat___NativeString___to_s_full(var217
, 23l, 23l);
1553 varonce215
= var216
;
1555 ((struct instance_core__NativeArray
*)var214
)->values
[0]=var216
;
1556 if (likely(varonce219
!=NULL
)) {
1557 var220
= varonce219
;
1559 var221
= "` return type; got `";
1560 var222
= core__flat___NativeString___to_s_full(var221
, 20l, 20l);
1562 varonce219
= var220
;
1564 ((struct instance_core__NativeArray
*)var214
)->values
[2]=var220
;
1565 if (likely(varonce223
!=NULL
)) {
1566 var224
= varonce223
;
1569 var226
= core__flat___NativeString___to_s_full(var225
, 2l, 2l);
1571 varonce223
= var224
;
1573 ((struct instance_core__NativeArray
*)var214
)->values
[4]=var224
;
1575 var214
= varonce213
;
1579 var227
= ((val
*(*)(val
* self
))(var_precursor_ret_type
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_precursor_ret_type
); /* to_s on <var_precursor_ret_type:nullable MType(MType)>*/
1581 ((struct instance_core__NativeArray
*)var214
)->values
[1]=var227
;
1583 var228
= ((val
*(*)(val
* self
))(var_ret_type
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_ret_type
); /* to_s on <var_ret_type:nullable MType(MType)>*/
1585 ((struct instance_core__NativeArray
*)var214
)->values
[3]=var228
;
1587 var229
= ((val
*(*)(val
* self
))(var214
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var214
); /* native_to_s on <var214:NativeArray[String]>*/
1589 varonce213
= var214
;
1591 nitc___nitc__ModelBuilder___error(var_modelbuilder
, var_node201
, var229
); /* Direct call modelbuilder_base#ModelBuilder#error on <var_modelbuilder:ModelBuilder>*/
1602 /* method modelize_property#AAttrPropdef#check_repeated_types for (self: AAttrPropdef, ModelBuilder) */
1603 void nitc__modelize_property___AAttrPropdef___APropdef__check_repeated_types(val
* self
, val
* p0
) {
1604 val
* var_modelbuilder
/* var modelbuilder: ModelBuilder */;
1605 val
* var
/* : nullable MMethodDef */;
1606 val
* var2
/* : nullable MMethodDef */;
1607 val
* var_mreadpropdef
/* var mreadpropdef: nullable MMethodDef */;
1608 short int var3
/* : Bool */;
1609 short int var4
/* : Bool */;
1610 val
* var_other
/* var other: nullable Object */;
1611 short int var6
/* : Bool */;
1612 short int var8
/* : Bool */;
1613 short int var9
/* : Bool */;
1614 short int var10
/* : Bool */;
1615 short int var_
/* var : Bool */;
1616 val
* var11
/* : nullable AType */;
1617 val
* var13
/* : nullable AType */;
1618 short int var14
/* : Bool */;
1619 short int var15
/* : Bool */;
1620 short int var17
/* : Bool */;
1621 short int var19
/* : Bool */;
1622 val
* var20
/* : MProperty */;
1623 val
* var22
/* : MProperty */;
1624 val
* var23
/* : MPropDef */;
1625 val
* var25
/* : MPropDef */;
1626 val
* var_intro
/* var intro: MMethodDef */;
1627 val
* var26
/* : HashMap[MPropDef, APropdef] */;
1628 val
* var28
/* : HashMap[MPropDef, APropdef] */;
1629 val
* var29
/* : nullable Object */;
1630 val
* var_n_intro
/* var n_intro: nullable APropdef */;
1631 short int var30
/* : Bool */;
1632 short int var31
/* : Bool */;
1633 short int var33
/* : Bool */;
1634 short int var35
/* : Bool */;
1635 val
* var_ntype
/* var ntype: nullable Object */;
1636 short int var36
/* : Bool */;
1639 val
* var37
/* : nullable ASignature */;
1640 val
* var39
/* : nullable ASignature */;
1641 val
* var40
/* : nullable MType */;
1642 val
* var42
/* : nullable MType */;
1643 short int var43
/* : Bool */;
1644 short int var44
/* : Bool */;
1647 short int var_47
/* var : Bool */;
1648 val
* var48
/* : nullable AType */;
1649 val
* var50
/* : nullable AType */;
1650 short int var51
/* : Bool */;
1651 short int var52
/* : Bool */;
1652 val
* var_other54
/* var other: nullable Object */;
1653 short int var55
/* : Bool */;
1654 short int var56
/* : Bool */;
1655 val
* var57
/* : nullable AType */;
1656 val
* var59
/* : nullable AType */;
1657 val
* var60
/* : nullable MType */;
1658 val
* var62
/* : nullable MType */;
1659 short int var63
/* : Bool */;
1660 short int var64
/* : Bool */;
1661 short int var65
/* : Bool */;
1662 short int var66
/* : Bool */;
1663 short int var68
/* : Bool */;
1664 short int var70
/* : Bool */;
1665 short int var_71
/* var : Bool */;
1666 val
* var72
/* : nullable AType */;
1667 val
* var74
/* : nullable AType */;
1668 val
* var75
/* : nullable MType */;
1669 val
* var77
/* : nullable MType */;
1670 short int var78
/* : Bool */;
1671 short int var80
/* : Bool */;
1672 short int var81
/* : Bool */;
1673 short int var_82
/* var : Bool */;
1674 val
* var83
/* : nullable MPropDef */;
1675 val
* var85
/* : nullable MPropDef */;
1676 short int var86
/* : Bool */;
1677 short int var87
/* : Bool */;
1678 short int var89
/* : Bool */;
1679 short int var91
/* : Bool */;
1680 val
* var92
/* : nullable AType */;
1681 val
* var94
/* : nullable AType */;
1682 static val
* varonce
;
1683 val
* var95
/* : String */;
1684 char* var96
/* : NativeString */;
1685 val
* var97
/* : String */;
1686 val
* var99
/* : NativeArray[String] */;
1687 static val
* varonce98
;
1688 static val
* varonce100
;
1689 val
* var101
/* : String */;
1690 char* var102
/* : NativeString */;
1691 val
* var103
/* : String */;
1692 static val
* varonce104
;
1693 val
* var105
/* : String */;
1694 char* var106
/* : NativeString */;
1695 val
* var107
/* : String */;
1696 val
* var108
/* : nullable MPropDef */;
1697 val
* var110
/* : nullable MPropDef */;
1698 val
* var111
/* : String */;
1699 val
* var112
/* : String */;
1700 var_modelbuilder
= p0
;
1702 { /* Inline modelize_property#AAttrPropdef#mreadpropdef (self) on <self:AAttrPropdef> */
1703 var2
= self
->attrs
[COLOR_nitc__modelize_property__AAttrPropdef___mreadpropdef
].val
; /* _mreadpropdef on <self:AAttrPropdef> */
1708 var_mreadpropdef
= var
;
1709 if (var_mreadpropdef
== NULL
) {
1710 var3
= 1; /* is null */
1712 var3
= 0; /* arg is null but recv is not */
1715 { /* Inline kernel#Object#== (var_mreadpropdef,((val*)NULL)) on <var_mreadpropdef:nullable MMethodDef> */
1716 var_other
= ((val
*)NULL
);
1718 { /* Inline kernel#Object#is_same_instance (var_mreadpropdef,var_other) on <var_mreadpropdef:nullable MMethodDef(MMethodDef)> */
1719 var8
= var_mreadpropdef
== var_other
;
1736 var10
= nitc___nitc__MPropDef___is_intro(var_mreadpropdef
);
1743 { /* Inline parser_nodes#AAttrPropdef#n_type (self) on <self:AAttrPropdef> */
1744 var13
= self
->attrs
[COLOR_nitc__parser_nodes__AAttrPropdef___n_type
].val
; /* _n_type on <self:AAttrPropdef> */
1746 RET_LABEL12
:(void)0;
1749 if (var11
== NULL
) {
1750 var14
= 1; /* is null */
1752 var14
= 0; /* arg is null but recv is not */
1755 { /* Inline kernel#Object#== (var11,((val*)NULL)) on <var11:nullable AType> */
1756 var_other
= ((val
*)NULL
);
1758 { /* Inline kernel#Object#is_same_instance (var11,var_other) on <var11:nullable AType(AType)> */
1759 var19
= var11
== var_other
;
1762 RET_LABEL18
:(void)0;
1767 RET_LABEL16
:(void)0;
1778 { /* Inline model#MPropDef#mproperty (var_mreadpropdef) on <var_mreadpropdef:nullable MMethodDef(MMethodDef)> */
1779 var22
= var_mreadpropdef
->attrs
[COLOR_nitc__model__MPropDef___mproperty
].val
; /* _mproperty on <var_mreadpropdef:nullable MMethodDef(MMethodDef)> */
1780 if (unlikely(var22
== NULL
)) {
1781 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
1782 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 2230);
1786 RET_LABEL21
:(void)0;
1790 { /* Inline model#MProperty#intro (var20) on <var20:MProperty(MMethod)> */
1791 var25
= var20
->attrs
[COLOR_nitc__model__MProperty___intro
].val
; /* _intro on <var20:MProperty(MMethod)> */
1792 if (unlikely(var25
== NULL
)) {
1793 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _intro");
1794 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1986);
1798 RET_LABEL24
:(void)0;
1803 { /* Inline modelize_property#ModelBuilder#mpropdef2npropdef (var_modelbuilder) on <var_modelbuilder:ModelBuilder> */
1804 var28
= var_modelbuilder
->attrs
[COLOR_nitc__modelize_property__ModelBuilder___mpropdef2npropdef
].val
; /* _mpropdef2npropdef on <var_modelbuilder:ModelBuilder> */
1805 if (unlikely(var28
== NULL
)) {
1806 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mpropdef2npropdef");
1807 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelize_property
, 40);
1811 RET_LABEL27
:(void)0;
1815 var29
= core___core__HashMap___core__abstract_collection__MapRead__get_or_null(var26
, var_intro
);
1817 var_n_intro
= var29
;
1818 if (var_n_intro
== NULL
) {
1819 var30
= 1; /* is null */
1821 var30
= 0; /* arg is null but recv is not */
1824 { /* Inline kernel#Object#== (var_n_intro,((val*)NULL)) on <var_n_intro:nullable APropdef> */
1825 var_other
= ((val
*)NULL
);
1827 { /* Inline kernel#Object#is_same_instance (var_n_intro,var_other) on <var_n_intro:nullable APropdef(APropdef)> */
1828 var35
= var_n_intro
== var_other
;
1831 RET_LABEL34
:(void)0;
1836 RET_LABEL32
:(void)0;
1844 var_ntype
= ((val
*)NULL
);
1845 /* <var_n_intro:nullable APropdef(APropdef)> isa AMethPropdef */
1846 cltype
= type_nitc__AMethPropdef
.color
;
1847 idtype
= type_nitc__AMethPropdef
.id
;
1848 if(cltype
>= var_n_intro
->type
->table_size
) {
1851 var36
= var_n_intro
->type
->type_table
[cltype
] == idtype
;
1855 { /* Inline parser_nodes#AMethPropdef#n_signature (var_n_intro) on <var_n_intro:nullable APropdef(AMethPropdef)> */
1856 var39
= var_n_intro
->attrs
[COLOR_nitc__parser_nodes__AMethPropdef___n_signature
].val
; /* _n_signature on <var_n_intro:nullable APropdef(AMethPropdef)> */
1858 RET_LABEL38
:(void)0;
1861 if (var37
== NULL
) {
1862 PRINT_ERROR("Runtime error: %s", "Receiver is null");
1863 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelize_property
, 1558);
1866 { /* Inline modelize_property#ASignature#ret_type (var37) on <var37:nullable ASignature> */
1867 if (unlikely(var37
== NULL
)) {
1868 PRINT_ERROR("Runtime error: %s", "Receiver is null");
1869 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelize_property
, 670);
1872 var42
= var37
->attrs
[COLOR_nitc__modelize_property__ASignature___ret_type
].val
; /* _ret_type on <var37:nullable ASignature> */
1874 RET_LABEL41
:(void)0;
1879 /* <var_n_intro:nullable APropdef(APropdef)> isa AAttrPropdef */
1880 cltype45
= type_nitc__AAttrPropdef
.color
;
1881 idtype46
= type_nitc__AAttrPropdef
.id
;
1882 if(cltype45
>= var_n_intro
->type
->table_size
) {
1885 var44
= var_n_intro
->type
->type_table
[cltype45
] == idtype46
;
1890 { /* Inline parser_nodes#AAttrPropdef#n_type (var_n_intro) on <var_n_intro:nullable APropdef(AAttrPropdef)> */
1891 var50
= var_n_intro
->attrs
[COLOR_nitc__parser_nodes__AAttrPropdef___n_type
].val
; /* _n_type on <var_n_intro:nullable APropdef(AAttrPropdef)> */
1893 RET_LABEL49
:(void)0;
1896 if (var48
== NULL
) {
1897 var51
= 0; /* is null */
1899 var51
= 1; /* arg is null and recv is not */
1902 { /* Inline kernel#Object#!= (var48,((val*)NULL)) on <var48:nullable AType> */
1903 var_other54
= ((val
*)NULL
);
1905 var55
= ((short int(*)(val
* self
, val
* p0
))(var48
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var48
, var_other54
); /* == on <var48:nullable AType(AType)>*/
1910 RET_LABEL53
:(void)0;
1920 { /* Inline parser_nodes#AAttrPropdef#n_type (var_n_intro) on <var_n_intro:nullable APropdef(AAttrPropdef)> */
1921 var59
= var_n_intro
->attrs
[COLOR_nitc__parser_nodes__AAttrPropdef___n_type
].val
; /* _n_type on <var_n_intro:nullable APropdef(AAttrPropdef)> */
1923 RET_LABEL58
:(void)0;
1926 if (var57
== NULL
) {
1927 PRINT_ERROR("Runtime error: %s", "Receiver is null");
1928 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelize_property
, 1560);
1931 { /* Inline modelbuilder_base#AType#mtype (var57) on <var57:nullable AType> */
1932 if (unlikely(var57
== NULL
)) {
1933 PRINT_ERROR("Runtime error: %s", "Receiver is null");
1934 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelbuilder_base
, 379);
1937 var62
= var57
->attrs
[COLOR_nitc__modelbuilder_base__AType___mtype
].val
; /* _mtype on <var57:nullable AType> */
1939 RET_LABEL61
:(void)0;
1946 if (var_ntype
== NULL
) {
1947 var65
= 1; /* is null */
1949 var65
= 0; /* arg is null but recv is not */
1952 { /* Inline kernel#Object#== (var_ntype,((val*)NULL)) on <var_ntype:nullable Object(nullable MType)> */
1953 var_other
= ((val
*)NULL
);
1955 { /* Inline kernel#Object#is_same_instance (var_ntype,var_other) on <var_ntype:nullable MType(MType)> */
1956 var70
= var_ntype
== var_other
;
1959 RET_LABEL69
:(void)0;
1964 RET_LABEL67
:(void)0;
1973 { /* Inline parser_nodes#AAttrPropdef#n_type (self) on <self:AAttrPropdef> */
1974 var74
= self
->attrs
[COLOR_nitc__parser_nodes__AAttrPropdef___n_type
].val
; /* _n_type on <self:AAttrPropdef> */
1976 RET_LABEL73
:(void)0;
1979 if (var72
== NULL
) {
1980 PRINT_ERROR("Runtime error: %s", "Receiver is null");
1981 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelize_property
, 1563);
1984 { /* Inline modelbuilder_base#AType#mtype (var72) on <var72:nullable AType> */
1985 if (unlikely(var72
== NULL
)) {
1986 PRINT_ERROR("Runtime error: %s", "Receiver is null");
1987 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelbuilder_base
, 379);
1990 var77
= var72
->attrs
[COLOR_nitc__modelbuilder_base__AType___mtype
].val
; /* _mtype on <var72:nullable AType> */
1992 RET_LABEL76
:(void)0;
1996 { /* Inline kernel#Object#!= (var_ntype,var75) on <var_ntype:nullable Object(MType)> */
1997 var_other54
= var75
;
1999 var80
= ((short int(*)(val
* self
, val
* p0
))(var_ntype
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_ntype
, var_other54
); /* == on <var_ntype:nullable Object(MType)>*/
2004 RET_LABEL79
:(void)0;
2014 { /* Inline modelize_property#APropdef#mpropdef (self) on <self:AAttrPropdef> */
2015 var85
= self
->attrs
[COLOR_nitc__modelize_property__APropdef___mpropdef
].val
; /* _mpropdef on <self:AAttrPropdef> */
2017 RET_LABEL84
:(void)0;
2020 if (var83
== NULL
) {
2021 var86
= 1; /* is null */
2023 var86
= 0; /* arg is null but recv is not */
2026 { /* Inline kernel#Object#== (var83,((val*)NULL)) on <var83:nullable MPropDef(nullable MAttributeDef)> */
2027 var_other
= ((val
*)NULL
);
2029 { /* Inline kernel#Object#is_same_instance (var83,var_other) on <var83:nullable MAttributeDef(MAttributeDef)> */
2030 var91
= var83
== var_other
;
2033 RET_LABEL90
:(void)0;
2038 RET_LABEL88
:(void)0;
2049 { /* Inline parser_nodes#AAttrPropdef#n_type (self) on <self:AAttrPropdef> */
2050 var94
= self
->attrs
[COLOR_nitc__parser_nodes__AAttrPropdef___n_type
].val
; /* _n_type on <self:AAttrPropdef> */
2052 RET_LABEL93
:(void)0;
2055 if (likely(varonce
!=NULL
)) {
2058 var96
= "useless-signature";
2059 var97
= core__flat___NativeString___to_s_full(var96
, 17l, 17l);
2063 if (unlikely(varonce98
==NULL
)) {
2064 var99
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
2065 if (likely(varonce100
!=NULL
)) {
2066 var101
= varonce100
;
2068 var102
= "Warning: useless type repetition on redefined attribute `";
2069 var103
= core__flat___NativeString___to_s_full(var102
, 57l, 57l);
2071 varonce100
= var101
;
2073 ((struct instance_core__NativeArray
*)var99
)->values
[0]=var101
;
2074 if (likely(varonce104
!=NULL
)) {
2075 var105
= varonce104
;
2078 var107
= core__flat___NativeString___to_s_full(var106
, 1l, 1l);
2080 varonce104
= var105
;
2082 ((struct instance_core__NativeArray
*)var99
)->values
[2]=var105
;
2088 { /* Inline modelize_property#APropdef#mpropdef (self) on <self:AAttrPropdef> */
2089 var110
= self
->attrs
[COLOR_nitc__modelize_property__APropdef___mpropdef
].val
; /* _mpropdef on <self:AAttrPropdef> */
2091 RET_LABEL109
:(void)0;
2094 if (var108
== NULL
) {
2095 PRINT_ERROR("Runtime error: %s", "Receiver is null");
2096 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelize_property
, 1564);
2099 var111
= nitc___nitc__MPropDef___nitc__model_base__MEntity__name(var108
);
2101 ((struct instance_core__NativeArray
*)var99
)->values
[1]=var111
;
2103 var112
= ((val
*(*)(val
* self
))(var99
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var99
); /* native_to_s on <var99:NativeArray[String]>*/
2107 nitc___nitc__ModelBuilder___advice(var_modelbuilder
, var92
, var95
, var112
); /* Direct call modelbuilder_base#ModelBuilder#advice on <var_modelbuilder:ModelBuilder>*/
2111 /* method modelize_property#ATypePropdef#build_property for (self: ATypePropdef, ModelBuilder, MClassDef) */
2112 void nitc__modelize_property___ATypePropdef___APropdef__build_property(val
* self
, val
* p0
, val
* p1
) {
2113 val
* var_modelbuilder
/* var modelbuilder: ModelBuilder */;
2114 val
* var_mclassdef
/* var mclassdef: MClassDef */;
2115 val
* var
/* : AQclassid */;
2116 val
* var2
/* : AQclassid */;
2117 val
* var3
/* : TClassid */;
2118 val
* var5
/* : TClassid */;
2119 val
* var6
/* : String */;
2120 val
* var_name
/* var name: String */;
2121 val
* var7
/* : AQclassid */;
2122 val
* var9
/* : AQclassid */;
2123 val
* var10
/* : nullable MProperty */;
2124 val
* var_mprop
/* var mprop: nullable MProperty */;
2125 short int var11
/* : Bool */;
2126 short int var12
/* : Bool */;
2127 val
* var_other
/* var other: nullable Object */;
2128 short int var14
/* : Bool */;
2129 short int var16
/* : Bool */;
2130 val
* var17
/* : nullable AVisibility */;
2131 val
* var19
/* : nullable AVisibility */;
2132 val
* var20
/* : MVisibility */;
2133 val
* var_mvisibility
/* var mvisibility: MVisibility */;
2134 val
* var21
/* : MVirtualTypeProp */;
2135 val
* var22
/* : SequenceRead[Char] */;
2136 val
* var_
/* var : SequenceRead[Char] */;
2137 val
* var23
/* : Iterator[nullable Object] */;
2138 val
* var_24
/* var : IndexedIterator[Char] */;
2139 short int var25
/* : Bool */;
2140 val
* var26
/* : nullable Object */;
2141 uint32_t var27
/* : Char */;
2142 uint32_t var_c
/* var c: Char */;
2143 short int var28
/* : Bool */;
2144 short int var29
/* : Bool */;
2145 short int var31
/* : Bool */;
2148 const char* var_class_name
;
2149 short int var32
/* : Bool */;
2150 short int var_33
/* var : Bool */;
2151 short int var34
/* : Bool */;
2152 short int var36
/* : Bool */;
2155 const char* var_class_name39
;
2156 short int var40
/* : Bool */;
2157 val
* var41
/* : AQclassid */;
2158 val
* var43
/* : AQclassid */;
2159 static val
* varonce
;
2160 val
* var44
/* : String */;
2161 char* var45
/* : NativeString */;
2162 val
* var46
/* : String */;
2163 val
* var48
/* : NativeArray[String] */;
2164 static val
* varonce47
;
2165 static val
* varonce49
;
2166 val
* var50
/* : String */;
2167 char* var51
/* : NativeString */;
2168 val
* var52
/* : String */;
2169 static val
* varonce53
;
2170 val
* var54
/* : String */;
2171 char* var55
/* : NativeString */;
2172 val
* var56
/* : String */;
2173 val
* var57
/* : String */;
2174 short int var58
/* : Bool */;
2177 val
* var61
/* : nullable AVisibility */;
2178 val
* var63
/* : nullable AVisibility */;
2179 val
* var64
/* : MVirtualTypeDef */;
2180 val
* var65
/* : Location */;
2181 val
* var67
/* : Location */;
2182 val
* var_mpropdef
/* var mpropdef: MVirtualTypeDef */;
2183 short int var68
/* : Bool */;
2186 const struct type
* type_struct
;
2187 const char* var_class_name71
;
2188 short int var73
/* : Bool */;
2191 const struct type
* type_struct76
;
2192 const char* var_class_name77
;
2193 short int var78
/* : Bool */;
2194 val
* var79
/* : ToolContext */;
2195 val
* var81
/* : ToolContext */;
2196 val
* var83
/* : NativeArray[String] */;
2197 static val
* varonce82
;
2198 static val
* varonce84
;
2199 val
* var85
/* : String */;
2200 char* var86
/* : NativeString */;
2201 val
* var87
/* : String */;
2202 val
* var88
/* : String */;
2203 val
* var89
/* : String */;
2204 val
* var90
/* : String */;
2205 val
* var91
/* : ToolContext */;
2206 val
* var93
/* : ToolContext */;
2207 val
* var95
/* : NativeArray[String] */;
2208 static val
* varonce94
;
2209 static val
* varonce96
;
2210 val
* var97
/* : String */;
2211 char* var98
/* : NativeString */;
2212 val
* var99
/* : String */;
2213 val
* var100
/* : String */;
2214 val
* var101
/* : String */;
2215 val
* var102
/* : String */;
2216 val
* var103
/* : nullable TKwredef */;
2217 val
* var105
/* : nullable TKwredef */;
2218 short int var106
/* : Bool */;
2219 short int var107
/* : Bool */;
2220 short int var108
/* : Bool */;
2221 short int var109
/* : Bool */;
2222 val
* var111
/* : Map[MProperty, APropdef] */;
2223 val
* var113
/* : Map[MProperty, APropdef] */;
2224 val
* var114
/* : HashMap[MPropDef, APropdef] */;
2225 val
* var116
/* : HashMap[MPropDef, APropdef] */;
2226 static val
* varonce117
;
2227 val
* var118
/* : String */;
2228 char* var119
/* : NativeString */;
2229 val
* var120
/* : String */;
2230 val
* var121
/* : nullable AAnnotation */;
2231 val
* var_atfixed
/* var atfixed: nullable AAnnotation */;
2232 short int var122
/* : Bool */;
2233 short int var123
/* : Bool */;
2234 val
* var_other125
/* var other: nullable Object */;
2235 short int var126
/* : Bool */;
2236 short int var127
/* : Bool */;
2237 var_modelbuilder
= p0
;
2240 { /* Inline parser_nodes#ATypePropdef#n_qid (self) on <self:ATypePropdef> */
2241 var2
= self
->attrs
[COLOR_nitc__parser_nodes__ATypePropdef___n_qid
].val
; /* _n_qid on <self:ATypePropdef> */
2242 if (unlikely(var2
== NULL
)) {
2243 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_qid");
2244 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1493);
2252 { /* Inline parser_nodes#AQclassid#n_id (var) on <var:AQclassid> */
2253 var5
= var
->attrs
[COLOR_nitc__parser_nodes__AQclassid___n_id
].val
; /* _n_id on <var:AQclassid> */
2254 if (unlikely(var5
== NULL
)) {
2255 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id");
2256 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1668);
2264 var6
= nitc__lexer_work___Token___text(var3
);
2268 { /* Inline parser_nodes#ATypePropdef#n_qid (self) on <self:ATypePropdef> */
2269 var9
= self
->attrs
[COLOR_nitc__parser_nodes__ATypePropdef___n_qid
].val
; /* _n_qid on <self:ATypePropdef> */
2270 if (unlikely(var9
== NULL
)) {
2271 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_qid");
2272 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1493);
2280 var10
= nitc___nitc__ModelBuilder___try_get_mproperty_by_name(var_modelbuilder
, var7
, var_mclassdef
, var_name
);
2283 if (var_mprop
== NULL
) {
2284 var11
= 1; /* is null */
2286 var11
= 0; /* arg is null but recv is not */
2289 { /* Inline kernel#Object#== (var_mprop,((val*)NULL)) on <var_mprop:nullable MProperty> */
2290 var_other
= ((val
*)NULL
);
2292 { /* Inline kernel#Object#is_same_instance (var_mprop,var_other) on <var_mprop:nullable MProperty(MProperty)> */
2293 var16
= var_mprop
== var_other
;
2296 RET_LABEL15
:(void)0;
2301 RET_LABEL13
:(void)0;
2307 { /* Inline parser_nodes#ADefinition#n_visibility (self) on <self:ATypePropdef> */
2308 var19
= self
->attrs
[COLOR_nitc__parser_nodes__ADefinition___n_visibility
].val
; /* _n_visibility on <self:ATypePropdef> */
2310 RET_LABEL18
:(void)0;
2314 var20
= nitc__modelize_property___APropdef___new_property_visibility(self
, var_modelbuilder
, var_mclassdef
, var17
);
2316 var_mvisibility
= var20
;
2317 var21
= NEW_nitc__MVirtualTypeProp(&type_nitc__MVirtualTypeProp
);
2319 ((void(*)(val
* self
, val
* p0
))(var21
->class->vft
[COLOR_nitc__model__MProperty__intro_mclassdef_61d
]))(var21
, var_mclassdef
); /* intro_mclassdef= on <var21:MVirtualTypeProp>*/
2322 ((void(*)(val
* self
, val
* p0
))(var21
->class->vft
[COLOR_nitc__model__MProperty__name_61d
]))(var21
, var_name
); /* name= on <var21:MVirtualTypeProp>*/
2325 ((void(*)(val
* self
, val
* p0
))(var21
->class->vft
[COLOR_nitc__model__MProperty__visibility_61d
]))(var21
, var_mvisibility
); /* visibility= on <var21:MVirtualTypeProp>*/
2328 ((void(*)(val
* self
))(var21
->class->vft
[COLOR_core__kernel__Object__init
]))(var21
); /* init on <var21:MVirtualTypeProp>*/
2332 var22
= ((val
*(*)(val
* self
))(var_name
->class->vft
[COLOR_core__abstract_text__Text__chars
]))(var_name
); /* chars on <var_name:String>*/
2336 var23
= ((val
*(*)(val
* self
))((((long)var_
&3)?class_info
[((long)var_
&3)]:var_
->class)->vft
[COLOR_core__abstract_collection__Collection__iterator
]))(var_
); /* iterator on <var_:SequenceRead[Char]>*/
2341 var25
= ((short int(*)(val
* self
))((((long)var_24
&3)?class_info
[((long)var_24
&3)]:var_24
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_24
); /* is_ok on <var_24:IndexedIterator[Char]>*/
2348 var26
= ((val
*(*)(val
* self
))((((long)var_24
&3)?class_info
[((long)var_24
&3)]:var_24
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_24
); /* item on <var_24:IndexedIterator[Char]>*/
2350 var27
= (uint32_t)((long)(var26
)>>2);
2353 { /* Inline kernel#Char#>= (var_c,'a') on <var_c:Char> */
2354 /* Covariant cast for argument 0 (i) <'a':Char> isa OTHER */
2355 /* <'a':Char> isa OTHER */
2356 var31
= 1; /* easy <'a':Char> isa OTHER*/
2357 if (unlikely(!var31
)) {
2358 var_class_name
= type_core__Char
.name
;
2359 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
2360 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 924);
2363 var32
= var_c
>= 'a';
2366 RET_LABEL30
:(void)0;
2372 { /* Inline kernel#Char#<= (var_c,'z') on <var_c:Char> */
2373 /* Covariant cast for argument 0 (i) <'z':Char> isa OTHER */
2374 /* <'z':Char> isa OTHER */
2375 var36
= 1; /* easy <'z':Char> isa OTHER*/
2376 if (unlikely(!var36
)) {
2377 var_class_name39
= type_core__Char
.name
;
2378 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name39
);
2379 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 922);
2382 var40
= var_c
<= 'z';
2385 RET_LABEL35
:(void)0;
2394 { /* Inline parser_nodes#ATypePropdef#n_qid (self) on <self:ATypePropdef> */
2395 var43
= self
->attrs
[COLOR_nitc__parser_nodes__ATypePropdef___n_qid
].val
; /* _n_qid on <self:ATypePropdef> */
2396 if (unlikely(var43
== NULL
)) {
2397 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_qid");
2398 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1493);
2402 RET_LABEL42
:(void)0;
2405 if (likely(varonce
!=NULL
)) {
2408 var45
= "bad-type-name";
2409 var46
= core__flat___NativeString___to_s_full(var45
, 13l, 13l);
2413 if (unlikely(varonce47
==NULL
)) {
2414 var48
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
2415 if (likely(varonce49
!=NULL
)) {
2418 var51
= "Warning: lowercase in the virtual type `";
2419 var52
= core__flat___NativeString___to_s_full(var51
, 40l, 40l);
2423 ((struct instance_core__NativeArray
*)var48
)->values
[0]=var50
;
2424 if (likely(varonce53
!=NULL
)) {
2428 var56
= core__flat___NativeString___to_s_full(var55
, 2l, 2l);
2432 ((struct instance_core__NativeArray
*)var48
)->values
[2]=var54
;
2437 ((struct instance_core__NativeArray
*)var48
)->values
[1]=var_name
;
2439 var57
= ((val
*(*)(val
* self
))(var48
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var48
); /* native_to_s on <var48:NativeArray[String]>*/
2443 nitc___nitc__ModelBuilder___warning(var_modelbuilder
, var41
, var44
, var57
); /* Direct call modelbuilder_base#ModelBuilder#warning on <var_modelbuilder:ModelBuilder>*/
2449 ((void(*)(val
* self
))((((long)var_24
&3)?class_info
[((long)var_24
&3)]:var_24
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_24
); /* next on <var_24:IndexedIterator[Char]>*/
2452 BREAK_label
: (void)0;
2454 ((void(*)(val
* self
))((((long)var_24
&3)?class_info
[((long)var_24
&3)]:var_24
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_24
); /* finish on <var_24:IndexedIterator[Char]>*/
2457 /* <var_mprop:nullable MProperty(MProperty)> isa MVirtualTypeProp */
2458 cltype59
= type_nitc__MVirtualTypeProp
.color
;
2459 idtype60
= type_nitc__MVirtualTypeProp
.id
;
2460 if(cltype59
>= var_mprop
->type
->table_size
) {
2463 var58
= var_mprop
->type
->type_table
[cltype59
] == idtype60
;
2465 if (unlikely(!var58
)) {
2466 PRINT_ERROR("Runtime error: %s", "Assert failed");
2467 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelize_property
, 1583);
2471 { /* Inline parser_nodes#ADefinition#n_visibility (self) on <self:ATypePropdef> */
2472 var63
= self
->attrs
[COLOR_nitc__parser_nodes__ADefinition___n_visibility
].val
; /* _n_visibility on <self:ATypePropdef> */
2474 RET_LABEL62
:(void)0;
2478 nitc__modelize_property___APropdef___check_redef_property_visibility(self
, var_modelbuilder
, var61
, var_mprop
); /* Direct call modelize_property#APropdef#check_redef_property_visibility on <self:ATypePropdef>*/
2481 var64
= NEW_nitc__MVirtualTypeDef(&type_nitc__MVirtualTypeDef
);
2483 { /* Inline parser_nodes#ANode#location (self) on <self:ATypePropdef> */
2484 var67
= self
->attrs
[COLOR_nitc__parser_nodes__ANode___location
].val
; /* _location on <self:ATypePropdef> */
2485 if (unlikely(var67
== NULL
)) {
2486 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _location");
2487 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 24);
2491 RET_LABEL66
:(void)0;
2495 ((void(*)(val
* self
, val
* p0
))(var64
->class->vft
[COLOR_nitc__model__MPropDef__mclassdef_61d
]))(var64
, var_mclassdef
); /* mclassdef= on <var64:MVirtualTypeDef>*/
2498 ((void(*)(val
* self
, val
* p0
))(var64
->class->vft
[COLOR_nitc__model__MPropDef__mproperty_61d
]))(var64
, var_mprop
); /* mproperty= on <var64:MVirtualTypeDef>*/
2501 ((void(*)(val
* self
, val
* p0
))(var64
->class->vft
[COLOR_nitc__model__MPropDef__location_61d
]))(var64
, var65
); /* location= on <var64:MVirtualTypeDef>*/
2504 ((void(*)(val
* self
))(var64
->class->vft
[COLOR_core__kernel__Object__init
]))(var64
); /* init on <var64:MVirtualTypeDef>*/
2506 var_mpropdef
= var64
;
2507 /* <var_mpropdef:MVirtualTypeDef> isa nullable MPROPDEF */
2508 type_struct
= self
->type
->resolution_table
->types
[COLOR_nullable__nitc__modelize_property__APropdef__MPROPDEF
];
2509 cltype69
= type_struct
->color
;
2510 idtype70
= type_struct
->id
;
2511 if(cltype69
>= var_mpropdef
->type
->table_size
) {
2514 var68
= var_mpropdef
->type
->type_table
[cltype69
] == idtype70
;
2516 if (unlikely(!var68
)) {
2517 var_class_name71
= var_mpropdef
== NULL ?
"null" : var_mpropdef
->type
->name
;
2518 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable MPROPDEF", var_class_name71
);
2519 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelize_property
, 1588);
2523 { /* Inline modelize_property#APropdef#mpropdef= (self,var_mpropdef) on <self:ATypePropdef> */
2524 /* Covariant cast for argument 0 (mpropdef) <var_mpropdef:MVirtualTypeDef> isa nullable MPROPDEF */
2525 /* <var_mpropdef:MVirtualTypeDef> isa nullable MPROPDEF */
2526 type_struct76
= self
->type
->resolution_table
->types
[COLOR_nullable__nitc__modelize_property__APropdef__MPROPDEF
];
2527 cltype74
= type_struct76
->color
;
2528 idtype75
= type_struct76
->id
;
2529 if(cltype74
>= var_mpropdef
->type
->table_size
) {
2532 var73
= var_mpropdef
->type
->type_table
[cltype74
] == idtype75
;
2534 if (unlikely(!var73
)) {
2535 var_class_name77
= var_mpropdef
== NULL ?
"null" : var_mpropdef
->type
->name
;
2536 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable MPROPDEF", var_class_name77
);
2537 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelize_property
, 559);
2540 self
->attrs
[COLOR_nitc__modelize_property__APropdef___mpropdef
].val
= var_mpropdef
; /* _mpropdef on <self:ATypePropdef> */
2541 RET_LABEL72
:(void)0;
2545 var78
= nitc___nitc__MPropDef___is_intro(var_mpropdef
);
2549 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (var_modelbuilder) on <var_modelbuilder:ModelBuilder> */
2550 var81
= var_modelbuilder
->attrs
[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <var_modelbuilder:ModelBuilder> */
2551 if (unlikely(var81
== NULL
)) {
2552 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
2553 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelbuilder_base
, 47);
2557 RET_LABEL80
:(void)0;
2560 if (unlikely(varonce82
==NULL
)) {
2561 var83
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
2562 if (likely(varonce84
!=NULL
)) {
2565 var86
= " introduces new type ";
2566 var87
= core__flat___NativeString___to_s_full(var86
, 21l, 21l);
2570 ((struct instance_core__NativeArray
*)var83
)->values
[1]=var85
;
2576 var88
= ((val
*(*)(val
* self
))(var_mpropdef
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_mpropdef
); /* to_s on <var_mpropdef:MVirtualTypeDef>*/
2578 ((struct instance_core__NativeArray
*)var83
)->values
[0]=var88
;
2580 var89
= nitc___nitc__MProperty___nitc__model_base__MEntity__full_name(var_mprop
);
2582 ((struct instance_core__NativeArray
*)var83
)->values
[2]=var89
;
2584 var90
= ((val
*(*)(val
* self
))(var83
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var83
); /* native_to_s on <var83:NativeArray[String]>*/
2588 nitc___nitc__ToolContext___info(var79
, var90
, 4l); /* Direct call toolcontext#ToolContext#info on <var79:ToolContext>*/
2592 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (var_modelbuilder) on <var_modelbuilder:ModelBuilder> */
2593 var93
= var_modelbuilder
->attrs
[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <var_modelbuilder:ModelBuilder> */
2594 if (unlikely(var93
== NULL
)) {
2595 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
2596 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelbuilder_base
, 47);
2600 RET_LABEL92
:(void)0;
2603 if (unlikely(varonce94
==NULL
)) {
2604 var95
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
2605 if (likely(varonce96
!=NULL
)) {
2608 var98
= " redefines type ";
2609 var99
= core__flat___NativeString___to_s_full(var98
, 16l, 16l);
2613 ((struct instance_core__NativeArray
*)var95
)->values
[1]=var97
;
2619 var100
= ((val
*(*)(val
* self
))(var_mpropdef
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_mpropdef
); /* to_s on <var_mpropdef:MVirtualTypeDef>*/
2621 ((struct instance_core__NativeArray
*)var95
)->values
[0]=var100
;
2623 var101
= nitc___nitc__MProperty___nitc__model_base__MEntity__full_name(var_mprop
);
2625 ((struct instance_core__NativeArray
*)var95
)->values
[2]=var101
;
2627 var102
= ((val
*(*)(val
* self
))(var95
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var95
); /* native_to_s on <var95:NativeArray[String]>*/
2631 nitc___nitc__ToolContext___info(var91
, var102
, 4l); /* Direct call toolcontext#ToolContext#info on <var91:ToolContext>*/
2635 { /* Inline parser_nodes#ADefinition#n_kwredef (self) on <self:ATypePropdef> */
2636 var105
= self
->attrs
[COLOR_nitc__parser_nodes__ADefinition___n_kwredef
].val
; /* _n_kwredef on <self:ATypePropdef> */
2638 RET_LABEL104
:(void)0;
2642 var106
= nitc___nitc__MPropDef___is_intro(var_mpropdef
);
2646 var108
= nitc__modelize_property___APropdef___check_redef_keyword(self
, var_modelbuilder
, var_mclassdef
, var103
, var107
, var_mprop
);
2651 { /* Inline model_base#MEntity#is_broken= (var_mpropdef,1) on <var_mpropdef:MVirtualTypeDef> */
2652 var_mpropdef
->attrs
[COLOR_nitc__model_base__MEntity___is_broken
].s
= 1; /* _is_broken on <var_mpropdef:MVirtualTypeDef> */
2653 RET_LABEL110
:(void)0;
2659 { /* Inline modelize_property#MClassDef#mprop2npropdef (var_mclassdef) on <var_mclassdef:MClassDef> */
2660 var113
= var_mclassdef
->attrs
[COLOR_nitc__modelize_property__MClassDef___mprop2npropdef
].val
; /* _mprop2npropdef on <var_mclassdef:MClassDef> */
2661 if (unlikely(var113
== NULL
)) {
2662 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mprop2npropdef");
2663 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelize_property
, 506);
2667 RET_LABEL112
:(void)0;
2671 ((void(*)(val
* self
, val
* p0
, val
* p1
))((((long)var111
&3)?class_info
[((long)var111
&3)]:var111
->class)->vft
[COLOR_core__abstract_collection__Map___91d_93d_61d
]))(var111
, var_mprop
, self
); /* []= on <var111:Map[MProperty, APropdef]>*/
2674 { /* Inline modelize_property#ModelBuilder#mpropdef2npropdef (var_modelbuilder) on <var_modelbuilder:ModelBuilder> */
2675 var116
= var_modelbuilder
->attrs
[COLOR_nitc__modelize_property__ModelBuilder___mpropdef2npropdef
].val
; /* _mpropdef2npropdef on <var_modelbuilder:ModelBuilder> */
2676 if (unlikely(var116
== NULL
)) {
2677 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mpropdef2npropdef");
2678 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelize_property
, 40);
2682 RET_LABEL115
:(void)0;
2686 core___core__HashMap___core__abstract_collection__Map___91d_93d_61d(var114
, var_mpropdef
, self
); /* Direct call hash_collection#HashMap#[]= on <var114:HashMap[MPropDef, APropdef]>*/
2689 nitc__modelize_property___APropdef___set_doc(self
, var_mpropdef
, var_modelbuilder
); /* Direct call modelize_property#APropdef#set_doc on <self:ATypePropdef>*/
2691 if (likely(varonce117
!=NULL
)) {
2692 var118
= varonce117
;
2695 var120
= core__flat___NativeString___to_s_full(var119
, 5l, 5l);
2697 varonce117
= var118
;
2700 var121
= nitc__annotation___Prod___get_single_annotation(self
, var118
, var_modelbuilder
);
2702 var_atfixed
= var121
;
2703 if (var_atfixed
== NULL
) {
2704 var122
= 0; /* is null */
2706 var122
= 1; /* arg is null and recv is not */
2709 { /* Inline kernel#Object#!= (var_atfixed,((val*)NULL)) on <var_atfixed:nullable AAnnotation> */
2710 var_other125
= ((val
*)NULL
);
2712 var126
= ((short int(*)(val
* self
, val
* p0
))(var_atfixed
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_atfixed
, var_other125
); /* == on <var_atfixed:nullable AAnnotation(AAnnotation)>*/
2717 RET_LABEL124
:(void)0;
2723 { /* Inline model#MVirtualTypeDef#is_fixed= (var_mpropdef,1) on <var_mpropdef:MVirtualTypeDef> */
2724 var_mpropdef
->attrs
[COLOR_nitc__model__MVirtualTypeDef___is_fixed
].s
= 1; /* _is_fixed on <var_mpropdef:MVirtualTypeDef> */
2725 RET_LABEL128
:(void)0;
2732 /* method modelize_property#ATypePropdef#build_signature for (self: ATypePropdef, ModelBuilder) */
2733 void nitc__modelize_property___ATypePropdef___APropdef__build_signature(val
* self
, val
* p0
) {
2734 val
* var_modelbuilder
/* var modelbuilder: ModelBuilder */;
2735 val
* var
/* : nullable MPropDef */;
2736 val
* var2
/* : nullable MPropDef */;
2737 val
* var_mpropdef
/* var mpropdef: nullable MVirtualTypeDef */;
2738 short int var3
/* : Bool */;
2739 short int var4
/* : Bool */;
2740 val
* var_other
/* var other: nullable Object */;
2741 short int var6
/* : Bool */;
2742 short int var8
/* : Bool */;
2743 val
* var9
/* : MClassDef */;
2744 val
* var11
/* : MClassDef */;
2745 val
* var_mclassdef
/* var mclassdef: MClassDef */;
2746 val
* var12
/* : MModule */;
2747 val
* var14
/* : MModule */;
2748 val
* var_mmodule
/* var mmodule: MModule */;
2749 val
* var_mtype
/* var mtype: nullable MType */;
2750 val
* var15
/* : AType */;
2751 val
* var17
/* : AType */;
2752 val
* var_ntype
/* var ntype: AType */;
2753 val
* var18
/* : nullable MType */;
2754 short int var19
/* : Bool */;
2755 short int var20
/* : Bool */;
2756 short int var22
/* : Bool */;
2757 short int var24
/* : Bool */;
2758 var_modelbuilder
= p0
;
2760 { /* Inline modelize_property#APropdef#mpropdef (self) on <self:ATypePropdef> */
2761 var2
= self
->attrs
[COLOR_nitc__modelize_property__APropdef___mpropdef
].val
; /* _mpropdef on <self:ATypePropdef> */
2767 if (var_mpropdef
== NULL
) {
2768 var3
= 1; /* is null */
2770 var3
= 0; /* arg is null but recv is not */
2773 { /* Inline kernel#Object#== (var_mpropdef,((val*)NULL)) on <var_mpropdef:nullable MVirtualTypeDef> */
2774 var_other
= ((val
*)NULL
);
2776 { /* Inline kernel#Object#is_same_instance (var_mpropdef,var_other) on <var_mpropdef:nullable MVirtualTypeDef(MVirtualTypeDef)> */
2777 var8
= var_mpropdef
== var_other
;
2794 { /* Inline model#MPropDef#mclassdef (var_mpropdef) on <var_mpropdef:nullable MVirtualTypeDef(MVirtualTypeDef)> */
2795 var11
= var_mpropdef
->attrs
[COLOR_nitc__model__MPropDef___mclassdef
].val
; /* _mclassdef on <var_mpropdef:nullable MVirtualTypeDef(MVirtualTypeDef)> */
2796 if (unlikely(var11
== NULL
)) {
2797 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
2798 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 2227);
2802 RET_LABEL10
:(void)0;
2805 var_mclassdef
= var9
;
2807 { /* Inline model#MClassDef#mmodule (var_mclassdef) on <var_mclassdef:MClassDef> */
2808 var14
= var_mclassdef
->attrs
[COLOR_nitc__model__MClassDef___mmodule
].val
; /* _mmodule on <var_mclassdef:MClassDef> */
2809 if (unlikely(var14
== NULL
)) {
2810 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mmodule");
2811 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 573);
2815 RET_LABEL13
:(void)0;
2818 var_mmodule
= var12
;
2819 var_mtype
= ((val
*)NULL
);
2821 { /* Inline parser_nodes#ATypePropdef#n_type (self) on <self:ATypePropdef> */
2822 var17
= self
->attrs
[COLOR_nitc__parser_nodes__ATypePropdef___n_type
].val
; /* _n_type on <self:ATypePropdef> */
2823 if (unlikely(var17
== NULL
)) {
2824 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_type");
2825 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1496);
2829 RET_LABEL16
:(void)0;
2834 var18
= nitc___nitc__ModelBuilder___resolve_mtype_unchecked(var_modelbuilder
, var_mmodule
, var_mclassdef
, var_ntype
, 1);
2837 if (var_mtype
== NULL
) {
2838 var19
= 1; /* is null */
2840 var19
= 0; /* arg is null but recv is not */
2843 { /* Inline kernel#Object#== (var_mtype,((val*)NULL)) on <var_mtype:nullable MType> */
2844 var_other
= ((val
*)NULL
);
2846 { /* Inline kernel#Object#is_same_instance (var_mtype,var_other) on <var_mtype:nullable MType(MType)> */
2847 var24
= var_mtype
== var_other
;
2850 RET_LABEL23
:(void)0;
2855 RET_LABEL21
:(void)0;
2864 { /* Inline model#MVirtualTypeDef#bound= (var_mpropdef,var_mtype) on <var_mpropdef:nullable MVirtualTypeDef(MVirtualTypeDef)> */
2865 var_mpropdef
->attrs
[COLOR_nitc__model__MVirtualTypeDef___bound
].val
= var_mtype
; /* _bound on <var_mpropdef:nullable MVirtualTypeDef(MVirtualTypeDef)> */
2866 RET_LABEL25
:(void)0;
2871 /* method modelize_property#ATypePropdef#check_signature for (self: ATypePropdef, ModelBuilder) */
2872 void nitc__modelize_property___ATypePropdef___APropdef__check_signature(val
* self
, val
* p0
) {
2873 val
* var_modelbuilder
/* var modelbuilder: ModelBuilder */;
2874 val
* var
/* : nullable MPropDef */;
2875 val
* var2
/* : nullable MPropDef */;
2876 val
* var_mpropdef
/* var mpropdef: nullable MVirtualTypeDef */;
2877 short int var3
/* : Bool */;
2878 short int var4
/* : Bool */;
2879 val
* var_other
/* var other: nullable Object */;
2880 short int var6
/* : Bool */;
2881 short int var8
/* : Bool */;
2882 val
* var9
/* : nullable MType */;
2883 val
* var11
/* : nullable MType */;
2884 val
* var_bound
/* var bound: nullable MType */;
2885 short int var12
/* : Bool */;
2886 short int var13
/* : Bool */;
2887 short int var15
/* : Bool */;
2888 short int var17
/* : Bool */;
2889 val
* var18
/* : AType */;
2890 val
* var20
/* : AType */;
2891 val
* var21
/* : MClassDef */;
2892 val
* var23
/* : MClassDef */;
2893 val
* var_mclassdef
/* var mclassdef: MClassDef */;
2894 val
* var24
/* : MModule */;
2895 val
* var26
/* : MModule */;
2896 val
* var_mmodule
/* var mmodule: MModule */;
2897 val
* var27
/* : MClassType */;
2898 val
* var29
/* : MClassType */;
2899 val
* var_anchor
/* var anchor: MClassType */;
2900 val
* var30
/* : AType */;
2901 val
* var32
/* : AType */;
2902 val
* var_ntype
/* var ntype: AType */;
2903 val
* var33
/* : nullable MType */;
2904 short int var34
/* : Bool */;
2905 short int var35
/* : Bool */;
2906 short int var37
/* : Bool */;
2907 short int var39
/* : Bool */;
2908 val
* var41
/* : MProperty */;
2909 val
* var43
/* : MProperty */;
2910 val
* var44
/* : Array[MPropDef] */;
2911 val
* var_
/* var : Array[MVirtualTypeDef] */;
2912 val
* var45
/* : IndexedIterator[nullable Object] */;
2913 val
* var_46
/* var : IndexedIterator[MVirtualTypeDef] */;
2914 short int var47
/* : Bool */;
2915 val
* var48
/* : nullable Object */;
2916 val
* var_p
/* var p: MVirtualTypeDef */;
2917 val
* var49
/* : nullable MType */;
2918 val
* var51
/* : nullable MType */;
2919 val
* var_supbound
/* var supbound: nullable MType */;
2920 short int var52
/* : Bool */;
2921 short int var53
/* : Bool */;
2922 short int var54
/* : Bool */;
2923 short int var55
/* : Bool */;
2924 short int var57
/* : Bool */;
2925 short int var59
/* : Bool */;
2926 short int var_60
/* var : Bool */;
2927 short int var61
/* : Bool */;
2930 short int var_62
/* var : Bool */;
2931 short int var63
/* : Bool */;
2932 short int var65
/* : Bool */;
2933 short int var66
/* : Bool */;
2934 short int var68
/* : Bool */;
2935 val
* var69
/* : NativeArray[String] */;
2936 static val
* varonce
;
2937 static val
* varonce70
;
2938 val
* var71
/* : String */;
2939 char* var72
/* : NativeString */;
2940 val
* var73
/* : String */;
2941 static val
* varonce74
;
2942 val
* var75
/* : String */;
2943 char* var76
/* : NativeString */;
2944 val
* var77
/* : String */;
2945 static val
* varonce78
;
2946 val
* var79
/* : String */;
2947 char* var80
/* : NativeString */;
2948 val
* var81
/* : String */;
2949 val
* var82
/* : MProperty */;
2950 val
* var84
/* : MProperty */;
2951 val
* var85
/* : String */;
2952 val
* var86
/* : MClassDef */;
2953 val
* var88
/* : MClassDef */;
2954 val
* var89
/* : MClass */;
2955 val
* var91
/* : MClass */;
2956 val
* var92
/* : String */;
2957 val
* var93
/* : String */;
2958 val
* var94
/* : MClassDef */;
2959 val
* var96
/* : MClassDef */;
2960 val
* var97
/* : MClass */;
2961 val
* var99
/* : MClass */;
2962 val
* var100
/* : MClass */;
2963 val
* var102
/* : MClass */;
2964 short int var103
/* : Bool */;
2965 short int var105
/* : Bool */;
2966 short int var107
/* : Bool */;
2967 val
* var108
/* : AType */;
2968 val
* var110
/* : AType */;
2969 static val
* varonce111
;
2970 val
* var112
/* : String */;
2971 char* var113
/* : NativeString */;
2972 val
* var114
/* : String */;
2973 static val
* varonce115
;
2974 val
* var116
/* : String */;
2975 char* var117
/* : NativeString */;
2976 val
* var118
/* : String */;
2977 val
* var119
/* : AType */;
2978 val
* var121
/* : AType */;
2979 short int var122
/* : Bool */;
2980 short int var123
/* : Bool */;
2981 val
* var124
/* : AType */;
2982 val
* var126
/* : AType */;
2983 val
* var128
/* : NativeArray[String] */;
2984 static val
* varonce127
;
2985 static val
* varonce129
;
2986 val
* var130
/* : String */;
2987 char* var131
/* : NativeString */;
2988 val
* var132
/* : String */;
2989 static val
* varonce133
;
2990 val
* var134
/* : String */;
2991 char* var135
/* : NativeString */;
2992 val
* var136
/* : String */;
2993 static val
* varonce137
;
2994 val
* var138
/* : String */;
2995 char* var139
/* : NativeString */;
2996 val
* var140
/* : String */;
2997 val
* var141
/* : String */;
2998 val
* var142
/* : String */;
2999 val
* var143
/* : String */;
3000 var_modelbuilder
= p0
;
3002 { /* Inline modelize_property#APropdef#mpropdef (self) on <self:ATypePropdef> */
3003 var2
= self
->attrs
[COLOR_nitc__modelize_property__APropdef___mpropdef
].val
; /* _mpropdef on <self:ATypePropdef> */
3009 if (var_mpropdef
== NULL
) {
3010 var3
= 1; /* is null */
3012 var3
= 0; /* arg is null but recv is not */
3015 { /* Inline kernel#Object#== (var_mpropdef,((val*)NULL)) on <var_mpropdef:nullable MVirtualTypeDef> */
3016 var_other
= ((val
*)NULL
);
3018 { /* Inline kernel#Object#is_same_instance (var_mpropdef,var_other) on <var_mpropdef:nullable MVirtualTypeDef(MVirtualTypeDef)> */
3019 var8
= var_mpropdef
== var_other
;
3036 { /* Inline model#MVirtualTypeDef#bound (var_mpropdef) on <var_mpropdef:nullable MVirtualTypeDef(MVirtualTypeDef)> */
3037 var11
= var_mpropdef
->attrs
[COLOR_nitc__model__MVirtualTypeDef___bound
].val
; /* _bound on <var_mpropdef:nullable MVirtualTypeDef(MVirtualTypeDef)> */
3039 RET_LABEL10
:(void)0;
3043 if (var_bound
== NULL
) {
3044 var12
= 1; /* is null */
3046 var12
= 0; /* arg is null but recv is not */
3049 { /* Inline kernel#Object#== (var_bound,((val*)NULL)) on <var_bound:nullable MType> */
3050 var_other
= ((val
*)NULL
);
3052 { /* Inline kernel#Object#is_same_instance (var_bound,var_other) on <var_bound:nullable MType(MType)> */
3053 var17
= var_bound
== var_other
;
3056 RET_LABEL16
:(void)0;
3061 RET_LABEL14
:(void)0;
3070 { /* Inline parser_nodes#ATypePropdef#n_type (self) on <self:ATypePropdef> */
3071 var20
= self
->attrs
[COLOR_nitc__parser_nodes__ATypePropdef___n_type
].val
; /* _n_type on <self:ATypePropdef> */
3072 if (unlikely(var20
== NULL
)) {
3073 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_type");
3074 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1496);
3078 RET_LABEL19
:(void)0;
3082 nitc__modelize_property___ModelBuilder___check_visibility(var_modelbuilder
, var18
, var_bound
, var_mpropdef
); /* Direct call modelize_property#ModelBuilder#check_visibility on <var_modelbuilder:ModelBuilder>*/
3085 { /* Inline model#MPropDef#mclassdef (var_mpropdef) on <var_mpropdef:nullable MVirtualTypeDef(MVirtualTypeDef)> */
3086 var23
= var_mpropdef
->attrs
[COLOR_nitc__model__MPropDef___mclassdef
].val
; /* _mclassdef on <var_mpropdef:nullable MVirtualTypeDef(MVirtualTypeDef)> */
3087 if (unlikely(var23
== NULL
)) {
3088 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
3089 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 2227);
3093 RET_LABEL22
:(void)0;
3096 var_mclassdef
= var21
;
3098 { /* Inline model#MClassDef#mmodule (var_mclassdef) on <var_mclassdef:MClassDef> */
3099 var26
= var_mclassdef
->attrs
[COLOR_nitc__model__MClassDef___mmodule
].val
; /* _mmodule on <var_mclassdef:MClassDef> */
3100 if (unlikely(var26
== NULL
)) {
3101 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mmodule");
3102 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 573);
3106 RET_LABEL25
:(void)0;
3109 var_mmodule
= var24
;
3111 { /* Inline model#MClassDef#bound_mtype (var_mclassdef) on <var_mclassdef:MClassDef> */
3112 var29
= var_mclassdef
->attrs
[COLOR_nitc__model__MClassDef___bound_mtype
].val
; /* _bound_mtype on <var_mclassdef:MClassDef> */
3113 if (unlikely(var29
== NULL
)) {
3114 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _bound_mtype");
3115 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 579);
3119 RET_LABEL28
:(void)0;
3124 { /* Inline parser_nodes#ATypePropdef#n_type (self) on <self:ATypePropdef> */
3125 var32
= self
->attrs
[COLOR_nitc__parser_nodes__ATypePropdef___n_type
].val
; /* _n_type on <self:ATypePropdef> */
3126 if (unlikely(var32
== NULL
)) {
3127 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_type");
3128 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1496);
3132 RET_LABEL31
:(void)0;
3137 var33
= nitc___nitc__ModelBuilder___resolve_mtype(var_modelbuilder
, var_mmodule
, var_mclassdef
, var_ntype
);
3139 if (var33
== NULL
) {
3140 var34
= 1; /* is null */
3142 var34
= 0; /* arg is null but recv is not */
3145 { /* Inline kernel#Object#== (var33,((val*)NULL)) on <var33:nullable MType> */
3146 var_other
= ((val
*)NULL
);
3148 { /* Inline kernel#Object#is_same_instance (var33,var_other) on <var33:nullable MType(MType)> */
3149 var39
= var33
== var_other
;
3152 RET_LABEL38
:(void)0;
3157 RET_LABEL36
:(void)0;
3163 { /* Inline model#MVirtualTypeDef#bound= (var_mpropdef,((val*)NULL)) on <var_mpropdef:nullable MVirtualTypeDef(MVirtualTypeDef)> */
3164 var_mpropdef
->attrs
[COLOR_nitc__model__MVirtualTypeDef___bound
].val
= ((val
*)NULL
); /* _bound on <var_mpropdef:nullable MVirtualTypeDef(MVirtualTypeDef)> */
3165 RET_LABEL40
:(void)0;
3172 { /* Inline model#MPropDef#mproperty (var_mpropdef) on <var_mpropdef:nullable MVirtualTypeDef(MVirtualTypeDef)> */
3173 var43
= var_mpropdef
->attrs
[COLOR_nitc__model__MPropDef___mproperty
].val
; /* _mproperty on <var_mpropdef:nullable MVirtualTypeDef(MVirtualTypeDef)> */
3174 if (unlikely(var43
== NULL
)) {
3175 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
3176 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 2230);
3180 RET_LABEL42
:(void)0;
3184 var44
= nitc___nitc__MProperty___lookup_super_definitions(var41
, var_mmodule
, var_anchor
);
3188 var45
= core___core__AbstractArrayRead___core__abstract_collection__Collection__iterator(var_
);
3193 var47
= ((short int(*)(val
* self
))((((long)var_46
&3)?class_info
[((long)var_46
&3)]:var_46
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_46
); /* is_ok on <var_46:IndexedIterator[MVirtualTypeDef]>*/
3200 var48
= ((val
*(*)(val
* self
))((((long)var_46
&3)?class_info
[((long)var_46
&3)]:var_46
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_46
); /* item on <var_46:IndexedIterator[MVirtualTypeDef]>*/
3204 { /* Inline model#MVirtualTypeDef#bound (var_p) on <var_p:MVirtualTypeDef> */
3205 var51
= var_p
->attrs
[COLOR_nitc__model__MVirtualTypeDef___bound
].val
; /* _bound on <var_p:MVirtualTypeDef> */
3207 RET_LABEL50
:(void)0;
3210 var_supbound
= var49
;
3211 if (var_supbound
== NULL
) {
3212 var54
= 1; /* is null */
3214 var54
= 0; /* arg is null but recv is not */
3217 { /* Inline kernel#Object#== (var_supbound,((val*)NULL)) on <var_supbound:nullable MType> */
3218 var_other
= ((val
*)NULL
);
3220 { /* Inline kernel#Object#is_same_instance (var_supbound,var_other) on <var_supbound:nullable MType(MType)> */
3221 var59
= var_supbound
== var_other
;
3224 RET_LABEL58
:(void)0;
3229 RET_LABEL56
:(void)0;
3237 /* <var_supbound:nullable MType(MType)> isa MBottomType */
3238 cltype
= type_nitc__MBottomType
.color
;
3239 idtype
= type_nitc__MBottomType
.id
;
3240 if(cltype
>= var_supbound
->type
->table_size
) {
3243 var61
= var_supbound
->type
->type_table
[cltype
] == idtype
;
3252 { /* Inline model_base#MEntity#is_broken (var_p) on <var_p:MVirtualTypeDef> */
3253 var65
= var_p
->attrs
[COLOR_nitc__model_base__MEntity___is_broken
].s
; /* _is_broken on <var_p:MVirtualTypeDef> */
3255 RET_LABEL64
:(void)0;
3265 { /* Inline model#MVirtualTypeDef#is_fixed (var_p) on <var_p:MVirtualTypeDef> */
3266 var68
= var_p
->attrs
[COLOR_nitc__model__MVirtualTypeDef___is_fixed
].s
; /* _is_fixed on <var_p:MVirtualTypeDef> */
3268 RET_LABEL67
:(void)0;
3272 if (unlikely(varonce
==NULL
)) {
3273 var69
= NEW_core__NativeArray(5l, &type_core__NativeArray__core__String
);
3274 if (likely(varonce70
!=NULL
)) {
3277 var72
= "Redef Error: virtual type `";
3278 var73
= core__flat___NativeString___to_s_full(var72
, 27l, 27l);
3282 ((struct instance_core__NativeArray
*)var69
)->values
[0]=var71
;
3283 if (likely(varonce74
!=NULL
)) {
3286 var76
= "` is fixed in super-class `";
3287 var77
= core__flat___NativeString___to_s_full(var76
, 27l, 27l);
3291 ((struct instance_core__NativeArray
*)var69
)->values
[2]=var75
;
3292 if (likely(varonce78
!=NULL
)) {
3296 var81
= core__flat___NativeString___to_s_full(var80
, 2l, 2l);
3300 ((struct instance_core__NativeArray
*)var69
)->values
[4]=var79
;
3306 { /* Inline model#MPropDef#mproperty (var_mpropdef) on <var_mpropdef:nullable MVirtualTypeDef(MVirtualTypeDef)> */
3307 var84
= var_mpropdef
->attrs
[COLOR_nitc__model__MPropDef___mproperty
].val
; /* _mproperty on <var_mpropdef:nullable MVirtualTypeDef(MVirtualTypeDef)> */
3308 if (unlikely(var84
== NULL
)) {
3309 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
3310 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 2230);
3314 RET_LABEL83
:(void)0;
3318 var85
= ((val
*(*)(val
* self
))(var82
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var82
); /* to_s on <var82:MProperty(MVirtualTypeProp)>*/
3320 ((struct instance_core__NativeArray
*)var69
)->values
[1]=var85
;
3322 { /* Inline model#MPropDef#mclassdef (var_p) on <var_p:MVirtualTypeDef> */
3323 var88
= var_p
->attrs
[COLOR_nitc__model__MPropDef___mclassdef
].val
; /* _mclassdef on <var_p:MVirtualTypeDef> */
3324 if (unlikely(var88
== NULL
)) {
3325 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
3326 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 2227);
3330 RET_LABEL87
:(void)0;
3334 { /* Inline model#MClassDef#mclass (var86) on <var86:MClassDef> */
3335 var91
= var86
->attrs
[COLOR_nitc__model__MClassDef___mclass
].val
; /* _mclass on <var86:MClassDef> */
3336 if (unlikely(var91
== NULL
)) {
3337 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
3338 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 576);
3342 RET_LABEL90
:(void)0;
3346 var92
= ((val
*(*)(val
* self
))(var89
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var89
); /* to_s on <var89:MClass>*/
3348 ((struct instance_core__NativeArray
*)var69
)->values
[3]=var92
;
3350 var93
= ((val
*(*)(val
* self
))(var69
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var69
); /* native_to_s on <var69:NativeArray[String]>*/
3354 nitc___nitc__ModelBuilder___error(var_modelbuilder
, self
, var93
); /* Direct call modelbuilder_base#ModelBuilder#error on <var_modelbuilder:ModelBuilder>*/
3360 { /* Inline model#MPropDef#mclassdef (var_p) on <var_p:MVirtualTypeDef> */
3361 var96
= var_p
->attrs
[COLOR_nitc__model__MPropDef___mclassdef
].val
; /* _mclassdef on <var_p:MVirtualTypeDef> */
3362 if (unlikely(var96
== NULL
)) {
3363 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
3364 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 2227);
3368 RET_LABEL95
:(void)0;
3372 { /* Inline model#MClassDef#mclass (var94) on <var94:MClassDef> */
3373 var99
= var94
->attrs
[COLOR_nitc__model__MClassDef___mclass
].val
; /* _mclass on <var94:MClassDef> */
3374 if (unlikely(var99
== NULL
)) {
3375 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
3376 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 576);
3380 RET_LABEL98
:(void)0;
3384 { /* Inline model#MClassDef#mclass (var_mclassdef) on <var_mclassdef:MClassDef> */
3385 var102
= var_mclassdef
->attrs
[COLOR_nitc__model__MClassDef___mclass
].val
; /* _mclass on <var_mclassdef:MClassDef> */
3386 if (unlikely(var102
== NULL
)) {
3387 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
3388 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 576);
3392 RET_LABEL101
:(void)0;
3396 { /* Inline kernel#Object#== (var97,var100) on <var97:MClass> */
3399 { /* Inline kernel#Object#is_same_instance (var97,var_other) on <var97:MClass> */
3400 var107
= var97
== var_other
;
3403 RET_LABEL106
:(void)0;
3408 RET_LABEL104
:(void)0;
3413 { /* Inline parser_nodes#ATypePropdef#n_type (self) on <self:ATypePropdef> */
3414 var110
= self
->attrs
[COLOR_nitc__parser_nodes__ATypePropdef___n_type
].val
; /* _n_type on <self:ATypePropdef> */
3415 if (unlikely(var110
== NULL
)) {
3416 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_type");
3417 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1496);
3421 RET_LABEL109
:(void)0;
3424 if (likely(varonce111
!=NULL
)) {
3425 var112
= varonce111
;
3427 var113
= "refine-type";
3428 var114
= core__flat___NativeString___to_s_full(var113
, 11l, 11l);
3430 varonce111
= var112
;
3432 if (likely(varonce115
!=NULL
)) {
3433 var116
= varonce115
;
3435 var117
= "Redef Error: a virtual type cannot be refined.";
3436 var118
= core__flat___NativeString___to_s_full(var117
, 46l, 46l);
3438 varonce115
= var116
;
3441 nitc___nitc__ModelBuilder___warning(var_modelbuilder
, var108
, var112
, var116
); /* Direct call modelbuilder_base#ModelBuilder#warning on <var_modelbuilder:ModelBuilder>*/
3447 { /* Inline parser_nodes#ATypePropdef#n_type (self) on <self:ATypePropdef> */
3448 var121
= self
->attrs
[COLOR_nitc__parser_nodes__ATypePropdef___n_type
].val
; /* _n_type on <self:ATypePropdef> */
3449 if (unlikely(var121
== NULL
)) {
3450 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_type");
3451 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1496);
3455 RET_LABEL120
:(void)0;
3459 var122
= nitc___nitc__ModelBuilder___check_subtype(var_modelbuilder
, var119
, var_mmodule
, var_anchor
, var_bound
, var_supbound
);
3464 { /* Inline parser_nodes#ATypePropdef#n_type (self) on <self:ATypePropdef> */
3465 var126
= self
->attrs
[COLOR_nitc__parser_nodes__ATypePropdef___n_type
].val
; /* _n_type on <self:ATypePropdef> */
3466 if (unlikely(var126
== NULL
)) {
3467 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_type");
3468 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1496);
3472 RET_LABEL125
:(void)0;
3475 if (unlikely(varonce127
==NULL
)) {
3476 var128
= NEW_core__NativeArray(5l, &type_core__NativeArray__core__String
);
3477 if (likely(varonce129
!=NULL
)) {
3478 var130
= varonce129
;
3480 var131
= "Redef Error: expected `";
3481 var132
= core__flat___NativeString___to_s_full(var131
, 23l, 23l);
3483 varonce129
= var130
;
3485 ((struct instance_core__NativeArray
*)var128
)->values
[0]=var130
;
3486 if (likely(varonce133
!=NULL
)) {
3487 var134
= varonce133
;
3489 var135
= "` bound type; got `";
3490 var136
= core__flat___NativeString___to_s_full(var135
, 19l, 19l);
3492 varonce133
= var134
;
3494 ((struct instance_core__NativeArray
*)var128
)->values
[2]=var134
;
3495 if (likely(varonce137
!=NULL
)) {
3496 var138
= varonce137
;
3499 var140
= core__flat___NativeString___to_s_full(var139
, 2l, 2l);
3501 varonce137
= var138
;
3503 ((struct instance_core__NativeArray
*)var128
)->values
[4]=var138
;
3505 var128
= varonce127
;
3509 var141
= ((val
*(*)(val
* self
))(var_supbound
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_supbound
); /* to_s on <var_supbound:nullable MType(MType)>*/
3511 ((struct instance_core__NativeArray
*)var128
)->values
[1]=var141
;
3513 var142
= ((val
*(*)(val
* self
))(var_bound
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_bound
); /* to_s on <var_bound:nullable MType(MType)>*/
3515 ((struct instance_core__NativeArray
*)var128
)->values
[3]=var142
;
3517 var143
= ((val
*(*)(val
* self
))(var128
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var128
); /* native_to_s on <var128:NativeArray[String]>*/
3519 varonce127
= var128
;
3521 nitc___nitc__ModelBuilder___error(var_modelbuilder
, var124
, var143
); /* Direct call modelbuilder_base#ModelBuilder#error on <var_modelbuilder:ModelBuilder>*/
3527 ((void(*)(val
* self
))((((long)var_46
&3)?class_info
[((long)var_46
&3)]:var_46
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_46
); /* next on <var_46:IndexedIterator[MVirtualTypeDef]>*/
3530 BREAK_label
: (void)0;
3532 ((void(*)(val
* self
))((((long)var_46
&3)?class_info
[((long)var_46
&3)]:var_46
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_46
); /* finish on <var_46:IndexedIterator[MVirtualTypeDef]>*/