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 p0
){
4 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
8 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
9 fra
.me
.file
= LOCATE_static_type
;
11 fra
.me
.meth
= LOCATE_static_type___MMLocalClass___get_type
;
14 fra
.me
.REG
[0] = NIT_NULL
;
15 fra
.me
.REG
[1] = NIT_NULL
;
17 /* ./metamodel//static_type.nit:30 */
18 fra
.me
.REG
[1] = ATTR_static_type___MMLocalClass____base_type_cache(fra
.me
.REG
[0]);
19 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
20 if (UNTAG_Bool(REGB0
)) {
22 REGB1
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
23 if (UNTAG_Bool(REGB1
)) {
24 REGB1
= TAG_Bool(false);
27 REGB1
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[1])(fra
.me
.REG
[1], NIT_NULL
);
31 if (UNTAG_Bool(REGB0
)) {
32 fra
.me
.REG
[1] = NEW_MMTypeSimpleClass_static_type___MMTypeSimpleClass___init(fra
.me
.REG
[0]);
33 ATTR_static_type___MMLocalClass____base_type_cache(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
35 /* ./metamodel//static_type.nit:31 */
36 fra
.me
.REG
[0] = ATTR_static_type___MMLocalClass____base_type_cache(fra
.me
.REG
[0]);
37 REGB0
= TAG_Bool(fra
.me
.REG
[0]!=NIT_NULL
);
38 if (UNTAG_Bool(REGB0
)) {
40 nit_abort("Cast failed", NULL
, LOCATE_static_type
, 31);
44 stack_frame_head
= fra
.me
.prev
;
47 void static_type___MMLocalClass___add_ancestor(val_t p0
, val_t p1
){
48 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
52 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
53 fra
.me
.file
= LOCATE_static_type
;
55 fra
.me
.meth
= LOCATE_static_type___MMLocalClass___add_ancestor
;
58 fra
.me
.REG
[0] = NIT_NULL
;
59 fra
.me
.REG
[1] = NIT_NULL
;
60 fra
.me
.REG
[2] = NIT_NULL
;
61 fra
.me
.REG
[3] = NIT_NULL
;
64 /* ./metamodel//static_type.nit:37 */
65 fra
.me
.REG
[2] = ATTR_static_type___MMLocalClass____ancestors(fra
.me
.REG
[0]);
66 fra
.me
.REG
[3] = CALL_static_type___MMAncestor___local_class(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
67 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
68 if (UNTAG_Bool(REGB0
)) {
69 nit_abort("Reciever is null", NULL
, LOCATE_static_type
, 37);
71 REGB0
= CALL_abstract_collection___MapRead___has_key(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
72 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
73 if (UNTAG_Bool(REGB0
)) {
75 nit_abort("Assert failed", NULL
, LOCATE_static_type
, 37);
77 /* ./metamodel//static_type.nit:38 */
78 fra
.me
.REG
[3] = CALL_static_type___MMAncestor___local_class(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
79 REGB0
= TAG_Bool(IS_EQUAL_OO(fra
.me
.REG
[3],fra
.me
.REG
[0]));
80 if (UNTAG_Bool(REGB0
)) {
82 REGB1
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[0]);
85 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
86 if (UNTAG_Bool(REGB0
)) {
88 nit_abort("Assert failed", NULL
, LOCATE_static_type
, 38);
90 /* ./metamodel//static_type.nit:39 */
91 fra
.me
.REG
[0] = ATTR_static_type___MMLocalClass____ancestors(fra
.me
.REG
[0]);
92 fra
.me
.REG
[3] = CALL_static_type___MMAncestor___local_class(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
93 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
94 if (UNTAG_Bool(REGB0
)) {
95 nit_abort("Reciever is null", NULL
, LOCATE_static_type
, 39);
97 CALL_abstract_collection___Map_____braeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[3], fra
.me
.REG
[1]);
98 stack_frame_head
= fra
.me
.prev
;
101 val_t
static_type___MMLocalClass___ancestors(val_t p0
){
102 struct {struct stack_frame_t me
;} fra
;
104 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
105 fra
.me
.file
= LOCATE_static_type
;
107 fra
.me
.meth
= LOCATE_static_type___MMLocalClass___ancestors
;
108 fra
.me
.has_broke
= 0;
110 fra
.me
.REG
[0] = NIT_NULL
;
112 /* ./metamodel//static_type.nit:42 */
113 fra
.me
.REG
[0] = ATTR_static_type___MMLocalClass____ancestors(fra
.me
.REG
[0]);
114 stack_frame_head
= fra
.me
.prev
;
115 return fra
.me
.REG
[0];
117 val_t
static_type___MMLocalClass___ancestor(val_t p0
, val_t p1
){
118 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
121 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
122 fra
.me
.file
= LOCATE_static_type
;
124 fra
.me
.meth
= LOCATE_static_type___MMLocalClass___ancestor
;
125 fra
.me
.has_broke
= 0;
127 fra
.me
.REG
[0] = NIT_NULL
;
128 fra
.me
.REG
[1] = NIT_NULL
;
131 /* ./metamodel//static_type.nit:48 */
132 fra
.me
.REG
[0] = ATTR_static_type___MMLocalClass____ancestors(fra
.me
.REG
[0]);
133 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
134 if (UNTAG_Bool(REGB0
)) {
135 nit_abort("Reciever is null", NULL
, LOCATE_static_type
, 48);
137 fra
.me
.REG
[1] = CALL_abstract_collection___MapRead_____bra(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
138 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
139 if (UNTAG_Bool(REGB0
)) {
140 nit_abort("Reciever is null", NULL
, LOCATE_static_type
, 48);
142 fra
.me
.REG
[1] = CALL_static_type___MMAncestor___stype(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
145 stack_frame_head
= fra
.me
.prev
;
146 return fra
.me
.REG
[1];
148 val_t
static_type___MMLocalProperty___signature(val_t p0
){
149 struct {struct stack_frame_t me
;} fra
;
151 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
152 fra
.me
.file
= LOCATE_static_type
;
154 fra
.me
.meth
= LOCATE_static_type___MMLocalProperty___signature
;
155 fra
.me
.has_broke
= 0;
157 fra
.me
.REG
[0] = NIT_NULL
;
159 /* ./metamodel//static_type.nit:53 */
160 fra
.me
.REG
[0] = ATTR_static_type___MMLocalProperty____signature(fra
.me
.REG
[0]);
161 stack_frame_head
= fra
.me
.prev
;
162 return fra
.me
.REG
[0];
164 void static_type___MMLocalProperty___signature__eq(val_t p0
, val_t p1
){
165 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
167 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
168 fra
.me
.file
= LOCATE_static_type
;
170 fra
.me
.meth
= LOCATE_static_type___MMLocalProperty___signature__eq
;
171 fra
.me
.has_broke
= 0;
173 fra
.me
.REG
[0] = NIT_NULL
;
174 fra
.me
.REG
[1] = NIT_NULL
;
177 /* ./metamodel//static_type.nit:53 */
178 ATTR_static_type___MMLocalProperty____signature(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
179 stack_frame_head
= fra
.me
.prev
;
182 val_t
static_type___MMLocalProperty___signature_for(val_t p0
, val_t p1
){
183 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
187 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
188 fra
.me
.file
= LOCATE_static_type
;
190 fra
.me
.meth
= LOCATE_static_type___MMLocalProperty___signature_for
;
191 fra
.me
.has_broke
= 0;
193 fra
.me
.REG
[0] = NIT_NULL
;
194 fra
.me
.REG
[1] = NIT_NULL
;
195 fra
.me
.REG
[2] = NIT_NULL
;
196 fra
.me
.REG
[3] = NIT_NULL
;
199 /* ./metamodel//static_type.nit:60 */
200 fra
.me
.REG
[2] = CALL_abstractmetamodel___MMLocalProperty___local_class(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
201 fra
.me
.REG
[2] = CALL_static_type___MMLocalClass___get_type(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
202 REGB0
= TAG_Bool(IS_EQUAL_OO(fra
.me
.REG
[1],fra
.me
.REG
[2]));
203 if (UNTAG_Bool(REGB0
)) {
205 REGB1
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
208 if (UNTAG_Bool(REGB0
)) {
209 fra
.me
.REG
[2] = CALL_static_type___MMLocalProperty___signature(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
210 REGB0
= TAG_Bool(fra
.me
.REG
[2]!=NIT_NULL
);
211 if (UNTAG_Bool(REGB0
)) {
213 nit_abort("Cast failed", NULL
, LOCATE_static_type
, 60);
217 /* ./metamodel//static_type.nit:62 */
218 REGB0
= TAG_Bool(ATTR_static_type___MMLocalProperty____signatures_cache(fra
.me
.REG
[0])!=NIT_NULL
);
219 if (UNTAG_Bool(REGB0
)) {
221 nit_abort("Uninitialized attribute %s", "_signatures_cache", LOCATE_static_type
, 62);
223 fra
.me
.REG
[3] = ATTR_static_type___MMLocalProperty____signatures_cache(fra
.me
.REG
[0]);
224 REGB0
= CALL_abstract_collection___MapRead___has_key(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[1]);
225 if (UNTAG_Bool(REGB0
)) {
226 REGB0
= TAG_Bool(ATTR_static_type___MMLocalProperty____signatures_cache(fra
.me
.REG
[0])!=NIT_NULL
);
227 if (UNTAG_Bool(REGB0
)) {
229 nit_abort("Uninitialized attribute %s", "_signatures_cache", LOCATE_static_type
, 62);
231 fra
.me
.REG
[3] = ATTR_static_type___MMLocalProperty____signatures_cache(fra
.me
.REG
[0]);
232 fra
.me
.REG
[3] = CALL_abstract_collection___MapRead_____bra(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[1]);
233 fra
.me
.REG
[2] = fra
.me
.REG
[3];
236 /* ./metamodel//static_type.nit:64 */
237 fra
.me
.REG
[3] = CALL_static_type___MMLocalProperty___signature(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
238 REGB0
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
239 if (UNTAG_Bool(REGB0
)) {
240 nit_abort("Reciever is null", NULL
, LOCATE_static_type
, 64);
242 fra
.me
.REG
[3] = CALL_static_type___MMSignature___adaptation_to(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[1]);
243 /* ./metamodel//static_type.nit:65 */
244 REGB0
= TAG_Bool(ATTR_static_type___MMLocalProperty____signatures_cache(fra
.me
.REG
[0])!=NIT_NULL
);
245 if (UNTAG_Bool(REGB0
)) {
247 nit_abort("Uninitialized attribute %s", "_signatures_cache", LOCATE_static_type
, 65);
249 fra
.me
.REG
[0] = ATTR_static_type___MMLocalProperty____signatures_cache(fra
.me
.REG
[0]);
250 CALL_abstract_collection___Map_____braeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], fra
.me
.REG
[3]);
251 /* ./metamodel//static_type.nit:66 */
252 fra
.me
.REG
[2] = fra
.me
.REG
[3];
255 stack_frame_head
= fra
.me
.prev
;
256 return fra
.me
.REG
[2];
258 val_t
static_type___MMSignature___recv(val_t p0
){
259 struct {struct stack_frame_t me
;} fra
;
262 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
263 fra
.me
.file
= LOCATE_static_type
;
265 fra
.me
.meth
= LOCATE_static_type___MMSignature___recv
;
266 fra
.me
.has_broke
= 0;
268 fra
.me
.REG
[0] = NIT_NULL
;
270 /* ./metamodel//static_type.nit:72 */
271 REGB0
= TAG_Bool(ATTR_static_type___MMSignature____recv(fra
.me
.REG
[0])!=NIT_NULL
);
272 if (UNTAG_Bool(REGB0
)) {
274 nit_abort("Uninitialized attribute %s", "_recv", LOCATE_static_type
, 72);
276 fra
.me
.REG
[0] = ATTR_static_type___MMSignature____recv(fra
.me
.REG
[0]);
277 stack_frame_head
= fra
.me
.prev
;
278 return fra
.me
.REG
[0];
280 val_t
static_type___MMSignature___return_type(val_t p0
){
281 struct {struct stack_frame_t me
;} fra
;
283 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
284 fra
.me
.file
= LOCATE_static_type
;
286 fra
.me
.meth
= LOCATE_static_type___MMSignature___return_type
;
287 fra
.me
.has_broke
= 0;
289 fra
.me
.REG
[0] = NIT_NULL
;
291 /* ./metamodel//static_type.nit:78 */
292 fra
.me
.REG
[0] = ATTR_static_type___MMSignature____return_type(fra
.me
.REG
[0]);
293 stack_frame_head
= fra
.me
.prev
;
294 return fra
.me
.REG
[0];
296 val_t
static_type___MMSignature___closures(val_t p0
){
297 struct {struct stack_frame_t me
;} fra
;
300 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
301 fra
.me
.file
= LOCATE_static_type
;
303 fra
.me
.meth
= LOCATE_static_type___MMSignature___closures
;
304 fra
.me
.has_broke
= 0;
306 fra
.me
.REG
[0] = NIT_NULL
;
308 /* ./metamodel//static_type.nit:81 */
309 REGB0
= TAG_Bool(ATTR_static_type___MMSignature____closures(fra
.me
.REG
[0])!=NIT_NULL
);
310 if (UNTAG_Bool(REGB0
)) {
312 nit_abort("Uninitialized attribute %s", "_closures", LOCATE_static_type
, 81);
314 fra
.me
.REG
[0] = ATTR_static_type___MMSignature____closures(fra
.me
.REG
[0]);
315 stack_frame_head
= fra
.me
.prev
;
316 return fra
.me
.REG
[0];
318 val_t
static_type___MMSignature___closure_named(val_t p0
, val_t p1
){
319 struct {struct stack_frame_t me
; val_t MORE_REG
[4];} fra
;
324 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
325 fra
.me
.file
= LOCATE_static_type
;
327 fra
.me
.meth
= LOCATE_static_type___MMSignature___closure_named
;
328 fra
.me
.has_broke
= 0;
330 fra
.me
.REG
[0] = NIT_NULL
;
331 fra
.me
.REG
[1] = NIT_NULL
;
332 fra
.me
.REG
[2] = NIT_NULL
;
333 fra
.me
.REG
[3] = NIT_NULL
;
334 fra
.me
.REG
[4] = NIT_NULL
;
337 /* ./metamodel//static_type.nit:87 */
338 REGB0
= TAG_Bool(ATTR_static_type___MMSignature____closures(fra
.me
.REG
[0])!=NIT_NULL
);
339 if (UNTAG_Bool(REGB0
)) {
341 nit_abort("Uninitialized attribute %s", "_closures", LOCATE_static_type
, 87);
343 fra
.me
.REG
[0] = ATTR_static_type___MMSignature____closures(fra
.me
.REG
[0]);
344 /* ./../lib/standard//collection//array.nit:234 */
346 /* ./../lib/standard//collection//array.nit:235 */
347 REGB1
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
348 if (UNTAG_Bool(REGB1
)) {
350 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 235);
352 REGB1
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0]);
353 /* ./../lib/standard//collection//array.nit:236 */
354 fra
.me
.REG
[2] = ATTR_array___Array____items(fra
.me
.REG
[0]);
355 /* ./../lib/standard//collection//array.nit:237 */
357 /* ./../lib/standard//collection//array.nit:23 */
358 REGB1
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
359 if (UNTAG_Bool(REGB1
)) {
361 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 23);
363 REGB1
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0]);
364 /* ./../lib/standard//kernel.nit:212 */
365 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
366 /* ./../lib/standard//collection//array.nit:237 */
367 if (UNTAG_Bool(REGB1
)) {
368 /* ./../lib/standard//collection//array.nit:238 */
369 REGB1
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
370 if (UNTAG_Bool(REGB1
)) {
371 nit_abort("Reciever is null", NULL
, LOCATE_array
, 238);
373 /* ./../lib/standard//collection//array.nit:654 */
374 fra
.me
.REG
[3] = ((Nit_NativeArray
)fra
.me
.REG
[2])->val
[UNTAG_Int(REGB0
)];
375 /* ./metamodel//static_type.nit:88 */
376 fra
.me
.REG
[4] = CALL_static_type___MMClosure___name(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
377 REGB1
= TAG_Bool(IS_EQUAL_OO(fra
.me
.REG
[4],fra
.me
.REG
[1]));
378 if (UNTAG_Bool(REGB1
)) {
380 REGB2
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[1]);
383 if (UNTAG_Bool(REGB1
)) {
386 /* ./../lib/standard//collection//array.nit:239 */
388 /* ./../lib/standard//kernel.nit:215 */
389 REGB1
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
390 /* ./../lib/standard//collection//array.nit:239 */
393 /* ./../lib/standard//collection//array.nit:237 */
398 /* ./metamodel//static_type.nit:90 */
399 fra
.me
.REG
[3] = NIT_NULL
;
402 stack_frame_head
= fra
.me
.prev
;
403 return fra
.me
.REG
[3];
405 val_t
static_type___MMSignature___arity(val_t p0
){
406 struct {struct stack_frame_t me
;} fra
;
409 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
410 fra
.me
.file
= LOCATE_static_type
;
412 fra
.me
.meth
= LOCATE_static_type___MMSignature___arity
;
413 fra
.me
.has_broke
= 0;
415 fra
.me
.REG
[0] = NIT_NULL
;
417 /* ./metamodel//static_type.nit:96 */
418 REGB0
= TAG_Bool(ATTR_static_type___MMSignature____params(fra
.me
.REG
[0])!=NIT_NULL
);
419 if (UNTAG_Bool(REGB0
)) {
421 nit_abort("Uninitialized attribute %s", "_params", LOCATE_static_type
, 96);
423 fra
.me
.REG
[0] = ATTR_static_type___MMSignature____params(fra
.me
.REG
[0]);
424 /* ./../lib/standard//collection//array.nit:23 */
425 REGB0
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
426 if (UNTAG_Bool(REGB0
)) {
428 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 23);
430 REGB0
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0]);
431 /* ./metamodel//static_type.nit:96 */
434 stack_frame_head
= fra
.me
.prev
;
437 val_t
static_type___MMSignature_____l(val_t p0
, val_t p1
){
438 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
447 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
448 fra
.me
.file
= LOCATE_static_type
;
450 fra
.me
.meth
= LOCATE_static_type___MMSignature_____l
;
451 fra
.me
.has_broke
= 0;
453 fra
.me
.REG
[0] = NIT_NULL
;
454 fra
.me
.REG
[1] = NIT_NULL
;
455 fra
.me
.REG
[2] = NIT_NULL
;
456 fra
.me
.REG
[3] = NIT_NULL
;
459 /* ./metamodel//static_type.nit:102 */
460 REGB0
= TAG_Bool(IS_EQUAL_OO(fra
.me
.REG
[0],fra
.me
.REG
[1]));
461 if (UNTAG_Bool(REGB0
)) {
463 REGB1
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
466 if (UNTAG_Bool(REGB0
)) {
467 /* ./metamodel//static_type.nit:103 */
468 REGB0
= TAG_Bool(true);
471 /* ./metamodel//static_type.nit:105 */
472 REGB1
= TAG_Bool(ATTR_static_type___MMSignature____recv(fra
.me
.REG
[0])!=NIT_NULL
);
473 if (UNTAG_Bool(REGB1
)) {
475 nit_abort("Uninitialized attribute %s", "_recv", LOCATE_static_type
, 105);
477 fra
.me
.REG
[2] = ATTR_static_type___MMSignature____recv(fra
.me
.REG
[0]);
478 fra
.me
.REG
[2] = CALL_static_type___MMType___mmmodule(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
479 fra
.me
.REG
[3] = CALL_static_type___MMSignature___recv(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
480 fra
.me
.REG
[3] = CALL_static_type___MMType___mmmodule(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
481 REGB1
= TAG_Bool(IS_EQUAL_OO(fra
.me
.REG
[2],fra
.me
.REG
[3]));
482 if (UNTAG_Bool(REGB1
)) {
484 REGB2
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
487 if (UNTAG_Bool(REGB1
)) {
489 nit_abort("Assert failed", NULL
, LOCATE_static_type
, 105);
491 /* ./metamodel//static_type.nit:106 */
492 fra
.me
.REG
[3] = ATTR_static_type___MMSignature____return_type(fra
.me
.REG
[0]);
493 /* ./metamodel//static_type.nit:107 */
494 fra
.me
.REG
[2] = CALL_static_type___MMSignature___return_type(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
495 /* ./metamodel//static_type.nit:108 */
496 REGB1
= CALL_static_type___MMSignature___arity(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
497 REGB2
= CALL_static_type___MMSignature___arity(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
498 REGB3
= TAG_Bool(IS_EQUAL_OO(REGB1
,REGB2
));
499 if (UNTAG_Bool(REGB3
)) {
501 /* ./../lib/standard//kernel.nit:207 */
502 REGB2
= TAG_Bool((REGB1
)==(REGB2
));
503 /* ./metamodel//static_type.nit:108 */
506 REGB3
= TAG_Bool(!UNTAG_Bool(REGB3
));
507 if (UNTAG_Bool(REGB3
)) {
508 REGB3
= TAG_Bool(true);
510 REGB2
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
511 if (UNTAG_Bool(REGB2
)) {
513 REGB1
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
514 if (UNTAG_Bool(REGB1
)) {
515 REGB1
= TAG_Bool(false);
518 REGB1
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[3])(fra
.me
.REG
[3], NIT_NULL
);
522 REGB1
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
523 if (UNTAG_Bool(REGB1
)) {
525 REGB4
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
526 if (UNTAG_Bool(REGB4
)) {
527 REGB4
= TAG_Bool(false);
530 REGB4
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], NIT_NULL
);
534 REGB4
= TAG_Bool(IS_EQUAL_OO(REGB2
,REGB1
));
535 if (UNTAG_Bool(REGB4
)) {
537 /* ./../lib/standard//kernel.nit:175 */
538 REGB1
= TAG_Bool((REGB2
)==(REGB1
));
539 /* ./metamodel//static_type.nit:108 */
542 REGB4
= TAG_Bool(!UNTAG_Bool(REGB4
));
545 if (UNTAG_Bool(REGB3
)) {
546 REGB3
= TAG_Bool(false);
550 /* ./metamodel//static_type.nit:109 */
551 REGB3
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
552 if (UNTAG_Bool(REGB3
)) {
554 REGB4
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
555 if (UNTAG_Bool(REGB4
)) {
556 REGB4
= TAG_Bool(false);
559 REGB4
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[3])(fra
.me
.REG
[3], NIT_NULL
);
563 REGB3
= TAG_Bool(!UNTAG_Bool(REGB3
));
564 if (UNTAG_Bool(REGB3
)) {
565 REGB3
= TAG_Bool(fra
.me
.REG
[2]!=NIT_NULL
);
566 if (UNTAG_Bool(REGB3
)) {
568 nit_abort("Cast failed", NULL
, LOCATE_static_type
, 109);
570 REGB3
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
571 if (UNTAG_Bool(REGB3
)) {
572 nit_abort("Reciever is null", NULL
, LOCATE_static_type
, 109);
574 REGB3
= CALL_static_type___MMType_____l(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[2]);
575 REGB3
= TAG_Bool(!UNTAG_Bool(REGB3
));
577 REGB4
= TAG_Bool(false);
580 if (UNTAG_Bool(REGB3
)) {
581 /* ./metamodel//static_type.nit:110 */
582 REGB3
= TAG_Bool(false);
586 /* ./metamodel//static_type.nit:113 */
588 REGB4
= CALL_static_type___MMSignature___arity(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
589 /* ./../lib/standard//kernel.nit:332 */
591 /* ./../lib/standard//kernel.nit:212 */
592 REGB1
= TAG_Bool(UNTAG_Int(REGB3
)<UNTAG_Int(REGB4
));
593 /* ./../lib/standard//kernel.nit:332 */
594 if (UNTAG_Bool(REGB1
)) {
595 /* ./metamodel//static_type.nit:113 */
597 /* ./metamodel//static_type.nit:114 */
598 fra
.me
.REG
[2] = CALL_static_type___MMSignature_____bra(fra
.me
.REG
[1])(fra
.me
.REG
[1], REGB1
);
599 fra
.me
.REG
[3] = CALL_static_type___MMSignature_____bra(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB1
);
600 REGB1
= CALL_static_type___MMType_____l(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
601 REGB1
= TAG_Bool(!UNTAG_Bool(REGB1
));
602 if (UNTAG_Bool(REGB1
)) {
603 /* ./metamodel//static_type.nit:115 */
604 REGB1
= TAG_Bool(false);
608 /* ./../lib/standard//kernel.nit:334 */
610 /* ./../lib/standard//kernel.nit:215 */
611 REGB1
= TAG_Int(UNTAG_Int(REGB3
)+UNTAG_Int(REGB1
));
612 /* ./../lib/standard//kernel.nit:334 */
615 /* ./../lib/standard//kernel.nit:332 */
620 /* ./metamodel//static_type.nit:119 */
621 fra
.me
.REG
[3] = CALL_static_type___MMSignature___closures(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
622 /* ./../lib/standard//collection//array.nit:23 */
623 REGB3
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[3])!=NIT_NULL
);
624 if (UNTAG_Bool(REGB3
)) {
626 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 23);
628 REGB3
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[3]);
629 /* ./metamodel//static_type.nit:119 */
630 fra
.me
.REG
[3] = CALL_static_type___MMSignature___closures(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
631 /* ./../lib/standard//collection//array.nit:23 */
632 REGB4
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[3])!=NIT_NULL
);
633 if (UNTAG_Bool(REGB4
)) {
635 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 23);
637 REGB4
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[3]);
638 /* ./metamodel//static_type.nit:119 */
639 REGB1
= TAG_Bool(IS_EQUAL_OO(REGB3
,REGB4
));
640 if (UNTAG_Bool(REGB1
)) {
642 /* ./../lib/standard//kernel.nit:207 */
643 REGB4
= TAG_Bool((REGB3
)==(REGB4
));
644 /* ./metamodel//static_type.nit:119 */
647 REGB1
= TAG_Bool(!UNTAG_Bool(REGB1
));
648 if (UNTAG_Bool(REGB1
)) {
649 REGB1
= TAG_Bool(false);
653 /* ./metamodel//static_type.nit:120 */
655 fra
.me
.REG
[3] = CALL_static_type___MMSignature___closures(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
656 /* ./../lib/standard//collection//array.nit:23 */
657 REGB4
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[3])!=NIT_NULL
);
658 if (UNTAG_Bool(REGB4
)) {
660 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 23);
662 REGB4
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[3]);
663 /* ./../lib/standard//kernel.nit:332 */
665 /* ./../lib/standard//kernel.nit:212 */
666 REGB3
= TAG_Bool(UNTAG_Int(REGB1
)<UNTAG_Int(REGB4
));
667 /* ./../lib/standard//kernel.nit:332 */
668 if (UNTAG_Bool(REGB3
)) {
669 /* ./metamodel//static_type.nit:120 */
671 /* ./metamodel//static_type.nit:121 */
672 fra
.me
.REG
[3] = CALL_static_type___MMSignature___closures(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
673 /* ./../lib/standard//collection//array.nit:243 */
675 /* ./../lib/standard//collection//array.nit:245 */
677 /* ./../lib/standard//kernel.nit:213 */
678 REGB5
= TAG_Bool(UNTAG_Int(REGB2
)>=UNTAG_Int(REGB5
));
679 /* ./../lib/standard//collection//array.nit:245 */
680 if (UNTAG_Bool(REGB5
)) {
681 REGB5
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[3])!=NIT_NULL
);
682 if (UNTAG_Bool(REGB5
)) {
684 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 245);
686 REGB5
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[3]);
687 /* ./../lib/standard//kernel.nit:212 */
688 REGB5
= TAG_Bool(UNTAG_Int(REGB2
)<UNTAG_Int(REGB5
));
690 /* ./../lib/standard//collection//array.nit:245 */
691 REGB6
= TAG_Bool(false);
694 if (UNTAG_Bool(REGB5
)) {
696 nit_abort("Assert %s failed", "'index'", LOCATE_array
, 245);
698 /* ./../lib/standard//collection//array.nit:246 */
699 fra
.me
.REG
[3] = ATTR_array___Array____items(fra
.me
.REG
[3]);
700 REGB5
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
701 if (UNTAG_Bool(REGB5
)) {
702 nit_abort("Reciever is null", NULL
, LOCATE_array
, 246);
704 /* ./../lib/standard//collection//array.nit:654 */
705 fra
.me
.REG
[3] = ((Nit_NativeArray
)fra
.me
.REG
[3])->val
[UNTAG_Int(REGB2
)];
706 /* ./../lib/standard//collection//array.nit:246 */
709 /* ./metamodel//static_type.nit:121 */
710 fra
.me
.REG
[2] = CALL_static_type___MMSignature___closures(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
711 /* ./../lib/standard//collection//array.nit:245 */
713 /* ./../lib/standard//kernel.nit:213 */
714 REGB2
= TAG_Bool(UNTAG_Int(REGB3
)>=UNTAG_Int(REGB2
));
715 /* ./../lib/standard//collection//array.nit:245 */
716 if (UNTAG_Bool(REGB2
)) {
717 REGB2
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
718 if (UNTAG_Bool(REGB2
)) {
720 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 245);
722 REGB2
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[2]);
723 /* ./../lib/standard//kernel.nit:212 */
724 REGB2
= TAG_Bool(UNTAG_Int(REGB3
)<UNTAG_Int(REGB2
));
726 /* ./../lib/standard//collection//array.nit:245 */
727 REGB5
= TAG_Bool(false);
730 if (UNTAG_Bool(REGB2
)) {
732 nit_abort("Assert %s failed", "'index'", LOCATE_array
, 245);
734 /* ./../lib/standard//collection//array.nit:246 */
735 fra
.me
.REG
[2] = ATTR_array___Array____items(fra
.me
.REG
[2]);
736 REGB2
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
737 if (UNTAG_Bool(REGB2
)) {
738 nit_abort("Reciever is null", NULL
, LOCATE_array
, 246);
740 /* ./../lib/standard//collection//array.nit:654 */
741 fra
.me
.REG
[2] = ((Nit_NativeArray
)fra
.me
.REG
[2])->val
[UNTAG_Int(REGB3
)];
742 /* ./../lib/standard//collection//array.nit:246 */
745 /* ./metamodel//static_type.nit:121 */
746 REGB3
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
747 if (UNTAG_Bool(REGB3
)) {
748 nit_abort("Reciever is null", NULL
, LOCATE_static_type
, 121);
750 REGB3
= CALL_static_type___MMClosure_____l(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[2]);
751 REGB3
= TAG_Bool(!UNTAG_Bool(REGB3
));
752 if (UNTAG_Bool(REGB3
)) {
753 REGB3
= TAG_Bool(false);
757 /* ./../lib/standard//kernel.nit:334 */
759 /* ./../lib/standard//kernel.nit:215 */
760 REGB3
= TAG_Int(UNTAG_Int(REGB1
)+UNTAG_Int(REGB3
));
761 /* ./../lib/standard//kernel.nit:334 */
764 /* ./../lib/standard//kernel.nit:332 */
769 /* ./metamodel//static_type.nit:123 */
770 REGB1
= TAG_Bool(true);
774 stack_frame_head
= fra
.me
.prev
;
777 val_t
static_type___MMSignature_____bra(val_t p0
, val_t p1
){
778 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
783 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
784 fra
.me
.file
= LOCATE_static_type
;
786 fra
.me
.meth
= LOCATE_static_type___MMSignature_____bra
;
787 fra
.me
.has_broke
= 0;
789 fra
.me
.REG
[0] = NIT_NULL
;
790 fra
.me
.REG
[1] = NIT_NULL
;
793 /* ./metamodel//static_type.nit:129 */
794 REGB1
= TAG_Bool(ATTR_static_type___MMSignature____params(fra
.me
.REG
[0])!=NIT_NULL
);
795 if (UNTAG_Bool(REGB1
)) {
797 nit_abort("Uninitialized attribute %s", "_params", LOCATE_static_type
, 129);
799 fra
.me
.REG
[1] = ATTR_static_type___MMSignature____params(fra
.me
.REG
[0]);
800 /* ./../lib/standard//collection//array.nit:23 */
801 REGB1
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[1])!=NIT_NULL
);
802 if (UNTAG_Bool(REGB1
)) {
804 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 23);
806 REGB1
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[1]);
807 /* ./../lib/standard//kernel.nit:214 */
808 REGB1
= TAG_Bool(UNTAG_Int(REGB1
)>UNTAG_Int(REGB0
));
809 /* ./metamodel//static_type.nit:129 */
810 if (UNTAG_Bool(REGB1
)) {
812 nit_abort("Assert failed", NULL
, LOCATE_static_type
, 129);
814 /* ./metamodel//static_type.nit:130 */
815 REGB1
= TAG_Bool(ATTR_static_type___MMSignature____params(fra
.me
.REG
[0])!=NIT_NULL
);
816 if (UNTAG_Bool(REGB1
)) {
818 nit_abort("Uninitialized attribute %s", "_params", LOCATE_static_type
, 130);
820 fra
.me
.REG
[0] = ATTR_static_type___MMSignature____params(fra
.me
.REG
[0]);
821 /* ./../lib/standard//collection//array.nit:245 */
823 /* ./../lib/standard//kernel.nit:213 */
824 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB1
));
825 /* ./../lib/standard//collection//array.nit:245 */
826 if (UNTAG_Bool(REGB1
)) {
827 REGB1
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
828 if (UNTAG_Bool(REGB1
)) {
830 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 245);
832 REGB1
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0]);
833 /* ./../lib/standard//kernel.nit:212 */
834 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
836 /* ./../lib/standard//collection//array.nit:245 */
837 REGB2
= TAG_Bool(false);
840 if (UNTAG_Bool(REGB1
)) {
842 nit_abort("Assert %s failed", "'index'", LOCATE_array
, 245);
844 /* ./../lib/standard//collection//array.nit:246 */
845 fra
.me
.REG
[0] = ATTR_array___Array____items(fra
.me
.REG
[0]);
846 REGB1
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
847 if (UNTAG_Bool(REGB1
)) {
848 nit_abort("Reciever is null", NULL
, LOCATE_array
, 246);
850 /* ./../lib/standard//collection//array.nit:654 */
851 fra
.me
.REG
[0] = ((Nit_NativeArray
)fra
.me
.REG
[0])->val
[UNTAG_Int(REGB0
)];
852 /* ./../lib/standard//collection//array.nit:246 */
855 /* ./metamodel//static_type.nit:130 */
858 stack_frame_head
= fra
.me
.prev
;
859 return fra
.me
.REG
[0];
861 val_t
static_type___MMSignature___to_s(val_t p0
){
862 struct {struct stack_frame_t me
; val_t MORE_REG
[4];} fra
;
869 static val_t once_value_3
; /* Once value */
870 static val_t once_value_4
; /* Once value */
871 static val_t once_value_5
; /* Once value */
872 static val_t once_value_6
; /* Once value */
873 static val_t once_value_7
; /* Once value */
874 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
875 fra
.me
.file
= LOCATE_static_type
;
877 fra
.me
.meth
= LOCATE_static_type___MMSignature___to_s
;
878 fra
.me
.has_broke
= 0;
880 fra
.me
.REG
[0] = NIT_NULL
;
881 fra
.me
.REG
[1] = NIT_NULL
;
882 fra
.me
.REG
[2] = NIT_NULL
;
883 fra
.me
.REG
[3] = NIT_NULL
;
884 fra
.me
.REG
[4] = NIT_NULL
;
886 /* ./metamodel//static_type.nit:135 */
887 fra
.me
.REG
[1] = NEW_Buffer_string___Buffer___init();
888 /* ./metamodel//static_type.nit:136 */
889 REGB0
= TAG_Bool(ATTR_static_type___MMSignature____params(fra
.me
.REG
[0])!=NIT_NULL
);
890 if (UNTAG_Bool(REGB0
)) {
892 nit_abort("Uninitialized attribute %s", "_params", LOCATE_static_type
, 136);
894 fra
.me
.REG
[2] = ATTR_static_type___MMSignature____params(fra
.me
.REG
[0]);
895 /* ./../lib/standard//collection//array.nit:23 */
896 REGB0
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
897 if (UNTAG_Bool(REGB0
)) {
899 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 23);
901 REGB0
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[2]);
902 /* ./metamodel//static_type.nit:136 */
904 /* ./../lib/standard//kernel.nit:214 */
905 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>UNTAG_Int(REGB1
));
906 /* ./metamodel//static_type.nit:136 */
907 if (UNTAG_Bool(REGB1
)) {
908 /* ./metamodel//static_type.nit:138 */
909 REGB1
= TAG_Bool(ATTR_static_type___MMSignature____params(fra
.me
.REG
[0])!=NIT_NULL
);
910 if (UNTAG_Bool(REGB1
)) {
912 nit_abort("Uninitialized attribute %s", "_params", LOCATE_static_type
, 138);
914 fra
.me
.REG
[2] = ATTR_static_type___MMSignature____params(fra
.me
.REG
[0]);
915 /* ./../lib/standard//collection//array.nit:23 */
916 REGB1
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
917 if (UNTAG_Bool(REGB1
)) {
919 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 23);
921 REGB1
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[2]);
922 /* ./metamodel//static_type.nit:138 */
923 fra
.me
.REG
[2] = NEW_Array_array___Array___with_capacity(REGB1
);
924 /* ./metamodel//static_type.nit:139 */
926 REGB0
= TAG_Bool(ATTR_static_type___MMSignature____params(fra
.me
.REG
[0])!=NIT_NULL
);
927 if (UNTAG_Bool(REGB0
)) {
929 nit_abort("Uninitialized attribute %s", "_params", LOCATE_static_type
, 139);
931 fra
.me
.REG
[3] = ATTR_static_type___MMSignature____params(fra
.me
.REG
[0]);
932 /* ./../lib/standard//collection//array.nit:23 */
933 REGB0
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[3])!=NIT_NULL
);
934 if (UNTAG_Bool(REGB0
)) {
936 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 23);
938 REGB0
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[3]);
939 /* ./../lib/standard//kernel.nit:332 */
941 /* ./../lib/standard//kernel.nit:212 */
942 REGB2
= TAG_Bool(UNTAG_Int(REGB1
)<UNTAG_Int(REGB0
));
943 /* ./../lib/standard//kernel.nit:332 */
944 if (UNTAG_Bool(REGB2
)) {
945 /* ./metamodel//static_type.nit:139 */
947 /* ./metamodel//static_type.nit:141 */
948 REGB3
= TAG_Bool(ATTR_static_type___MMSignature____params(fra
.me
.REG
[0])!=NIT_NULL
);
949 if (UNTAG_Bool(REGB3
)) {
951 nit_abort("Uninitialized attribute %s", "_params", LOCATE_static_type
, 141);
953 fra
.me
.REG
[3] = ATTR_static_type___MMSignature____params(fra
.me
.REG
[0]);
954 /* ./../lib/standard//collection//array.nit:245 */
956 /* ./../lib/standard//kernel.nit:213 */
957 REGB3
= TAG_Bool(UNTAG_Int(REGB2
)>=UNTAG_Int(REGB3
));
958 /* ./../lib/standard//collection//array.nit:245 */
959 if (UNTAG_Bool(REGB3
)) {
960 REGB3
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[3])!=NIT_NULL
);
961 if (UNTAG_Bool(REGB3
)) {
963 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 245);
965 REGB3
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[3]);
966 /* ./../lib/standard//kernel.nit:212 */
967 REGB3
= TAG_Bool(UNTAG_Int(REGB2
)<UNTAG_Int(REGB3
));
969 /* ./../lib/standard//collection//array.nit:245 */
970 REGB4
= TAG_Bool(false);
973 if (UNTAG_Bool(REGB3
)) {
975 nit_abort("Assert %s failed", "'index'", LOCATE_array
, 245);
977 /* ./../lib/standard//collection//array.nit:246 */
978 fra
.me
.REG
[3] = ATTR_array___Array____items(fra
.me
.REG
[3]);
979 REGB3
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
980 if (UNTAG_Bool(REGB3
)) {
981 nit_abort("Reciever is null", NULL
, LOCATE_array
, 246);
983 /* ./../lib/standard//collection//array.nit:654 */
984 fra
.me
.REG
[3] = ((Nit_NativeArray
)fra
.me
.REG
[3])->val
[UNTAG_Int(REGB2
)];
985 /* ./../lib/standard//collection//array.nit:246 */
988 /* ./metamodel//static_type.nit:143 */
989 fra
.me
.REG
[3] = CALL_string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
990 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
991 /* ./../lib/standard//kernel.nit:334 */
993 /* ./../lib/standard//kernel.nit:215 */
994 REGB2
= TAG_Int(UNTAG_Int(REGB1
)+UNTAG_Int(REGB2
));
995 /* ./../lib/standard//kernel.nit:334 */
998 /* ./../lib/standard//kernel.nit:332 */
1003 /* ./metamodel//static_type.nit:145 */
1005 fra
.me
.REG
[3] = NEW_Array_array___Array___with_capacity(REGB1
);
1006 if (!once_value_3
) {
1007 fra
.me
.REG
[4] = BOX_NativeString("(");
1009 fra
.me
.REG
[4] = NEW_String_string___String___with_native(fra
.me
.REG
[4], REGB1
);
1010 once_value_3
= fra
.me
.REG
[4];
1011 register_static_object(&once_value_3
);
1012 } else fra
.me
.REG
[4] = once_value_3
;
1013 fra
.me
.REG
[4] = fra
.me
.REG
[4];
1014 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
1015 if (!once_value_4
) {
1016 fra
.me
.REG
[4] = BOX_NativeString(",");
1018 fra
.me
.REG
[4] = NEW_String_string___String___with_native(fra
.me
.REG
[4], REGB1
);
1019 once_value_4
= fra
.me
.REG
[4];
1020 register_static_object(&once_value_4
);
1021 } else fra
.me
.REG
[4] = once_value_4
;
1022 fra
.me
.REG
[4] = fra
.me
.REG
[4];
1023 fra
.me
.REG
[4] = CALL_string___Collection___join(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[4]);
1024 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
1025 if (!once_value_5
) {
1026 fra
.me
.REG
[4] = BOX_NativeString(")");
1028 fra
.me
.REG
[4] = NEW_String_string___String___with_native(fra
.me
.REG
[4], REGB1
);
1029 once_value_5
= fra
.me
.REG
[4];
1030 register_static_object(&once_value_5
);
1031 } else fra
.me
.REG
[4] = once_value_5
;
1032 fra
.me
.REG
[4] = fra
.me
.REG
[4];
1033 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
1034 fra
.me
.REG
[3] = CALL_string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
1035 CALL_abstract_collection___Sequence___append(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[3]);
1037 /* ./metamodel//static_type.nit:147 */
1038 fra
.me
.REG
[0] = ATTR_static_type___MMSignature____return_type(fra
.me
.REG
[0]);
1039 /* ./metamodel//static_type.nit:148 */
1040 REGB1
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
1041 if (UNTAG_Bool(REGB1
)) {
1043 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
1044 if (UNTAG_Bool(REGB0
)) {
1045 REGB0
= TAG_Bool(false);
1048 REGB0
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], NIT_NULL
);
1052 REGB1
= TAG_Bool(!UNTAG_Bool(REGB1
));
1053 if (UNTAG_Bool(REGB1
)) {
1055 fra
.me
.REG
[3] = NEW_Array_array___Array___with_capacity(REGB1
);
1056 if (!once_value_6
) {
1057 fra
.me
.REG
[4] = BOX_NativeString(": ");
1059 fra
.me
.REG
[4] = NEW_String_string___String___with_native(fra
.me
.REG
[4], REGB1
);
1060 once_value_6
= fra
.me
.REG
[4];
1061 register_static_object(&once_value_6
);
1062 } else fra
.me
.REG
[4] = once_value_6
;
1063 fra
.me
.REG
[4] = fra
.me
.REG
[4];
1064 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
1065 fra
.me
.REG
[0] = CALL_string___Object___to_s(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1066 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[0]);
1067 if (!once_value_7
) {
1068 fra
.me
.REG
[0] = BOX_NativeString("");
1070 fra
.me
.REG
[0] = NEW_String_string___String___with_native(fra
.me
.REG
[0], REGB1
);
1071 once_value_7
= fra
.me
.REG
[0];
1072 register_static_object(&once_value_7
);
1073 } else fra
.me
.REG
[0] = once_value_7
;
1074 fra
.me
.REG
[0] = fra
.me
.REG
[0];
1075 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[0]);
1076 fra
.me
.REG
[3] = CALL_string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
1077 CALL_abstract_collection___Sequence___append(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[3]);
1079 /* ./metamodel//static_type.nit:149 */
1080 fra
.me
.REG
[1] = CALL_string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1083 stack_frame_head
= fra
.me
.prev
;
1084 return fra
.me
.REG
[1];
1086 val_t
static_type___MMSignature___adaptation_to(val_t p0
, val_t p1
){
1087 struct {struct stack_frame_t me
; val_t MORE_REG
[7];} fra
;
1091 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1092 fra
.me
.file
= LOCATE_static_type
;
1094 fra
.me
.meth
= LOCATE_static_type___MMSignature___adaptation_to
;
1095 fra
.me
.has_broke
= 0;
1096 fra
.me
.REG_size
= 8;
1097 fra
.me
.REG
[0] = NIT_NULL
;
1098 fra
.me
.REG
[1] = NIT_NULL
;
1099 fra
.me
.REG
[2] = NIT_NULL
;
1100 fra
.me
.REG
[3] = NIT_NULL
;
1101 fra
.me
.REG
[4] = NIT_NULL
;
1102 fra
.me
.REG
[5] = NIT_NULL
;
1103 fra
.me
.REG
[6] = NIT_NULL
;
1104 fra
.me
.REG
[7] = NIT_NULL
;
1107 /* ./metamodel//static_type.nit:155 */
1108 REGB0
= TAG_Bool(ATTR_static_type___MMSignature____recv(fra
.me
.REG
[0])!=NIT_NULL
);
1109 if (UNTAG_Bool(REGB0
)) {
1111 nit_abort("Uninitialized attribute %s", "_recv", LOCATE_static_type
, 155);
1113 fra
.me
.REG
[2] = ATTR_static_type___MMSignature____recv(fra
.me
.REG
[0]);
1114 REGB0
= TAG_Bool(IS_EQUAL_OO(fra
.me
.REG
[2],fra
.me
.REG
[1]));
1115 if (UNTAG_Bool(REGB0
)) {
1117 REGB1
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
1120 if (UNTAG_Bool(REGB0
)) {
1121 /* ./metamodel//static_type.nit:156 */
1122 fra
.me
.REG
[2] = fra
.me
.REG
[0];
1125 /* ./metamodel//static_type.nit:158 */
1126 fra
.me
.REG
[3] = CALL_static_type___MMType___mmmodule(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1127 /* ./metamodel//static_type.nit:159 */
1128 fra
.me
.REG
[4] = NEW_Array_array___Array___init();
1129 /* ./metamodel//static_type.nit:160 */
1130 REGB0
= TAG_Bool(ATTR_static_type___MMSignature____params(fra
.me
.REG
[0])!=NIT_NULL
);
1131 if (UNTAG_Bool(REGB0
)) {
1133 nit_abort("Uninitialized attribute %s", "_params", LOCATE_static_type
, 160);
1135 fra
.me
.REG
[5] = ATTR_static_type___MMSignature____params(fra
.me
.REG
[0]);
1136 /* ./../lib/standard//collection//array.nit:234 */
1138 /* ./../lib/standard//collection//array.nit:235 */
1139 REGB1
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[5])!=NIT_NULL
);
1140 if (UNTAG_Bool(REGB1
)) {
1142 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 235);
1144 REGB1
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[5]);
1145 /* ./../lib/standard//collection//array.nit:236 */
1146 fra
.me
.REG
[6] = ATTR_array___Array____items(fra
.me
.REG
[5]);
1147 /* ./../lib/standard//collection//array.nit:237 */
1149 /* ./../lib/standard//collection//array.nit:23 */
1150 REGB1
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[5])!=NIT_NULL
);
1151 if (UNTAG_Bool(REGB1
)) {
1153 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 23);
1155 REGB1
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[5]);
1156 /* ./../lib/standard//kernel.nit:212 */
1157 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
1158 /* ./../lib/standard//collection//array.nit:237 */
1159 if (UNTAG_Bool(REGB1
)) {
1160 /* ./../lib/standard//collection//array.nit:238 */
1161 REGB1
= TAG_Bool(fra
.me
.REG
[6]==NIT_NULL
);
1162 if (UNTAG_Bool(REGB1
)) {
1163 nit_abort("Reciever is null", NULL
, LOCATE_array
, 238);
1165 /* ./../lib/standard//collection//array.nit:654 */
1166 fra
.me
.REG
[7] = ((Nit_NativeArray
)fra
.me
.REG
[6])->val
[UNTAG_Int(REGB0
)];
1167 /* ./metamodel//static_type.nit:161 */
1168 fra
.me
.REG
[7] = CALL_static_type___MMType___for_module(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[3]);
1169 fra
.me
.REG
[7] = CALL_static_type___MMType___adapt_to(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[1]);
1170 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[7]);
1171 /* ./../lib/standard//collection//array.nit:239 */
1173 /* ./../lib/standard//kernel.nit:215 */
1174 REGB1
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
1175 /* ./../lib/standard//collection//array.nit:239 */
1178 /* ./../lib/standard//collection//array.nit:237 */
1183 /* ./metamodel//static_type.nit:163 */
1184 fra
.me
.REG
[6] = ATTR_static_type___MMSignature____return_type(fra
.me
.REG
[0]);
1185 /* ./metamodel//static_type.nit:164 */
1186 REGB0
= TAG_Bool(fra
.me
.REG
[6]==NIT_NULL
);
1187 if (UNTAG_Bool(REGB0
)) {
1189 REGB1
= TAG_Bool(fra
.me
.REG
[6]==NIT_NULL
);
1190 if (UNTAG_Bool(REGB1
)) {
1191 REGB1
= TAG_Bool(false);
1194 REGB1
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[6])(fra
.me
.REG
[6], NIT_NULL
);
1198 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
1199 if (UNTAG_Bool(REGB0
)) {
1200 /* ./metamodel//static_type.nit:165 */
1201 REGB0
= TAG_Bool(fra
.me
.REG
[6]==NIT_NULL
);
1202 if (UNTAG_Bool(REGB0
)) {
1203 nit_abort("Reciever is null", NULL
, LOCATE_static_type
, 165);
1205 fra
.me
.REG
[3] = CALL_static_type___MMType___for_module(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[3]);
1206 fra
.me
.REG
[3] = CALL_static_type___MMType___adapt_to(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[1]);
1207 fra
.me
.REG
[6] = fra
.me
.REG
[3];
1209 /* ./metamodel//static_type.nit:167 */
1210 fra
.me
.REG
[6] = NEW_MMSignature_static_type___MMSignature___init(fra
.me
.REG
[4], fra
.me
.REG
[6], fra
.me
.REG
[1]);
1211 /* ./metamodel//static_type.nit:168 */
1212 REGB0
= TAG_Bool(ATTR_static_type___MMSignature____closures(fra
.me
.REG
[0])!=NIT_NULL
);
1213 if (UNTAG_Bool(REGB0
)) {
1215 nit_abort("Uninitialized attribute %s", "_closures", LOCATE_static_type
, 168);
1217 fra
.me
.REG
[0] = ATTR_static_type___MMSignature____closures(fra
.me
.REG
[0]);
1218 /* ./../lib/standard//collection//array.nit:234 */
1220 /* ./../lib/standard//collection//array.nit:235 */
1221 REGB1
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
1222 if (UNTAG_Bool(REGB1
)) {
1224 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 235);
1226 REGB1
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0]);
1227 /* ./../lib/standard//collection//array.nit:236 */
1228 fra
.me
.REG
[4] = ATTR_array___Array____items(fra
.me
.REG
[0]);
1229 /* ./../lib/standard//collection//array.nit:237 */
1231 /* ./../lib/standard//collection//array.nit:23 */
1232 REGB1
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
1233 if (UNTAG_Bool(REGB1
)) {
1235 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 23);
1237 REGB1
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0]);
1238 /* ./../lib/standard//kernel.nit:212 */
1239 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
1240 /* ./../lib/standard//collection//array.nit:237 */
1241 if (UNTAG_Bool(REGB1
)) {
1242 /* ./../lib/standard//collection//array.nit:238 */
1243 REGB1
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
1244 if (UNTAG_Bool(REGB1
)) {
1245 nit_abort("Reciever is null", NULL
, LOCATE_array
, 238);
1247 /* ./../lib/standard//collection//array.nit:654 */
1248 fra
.me
.REG
[3] = ((Nit_NativeArray
)fra
.me
.REG
[4])->val
[UNTAG_Int(REGB0
)];
1249 /* ./metamodel//static_type.nit:169 */
1250 fra
.me
.REG
[5] = CALL_static_type___MMSignature___closures(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
1251 fra
.me
.REG
[3] = CALL_static_type___MMClosure___adaptation_to(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[1]);
1252 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[3]);
1253 /* ./../lib/standard//collection//array.nit:239 */
1255 /* ./../lib/standard//kernel.nit:215 */
1256 REGB1
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
1257 /* ./../lib/standard//collection//array.nit:239 */
1260 /* ./../lib/standard//collection//array.nit:237 */
1265 /* ./metamodel//static_type.nit:171 */
1266 fra
.me
.REG
[2] = fra
.me
.REG
[6];
1269 stack_frame_head
= fra
.me
.prev
;
1270 return fra
.me
.REG
[2];
1272 val_t
static_type___MMSignature___not_for_self(val_t p0
){
1273 struct {struct stack_frame_t me
; val_t MORE_REG
[8];} fra
;
1279 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1280 fra
.me
.file
= LOCATE_static_type
;
1282 fra
.me
.meth
= LOCATE_static_type___MMSignature___not_for_self
;
1283 fra
.me
.has_broke
= 0;
1284 fra
.me
.REG_size
= 9;
1285 fra
.me
.REG
[0] = NIT_NULL
;
1286 fra
.me
.REG
[1] = NIT_NULL
;
1287 fra
.me
.REG
[2] = NIT_NULL
;
1288 fra
.me
.REG
[3] = NIT_NULL
;
1289 fra
.me
.REG
[4] = NIT_NULL
;
1290 fra
.me
.REG
[5] = NIT_NULL
;
1291 fra
.me
.REG
[6] = NIT_NULL
;
1292 fra
.me
.REG
[7] = NIT_NULL
;
1293 fra
.me
.REG
[8] = NIT_NULL
;
1295 /* ./metamodel//static_type.nit:180 */
1296 fra
.me
.REG
[1] = ATTR_static_type___MMSignature____not_for_self_cache(fra
.me
.REG
[0]);
1297 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
1298 if (UNTAG_Bool(REGB0
)) {
1300 REGB1
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
1301 if (UNTAG_Bool(REGB1
)) {
1302 REGB1
= TAG_Bool(false);
1305 REGB1
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[1])(fra
.me
.REG
[1], NIT_NULL
);
1309 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
1310 if (UNTAG_Bool(REGB0
)) {
1311 fra
.me
.REG
[1] = ATTR_static_type___MMSignature____not_for_self_cache(fra
.me
.REG
[0]);
1312 REGB0
= TAG_Bool(fra
.me
.REG
[1]!=NIT_NULL
);
1313 if (UNTAG_Bool(REGB0
)) {
1315 nit_abort("Cast failed", NULL
, LOCATE_static_type
, 180);
1319 /* ./metamodel//static_type.nit:182 */
1320 REGB0
= TAG_Bool(false);
1321 /* ./metamodel//static_type.nit:183 */
1322 fra
.me
.REG
[2] = NEW_Array_array___Array___init();
1323 /* ./metamodel//static_type.nit:184 */
1324 REGB1
= TAG_Bool(ATTR_static_type___MMSignature____params(fra
.me
.REG
[0])!=NIT_NULL
);
1325 if (UNTAG_Bool(REGB1
)) {
1327 nit_abort("Uninitialized attribute %s", "_params", LOCATE_static_type
, 184);
1329 fra
.me
.REG
[3] = ATTR_static_type___MMSignature____params(fra
.me
.REG
[0]);
1330 /* ./../lib/standard//collection//array.nit:234 */
1332 /* ./../lib/standard//collection//array.nit:235 */
1333 REGB2
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[3])!=NIT_NULL
);
1334 if (UNTAG_Bool(REGB2
)) {
1336 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 235);
1338 REGB2
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[3]);
1339 /* ./../lib/standard//collection//array.nit:236 */
1340 fra
.me
.REG
[4] = ATTR_array___Array____items(fra
.me
.REG
[3]);
1341 /* ./../lib/standard//collection//array.nit:237 */
1343 /* ./../lib/standard//collection//array.nit:23 */
1344 REGB2
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[3])!=NIT_NULL
);
1345 if (UNTAG_Bool(REGB2
)) {
1347 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 23);
1349 REGB2
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[3]);
1350 /* ./../lib/standard//kernel.nit:212 */
1351 REGB2
= TAG_Bool(UNTAG_Int(REGB1
)<UNTAG_Int(REGB2
));
1352 /* ./../lib/standard//collection//array.nit:237 */
1353 if (UNTAG_Bool(REGB2
)) {
1354 /* ./../lib/standard//collection//array.nit:238 */
1355 REGB2
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
1356 if (UNTAG_Bool(REGB2
)) {
1357 nit_abort("Reciever is null", NULL
, LOCATE_array
, 238);
1359 /* ./../lib/standard//collection//array.nit:654 */
1360 fra
.me
.REG
[5] = ((Nit_NativeArray
)fra
.me
.REG
[4])->val
[UNTAG_Int(REGB1
)];
1361 /* ./metamodel//static_type.nit:185 */
1362 fra
.me
.REG
[6] = CALL_static_type___MMType___not_for_self(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
1363 /* ./metamodel//static_type.nit:186 */
1364 REGB2
= TAG_Bool(IS_EQUAL_OO(fra
.me
.REG
[5],fra
.me
.REG
[6]));
1365 if (UNTAG_Bool(REGB2
)) {
1367 REGB3
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
1370 REGB2
= TAG_Bool(!UNTAG_Bool(REGB2
));
1371 if (UNTAG_Bool(REGB2
)) {
1372 REGB2
= TAG_Bool(true);
1375 /* ./metamodel//static_type.nit:187 */
1376 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[6]);
1377 /* ./../lib/standard//collection//array.nit:239 */
1379 /* ./../lib/standard//kernel.nit:215 */
1380 REGB2
= TAG_Int(UNTAG_Int(REGB1
)+UNTAG_Int(REGB2
));
1381 /* ./../lib/standard//collection//array.nit:239 */
1384 /* ./../lib/standard//collection//array.nit:237 */
1389 /* ./metamodel//static_type.nit:190 */
1390 fra
.me
.REG
[4] = ATTR_static_type___MMSignature____return_type(fra
.me
.REG
[0]);
1391 /* ./metamodel//static_type.nit:191 */
1392 REGB1
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
1393 if (UNTAG_Bool(REGB1
)) {
1395 REGB2
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
1396 if (UNTAG_Bool(REGB2
)) {
1397 REGB2
= TAG_Bool(false);
1400 REGB2
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[4])(fra
.me
.REG
[4], NIT_NULL
);
1404 REGB1
= TAG_Bool(!UNTAG_Bool(REGB1
));
1405 if (UNTAG_Bool(REGB1
)) {
1406 /* ./metamodel//static_type.nit:192 */
1407 REGB1
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
1408 if (UNTAG_Bool(REGB1
)) {
1409 nit_abort("Reciever is null", NULL
, LOCATE_static_type
, 192);
1411 fra
.me
.REG
[3] = CALL_static_type___MMType___not_for_self(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
1412 fra
.me
.REG
[4] = fra
.me
.REG
[3];
1413 /* ./metamodel//static_type.nit:193 */
1414 fra
.me
.REG
[3] = ATTR_static_type___MMSignature____return_type(fra
.me
.REG
[0]);
1415 REGB1
= TAG_Bool(IS_EQUAL_NN(fra
.me
.REG
[4],fra
.me
.REG
[3]));
1416 if (UNTAG_Bool(REGB1
)) {
1418 REGB2
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
1419 if (UNTAG_Bool(REGB2
)) {
1420 REGB2
= TAG_Bool(false);
1423 REGB2
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[3]);
1427 REGB1
= TAG_Bool(!UNTAG_Bool(REGB1
));
1428 if (UNTAG_Bool(REGB1
)) {
1429 REGB1
= TAG_Bool(true);
1433 /* ./metamodel//static_type.nit:196 */
1434 fra
.me
.REG
[3] = NEW_Array_array___Array___init();
1435 /* ./metamodel//static_type.nit:197 */
1436 REGB1
= TAG_Bool(ATTR_static_type___MMSignature____closures(fra
.me
.REG
[0])!=NIT_NULL
);
1437 if (UNTAG_Bool(REGB1
)) {
1439 nit_abort("Uninitialized attribute %s", "_closures", LOCATE_static_type
, 197);
1441 fra
.me
.REG
[6] = ATTR_static_type___MMSignature____closures(fra
.me
.REG
[0]);
1442 /* ./../lib/standard//collection//array.nit:234 */
1444 /* ./../lib/standard//collection//array.nit:235 */
1445 REGB2
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[6])!=NIT_NULL
);
1446 if (UNTAG_Bool(REGB2
)) {
1448 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 235);
1450 REGB2
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[6]);
1451 /* ./../lib/standard//collection//array.nit:236 */
1452 fra
.me
.REG
[5] = ATTR_array___Array____items(fra
.me
.REG
[6]);
1453 /* ./../lib/standard//collection//array.nit:237 */
1455 /* ./../lib/standard//collection//array.nit:23 */
1456 REGB2
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[6])!=NIT_NULL
);
1457 if (UNTAG_Bool(REGB2
)) {
1459 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 23);
1461 REGB2
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[6]);
1462 /* ./../lib/standard//kernel.nit:212 */
1463 REGB2
= TAG_Bool(UNTAG_Int(REGB1
)<UNTAG_Int(REGB2
));
1464 /* ./../lib/standard//collection//array.nit:237 */
1465 if (UNTAG_Bool(REGB2
)) {
1466 /* ./../lib/standard//collection//array.nit:238 */
1467 REGB2
= TAG_Bool(fra
.me
.REG
[5]==NIT_NULL
);
1468 if (UNTAG_Bool(REGB2
)) {
1469 nit_abort("Reciever is null", NULL
, LOCATE_array
, 238);
1471 /* ./../lib/standard//collection//array.nit:654 */
1472 fra
.me
.REG
[7] = ((Nit_NativeArray
)fra
.me
.REG
[5])->val
[UNTAG_Int(REGB1
)];
1473 /* ./metamodel//static_type.nit:198 */
1474 fra
.me
.REG
[8] = CALL_static_type___MMClosure___not_for_self(fra
.me
.REG
[7])(fra
.me
.REG
[7]);
1475 /* ./metamodel//static_type.nit:199 */
1476 REGB2
= TAG_Bool(IS_EQUAL_OO(fra
.me
.REG
[8],fra
.me
.REG
[7]));
1477 if (UNTAG_Bool(REGB2
)) {
1479 REGB3
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[8])(fra
.me
.REG
[8], fra
.me
.REG
[7]);
1482 REGB2
= TAG_Bool(!UNTAG_Bool(REGB2
));
1483 if (UNTAG_Bool(REGB2
)) {
1484 REGB2
= TAG_Bool(true);
1487 /* ./metamodel//static_type.nit:200 */
1488 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[8]);
1489 /* ./../lib/standard//collection//array.nit:239 */
1491 /* ./../lib/standard//kernel.nit:215 */
1492 REGB2
= TAG_Int(UNTAG_Int(REGB1
)+UNTAG_Int(REGB2
));
1493 /* ./../lib/standard//collection//array.nit:239 */
1496 /* ./../lib/standard//collection//array.nit:237 */
1501 /* ./metamodel//static_type.nit:204 */
1502 if (UNTAG_Bool(REGB0
)) {
1503 /* ./metamodel//static_type.nit:205 */
1504 REGB0
= TAG_Bool(ATTR_static_type___MMSignature____recv(fra
.me
.REG
[0])!=NIT_NULL
);
1505 if (UNTAG_Bool(REGB0
)) {
1507 nit_abort("Uninitialized attribute %s", "_recv", LOCATE_static_type
, 205);
1509 fra
.me
.REG
[5] = ATTR_static_type___MMSignature____recv(fra
.me
.REG
[0]);
1510 fra
.me
.REG
[5] = NEW_MMSignature_static_type___MMSignature___init(fra
.me
.REG
[2], fra
.me
.REG
[4], fra
.me
.REG
[5]);
1511 /* ./metamodel//static_type.nit:206 */
1512 fra
.me
.REG
[4] = CALL_static_type___MMSignature___closures(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
1513 CALL_abstract_collection___SimpleCollection___add_all(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[3]);
1515 /* ./metamodel//static_type.nit:208 */
1516 fra
.me
.REG
[5] = fra
.me
.REG
[0];
1518 /* ./metamodel//static_type.nit:211 */
1519 ATTR_static_type___MMSignature____not_for_self_cache(fra
.me
.REG
[0]) = fra
.me
.REG
[5];
1520 /* ./metamodel//static_type.nit:212 */
1521 fra
.me
.REG
[1] = fra
.me
.REG
[5];
1524 stack_frame_head
= fra
.me
.prev
;
1525 return fra
.me
.REG
[1];
1527 void static_type___MMSignature___init(val_t p0
, val_t p1
, val_t p2
, val_t p3
, int* init_table
){
1528 int itpos0
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_MMSignature
].i
;
1529 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
1531 if (init_table
[itpos0
]) return;
1532 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1533 fra
.me
.file
= LOCATE_static_type
;
1535 fra
.me
.meth
= LOCATE_static_type___MMSignature___init
;
1536 fra
.me
.has_broke
= 0;
1537 fra
.me
.REG_size
= 4;
1538 fra
.me
.REG
[0] = NIT_NULL
;
1539 fra
.me
.REG
[1] = NIT_NULL
;
1540 fra
.me
.REG
[2] = NIT_NULL
;
1541 fra
.me
.REG
[3] = NIT_NULL
;
1546 /* ./metamodel//static_type.nit:217 */
1547 ATTR_static_type___MMSignature____params(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
1548 /* ./metamodel//static_type.nit:218 */
1549 ATTR_static_type___MMSignature____return_type(fra
.me
.REG
[0]) = fra
.me
.REG
[2];
1550 /* ./metamodel//static_type.nit:219 */
1551 ATTR_static_type___MMSignature____recv(fra
.me
.REG
[0]) = fra
.me
.REG
[3];
1552 stack_frame_head
= fra
.me
.prev
;
1553 init_table
[itpos0
] = 1;
1556 val_t
static_type___MMClosure___name(val_t p0
){
1557 struct {struct stack_frame_t me
;} fra
;
1560 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1561 fra
.me
.file
= LOCATE_static_type
;
1563 fra
.me
.meth
= LOCATE_static_type___MMClosure___name
;
1564 fra
.me
.has_broke
= 0;
1565 fra
.me
.REG_size
= 1;
1566 fra
.me
.REG
[0] = NIT_NULL
;
1568 /* ./metamodel//static_type.nit:225 */
1569 REGB0
= TAG_Bool(ATTR_static_type___MMClosure____name(fra
.me
.REG
[0])!=NIT_NULL
);
1570 if (UNTAG_Bool(REGB0
)) {
1572 nit_abort("Uninitialized attribute %s", "_name", LOCATE_static_type
, 225);
1574 fra
.me
.REG
[0] = ATTR_static_type___MMClosure____name(fra
.me
.REG
[0]);
1575 stack_frame_head
= fra
.me
.prev
;
1576 return fra
.me
.REG
[0];
1578 val_t
static_type___MMClosure___signature(val_t p0
){
1579 struct {struct stack_frame_t me
;} fra
;
1582 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1583 fra
.me
.file
= LOCATE_static_type
;
1585 fra
.me
.meth
= LOCATE_static_type___MMClosure___signature
;
1586 fra
.me
.has_broke
= 0;
1587 fra
.me
.REG_size
= 1;
1588 fra
.me
.REG
[0] = NIT_NULL
;
1590 /* ./metamodel//static_type.nit:228 */
1591 REGB0
= TAG_Bool(ATTR_static_type___MMClosure____signature(fra
.me
.REG
[0])!=NIT_NULL
);
1592 if (UNTAG_Bool(REGB0
)) {
1594 nit_abort("Uninitialized attribute %s", "_signature", LOCATE_static_type
, 228);
1596 fra
.me
.REG
[0] = ATTR_static_type___MMClosure____signature(fra
.me
.REG
[0]);
1597 stack_frame_head
= fra
.me
.prev
;
1598 return fra
.me
.REG
[0];
1600 val_t
static_type___MMClosure___is_break(val_t p0
){
1601 struct {struct stack_frame_t me
;} fra
;
1604 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1605 fra
.me
.file
= LOCATE_static_type
;
1607 fra
.me
.meth
= LOCATE_static_type___MMClosure___is_break
;
1608 fra
.me
.has_broke
= 0;
1609 fra
.me
.REG_size
= 1;
1610 fra
.me
.REG
[0] = NIT_NULL
;
1612 /* ./metamodel//static_type.nit:231 */
1613 REGB0
= TAG_Bool(ATTR_static_type___MMClosure____is_break(fra
.me
.REG
[0])!=NIT_NULL
);
1614 if (UNTAG_Bool(REGB0
)) {
1616 nit_abort("Uninitialized attribute %s", "_is_break", LOCATE_static_type
, 231);
1618 REGB0
= ATTR_static_type___MMClosure____is_break(fra
.me
.REG
[0]);
1619 stack_frame_head
= fra
.me
.prev
;
1622 val_t
static_type___MMClosure___is_optional(val_t p0
){
1623 struct {struct stack_frame_t me
;} fra
;
1626 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1627 fra
.me
.file
= LOCATE_static_type
;
1629 fra
.me
.meth
= LOCATE_static_type___MMClosure___is_optional
;
1630 fra
.me
.has_broke
= 0;
1631 fra
.me
.REG_size
= 1;
1632 fra
.me
.REG
[0] = NIT_NULL
;
1634 /* ./metamodel//static_type.nit:235 */
1635 REGB0
= TAG_Bool(ATTR_static_type___MMClosure____is_optional(fra
.me
.REG
[0])!=NIT_NULL
);
1636 if (UNTAG_Bool(REGB0
)) {
1638 nit_abort("Uninitialized attribute %s", "_is_optional", LOCATE_static_type
, 235);
1640 REGB0
= ATTR_static_type___MMClosure____is_optional(fra
.me
.REG
[0]);
1641 stack_frame_head
= fra
.me
.prev
;
1644 val_t
static_type___MMClosure___adaptation_to(val_t p0
, val_t p1
){
1645 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
1649 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1650 fra
.me
.file
= LOCATE_static_type
;
1652 fra
.me
.meth
= LOCATE_static_type___MMClosure___adaptation_to
;
1653 fra
.me
.has_broke
= 0;
1654 fra
.me
.REG_size
= 4;
1655 fra
.me
.REG
[0] = NIT_NULL
;
1656 fra
.me
.REG
[1] = NIT_NULL
;
1657 fra
.me
.REG
[2] = NIT_NULL
;
1658 fra
.me
.REG
[3] = NIT_NULL
;
1661 /* ./metamodel//static_type.nit:242 */
1662 REGB0
= TAG_Bool(ATTR_static_type___MMClosure____name(fra
.me
.REG
[0])!=NIT_NULL
);
1663 if (UNTAG_Bool(REGB0
)) {
1665 nit_abort("Uninitialized attribute %s", "_name", LOCATE_static_type
, 242);
1667 fra
.me
.REG
[2] = ATTR_static_type___MMClosure____name(fra
.me
.REG
[0]);
1668 REGB0
= TAG_Bool(ATTR_static_type___MMClosure____signature(fra
.me
.REG
[0])!=NIT_NULL
);
1669 if (UNTAG_Bool(REGB0
)) {
1671 nit_abort("Uninitialized attribute %s", "_signature", LOCATE_static_type
, 242);
1673 fra
.me
.REG
[3] = ATTR_static_type___MMClosure____signature(fra
.me
.REG
[0]);
1674 fra
.me
.REG
[1] = CALL_static_type___MMSignature___adaptation_to(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[1]);
1675 REGB0
= TAG_Bool(ATTR_static_type___MMClosure____is_break(fra
.me
.REG
[0])!=NIT_NULL
);
1676 if (UNTAG_Bool(REGB0
)) {
1678 nit_abort("Uninitialized attribute %s", "_is_break", LOCATE_static_type
, 242);
1680 REGB0
= ATTR_static_type___MMClosure____is_break(fra
.me
.REG
[0]);
1681 REGB1
= TAG_Bool(ATTR_static_type___MMClosure____is_optional(fra
.me
.REG
[0])!=NIT_NULL
);
1682 if (UNTAG_Bool(REGB1
)) {
1684 nit_abort("Uninitialized attribute %s", "_is_optional", LOCATE_static_type
, 242);
1686 REGB1
= ATTR_static_type___MMClosure____is_optional(fra
.me
.REG
[0]);
1687 fra
.me
.REG
[1] = NEW_MMClosure_static_type___MMClosure___init(fra
.me
.REG
[2], fra
.me
.REG
[1], REGB0
, REGB1
);
1690 stack_frame_head
= fra
.me
.prev
;
1691 return fra
.me
.REG
[1];
1693 void static_type___MMClosure___init(val_t p0
, val_t p1
, val_t p2
, val_t p3
, val_t p4
, int* init_table
){
1694 int itpos1
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_MMClosure
].i
;
1695 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
1699 if (init_table
[itpos1
]) return;
1700 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1701 fra
.me
.file
= LOCATE_static_type
;
1703 fra
.me
.meth
= LOCATE_static_type___MMClosure___init
;
1704 fra
.me
.has_broke
= 0;
1705 fra
.me
.REG_size
= 3;
1706 fra
.me
.REG
[0] = NIT_NULL
;
1707 fra
.me
.REG
[1] = NIT_NULL
;
1708 fra
.me
.REG
[2] = NIT_NULL
;
1714 /* ./metamodel//static_type.nit:247 */
1715 ATTR_static_type___MMClosure____name(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
1716 /* ./metamodel//static_type.nit:248 */
1717 ATTR_static_type___MMClosure____signature(fra
.me
.REG
[0]) = fra
.me
.REG
[2];
1718 /* ./metamodel//static_type.nit:249 */
1719 ATTR_static_type___MMClosure____is_break(fra
.me
.REG
[0]) = REGB0
;
1720 /* ./metamodel//static_type.nit:250 */
1721 ATTR_static_type___MMClosure____is_optional(fra
.me
.REG
[0]) = REGB1
;
1722 stack_frame_head
= fra
.me
.prev
;
1723 init_table
[itpos1
] = 1;
1726 val_t
static_type___MMClosure___not_for_self(val_t p0
){
1727 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
1731 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1732 fra
.me
.file
= LOCATE_static_type
;
1734 fra
.me
.meth
= LOCATE_static_type___MMClosure___not_for_self
;
1735 fra
.me
.has_broke
= 0;
1736 fra
.me
.REG_size
= 3;
1737 fra
.me
.REG
[0] = NIT_NULL
;
1738 fra
.me
.REG
[1] = NIT_NULL
;
1739 fra
.me
.REG
[2] = NIT_NULL
;
1741 /* ./metamodel//static_type.nit:255 */
1742 REGB0
= TAG_Bool(ATTR_static_type___MMClosure____signature(fra
.me
.REG
[0])!=NIT_NULL
);
1743 if (UNTAG_Bool(REGB0
)) {
1745 nit_abort("Uninitialized attribute %s", "_signature", LOCATE_static_type
, 255);
1747 fra
.me
.REG
[1] = ATTR_static_type___MMClosure____signature(fra
.me
.REG
[0]);
1748 fra
.me
.REG
[1] = CALL_static_type___MMSignature___not_for_self(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1749 /* ./metamodel//static_type.nit:256 */
1750 REGB0
= TAG_Bool(ATTR_static_type___MMClosure____signature(fra
.me
.REG
[0])!=NIT_NULL
);
1751 if (UNTAG_Bool(REGB0
)) {
1753 nit_abort("Uninitialized attribute %s", "_signature", LOCATE_static_type
, 256);
1755 fra
.me
.REG
[2] = ATTR_static_type___MMClosure____signature(fra
.me
.REG
[0]);
1756 REGB0
= TAG_Bool(IS_EQUAL_OO(fra
.me
.REG
[1],fra
.me
.REG
[2]));
1757 if (UNTAG_Bool(REGB0
)) {
1759 REGB1
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
1762 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
1763 if (UNTAG_Bool(REGB0
)) {
1764 /* ./metamodel//static_type.nit:257 */
1765 REGB0
= TAG_Bool(ATTR_static_type___MMClosure____name(fra
.me
.REG
[0])!=NIT_NULL
);
1766 if (UNTAG_Bool(REGB0
)) {
1768 nit_abort("Uninitialized attribute %s", "_name", LOCATE_static_type
, 257);
1770 fra
.me
.REG
[2] = ATTR_static_type___MMClosure____name(fra
.me
.REG
[0]);
1771 REGB0
= TAG_Bool(ATTR_static_type___MMClosure____is_break(fra
.me
.REG
[0])!=NIT_NULL
);
1772 if (UNTAG_Bool(REGB0
)) {
1774 nit_abort("Uninitialized attribute %s", "_is_break", LOCATE_static_type
, 257);
1776 REGB0
= ATTR_static_type___MMClosure____is_break(fra
.me
.REG
[0]);
1777 REGB1
= TAG_Bool(ATTR_static_type___MMClosure____is_optional(fra
.me
.REG
[0])!=NIT_NULL
);
1778 if (UNTAG_Bool(REGB1
)) {
1780 nit_abort("Uninitialized attribute %s", "_is_optional", LOCATE_static_type
, 257);
1782 REGB1
= ATTR_static_type___MMClosure____is_optional(fra
.me
.REG
[0]);
1783 fra
.me
.REG
[1] = NEW_MMClosure_static_type___MMClosure___init(fra
.me
.REG
[2], fra
.me
.REG
[1], REGB0
, REGB1
);
1786 /* ./metamodel//static_type.nit:259 */
1787 fra
.me
.REG
[1] = fra
.me
.REG
[0];
1791 stack_frame_head
= fra
.me
.prev
;
1792 return fra
.me
.REG
[1];
1794 val_t
static_type___MMClosure_____l(val_t p0
, val_t p1
){
1795 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1800 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1801 fra
.me
.file
= LOCATE_static_type
;
1803 fra
.me
.meth
= LOCATE_static_type___MMClosure_____l
;
1804 fra
.me
.has_broke
= 0;
1805 fra
.me
.REG_size
= 2;
1806 fra
.me
.REG
[0] = NIT_NULL
;
1807 fra
.me
.REG
[1] = NIT_NULL
;
1810 /* ./metamodel//static_type.nit:265 */
1811 REGB0
= CALL_static_type___MMClosure___is_optional(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1812 if (UNTAG_Bool(REGB0
)) {
1813 REGB0
= CALL_static_type___MMClosure___is_optional(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1814 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
1816 REGB1
= TAG_Bool(false);
1819 if (UNTAG_Bool(REGB0
)) {
1820 REGB0
= TAG_Bool(false);
1823 /* ./metamodel//static_type.nit:266 */
1824 REGB1
= CALL_static_type___MMClosure___is_break(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1825 REGB1
= TAG_Bool(!UNTAG_Bool(REGB1
));
1826 if (UNTAG_Bool(REGB1
)) {
1827 REGB1
= CALL_static_type___MMClosure___is_break(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1829 REGB2
= TAG_Bool(false);
1832 if (UNTAG_Bool(REGB1
)) {
1833 REGB1
= TAG_Bool(false);
1837 /* ./metamodel//static_type.nit:267 */
1838 fra
.me
.REG
[1] = CALL_static_type___MMClosure___signature(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1839 fra
.me
.REG
[0] = CALL_static_type___MMClosure___signature(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1840 REGB1
= CALL_static_type___MMSignature_____l(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
1844 stack_frame_head
= fra
.me
.prev
;
1847 void static_type___MMAncestor___stype__eq(val_t p0
, val_t p1
){
1848 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1850 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1851 fra
.me
.file
= LOCATE_static_type
;
1853 fra
.me
.meth
= LOCATE_static_type___MMAncestor___stype__eq
;
1854 fra
.me
.has_broke
= 0;
1855 fra
.me
.REG_size
= 2;
1856 fra
.me
.REG
[0] = NIT_NULL
;
1857 fra
.me
.REG
[1] = NIT_NULL
;
1860 /* ./metamodel//static_type.nit:273 */
1861 ATTR_static_type___MMAncestor____stype(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
1862 stack_frame_head
= fra
.me
.prev
;
1865 val_t
static_type___MMAncestor___stype(val_t p0
){
1866 struct {struct stack_frame_t me
;} fra
;
1869 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1870 fra
.me
.file
= LOCATE_static_type
;
1872 fra
.me
.meth
= LOCATE_static_type___MMAncestor___stype
;
1873 fra
.me
.has_broke
= 0;
1874 fra
.me
.REG_size
= 1;
1875 fra
.me
.REG
[0] = NIT_NULL
;
1877 /* ./metamodel//static_type.nit:277 */
1878 fra
.me
.REG
[0] = ATTR_static_type___MMAncestor____stype(fra
.me
.REG
[0]);
1879 REGB0
= TAG_Bool(fra
.me
.REG
[0]!=NIT_NULL
);
1880 if (UNTAG_Bool(REGB0
)) {
1882 nit_abort("Cast failed", NULL
, LOCATE_static_type
, 277);
1886 stack_frame_head
= fra
.me
.prev
;
1887 return fra
.me
.REG
[0];
1889 void static_type___MMAncestor___inheriter__eq(val_t p0
, val_t p1
){
1890 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1892 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1893 fra
.me
.file
= LOCATE_static_type
;
1895 fra
.me
.meth
= LOCATE_static_type___MMAncestor___inheriter__eq
;
1896 fra
.me
.has_broke
= 0;
1897 fra
.me
.REG_size
= 2;
1898 fra
.me
.REG
[0] = NIT_NULL
;
1899 fra
.me
.REG
[1] = NIT_NULL
;
1902 /* ./metamodel//static_type.nit:279 */
1903 ATTR_static_type___MMAncestor____inheriter(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
1904 stack_frame_head
= fra
.me
.prev
;
1907 val_t
static_type___MMAncestor___inheriter(val_t p0
){
1908 struct {struct stack_frame_t me
;} fra
;
1911 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1912 fra
.me
.file
= LOCATE_static_type
;
1914 fra
.me
.meth
= LOCATE_static_type___MMAncestor___inheriter
;
1915 fra
.me
.has_broke
= 0;
1916 fra
.me
.REG_size
= 1;
1917 fra
.me
.REG
[0] = NIT_NULL
;
1919 /* ./metamodel//static_type.nit:283 */
1920 fra
.me
.REG
[0] = ATTR_static_type___MMAncestor____inheriter(fra
.me
.REG
[0]);
1921 REGB0
= TAG_Bool(fra
.me
.REG
[0]!=NIT_NULL
);
1922 if (UNTAG_Bool(REGB0
)) {
1924 nit_abort("Cast failed", NULL
, LOCATE_static_type
, 283);
1928 stack_frame_head
= fra
.me
.prev
;
1929 return fra
.me
.REG
[0];
1931 val_t
static_type___MMAncestor___is_reffinement(val_t p0
){
1932 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1936 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1937 fra
.me
.file
= LOCATE_static_type
;
1939 fra
.me
.meth
= LOCATE_static_type___MMAncestor___is_reffinement
;
1940 fra
.me
.has_broke
= 0;
1941 fra
.me
.REG_size
= 2;
1942 fra
.me
.REG
[0] = NIT_NULL
;
1943 fra
.me
.REG
[1] = NIT_NULL
;
1945 /* ./metamodel//static_type.nit:286 */
1946 fra
.me
.REG
[1] = CALL_static_type___MMAncestor___stype(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1947 fra
.me
.REG
[1] = CALL_static_type___MMType___mmmodule(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1948 fra
.me
.REG
[0] = CALL_static_type___MMAncestor___stype(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1949 fra
.me
.REG
[0] = CALL_static_type___MMType___mmmodule(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1950 REGB0
= TAG_Bool(IS_EQUAL_OO(fra
.me
.REG
[1],fra
.me
.REG
[0]));
1951 if (UNTAG_Bool(REGB0
)) {
1953 REGB1
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
1956 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
1959 stack_frame_head
= fra
.me
.prev
;
1962 val_t
static_type___MMAncestor___is_specialisation(val_t p0
){
1963 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1967 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1968 fra
.me
.file
= LOCATE_static_type
;
1970 fra
.me
.meth
= LOCATE_static_type___MMAncestor___is_specialisation
;
1971 fra
.me
.has_broke
= 0;
1972 fra
.me
.REG_size
= 2;
1973 fra
.me
.REG
[0] = NIT_NULL
;
1974 fra
.me
.REG
[1] = NIT_NULL
;
1976 /* ./metamodel//static_type.nit:290 */
1977 fra
.me
.REG
[1] = CALL_static_type___MMAncestor___stype(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1978 fra
.me
.REG
[1] = CALL_static_type___MMType___local_class(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1979 fra
.me
.REG
[1] = CALL_abstractmetamodel___MMLocalClass___global(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1980 fra
.me
.REG
[0] = CALL_static_type___MMAncestor___inheriter(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1981 fra
.me
.REG
[0] = CALL_static_type___MMType___local_class(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1982 fra
.me
.REG
[0] = CALL_abstractmetamodel___MMLocalClass___global(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1983 REGB0
= TAG_Bool(IS_EQUAL_OO(fra
.me
.REG
[1],fra
.me
.REG
[0]));
1984 if (UNTAG_Bool(REGB0
)) {
1986 REGB1
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
1989 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
1992 stack_frame_head
= fra
.me
.prev
;
1995 val_t
static_type___MMAncestor___local_class(val_t p0
){
1996 struct {struct stack_frame_t me
;} fra
;
1998 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1999 fra
.me
.file
= LOCATE_static_type
;
2001 fra
.me
.meth
= LOCATE_static_type___MMAncestor___local_class
;
2002 fra
.me
.has_broke
= 0;
2003 fra
.me
.REG_size
= 0;
2004 /* ./metamodel//static_type.nit:293 */
2005 nit_abort("Deferred method called", NULL
, LOCATE_static_type
, 293);
2006 stack_frame_head
= fra
.me
.prev
;
2009 val_t
static_type___MMAncestor___to_s(val_t p0
){
2010 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
2014 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2015 fra
.me
.file
= LOCATE_static_type
;
2017 fra
.me
.meth
= LOCATE_static_type___MMAncestor___to_s
;
2018 fra
.me
.has_broke
= 0;
2019 fra
.me
.REG_size
= 2;
2020 fra
.me
.REG
[0] = NIT_NULL
;
2021 fra
.me
.REG
[1] = NIT_NULL
;
2023 /* ./metamodel//static_type.nit:298 */
2024 fra
.me
.REG
[1] = ATTR_static_type___MMAncestor____stype(fra
.me
.REG
[0]);
2025 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
2026 if (UNTAG_Bool(REGB0
)) {
2028 REGB1
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
2029 if (UNTAG_Bool(REGB1
)) {
2030 REGB1
= TAG_Bool(false);
2033 REGB1
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[1])(fra
.me
.REG
[1], NIT_NULL
);
2037 if (UNTAG_Bool(REGB0
)) {
2038 /* ./metamodel//static_type.nit:299 */
2039 fra
.me
.REG
[1] = CALL_static_type___MMAncestor___local_class(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2040 fra
.me
.REG
[1] = CALL_string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
2043 /* ./metamodel//static_type.nit:301 */
2044 fra
.me
.REG
[0] = CALL_static_type___MMAncestor___stype(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2045 fra
.me
.REG
[0] = CALL_string___Object___to_s(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2046 fra
.me
.REG
[1] = fra
.me
.REG
[0];
2050 stack_frame_head
= fra
.me
.prev
;
2051 return fra
.me
.REG
[1];
2053 void static_type___MMAncestor___init(val_t p0
, int* init_table
){
2054 int itpos2
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_MMAncestor
].i
;
2055 struct {struct stack_frame_t me
;} fra
;
2057 if (init_table
[itpos2
]) return;
2058 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2059 fra
.me
.file
= LOCATE_static_type
;
2061 fra
.me
.meth
= LOCATE_static_type___MMAncestor___init
;
2062 fra
.me
.has_broke
= 0;
2063 fra
.me
.REG_size
= 0;
2064 stack_frame_head
= fra
.me
.prev
;
2065 init_table
[itpos2
] = 1;
2068 val_t
static_type___MMType___mmmodule(val_t p0
){
2069 struct {struct stack_frame_t me
;} fra
;
2071 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2072 fra
.me
.file
= LOCATE_static_type
;
2074 fra
.me
.meth
= LOCATE_static_type___MMType___mmmodule
;
2075 fra
.me
.has_broke
= 0;
2076 fra
.me
.REG_size
= 0;
2077 /* ./metamodel//static_type.nit:309 */
2078 nit_abort("Deferred method called", NULL
, LOCATE_static_type
, 309);
2079 stack_frame_head
= fra
.me
.prev
;
2082 val_t
static_type___MMType___local_class(val_t p0
){
2083 struct {struct stack_frame_t me
;} fra
;
2085 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2086 fra
.me
.file
= LOCATE_static_type
;
2088 fra
.me
.meth
= LOCATE_static_type___MMType___local_class
;
2089 fra
.me
.has_broke
= 0;
2090 fra
.me
.REG_size
= 0;
2091 /* ./metamodel//static_type.nit:312 */
2092 nit_abort("Deferred method called", NULL
, LOCATE_static_type
, 312);
2093 stack_frame_head
= fra
.me
.prev
;
2096 val_t
static_type___MMType___is_valid(val_t p0
){
2097 struct {struct stack_frame_t me
;} fra
;
2100 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2101 fra
.me
.file
= LOCATE_static_type
;
2103 fra
.me
.meth
= LOCATE_static_type___MMType___is_valid
;
2104 fra
.me
.has_broke
= 0;
2105 fra
.me
.REG_size
= 1;
2106 fra
.me
.REG
[0] = NIT_NULL
;
2108 /* ./metamodel//static_type.nit:317 */
2109 REGB0
= TAG_Bool(true);
2112 stack_frame_head
= fra
.me
.prev
;
2115 val_t
static_type___MMType_____l(val_t p0
, val_t p1
){
2116 struct {struct stack_frame_t me
;} fra
;
2118 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2119 fra
.me
.file
= LOCATE_static_type
;
2121 fra
.me
.meth
= LOCATE_static_type___MMType_____l
;
2122 fra
.me
.has_broke
= 0;
2123 fra
.me
.REG_size
= 0;
2124 /* ./metamodel//static_type.nit:319 */
2125 nit_abort("Deferred method called", NULL
, LOCATE_static_type
, 319);
2126 stack_frame_head
= fra
.me
.prev
;
2129 val_t
static_type___MMType___is_supertype(val_t p0
, val_t p1
){
2130 struct {struct stack_frame_t me
;} fra
;
2132 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2133 fra
.me
.file
= LOCATE_static_type
;
2135 fra
.me
.meth
= LOCATE_static_type___MMType___is_supertype
;
2136 fra
.me
.has_broke
= 0;
2137 fra
.me
.REG_size
= 0;
2138 /* ./metamodel//static_type.nit:322 */
2139 nit_abort("Deferred method called", NULL
, LOCATE_static_type
, 322);
2140 stack_frame_head
= fra
.me
.prev
;
2143 val_t
static_type___MMType___for_module(val_t p0
, val_t p1
){
2144 struct {struct stack_frame_t me
;} fra
;
2146 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2147 fra
.me
.file
= LOCATE_static_type
;
2149 fra
.me
.meth
= LOCATE_static_type___MMType___for_module
;
2150 fra
.me
.has_broke
= 0;
2151 fra
.me
.REG_size
= 0;
2152 /* ./metamodel//static_type.nit:327 */
2153 nit_abort("Deferred method called", NULL
, LOCATE_static_type
, 327);
2154 stack_frame_head
= fra
.me
.prev
;
2157 val_t
static_type___MMType___adapt_to(val_t p0
, val_t p1
){
2158 struct {struct stack_frame_t me
;} fra
;
2160 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2161 fra
.me
.file
= LOCATE_static_type
;
2163 fra
.me
.meth
= LOCATE_static_type___MMType___adapt_to
;
2164 fra
.me
.has_broke
= 0;
2165 fra
.me
.REG_size
= 0;
2166 /* ./metamodel//static_type.nit:330 */
2167 nit_abort("Deferred method called", NULL
, LOCATE_static_type
, 330);
2168 stack_frame_head
= fra
.me
.prev
;
2171 val_t
static_type___MMType___upcast_for(val_t p0
, val_t p1
){
2172 struct {struct stack_frame_t me
;} fra
;
2174 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2175 fra
.me
.file
= LOCATE_static_type
;
2177 fra
.me
.meth
= LOCATE_static_type___MMType___upcast_for
;
2178 fra
.me
.has_broke
= 0;
2179 fra
.me
.REG_size
= 0;
2180 /* ./metamodel//static_type.nit:334 */
2181 nit_abort("Deferred method called", NULL
, LOCATE_static_type
, 334);
2182 stack_frame_head
= fra
.me
.prev
;
2185 val_t
static_type___MMType___not_for_self(val_t p0
){
2186 struct {struct stack_frame_t me
;} fra
;
2188 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2189 fra
.me
.file
= LOCATE_static_type
;
2191 fra
.me
.meth
= LOCATE_static_type___MMType___not_for_self
;
2192 fra
.me
.has_broke
= 0;
2193 fra
.me
.REG_size
= 1;
2194 fra
.me
.REG
[0] = NIT_NULL
;
2196 /* ./metamodel//static_type.nit:358 */
2199 stack_frame_head
= fra
.me
.prev
;
2200 return fra
.me
.REG
[0];
2202 val_t
static_type___MMType___is_nullable(val_t p0
){
2203 struct {struct stack_frame_t me
;} fra
;
2206 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2207 fra
.me
.file
= LOCATE_static_type
;
2209 fra
.me
.meth
= LOCATE_static_type___MMType___is_nullable
;
2210 fra
.me
.has_broke
= 0;
2211 fra
.me
.REG_size
= 1;
2212 fra
.me
.REG
[0] = NIT_NULL
;
2214 /* ./metamodel//static_type.nit:364 */
2215 REGB0
= TAG_Bool(false);
2218 stack_frame_head
= fra
.me
.prev
;
2221 val_t
static_type___MMType___as_nullable(val_t p0
){
2222 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
2226 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2227 fra
.me
.file
= LOCATE_static_type
;
2229 fra
.me
.meth
= LOCATE_static_type___MMType___as_nullable
;
2230 fra
.me
.has_broke
= 0;
2231 fra
.me
.REG_size
= 3;
2232 fra
.me
.REG
[0] = NIT_NULL
;
2233 fra
.me
.REG
[1] = NIT_NULL
;
2234 fra
.me
.REG
[2] = NIT_NULL
;
2236 /* ./metamodel//static_type.nit:369 */
2237 fra
.me
.REG
[1] = ATTR_static_type___MMType____as_nullable_cache(fra
.me
.REG
[0]);
2238 /* ./metamodel//static_type.nit:370 */
2239 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
2240 if (UNTAG_Bool(REGB0
)) {
2242 REGB1
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
2243 if (UNTAG_Bool(REGB1
)) {
2244 REGB1
= TAG_Bool(false);
2247 REGB1
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[1])(fra
.me
.REG
[1], NIT_NULL
);
2251 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
2252 if (UNTAG_Bool(REGB0
)) {
2255 /* ./metamodel//static_type.nit:371 */
2256 fra
.me
.REG
[2] = NEW_MMNullableType_static_type___MMNullableType___init(fra
.me
.REG
[0]);
2257 /* ./metamodel//static_type.nit:372 */
2258 ATTR_static_type___MMType____as_nullable_cache(fra
.me
.REG
[0]) = fra
.me
.REG
[2];
2259 /* ./metamodel//static_type.nit:373 */
2260 fra
.me
.REG
[1] = fra
.me
.REG
[2];
2263 stack_frame_head
= fra
.me
.prev
;
2264 return fra
.me
.REG
[1];
2266 val_t
static_type___MMType___as_notnull(val_t p0
){
2267 struct {struct stack_frame_t me
;} fra
;
2269 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2270 fra
.me
.file
= LOCATE_static_type
;
2272 fra
.me
.meth
= LOCATE_static_type___MMType___as_notnull
;
2273 fra
.me
.has_broke
= 0;
2274 fra
.me
.REG_size
= 1;
2275 fra
.me
.REG
[0] = NIT_NULL
;
2277 /* ./metamodel//static_type.nit:378 */
2280 stack_frame_head
= fra
.me
.prev
;
2281 return fra
.me
.REG
[0];
2283 void static_type___MMType___init(val_t p0
, int* init_table
){
2284 int itpos3
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_MMType
].i
;
2285 struct {struct stack_frame_t me
;} fra
;
2287 if (init_table
[itpos3
]) return;
2288 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2289 fra
.me
.file
= LOCATE_static_type
;
2291 fra
.me
.meth
= LOCATE_static_type___MMType___init
;
2292 fra
.me
.has_broke
= 0;
2293 fra
.me
.REG_size
= 0;
2294 stack_frame_head
= fra
.me
.prev
;
2295 init_table
[itpos3
] = 1;
2298 val_t
static_type___MMNullableType___is_valid(val_t p0
){
2299 struct {struct stack_frame_t me
;} fra
;
2302 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2303 fra
.me
.file
= LOCATE_static_type
;
2305 fra
.me
.meth
= LOCATE_static_type___MMNullableType___is_valid
;
2306 fra
.me
.has_broke
= 0;
2307 fra
.me
.REG_size
= 1;
2308 fra
.me
.REG
[0] = NIT_NULL
;
2310 /* ./metamodel//static_type.nit:384 */
2311 REGB0
= TAG_Bool(ATTR_static_type___MMNullableType____base_type(fra
.me
.REG
[0])!=NIT_NULL
);
2312 if (UNTAG_Bool(REGB0
)) {
2314 nit_abort("Uninitialized attribute %s", "_base_type", LOCATE_static_type
, 384);
2316 fra
.me
.REG
[0] = ATTR_static_type___MMNullableType____base_type(fra
.me
.REG
[0]);
2317 REGB0
= CALL_static_type___MMType___is_valid(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2320 stack_frame_head
= fra
.me
.prev
;
2323 val_t
static_type___MMNullableType___is_nullable(val_t p0
){
2324 struct {struct stack_frame_t me
;} fra
;
2327 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2328 fra
.me
.file
= LOCATE_static_type
;
2330 fra
.me
.meth
= LOCATE_static_type___MMNullableType___is_nullable
;
2331 fra
.me
.has_broke
= 0;
2332 fra
.me
.REG_size
= 1;
2333 fra
.me
.REG
[0] = NIT_NULL
;
2335 /* ./metamodel//static_type.nit:385 */
2336 REGB0
= TAG_Bool(true);
2339 stack_frame_head
= fra
.me
.prev
;
2342 val_t
static_type___MMNullableType___as_notnull(val_t p0
){
2343 struct {struct stack_frame_t me
;} fra
;
2346 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2347 fra
.me
.file
= LOCATE_static_type
;
2349 fra
.me
.meth
= LOCATE_static_type___MMNullableType___as_notnull
;
2350 fra
.me
.has_broke
= 0;
2351 fra
.me
.REG_size
= 1;
2352 fra
.me
.REG
[0] = NIT_NULL
;
2354 /* ./metamodel//static_type.nit:386 */
2355 REGB0
= TAG_Bool(ATTR_static_type___MMNullableType____base_type(fra
.me
.REG
[0])!=NIT_NULL
);
2356 if (UNTAG_Bool(REGB0
)) {
2358 nit_abort("Uninitialized attribute %s", "_base_type", LOCATE_static_type
, 386);
2360 fra
.me
.REG
[0] = ATTR_static_type___MMNullableType____base_type(fra
.me
.REG
[0]);
2363 stack_frame_head
= fra
.me
.prev
;
2364 return fra
.me
.REG
[0];
2366 val_t
static_type___MMNullableType___as_nullable(val_t p0
){
2367 struct {struct stack_frame_t me
;} fra
;
2369 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2370 fra
.me
.file
= LOCATE_static_type
;
2372 fra
.me
.meth
= LOCATE_static_type___MMNullableType___as_nullable
;
2373 fra
.me
.has_broke
= 0;
2374 fra
.me
.REG_size
= 1;
2375 fra
.me
.REG
[0] = NIT_NULL
;
2377 /* ./metamodel//static_type.nit:387 */
2380 stack_frame_head
= fra
.me
.prev
;
2381 return fra
.me
.REG
[0];
2383 void static_type___MMNullableType___init(val_t p0
, val_t p1
, int* init_table
){
2384 int itpos4
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_MMNullableType
].i
;
2385 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
2387 if (init_table
[itpos4
]) return;
2388 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2389 fra
.me
.file
= LOCATE_static_type
;
2391 fra
.me
.meth
= LOCATE_static_type___MMNullableType___init
;
2392 fra
.me
.has_broke
= 0;
2393 fra
.me
.REG_size
= 3;
2394 fra
.me
.REG
[0] = NIT_NULL
;
2395 fra
.me
.REG
[1] = NIT_NULL
;
2396 fra
.me
.REG
[2] = NIT_NULL
;
2399 /* ./metamodel//static_type.nit:388 */
2400 fra
.me
.REG
[2] = fra
.me
.REG
[0];
2401 CALL_static_type___MMType___init(fra
.me
.REG
[0])(fra
.me
.REG
[0], init_table
);
2402 ATTR_static_type___MMNullableType____base_type(fra
.me
.REG
[2]) = fra
.me
.REG
[1];
2403 stack_frame_head
= fra
.me
.prev
;
2404 init_table
[itpos4
] = 1;
2407 val_t
static_type___MMNullableType___mmmodule(val_t p0
){
2408 struct {struct stack_frame_t me
;} fra
;
2411 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2412 fra
.me
.file
= LOCATE_static_type
;
2414 fra
.me
.meth
= LOCATE_static_type___MMNullableType___mmmodule
;
2415 fra
.me
.has_broke
= 0;
2416 fra
.me
.REG_size
= 1;
2417 fra
.me
.REG
[0] = NIT_NULL
;
2419 /* ./metamodel//static_type.nit:390 */
2420 REGB0
= TAG_Bool(ATTR_static_type___MMNullableType____base_type(fra
.me
.REG
[0])!=NIT_NULL
);
2421 if (UNTAG_Bool(REGB0
)) {
2423 nit_abort("Uninitialized attribute %s", "_base_type", LOCATE_static_type
, 390);
2425 fra
.me
.REG
[0] = ATTR_static_type___MMNullableType____base_type(fra
.me
.REG
[0]);
2426 fra
.me
.REG
[0] = CALL_static_type___MMType___mmmodule(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2429 stack_frame_head
= fra
.me
.prev
;
2430 return fra
.me
.REG
[0];
2432 val_t
static_type___MMNullableType___local_class(val_t p0
){
2433 struct {struct stack_frame_t me
;} fra
;
2436 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2437 fra
.me
.file
= LOCATE_static_type
;
2439 fra
.me
.meth
= LOCATE_static_type___MMNullableType___local_class
;
2440 fra
.me
.has_broke
= 0;
2441 fra
.me
.REG_size
= 1;
2442 fra
.me
.REG
[0] = NIT_NULL
;
2444 /* ./metamodel//static_type.nit:392 */
2445 REGB0
= TAG_Bool(ATTR_static_type___MMNullableType____base_type(fra
.me
.REG
[0])!=NIT_NULL
);
2446 if (UNTAG_Bool(REGB0
)) {
2448 nit_abort("Uninitialized attribute %s", "_base_type", LOCATE_static_type
, 392);
2450 fra
.me
.REG
[0] = ATTR_static_type___MMNullableType____base_type(fra
.me
.REG
[0]);
2451 fra
.me
.REG
[0] = CALL_static_type___MMType___local_class(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2454 stack_frame_head
= fra
.me
.prev
;
2455 return fra
.me
.REG
[0];
2457 val_t
static_type___MMNullableType_____l(val_t p0
, val_t p1
){
2458 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
2462 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2463 fra
.me
.file
= LOCATE_static_type
;
2465 fra
.me
.meth
= LOCATE_static_type___MMNullableType_____l
;
2466 fra
.me
.has_broke
= 0;
2467 fra
.me
.REG_size
= 2;
2468 fra
.me
.REG
[0] = NIT_NULL
;
2469 fra
.me
.REG
[1] = NIT_NULL
;
2472 /* ./metamodel//static_type.nit:396 */
2473 REGB0
= TAG_Bool(VAL_ISA(fra
.me
.REG
[1], COLOR_MMNullableType
, ID_MMNullableType
)) /*cast MMNullableType*/;
2474 if (UNTAG_Bool(REGB0
)) {
2475 REGB0
= TAG_Bool(ATTR_static_type___MMNullableType____base_type(fra
.me
.REG
[0])!=NIT_NULL
);
2476 if (UNTAG_Bool(REGB0
)) {
2478 nit_abort("Uninitialized attribute %s", "_base_type", LOCATE_static_type
, 396);
2480 fra
.me
.REG
[0] = ATTR_static_type___MMNullableType____base_type(fra
.me
.REG
[0]);
2481 fra
.me
.REG
[1] = CALL_static_type___MMType___as_notnull(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
2482 REGB0
= CALL_static_type___MMType_____l(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
2484 REGB1
= TAG_Bool(false);
2489 stack_frame_head
= fra
.me
.prev
;
2492 val_t
static_type___MMNullableType___to_s(val_t p0
){
2493 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
2496 static val_t once_value_1
; /* Once value */
2497 static val_t once_value_2
; /* Once value */
2498 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2499 fra
.me
.file
= LOCATE_static_type
;
2501 fra
.me
.meth
= LOCATE_static_type___MMNullableType___to_s
;
2502 fra
.me
.has_broke
= 0;
2503 fra
.me
.REG_size
= 3;
2504 fra
.me
.REG
[0] = NIT_NULL
;
2505 fra
.me
.REG
[1] = NIT_NULL
;
2506 fra
.me
.REG
[2] = NIT_NULL
;
2508 /* ./metamodel//static_type.nit:401 */
2510 fra
.me
.REG
[1] = NEW_Array_array___Array___with_capacity(REGB0
);
2511 if (!once_value_1
) {
2512 fra
.me
.REG
[2] = BOX_NativeString("nullable ");
2514 fra
.me
.REG
[2] = NEW_String_string___String___with_native(fra
.me
.REG
[2], REGB0
);
2515 once_value_1
= fra
.me
.REG
[2];
2516 register_static_object(&once_value_1
);
2517 } else fra
.me
.REG
[2] = once_value_1
;
2518 fra
.me
.REG
[2] = fra
.me
.REG
[2];
2519 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
2520 REGB0
= TAG_Bool(ATTR_static_type___MMNullableType____base_type(fra
.me
.REG
[0])!=NIT_NULL
);
2521 if (UNTAG_Bool(REGB0
)) {
2523 nit_abort("Uninitialized attribute %s", "_base_type", LOCATE_static_type
, 401);
2525 fra
.me
.REG
[0] = ATTR_static_type___MMNullableType____base_type(fra
.me
.REG
[0]);
2526 fra
.me
.REG
[0] = CALL_string___Object___to_s(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2527 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
2528 if (!once_value_2
) {
2529 fra
.me
.REG
[0] = BOX_NativeString("");
2531 fra
.me
.REG
[0] = NEW_String_string___String___with_native(fra
.me
.REG
[0], REGB0
);
2532 once_value_2
= fra
.me
.REG
[0];
2533 register_static_object(&once_value_2
);
2534 } else fra
.me
.REG
[0] = once_value_2
;
2535 fra
.me
.REG
[0] = fra
.me
.REG
[0];
2536 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
2537 fra
.me
.REG
[1] = CALL_string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
2540 stack_frame_head
= fra
.me
.prev
;
2541 return fra
.me
.REG
[1];
2543 val_t
static_type___MMNullableType___is_supertype(val_t p0
, val_t p1
){
2544 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
2547 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2548 fra
.me
.file
= LOCATE_static_type
;
2550 fra
.me
.meth
= LOCATE_static_type___MMNullableType___is_supertype
;
2551 fra
.me
.has_broke
= 0;
2552 fra
.me
.REG_size
= 2;
2553 fra
.me
.REG
[0] = NIT_NULL
;
2554 fra
.me
.REG
[1] = NIT_NULL
;
2557 /* ./metamodel//static_type.nit:406 */
2558 REGB0
= TAG_Bool(ATTR_static_type___MMNullableType____base_type(fra
.me
.REG
[0])!=NIT_NULL
);
2559 if (UNTAG_Bool(REGB0
)) {
2561 nit_abort("Uninitialized attribute %s", "_base_type", LOCATE_static_type
, 406);
2563 fra
.me
.REG
[0] = ATTR_static_type___MMNullableType____base_type(fra
.me
.REG
[0]);
2564 REGB0
= CALL_static_type___MMType___is_supertype(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
2567 stack_frame_head
= fra
.me
.prev
;
2570 val_t
static_type___MMNullableType___for_module(val_t p0
, val_t p1
){
2571 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
2574 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2575 fra
.me
.file
= LOCATE_static_type
;
2577 fra
.me
.meth
= LOCATE_static_type___MMNullableType___for_module
;
2578 fra
.me
.has_broke
= 0;
2579 fra
.me
.REG_size
= 2;
2580 fra
.me
.REG
[0] = NIT_NULL
;
2581 fra
.me
.REG
[1] = NIT_NULL
;
2584 /* ./metamodel//static_type.nit:411 */
2585 REGB0
= TAG_Bool(ATTR_static_type___MMNullableType____base_type(fra
.me
.REG
[0])!=NIT_NULL
);
2586 if (UNTAG_Bool(REGB0
)) {
2588 nit_abort("Uninitialized attribute %s", "_base_type", LOCATE_static_type
, 411);
2590 fra
.me
.REG
[0] = ATTR_static_type___MMNullableType____base_type(fra
.me
.REG
[0]);
2591 fra
.me
.REG
[1] = CALL_static_type___MMType___for_module(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
2592 fra
.me
.REG
[1] = CALL_static_type___MMType___as_nullable(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
2595 stack_frame_head
= fra
.me
.prev
;
2596 return fra
.me
.REG
[1];
2598 val_t
static_type___MMNullableType___adapt_to(val_t p0
, val_t p1
){
2599 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
2602 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2603 fra
.me
.file
= LOCATE_static_type
;
2605 fra
.me
.meth
= LOCATE_static_type___MMNullableType___adapt_to
;
2606 fra
.me
.has_broke
= 0;
2607 fra
.me
.REG_size
= 2;
2608 fra
.me
.REG
[0] = NIT_NULL
;
2609 fra
.me
.REG
[1] = NIT_NULL
;
2612 /* ./metamodel//static_type.nit:416 */
2613 REGB0
= TAG_Bool(ATTR_static_type___MMNullableType____base_type(fra
.me
.REG
[0])!=NIT_NULL
);
2614 if (UNTAG_Bool(REGB0
)) {
2616 nit_abort("Uninitialized attribute %s", "_base_type", LOCATE_static_type
, 416);
2618 fra
.me
.REG
[0] = ATTR_static_type___MMNullableType____base_type(fra
.me
.REG
[0]);
2619 fra
.me
.REG
[1] = CALL_static_type___MMType___adapt_to(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
2620 fra
.me
.REG
[1] = CALL_static_type___MMType___as_nullable(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
2623 stack_frame_head
= fra
.me
.prev
;
2624 return fra
.me
.REG
[1];
2626 val_t
static_type___MMNullableType___upcast_for(val_t p0
, val_t p1
){
2627 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
2630 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2631 fra
.me
.file
= LOCATE_static_type
;
2633 fra
.me
.meth
= LOCATE_static_type___MMNullableType___upcast_for
;
2634 fra
.me
.has_broke
= 0;
2635 fra
.me
.REG_size
= 2;
2636 fra
.me
.REG
[0] = NIT_NULL
;
2637 fra
.me
.REG
[1] = NIT_NULL
;
2640 /* ./metamodel//static_type.nit:421 */
2641 REGB0
= TAG_Bool(ATTR_static_type___MMNullableType____base_type(fra
.me
.REG
[0])!=NIT_NULL
);
2642 if (UNTAG_Bool(REGB0
)) {
2644 nit_abort("Uninitialized attribute %s", "_base_type", LOCATE_static_type
, 421);
2646 fra
.me
.REG
[0] = ATTR_static_type___MMNullableType____base_type(fra
.me
.REG
[0]);
2647 fra
.me
.REG
[1] = CALL_static_type___MMType___upcast_for(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
2650 stack_frame_head
= fra
.me
.prev
;
2651 return fra
.me
.REG
[1];
2653 val_t
static_type___MMNullableType___not_for_self(val_t p0
){
2654 struct {struct stack_frame_t me
;} fra
;
2657 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2658 fra
.me
.file
= LOCATE_static_type
;
2660 fra
.me
.meth
= LOCATE_static_type___MMNullableType___not_for_self
;
2661 fra
.me
.has_broke
= 0;
2662 fra
.me
.REG_size
= 1;
2663 fra
.me
.REG
[0] = NIT_NULL
;
2665 /* ./metamodel//static_type.nit:426 */
2666 REGB0
= TAG_Bool(ATTR_static_type___MMNullableType____base_type(fra
.me
.REG
[0])!=NIT_NULL
);
2667 if (UNTAG_Bool(REGB0
)) {
2669 nit_abort("Uninitialized attribute %s", "_base_type", LOCATE_static_type
, 426);
2671 fra
.me
.REG
[0] = ATTR_static_type___MMNullableType____base_type(fra
.me
.REG
[0]);
2672 fra
.me
.REG
[0] = CALL_static_type___MMType___not_for_self(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2673 fra
.me
.REG
[0] = CALL_static_type___MMType___as_nullable(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2676 stack_frame_head
= fra
.me
.prev
;
2677 return fra
.me
.REG
[0];
2679 val_t
static_type___MMTypeClass___local_class(val_t p0
){
2680 struct {struct stack_frame_t me
;} fra
;
2683 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2684 fra
.me
.file
= LOCATE_static_type
;
2686 fra
.me
.meth
= LOCATE_static_type___MMTypeClass___local_class
;
2687 fra
.me
.has_broke
= 0;
2688 fra
.me
.REG_size
= 1;
2689 fra
.me
.REG
[0] = NIT_NULL
;
2691 /* ./metamodel//static_type.nit:432 */
2692 REGB0
= TAG_Bool(ATTR_static_type___MMTypeClass____local_class(fra
.me
.REG
[0])!=NIT_NULL
);
2693 if (UNTAG_Bool(REGB0
)) {
2695 nit_abort("Uninitialized attribute %s", "_local_class", LOCATE_static_type
, 432);
2697 fra
.me
.REG
[0] = ATTR_static_type___MMTypeClass____local_class(fra
.me
.REG
[0]);
2698 stack_frame_head
= fra
.me
.prev
;
2699 return fra
.me
.REG
[0];
2701 val_t
static_type___MMTypeClass___mmmodule(val_t p0
){
2702 struct {struct stack_frame_t me
;} fra
;
2705 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2706 fra
.me
.file
= LOCATE_static_type
;
2708 fra
.me
.meth
= LOCATE_static_type___MMTypeClass___mmmodule
;
2709 fra
.me
.has_broke
= 0;
2710 fra
.me
.REG_size
= 1;
2711 fra
.me
.REG
[0] = NIT_NULL
;
2713 /* ./metamodel//static_type.nit:433 */
2714 REGB0
= TAG_Bool(ATTR_static_type___MMTypeClass____local_class(fra
.me
.REG
[0])!=NIT_NULL
);
2715 if (UNTAG_Bool(REGB0
)) {
2717 nit_abort("Uninitialized attribute %s", "_local_class", LOCATE_static_type
, 433);
2719 fra
.me
.REG
[0] = ATTR_static_type___MMTypeClass____local_class(fra
.me
.REG
[0]);
2720 fra
.me
.REG
[0] = CALL_abstractmetamodel___MMLocalClass___mmmodule(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2723 stack_frame_head
= fra
.me
.prev
;
2724 return fra
.me
.REG
[0];
2726 val_t
static_type___MMTypeClass_____l(val_t p0
, val_t p1
){
2727 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
2730 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2731 fra
.me
.file
= LOCATE_static_type
;
2733 fra
.me
.meth
= LOCATE_static_type___MMTypeClass_____l
;
2734 fra
.me
.has_broke
= 0;
2735 fra
.me
.REG_size
= 2;
2736 fra
.me
.REG
[0] = NIT_NULL
;
2737 fra
.me
.REG
[1] = NIT_NULL
;
2740 /* ./metamodel//static_type.nit:434 */
2741 REGB0
= CALL_static_type___MMType___is_supertype(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
2744 stack_frame_head
= fra
.me
.prev
;
2747 val_t
static_type___MMTypeClass___to_s(val_t p0
){
2748 struct {struct stack_frame_t me
;} fra
;
2751 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2752 fra
.me
.file
= LOCATE_static_type
;
2754 fra
.me
.meth
= LOCATE_static_type___MMTypeClass___to_s
;
2755 fra
.me
.has_broke
= 0;
2756 fra
.me
.REG_size
= 1;
2757 fra
.me
.REG
[0] = NIT_NULL
;
2759 /* ./metamodel//static_type.nit:438 */
2760 REGB0
= TAG_Bool(ATTR_static_type___MMTypeClass____local_class(fra
.me
.REG
[0])!=NIT_NULL
);
2761 if (UNTAG_Bool(REGB0
)) {
2763 nit_abort("Uninitialized attribute %s", "_local_class", LOCATE_static_type
, 438);
2765 fra
.me
.REG
[0] = ATTR_static_type___MMTypeClass____local_class(fra
.me
.REG
[0]);
2766 fra
.me
.REG
[0] = CALL_string___Object___to_s(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2769 stack_frame_head
= fra
.me
.prev
;
2770 return fra
.me
.REG
[0];
2772 val_t
static_type___MMTypeClass___upcast_for(val_t p0
, val_t p1
){
2773 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
2777 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2778 fra
.me
.file
= LOCATE_static_type
;
2780 fra
.me
.meth
= LOCATE_static_type___MMTypeClass___upcast_for
;
2781 fra
.me
.has_broke
= 0;
2782 fra
.me
.REG_size
= 4;
2783 fra
.me
.REG
[0] = NIT_NULL
;
2784 fra
.me
.REG
[1] = NIT_NULL
;
2785 fra
.me
.REG
[2] = NIT_NULL
;
2786 fra
.me
.REG
[3] = NIT_NULL
;
2789 /* ./metamodel//static_type.nit:443 */
2790 fra
.me
.REG
[2] = fra
.me
.REG
[0];
2791 /* ./metamodel//static_type.nit:444 */
2792 REGB0
= TAG_Bool(ATTR_static_type___MMTypeClass____local_class(fra
.me
.REG
[0])!=NIT_NULL
);
2793 if (UNTAG_Bool(REGB0
)) {
2795 nit_abort("Uninitialized attribute %s", "_local_class", LOCATE_static_type
, 444);
2797 fra
.me
.REG
[3] = ATTR_static_type___MMTypeClass____local_class(fra
.me
.REG
[0]);
2798 REGB0
= TAG_Bool(IS_EQUAL_OO(fra
.me
.REG
[3],fra
.me
.REG
[1]));
2799 if (UNTAG_Bool(REGB0
)) {
2801 REGB1
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[1]);
2804 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
2805 if (UNTAG_Bool(REGB0
)) {
2806 /* ./metamodel//static_type.nit:445 */
2807 REGB0
= TAG_Bool(ATTR_static_type___MMTypeClass____local_class(fra
.me
.REG
[0])!=NIT_NULL
);
2808 if (UNTAG_Bool(REGB0
)) {
2810 nit_abort("Uninitialized attribute %s", "_local_class", LOCATE_static_type
, 445);
2812 fra
.me
.REG
[0] = ATTR_static_type___MMTypeClass____local_class(fra
.me
.REG
[0]);
2813 fra
.me
.REG
[1] = CALL_static_type___MMLocalClass___ancestor(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
2814 fra
.me
.REG
[2] = fra
.me
.REG
[1];
2816 /* ./metamodel//static_type.nit:447 */
2819 stack_frame_head
= fra
.me
.prev
;
2820 return fra
.me
.REG
[2];
2822 void static_type___MMTypeClass___init(val_t p0
, val_t p1
, int* init_table
){
2823 int itpos5
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_MMTypeClass
].i
;
2824 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
2826 if (init_table
[itpos5
]) return;
2827 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2828 fra
.me
.file
= LOCATE_static_type
;
2830 fra
.me
.meth
= LOCATE_static_type___MMTypeClass___init
;
2831 fra
.me
.has_broke
= 0;
2832 fra
.me
.REG_size
= 3;
2833 fra
.me
.REG
[0] = NIT_NULL
;
2834 fra
.me
.REG
[1] = NIT_NULL
;
2835 fra
.me
.REG
[2] = NIT_NULL
;
2838 /* ./metamodel//static_type.nit:450 */
2839 fra
.me
.REG
[2] = fra
.me
.REG
[0];
2840 CALL_static_type___MMType___init(fra
.me
.REG
[0])(fra
.me
.REG
[0], init_table
);
2841 /* ./metamodel//static_type.nit:452 */
2842 ATTR_static_type___MMTypeClass____local_class(fra
.me
.REG
[2]) = fra
.me
.REG
[1];
2843 stack_frame_head
= fra
.me
.prev
;
2844 init_table
[itpos5
] = 1;
2847 val_t
static_type___MMTypeSimpleClass___is_supertype(val_t p0
, val_t p1
){
2848 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
2851 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2852 fra
.me
.file
= LOCATE_static_type
;
2854 fra
.me
.meth
= LOCATE_static_type___MMTypeSimpleClass___is_supertype
;
2855 fra
.me
.has_broke
= 0;
2856 fra
.me
.REG_size
= 2;
2857 fra
.me
.REG
[0] = NIT_NULL
;
2858 fra
.me
.REG
[1] = NIT_NULL
;
2861 /* ./metamodel//static_type.nit:460 */
2862 fra
.me
.REG
[1] = CALL_static_type___MMType___local_class(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
2863 fra
.me
.REG
[1] = CALL_abstractmetamodel___MMLocalClass___cshe(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
2864 REGB0
= TAG_Bool(ATTR_static_type___MMTypeClass____local_class(fra
.me
.REG
[0])!=NIT_NULL
);
2865 if (UNTAG_Bool(REGB0
)) {
2867 nit_abort("Uninitialized attribute %s", "_local_class", LOCATE_static_type
, 460);
2869 fra
.me
.REG
[0] = ATTR_static_type___MMTypeClass____local_class(fra
.me
.REG
[0]);
2870 REGB0
= CALL_partial_order___PartialOrderElement_____leq(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
2873 stack_frame_head
= fra
.me
.prev
;
2876 val_t
static_type___MMTypeSimpleClass___for_module(val_t p0
, val_t p1
){
2877 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
2881 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2882 fra
.me
.file
= LOCATE_static_type
;
2884 fra
.me
.meth
= LOCATE_static_type___MMTypeSimpleClass___for_module
;
2885 fra
.me
.has_broke
= 0;
2886 fra
.me
.REG_size
= 4;
2887 fra
.me
.REG
[0] = NIT_NULL
;
2888 fra
.me
.REG
[1] = NIT_NULL
;
2889 fra
.me
.REG
[2] = NIT_NULL
;
2890 fra
.me
.REG
[3] = NIT_NULL
;
2893 /* ./metamodel//static_type.nit:465 */
2894 fra
.me
.REG
[2] = fra
.me
.REG
[0];
2895 /* ./metamodel//static_type.nit:466 */
2896 fra
.me
.REG
[3] = CALL_static_type___MMType___mmmodule(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2897 REGB0
= TAG_Bool(IS_EQUAL_OO(fra
.me
.REG
[3],fra
.me
.REG
[1]));
2898 if (UNTAG_Bool(REGB0
)) {
2900 REGB1
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[1]);
2903 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
2904 if (UNTAG_Bool(REGB0
)) {
2905 /* ./metamodel//static_type.nit:467 */
2906 REGB0
= TAG_Bool(ATTR_static_type___MMTypeClass____local_class(fra
.me
.REG
[0])!=NIT_NULL
);
2907 if (UNTAG_Bool(REGB0
)) {
2909 nit_abort("Uninitialized attribute %s", "_local_class", LOCATE_static_type
, 467);
2911 fra
.me
.REG
[0] = ATTR_static_type___MMTypeClass____local_class(fra
.me
.REG
[0]);
2912 fra
.me
.REG
[1] = CALL_abstractmetamodel___MMLocalClass___for_module(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
2913 fra
.me
.REG
[1] = CALL_static_type___MMLocalClass___get_type(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
2914 fra
.me
.REG
[2] = fra
.me
.REG
[1];
2916 /* ./metamodel//static_type.nit:469 */
2919 stack_frame_head
= fra
.me
.prev
;
2920 return fra
.me
.REG
[2];
2922 val_t
static_type___MMTypeSimpleClass___adapt_to(val_t p0
, val_t p1
){
2923 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
2925 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2926 fra
.me
.file
= LOCATE_static_type
;
2928 fra
.me
.meth
= LOCATE_static_type___MMTypeSimpleClass___adapt_to
;
2929 fra
.me
.has_broke
= 0;
2930 fra
.me
.REG_size
= 2;
2931 fra
.me
.REG
[0] = NIT_NULL
;
2932 fra
.me
.REG
[1] = NIT_NULL
;
2935 /* ./metamodel//static_type.nit:472 */
2938 stack_frame_head
= fra
.me
.prev
;
2939 return fra
.me
.REG
[0];
2941 void static_type___MMTypeSimpleClass___init(val_t p0
, val_t p1
, int* init_table
){
2942 int itpos6
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_MMTypeSimpleClass
].i
;
2943 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
2945 if (init_table
[itpos6
]) return;
2946 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2947 fra
.me
.file
= LOCATE_static_type
;
2949 fra
.me
.meth
= LOCATE_static_type___MMTypeSimpleClass___init
;
2950 fra
.me
.has_broke
= 0;
2951 fra
.me
.REG_size
= 2;
2952 fra
.me
.REG
[0] = NIT_NULL
;
2953 fra
.me
.REG
[1] = NIT_NULL
;
2956 /* ./metamodel//static_type.nit:476 */
2957 CALL_static_type___MMTypeClass___init(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], init_table
);
2958 stack_frame_head
= fra
.me
.prev
;
2959 init_table
[itpos6
] = 1;
2962 val_t
static_type___MMTypeNone___mmmodule(val_t p0
){
2963 struct {struct stack_frame_t me
;} fra
;
2966 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2967 fra
.me
.file
= LOCATE_static_type
;
2969 fra
.me
.meth
= LOCATE_static_type___MMTypeNone___mmmodule
;
2970 fra
.me
.has_broke
= 0;
2971 fra
.me
.REG_size
= 1;
2972 fra
.me
.REG
[0] = NIT_NULL
;
2974 /* ./metamodel//static_type.nit:483 */
2975 REGB0
= TAG_Bool(ATTR_static_type___MMTypeNone____mmmodule(fra
.me
.REG
[0])!=NIT_NULL
);
2976 if (UNTAG_Bool(REGB0
)) {
2978 nit_abort("Uninitialized attribute %s", "_mmmodule", LOCATE_static_type
, 483);
2980 fra
.me
.REG
[0] = ATTR_static_type___MMTypeNone____mmmodule(fra
.me
.REG
[0]);
2981 stack_frame_head
= fra
.me
.prev
;
2982 return fra
.me
.REG
[0];
2984 val_t
static_type___MMTypeNone___is_nullable(val_t p0
){
2985 struct {struct stack_frame_t me
;} fra
;
2988 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2989 fra
.me
.file
= LOCATE_static_type
;
2991 fra
.me
.meth
= LOCATE_static_type___MMTypeNone___is_nullable
;
2992 fra
.me
.has_broke
= 0;
2993 fra
.me
.REG_size
= 1;
2994 fra
.me
.REG
[0] = NIT_NULL
;
2996 /* ./metamodel//static_type.nit:484 */
2997 REGB0
= TAG_Bool(true);
3000 stack_frame_head
= fra
.me
.prev
;
3003 val_t
static_type___MMTypeNone_____l(val_t p0
, val_t p1
){
3004 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
3008 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3009 fra
.me
.file
= LOCATE_static_type
;
3011 fra
.me
.meth
= LOCATE_static_type___MMTypeNone_____l
;
3012 fra
.me
.has_broke
= 0;
3013 fra
.me
.REG_size
= 2;
3014 fra
.me
.REG
[0] = NIT_NULL
;
3015 fra
.me
.REG
[1] = NIT_NULL
;
3018 /* ./metamodel//static_type.nit:485 */
3019 REGB0
= TAG_Bool(VAL_ISA(fra
.me
.REG
[1], COLOR_MMTypeNone
, ID_MMTypeNone
)) /*cast MMTypeNone*/;
3020 if (UNTAG_Bool(REGB0
)) {
3021 REGB0
= TAG_Bool(true);
3023 REGB1
= TAG_Bool(VAL_ISA(fra
.me
.REG
[1], COLOR_MMNullableType
, ID_MMNullableType
)) /*cast MMNullableType*/;
3028 stack_frame_head
= fra
.me
.prev
;
3031 val_t
static_type___MMTypeNone___to_s(val_t p0
){
3032 struct {struct stack_frame_t me
;} fra
;
3035 static val_t once_value_1
; /* Once value */
3036 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3037 fra
.me
.file
= LOCATE_static_type
;
3039 fra
.me
.meth
= LOCATE_static_type___MMTypeNone___to_s
;
3040 fra
.me
.has_broke
= 0;
3041 fra
.me
.REG_size
= 1;
3042 fra
.me
.REG
[0] = NIT_NULL
;
3044 /* ./metamodel//static_type.nit:486 */
3045 if (!once_value_1
) {
3046 fra
.me
.REG
[0] = BOX_NativeString("null");
3048 fra
.me
.REG
[0] = NEW_String_string___String___with_native(fra
.me
.REG
[0], REGB0
);
3049 once_value_1
= fra
.me
.REG
[0];
3050 register_static_object(&once_value_1
);
3051 } else fra
.me
.REG
[0] = once_value_1
;
3052 fra
.me
.REG
[0] = fra
.me
.REG
[0];
3055 stack_frame_head
= fra
.me
.prev
;
3056 return fra
.me
.REG
[0];
3058 val_t
static_type___MMTypeNone___is_supertype(val_t p0
, val_t p1
){
3059 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
3062 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3063 fra
.me
.file
= LOCATE_static_type
;
3065 fra
.me
.meth
= LOCATE_static_type___MMTypeNone___is_supertype
;
3066 fra
.me
.has_broke
= 0;
3067 fra
.me
.REG_size
= 2;
3068 fra
.me
.REG
[0] = NIT_NULL
;
3069 fra
.me
.REG
[1] = NIT_NULL
;
3072 /* ./metamodel//static_type.nit:487 */
3073 REGB0
= TAG_Bool(false);
3076 stack_frame_head
= fra
.me
.prev
;
3079 val_t
static_type___MMTypeNone___local_class(val_t p0
){
3080 struct {struct stack_frame_t me
;} fra
;
3082 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3083 fra
.me
.file
= LOCATE_static_type
;
3085 fra
.me
.meth
= LOCATE_static_type___MMTypeNone___local_class
;
3086 fra
.me
.has_broke
= 0;
3087 fra
.me
.REG_size
= 1;
3088 fra
.me
.REG
[0] = NIT_NULL
;
3090 /* ./metamodel//static_type.nit:488 */
3091 nit_abort("Aborted", NULL
, LOCATE_static_type
, 488);
3092 stack_frame_head
= fra
.me
.prev
;
3095 val_t
static_type___MMTypeNone___upcast_for(val_t p0
, val_t p1
){
3096 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
3098 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3099 fra
.me
.file
= LOCATE_static_type
;
3101 fra
.me
.meth
= LOCATE_static_type___MMTypeNone___upcast_for
;
3102 fra
.me
.has_broke
= 0;
3103 fra
.me
.REG_size
= 2;
3104 fra
.me
.REG
[0] = NIT_NULL
;
3105 fra
.me
.REG
[1] = NIT_NULL
;
3108 /* ./metamodel//static_type.nit:489 */
3109 nit_abort("Aborted", NULL
, LOCATE_static_type
, 489);
3110 stack_frame_head
= fra
.me
.prev
;
3113 val_t
static_type___MMTypeNone___as_nullable(val_t p0
){
3114 struct {struct stack_frame_t me
;} fra
;
3116 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3117 fra
.me
.file
= LOCATE_static_type
;
3119 fra
.me
.meth
= LOCATE_static_type___MMTypeNone___as_nullable
;
3120 fra
.me
.has_broke
= 0;
3121 fra
.me
.REG_size
= 1;
3122 fra
.me
.REG
[0] = NIT_NULL
;
3124 /* ./metamodel//static_type.nit:490 */
3127 stack_frame_head
= fra
.me
.prev
;
3128 return fra
.me
.REG
[0];
3130 val_t
static_type___MMTypeNone___as_notnull(val_t p0
){
3131 struct {struct stack_frame_t me
;} fra
;
3133 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3134 fra
.me
.file
= LOCATE_static_type
;
3136 fra
.me
.meth
= LOCATE_static_type___MMTypeNone___as_notnull
;
3137 fra
.me
.has_broke
= 0;
3138 fra
.me
.REG_size
= 1;
3139 fra
.me
.REG
[0] = NIT_NULL
;
3141 /* ./metamodel//static_type.nit:491 */
3142 nit_abort("Aborted", NULL
, LOCATE_static_type
, 491);
3143 stack_frame_head
= fra
.me
.prev
;
3146 void static_type___MMTypeNone___init(val_t p0
, val_t p1
, int* init_table
){
3147 int itpos7
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_MMTypeNone
].i
;
3148 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
3150 if (init_table
[itpos7
]) return;
3151 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3152 fra
.me
.file
= LOCATE_static_type
;
3154 fra
.me
.meth
= LOCATE_static_type___MMTypeNone___init
;
3155 fra
.me
.has_broke
= 0;
3156 fra
.me
.REG_size
= 3;
3157 fra
.me
.REG
[0] = NIT_NULL
;
3158 fra
.me
.REG
[1] = NIT_NULL
;
3159 fra
.me
.REG
[2] = NIT_NULL
;
3162 /* ./metamodel//static_type.nit:493 */
3163 fra
.me
.REG
[2] = fra
.me
.REG
[0];
3164 CALL_static_type___MMType___init(fra
.me
.REG
[0])(fra
.me
.REG
[0], init_table
);
3165 ATTR_static_type___MMTypeNone____mmmodule(fra
.me
.REG
[2]) = fra
.me
.REG
[1];
3166 stack_frame_head
= fra
.me
.prev
;
3167 init_table
[itpos7
] = 1;
3170 val_t
static_type___MMModule___type_none(val_t p0
){
3171 struct {struct stack_frame_t me
;} fra
;
3174 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3175 fra
.me
.file
= LOCATE_static_type
;
3177 fra
.me
.meth
= LOCATE_static_type___MMModule___type_none
;
3178 fra
.me
.has_broke
= 0;
3179 fra
.me
.REG_size
= 1;
3180 fra
.me
.REG
[0] = NIT_NULL
;
3182 /* ./metamodel//static_type.nit:497 */
3183 REGB0
= TAG_Bool(ATTR_static_type___MMModule____type_none(fra
.me
.REG
[0])!=NIT_NULL
);
3184 if (UNTAG_Bool(REGB0
)) {
3186 nit_abort("Uninitialized attribute %s", "_type_none", LOCATE_static_type
, 497);
3188 fra
.me
.REG
[0] = ATTR_static_type___MMModule____type_none(fra
.me
.REG
[0]);
3189 stack_frame_head
= fra
.me
.prev
;
3190 return fra
.me
.REG
[0];
3192 val_t
static_type___MMModule___type_bool(val_t p0
){
3193 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
3196 static val_t once_value_1
; /* Once value */
3197 static val_t once_value_2
; /* Once value */
3198 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3199 fra
.me
.file
= LOCATE_static_type
;
3201 fra
.me
.meth
= LOCATE_static_type___MMModule___type_bool
;
3202 fra
.me
.has_broke
= 0;
3203 fra
.me
.REG_size
= 2;
3204 fra
.me
.REG
[0] = NIT_NULL
;
3205 fra
.me
.REG
[1] = NIT_NULL
;
3207 /* ./metamodel//static_type.nit:503 */
3208 if (!once_value_1
) {
3209 if (!once_value_2
) {
3210 fra
.me
.REG
[1] = BOX_NativeString("Bool");
3212 fra
.me
.REG
[1] = NEW_String_string___String___with_native(fra
.me
.REG
[1], REGB0
);
3213 once_value_2
= fra
.me
.REG
[1];
3214 register_static_object(&once_value_2
);
3215 } else fra
.me
.REG
[1] = once_value_2
;
3216 fra
.me
.REG
[1] = fra
.me
.REG
[1];
3217 fra
.me
.REG
[1] = CALL_symbol___String___to_symbol(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
3218 once_value_1
= fra
.me
.REG
[1];
3219 register_static_object(&once_value_1
);
3220 } else fra
.me
.REG
[1] = once_value_1
;
3221 fra
.me
.REG
[1] = fra
.me
.REG
[1];
3222 fra
.me
.REG
[1] = CALL_abstractmetamodel___MMModule___class_by_name(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
3223 fra
.me
.REG
[1] = CALL_static_type___MMLocalClass___get_type(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
3226 stack_frame_head
= fra
.me
.prev
;
3227 return fra
.me
.REG
[1];