1 #include "static_type._sep.h"
2 val_t
static_type___MMLocalClass___get_type(val_t self
) {
3 struct trace_t trace
= {NULL
, "static_type::MMLocalClass::get_type (src/metamodel//static_type.nit:27,2--31:25)"};
5 trace
.prev
= tracehead
; tracehead
= &trace
;
6 variable0
= ATTR_static_type___MMLocalClass____base_type_cache( self
) /*MMLocalClass::_base_type_cache*/;
7 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::==*/)))));
8 if (UNTAG_Bool(variable0
)) { /*if*/
9 variable0
= NEW_static_type___MMTypeSimpleClass___init( self
); /*new MMTypeSimpleClass*/
10 ATTR_static_type___MMLocalClass____base_type_cache( self
) /*MMLocalClass::_base_type_cache*/ = variable0
;
12 variable0
= ATTR_static_type___MMLocalClass____base_type_cache( self
) /*MMLocalClass::_base_type_cache*/;
14 return_label0
: while(false);
15 tracehead
= trace
.prev
;
18 void static_type___MMLocalClass___add_ancestor(val_t self
, val_t param0
) {
19 struct trace_t trace
= {NULL
, "static_type::MMLocalClass::add_ancestor (src/metamodel//static_type.nit:34,2--39:31)"};
23 trace
.prev
= tracehead
; tracehead
= &trace
;
25 variable1
= ATTR_static_type___MMLocalClass____ancestors( self
) /*MMLocalClass::_ancestors*/;
26 variable2
= ((static_type___MMAncestor___local_class_t
)CALL( variable0
/*a*/,COLOR_static_type___MMAncestor___local_class
))( variable0
/*a*/) /*MMAncestor::local_class*/;
27 variable1
= ((abstract_collection___Map___has_key_t
)CALL(variable1
,COLOR_abstract_collection___Map___has_key
))(variable1
, variable2
) /*Map::has_key*/;
28 if (!UNTAG_Bool( TAG_Bool(!UNTAG_Bool(variable1
)))) { fprintf(stderr
, "Assert failed: src/metamodel//static_type.nit:37,3--45\n"); nit_exit(1);}
29 variable1
= ((static_type___MMAncestor___local_class_t
)CALL( variable0
/*a*/,COLOR_static_type___MMAncestor___local_class
))( variable0
/*a*/) /*MMAncestor::local_class*/;
30 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::==*/)))))));
31 if (!UNTAG_Bool(variable1
)) { fprintf(stderr
, "Assert failed: src/metamodel//static_type.nit:38,3--30\n"); nit_exit(1);}
32 variable1
= ATTR_static_type___MMLocalClass____ancestors( self
) /*MMLocalClass::_ancestors*/;
33 variable2
= ((static_type___MMAncestor___local_class_t
)CALL( variable0
/*a*/,COLOR_static_type___MMAncestor___local_class
))( variable0
/*a*/) /*MMAncestor::local_class*/;
34 ((abstract_collection___Map_____braeq_t
)CALL(variable1
,COLOR_abstract_collection___Map_____braeq
))(variable1
, variable2
, variable0
/*a*/) /*Map::[]=*/;
35 tracehead
= trace
.prev
;
38 val_t
static_type___MMLocalClass___ancestors(val_t self
) {
39 struct trace_t trace
= {NULL
, "static_type::MMLocalClass::ancestors (src/metamodel//static_type.nit:42,2--43:55)"};
40 trace
.prev
= tracehead
; tracehead
= &trace
;
41 tracehead
= trace
.prev
;
42 return ATTR_static_type___MMLocalClass____ancestors( self
) /*MMLocalClass::_ancestors*/;
44 val_t
static_type___MMLocalClass___ancestor(val_t self
, val_t param0
) {
45 struct trace_t trace
= {NULL
, "static_type::MMLocalClass::ancestor (src/metamodel//static_type.nit:45,2--52:13)"};
48 trace
.prev
= tracehead
; tracehead
= &trace
;
50 variable1
= ATTR_static_type___MMLocalClass____ancestors( self
) /*MMLocalClass::_ancestors*/;
51 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::==*/)))))));
52 if (!UNTAG_Bool(variable1
)) { fprintf(stderr
, "Assert failed: src/metamodel//static_type.nit:48,3--27\n"); nit_exit(1);}
53 variable1
= ATTR_static_type___MMLocalClass____ancestors( self
) /*MMLocalClass::_ancestors*/;
54 variable1
= ((abstract_collection___Map___has_key_t
)CALL(variable1
,COLOR_abstract_collection___Map___has_key
))(variable1
, variable0
/*c*/) /*Map::has_key*/;
55 if (UNTAG_Bool(variable1
)) { /*if*/
56 variable1
= ATTR_static_type___MMLocalClass____ancestors( self
) /*MMLocalClass::_ancestors*/;
57 variable1
= ((abstract_collection___Map_____bra_t
)CALL(variable1
,COLOR_abstract_collection___Map_____bra
))(variable1
, variable0
/*c*/) /*Map::[]*/;
58 variable1
= ((static_type___MMAncestor___stype_t
)CALL(variable1
,COLOR_static_type___MMAncestor___stype
))(variable1
) /*MMAncestor::stype*/;
61 variable1
= NIT_NULL
/*null*/;
63 return_label2
: while(false);
64 tracehead
= trace
.prev
;
67 val_t
static_type___MMLocalProperty___signature(val_t self
) {
68 struct trace_t trace
= {NULL
, "static_type::MMLocalProperty::signature (src/metamodel//static_type.nit:60,2--71:25)"};
70 trace
.prev
= tracehead
; tracehead
= &trace
;
71 variable0
= ATTR_static_type___MMLocalProperty____signature_cache( self
) /*MMLocalProperty::_signature_cache*/;
72 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::==*/)))));
73 if (UNTAG_Bool(variable0
)) { /*if*/
74 variable0
= ATTR_abstractmetamodel___MMLocalProperty____super_prop( self
) /*MMLocalProperty::_super_prop*/;
75 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::==*/)))));
76 if (UNTAG_Bool(variable0
)) { /*if*/
77 variable0
= ATTR_abstractmetamodel___MMLocalProperty____concrete_property( self
) /*MMLocalProperty::_concrete_property*/;
78 variable0
= ((static_type___MMLocalProperty___signature_t
)CALL(variable0
,COLOR_static_type___MMLocalProperty___signature
))(variable0
) /*MMConcreteProperty::signature*/;
79 ATTR_static_type___MMLocalProperty____signature_cache( self
) /*MMLocalProperty::_signature_cache*/ = variable0
;
81 variable0
= ATTR_abstractmetamodel___MMLocalProperty____super_prop( self
) /*MMLocalProperty::_super_prop*/;
82 variable0
= ((static_type___MMLocalProperty___signature_t
)CALL(variable0
,COLOR_static_type___MMLocalProperty___signature
))(variable0
) /*MMLocalProperty::signature*/;
83 ATTR_static_type___MMLocalProperty____signature_cache( self
) /*MMLocalProperty::_signature_cache*/ = variable0
;
86 variable0
= ATTR_static_type___MMLocalProperty____signature_cache( self
) /*MMLocalProperty::_signature_cache*/;
87 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::==*/)))))));
88 if (!UNTAG_Bool(variable0
)) { fprintf(stderr
, "Assert failed: src/metamodel//static_type.nit:70,3--33\n"); nit_exit(1);}
89 variable0
= ATTR_static_type___MMLocalProperty____signature_cache( self
) /*MMLocalProperty::_signature_cache*/;
91 return_label3
: while(false);
92 tracehead
= trace
.prev
;
95 void static_type___MMLocalProperty___signature__eq(val_t self
, val_t param0
) {
96 struct trace_t trace
= {NULL
, "static_type::MMLocalProperty::signature= (src/metamodel//static_type.nit:74,2--56)"};
98 trace
.prev
= tracehead
; tracehead
= &trace
;
100 ATTR_static_type___MMLocalProperty____signature_cache( self
) /*MMLocalProperty::_signature_cache*/ = variable0
/*s*/;
101 tracehead
= trace
.prev
;
104 val_t
static_type___MMSignature___recv(val_t self
) {
105 struct trace_t trace
= {NULL
, "static_type::MMSignature::recv (src/metamodel//static_type.nit:79,2--80:28)"};
106 trace
.prev
= tracehead
; tracehead
= &trace
;
107 tracehead
= trace
.prev
;
108 return ATTR_static_type___MMSignature____recv( self
) /*MMSignature::_recv*/;
110 val_t
static_type___MMSignature___return_type(val_t self
) {
111 struct trace_t trace
= {NULL
, "static_type::MMSignature::return_type (src/metamodel//static_type.nit:85,2--86:36)"};
112 trace
.prev
= tracehead
; tracehead
= &trace
;
113 tracehead
= trace
.prev
;
114 return ATTR_static_type___MMSignature____return_type( self
) /*MMSignature::_return_type*/;
116 val_t
static_type___MMSignature___arity(val_t self
) {
117 struct trace_t trace
= {NULL
, "static_type::MMSignature::arity (src/metamodel//static_type.nit:88,2--92:23)"};
119 trace
.prev
= tracehead
; tracehead
= &trace
;
120 variable0
= ATTR_static_type___MMSignature____params( self
) /*MMSignature::_params*/;
121 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::==*/)))));
122 if (!UNTAG_Bool(variable0
)) { fprintf(stderr
, "Assert failed: src/metamodel//static_type.nit:91,3--24\n"); nit_exit(1);}
123 variable0
= ATTR_static_type___MMSignature____params( self
) /*MMSignature::_params*/;
124 variable0
= ((array___AbstractArray___length_t
)CALL(variable0
,COLOR_abstract_collection___Collection___length
))(variable0
) /*Array::length*/;
126 return_label5
: while(false);
127 tracehead
= trace
.prev
;
130 val_t
static_type___MMSignature_____l(val_t self
, val_t param0
) {
131 struct trace_t trace
= {NULL
, "static_type::MMSignature::< (src/metamodel//static_type.nit:95,2--114:13)"};
137 trace
.prev
= tracehead
; tracehead
= &trace
;
139 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::==*/)))))));
140 if (!UNTAG_Bool(variable1
)) { fprintf(stderr
, "Assert failed: src/metamodel//static_type.nit:98,3--18\n"); nit_exit(1);}
141 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::==*/)))));
142 if (UNTAG_Bool(variable1
)) { /*if*/
143 variable1
= TAG_Bool(true);
146 variable1
= ATTR_static_type___MMSignature____recv( self
) /*MMSignature::_recv*/;
147 variable1
= ((static_type___MMType___module_t
)CALL(variable1
,COLOR_static_type___MMType___module
))(variable1
) /*MMType::module*/;
148 variable2
= ((static_type___MMSignature___recv_t
)CALL( variable0
/*s*/,COLOR_static_type___MMSignature___recv
))( variable0
/*s*/) /*MMSignature::recv*/;
149 variable2
= ((static_type___MMType___module_t
)CALL(variable2
,COLOR_static_type___MMType___module
))(variable2
) /*MMType::module*/;
150 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::==*/)))));
151 if (!UNTAG_Bool(variable1
)) { fprintf(stderr
, "Assert failed: src/metamodel//static_type.nit:102,3--38\n"); nit_exit(1);}
152 variable1
= ((static_type___MMSignature___arity_t
)CALL( self
,COLOR_static_type___MMSignature___arity
))( self
) /*MMSignature::arity*/;
153 variable2
= ((static_type___MMSignature___arity_t
)CALL( variable0
/*s*/,COLOR_static_type___MMSignature___arity
))( variable0
/*s*/) /*MMSignature::arity*/;
154 variable1
= TAG_Bool((variable1
)==(variable2
));
155 if (!UNTAG_Bool(variable1
)) { fprintf(stderr
, "Assert failed: src/metamodel//static_type.nit:103,3--25\n"); nit_exit(1);}
156 variable1
= ATTR_static_type___MMSignature____return_type( self
) /*MMSignature::_return_type*/;
157 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::==*/)))));
158 variable2
= ((static_type___MMSignature___return_type_t
)CALL( variable0
/*s*/,COLOR_static_type___MMSignature___return_type
))( variable0
/*s*/) /*MMSignature::return_type*/;
159 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::==*/)))));
160 variable1
= TAG_Bool((variable1
)==(variable2
));
161 if (!UNTAG_Bool(variable1
)) { fprintf(stderr
, "Assert failed: src/metamodel//static_type.nit:104,3--57\n"); nit_exit(1);}
162 variable1
= ATTR_static_type___MMSignature____return_type( self
) /*MMSignature::_return_type*/;
163 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::==*/)))))));
164 variable2
= variable1
;
165 if (UNTAG_Bool(variable2
)) { /* and */
166 variable2
= ATTR_static_type___MMSignature____return_type( self
) /*MMSignature::_return_type*/;
167 variable3
= ((static_type___MMSignature___return_type_t
)CALL( variable0
/*s*/,COLOR_static_type___MMSignature___return_type
))( variable0
/*s*/) /*MMSignature::return_type*/;
168 variable2
= ((static_type___MMType_____l_t
)CALL(variable2
,COLOR_static_type___MMType_____l
))(variable2
, variable3
) /*MMType::<*/;
169 variable2
= TAG_Bool(!UNTAG_Bool(variable2
));
171 variable1
= variable2
;
172 if (UNTAG_Bool(variable1
)) { /*if*/
173 variable1
= TAG_Bool(false);
176 variable1
= ((static_type___MMSignature___arity_t
)CALL( self
,COLOR_static_type___MMSignature___arity
))( self
) /*MMSignature::arity*/;
177 variable2
= NEW_range___Range___without_last( TAG_Int(0), variable1
); /*new Range[Int]*/
178 variable1
= variable2
;
179 variable1
= ((range___Range___iterator_t
)CALL(variable1
,COLOR_abstract_collection___Collection___iterator
))(variable1
) /*Range::iterator*/;
180 while (true) { /*for*/
181 variable2
= ((abstract_collection___Iterator___is_ok_t
)CALL(variable1
,COLOR_abstract_collection___Iterator___is_ok
))(variable1
) /*Iterator::is_ok*/;
182 if (!UNTAG_Bool(variable2
)) break; /*for*/
183 variable2
= ((abstract_collection___Iterator___item_t
)CALL(variable1
,COLOR_abstract_collection___Iterator___item
))(variable1
) /*Iterator::item*/;
184 variable3
= ((static_type___MMSignature_____bra_t
)CALL( variable0
/*s*/,COLOR_static_type___MMSignature_____bra
))( variable0
/*s*/, variable2
/*i*/) /*MMSignature::[]*/;
185 variable4
= ((static_type___MMSignature_____bra_t
)CALL( self
,COLOR_static_type___MMSignature_____bra
))( self
, variable2
/*i*/) /*MMSignature::[]*/;
186 variable3
= ((static_type___MMType_____l_t
)CALL(variable3
,COLOR_static_type___MMType_____l
))(variable3
, variable4
) /*MMType::<*/;
187 if (UNTAG_Bool( TAG_Bool(!UNTAG_Bool(variable3
)))) { /*if*/
188 variable1
= TAG_Bool(false);
191 continue_7
: while(0);
192 ((abstract_collection___Iterator___next_t
)CALL(variable1
,COLOR_abstract_collection___Iterator___next
))(variable1
) /*Iterator::next*/;
195 variable1
= TAG_Bool(true);
197 return_label6
: while(false);
198 tracehead
= trace
.prev
;
201 val_t
static_type___MMSignature_____bra(val_t self
, val_t param0
) {
202 struct trace_t trace
= {NULL
, "static_type::MMSignature::[] (src/metamodel//static_type.nit:117,2--121:18)"};
208 trace
.prev
= tracehead
; tracehead
= &trace
;
210 variable1
= ATTR_static_type___MMSignature____params( self
) /*MMSignature::_params*/;
211 variable1
= ((array___AbstractArray___length_t
)CALL(variable1
,COLOR_abstract_collection___Collection___length
))(variable1
) /*Array::length*/;
212 variable1
= TAG_Bool(UNTAG_Int(variable1
)>UNTAG_Int( variable0
/*i*/));
213 if (!UNTAG_Bool(variable1
)) { fprintf(stderr
, "Assert failed: src/metamodel//static_type.nit:120,3--27\n"); nit_exit(1);}
214 variable1
= ATTR_static_type___MMSignature____params( self
) /*MMSignature::_params*/;
215 variable2
= variable0
/*i*/;
216 variable3
= TAG_Bool(UNTAG_Int( variable2
/*index*/)>=UNTAG_Int( TAG_Int(0)));
217 variable4
= variable3
;
218 if (UNTAG_Bool(variable4
)) { /* and */
219 variable4
= variable1
;
220 variable4
= ATTR_array___AbstractArray____length(variable4
) /*Array::_length*/;
221 variable4
= TAG_Bool(UNTAG_Int( variable2
/*index*/)<UNTAG_Int(variable4
));
223 variable3
= variable4
;
224 if (!UNTAG_Bool(variable3
)) { fprintf(stderr
, "Assert 'index' failed: bin/../lib/standard//array.nit:229,3--46\n"); nit_exit(1);}
225 variable3
= variable1
;
226 variable3
= ATTR_array___Array____items(variable3
) /*Array::_items*/;
227 variable3
= UNBOX_NativeArray(variable3
)[UNTAG_Int( variable2
/*index*/)];
229 return_label9
: while(false);
230 variable1
= variable3
;
232 return_label8
: while(false);
233 tracehead
= trace
.prev
;
236 val_t
static_type___MMSignature___to_s(val_t self
) {
237 struct trace_t trace
= {NULL
, "static_type::MMSignature::to_s (src/metamodel//static_type.nit:124,2--143:10)"};
248 trace
.prev
= tracehead
; tracehead
= &trace
;
249 variable0
= NIT_NULL
/*decl variable s*/;
250 variable1
= ATTR_static_type___MMSignature____params( self
) /*MMSignature::_params*/;
251 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::==*/)))));
252 variable2
= variable1
;
253 if (UNTAG_Bool(variable2
)) { /* and */
254 variable2
= ATTR_static_type___MMSignature____params( self
) /*MMSignature::_params*/;
255 variable2
= ((array___AbstractArray___length_t
)CALL(variable2
,COLOR_abstract_collection___Collection___length
))(variable2
) /*Array::length*/;
256 variable2
= TAG_Bool(UNTAG_Int(variable2
)>UNTAG_Int( TAG_Int(0)));
258 variable1
= variable2
;
259 if (UNTAG_Bool(variable1
)) { /*if*/
260 variable1
= NIT_NULL
/*decl variable tmp*/;
261 variable3
= ATTR_static_type___MMSignature____params( self
) /*MMSignature::_params*/;
262 variable3
= ((array___AbstractArray___length_t
)CALL(variable3
,COLOR_abstract_collection___Collection___length
))(variable3
) /*Array::length*/;
263 variable4
= NEW_array___Array___with_capacity(variable3
); /*new Array[String]*/
264 variable3
= variable4
;
265 variable2
= variable3
;
266 variable3
= ATTR_static_type___MMSignature____params( self
) /*MMSignature::_params*/;
267 variable3
= ((array___AbstractArray___length_t
)CALL(variable3
,COLOR_abstract_collection___Collection___length
))(variable3
) /*Array::length*/;
268 variable4
= NEW_range___Range___without_last( TAG_Int(0), variable3
); /*new Range[Int]*/
269 variable3
= variable4
;
270 variable3
= ((range___Range___iterator_t
)CALL(variable3
,COLOR_abstract_collection___Collection___iterator
))(variable3
) /*Range::iterator*/;
271 while (true) { /*for*/
272 variable4
= ((abstract_collection___Iterator___is_ok_t
)CALL(variable3
,COLOR_abstract_collection___Iterator___is_ok
))(variable3
) /*Iterator::is_ok*/;
273 if (!UNTAG_Bool(variable4
)) break; /*for*/
274 variable4
= ((abstract_collection___Iterator___item_t
)CALL(variable3
,COLOR_abstract_collection___Iterator___item
))(variable3
) /*Iterator::item*/;
275 variable6
= ATTR_static_type___MMSignature____params( self
) /*MMSignature::_params*/;
276 variable7
= variable4
/*i*/;
277 variable8
= TAG_Bool(UNTAG_Int( variable7
/*index*/)>=UNTAG_Int( TAG_Int(0)));
278 variable9
= variable8
;
279 if (UNTAG_Bool(variable9
)) { /* and */
280 variable9
= variable6
;
281 variable9
= ATTR_array___AbstractArray____length(variable9
) /*Array::_length*/;
282 variable9
= TAG_Bool(UNTAG_Int( variable7
/*index*/)<UNTAG_Int(variable9
));
284 variable8
= variable9
;
285 if (!UNTAG_Bool(variable8
)) { fprintf(stderr
, "Assert 'index' failed: bin/../lib/standard//array.nit:229,3--46\n"); nit_exit(1);}
286 variable8
= variable6
;
287 variable8
= ATTR_array___Array____items(variable8
) /*Array::_items*/;
288 variable8
= UNBOX_NativeArray(variable8
)[UNTAG_Int( variable7
/*index*/)];
290 return_label12
: while(false);
291 variable6
= variable8
;
292 variable5
= variable6
;
293 variable6
= ((string___Object___to_s_t
)CALL( variable5
/*p*/,COLOR_string___Object___to_s
))( variable5
/*p*/) /*MMType::to_s*/;
294 ((array___AbstractArray___add_t
)CALL( variable2
/*a*/,COLOR_abstract_collection___SimpleCollection___add
))( variable2
/*a*/, variable6
) /*Array::add*/;
295 continue_11
: while(0);
296 ((abstract_collection___Iterator___next_t
)CALL(variable3
,COLOR_abstract_collection___Iterator___next
))(variable3
) /*Iterator::next*/;
299 variable3
= NEW_string___String___init(); /*new String*/
300 variable4
= NEW_string___String___with_native(BOX_NativeString("("), TAG_Int(1)); /*new String*/
301 variable5
= variable4
;
302 ((string___String___append_t
)CALL(variable3
,COLOR_abstract_collection___IndexedCollection___append
))(variable3
, variable5
) /*String::append*/;
303 variable6
= NEW_string___String___with_native(BOX_NativeString(","), TAG_Int(1)); /*new String*/
304 variable6
= ((string___Collection___join_t
)CALL( variable2
/*a*/,COLOR_string___Collection___join
))( variable2
/*a*/, variable6
) /*Array::join*/;
305 variable7
= variable6
;
306 ((string___String___append_t
)CALL(variable3
,COLOR_abstract_collection___IndexedCollection___append
))(variable3
, variable7
) /*String::append*/;
307 variable8
= NEW_string___String___with_native(BOX_NativeString(")"), TAG_Int(1)); /*new String*/
308 variable9
= variable8
;
309 ((string___String___append_t
)CALL(variable3
,COLOR_abstract_collection___IndexedCollection___append
))(variable3
, variable9
) /*String::append*/;
310 variable0
= variable3
/*s=*/;
312 variable1
= NEW_string___String___with_native(BOX_NativeString(""), TAG_Int(0)); /*new String*/
313 variable0
= variable1
/*s=*/;
315 variable1
= ATTR_static_type___MMSignature____return_type( self
) /*MMSignature::_return_type*/;
316 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::==*/)))))));
317 if (UNTAG_Bool(variable1
)) { /*if*/
318 variable1
= NEW_string___String___init(); /*new String*/
319 variable2
= NEW_string___String___with_native(BOX_NativeString(": "), TAG_Int(2)); /*new String*/
320 variable3
= variable2
;
321 ((string___String___append_t
)CALL(variable1
,COLOR_abstract_collection___IndexedCollection___append
))(variable1
, variable3
) /*String::append*/;
322 variable4
= ATTR_static_type___MMSignature____return_type( self
) /*MMSignature::_return_type*/;
323 variable5
= variable4
;
324 variable5
= ((string___String___to_s_t
)CALL(variable5
,COLOR_string___Object___to_s
))(variable5
) /*String::to_s*/;
325 ((string___String___append_t
)CALL(variable1
,COLOR_abstract_collection___IndexedCollection___append
))(variable1
, variable5
) /*String::append*/;
326 variable6
= NEW_string___String___with_native(BOX_NativeString(""), TAG_Int(0)); /*new String*/
327 variable7
= variable6
;
328 ((string___String___append_t
)CALL(variable1
,COLOR_abstract_collection___IndexedCollection___append
))(variable1
, variable7
) /*String::append*/;
329 ((string___String___append_t
)CALL( variable0
/*s*/,COLOR_abstract_collection___IndexedCollection___append
))( variable0
/*s*/, variable1
) /*String::append*/;
331 variable0
= variable0
/*s*/;
333 return_label10
: while(false);
334 tracehead
= trace
.prev
;
337 void static_type___MMSignature___init(val_t self
, val_t param0
, val_t param1
, val_t param2
, int* init_table
) {
338 struct trace_t trace
= {NULL
, "static_type::MMSignature::init (src/metamodel//static_type.nit:146,2--151:11)"};
343 trace
.prev
= tracehead
; tracehead
= &trace
;
347 if (init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_MMSignature
].i
]) return;
348 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::==*/)))));
349 if (!UNTAG_Bool(variable3
)) { fprintf(stderr
, "Assert failed: src/metamodel//static_type.nit:148,3--23\n"); nit_exit(1);}
350 ATTR_static_type___MMSignature____params( self
) /*MMSignature::_params*/ = variable0
/*params*/;
351 ATTR_static_type___MMSignature____return_type( self
) /*MMSignature::_return_type*/ = variable1
/*return_type*/;
352 ATTR_static_type___MMSignature____recv( self
) /*MMSignature::_recv*/ = variable2
/*r*/;
353 init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_MMSignature
].i
] = 1;
354 tracehead
= trace
.prev
;
357 val_t
static_type___MMAncestor___stype(val_t self
) {
358 struct trace_t trace
= {NULL
, "static_type::MMAncestor::stype (src/metamodel//static_type.nit:157,2--158:38)"};
359 trace
.prev
= tracehead
; tracehead
= &trace
;
360 tracehead
= trace
.prev
;
361 return ATTR_static_type___MMAncestor____stype( self
) /*MMAncestor::_stype*/;
363 void static_type___MMAncestor___stype__eq(val_t self
, val_t param0
) {
364 struct trace_t trace
= {NULL
, "static_type::MMAncestor::stype= (src/metamodel//static_type.nit:157,2--158:38)"};
365 trace
.prev
= tracehead
; tracehead
= &trace
;
366 ATTR_static_type___MMAncestor____stype( self
) /*MMAncestor::_stype*/ = param0
;
367 tracehead
= trace
.prev
;
370 val_t
static_type___MMAncestor___inheriter(val_t self
) {
371 struct trace_t trace
= {NULL
, "static_type::MMAncestor::inheriter (src/metamodel//static_type.nit:160,2--161:42)"};
372 trace
.prev
= tracehead
; tracehead
= &trace
;
373 tracehead
= trace
.prev
;
374 return ATTR_static_type___MMAncestor____inheriter( self
) /*MMAncestor::_inheriter*/;
376 void static_type___MMAncestor___inheriter__eq(val_t self
, val_t param0
) {
377 struct trace_t trace
= {NULL
, "static_type::MMAncestor::inheriter= (src/metamodel//static_type.nit:160,2--161:42)"};
378 trace
.prev
= tracehead
; tracehead
= &trace
;
379 ATTR_static_type___MMAncestor____inheriter( self
) /*MMAncestor::_inheriter*/ = param0
;
380 tracehead
= trace
.prev
;
383 val_t
static_type___MMAncestor___is_reffinement(val_t self
) {
384 struct trace_t trace
= {NULL
, "static_type::MMAncestor::is_reffinement (src/metamodel//static_type.nit:163,2--164:37)"};
387 trace
.prev
= tracehead
; tracehead
= &trace
;
388 variable0
= ((static_type___MMAncestor___stype_t
)CALL( self
,COLOR_static_type___MMAncestor___stype
))( self
) /*MMAncestor::stype*/;
389 variable0
= ((static_type___MMType___module_t
)CALL(variable0
,COLOR_static_type___MMType___module
))(variable0
) /*MMType::module*/;
390 variable1
= ((static_type___MMAncestor___stype_t
)CALL( self
,COLOR_static_type___MMAncestor___stype
))( self
) /*MMAncestor::stype*/;
391 variable1
= ((static_type___MMType___module_t
)CALL(variable1
,COLOR_static_type___MMType___module
))(variable1
) /*MMType::module*/;
392 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::==*/)))))));
394 return_label14
: while(false);
395 tracehead
= trace
.prev
;
398 val_t
static_type___MMAncestor___is_specialisation(val_t self
) {
399 struct trace_t trace
= {NULL
, "static_type::MMAncestor::is_specialisation (src/metamodel//static_type.nit:167,2--168:65)"};
402 trace
.prev
= tracehead
; tracehead
= &trace
;
403 variable0
= ((static_type___MMAncestor___stype_t
)CALL( self
,COLOR_static_type___MMAncestor___stype
))( self
) /*MMAncestor::stype*/;
404 variable0
= ((static_type___MMType___local_class_t
)CALL(variable0
,COLOR_static_type___MMType___local_class
))(variable0
) /*MMType::local_class*/;
405 variable0
= ((abstractmetamodel___MMLocalClass___global_t
)CALL(variable0
,COLOR_abstractmetamodel___MMLocalClass___global
))(variable0
) /*MMLocalClass::global*/;
406 variable1
= ((static_type___MMAncestor___inheriter_t
)CALL( self
,COLOR_static_type___MMAncestor___inheriter
))( self
) /*MMAncestor::inheriter*/;
407 variable1
= ((static_type___MMType___local_class_t
)CALL(variable1
,COLOR_static_type___MMType___local_class
))(variable1
) /*MMType::local_class*/;
408 variable1
= ((abstractmetamodel___MMLocalClass___global_t
)CALL(variable1
,COLOR_abstractmetamodel___MMLocalClass___global
))(variable1
) /*MMLocalClass::global*/;
409 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::==*/)))))));
411 return_label15
: while(false);
412 tracehead
= trace
.prev
;
415 val_t
static_type___MMAncestor___local_class(val_t self
) {
416 struct trace_t trace
= {NULL
, "static_type::MMAncestor::local_class (src/metamodel//static_type.nit:171,2--172:31)"};
417 trace
.prev
= tracehead
; tracehead
= &trace
;
418 fprintf(stderr
, "Deferred method local_class called (src/metamodel//static_type.nit:171,2)\n");
420 tracehead
= trace
.prev
;
423 val_t
static_type___MMAncestor___to_s(val_t self
) {
424 struct trace_t trace
= {NULL
, "static_type::MMAncestor::to_s (src/metamodel//static_type.nit:174,2--179:20)"};
426 trace
.prev
= tracehead
; tracehead
= &trace
;
427 variable0
= ((static_type___MMAncestor___stype_t
)CALL( self
,COLOR_static_type___MMAncestor___stype
))( self
) /*MMAncestor::stype*/;
428 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::==*/)))));
429 if (UNTAG_Bool(variable0
)) { /*if*/
430 variable0
= ((static_type___MMAncestor___local_class_t
)CALL( self
,COLOR_static_type___MMAncestor___local_class
))( self
) /*MMAncestor::local_class*/;
431 variable0
= ((abstractmetamodel___MMLocalClass___to_s_t
)CALL(variable0
,COLOR_string___Object___to_s
))(variable0
) /*MMLocalClass::to_s*/;
434 variable0
= ((static_type___MMAncestor___stype_t
)CALL( self
,COLOR_static_type___MMAncestor___stype
))( self
) /*MMAncestor::stype*/;
435 variable0
= ((string___Object___to_s_t
)CALL(variable0
,COLOR_string___Object___to_s
))(variable0
) /*MMType::to_s*/;
438 return_label16
: while(false);
439 tracehead
= trace
.prev
;
442 val_t
static_type___MMType___module(val_t self
) {
443 struct trace_t trace
= {NULL
, "static_type::MMType::module (src/metamodel//static_type.nit:187,2--188:22)"};
444 trace
.prev
= tracehead
; tracehead
= &trace
;
445 fprintf(stderr
, "Deferred method module called (src/metamodel//static_type.nit:187,2)\n");
447 tracehead
= trace
.prev
;
450 val_t
static_type___MMType___local_class(val_t self
) {
451 struct trace_t trace
= {NULL
, "static_type::MMType::local_class (src/metamodel//static_type.nit:190,2--191:31)"};
452 trace
.prev
= tracehead
; tracehead
= &trace
;
453 fprintf(stderr
, "Deferred method local_class called (src/metamodel//static_type.nit:190,2)\n");
455 tracehead
= trace
.prev
;
458 val_t
static_type___MMType_____l(val_t self
, val_t param0
) {
459 struct trace_t trace
= {NULL
, "static_type::MMType::< (src/metamodel//static_type.nit:193,2--194:25)"};
460 trace
.prev
= tracehead
; tracehead
= &trace
;
461 fprintf(stderr
, "Deferred method < called (src/metamodel//static_type.nit:193,2)\n");
463 tracehead
= trace
.prev
;
466 val_t
static_type___MMType___is_supertype(val_t self
, val_t param0
) {
467 struct trace_t trace
= {NULL
, "static_type::MMType::is_supertype (src/metamodel//static_type.nit:196,2--199:35)"};
468 trace
.prev
= tracehead
; tracehead
= &trace
;
469 fprintf(stderr
, "Deferred method is_supertype called (src/metamodel//static_type.nit:196,2)\n");
471 tracehead
= trace
.prev
;
474 val_t
static_type___MMType___select_method(val_t self
, val_t param0
) {
475 struct trace_t trace
= {NULL
, "static_type::MMType::select_method (src/metamodel//static_type.nit:201,2--208:12)"};
479 trace
.prev
= tracehead
; tracehead
= &trace
;
481 variable1
= ((static_type___MMType___local_class_t
)CALL( self
,COLOR_static_type___MMType___local_class
))( self
) /*MMType::local_class*/;
482 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::==*/)))))));
483 if (!UNTAG_Bool(variable1
)) { fprintf(stderr
, "Assert failed: src/metamodel//static_type.nit:204,3--28\n"); nit_exit(1);}
484 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::==*/)))))));
485 if (!UNTAG_Bool(variable1
)) { fprintf(stderr
, "Assert failed: src/metamodel//static_type.nit:205,3--21\n"); nit_exit(1);}
486 variable2
= ((static_type___MMType___local_class_t
)CALL( self
,COLOR_static_type___MMType___local_class
))( self
) /*MMType::local_class*/;
487 variable2
= ((abstractmetamodel___MMLocalClass___method_t
)CALL(variable2
,COLOR_abstractmetamodel___MMLocalClass___method
))(variable2
, variable0
/*name*/) /*MMLocalClass::method*/;
488 variable2
= ((static_type___MMType___select_property_t
)CALL( self
,COLOR_static_type___MMType___select_property
))( self
, variable2
) /*MMType::select_property*/;
489 variable1
= variable2
;
490 variable2
= TAG_Bool(( variable1
/*res*/==NIT_NULL
) || VAL_ISA( variable1
/*res*/, COLOR_MMMethod
, ID_MMMethod
)) /*cast MMMethod*/;
491 if (!UNTAG_Bool(variable2
)) { fprintf(stderr
, "Assert failed: src/metamodel//static_type.nit:207,3--25\n"); nit_exit(1);}
492 variable1
= variable1
/*res*/;
494 return_label17
: while(false);
495 tracehead
= trace
.prev
;
498 val_t
static_type___MMType___select_attribute(val_t self
, val_t param0
) {
499 struct trace_t trace
= {NULL
, "static_type::MMType::select_attribute (src/metamodel//static_type.nit:211,2--218:12)"};
503 trace
.prev
= tracehead
; tracehead
= &trace
;
505 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::==*/)))))));
506 if (!UNTAG_Bool(variable1
)) { fprintf(stderr
, "Assert failed: src/metamodel//static_type.nit:214,3--21\n"); nit_exit(1);}
507 variable1
= ((static_type___MMType___local_class_t
)CALL( self
,COLOR_static_type___MMType___local_class
))( self
) /*MMType::local_class*/;
508 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::==*/)))))));
509 if (!UNTAG_Bool(variable1
)) { fprintf(stderr
, "Assert failed: src/metamodel//static_type.nit:215,3--28\n"); nit_exit(1);}
510 variable2
= ((static_type___MMType___local_class_t
)CALL( self
,COLOR_static_type___MMType___local_class
))( self
) /*MMType::local_class*/;
511 variable2
= ((abstractmetamodel___MMLocalClass___attribute_t
)CALL(variable2
,COLOR_abstractmetamodel___MMLocalClass___attribute
))(variable2
, variable0
/*name*/) /*MMLocalClass::attribute*/;
512 variable2
= ((static_type___MMType___select_property_t
)CALL( self
,COLOR_static_type___MMType___select_property
))( self
, variable2
) /*MMType::select_property*/;
513 variable1
= variable2
;
514 variable2
= TAG_Bool(( variable1
/*res*/==NIT_NULL
) || VAL_ISA( variable1
/*res*/, COLOR_MMAttribute
, ID_MMAttribute
)) /*cast MMAttribute*/;
515 if (!UNTAG_Bool(variable2
)) { fprintf(stderr
, "Assert failed: src/metamodel//static_type.nit:217,3--28\n"); nit_exit(1);}
516 variable1
= variable1
/*res*/;
518 return_label18
: while(false);
519 tracehead
= trace
.prev
;
522 val_t
static_type___MMType___select_property(val_t self
, val_t param0
) {
523 struct trace_t trace
= {NULL
, "static_type::MMType::select_property (src/metamodel//static_type.nit:221,2--222:59)"};
524 trace
.prev
= tracehead
; tracehead
= &trace
;
525 fprintf(stderr
, "Deferred method select_property called (src/metamodel//static_type.nit:221,2)\n");
527 tracehead
= trace
.prev
;
530 val_t
static_type___MMType___for_module(val_t self
, val_t param0
) {
531 struct trace_t trace
= {NULL
, "static_type::MMType::for_module (src/metamodel//static_type.nit:224,2--225:39)"};
532 trace
.prev
= tracehead
; tracehead
= &trace
;
533 fprintf(stderr
, "Deferred method for_module called (src/metamodel//static_type.nit:224,2)\n");
535 tracehead
= trace
.prev
;
538 val_t
static_type___MMType___adapt_to(val_t self
, val_t param0
) {
539 struct trace_t trace
= {NULL
, "static_type::MMType::adapt_to (src/metamodel//static_type.nit:227,2--229:36)"};
540 trace
.prev
= tracehead
; tracehead
= &trace
;
541 fprintf(stderr
, "Deferred method adapt_to called (src/metamodel//static_type.nit:227,2)\n");
543 tracehead
= trace
.prev
;
546 val_t
static_type___MMType___upcast_for(val_t self
, val_t param0
) {
547 struct trace_t trace
= {NULL
, "static_type::MMType::upcast_for (src/metamodel//static_type.nit:231,2--233:41)"};
548 trace
.prev
= tracehead
; tracehead
= &trace
;
549 fprintf(stderr
, "Deferred method upcast_for called (src/metamodel//static_type.nit:231,2)\n");
551 tracehead
= trace
.prev
;
554 val_t
static_type___MMType___not_for_self(val_t self
) {
555 struct trace_t trace
= {NULL
, "static_type::MMType::not_for_self (src/metamodel//static_type.nit:235,2--237:41)"};
557 trace
.prev
= tracehead
; tracehead
= &trace
;
560 return_label19
: while(false);
561 tracehead
= trace
.prev
;
564 val_t
static_type___MMTypeClass___local_class(val_t self
) {
565 struct trace_t trace
= {NULL
, "static_type::MMTypeClass::local_class (src/metamodel//static_type.nit:242,2--47)"};
566 trace
.prev
= tracehead
; tracehead
= &trace
;
567 tracehead
= trace
.prev
;
568 return ATTR_static_type___MMTypeClass____local_class( self
) /*MMTypeClass::_local_class*/;
570 val_t
static_type___MMTypeClass___module(val_t self
) {
571 struct trace_t trace
= {NULL
, "static_type::MMTypeClass::module (src/metamodel//static_type.nit:243,2--48)"};
573 trace
.prev
= tracehead
; tracehead
= &trace
;
574 variable0
= ATTR_static_type___MMTypeClass____local_class( self
) /*MMTypeClass::_local_class*/;
575 variable0
= ((abstractmetamodel___MMLocalClass___module_t
)CALL(variable0
,COLOR_abstractmetamodel___MMLocalClass___module
))(variable0
) /*MMLocalClass::module*/;
577 return_label20
: while(false);
578 tracehead
= trace
.prev
;
581 val_t
static_type___MMTypeClass_____l(val_t self
, val_t param0
) {
582 struct trace_t trace
= {NULL
, "static_type::MMTypeClass::< (src/metamodel//static_type.nit:244,2--60)"};
586 trace
.prev
= tracehead
; tracehead
= &trace
;
588 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::==*/)))))));
589 variable2
= variable1
;
590 if (UNTAG_Bool(variable2
)) { /* and */
591 variable2
= ((static_type___MMType___is_supertype_t
)CALL( variable0
/*t*/,COLOR_static_type___MMType___is_supertype
))( variable0
/*t*/, self
) /*MMType::is_supertype*/;
593 variable1
= variable2
;
595 return_label21
: while(false);
596 tracehead
= trace
.prev
;
599 val_t
static_type___MMTypeClass___to_s(val_t self
) {
600 struct trace_t trace
= {NULL
, "static_type::MMTypeClass::to_s (src/metamodel//static_type.nit:246,2--248:26)"};
602 trace
.prev
= tracehead
; tracehead
= &trace
;
603 variable0
= ATTR_static_type___MMTypeClass____local_class( self
) /*MMTypeClass::_local_class*/;
604 variable0
= ((abstractmetamodel___MMLocalClass___to_s_t
)CALL(variable0
,COLOR_string___Object___to_s
))(variable0
) /*MMLocalClass::to_s*/;
606 return_label22
: while(false);
607 tracehead
= trace
.prev
;
610 val_t
static_type___MMTypeClass___upcast_for(val_t self
, val_t param0
) {
611 struct trace_t trace
= {NULL
, "static_type::MMTypeClass::upcast_for (src/metamodel//static_type.nit:251,2--261:10)"};
615 trace
.prev
= tracehead
; tracehead
= &trace
;
617 variable1
= ATTR_static_type___MMTypeClass____local_class( self
) /*MMTypeClass::_local_class*/;
618 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::==*/)))))));
619 if (!UNTAG_Bool(variable1
)) { fprintf(stderr
, "Assert failed: src/metamodel//static_type.nit:253,3--29\n"); nit_exit(1);}
620 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::==*/)))))));
621 if (!UNTAG_Bool(variable1
)) { fprintf(stderr
, "Assert failed: src/metamodel//static_type.nit:254,3--18\n"); nit_exit(1);}
623 variable2
= ATTR_static_type___MMTypeClass____local_class( self
) /*MMTypeClass::_local_class*/;
624 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::==*/)))))));
625 if (UNTAG_Bool(variable2
)) { /*if*/
626 variable2
= ATTR_static_type___MMTypeClass____local_class( self
) /*MMTypeClass::_local_class*/;
627 variable2
= ((static_type___MMLocalClass___ancestor_t
)CALL(variable2
,COLOR_static_type___MMLocalClass___ancestor
))(variable2
, variable0
/*c*/) /*MMLocalClass::ancestor*/;
628 variable1
= variable2
/*t=*/;
630 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::==*/)))))));
631 if (!UNTAG_Bool(variable2
)) { fprintf(stderr
, "Assert failed: src/metamodel//static_type.nit:260,3--18\n"); nit_exit(1);}
632 variable1
= variable1
/*t*/;
634 return_label23
: while(false);
635 tracehead
= trace
.prev
;
638 void static_type___MMTypeClass___init(val_t self
, val_t param0
, int* init_table
) {
639 struct trace_t trace
= {NULL
, "static_type::MMTypeClass::init (src/metamodel//static_type.nit:264,2--266:18)"};
641 trace
.prev
= tracehead
; tracehead
= &trace
;
643 if (init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_MMTypeClass
].i
]) return;
644 ATTR_static_type___MMTypeClass____local_class( self
) /*MMTypeClass::_local_class*/ = variable0
/*c*/;
645 init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_MMTypeClass
].i
] = 1;
646 tracehead
= trace
.prev
;
649 val_t
static_type___MMTypeSimpleClass___is_supertype(val_t self
, val_t param0
) {
650 struct trace_t trace
= {NULL
, "static_type::MMTypeSimpleClass::is_supertype (src/metamodel//static_type.nit:272,2--274:44)"};
654 trace
.prev
= tracehead
; tracehead
= &trace
;
656 variable1
= ((static_type___MMType___local_class_t
)CALL( variable0
/*t*/,COLOR_static_type___MMType___local_class
))( variable0
/*t*/) /*MMType::local_class*/;
657 variable1
= ((abstractmetamodel___MMLocalClass___cshe_t
)CALL(variable1
,COLOR_abstractmetamodel___MMLocalClass___cshe
))(variable1
) /*MMLocalClass::cshe*/;
658 variable2
= ATTR_static_type___MMTypeClass____local_class( self
) /*MMTypeSimpleClass::_local_class*/;
659 variable1
= ((partial_order___PartialOrderElement_____leq_t
)CALL(variable1
,COLOR_partial_order___PartialOrderElement_____leq
))(variable1
, variable2
) /*PartialOrderElement::<=*/;
661 return_label25
: while(false);
662 tracehead
= trace
.prev
;
665 val_t
static_type___MMTypeSimpleClass___select_property(val_t self
, val_t param0
) {
666 struct trace_t trace
= {NULL
, "static_type::MMTypeSimpleClass::select_property (src/metamodel//static_type.nit:277,2--283:23)"};
669 trace
.prev
= tracehead
; tracehead
= &trace
;
671 variable1
= ATTR_static_type___MMTypeClass____local_class( self
) /*MMTypeSimpleClass::_local_class*/;
672 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::==*/)))))));
673 if (!UNTAG_Bool(variable1
)) { fprintf(stderr
, "Assert failed: src/metamodel//static_type.nit:279,3--29\n"); nit_exit(1);}
674 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::==*/)))));
675 if (UNTAG_Bool(variable1
)) { /*if*/
676 variable1
= NIT_NULL
/*null*/;
679 variable1
= ATTR_static_type___MMTypeClass____local_class( self
) /*MMTypeSimpleClass::_local_class*/;
680 variable1
= ((abstractmetamodel___MMLocalClass_____bra_t
)CALL(variable1
,COLOR_abstractmetamodel___MMLocalClass_____bra
))(variable1
, variable0
/*g*/) /*MMLocalClass::[]*/;
682 return_label26
: while(false);
683 tracehead
= trace
.prev
;
686 val_t
static_type___MMTypeSimpleClass___for_module(val_t self
, val_t param0
) {
687 struct trace_t trace
= {NULL
, "static_type::MMTypeSimpleClass::for_module (src/metamodel//static_type.nit:286,2--293:10)"};
691 trace
.prev
= tracehead
; tracehead
= &trace
;
694 variable2
= ((static_type___MMTypeClass___module_t
)CALL( self
,COLOR_static_type___MMType___module
))( self
) /*MMTypeSimpleClass::module*/;
695 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::==*/)))))));
696 if (UNTAG_Bool(variable2
)) { /*if*/
697 variable2
= ATTR_static_type___MMTypeClass____local_class( self
) /*MMTypeSimpleClass::_local_class*/;
698 variable2
= ((abstractmetamodel___MMLocalClass___for_module_t
)CALL(variable2
,COLOR_abstractmetamodel___MMLocalClass___for_module
))(variable2
, variable0
/*mod*/) /*MMLocalClass::for_module*/;
699 variable2
= ((static_type___MMLocalClass___get_type_t
)CALL(variable2
,COLOR_static_type___MMLocalClass___get_type
))(variable2
) /*MMLocalClass::get_type*/;
700 variable1
= variable2
/*t=*/;
702 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::==*/)))))));
703 if (!UNTAG_Bool(variable2
)) { fprintf(stderr
, "Assert failed: src/metamodel//static_type.nit:292,3--18\n"); nit_exit(1);}
704 variable1
= variable1
/*t*/;
706 return_label27
: while(false);
707 tracehead
= trace
.prev
;
710 val_t
static_type___MMTypeSimpleClass___adapt_to(val_t self
, val_t param0
) {
711 struct trace_t trace
= {NULL
, "static_type::MMTypeSimpleClass::adapt_to (src/metamodel//static_type.nit:296,2--41)"};
714 trace
.prev
= tracehead
; tracehead
= &trace
;
718 return_label28
: while(false);
719 tracehead
= trace
.prev
;
722 void static_type___MMTypeSimpleClass___init(val_t self
, val_t param0
, int* init_table
) {
723 struct trace_t trace
= {NULL
, "static_type::MMTypeSimpleClass::init (src/metamodel//static_type.nit:298,2--300:9)"};
725 trace
.prev
= tracehead
; tracehead
= &trace
;
727 if (init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_MMTypeSimpleClass
].i
]) return;
728 ((static_type___MMTypeClass___init_t
)CALL( self
,COLOR_static_type___MMTypeClass___init
))( self
, variable0
/*c*/, init_table
/*YYY*/) /*MMTypeClass::init*/;
729 init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_MMTypeSimpleClass
].i
] = 1;
730 tracehead
= trace
.prev
;
733 val_t
static_type___MMTypeNone___module(val_t self
) {
734 struct trace_t trace
= {NULL
, "static_type::MMTypeNone::module (src/metamodel//static_type.nit:307,3--39)"};
735 trace
.prev
= tracehead
; tracehead
= &trace
;
736 tracehead
= trace
.prev
;
737 return ATTR_static_type___MMTypeNone____module( self
) /*MMTypeNone::_module*/;
739 val_t
static_type___MMTypeNone_____l(val_t self
, val_t param0
) {
740 struct trace_t trace
= {NULL
, "static_type::MMTypeNone::< (src/metamodel//static_type.nit:308,3--32)"};
743 trace
.prev
= tracehead
; tracehead
= &trace
;
745 variable1
= TAG_Bool(true);
747 return_label30
: while(false);
748 tracehead
= trace
.prev
;
751 val_t
static_type___MMTypeNone___is_supertype(val_t self
, val_t param0
) {
752 struct trace_t trace
= {NULL
, "static_type::MMTypeNone::is_supertype (src/metamodel//static_type.nit:309,3--44)"};
755 trace
.prev
= tracehead
; tracehead
= &trace
;
757 variable1
= TAG_Bool(false);
759 return_label31
: while(false);
760 tracehead
= trace
.prev
;
763 val_t
static_type___MMTypeNone___local_class(val_t self
) {
764 struct trace_t trace
= {NULL
, "static_type::MMTypeNone::local_class (src/metamodel//static_type.nit:310,3--33)"};
766 trace
.prev
= tracehead
; tracehead
= &trace
;
767 fprintf(stderr
, "Aborted: src/metamodel//static_type.nit:310,29--33\n"); nit_exit(1);
768 tracehead
= trace
.prev
;
771 val_t
static_type___MMTypeNone___upcast_for(val_t self
, val_t param0
) {
772 struct trace_t trace
= {NULL
, "static_type::MMTypeNone::upcast_for (src/metamodel//static_type.nit:311,3--41)"};
775 trace
.prev
= tracehead
; tracehead
= &trace
;
779 return_label33
: while(false);
780 tracehead
= trace
.prev
;
783 void static_type___MMTypeNone___init(val_t self
, val_t param0
, int* init_table
) {
784 struct trace_t trace
= {NULL
, "static_type::MMTypeNone::init (src/metamodel//static_type.nit:313,2--41)"};
786 trace
.prev
= tracehead
; tracehead
= &trace
;
788 if (init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_MMTypeNone
].i
]) return;
789 ATTR_static_type___MMTypeNone____module( self
) /*MMTypeNone::_module*/ = variable0
/*m*/;
790 init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_MMTypeNone
].i
] = 1;
791 tracehead
= trace
.prev
;
794 val_t
static_type___MMModule___type_none(val_t self
) {
795 struct trace_t trace
= {NULL
, "static_type::MMModule::type_none (src/metamodel//static_type.nit:317,2--318:59)"};
796 trace
.prev
= tracehead
; tracehead
= &trace
;
797 tracehead
= trace
.prev
;
798 return ATTR_static_type___MMModule____type_none( self
) /*MMModule::_type_none*/;