1 /* This C file is generated by NIT to compile module static_type. */
2 #include "static_type._sep.h"
3 val_t
static_type___MMLocalClass___get_type(val_t self
) {
4 struct trace_t trace
= {NULL
, "static_type::MMLocalClass::get_type (src/metamodel//static_type.nit:27,2--31:25)"};
6 trace
.prev
= tracehead
; tracehead
= &trace
;
7 variable0
= ATTR_static_type___MMLocalClass____base_type_cache( self
) /*MMLocalClass::_base_type_cache*/;
8 variable0
= TAG_Bool((variable0
== NIT_NULL
/*null*/) || ((variable0
!= NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL(variable0
,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN(variable0
, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL(variable0
,COLOR_kernel___Object_____eqeq
))(variable0
, NIT_NULL
/*null*/) /*MMType::==*/)))));
9 if (UNTAG_Bool(variable0
)) { /*if*/
10 variable0
= NEW_static_type___MMTypeSimpleClass___init( self
); /*new MMTypeSimpleClass*/
11 ATTR_static_type___MMLocalClass____base_type_cache( self
) /*MMLocalClass::_base_type_cache*/ = variable0
;
13 variable0
= ATTR_static_type___MMLocalClass____base_type_cache( self
) /*MMLocalClass::_base_type_cache*/;
15 return_label0
: while(false);
16 tracehead
= trace
.prev
;
19 void static_type___MMLocalClass___add_ancestor(val_t self
, val_t param0
) {
20 struct trace_t trace
= {NULL
, "static_type::MMLocalClass::add_ancestor (src/metamodel//static_type.nit:34,2--39:31)"};
24 trace
.prev
= tracehead
; tracehead
= &trace
;
26 variable1
= ATTR_static_type___MMLocalClass____ancestors( self
) /*MMLocalClass::_ancestors*/;
27 variable2
= ((static_type___MMAncestor___local_class_t
)CALL( variable0
/*a*/,COLOR_static_type___MMAncestor___local_class
))( variable0
/*a*/) /*MMAncestor::local_class*/;
28 variable1
= ((abstract_collection___Map___has_key_t
)CALL(variable1
,COLOR_abstract_collection___Map___has_key
))(variable1
, variable2
) /*Map::has_key*/;
29 if (!UNTAG_Bool( TAG_Bool(!UNTAG_Bool(variable1
)))) { fprintf(stderr
, "Assert failed: src/metamodel//static_type.nit:37,3--45\n"); nit_exit(1);}
30 variable1
= ((static_type___MMAncestor___local_class_t
)CALL( variable0
/*a*/,COLOR_static_type___MMAncestor___local_class
))( variable0
/*a*/) /*MMAncestor::local_class*/;
31 variable1
= TAG_Bool(!UNTAG_Bool(TAG_Bool((variable1
== self
) || ((variable1
!= NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL(variable1
,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN(variable1
, self
)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL(variable1
,COLOR_kernel___Object_____eqeq
))(variable1
, self
) /*MMLocalClass::==*/)))))));
32 if (!UNTAG_Bool(variable1
)) { fprintf(stderr
, "Assert failed: src/metamodel//static_type.nit:38,3--30\n"); nit_exit(1);}
33 variable1
= ATTR_static_type___MMLocalClass____ancestors( self
) /*MMLocalClass::_ancestors*/;
34 variable2
= ((static_type___MMAncestor___local_class_t
)CALL( variable0
/*a*/,COLOR_static_type___MMAncestor___local_class
))( variable0
/*a*/) /*MMAncestor::local_class*/;
35 ((abstract_collection___Map_____braeq_t
)CALL(variable1
,COLOR_abstract_collection___Map_____braeq
))(variable1
, variable2
, variable0
/*a*/) /*Map::[]=*/;
36 tracehead
= trace
.prev
;
39 val_t
static_type___MMLocalClass___ancestors(val_t self
) {
40 struct trace_t trace
= {NULL
, "static_type::MMLocalClass::ancestors (src/metamodel//static_type.nit:42,2--43:55)"};
41 trace
.prev
= tracehead
; tracehead
= &trace
;
42 tracehead
= trace
.prev
;
43 return ATTR_static_type___MMLocalClass____ancestors( self
) /*MMLocalClass::_ancestors*/;
45 val_t
static_type___MMLocalClass___ancestor(val_t self
, val_t param0
) {
46 struct trace_t trace
= {NULL
, "static_type::MMLocalClass::ancestor (src/metamodel//static_type.nit:45,2--52:13)"};
49 trace
.prev
= tracehead
; tracehead
= &trace
;
51 variable1
= ATTR_static_type___MMLocalClass____ancestors( self
) /*MMLocalClass::_ancestors*/;
52 variable1
= TAG_Bool(!UNTAG_Bool(TAG_Bool((variable1
== NIT_NULL
/*null*/) || ((variable1
!= NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL(variable1
,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN(variable1
, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL(variable1
,COLOR_kernel___Object_____eqeq
))(variable1
, NIT_NULL
/*null*/) /*Map::==*/)))))));
53 if (!UNTAG_Bool(variable1
)) { fprintf(stderr
, "Assert failed: src/metamodel//static_type.nit:48,3--27\n"); nit_exit(1);}
54 variable1
= ATTR_static_type___MMLocalClass____ancestors( self
) /*MMLocalClass::_ancestors*/;
55 variable1
= ((abstract_collection___Map___has_key_t
)CALL(variable1
,COLOR_abstract_collection___Map___has_key
))(variable1
, variable0
/*c*/) /*Map::has_key*/;
56 if (UNTAG_Bool(variable1
)) { /*if*/
57 variable1
= ATTR_static_type___MMLocalClass____ancestors( self
) /*MMLocalClass::_ancestors*/;
58 variable1
= ((abstract_collection___Map_____bra_t
)CALL(variable1
,COLOR_abstract_collection___Map_____bra
))(variable1
, variable0
/*c*/) /*Map::[]*/;
59 variable1
= ((static_type___MMAncestor___stype_t
)CALL(variable1
,COLOR_static_type___MMAncestor___stype
))(variable1
) /*MMAncestor::stype*/;
62 variable1
= NIT_NULL
/*null*/;
64 return_label2
: while(false);
65 tracehead
= trace
.prev
;
68 val_t
static_type___MMLocalProperty___signature(val_t self
) {
69 struct trace_t trace
= {NULL
, "static_type::MMLocalProperty::signature (src/metamodel//static_type.nit:60,2--71:25)"};
71 trace
.prev
= tracehead
; tracehead
= &trace
;
72 variable0
= ATTR_static_type___MMLocalProperty____signature_cache( self
) /*MMLocalProperty::_signature_cache*/;
73 variable0
= TAG_Bool((variable0
== NIT_NULL
/*null*/) || ((variable0
!= NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL(variable0
,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN(variable0
, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL(variable0
,COLOR_kernel___Object_____eqeq
))(variable0
, NIT_NULL
/*null*/) /*MMSignature::==*/)))));
74 if (UNTAG_Bool(variable0
)) { /*if*/
75 variable0
= ATTR_abstractmetamodel___MMLocalProperty____super_prop( self
) /*MMLocalProperty::_super_prop*/;
76 variable0
= TAG_Bool((variable0
== NIT_NULL
/*null*/) || ((variable0
!= NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL(variable0
,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN(variable0
, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL(variable0
,COLOR_kernel___Object_____eqeq
))(variable0
, NIT_NULL
/*null*/) /*MMLocalProperty::==*/)))));
77 if (UNTAG_Bool(variable0
)) { /*if*/
78 variable0
= ATTR_abstractmetamodel___MMLocalProperty____concrete_property( self
) /*MMLocalProperty::_concrete_property*/;
79 variable0
= ((static_type___MMLocalProperty___signature_t
)CALL(variable0
,COLOR_static_type___MMLocalProperty___signature
))(variable0
) /*MMConcreteProperty::signature*/;
80 ATTR_static_type___MMLocalProperty____signature_cache( self
) /*MMLocalProperty::_signature_cache*/ = variable0
;
82 variable0
= ATTR_abstractmetamodel___MMLocalProperty____super_prop( self
) /*MMLocalProperty::_super_prop*/;
83 variable0
= ((static_type___MMLocalProperty___signature_t
)CALL(variable0
,COLOR_static_type___MMLocalProperty___signature
))(variable0
) /*MMLocalProperty::signature*/;
84 ATTR_static_type___MMLocalProperty____signature_cache( self
) /*MMLocalProperty::_signature_cache*/ = variable0
;
87 variable0
= ATTR_static_type___MMLocalProperty____signature_cache( self
) /*MMLocalProperty::_signature_cache*/;
88 variable0
= TAG_Bool(!UNTAG_Bool(TAG_Bool((variable0
== NIT_NULL
/*null*/) || ((variable0
!= NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL(variable0
,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN(variable0
, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL(variable0
,COLOR_kernel___Object_____eqeq
))(variable0
, NIT_NULL
/*null*/) /*MMSignature::==*/)))))));
89 if (!UNTAG_Bool(variable0
)) { fprintf(stderr
, "Assert failed: src/metamodel//static_type.nit:70,3--33\n"); nit_exit(1);}
90 variable0
= ATTR_static_type___MMLocalProperty____signature_cache( self
) /*MMLocalProperty::_signature_cache*/;
92 return_label3
: while(false);
93 tracehead
= trace
.prev
;
96 void static_type___MMLocalProperty___signature__eq(val_t self
, val_t param0
) {
97 struct trace_t trace
= {NULL
, "static_type::MMLocalProperty::signature= (src/metamodel//static_type.nit:74,2--56)"};
99 trace
.prev
= tracehead
; tracehead
= &trace
;
101 ATTR_static_type___MMLocalProperty____signature_cache( self
) /*MMLocalProperty::_signature_cache*/ = variable0
/*s*/;
102 tracehead
= trace
.prev
;
105 val_t
static_type___MMSignature___recv(val_t self
) {
106 struct trace_t trace
= {NULL
, "static_type::MMSignature::recv (src/metamodel//static_type.nit:79,2--80:28)"};
107 trace
.prev
= tracehead
; tracehead
= &trace
;
108 tracehead
= trace
.prev
;
109 return ATTR_static_type___MMSignature____recv( self
) /*MMSignature::_recv*/;
111 val_t
static_type___MMSignature___return_type(val_t self
) {
112 struct trace_t trace
= {NULL
, "static_type::MMSignature::return_type (src/metamodel//static_type.nit:85,2--86:36)"};
113 trace
.prev
= tracehead
; tracehead
= &trace
;
114 tracehead
= trace
.prev
;
115 return ATTR_static_type___MMSignature____return_type( self
) /*MMSignature::_return_type*/;
117 val_t
static_type___MMSignature___arity(val_t self
) {
118 struct trace_t trace
= {NULL
, "static_type::MMSignature::arity (src/metamodel//static_type.nit:88,2--92:23)"};
120 trace
.prev
= tracehead
; tracehead
= &trace
;
121 variable0
= ATTR_static_type___MMSignature____params( self
) /*MMSignature::_params*/;
122 variable0
= TAG_Bool(!UNTAG_Bool(TAG_Bool((variable0
== NIT_NULL
/*null*/) || ((variable0
!= NIT_NULL
) && UNTAG_Bool(((array___AbstractArray_____eqeq_t
)CALL(variable0
,COLOR_kernel___Object_____eqeq
))(variable0
, NIT_NULL
/*null*/) /*Array::==*/)))));
123 if (!UNTAG_Bool(variable0
)) { fprintf(stderr
, "Assert failed: src/metamodel//static_type.nit:91,3--24\n"); nit_exit(1);}
124 variable0
= ATTR_static_type___MMSignature____params( self
) /*MMSignature::_params*/;
125 variable0
= ((array___AbstractArray___length_t
)CALL(variable0
,COLOR_abstract_collection___Collection___length
))(variable0
) /*Array::length*/;
127 return_label5
: while(false);
128 tracehead
= trace
.prev
;
131 val_t
static_type___MMSignature_____l(val_t self
, val_t param0
) {
132 struct trace_t trace
= {NULL
, "static_type::MMSignature::< (src/metamodel//static_type.nit:95,2--114:13)"};
138 trace
.prev
= tracehead
; tracehead
= &trace
;
140 variable1
= TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable0
/*s*/ == NIT_NULL
/*null*/) || (( variable0
/*s*/ != NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL( variable0
/*s*/,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN( variable0
/*s*/, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL( variable0
/*s*/,COLOR_kernel___Object_____eqeq
))( variable0
/*s*/, NIT_NULL
/*null*/) /*MMSignature::==*/)))))));
141 if (!UNTAG_Bool(variable1
)) { fprintf(stderr
, "Assert failed: src/metamodel//static_type.nit:98,3--18\n"); nit_exit(1);}
142 variable1
= TAG_Bool(( self
== variable0
/*s*/) || (( self
!= NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL( self
,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN( self
, variable0
/*s*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL( self
,COLOR_kernel___Object_____eqeq
))( self
, variable0
/*s*/) /*MMSignature::==*/)))));
143 if (UNTAG_Bool(variable1
)) { /*if*/
144 variable1
= TAG_Bool(true);
147 variable1
= ATTR_static_type___MMSignature____recv( self
) /*MMSignature::_recv*/;
148 variable1
= ((static_type___MMType___module_t
)CALL(variable1
,COLOR_static_type___MMType___module
))(variable1
) /*MMType::module*/;
149 variable2
= ((static_type___MMSignature___recv_t
)CALL( variable0
/*s*/,COLOR_static_type___MMSignature___recv
))( variable0
/*s*/) /*MMSignature::recv*/;
150 variable2
= ((static_type___MMType___module_t
)CALL(variable2
,COLOR_static_type___MMType___module
))(variable2
) /*MMType::module*/;
151 variable1
= TAG_Bool((variable1
== variable2
) || ((variable1
!= NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL(variable1
,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN(variable1
,variable2
)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL(variable1
,COLOR_kernel___Object_____eqeq
))(variable1
, variable2
) /*MMModule::==*/)))));
152 if (!UNTAG_Bool(variable1
)) { fprintf(stderr
, "Assert failed: src/metamodel//static_type.nit:102,3--38\n"); nit_exit(1);}
153 variable1
= ((static_type___MMSignature___arity_t
)CALL( self
,COLOR_static_type___MMSignature___arity
))( self
) /*MMSignature::arity*/;
154 variable2
= ((static_type___MMSignature___arity_t
)CALL( variable0
/*s*/,COLOR_static_type___MMSignature___arity
))( variable0
/*s*/) /*MMSignature::arity*/;
155 variable1
= TAG_Bool((variable1
)==(variable2
));
156 if (!UNTAG_Bool(variable1
)) { fprintf(stderr
, "Assert failed: src/metamodel//static_type.nit:103,3--25\n"); nit_exit(1);}
157 variable1
= ATTR_static_type___MMSignature____return_type( self
) /*MMSignature::_return_type*/;
158 variable1
= TAG_Bool((variable1
== NIT_NULL
/*null*/) || ((variable1
!= NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL(variable1
,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN(variable1
, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL(variable1
,COLOR_kernel___Object_____eqeq
))(variable1
, NIT_NULL
/*null*/) /*MMType::==*/)))));
159 variable2
= ((static_type___MMSignature___return_type_t
)CALL( variable0
/*s*/,COLOR_static_type___MMSignature___return_type
))( variable0
/*s*/) /*MMSignature::return_type*/;
160 variable2
= TAG_Bool((variable2
== NIT_NULL
/*null*/) || ((variable2
!= NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL(variable2
,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN(variable2
, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL(variable2
,COLOR_kernel___Object_____eqeq
))(variable2
, NIT_NULL
/*null*/) /*MMType::==*/)))));
161 variable1
= TAG_Bool((variable1
)==(variable2
));
162 if (!UNTAG_Bool(variable1
)) { fprintf(stderr
, "Assert failed: src/metamodel//static_type.nit:104,3--57\n"); nit_exit(1);}
163 variable1
= ATTR_static_type___MMSignature____return_type( self
) /*MMSignature::_return_type*/;
164 variable1
= TAG_Bool(!UNTAG_Bool(TAG_Bool((variable1
== NIT_NULL
/*null*/) || ((variable1
!= NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL(variable1
,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN(variable1
, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL(variable1
,COLOR_kernel___Object_____eqeq
))(variable1
, NIT_NULL
/*null*/) /*MMType::==*/)))))));
165 variable2
= variable1
;
166 if (UNTAG_Bool(variable2
)) { /* and */
167 variable2
= ATTR_static_type___MMSignature____return_type( self
) /*MMSignature::_return_type*/;
168 variable3
= ((static_type___MMSignature___return_type_t
)CALL( variable0
/*s*/,COLOR_static_type___MMSignature___return_type
))( variable0
/*s*/) /*MMSignature::return_type*/;
169 variable2
= ((static_type___MMType_____l_t
)CALL(variable2
,COLOR_static_type___MMType_____l
))(variable2
, variable3
) /*MMType::<*/;
170 variable2
= TAG_Bool(!UNTAG_Bool(variable2
));
172 variable1
= variable2
;
173 if (UNTAG_Bool(variable1
)) { /*if*/
174 variable1
= TAG_Bool(false);
177 variable1
= ((static_type___MMSignature___arity_t
)CALL( self
,COLOR_static_type___MMSignature___arity
))( self
) /*MMSignature::arity*/;
178 variable2
= NEW_range___Range___without_last( TAG_Int(0), variable1
); /*new Range[Int]*/
179 variable1
= variable2
;
180 variable1
= ((range___Range___iterator_t
)CALL(variable1
,COLOR_abstract_collection___Collection___iterator
))(variable1
) /*Range::iterator*/;
181 while (true) { /*for*/
182 variable2
= ((abstract_collection___Iterator___is_ok_t
)CALL(variable1
,COLOR_abstract_collection___Iterator___is_ok
))(variable1
) /*Iterator::is_ok*/;
183 if (!UNTAG_Bool(variable2
)) break; /*for*/
184 variable2
= ((abstract_collection___Iterator___item_t
)CALL(variable1
,COLOR_abstract_collection___Iterator___item
))(variable1
) /*Iterator::item*/;
185 variable3
= ((static_type___MMSignature_____bra_t
)CALL( variable0
/*s*/,COLOR_static_type___MMSignature_____bra
))( variable0
/*s*/, variable2
/*i*/) /*MMSignature::[]*/;
186 variable4
= ((static_type___MMSignature_____bra_t
)CALL( self
,COLOR_static_type___MMSignature_____bra
))( self
, variable2
/*i*/) /*MMSignature::[]*/;
187 variable3
= ((static_type___MMType_____l_t
)CALL(variable3
,COLOR_static_type___MMType_____l
))(variable3
, variable4
) /*MMType::<*/;
188 if (UNTAG_Bool( TAG_Bool(!UNTAG_Bool(variable3
)))) { /*if*/
189 variable1
= TAG_Bool(false);
192 continue_7
: while(0);
193 ((abstract_collection___Iterator___next_t
)CALL(variable1
,COLOR_abstract_collection___Iterator___next
))(variable1
) /*Iterator::next*/;
196 variable1
= TAG_Bool(true);
198 return_label6
: while(false);
199 tracehead
= trace
.prev
;
202 val_t
static_type___MMSignature_____bra(val_t self
, val_t param0
) {
203 struct trace_t trace
= {NULL
, "static_type::MMSignature::[] (src/metamodel//static_type.nit:117,2--121:18)"};
209 trace
.prev
= tracehead
; tracehead
= &trace
;
211 variable1
= ATTR_static_type___MMSignature____params( self
) /*MMSignature::_params*/;
212 variable1
= ((array___AbstractArray___length_t
)CALL(variable1
,COLOR_abstract_collection___Collection___length
))(variable1
) /*Array::length*/;
213 variable1
= TAG_Bool(UNTAG_Int(variable1
)>UNTAG_Int( variable0
/*i*/));
214 if (!UNTAG_Bool(variable1
)) { fprintf(stderr
, "Assert failed: src/metamodel//static_type.nit:120,3--27\n"); nit_exit(1);}
215 variable1
= ATTR_static_type___MMSignature____params( self
) /*MMSignature::_params*/;
216 variable2
= variable0
/*i*/;
217 variable3
= TAG_Bool(UNTAG_Int( variable2
/*index*/)>=UNTAG_Int( TAG_Int(0)));
218 variable4
= variable3
;
219 if (UNTAG_Bool(variable4
)) { /* and */
220 variable4
= variable1
;
221 variable4
= ATTR_array___AbstractArray____length(variable4
) /*Array::_length*/;
222 variable4
= TAG_Bool(UNTAG_Int( variable2
/*index*/)<UNTAG_Int(variable4
));
224 variable3
= variable4
;
225 if (!UNTAG_Bool(variable3
)) { fprintf(stderr
, "Assert 'index' failed: bin/../lib/standard//array.nit:229,3--46\n"); nit_exit(1);}
226 variable3
= variable1
;
227 variable3
= ATTR_array___Array____items(variable3
) /*Array::_items*/;
228 variable3
= UNBOX_NativeArray(variable3
)[UNTAG_Int( variable2
/*index*/)];
230 return_label9
: while(false);
231 variable1
= variable3
;
233 return_label8
: while(false);
234 tracehead
= trace
.prev
;
237 val_t
static_type___MMSignature___to_s(val_t self
) {
238 struct trace_t trace
= {NULL
, "static_type::MMSignature::to_s (src/metamodel//static_type.nit:124,2--143:10)"};
249 trace
.prev
= tracehead
; tracehead
= &trace
;
250 variable0
= NIT_NULL
/*decl variable s*/;
251 variable1
= ATTR_static_type___MMSignature____params( self
) /*MMSignature::_params*/;
252 variable1
= TAG_Bool(!UNTAG_Bool(TAG_Bool((variable1
== NIT_NULL
/*null*/) || ((variable1
!= NIT_NULL
) && UNTAG_Bool(((array___AbstractArray_____eqeq_t
)CALL(variable1
,COLOR_kernel___Object_____eqeq
))(variable1
, NIT_NULL
/*null*/) /*Array::==*/)))));
253 variable2
= variable1
;
254 if (UNTAG_Bool(variable2
)) { /* and */
255 variable2
= ATTR_static_type___MMSignature____params( self
) /*MMSignature::_params*/;
256 variable2
= ((array___AbstractArray___length_t
)CALL(variable2
,COLOR_abstract_collection___Collection___length
))(variable2
) /*Array::length*/;
257 variable2
= TAG_Bool(UNTAG_Int(variable2
)>UNTAG_Int( TAG_Int(0)));
259 variable1
= variable2
;
260 if (UNTAG_Bool(variable1
)) { /*if*/
261 variable1
= NIT_NULL
/*decl variable tmp*/;
262 variable3
= ATTR_static_type___MMSignature____params( self
) /*MMSignature::_params*/;
263 variable3
= ((array___AbstractArray___length_t
)CALL(variable3
,COLOR_abstract_collection___Collection___length
))(variable3
) /*Array::length*/;
264 variable4
= NEW_array___Array___with_capacity(variable3
); /*new Array[String]*/
265 variable3
= variable4
;
266 variable2
= variable3
;
267 variable3
= ATTR_static_type___MMSignature____params( self
) /*MMSignature::_params*/;
268 variable3
= ((array___AbstractArray___length_t
)CALL(variable3
,COLOR_abstract_collection___Collection___length
))(variable3
) /*Array::length*/;
269 variable4
= NEW_range___Range___without_last( TAG_Int(0), variable3
); /*new Range[Int]*/
270 variable3
= variable4
;
271 variable3
= ((range___Range___iterator_t
)CALL(variable3
,COLOR_abstract_collection___Collection___iterator
))(variable3
) /*Range::iterator*/;
272 while (true) { /*for*/
273 variable4
= ((abstract_collection___Iterator___is_ok_t
)CALL(variable3
,COLOR_abstract_collection___Iterator___is_ok
))(variable3
) /*Iterator::is_ok*/;
274 if (!UNTAG_Bool(variable4
)) break; /*for*/
275 variable4
= ((abstract_collection___Iterator___item_t
)CALL(variable3
,COLOR_abstract_collection___Iterator___item
))(variable3
) /*Iterator::item*/;
276 variable6
= ATTR_static_type___MMSignature____params( self
) /*MMSignature::_params*/;
277 variable7
= variable4
/*i*/;
278 variable8
= TAG_Bool(UNTAG_Int( variable7
/*index*/)>=UNTAG_Int( TAG_Int(0)));
279 variable9
= variable8
;
280 if (UNTAG_Bool(variable9
)) { /* and */
281 variable9
= variable6
;
282 variable9
= ATTR_array___AbstractArray____length(variable9
) /*Array::_length*/;
283 variable9
= TAG_Bool(UNTAG_Int( variable7
/*index*/)<UNTAG_Int(variable9
));
285 variable8
= variable9
;
286 if (!UNTAG_Bool(variable8
)) { fprintf(stderr
, "Assert 'index' failed: bin/../lib/standard//array.nit:229,3--46\n"); nit_exit(1);}
287 variable8
= variable6
;
288 variable8
= ATTR_array___Array____items(variable8
) /*Array::_items*/;
289 variable8
= UNBOX_NativeArray(variable8
)[UNTAG_Int( variable7
/*index*/)];
291 return_label12
: while(false);
292 variable6
= variable8
;
293 variable5
= variable6
;
294 variable6
= ((string___Object___to_s_t
)CALL( variable5
/*p*/,COLOR_string___Object___to_s
))( variable5
/*p*/) /*MMType::to_s*/;
295 ((array___AbstractArray___add_t
)CALL( variable2
/*a*/,COLOR_abstract_collection___SimpleCollection___add
))( variable2
/*a*/, variable6
) /*Array::add*/;
296 continue_11
: while(0);
297 ((abstract_collection___Iterator___next_t
)CALL(variable3
,COLOR_abstract_collection___Iterator___next
))(variable3
) /*Iterator::next*/;
300 variable3
= NEW_string___String___init(); /*new String*/
301 variable4
= NEW_string___String___with_native(BOX_NativeString("("), TAG_Int(1)); /*new String*/
302 variable5
= variable4
;
303 ((string___String___append_t
)CALL(variable3
,COLOR_abstract_collection___IndexedCollection___append
))(variable3
, variable5
) /*String::append*/;
304 variable6
= NEW_string___String___with_native(BOX_NativeString(","), TAG_Int(1)); /*new String*/
305 variable6
= ((string___Collection___join_t
)CALL( variable2
/*a*/,COLOR_string___Collection___join
))( variable2
/*a*/, variable6
) /*Array::join*/;
306 variable7
= variable6
;
307 ((string___String___append_t
)CALL(variable3
,COLOR_abstract_collection___IndexedCollection___append
))(variable3
, variable7
) /*String::append*/;
308 variable8
= NEW_string___String___with_native(BOX_NativeString(")"), TAG_Int(1)); /*new String*/
309 variable9
= variable8
;
310 ((string___String___append_t
)CALL(variable3
,COLOR_abstract_collection___IndexedCollection___append
))(variable3
, variable9
) /*String::append*/;
311 variable0
= variable3
/*s=*/;
313 variable1
= NEW_string___String___with_native(BOX_NativeString(""), TAG_Int(0)); /*new String*/
314 variable0
= variable1
/*s=*/;
316 variable1
= ATTR_static_type___MMSignature____return_type( self
) /*MMSignature::_return_type*/;
317 variable1
= TAG_Bool(!UNTAG_Bool(TAG_Bool((variable1
== NIT_NULL
/*null*/) || ((variable1
!= NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL(variable1
,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN(variable1
, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL(variable1
,COLOR_kernel___Object_____eqeq
))(variable1
, NIT_NULL
/*null*/) /*MMType::==*/)))))));
318 if (UNTAG_Bool(variable1
)) { /*if*/
319 variable1
= NEW_string___String___init(); /*new String*/
320 variable2
= NEW_string___String___with_native(BOX_NativeString(": "), TAG_Int(2)); /*new String*/
321 variable3
= variable2
;
322 ((string___String___append_t
)CALL(variable1
,COLOR_abstract_collection___IndexedCollection___append
))(variable1
, variable3
) /*String::append*/;
323 variable4
= ATTR_static_type___MMSignature____return_type( self
) /*MMSignature::_return_type*/;
324 variable5
= variable4
;
325 variable5
= ((string___String___to_s_t
)CALL(variable5
,COLOR_string___Object___to_s
))(variable5
) /*String::to_s*/;
326 ((string___String___append_t
)CALL(variable1
,COLOR_abstract_collection___IndexedCollection___append
))(variable1
, variable5
) /*String::append*/;
327 variable6
= NEW_string___String___with_native(BOX_NativeString(""), TAG_Int(0)); /*new String*/
328 variable7
= variable6
;
329 ((string___String___append_t
)CALL(variable1
,COLOR_abstract_collection___IndexedCollection___append
))(variable1
, variable7
) /*String::append*/;
330 ((string___String___append_t
)CALL( variable0
/*s*/,COLOR_abstract_collection___IndexedCollection___append
))( variable0
/*s*/, variable1
) /*String::append*/;
332 variable0
= variable0
/*s*/;
334 return_label10
: while(false);
335 tracehead
= trace
.prev
;
338 void static_type___MMSignature___init(val_t self
, val_t param0
, val_t param1
, val_t param2
, int* init_table
) {
339 struct trace_t trace
= {NULL
, "static_type::MMSignature::init (src/metamodel//static_type.nit:146,2--151:11)"};
344 trace
.prev
= tracehead
; tracehead
= &trace
;
348 if (init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_MMSignature
].i
]) return;
349 variable3
= TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable0
/*params*/ == NIT_NULL
/*null*/) || (( variable0
/*params*/ != NIT_NULL
) && UNTAG_Bool(((array___AbstractArray_____eqeq_t
)CALL( variable0
/*params*/,COLOR_kernel___Object_____eqeq
))( variable0
/*params*/, NIT_NULL
/*null*/) /*Array::==*/)))));
350 if (!UNTAG_Bool(variable3
)) { fprintf(stderr
, "Assert failed: src/metamodel//static_type.nit:148,3--23\n"); nit_exit(1);}
351 ATTR_static_type___MMSignature____params( self
) /*MMSignature::_params*/ = variable0
/*params*/;
352 ATTR_static_type___MMSignature____return_type( self
) /*MMSignature::_return_type*/ = variable1
/*return_type*/;
353 ATTR_static_type___MMSignature____recv( self
) /*MMSignature::_recv*/ = variable2
/*r*/;
354 init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_MMSignature
].i
] = 1;
355 tracehead
= trace
.prev
;
358 val_t
static_type___MMAncestor___stype(val_t self
) {
359 struct trace_t trace
= {NULL
, "static_type::MMAncestor::stype (src/metamodel//static_type.nit:157,2--158:38)"};
360 trace
.prev
= tracehead
; tracehead
= &trace
;
361 tracehead
= trace
.prev
;
362 return ATTR_static_type___MMAncestor____stype( self
) /*MMAncestor::_stype*/;
364 void static_type___MMAncestor___stype__eq(val_t self
, val_t param0
) {
365 struct trace_t trace
= {NULL
, "static_type::MMAncestor::stype= (src/metamodel//static_type.nit:157,2--158:38)"};
366 trace
.prev
= tracehead
; tracehead
= &trace
;
367 ATTR_static_type___MMAncestor____stype( self
) /*MMAncestor::_stype*/ = param0
;
368 tracehead
= trace
.prev
;
371 val_t
static_type___MMAncestor___inheriter(val_t self
) {
372 struct trace_t trace
= {NULL
, "static_type::MMAncestor::inheriter (src/metamodel//static_type.nit:160,2--161:42)"};
373 trace
.prev
= tracehead
; tracehead
= &trace
;
374 tracehead
= trace
.prev
;
375 return ATTR_static_type___MMAncestor____inheriter( self
) /*MMAncestor::_inheriter*/;
377 void static_type___MMAncestor___inheriter__eq(val_t self
, val_t param0
) {
378 struct trace_t trace
= {NULL
, "static_type::MMAncestor::inheriter= (src/metamodel//static_type.nit:160,2--161:42)"};
379 trace
.prev
= tracehead
; tracehead
= &trace
;
380 ATTR_static_type___MMAncestor____inheriter( self
) /*MMAncestor::_inheriter*/ = param0
;
381 tracehead
= trace
.prev
;
384 val_t
static_type___MMAncestor___is_reffinement(val_t self
) {
385 struct trace_t trace
= {NULL
, "static_type::MMAncestor::is_reffinement (src/metamodel//static_type.nit:163,2--164:37)"};
388 trace
.prev
= tracehead
; tracehead
= &trace
;
389 variable0
= ((static_type___MMAncestor___stype_t
)CALL( self
,COLOR_static_type___MMAncestor___stype
))( self
) /*MMAncestor::stype*/;
390 variable0
= ((static_type___MMType___module_t
)CALL(variable0
,COLOR_static_type___MMType___module
))(variable0
) /*MMType::module*/;
391 variable1
= ((static_type___MMAncestor___stype_t
)CALL( self
,COLOR_static_type___MMAncestor___stype
))( self
) /*MMAncestor::stype*/;
392 variable1
= ((static_type___MMType___module_t
)CALL(variable1
,COLOR_static_type___MMType___module
))(variable1
) /*MMType::module*/;
393 variable0
= TAG_Bool(!UNTAG_Bool(TAG_Bool((variable0
== variable1
) || ((variable0
!= NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL(variable0
,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN(variable0
,variable1
)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL(variable0
,COLOR_kernel___Object_____eqeq
))(variable0
, variable1
) /*MMModule::==*/)))))));
395 return_label14
: while(false);
396 tracehead
= trace
.prev
;
399 val_t
static_type___MMAncestor___is_specialisation(val_t self
) {
400 struct trace_t trace
= {NULL
, "static_type::MMAncestor::is_specialisation (src/metamodel//static_type.nit:167,2--168:65)"};
403 trace
.prev
= tracehead
; tracehead
= &trace
;
404 variable0
= ((static_type___MMAncestor___stype_t
)CALL( self
,COLOR_static_type___MMAncestor___stype
))( self
) /*MMAncestor::stype*/;
405 variable0
= ((static_type___MMType___local_class_t
)CALL(variable0
,COLOR_static_type___MMType___local_class
))(variable0
) /*MMType::local_class*/;
406 variable0
= ((abstractmetamodel___MMLocalClass___global_t
)CALL(variable0
,COLOR_abstractmetamodel___MMLocalClass___global
))(variable0
) /*MMLocalClass::global*/;
407 variable1
= ((static_type___MMAncestor___inheriter_t
)CALL( self
,COLOR_static_type___MMAncestor___inheriter
))( self
) /*MMAncestor::inheriter*/;
408 variable1
= ((static_type___MMType___local_class_t
)CALL(variable1
,COLOR_static_type___MMType___local_class
))(variable1
) /*MMType::local_class*/;
409 variable1
= ((abstractmetamodel___MMLocalClass___global_t
)CALL(variable1
,COLOR_abstractmetamodel___MMLocalClass___global
))(variable1
) /*MMLocalClass::global*/;
410 variable0
= TAG_Bool(!UNTAG_Bool(TAG_Bool((variable0
== variable1
) || ((variable0
!= NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL(variable0
,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN(variable0
,variable1
)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL(variable0
,COLOR_kernel___Object_____eqeq
))(variable0
, variable1
) /*MMGlobalClass::==*/)))))));
412 return_label15
: while(false);
413 tracehead
= trace
.prev
;
416 val_t
static_type___MMAncestor___local_class(val_t self
) {
417 struct trace_t trace
= {NULL
, "static_type::MMAncestor::local_class (src/metamodel//static_type.nit:171,2--172:31)"};
418 trace
.prev
= tracehead
; tracehead
= &trace
;
419 fprintf(stderr
, "Deferred method local_class called (src/metamodel//static_type.nit:171,2)\n");
421 tracehead
= trace
.prev
;
424 val_t
static_type___MMAncestor___to_s(val_t self
) {
425 struct trace_t trace
= {NULL
, "static_type::MMAncestor::to_s (src/metamodel//static_type.nit:174,2--179:20)"};
427 trace
.prev
= tracehead
; tracehead
= &trace
;
428 variable0
= ((static_type___MMAncestor___stype_t
)CALL( self
,COLOR_static_type___MMAncestor___stype
))( self
) /*MMAncestor::stype*/;
429 variable0
= TAG_Bool((variable0
== NIT_NULL
/*null*/) || ((variable0
!= NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL(variable0
,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN(variable0
, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL(variable0
,COLOR_kernel___Object_____eqeq
))(variable0
, NIT_NULL
/*null*/) /*MMType::==*/)))));
430 if (UNTAG_Bool(variable0
)) { /*if*/
431 variable0
= ((static_type___MMAncestor___local_class_t
)CALL( self
,COLOR_static_type___MMAncestor___local_class
))( self
) /*MMAncestor::local_class*/;
432 variable0
= ((abstractmetamodel___MMLocalClass___to_s_t
)CALL(variable0
,COLOR_string___Object___to_s
))(variable0
) /*MMLocalClass::to_s*/;
435 variable0
= ((static_type___MMAncestor___stype_t
)CALL( self
,COLOR_static_type___MMAncestor___stype
))( self
) /*MMAncestor::stype*/;
436 variable0
= ((string___Object___to_s_t
)CALL(variable0
,COLOR_string___Object___to_s
))(variable0
) /*MMType::to_s*/;
439 return_label16
: while(false);
440 tracehead
= trace
.prev
;
443 val_t
static_type___MMType___module(val_t self
) {
444 struct trace_t trace
= {NULL
, "static_type::MMType::module (src/metamodel//static_type.nit:187,2--188:22)"};
445 trace
.prev
= tracehead
; tracehead
= &trace
;
446 fprintf(stderr
, "Deferred method module called (src/metamodel//static_type.nit:187,2)\n");
448 tracehead
= trace
.prev
;
451 val_t
static_type___MMType___local_class(val_t self
) {
452 struct trace_t trace
= {NULL
, "static_type::MMType::local_class (src/metamodel//static_type.nit:190,2--191:31)"};
453 trace
.prev
= tracehead
; tracehead
= &trace
;
454 fprintf(stderr
, "Deferred method local_class called (src/metamodel//static_type.nit:190,2)\n");
456 tracehead
= trace
.prev
;
459 val_t
static_type___MMType_____l(val_t self
, val_t param0
) {
460 struct trace_t trace
= {NULL
, "static_type::MMType::< (src/metamodel//static_type.nit:193,2--194:25)"};
461 trace
.prev
= tracehead
; tracehead
= &trace
;
462 fprintf(stderr
, "Deferred method < called (src/metamodel//static_type.nit:193,2)\n");
464 tracehead
= trace
.prev
;
467 val_t
static_type___MMType___is_supertype(val_t self
, val_t param0
) {
468 struct trace_t trace
= {NULL
, "static_type::MMType::is_supertype (src/metamodel//static_type.nit:196,2--199:35)"};
469 trace
.prev
= tracehead
; tracehead
= &trace
;
470 fprintf(stderr
, "Deferred method is_supertype called (src/metamodel//static_type.nit:196,2)\n");
472 tracehead
= trace
.prev
;
475 val_t
static_type___MMType___select_method(val_t self
, val_t param0
) {
476 struct trace_t trace
= {NULL
, "static_type::MMType::select_method (src/metamodel//static_type.nit:201,2--208:12)"};
480 trace
.prev
= tracehead
; tracehead
= &trace
;
482 variable1
= ((static_type___MMType___local_class_t
)CALL( self
,COLOR_static_type___MMType___local_class
))( self
) /*MMType::local_class*/;
483 variable1
= TAG_Bool(!UNTAG_Bool(TAG_Bool((variable1
== NIT_NULL
/*null*/) || ((variable1
!= NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL(variable1
,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN(variable1
, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL(variable1
,COLOR_kernel___Object_____eqeq
))(variable1
, NIT_NULL
/*null*/) /*MMLocalClass::==*/)))))));
484 if (!UNTAG_Bool(variable1
)) { fprintf(stderr
, "Assert failed: src/metamodel//static_type.nit:204,3--28\n"); nit_exit(1);}
485 variable1
= TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable0
/*name*/ == NIT_NULL
/*null*/) || (( variable0
/*name*/ != NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL( variable0
/*name*/,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN( variable0
/*name*/, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL( variable0
/*name*/,COLOR_kernel___Object_____eqeq
))( variable0
/*name*/, NIT_NULL
/*null*/) /*Symbol::==*/)))))));
486 if (!UNTAG_Bool(variable1
)) { fprintf(stderr
, "Assert failed: src/metamodel//static_type.nit:205,3--21\n"); nit_exit(1);}
487 variable2
= ((static_type___MMType___local_class_t
)CALL( self
,COLOR_static_type___MMType___local_class
))( self
) /*MMType::local_class*/;
488 variable2
= ((abstractmetamodel___MMLocalClass___method_t
)CALL(variable2
,COLOR_abstractmetamodel___MMLocalClass___method
))(variable2
, variable0
/*name*/) /*MMLocalClass::method*/;
489 variable2
= ((static_type___MMType___select_property_t
)CALL( self
,COLOR_static_type___MMType___select_property
))( self
, variable2
) /*MMType::select_property*/;
490 variable1
= variable2
;
491 variable2
= TAG_Bool(( variable1
/*res*/==NIT_NULL
) || VAL_ISA( variable1
/*res*/, COLOR_MMMethod
, ID_MMMethod
)) /*cast MMMethod*/;
492 if (!UNTAG_Bool(variable2
)) { fprintf(stderr
, "Assert failed: src/metamodel//static_type.nit:207,3--25\n"); nit_exit(1);}
493 variable1
= variable1
/*res*/;
495 return_label17
: while(false);
496 tracehead
= trace
.prev
;
499 val_t
static_type___MMType___select_attribute(val_t self
, val_t param0
) {
500 struct trace_t trace
= {NULL
, "static_type::MMType::select_attribute (src/metamodel//static_type.nit:211,2--218:12)"};
504 trace
.prev
= tracehead
; tracehead
= &trace
;
506 variable1
= TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable0
/*name*/ == NIT_NULL
/*null*/) || (( variable0
/*name*/ != NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL( variable0
/*name*/,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN( variable0
/*name*/, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL( variable0
/*name*/,COLOR_kernel___Object_____eqeq
))( variable0
/*name*/, NIT_NULL
/*null*/) /*Symbol::==*/)))))));
507 if (!UNTAG_Bool(variable1
)) { fprintf(stderr
, "Assert failed: src/metamodel//static_type.nit:214,3--21\n"); nit_exit(1);}
508 variable1
= ((static_type___MMType___local_class_t
)CALL( self
,COLOR_static_type___MMType___local_class
))( self
) /*MMType::local_class*/;
509 variable1
= TAG_Bool(!UNTAG_Bool(TAG_Bool((variable1
== NIT_NULL
/*null*/) || ((variable1
!= NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL(variable1
,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN(variable1
, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL(variable1
,COLOR_kernel___Object_____eqeq
))(variable1
, NIT_NULL
/*null*/) /*MMLocalClass::==*/)))))));
510 if (!UNTAG_Bool(variable1
)) { fprintf(stderr
, "Assert failed: src/metamodel//static_type.nit:215,3--28\n"); nit_exit(1);}
511 variable2
= ((static_type___MMType___local_class_t
)CALL( self
,COLOR_static_type___MMType___local_class
))( self
) /*MMType::local_class*/;
512 variable2
= ((abstractmetamodel___MMLocalClass___attribute_t
)CALL(variable2
,COLOR_abstractmetamodel___MMLocalClass___attribute
))(variable2
, variable0
/*name*/) /*MMLocalClass::attribute*/;
513 variable2
= ((static_type___MMType___select_property_t
)CALL( self
,COLOR_static_type___MMType___select_property
))( self
, variable2
) /*MMType::select_property*/;
514 variable1
= variable2
;
515 variable2
= TAG_Bool(( variable1
/*res*/==NIT_NULL
) || VAL_ISA( variable1
/*res*/, COLOR_MMAttribute
, ID_MMAttribute
)) /*cast MMAttribute*/;
516 if (!UNTAG_Bool(variable2
)) { fprintf(stderr
, "Assert failed: src/metamodel//static_type.nit:217,3--28\n"); nit_exit(1);}
517 variable1
= variable1
/*res*/;
519 return_label18
: while(false);
520 tracehead
= trace
.prev
;
523 val_t
static_type___MMType___select_property(val_t self
, val_t param0
) {
524 struct trace_t trace
= {NULL
, "static_type::MMType::select_property (src/metamodel//static_type.nit:221,2--222:59)"};
525 trace
.prev
= tracehead
; tracehead
= &trace
;
526 fprintf(stderr
, "Deferred method select_property called (src/metamodel//static_type.nit:221,2)\n");
528 tracehead
= trace
.prev
;
531 val_t
static_type___MMType___for_module(val_t self
, val_t param0
) {
532 struct trace_t trace
= {NULL
, "static_type::MMType::for_module (src/metamodel//static_type.nit:224,2--225:39)"};
533 trace
.prev
= tracehead
; tracehead
= &trace
;
534 fprintf(stderr
, "Deferred method for_module called (src/metamodel//static_type.nit:224,2)\n");
536 tracehead
= trace
.prev
;
539 val_t
static_type___MMType___adapt_to(val_t self
, val_t param0
) {
540 struct trace_t trace
= {NULL
, "static_type::MMType::adapt_to (src/metamodel//static_type.nit:227,2--229:36)"};
541 trace
.prev
= tracehead
; tracehead
= &trace
;
542 fprintf(stderr
, "Deferred method adapt_to called (src/metamodel//static_type.nit:227,2)\n");
544 tracehead
= trace
.prev
;
547 val_t
static_type___MMType___upcast_for(val_t self
, val_t param0
) {
548 struct trace_t trace
= {NULL
, "static_type::MMType::upcast_for (src/metamodel//static_type.nit:231,2--233:41)"};
549 trace
.prev
= tracehead
; tracehead
= &trace
;
550 fprintf(stderr
, "Deferred method upcast_for called (src/metamodel//static_type.nit:231,2)\n");
552 tracehead
= trace
.prev
;
555 val_t
static_type___MMType___not_for_self(val_t self
) {
556 struct trace_t trace
= {NULL
, "static_type::MMType::not_for_self (src/metamodel//static_type.nit:235,2--237:41)"};
558 trace
.prev
= tracehead
; tracehead
= &trace
;
561 return_label19
: while(false);
562 tracehead
= trace
.prev
;
565 val_t
static_type___MMTypeClass___local_class(val_t self
) {
566 struct trace_t trace
= {NULL
, "static_type::MMTypeClass::local_class (src/metamodel//static_type.nit:242,2--47)"};
567 trace
.prev
= tracehead
; tracehead
= &trace
;
568 tracehead
= trace
.prev
;
569 return ATTR_static_type___MMTypeClass____local_class( self
) /*MMTypeClass::_local_class*/;
571 val_t
static_type___MMTypeClass___module(val_t self
) {
572 struct trace_t trace
= {NULL
, "static_type::MMTypeClass::module (src/metamodel//static_type.nit:243,2--48)"};
574 trace
.prev
= tracehead
; tracehead
= &trace
;
575 variable0
= ATTR_static_type___MMTypeClass____local_class( self
) /*MMTypeClass::_local_class*/;
576 variable0
= ((abstractmetamodel___MMLocalClass___module_t
)CALL(variable0
,COLOR_abstractmetamodel___MMLocalClass___module
))(variable0
) /*MMLocalClass::module*/;
578 return_label20
: while(false);
579 tracehead
= trace
.prev
;
582 val_t
static_type___MMTypeClass_____l(val_t self
, val_t param0
) {
583 struct trace_t trace
= {NULL
, "static_type::MMTypeClass::< (src/metamodel//static_type.nit:244,2--60)"};
587 trace
.prev
= tracehead
; tracehead
= &trace
;
589 variable1
= TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable0
/*t*/ == NIT_NULL
/*null*/) || (( variable0
/*t*/ != NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL( variable0
/*t*/,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN( variable0
/*t*/, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL( variable0
/*t*/,COLOR_kernel___Object_____eqeq
))( variable0
/*t*/, NIT_NULL
/*null*/) /*MMType::==*/)))))));
590 variable2
= variable1
;
591 if (UNTAG_Bool(variable2
)) { /* and */
592 variable2
= ((static_type___MMType___is_supertype_t
)CALL( variable0
/*t*/,COLOR_static_type___MMType___is_supertype
))( variable0
/*t*/, self
) /*MMType::is_supertype*/;
594 variable1
= variable2
;
596 return_label21
: while(false);
597 tracehead
= trace
.prev
;
600 val_t
static_type___MMTypeClass___to_s(val_t self
) {
601 struct trace_t trace
= {NULL
, "static_type::MMTypeClass::to_s (src/metamodel//static_type.nit:246,2--248:26)"};
603 trace
.prev
= tracehead
; tracehead
= &trace
;
604 variable0
= ATTR_static_type___MMTypeClass____local_class( self
) /*MMTypeClass::_local_class*/;
605 variable0
= ((abstractmetamodel___MMLocalClass___to_s_t
)CALL(variable0
,COLOR_string___Object___to_s
))(variable0
) /*MMLocalClass::to_s*/;
607 return_label22
: while(false);
608 tracehead
= trace
.prev
;
611 val_t
static_type___MMTypeClass___upcast_for(val_t self
, val_t param0
) {
612 struct trace_t trace
= {NULL
, "static_type::MMTypeClass::upcast_for (src/metamodel//static_type.nit:251,2--261:10)"};
616 trace
.prev
= tracehead
; tracehead
= &trace
;
618 variable1
= ATTR_static_type___MMTypeClass____local_class( self
) /*MMTypeClass::_local_class*/;
619 variable1
= TAG_Bool(!UNTAG_Bool(TAG_Bool((variable1
== NIT_NULL
/*null*/) || ((variable1
!= NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL(variable1
,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN(variable1
, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL(variable1
,COLOR_kernel___Object_____eqeq
))(variable1
, NIT_NULL
/*null*/) /*MMLocalClass::==*/)))))));
620 if (!UNTAG_Bool(variable1
)) { fprintf(stderr
, "Assert failed: src/metamodel//static_type.nit:253,3--29\n"); nit_exit(1);}
621 variable1
= TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable0
/*c*/ == NIT_NULL
/*null*/) || (( variable0
/*c*/ != NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL( variable0
/*c*/,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN( variable0
/*c*/, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL( variable0
/*c*/,COLOR_kernel___Object_____eqeq
))( variable0
/*c*/, NIT_NULL
/*null*/) /*MMLocalClass::==*/)))))));
622 if (!UNTAG_Bool(variable1
)) { fprintf(stderr
, "Assert failed: src/metamodel//static_type.nit:254,3--18\n"); nit_exit(1);}
624 variable2
= ATTR_static_type___MMTypeClass____local_class( self
) /*MMTypeClass::_local_class*/;
625 variable2
= TAG_Bool(!UNTAG_Bool(TAG_Bool((variable2
== variable0
/*c*/) || ((variable2
!= NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL(variable2
,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN(variable2
, variable0
/*c*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL(variable2
,COLOR_kernel___Object_____eqeq
))(variable2
, variable0
/*c*/) /*MMLocalClass::==*/)))))));
626 if (UNTAG_Bool(variable2
)) { /*if*/
627 variable2
= ATTR_static_type___MMTypeClass____local_class( self
) /*MMTypeClass::_local_class*/;
628 variable2
= ((static_type___MMLocalClass___ancestor_t
)CALL(variable2
,COLOR_static_type___MMLocalClass___ancestor
))(variable2
, variable0
/*c*/) /*MMLocalClass::ancestor*/;
629 variable1
= variable2
/*t=*/;
631 variable2
= TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable1
/*t*/ == NIT_NULL
/*null*/) || (( variable1
/*t*/ != NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL( variable1
/*t*/,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN( variable1
/*t*/, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL( variable1
/*t*/,COLOR_kernel___Object_____eqeq
))( variable1
/*t*/, NIT_NULL
/*null*/) /*MMType::==*/)))))));
632 if (!UNTAG_Bool(variable2
)) { fprintf(stderr
, "Assert failed: src/metamodel//static_type.nit:260,3--18\n"); nit_exit(1);}
633 variable1
= variable1
/*t*/;
635 return_label23
: while(false);
636 tracehead
= trace
.prev
;
639 void static_type___MMTypeClass___init(val_t self
, val_t param0
, int* init_table
) {
640 struct trace_t trace
= {NULL
, "static_type::MMTypeClass::init (src/metamodel//static_type.nit:264,2--266:18)"};
642 trace
.prev
= tracehead
; tracehead
= &trace
;
644 if (init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_MMTypeClass
].i
]) return;
645 ATTR_static_type___MMTypeClass____local_class( self
) /*MMTypeClass::_local_class*/ = variable0
/*c*/;
646 init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_MMTypeClass
].i
] = 1;
647 tracehead
= trace
.prev
;
650 val_t
static_type___MMTypeSimpleClass___is_supertype(val_t self
, val_t param0
) {
651 struct trace_t trace
= {NULL
, "static_type::MMTypeSimpleClass::is_supertype (src/metamodel//static_type.nit:272,2--274:44)"};
655 trace
.prev
= tracehead
; tracehead
= &trace
;
657 variable1
= ((static_type___MMType___local_class_t
)CALL( variable0
/*t*/,COLOR_static_type___MMType___local_class
))( variable0
/*t*/) /*MMType::local_class*/;
658 variable1
= ((abstractmetamodel___MMLocalClass___cshe_t
)CALL(variable1
,COLOR_abstractmetamodel___MMLocalClass___cshe
))(variable1
) /*MMLocalClass::cshe*/;
659 variable2
= ATTR_static_type___MMTypeClass____local_class( self
) /*MMTypeSimpleClass::_local_class*/;
660 variable1
= ((partial_order___PartialOrderElement_____leq_t
)CALL(variable1
,COLOR_partial_order___PartialOrderElement_____leq
))(variable1
, variable2
) /*PartialOrderElement::<=*/;
662 return_label25
: while(false);
663 tracehead
= trace
.prev
;
666 val_t
static_type___MMTypeSimpleClass___select_property(val_t self
, val_t param0
) {
667 struct trace_t trace
= {NULL
, "static_type::MMTypeSimpleClass::select_property (src/metamodel//static_type.nit:277,2--283:23)"};
670 trace
.prev
= tracehead
; tracehead
= &trace
;
672 variable1
= ATTR_static_type___MMTypeClass____local_class( self
) /*MMTypeSimpleClass::_local_class*/;
673 variable1
= TAG_Bool(!UNTAG_Bool(TAG_Bool((variable1
== NIT_NULL
/*null*/) || ((variable1
!= NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL(variable1
,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN(variable1
, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL(variable1
,COLOR_kernel___Object_____eqeq
))(variable1
, NIT_NULL
/*null*/) /*MMLocalClass::==*/)))))));
674 if (!UNTAG_Bool(variable1
)) { fprintf(stderr
, "Assert failed: src/metamodel//static_type.nit:279,3--29\n"); nit_exit(1);}
675 variable1
= TAG_Bool(( variable0
/*g*/ == NIT_NULL
/*null*/) || (( variable0
/*g*/ != NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL( variable0
/*g*/,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN( variable0
/*g*/, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL( variable0
/*g*/,COLOR_kernel___Object_____eqeq
))( variable0
/*g*/, NIT_NULL
/*null*/) /*MMGlobalProperty::==*/)))));
676 if (UNTAG_Bool(variable1
)) { /*if*/
677 variable1
= NIT_NULL
/*null*/;
680 variable1
= ATTR_static_type___MMTypeClass____local_class( self
) /*MMTypeSimpleClass::_local_class*/;
681 variable1
= ((abstractmetamodel___MMLocalClass_____bra_t
)CALL(variable1
,COLOR_abstractmetamodel___MMLocalClass_____bra
))(variable1
, variable0
/*g*/) /*MMLocalClass::[]*/;
683 return_label26
: while(false);
684 tracehead
= trace
.prev
;
687 val_t
static_type___MMTypeSimpleClass___for_module(val_t self
, val_t param0
) {
688 struct trace_t trace
= {NULL
, "static_type::MMTypeSimpleClass::for_module (src/metamodel//static_type.nit:286,2--293:10)"};
692 trace
.prev
= tracehead
; tracehead
= &trace
;
695 variable2
= ((static_type___MMTypeClass___module_t
)CALL( self
,COLOR_static_type___MMType___module
))( self
) /*MMTypeSimpleClass::module*/;
696 variable2
= TAG_Bool(!UNTAG_Bool(TAG_Bool((variable2
== variable0
/*mod*/) || ((variable2
!= NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL(variable2
,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN(variable2
, variable0
/*mod*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL(variable2
,COLOR_kernel___Object_____eqeq
))(variable2
, variable0
/*mod*/) /*MMModule::==*/)))))));
697 if (UNTAG_Bool(variable2
)) { /*if*/
698 variable2
= ATTR_static_type___MMTypeClass____local_class( self
) /*MMTypeSimpleClass::_local_class*/;
699 variable2
= ((abstractmetamodel___MMLocalClass___for_module_t
)CALL(variable2
,COLOR_abstractmetamodel___MMLocalClass___for_module
))(variable2
, variable0
/*mod*/) /*MMLocalClass::for_module*/;
700 variable2
= ((static_type___MMLocalClass___get_type_t
)CALL(variable2
,COLOR_static_type___MMLocalClass___get_type
))(variable2
) /*MMLocalClass::get_type*/;
701 variable1
= variable2
/*t=*/;
703 variable2
= TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable1
/*t*/ == NIT_NULL
/*null*/) || (( variable1
/*t*/ != NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL( variable1
/*t*/,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN( variable1
/*t*/, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL( variable1
/*t*/,COLOR_kernel___Object_____eqeq
))( variable1
/*t*/, NIT_NULL
/*null*/) /*MMType::==*/)))))));
704 if (!UNTAG_Bool(variable2
)) { fprintf(stderr
, "Assert failed: src/metamodel//static_type.nit:292,3--18\n"); nit_exit(1);}
705 variable1
= variable1
/*t*/;
707 return_label27
: while(false);
708 tracehead
= trace
.prev
;
711 val_t
static_type___MMTypeSimpleClass___adapt_to(val_t self
, val_t param0
) {
712 struct trace_t trace
= {NULL
, "static_type::MMTypeSimpleClass::adapt_to (src/metamodel//static_type.nit:296,2--41)"};
715 trace
.prev
= tracehead
; tracehead
= &trace
;
719 return_label28
: while(false);
720 tracehead
= trace
.prev
;
723 void static_type___MMTypeSimpleClass___init(val_t self
, val_t param0
, int* init_table
) {
724 struct trace_t trace
= {NULL
, "static_type::MMTypeSimpleClass::init (src/metamodel//static_type.nit:298,2--300:9)"};
726 trace
.prev
= tracehead
; tracehead
= &trace
;
728 if (init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_MMTypeSimpleClass
].i
]) return;
729 ((static_type___MMTypeClass___init_t
)CALL( self
,COLOR_static_type___MMTypeClass___init
))( self
, variable0
/*c*/, init_table
/*YYY*/) /*MMTypeClass::init*/;
730 init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_MMTypeSimpleClass
].i
] = 1;
731 tracehead
= trace
.prev
;
734 val_t
static_type___MMTypeNone___module(val_t self
) {
735 struct trace_t trace
= {NULL
, "static_type::MMTypeNone::module (src/metamodel//static_type.nit:307,3--39)"};
736 trace
.prev
= tracehead
; tracehead
= &trace
;
737 tracehead
= trace
.prev
;
738 return ATTR_static_type___MMTypeNone____module( self
) /*MMTypeNone::_module*/;
740 val_t
static_type___MMTypeNone_____l(val_t self
, val_t param0
) {
741 struct trace_t trace
= {NULL
, "static_type::MMTypeNone::< (src/metamodel//static_type.nit:308,3--32)"};
744 trace
.prev
= tracehead
; tracehead
= &trace
;
746 variable1
= TAG_Bool(true);
748 return_label30
: while(false);
749 tracehead
= trace
.prev
;
752 val_t
static_type___MMTypeNone___is_supertype(val_t self
, val_t param0
) {
753 struct trace_t trace
= {NULL
, "static_type::MMTypeNone::is_supertype (src/metamodel//static_type.nit:309,3--44)"};
756 trace
.prev
= tracehead
; tracehead
= &trace
;
758 variable1
= TAG_Bool(false);
760 return_label31
: while(false);
761 tracehead
= trace
.prev
;
764 val_t
static_type___MMTypeNone___local_class(val_t self
) {
765 struct trace_t trace
= {NULL
, "static_type::MMTypeNone::local_class (src/metamodel//static_type.nit:310,3--33)"};
767 trace
.prev
= tracehead
; tracehead
= &trace
;
768 fprintf(stderr
, "Aborted: src/metamodel//static_type.nit:310,29--33\n"); nit_exit(1);
769 tracehead
= trace
.prev
;
772 val_t
static_type___MMTypeNone___upcast_for(val_t self
, val_t param0
) {
773 struct trace_t trace
= {NULL
, "static_type::MMTypeNone::upcast_for (src/metamodel//static_type.nit:311,3--41)"};
776 trace
.prev
= tracehead
; tracehead
= &trace
;
780 return_label33
: while(false);
781 tracehead
= trace
.prev
;
784 void static_type___MMTypeNone___init(val_t self
, val_t param0
, int* init_table
) {
785 struct trace_t trace
= {NULL
, "static_type::MMTypeNone::init (src/metamodel//static_type.nit:313,2--41)"};
787 trace
.prev
= tracehead
; tracehead
= &trace
;
789 if (init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_MMTypeNone
].i
]) return;
790 ATTR_static_type___MMTypeNone____module( self
) /*MMTypeNone::_module*/ = variable0
/*m*/;
791 init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_MMTypeNone
].i
] = 1;
792 tracehead
= trace
.prev
;
795 val_t
static_type___MMModule___type_none(val_t self
) {
796 struct trace_t trace
= {NULL
, "static_type::MMModule::type_none (src/metamodel//static_type.nit:317,2--318:59)"};
797 trace
.prev
= tracehead
; tracehead
= &trace
;
798 tracehead
= trace
.prev
;
799 return ATTR_static_type___MMModule____type_none( self
) /*MMModule::_type_none*/;