1 /* This C file is generated by NIT to compile module metamodel___genericity. */
2 #include "metamodel___genericity._sep.h"
3 val_t
metamodel___genericity___MMLocalClass___get_formal(val_t p0
, val_t p1
){
4 struct {struct stack_frame_t me
;} fra
;
9 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
10 fra
.me
.file
= LOCATE_metamodel___genericity
;
12 fra
.me
.meth
= LOCATE_metamodel___genericity___MMLocalClass___get_formal
;
15 fra
.me
.REG
[0] = NIT_NULL
;
18 /* ./metamodel//genericity.nit:28 */
19 fra
.me
.REG
[0] = CALL_metamodel___genericity___MMLocalClass___formals_types(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
20 /* ./../lib/standard//collection//array.nit:243 */
22 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
23 if (UNTAG_Bool(REGB2
)) {
25 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
27 /* ./../lib/standard//kernel.nit:216 */
28 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB1
));
29 /* ./../lib/standard//collection//array.nit:243 */
30 if (UNTAG_Bool(REGB1
)) {
31 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
32 if (UNTAG_Bool(REGB1
)) {
34 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 243);
36 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
37 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
38 if (UNTAG_Bool(REGB2
)) {
40 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
42 /* ./../lib/standard//kernel.nit:215 */
43 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
45 /* ./../lib/standard//collection//array.nit:243 */
46 REGB2
= TAG_Bool(false);
49 if (UNTAG_Bool(REGB1
)) {
51 nit_abort("Assert %s failed", "'index'", LOCATE_standard___collection___array
, 243);
53 /* ./../lib/standard//collection//array.nit:244 */
54 fra
.me
.REG
[0] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[0]);
55 REGB1
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
56 if (UNTAG_Bool(REGB1
)) {
57 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 244);
59 /* ./../lib/standard//collection//array.nit:652 */
60 fra
.me
.REG
[0] = ((Nit_NativeArray
)fra
.me
.REG
[0])->val
[UNTAG_Int(REGB0
)];
61 /* ./../lib/standard//collection//array.nit:244 */
64 /* ./metamodel//genericity.nit:28 */
67 stack_frame_head
= fra
.me
.prev
;
70 void metamodel___genericity___MMLocalClass___register_formal(val_t p0
, val_t p1
){
71 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
76 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
77 fra
.me
.file
= LOCATE_metamodel___genericity
;
79 fra
.me
.meth
= LOCATE_metamodel___genericity___MMLocalClass___register_formal
;
82 fra
.me
.REG
[0] = NIT_NULL
;
83 fra
.me
.REG
[1] = NIT_NULL
;
84 fra
.me
.REG
[2] = NIT_NULL
;
87 /* ./metamodel//genericity.nit:35 */
88 fra
.me
.REG
[2] = CALL_metamodel___genericity___MMTypeFormalParameter___def_class(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
89 REGB0
= TAG_Bool(IS_EQUAL_OO(fra
.me
.REG
[2],fra
.me
.REG
[0]));
90 if (UNTAG_Bool(REGB0
)) {
92 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
95 if (UNTAG_Bool(REGB0
)) {
97 nit_abort("Assert failed", NULL
, LOCATE_metamodel___genericity
, 35);
99 /* ./metamodel//genericity.nit:36 */
100 REGB0
= CALL_metamodel___genericity___MMTypeFormalParameter___position(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
101 REGB1
= TAG_Bool(ATTR_metamodel___genericity___MMLocalClass____formals_types(fra
.me
.REG
[0])!=NIT_NULL
);
102 if (UNTAG_Bool(REGB1
)) {
104 nit_abort("Uninitialized attribute %s", "_formals_types", LOCATE_metamodel___genericity
, 36);
106 fra
.me
.REG
[2] = ATTR_metamodel___genericity___MMLocalClass____formals_types(fra
.me
.REG
[0]);
107 /* ./../lib/standard//collection//array.nit:23 */
108 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
109 if (UNTAG_Bool(REGB1
)) {
111 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 23);
113 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2]);
114 /* ./metamodel//genericity.nit:36 */
115 REGB2
= TAG_Bool(IS_EQUAL_OO(REGB0
,REGB1
));
116 if (UNTAG_Bool(REGB2
)) {
118 /* ./../lib/standard//kernel.nit:210 */
119 REGB1
= TAG_Bool((REGB0
)==(REGB1
));
120 /* ./metamodel//genericity.nit:36 */
123 if (UNTAG_Bool(REGB2
)) {
125 nit_abort("Assert failed", NULL
, LOCATE_metamodel___genericity
, 36);
127 /* ./metamodel//genericity.nit:37 */
128 REGB2
= TAG_Bool(ATTR_metamodel___genericity___MMLocalClass____formals_types(fra
.me
.REG
[0])!=NIT_NULL
);
129 if (UNTAG_Bool(REGB2
)) {
131 nit_abort("Uninitialized attribute %s", "_formals_types", LOCATE_metamodel___genericity
, 37);
133 fra
.me
.REG
[0] = ATTR_metamodel___genericity___MMLocalClass____formals_types(fra
.me
.REG
[0]);
134 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
135 stack_frame_head
= fra
.me
.prev
;
138 val_t
metamodel___genericity___MMLocalClass___get_instantiate_type(val_t p0
, val_t p1
){
139 struct {struct stack_frame_t me
; val_t MORE_REG
[4];} fra
;
144 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
145 fra
.me
.file
= LOCATE_metamodel___genericity
;
147 fra
.me
.meth
= LOCATE_metamodel___genericity___MMLocalClass___get_instantiate_type
;
148 fra
.me
.has_broke
= 0;
150 fra
.me
.REG
[0] = NIT_NULL
;
151 fra
.me
.REG
[1] = NIT_NULL
;
152 fra
.me
.REG
[2] = NIT_NULL
;
153 fra
.me
.REG
[3] = NIT_NULL
;
154 fra
.me
.REG
[4] = NIT_NULL
;
157 /* ./metamodel//genericity.nit:46 */
158 REGB0
= TAG_Bool(ATTR_metamodel___genericity___MMLocalClass____types(fra
.me
.REG
[0])!=NIT_NULL
);
159 if (UNTAG_Bool(REGB0
)) {
161 nit_abort("Uninitialized attribute %s", "_types", LOCATE_metamodel___genericity
, 46);
163 fra
.me
.REG
[2] = ATTR_metamodel___genericity___MMLocalClass____types(fra
.me
.REG
[0]);
164 /* ./../lib/standard//collection//array.nit:232 */
166 /* ./../lib/standard//collection//array.nit:233 */
167 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
168 if (UNTAG_Bool(REGB1
)) {
170 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 233);
172 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2]);
173 /* ./../lib/standard//collection//array.nit:234 */
174 fra
.me
.REG
[3] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[2]);
175 /* ./../lib/standard//collection//array.nit:235 */
177 /* ./../lib/standard//collection//array.nit:23 */
178 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
179 if (UNTAG_Bool(REGB1
)) {
181 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 23);
183 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2]);
184 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
185 if (UNTAG_Bool(REGB2
)) {
187 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
189 /* ./../lib/standard//kernel.nit:215 */
190 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
191 /* ./../lib/standard//collection//array.nit:235 */
192 if (UNTAG_Bool(REGB1
)) {
193 /* ./../lib/standard//collection//array.nit:236 */
194 REGB1
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
195 if (UNTAG_Bool(REGB1
)) {
196 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 236);
198 /* ./../lib/standard//collection//array.nit:652 */
199 fra
.me
.REG
[4] = ((Nit_NativeArray
)fra
.me
.REG
[3])->val
[UNTAG_Int(REGB0
)];
200 /* ./metamodel//genericity.nit:47 */
201 REGB1
= CALL_metamodel___genericity___MMTypeGeneric___params_equals(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[1]);
202 if (UNTAG_Bool(REGB1
)) {
205 /* ./../lib/standard//collection//array.nit:237 */
207 /* ./../lib/standard//kernel.nit:218 */
208 REGB1
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
209 /* ./../lib/standard//collection//array.nit:237 */
212 /* ./../lib/standard//collection//array.nit:235 */
217 /* ./metamodel//genericity.nit:49 */
218 fra
.me
.REG
[1] = NEW_MMTypeGeneric_metamodel___genericity___MMTypeGeneric___init(fra
.me
.REG
[0], fra
.me
.REG
[1]);
219 /* ./metamodel//genericity.nit:50 */
220 REGB0
= TAG_Bool(ATTR_metamodel___genericity___MMLocalClass____types(fra
.me
.REG
[0])!=NIT_NULL
);
221 if (UNTAG_Bool(REGB0
)) {
223 nit_abort("Uninitialized attribute %s", "_types", LOCATE_metamodel___genericity
, 50);
225 fra
.me
.REG
[0] = ATTR_metamodel___genericity___MMLocalClass____types(fra
.me
.REG
[0]);
226 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
227 /* ./metamodel//genericity.nit:51 */
228 fra
.me
.REG
[4] = fra
.me
.REG
[1];
231 stack_frame_head
= fra
.me
.prev
;
232 return fra
.me
.REG
[4];
234 val_t
metamodel___genericity___MMLocalClass___formals_types(val_t p0
){
235 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
242 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
243 fra
.me
.file
= LOCATE_metamodel___genericity
;
245 fra
.me
.meth
= LOCATE_metamodel___genericity___MMLocalClass___formals_types
;
246 fra
.me
.has_broke
= 0;
248 fra
.me
.REG
[0] = NIT_NULL
;
249 fra
.me
.REG
[1] = NIT_NULL
;
250 fra
.me
.REG
[2] = NIT_NULL
;
251 fra
.me
.REG
[3] = NIT_NULL
;
253 /* ./metamodel//genericity.nit:61 */
254 REGB0
= TAG_Bool(ATTR_metamodel___genericity___MMLocalClass____formals_types(fra
.me
.REG
[0])!=NIT_NULL
);
255 if (UNTAG_Bool(REGB0
)) {
257 nit_abort("Uninitialized attribute %s", "_formals_types", LOCATE_metamodel___genericity
, 61);
259 fra
.me
.REG
[1] = ATTR_metamodel___genericity___MMLocalClass____formals_types(fra
.me
.REG
[0]);
260 REGB0
= CALL_standard___collection___abstract_collection___Collection___is_empty(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
261 if (UNTAG_Bool(REGB0
)) {
262 /* ./metamodel//genericity.nit:62 */
263 REGB0
= TAG_Bool(VAL_ISA(fra
.me
.REG
[0], COLOR_metamodel___abstractmetamodel___MMConcreteClass
, ID_metamodel___abstractmetamodel___MMConcreteClass
)) /*cast MMConcreteClass*/;
264 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
265 if (UNTAG_Bool(REGB0
)) {
267 nit_abort("Assert failed", NULL
, LOCATE_metamodel___genericity
, 62);
269 /* ./metamodel//genericity.nit:65 */
271 REGB1
= CALL_metamodel___abstractmetamodel___MMLocalClass___arity(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
272 /* ./../lib/standard//kernel.nit:335 */
274 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
275 if (UNTAG_Bool(REGB2
)) {
277 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
279 /* ./../lib/standard//kernel.nit:215 */
280 REGB2
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
281 /* ./../lib/standard//kernel.nit:335 */
282 if (UNTAG_Bool(REGB2
)) {
283 /* ./metamodel//genericity.nit:65 */
285 /* ./metamodel//genericity.nit:66 */
286 fra
.me
.REG
[1] = CALL_metamodel___abstractmetamodel___MMLocalClass___global(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
287 fra
.me
.REG
[1] = CALL_metamodel___abstractmetamodel___MMGlobalClass___intro(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
288 fra
.me
.REG
[1] = CALL_metamodel___genericity___MMLocalClass___get_formal(fra
.me
.REG
[1])(fra
.me
.REG
[1], REGB2
);
289 /* ./metamodel//genericity.nit:67 */
290 fra
.me
.REG
[1] = CALL_metamodel___type_formal___MMTypeFormal___name(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
291 fra
.me
.REG
[1] = NEW_MMTypeFormalParameter_metamodel___genericity___MMTypeFormalParameter___init(fra
.me
.REG
[1], REGB2
, fra
.me
.REG
[0]);
292 /* ./metamodel//genericity.nit:68 */
293 CALL_metamodel___genericity___MMLocalClass___register_formal(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
294 /* ./../lib/standard//kernel.nit:337 */
296 /* ./../lib/standard//kernel.nit:218 */
297 REGB2
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB2
));
298 /* ./../lib/standard//kernel.nit:337 */
301 /* ./../lib/standard//kernel.nit:335 */
306 /* ./metamodel//genericity.nit:71 */
308 REGB1
= CALL_metamodel___abstractmetamodel___MMLocalClass___arity(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
309 /* ./../lib/standard//kernel.nit:335 */
311 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
312 if (UNTAG_Bool(REGB2
)) {
314 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
316 /* ./../lib/standard//kernel.nit:215 */
317 REGB2
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
318 /* ./../lib/standard//kernel.nit:335 */
319 if (UNTAG_Bool(REGB2
)) {
320 /* ./metamodel//genericity.nit:71 */
322 /* ./metamodel//genericity.nit:72 */
323 fra
.me
.REG
[1] = CALL_metamodel___abstractmetamodel___MMLocalClass___global(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
324 fra
.me
.REG
[1] = CALL_metamodel___abstractmetamodel___MMGlobalClass___intro(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
325 fra
.me
.REG
[1] = CALL_metamodel___genericity___MMLocalClass___get_formal(fra
.me
.REG
[1])(fra
.me
.REG
[1], REGB2
);
326 /* ./metamodel//genericity.nit:73 */
327 REGB3
= TAG_Bool(ATTR_metamodel___genericity___MMLocalClass____formals_types(fra
.me
.REG
[0])!=NIT_NULL
);
328 if (UNTAG_Bool(REGB3
)) {
330 nit_abort("Uninitialized attribute %s", "_formals_types", LOCATE_metamodel___genericity
, 73);
332 fra
.me
.REG
[2] = ATTR_metamodel___genericity___MMLocalClass____formals_types(fra
.me
.REG
[0]);
333 /* ./../lib/standard//collection//array.nit:243 */
335 REGB4
= TAG_Bool(VAL_ISA(REGB3
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB2
), VTID_standard___kernel___Comparable___OTHER(REGB2
))) /*cast OTHER*/;
336 if (UNTAG_Bool(REGB4
)) {
338 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
340 /* ./../lib/standard//kernel.nit:216 */
341 REGB3
= TAG_Bool(UNTAG_Int(REGB2
)>=UNTAG_Int(REGB3
));
342 /* ./../lib/standard//collection//array.nit:243 */
343 if (UNTAG_Bool(REGB3
)) {
344 REGB3
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
345 if (UNTAG_Bool(REGB3
)) {
347 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 243);
349 REGB3
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2]);
350 REGB4
= TAG_Bool(VAL_ISA(REGB3
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB2
), VTID_standard___kernel___Comparable___OTHER(REGB2
))) /*cast OTHER*/;
351 if (UNTAG_Bool(REGB4
)) {
353 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
355 /* ./../lib/standard//kernel.nit:215 */
356 REGB3
= TAG_Bool(UNTAG_Int(REGB2
)<UNTAG_Int(REGB3
));
358 /* ./../lib/standard//collection//array.nit:243 */
359 REGB4
= TAG_Bool(false);
362 if (UNTAG_Bool(REGB3
)) {
364 nit_abort("Assert %s failed", "'index'", LOCATE_standard___collection___array
, 243);
366 /* ./../lib/standard//collection//array.nit:244 */
367 fra
.me
.REG
[2] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[2]);
368 REGB3
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
369 if (UNTAG_Bool(REGB3
)) {
370 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 244);
372 /* ./../lib/standard//collection//array.nit:652 */
373 fra
.me
.REG
[2] = ((Nit_NativeArray
)fra
.me
.REG
[2])->val
[UNTAG_Int(REGB2
)];
374 /* ./../lib/standard//collection//array.nit:244 */
377 /* ./metamodel//genericity.nit:74 */
378 fra
.me
.REG
[1] = CALL_metamodel___type_formal___MMTypeFormal___bound(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
379 fra
.me
.REG
[3] = CALL_metamodel___abstractmetamodel___MMLocalClass___mmmodule(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
380 fra
.me
.REG
[3] = CALL_metamodel___static_type___MMType___for_module(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[3]);
381 CALL_metamodel___genericity___MMTypeFormalParameter___bound__eq(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
382 /* ./../lib/standard//kernel.nit:337 */
384 /* ./../lib/standard//kernel.nit:218 */
385 REGB2
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB2
));
386 /* ./../lib/standard//kernel.nit:337 */
389 /* ./../lib/standard//kernel.nit:335 */
395 /* ./metamodel//genericity.nit:77 */
396 REGB0
= TAG_Bool(ATTR_metamodel___genericity___MMLocalClass____formals_types(fra
.me
.REG
[0])!=NIT_NULL
);
397 if (UNTAG_Bool(REGB0
)) {
399 nit_abort("Uninitialized attribute %s", "_formals_types", LOCATE_metamodel___genericity
, 77);
401 fra
.me
.REG
[0] = ATTR_metamodel___genericity___MMLocalClass____formals_types(fra
.me
.REG
[0]);
404 stack_frame_head
= fra
.me
.prev
;
405 return fra
.me
.REG
[0];
407 val_t
metamodel___genericity___MMLocalClass___get_type(val_t p0
){
408 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
412 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
413 fra
.me
.file
= LOCATE_metamodel___genericity
;
415 fra
.me
.meth
= LOCATE_metamodel___genericity___MMLocalClass___get_type
;
416 fra
.me
.has_broke
= 0;
418 fra
.me
.REG
[0] = NIT_NULL
;
419 fra
.me
.REG
[1] = NIT_NULL
;
420 fra
.me
.REG
[2] = NIT_NULL
;
422 /* ./metamodel//genericity.nit:80 */
423 fra
.me
.REG
[1] = fra
.me
.REG
[0];
424 /* ./metamodel//genericity.nit:82 */
425 fra
.me
.REG
[2] = ATTR_metamodel___static_type___MMLocalClass____base_type_cache(fra
.me
.REG
[1]);
426 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
427 if (UNTAG_Bool(REGB0
)) {
429 REGB1
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
430 if (UNTAG_Bool(REGB1
)) {
431 REGB1
= TAG_Bool(false);
434 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], NIT_NULL
);
438 if (UNTAG_Bool(REGB0
)) {
439 REGB0
= CALL_metamodel___genericity___MMLocalClass___is_generic(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
441 REGB1
= TAG_Bool(false);
444 if (UNTAG_Bool(REGB0
)) {
445 /* ./metamodel//genericity.nit:83 */
446 fra
.me
.REG
[2] = CALL_metamodel___genericity___MMLocalClass___formals_types(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
447 fra
.me
.REG
[2] = CALL_metamodel___genericity___MMLocalClass___get_instantiate_type(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
448 ATTR_metamodel___static_type___MMLocalClass____base_type_cache(fra
.me
.REG
[1]) = fra
.me
.REG
[2];
449 /* ./metamodel//genericity.nit:84 */
450 fra
.me
.REG
[1] = ATTR_metamodel___static_type___MMLocalClass____base_type_cache(fra
.me
.REG
[1]);
451 REGB0
= TAG_Bool((fra
.me
.REG
[1]!=NIT_NULL
) && VAL_ISA(fra
.me
.REG
[1], COLOR_metamodel___static_type___MMType
, ID_metamodel___static_type___MMType
)) /*cast MMType*/;
452 if (UNTAG_Bool(REGB0
)) {
454 nit_abort("Cast failed", NULL
, LOCATE_metamodel___genericity
, 84);
458 /* ./metamodel//genericity.nit:86 */
459 fra
.me
.REG
[0] = CALL_SUPER_metamodel___genericity___MMLocalClass___get_type(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
460 fra
.me
.REG
[1] = fra
.me
.REG
[0];
464 stack_frame_head
= fra
.me
.prev
;
465 return fra
.me
.REG
[1];
467 val_t
metamodel___genericity___MMLocalClass___is_generic(val_t p0
){
468 struct {struct stack_frame_t me
;} fra
;
473 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
474 fra
.me
.file
= LOCATE_metamodel___genericity
;
476 fra
.me
.meth
= LOCATE_metamodel___genericity___MMLocalClass___is_generic
;
477 fra
.me
.has_broke
= 0;
479 fra
.me
.REG
[0] = NIT_NULL
;
481 /* ./metamodel//genericity.nit:91 */
482 REGB0
= CALL_metamodel___abstractmetamodel___MMLocalClass___arity(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
484 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
485 if (UNTAG_Bool(REGB2
)) {
487 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
489 /* ./../lib/standard//kernel.nit:217 */
490 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>UNTAG_Int(REGB1
));
491 /* ./metamodel//genericity.nit:91 */
494 stack_frame_head
= fra
.me
.prev
;
497 val_t
metamodel___genericity___MMType___is_generic(val_t p0
){
498 struct {struct stack_frame_t me
;} fra
;
500 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
501 fra
.me
.file
= LOCATE_metamodel___genericity
;
503 fra
.me
.meth
= LOCATE_metamodel___genericity___MMType___is_generic
;
504 fra
.me
.has_broke
= 0;
506 /* ./metamodel//genericity.nit:95 */
507 nit_abort("Deferred method called", NULL
, LOCATE_metamodel___genericity
, 95);
508 stack_frame_head
= fra
.me
.prev
;
511 val_t
metamodel___genericity___MMTypeFormal___is_generic(val_t p0
){
512 struct {struct stack_frame_t me
;} fra
;
515 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
516 fra
.me
.file
= LOCATE_metamodel___genericity
;
518 fra
.me
.meth
= LOCATE_metamodel___genericity___MMTypeFormal___is_generic
;
519 fra
.me
.has_broke
= 0;
521 fra
.me
.REG
[0] = NIT_NULL
;
523 /* ./metamodel//genericity.nit:100 */
524 fra
.me
.REG
[0] = ATTR_metamodel___type_formal___MMTypeFormal____bound(fra
.me
.REG
[0]);
525 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
526 if (UNTAG_Bool(REGB0
)) {
527 nit_abort("Reciever is null", NULL
, LOCATE_metamodel___genericity
, 100);
529 REGB0
= CALL_metamodel___genericity___MMType___is_generic(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
532 stack_frame_head
= fra
.me
.prev
;
535 val_t
metamodel___genericity___MMTypeSimpleClass___is_generic(val_t p0
){
536 struct {struct stack_frame_t me
;} fra
;
539 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
540 fra
.me
.file
= LOCATE_metamodel___genericity
;
542 fra
.me
.meth
= LOCATE_metamodel___genericity___MMTypeSimpleClass___is_generic
;
543 fra
.me
.has_broke
= 0;
545 fra
.me
.REG
[0] = NIT_NULL
;
547 /* ./metamodel//genericity.nit:104 */
548 REGB0
= TAG_Bool(false);
551 stack_frame_head
= fra
.me
.prev
;
554 val_t
metamodel___genericity___MMTypeGeneric___params(val_t p0
){
555 struct {struct stack_frame_t me
;} fra
;
558 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
559 fra
.me
.file
= LOCATE_metamodel___genericity
;
561 fra
.me
.meth
= LOCATE_metamodel___genericity___MMTypeGeneric___params
;
562 fra
.me
.has_broke
= 0;
564 fra
.me
.REG
[0] = NIT_NULL
;
566 /* ./metamodel//genericity.nit:109 */
567 REGB0
= TAG_Bool(ATTR_metamodel___genericity___MMTypeGeneric____params(fra
.me
.REG
[0])!=NIT_NULL
);
568 if (UNTAG_Bool(REGB0
)) {
570 nit_abort("Uninitialized attribute %s", "_params", LOCATE_metamodel___genericity
, 109);
572 fra
.me
.REG
[0] = ATTR_metamodel___genericity___MMTypeGeneric____params(fra
.me
.REG
[0]);
573 stack_frame_head
= fra
.me
.prev
;
574 return fra
.me
.REG
[0];
576 val_t
metamodel___genericity___MMTypeGeneric___is_generic(val_t p0
){
577 struct {struct stack_frame_t me
;} fra
;
580 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
581 fra
.me
.file
= LOCATE_metamodel___genericity
;
583 fra
.me
.meth
= LOCATE_metamodel___genericity___MMTypeGeneric___is_generic
;
584 fra
.me
.has_broke
= 0;
586 fra
.me
.REG
[0] = NIT_NULL
;
588 /* ./metamodel//genericity.nit:112 */
589 REGB0
= TAG_Bool(true);
592 stack_frame_head
= fra
.me
.prev
;
595 val_t
metamodel___genericity___MMTypeGeneric___is_supertype(val_t p0
, val_t p1
){
596 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
600 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
601 fra
.me
.file
= LOCATE_metamodel___genericity
;
603 fra
.me
.meth
= LOCATE_metamodel___genericity___MMTypeGeneric___is_supertype
;
604 fra
.me
.has_broke
= 0;
606 fra
.me
.REG
[0] = NIT_NULL
;
607 fra
.me
.REG
[1] = NIT_NULL
;
608 fra
.me
.REG
[2] = NIT_NULL
;
609 fra
.me
.REG
[3] = NIT_NULL
;
612 /* ./metamodel//genericity.nit:116 */
613 fra
.me
.REG
[2] = CALL_metamodel___static_type___MMType___local_class(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
614 fra
.me
.REG
[2] = CALL_metamodel___abstractmetamodel___MMLocalClass___cshe(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
615 REGB0
= TAG_Bool(ATTR_metamodel___static_type___MMTypeClass____local_class(fra
.me
.REG
[0])!=NIT_NULL
);
616 if (UNTAG_Bool(REGB0
)) {
618 nit_abort("Uninitialized attribute %s", "_local_class", LOCATE_metamodel___genericity
, 116);
620 fra
.me
.REG
[3] = ATTR_metamodel___static_type___MMTypeClass____local_class(fra
.me
.REG
[0]);
621 REGB0
= CALL_metamodel___partial_order___PartialOrderElement_____leq(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
622 if (UNTAG_Bool(REGB0
)) {
623 /* ./metamodel//genericity.nit:117 */
624 REGB0
= TAG_Bool(ATTR_metamodel___static_type___MMTypeClass____local_class(fra
.me
.REG
[0])!=NIT_NULL
);
625 if (UNTAG_Bool(REGB0
)) {
627 nit_abort("Uninitialized attribute %s", "_local_class", LOCATE_metamodel___genericity
, 117);
629 fra
.me
.REG
[3] = ATTR_metamodel___static_type___MMTypeClass____local_class(fra
.me
.REG
[0]);
630 fra
.me
.REG
[3] = CALL_metamodel___static_type___MMType___upcast_for(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[3]);
631 /* ./metamodel//genericity.nit:118 */
632 REGB0
= TAG_Bool(VAL_ISA(fra
.me
.REG
[3], COLOR_metamodel___genericity___MMTypeGeneric
, ID_metamodel___genericity___MMTypeGeneric
)) /*cast MMTypeGeneric*/;
633 if (UNTAG_Bool(REGB0
)) {
634 /* ./metamodel//genericity.nit:119 */
635 REGB0
= CALL_metamodel___genericity___MMTypeGeneric___is_subtype(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[3]);
639 /* ./metamodel//genericity.nit:122 */
640 REGB1
= TAG_Bool(false);
644 stack_frame_head
= fra
.me
.prev
;
647 val_t
metamodel___genericity___MMTypeGeneric___upcast_for(val_t p0
, val_t p1
){
648 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
652 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
653 fra
.me
.file
= LOCATE_metamodel___genericity
;
655 fra
.me
.meth
= LOCATE_metamodel___genericity___MMTypeGeneric___upcast_for
;
656 fra
.me
.has_broke
= 0;
658 fra
.me
.REG
[0] = NIT_NULL
;
659 fra
.me
.REG
[1] = NIT_NULL
;
660 fra
.me
.REG
[2] = NIT_NULL
;
663 /* ./metamodel//genericity.nit:125 */
664 fra
.me
.REG
[2] = fra
.me
.REG
[0];
665 /* ./metamodel//genericity.nit:127 */
666 fra
.me
.REG
[1] = CALL_SUPER_metamodel___genericity___MMTypeGeneric___upcast_for(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
667 /* ./metamodel//genericity.nit:128 */
668 REGB0
= TAG_Bool(IS_EQUAL_OO(fra
.me
.REG
[1],fra
.me
.REG
[2]));
669 if (UNTAG_Bool(REGB0
)) {
671 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
674 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
675 if (UNTAG_Bool(REGB0
)) {
676 /* ./metamodel//genericity.nit:129 */
677 fra
.me
.REG
[2] = CALL_metamodel___static_type___MMType___adapt_to(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
678 fra
.me
.REG
[1] = fra
.me
.REG
[2];
680 /* ./metamodel//genericity.nit:131 */
683 stack_frame_head
= fra
.me
.prev
;
684 return fra
.me
.REG
[1];
686 val_t
metamodel___genericity___MMTypeGeneric___for_module(val_t p0
, val_t p1
){
687 struct {struct stack_frame_t me
; val_t MORE_REG
[6];} fra
;
692 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
693 fra
.me
.file
= LOCATE_metamodel___genericity
;
695 fra
.me
.meth
= LOCATE_metamodel___genericity___MMTypeGeneric___for_module
;
696 fra
.me
.has_broke
= 0;
698 fra
.me
.REG
[0] = NIT_NULL
;
699 fra
.me
.REG
[1] = NIT_NULL
;
700 fra
.me
.REG
[2] = NIT_NULL
;
701 fra
.me
.REG
[3] = NIT_NULL
;
702 fra
.me
.REG
[4] = NIT_NULL
;
703 fra
.me
.REG
[5] = NIT_NULL
;
704 fra
.me
.REG
[6] = NIT_NULL
;
707 /* ./metamodel//genericity.nit:136 */
708 fra
.me
.REG
[2] = fra
.me
.REG
[0];
709 /* ./metamodel//genericity.nit:137 */
710 fra
.me
.REG
[3] = CALL_metamodel___static_type___MMType___mmmodule(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
711 REGB0
= TAG_Bool(IS_EQUAL_OO(fra
.me
.REG
[3],fra
.me
.REG
[1]));
712 if (UNTAG_Bool(REGB0
)) {
714 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[1]);
717 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
718 if (UNTAG_Bool(REGB0
)) {
719 /* ./metamodel//genericity.nit:138 */
720 fra
.me
.REG
[3] = NEW_Array_standard___collection___array___Array___init();
721 /* ./metamodel//genericity.nit:139 */
722 REGB0
= TAG_Bool(ATTR_metamodel___genericity___MMTypeGeneric____params(fra
.me
.REG
[0])!=NIT_NULL
);
723 if (UNTAG_Bool(REGB0
)) {
725 nit_abort("Uninitialized attribute %s", "_params", LOCATE_metamodel___genericity
, 139);
727 fra
.me
.REG
[4] = ATTR_metamodel___genericity___MMTypeGeneric____params(fra
.me
.REG
[0]);
728 /* ./../lib/standard//collection//array.nit:232 */
730 /* ./../lib/standard//collection//array.nit:233 */
731 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[4])!=NIT_NULL
);
732 if (UNTAG_Bool(REGB1
)) {
734 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 233);
736 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[4]);
737 /* ./../lib/standard//collection//array.nit:234 */
738 fra
.me
.REG
[5] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[4]);
739 /* ./../lib/standard//collection//array.nit:235 */
741 /* ./../lib/standard//collection//array.nit:23 */
742 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[4])!=NIT_NULL
);
743 if (UNTAG_Bool(REGB1
)) {
745 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 23);
747 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[4]);
748 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
749 if (UNTAG_Bool(REGB2
)) {
751 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
753 /* ./../lib/standard//kernel.nit:215 */
754 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
755 /* ./../lib/standard//collection//array.nit:235 */
756 if (UNTAG_Bool(REGB1
)) {
757 /* ./../lib/standard//collection//array.nit:236 */
758 REGB1
= TAG_Bool(fra
.me
.REG
[5]==NIT_NULL
);
759 if (UNTAG_Bool(REGB1
)) {
760 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 236);
762 /* ./../lib/standard//collection//array.nit:652 */
763 fra
.me
.REG
[6] = ((Nit_NativeArray
)fra
.me
.REG
[5])->val
[UNTAG_Int(REGB0
)];
764 /* ./metamodel//genericity.nit:140 */
765 fra
.me
.REG
[6] = CALL_metamodel___static_type___MMType___for_module(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[1]);
766 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[6]);
767 /* ./../lib/standard//collection//array.nit:237 */
769 /* ./../lib/standard//kernel.nit:218 */
770 REGB1
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
771 /* ./../lib/standard//collection//array.nit:237 */
774 /* ./../lib/standard//collection//array.nit:235 */
779 /* ./metamodel//genericity.nit:142 */
780 REGB0
= TAG_Bool(ATTR_metamodel___static_type___MMTypeClass____local_class(fra
.me
.REG
[0])!=NIT_NULL
);
781 if (UNTAG_Bool(REGB0
)) {
783 nit_abort("Uninitialized attribute %s", "_local_class", LOCATE_metamodel___genericity
, 142);
785 fra
.me
.REG
[0] = ATTR_metamodel___static_type___MMTypeClass____local_class(fra
.me
.REG
[0]);
786 fra
.me
.REG
[1] = CALL_metamodel___abstractmetamodel___MMLocalClass___for_module(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
787 /* ./metamodel//genericity.nit:143 */
788 fra
.me
.REG
[3] = CALL_metamodel___genericity___MMLocalClass___get_instantiate_type(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[3]);
789 fra
.me
.REG
[2] = fra
.me
.REG
[3];
791 /* ./metamodel//genericity.nit:145 */
794 stack_frame_head
= fra
.me
.prev
;
795 return fra
.me
.REG
[2];
797 val_t
metamodel___genericity___MMTypeGeneric___adapt_to(val_t p0
, val_t p1
){
798 struct {struct stack_frame_t me
; val_t MORE_REG
[5];} fra
;
803 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
804 fra
.me
.file
= LOCATE_metamodel___genericity
;
806 fra
.me
.meth
= LOCATE_metamodel___genericity___MMTypeGeneric___adapt_to
;
807 fra
.me
.has_broke
= 0;
809 fra
.me
.REG
[0] = NIT_NULL
;
810 fra
.me
.REG
[1] = NIT_NULL
;
811 fra
.me
.REG
[2] = NIT_NULL
;
812 fra
.me
.REG
[3] = NIT_NULL
;
813 fra
.me
.REG
[4] = NIT_NULL
;
814 fra
.me
.REG
[5] = NIT_NULL
;
817 /* ./metamodel//genericity.nit:150 */
818 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___init();
819 /* ./metamodel//genericity.nit:151 */
820 REGB0
= TAG_Bool(ATTR_metamodel___genericity___MMTypeGeneric____params(fra
.me
.REG
[0])!=NIT_NULL
);
821 if (UNTAG_Bool(REGB0
)) {
823 nit_abort("Uninitialized attribute %s", "_params", LOCATE_metamodel___genericity
, 151);
825 fra
.me
.REG
[3] = ATTR_metamodel___genericity___MMTypeGeneric____params(fra
.me
.REG
[0]);
826 /* ./../lib/standard//collection//array.nit:232 */
828 /* ./../lib/standard//collection//array.nit:233 */
829 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[3])!=NIT_NULL
);
830 if (UNTAG_Bool(REGB1
)) {
832 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 233);
834 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[3]);
835 /* ./../lib/standard//collection//array.nit:234 */
836 fra
.me
.REG
[4] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[3]);
837 /* ./../lib/standard//collection//array.nit:235 */
839 /* ./../lib/standard//collection//array.nit:23 */
840 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[3])!=NIT_NULL
);
841 if (UNTAG_Bool(REGB1
)) {
843 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 23);
845 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[3]);
846 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
847 if (UNTAG_Bool(REGB2
)) {
849 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
851 /* ./../lib/standard//kernel.nit:215 */
852 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
853 /* ./../lib/standard//collection//array.nit:235 */
854 if (UNTAG_Bool(REGB1
)) {
855 /* ./../lib/standard//collection//array.nit:236 */
856 REGB1
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
857 if (UNTAG_Bool(REGB1
)) {
858 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 236);
860 /* ./../lib/standard//collection//array.nit:652 */
861 fra
.me
.REG
[5] = ((Nit_NativeArray
)fra
.me
.REG
[4])->val
[UNTAG_Int(REGB0
)];
862 /* ./metamodel//genericity.nit:152 */
863 fra
.me
.REG
[5] = CALL_metamodel___static_type___MMType___adapt_to(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[1]);
864 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[5]);
865 /* ./../lib/standard//collection//array.nit:237 */
867 /* ./../lib/standard//kernel.nit:218 */
868 REGB1
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
869 /* ./../lib/standard//collection//array.nit:237 */
872 /* ./../lib/standard//collection//array.nit:235 */
877 /* ./metamodel//genericity.nit:154 */
878 REGB0
= TAG_Bool(ATTR_metamodel___static_type___MMTypeClass____local_class(fra
.me
.REG
[0])!=NIT_NULL
);
879 if (UNTAG_Bool(REGB0
)) {
881 nit_abort("Uninitialized attribute %s", "_local_class", LOCATE_metamodel___genericity
, 154);
883 fra
.me
.REG
[0] = ATTR_metamodel___static_type___MMTypeClass____local_class(fra
.me
.REG
[0]);
884 fra
.me
.REG
[2] = CALL_metamodel___genericity___MMLocalClass___get_instantiate_type(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[2]);
885 /* ./metamodel//genericity.nit:155 */
888 stack_frame_head
= fra
.me
.prev
;
889 return fra
.me
.REG
[2];
891 val_t
metamodel___genericity___MMTypeGeneric___params_equals(val_t p0
, val_t p1
){
892 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
901 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
902 fra
.me
.file
= LOCATE_metamodel___genericity
;
904 fra
.me
.meth
= LOCATE_metamodel___genericity___MMTypeGeneric___params_equals
;
905 fra
.me
.has_broke
= 0;
907 fra
.me
.REG
[0] = NIT_NULL
;
908 fra
.me
.REG
[1] = NIT_NULL
;
909 fra
.me
.REG
[2] = NIT_NULL
;
910 fra
.me
.REG
[3] = NIT_NULL
;
913 /* ./../lib/standard//collection//array.nit:23 */
914 REGB0
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[1])!=NIT_NULL
);
915 if (UNTAG_Bool(REGB0
)) {
917 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 23);
919 REGB0
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[1]);
920 /* ./metamodel//genericity.nit:160 */
921 REGB1
= TAG_Bool(ATTR_metamodel___genericity___MMTypeGeneric____params(fra
.me
.REG
[0])!=NIT_NULL
);
922 if (UNTAG_Bool(REGB1
)) {
924 nit_abort("Uninitialized attribute %s", "_params", LOCATE_metamodel___genericity
, 160);
926 fra
.me
.REG
[2] = ATTR_metamodel___genericity___MMTypeGeneric____params(fra
.me
.REG
[0]);
927 /* ./../lib/standard//collection//array.nit:23 */
928 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
929 if (UNTAG_Bool(REGB1
)) {
931 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 23);
933 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2]);
934 /* ./metamodel//genericity.nit:160 */
935 REGB2
= TAG_Bool(IS_EQUAL_OO(REGB0
,REGB1
));
936 if (UNTAG_Bool(REGB2
)) {
938 /* ./../lib/standard//kernel.nit:210 */
939 REGB1
= TAG_Bool((REGB0
)==(REGB1
));
940 /* ./metamodel//genericity.nit:160 */
943 REGB2
= TAG_Bool(!UNTAG_Bool(REGB2
));
944 if (UNTAG_Bool(REGB2
)) {
945 /* ./metamodel//genericity.nit:161 */
946 REGB2
= TAG_Bool(false);
949 /* ./metamodel//genericity.nit:163 */
951 /* ./../lib/standard//collection//array.nit:23 */
952 REGB0
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[1])!=NIT_NULL
);
953 if (UNTAG_Bool(REGB0
)) {
955 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 23);
957 REGB0
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[1]);
958 /* ./../lib/standard//kernel.nit:335 */
960 REGB3
= TAG_Bool(VAL_ISA(REGB0
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1
), VTID_standard___kernel___Comparable___OTHER(REGB1
))) /*cast OTHER*/;
961 if (UNTAG_Bool(REGB3
)) {
963 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
965 /* ./../lib/standard//kernel.nit:215 */
966 REGB3
= TAG_Bool(UNTAG_Int(REGB1
)<UNTAG_Int(REGB0
));
967 /* ./../lib/standard//kernel.nit:335 */
968 if (UNTAG_Bool(REGB3
)) {
969 /* ./metamodel//genericity.nit:163 */
971 /* ./metamodel//genericity.nit:164 */
972 REGB4
= TAG_Bool(ATTR_metamodel___genericity___MMTypeGeneric____params(fra
.me
.REG
[0])!=NIT_NULL
);
973 if (UNTAG_Bool(REGB4
)) {
975 nit_abort("Uninitialized attribute %s", "_params", LOCATE_metamodel___genericity
, 164);
977 fra
.me
.REG
[2] = ATTR_metamodel___genericity___MMTypeGeneric____params(fra
.me
.REG
[0]);
978 /* ./../lib/standard//collection//array.nit:241 */
980 /* ./../lib/standard//collection//array.nit:243 */
982 REGB6
= TAG_Bool(VAL_ISA(REGB5
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB4
), VTID_standard___kernel___Comparable___OTHER(REGB4
))) /*cast OTHER*/;
983 if (UNTAG_Bool(REGB6
)) {
985 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
987 /* ./../lib/standard//kernel.nit:216 */
988 REGB5
= TAG_Bool(UNTAG_Int(REGB4
)>=UNTAG_Int(REGB5
));
989 /* ./../lib/standard//collection//array.nit:243 */
990 if (UNTAG_Bool(REGB5
)) {
991 REGB5
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
992 if (UNTAG_Bool(REGB5
)) {
994 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 243);
996 REGB5
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2]);
997 REGB6
= TAG_Bool(VAL_ISA(REGB5
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB4
), VTID_standard___kernel___Comparable___OTHER(REGB4
))) /*cast OTHER*/;
998 if (UNTAG_Bool(REGB6
)) {
1000 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1002 /* ./../lib/standard//kernel.nit:215 */
1003 REGB5
= TAG_Bool(UNTAG_Int(REGB4
)<UNTAG_Int(REGB5
));
1005 /* ./../lib/standard//collection//array.nit:243 */
1006 REGB6
= TAG_Bool(false);
1009 if (UNTAG_Bool(REGB5
)) {
1011 nit_abort("Assert %s failed", "'index'", LOCATE_standard___collection___array
, 243);
1013 /* ./../lib/standard//collection//array.nit:244 */
1014 fra
.me
.REG
[2] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[2]);
1015 REGB5
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
1016 if (UNTAG_Bool(REGB5
)) {
1017 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 244);
1019 /* ./../lib/standard//collection//array.nit:652 */
1020 fra
.me
.REG
[2] = ((Nit_NativeArray
)fra
.me
.REG
[2])->val
[UNTAG_Int(REGB4
)];
1021 /* ./../lib/standard//collection//array.nit:244 */
1024 /* ./../lib/standard//collection//array.nit:241 */
1025 fra
.me
.REG
[3] = fra
.me
.REG
[1];
1026 /* ./../lib/standard//collection//array.nit:243 */
1028 REGB5
= TAG_Bool(VAL_ISA(REGB4
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB3
), VTID_standard___kernel___Comparable___OTHER(REGB3
))) /*cast OTHER*/;
1029 if (UNTAG_Bool(REGB5
)) {
1031 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1033 /* ./../lib/standard//kernel.nit:216 */
1034 REGB4
= TAG_Bool(UNTAG_Int(REGB3
)>=UNTAG_Int(REGB4
));
1035 /* ./../lib/standard//collection//array.nit:243 */
1036 if (UNTAG_Bool(REGB4
)) {
1037 REGB4
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[3])!=NIT_NULL
);
1038 if (UNTAG_Bool(REGB4
)) {
1040 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 243);
1042 REGB4
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[3]);
1043 REGB5
= TAG_Bool(VAL_ISA(REGB4
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB3
), VTID_standard___kernel___Comparable___OTHER(REGB3
))) /*cast OTHER*/;
1044 if (UNTAG_Bool(REGB5
)) {
1046 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1048 /* ./../lib/standard//kernel.nit:215 */
1049 REGB4
= TAG_Bool(UNTAG_Int(REGB3
)<UNTAG_Int(REGB4
));
1051 /* ./../lib/standard//collection//array.nit:243 */
1052 REGB5
= TAG_Bool(false);
1055 if (UNTAG_Bool(REGB4
)) {
1057 nit_abort("Assert %s failed", "'index'", LOCATE_standard___collection___array
, 243);
1059 /* ./../lib/standard//collection//array.nit:244 */
1060 fra
.me
.REG
[3] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[3]);
1061 REGB4
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
1062 if (UNTAG_Bool(REGB4
)) {
1063 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 244);
1065 /* ./../lib/standard//collection//array.nit:652 */
1066 fra
.me
.REG
[3] = ((Nit_NativeArray
)fra
.me
.REG
[3])->val
[UNTAG_Int(REGB3
)];
1067 /* ./../lib/standard//collection//array.nit:244 */
1070 /* ./metamodel//genericity.nit:164 */
1071 REGB3
= TAG_Bool(IS_EQUAL_NN(fra
.me
.REG
[2],fra
.me
.REG
[3]));
1072 if (UNTAG_Bool(REGB3
)) {
1074 REGB4
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
1075 if (UNTAG_Bool(REGB4
)) {
1076 REGB4
= TAG_Bool(false);
1079 REGB4
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
1083 REGB3
= TAG_Bool(!UNTAG_Bool(REGB3
));
1084 if (UNTAG_Bool(REGB3
)) {
1085 /* ./metamodel//genericity.nit:165 */
1086 REGB3
= TAG_Bool(false);
1090 /* ./../lib/standard//kernel.nit:337 */
1092 /* ./../lib/standard//kernel.nit:218 */
1093 REGB3
= TAG_Int(UNTAG_Int(REGB1
)+UNTAG_Int(REGB3
));
1094 /* ./../lib/standard//kernel.nit:337 */
1097 /* ./../lib/standard//kernel.nit:335 */
1102 /* ./metamodel//genericity.nit:168 */
1103 REGB1
= TAG_Bool(true);
1107 stack_frame_head
= fra
.me
.prev
;
1110 val_t
metamodel___genericity___MMTypeGeneric___to_s(val_t p0
){
1111 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
1114 static val_t once_value_1
; /* Once value */
1115 static val_t once_value_2
; /* Once value */
1116 static val_t once_value_3
; /* Once value */
1117 static val_t once_value_4
; /* Once value */
1118 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1119 fra
.me
.file
= LOCATE_metamodel___genericity
;
1121 fra
.me
.meth
= LOCATE_metamodel___genericity___MMTypeGeneric___to_s
;
1122 fra
.me
.has_broke
= 0;
1123 fra
.me
.REG_size
= 4;
1124 fra
.me
.REG
[0] = NIT_NULL
;
1125 fra
.me
.REG
[1] = NIT_NULL
;
1126 fra
.me
.REG
[2] = NIT_NULL
;
1127 fra
.me
.REG
[3] = NIT_NULL
;
1129 /* ./metamodel//genericity.nit:171 */
1130 fra
.me
.REG
[1] = fra
.me
.REG
[0];
1131 /* ./metamodel//genericity.nit:173 */
1133 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
1134 if (!once_value_1
) {
1135 fra
.me
.REG
[3] = BOX_NativeString("");
1137 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB0
);
1138 once_value_1
= fra
.me
.REG
[3];
1139 register_static_object(&once_value_1
);
1140 } else fra
.me
.REG
[3] = once_value_1
;
1141 fra
.me
.REG
[3] = fra
.me
.REG
[3];
1142 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
1143 fra
.me
.REG
[0] = CALL_SUPER_metamodel___genericity___MMTypeGeneric___to_s(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1144 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
1145 if (!once_value_2
) {
1146 fra
.me
.REG
[0] = BOX_NativeString("[");
1148 fra
.me
.REG
[0] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[0], REGB0
);
1149 once_value_2
= fra
.me
.REG
[0];
1150 register_static_object(&once_value_2
);
1151 } else fra
.me
.REG
[0] = once_value_2
;
1152 fra
.me
.REG
[0] = fra
.me
.REG
[0];
1153 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
1154 REGB0
= TAG_Bool(ATTR_metamodel___genericity___MMTypeGeneric____params(fra
.me
.REG
[1])!=NIT_NULL
);
1155 if (UNTAG_Bool(REGB0
)) {
1157 nit_abort("Uninitialized attribute %s", "_params", LOCATE_metamodel___genericity
, 173);
1159 fra
.me
.REG
[1] = ATTR_metamodel___genericity___MMTypeGeneric____params(fra
.me
.REG
[1]);
1160 if (!once_value_3
) {
1161 fra
.me
.REG
[0] = BOX_NativeString(", ");
1163 fra
.me
.REG
[0] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[0], REGB0
);
1164 once_value_3
= fra
.me
.REG
[0];
1165 register_static_object(&once_value_3
);
1166 } else fra
.me
.REG
[0] = once_value_3
;
1167 fra
.me
.REG
[0] = fra
.me
.REG
[0];
1168 fra
.me
.REG
[0] = CALL_standard___string___Collection___join(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
1169 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
1170 if (!once_value_4
) {
1171 fra
.me
.REG
[0] = BOX_NativeString("]");
1173 fra
.me
.REG
[0] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[0], REGB0
);
1174 once_value_4
= fra
.me
.REG
[0];
1175 register_static_object(&once_value_4
);
1176 } else fra
.me
.REG
[0] = once_value_4
;
1177 fra
.me
.REG
[0] = fra
.me
.REG
[0];
1178 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
1179 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
1182 stack_frame_head
= fra
.me
.prev
;
1183 return fra
.me
.REG
[2];
1185 val_t
metamodel___genericity___MMTypeGeneric___is_subtype(val_t p0
, val_t p1
){
1186 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
1194 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1195 fra
.me
.file
= LOCATE_metamodel___genericity
;
1197 fra
.me
.meth
= LOCATE_metamodel___genericity___MMTypeGeneric___is_subtype
;
1198 fra
.me
.has_broke
= 0;
1199 fra
.me
.REG_size
= 4;
1200 fra
.me
.REG
[0] = NIT_NULL
;
1201 fra
.me
.REG
[1] = NIT_NULL
;
1202 fra
.me
.REG
[2] = NIT_NULL
;
1203 fra
.me
.REG
[3] = NIT_NULL
;
1206 /* ./metamodel//genericity.nit:180 */
1208 REGB1
= TAG_Bool(ATTR_metamodel___genericity___MMTypeGeneric____params(fra
.me
.REG
[0])!=NIT_NULL
);
1209 if (UNTAG_Bool(REGB1
)) {
1211 nit_abort("Uninitialized attribute %s", "_params", LOCATE_metamodel___genericity
, 180);
1213 fra
.me
.REG
[2] = ATTR_metamodel___genericity___MMTypeGeneric____params(fra
.me
.REG
[0]);
1214 /* ./../lib/standard//collection//array.nit:23 */
1215 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
1216 if (UNTAG_Bool(REGB1
)) {
1218 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 23);
1220 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2]);
1221 /* ./../lib/standard//kernel.nit:335 */
1223 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
1224 if (UNTAG_Bool(REGB2
)) {
1226 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1228 /* ./../lib/standard//kernel.nit:215 */
1229 REGB2
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
1230 /* ./../lib/standard//kernel.nit:335 */
1231 if (UNTAG_Bool(REGB2
)) {
1232 /* ./metamodel//genericity.nit:180 */
1234 /* ./metamodel//genericity.nit:182 */
1235 fra
.me
.REG
[2] = CALL_metamodel___genericity___MMTypeGeneric___params(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1236 /* ./../lib/standard//collection//array.nit:241 */
1238 /* ./../lib/standard//collection//array.nit:243 */
1240 REGB5
= TAG_Bool(VAL_ISA(REGB4
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB3
), VTID_standard___kernel___Comparable___OTHER(REGB3
))) /*cast OTHER*/;
1241 if (UNTAG_Bool(REGB5
)) {
1243 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1245 /* ./../lib/standard//kernel.nit:216 */
1246 REGB4
= TAG_Bool(UNTAG_Int(REGB3
)>=UNTAG_Int(REGB4
));
1247 /* ./../lib/standard//collection//array.nit:243 */
1248 if (UNTAG_Bool(REGB4
)) {
1249 REGB4
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
1250 if (UNTAG_Bool(REGB4
)) {
1252 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 243);
1254 REGB4
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2]);
1255 REGB5
= TAG_Bool(VAL_ISA(REGB4
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB3
), VTID_standard___kernel___Comparable___OTHER(REGB3
))) /*cast OTHER*/;
1256 if (UNTAG_Bool(REGB5
)) {
1258 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1260 /* ./../lib/standard//kernel.nit:215 */
1261 REGB4
= TAG_Bool(UNTAG_Int(REGB3
)<UNTAG_Int(REGB4
));
1263 /* ./../lib/standard//collection//array.nit:243 */
1264 REGB5
= TAG_Bool(false);
1267 if (UNTAG_Bool(REGB4
)) {
1269 nit_abort("Assert %s failed", "'index'", LOCATE_standard___collection___array
, 243);
1271 /* ./../lib/standard//collection//array.nit:244 */
1272 fra
.me
.REG
[2] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[2]);
1273 REGB4
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
1274 if (UNTAG_Bool(REGB4
)) {
1275 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 244);
1277 /* ./../lib/standard//collection//array.nit:652 */
1278 fra
.me
.REG
[2] = ((Nit_NativeArray
)fra
.me
.REG
[2])->val
[UNTAG_Int(REGB3
)];
1279 /* ./../lib/standard//collection//array.nit:244 */
1282 /* ./metamodel//genericity.nit:182 */
1283 REGB3
= TAG_Bool(ATTR_metamodel___genericity___MMTypeGeneric____params(fra
.me
.REG
[0])!=NIT_NULL
);
1284 if (UNTAG_Bool(REGB3
)) {
1286 nit_abort("Uninitialized attribute %s", "_params", LOCATE_metamodel___genericity
, 182);
1288 fra
.me
.REG
[3] = ATTR_metamodel___genericity___MMTypeGeneric____params(fra
.me
.REG
[0]);
1289 /* ./../lib/standard//collection//array.nit:243 */
1291 REGB4
= TAG_Bool(VAL_ISA(REGB3
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB2
), VTID_standard___kernel___Comparable___OTHER(REGB2
))) /*cast OTHER*/;
1292 if (UNTAG_Bool(REGB4
)) {
1294 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1296 /* ./../lib/standard//kernel.nit:216 */
1297 REGB3
= TAG_Bool(UNTAG_Int(REGB2
)>=UNTAG_Int(REGB3
));
1298 /* ./../lib/standard//collection//array.nit:243 */
1299 if (UNTAG_Bool(REGB3
)) {
1300 REGB3
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[3])!=NIT_NULL
);
1301 if (UNTAG_Bool(REGB3
)) {
1303 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 243);
1305 REGB3
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[3]);
1306 REGB4
= TAG_Bool(VAL_ISA(REGB3
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB2
), VTID_standard___kernel___Comparable___OTHER(REGB2
))) /*cast OTHER*/;
1307 if (UNTAG_Bool(REGB4
)) {
1309 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1311 /* ./../lib/standard//kernel.nit:215 */
1312 REGB3
= TAG_Bool(UNTAG_Int(REGB2
)<UNTAG_Int(REGB3
));
1314 /* ./../lib/standard//collection//array.nit:243 */
1315 REGB4
= TAG_Bool(false);
1318 if (UNTAG_Bool(REGB3
)) {
1320 nit_abort("Assert %s failed", "'index'", LOCATE_standard___collection___array
, 243);
1322 /* ./../lib/standard//collection//array.nit:244 */
1323 fra
.me
.REG
[3] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[3]);
1324 REGB3
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
1325 if (UNTAG_Bool(REGB3
)) {
1326 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 244);
1328 /* ./../lib/standard//collection//array.nit:652 */
1329 fra
.me
.REG
[3] = ((Nit_NativeArray
)fra
.me
.REG
[3])->val
[UNTAG_Int(REGB2
)];
1330 /* ./../lib/standard//collection//array.nit:244 */
1333 /* ./metamodel//genericity.nit:182 */
1334 REGB2
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
1335 if (UNTAG_Bool(REGB2
)) {
1336 nit_abort("Reciever is null", NULL
, LOCATE_metamodel___genericity
, 182);
1338 REGB2
= CALL_metamodel___static_type___MMType_____l(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
1339 REGB2
= TAG_Bool(!UNTAG_Bool(REGB2
));
1340 if (UNTAG_Bool(REGB2
)) {
1341 /* ./metamodel//genericity.nit:183 */
1342 REGB2
= TAG_Bool(false);
1345 /* ./../lib/standard//kernel.nit:337 */
1347 /* ./../lib/standard//kernel.nit:218 */
1348 REGB3
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB3
));
1349 /* ./../lib/standard//kernel.nit:337 */
1352 /* ./../lib/standard//kernel.nit:335 */
1357 /* ./metamodel//genericity.nit:186 */
1358 REGB0
= TAG_Bool(true);
1362 stack_frame_head
= fra
.me
.prev
;
1365 void metamodel___genericity___MMTypeGeneric___init(val_t p0
, val_t p1
, val_t p2
, int* init_table
){
1366 int itpos0
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_metamodel___genericity___MMTypeGeneric
].i
;
1367 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
1369 if (init_table
[itpos0
]) return;
1370 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1371 fra
.me
.file
= LOCATE_metamodel___genericity
;
1373 fra
.me
.meth
= LOCATE_metamodel___genericity___MMTypeGeneric___init
;
1374 fra
.me
.has_broke
= 0;
1375 fra
.me
.REG_size
= 4;
1376 fra
.me
.REG
[0] = NIT_NULL
;
1377 fra
.me
.REG
[1] = NIT_NULL
;
1378 fra
.me
.REG
[2] = NIT_NULL
;
1379 fra
.me
.REG
[3] = NIT_NULL
;
1383 /* ./metamodel//genericity.nit:189 */
1384 fra
.me
.REG
[3] = fra
.me
.REG
[0];
1385 /* ./metamodel//genericity.nit:191 */
1386 CALL_metamodel___static_type___MMTypeClass___init(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], init_table
);
1387 /* ./metamodel//genericity.nit:192 */
1388 ATTR_metamodel___genericity___MMTypeGeneric____params(fra
.me
.REG
[3]) = fra
.me
.REG
[2];
1389 stack_frame_head
= fra
.me
.prev
;
1390 init_table
[itpos0
] = 1;
1393 val_t
metamodel___genericity___MMTypeFormalParameter___def_class(val_t p0
){
1394 struct {struct stack_frame_t me
;} fra
;
1397 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1398 fra
.me
.file
= LOCATE_metamodel___genericity
;
1400 fra
.me
.meth
= LOCATE_metamodel___genericity___MMTypeFormalParameter___def_class
;
1401 fra
.me
.has_broke
= 0;
1402 fra
.me
.REG_size
= 1;
1403 fra
.me
.REG
[0] = NIT_NULL
;
1405 /* ./metamodel//genericity.nit:198 */
1406 REGB0
= TAG_Bool(ATTR_metamodel___genericity___MMTypeFormalParameter____def_class(fra
.me
.REG
[0])!=NIT_NULL
);
1407 if (UNTAG_Bool(REGB0
)) {
1409 nit_abort("Uninitialized attribute %s", "_def_class", LOCATE_metamodel___genericity
, 198);
1411 fra
.me
.REG
[0] = ATTR_metamodel___genericity___MMTypeFormalParameter____def_class(fra
.me
.REG
[0]);
1412 stack_frame_head
= fra
.me
.prev
;
1413 return fra
.me
.REG
[0];
1415 val_t
metamodel___genericity___MMTypeFormalParameter___position(val_t p0
){
1416 struct {struct stack_frame_t me
;} fra
;
1419 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1420 fra
.me
.file
= LOCATE_metamodel___genericity
;
1422 fra
.me
.meth
= LOCATE_metamodel___genericity___MMTypeFormalParameter___position
;
1423 fra
.me
.has_broke
= 0;
1424 fra
.me
.REG_size
= 1;
1425 fra
.me
.REG
[0] = NIT_NULL
;
1427 /* ./metamodel//genericity.nit:201 */
1428 REGB0
= TAG_Bool(ATTR_metamodel___genericity___MMTypeFormalParameter____position(fra
.me
.REG
[0])!=NIT_NULL
);
1429 if (UNTAG_Bool(REGB0
)) {
1431 nit_abort("Uninitialized attribute %s", "_position", LOCATE_metamodel___genericity
, 201);
1433 REGB0
= ATTR_metamodel___genericity___MMTypeFormalParameter____position(fra
.me
.REG
[0]);
1434 stack_frame_head
= fra
.me
.prev
;
1437 val_t
metamodel___genericity___MMTypeFormalParameter___mmmodule(val_t p0
){
1438 struct {struct stack_frame_t me
;} fra
;
1441 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1442 fra
.me
.file
= LOCATE_metamodel___genericity
;
1444 fra
.me
.meth
= LOCATE_metamodel___genericity___MMTypeFormalParameter___mmmodule
;
1445 fra
.me
.has_broke
= 0;
1446 fra
.me
.REG_size
= 1;
1447 fra
.me
.REG
[0] = NIT_NULL
;
1449 /* ./metamodel//genericity.nit:204 */
1450 REGB0
= TAG_Bool(ATTR_metamodel___genericity___MMTypeFormalParameter____def_class(fra
.me
.REG
[0])!=NIT_NULL
);
1451 if (UNTAG_Bool(REGB0
)) {
1453 nit_abort("Uninitialized attribute %s", "_def_class", LOCATE_metamodel___genericity
, 204);
1455 fra
.me
.REG
[0] = ATTR_metamodel___genericity___MMTypeFormalParameter____def_class(fra
.me
.REG
[0]);
1456 fra
.me
.REG
[0] = CALL_metamodel___abstractmetamodel___MMLocalClass___mmmodule(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1459 stack_frame_head
= fra
.me
.prev
;
1460 return fra
.me
.REG
[0];
1462 val_t
metamodel___genericity___MMTypeFormalParameter___for_module(val_t p0
, val_t p1
){
1463 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
1467 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1468 fra
.me
.file
= LOCATE_metamodel___genericity
;
1470 fra
.me
.meth
= LOCATE_metamodel___genericity___MMTypeFormalParameter___for_module
;
1471 fra
.me
.has_broke
= 0;
1472 fra
.me
.REG_size
= 4;
1473 fra
.me
.REG
[0] = NIT_NULL
;
1474 fra
.me
.REG
[1] = NIT_NULL
;
1475 fra
.me
.REG
[2] = NIT_NULL
;
1476 fra
.me
.REG
[3] = NIT_NULL
;
1479 /* ./metamodel//genericity.nit:208 */
1480 fra
.me
.REG
[2] = fra
.me
.REG
[0];
1481 /* ./metamodel//genericity.nit:209 */
1482 fra
.me
.REG
[3] = CALL_metamodel___static_type___MMType___mmmodule(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1483 REGB0
= TAG_Bool(IS_EQUAL_OO(fra
.me
.REG
[3],fra
.me
.REG
[1]));
1484 if (UNTAG_Bool(REGB0
)) {
1486 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[1]);
1489 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
1490 if (UNTAG_Bool(REGB0
)) {
1491 /* ./metamodel//genericity.nit:210 */
1492 REGB0
= TAG_Bool(ATTR_metamodel___genericity___MMTypeFormalParameter____def_class(fra
.me
.REG
[0])!=NIT_NULL
);
1493 if (UNTAG_Bool(REGB0
)) {
1495 nit_abort("Uninitialized attribute %s", "_def_class", LOCATE_metamodel___genericity
, 210);
1497 fra
.me
.REG
[3] = ATTR_metamodel___genericity___MMTypeFormalParameter____def_class(fra
.me
.REG
[0]);
1498 fra
.me
.REG
[3] = CALL_metamodel___abstractmetamodel___MMLocalClass___global(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
1499 fra
.me
.REG
[3] = CALL_metamodel___abstractmetamodel___MMModule_____bra(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[3]);
1500 REGB0
= CALL_metamodel___genericity___MMTypeFormalParameter___position(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1501 fra
.me
.REG
[3] = CALL_metamodel___genericity___MMLocalClass___get_formal(fra
.me
.REG
[3])(fra
.me
.REG
[3], REGB0
);
1502 fra
.me
.REG
[2] = fra
.me
.REG
[3];
1504 /* ./metamodel//genericity.nit:212 */
1507 stack_frame_head
= fra
.me
.prev
;
1508 return fra
.me
.REG
[2];
1510 val_t
metamodel___genericity___MMTypeFormalParameter___upcast_for(val_t p0
, val_t p1
){
1511 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1514 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1515 fra
.me
.file
= LOCATE_metamodel___genericity
;
1517 fra
.me
.meth
= LOCATE_metamodel___genericity___MMTypeFormalParameter___upcast_for
;
1518 fra
.me
.has_broke
= 0;
1519 fra
.me
.REG_size
= 2;
1520 fra
.me
.REG
[0] = NIT_NULL
;
1521 fra
.me
.REG
[1] = NIT_NULL
;
1524 /* ./metamodel//genericity.nit:215 */
1525 fra
.me
.REG
[0] = ATTR_metamodel___type_formal___MMTypeFormal____bound(fra
.me
.REG
[0]);
1526 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
1527 if (UNTAG_Bool(REGB0
)) {
1528 nit_abort("Reciever is null", NULL
, LOCATE_metamodel___genericity
, 215);
1530 fra
.me
.REG
[1] = CALL_metamodel___static_type___MMType___upcast_for(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
1533 stack_frame_head
= fra
.me
.prev
;
1534 return fra
.me
.REG
[1];
1536 void metamodel___genericity___MMTypeFormalParameter___bound__eq(val_t p0
, val_t p1
){
1537 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
1541 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1542 fra
.me
.file
= LOCATE_metamodel___genericity
;
1544 fra
.me
.meth
= LOCATE_metamodel___genericity___MMTypeFormalParameter___bound__eq
;
1545 fra
.me
.has_broke
= 0;
1546 fra
.me
.REG_size
= 3;
1547 fra
.me
.REG
[0] = NIT_NULL
;
1548 fra
.me
.REG
[1] = NIT_NULL
;
1549 fra
.me
.REG
[2] = NIT_NULL
;
1552 /* ./metamodel//genericity.nit:219 */
1553 fra
.me
.REG
[2] = ATTR_metamodel___type_formal___MMTypeFormal____bound(fra
.me
.REG
[0]);
1554 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
1555 if (UNTAG_Bool(REGB0
)) {
1557 REGB1
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
1558 if (UNTAG_Bool(REGB1
)) {
1559 REGB1
= TAG_Bool(false);
1562 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], NIT_NULL
);
1566 if (UNTAG_Bool(REGB0
)) {
1568 nit_abort("Assert failed", NULL
, LOCATE_metamodel___genericity
, 219);
1570 /* ./metamodel//genericity.nit:220 */
1571 ATTR_metamodel___type_formal___MMTypeFormal____bound(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
1572 stack_frame_head
= fra
.me
.prev
;
1575 val_t
metamodel___genericity___MMTypeFormalParameter___adapt_to(val_t p0
, val_t p1
){
1576 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
1581 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1582 fra
.me
.file
= LOCATE_metamodel___genericity
;
1584 fra
.me
.meth
= LOCATE_metamodel___genericity___MMTypeFormalParameter___adapt_to
;
1585 fra
.me
.has_broke
= 0;
1586 fra
.me
.REG_size
= 3;
1587 fra
.me
.REG
[0] = NIT_NULL
;
1588 fra
.me
.REG
[1] = NIT_NULL
;
1589 fra
.me
.REG
[2] = NIT_NULL
;
1592 /* ./metamodel//genericity.nit:225 */
1593 fra
.me
.REG
[2] = CALL_metamodel___type_formal___MMType___direct_type(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1594 fra
.me
.REG
[1] = fra
.me
.REG
[2];
1595 /* ./metamodel//genericity.nit:226 */
1596 fra
.me
.REG
[2] = CALL_metamodel___genericity___MMTypeFormalParameter___def_class(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1597 fra
.me
.REG
[2] = CALL_metamodel___static_type___MMType___upcast_for(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
1598 /* ./metamodel//genericity.nit:231 */
1599 REGB0
= TAG_Bool(VAL_ISA(fra
.me
.REG
[2], COLOR_metamodel___genericity___MMTypeGeneric
, ID_metamodel___genericity___MMTypeGeneric
)) /*cast MMTypeGeneric*/;
1600 if (UNTAG_Bool(REGB0
)) {
1602 nit_abort("Assert failed", NULL
, LOCATE_metamodel___genericity
, 231);
1604 /* ./metamodel//genericity.nit:232 */
1605 fra
.me
.REG
[2] = CALL_metamodel___genericity___MMTypeGeneric___params(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
1606 REGB0
= CALL_metamodel___genericity___MMTypeFormalParameter___position(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1607 /* ./../lib/standard//collection//array.nit:243 */
1609 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
1610 if (UNTAG_Bool(REGB2
)) {
1612 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1614 /* ./../lib/standard//kernel.nit:216 */
1615 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB1
));
1616 /* ./../lib/standard//collection//array.nit:243 */
1617 if (UNTAG_Bool(REGB1
)) {
1618 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
1619 if (UNTAG_Bool(REGB1
)) {
1621 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 243);
1623 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2]);
1624 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
1625 if (UNTAG_Bool(REGB2
)) {
1627 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1629 /* ./../lib/standard//kernel.nit:215 */
1630 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
1632 /* ./../lib/standard//collection//array.nit:243 */
1633 REGB2
= TAG_Bool(false);
1636 if (UNTAG_Bool(REGB1
)) {
1638 nit_abort("Assert %s failed", "'index'", LOCATE_standard___collection___array
, 243);
1640 /* ./../lib/standard//collection//array.nit:244 */
1641 fra
.me
.REG
[2] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[2]);
1642 REGB1
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
1643 if (UNTAG_Bool(REGB1
)) {
1644 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 244);
1646 /* ./../lib/standard//collection//array.nit:652 */
1647 fra
.me
.REG
[2] = ((Nit_NativeArray
)fra
.me
.REG
[2])->val
[UNTAG_Int(REGB0
)];
1648 /* ./../lib/standard//collection//array.nit:244 */
1651 /* ./metamodel//genericity.nit:233 */
1654 stack_frame_head
= fra
.me
.prev
;
1655 return fra
.me
.REG
[2];
1657 void metamodel___genericity___MMTypeFormalParameter___with_bound(val_t p0
, val_t p1
, val_t p2
, val_t p3
, val_t p4
, int* init_table
){
1658 int itpos1
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_metamodel___genericity___MMTypeFormalParameter
].i
;
1659 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
1662 if (init_table
[itpos1
]) return;
1663 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1664 fra
.me
.file
= LOCATE_metamodel___genericity
;
1666 fra
.me
.meth
= LOCATE_metamodel___genericity___MMTypeFormalParameter___with_bound
;
1667 fra
.me
.has_broke
= 0;
1668 fra
.me
.REG_size
= 4;
1669 fra
.me
.REG
[0] = NIT_NULL
;
1670 fra
.me
.REG
[1] = NIT_NULL
;
1671 fra
.me
.REG
[2] = NIT_NULL
;
1672 fra
.me
.REG
[3] = NIT_NULL
;
1678 /* ./metamodel//genericity.nit:238 */
1679 CALL_metamodel___genericity___MMTypeFormalParameter___init(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], REGB0
, fra
.me
.REG
[2], init_table
);
1680 /* ./metamodel//genericity.nit:239 */
1681 ATTR_metamodel___type_formal___MMTypeFormal____bound(fra
.me
.REG
[0]) = fra
.me
.REG
[3];
1682 stack_frame_head
= fra
.me
.prev
;
1683 init_table
[itpos1
] = 1;
1686 void metamodel___genericity___MMTypeFormalParameter___init(val_t p0
, val_t p1
, val_t p2
, val_t p3
, int* init_table
){
1687 int itpos2
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_metamodel___genericity___MMTypeFormalParameter
].i
;
1688 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
1691 if (init_table
[itpos2
]) return;
1692 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1693 fra
.me
.file
= LOCATE_metamodel___genericity
;
1695 fra
.me
.meth
= LOCATE_metamodel___genericity___MMTypeFormalParameter___init
;
1696 fra
.me
.has_broke
= 0;
1697 fra
.me
.REG_size
= 4;
1698 fra
.me
.REG
[0] = NIT_NULL
;
1699 fra
.me
.REG
[1] = NIT_NULL
;
1700 fra
.me
.REG
[2] = NIT_NULL
;
1701 fra
.me
.REG
[3] = NIT_NULL
;
1706 /* ./metamodel//genericity.nit:242 */
1707 fra
.me
.REG
[3] = fra
.me
.REG
[0];
1708 /* ./metamodel//genericity.nit:244 */
1709 CALL_metamodel___type_formal___MMTypeFormal___init(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], NIT_NULL
, init_table
);
1710 /* ./metamodel//genericity.nit:245 */
1711 ATTR_metamodel___genericity___MMTypeFormalParameter____position(fra
.me
.REG
[3]) = REGB0
;
1712 /* ./metamodel//genericity.nit:246 */
1713 ATTR_metamodel___genericity___MMTypeFormalParameter____def_class(fra
.me
.REG
[3]) = fra
.me
.REG
[2];
1714 stack_frame_head
= fra
.me
.prev
;
1715 init_table
[itpos2
] = 1;
1718 val_t
metamodel___genericity___MMTypeNone___is_generic(val_t p0
){
1719 struct {struct stack_frame_t me
;} fra
;
1722 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1723 fra
.me
.file
= LOCATE_metamodel___genericity
;
1725 fra
.me
.meth
= LOCATE_metamodel___genericity___MMTypeNone___is_generic
;
1726 fra
.me
.has_broke
= 0;
1727 fra
.me
.REG_size
= 1;
1728 fra
.me
.REG
[0] = NIT_NULL
;
1730 /* ./metamodel//genericity.nit:251 */
1731 REGB0
= TAG_Bool(false);
1734 stack_frame_head
= fra
.me
.prev
;
1737 val_t
metamodel___genericity___MMTypeNone___for_module(val_t p0
, val_t p1
){
1738 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1740 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1741 fra
.me
.file
= LOCATE_metamodel___genericity
;
1743 fra
.me
.meth
= LOCATE_metamodel___genericity___MMTypeNone___for_module
;
1744 fra
.me
.has_broke
= 0;
1745 fra
.me
.REG_size
= 2;
1746 fra
.me
.REG
[0] = NIT_NULL
;
1747 fra
.me
.REG
[1] = NIT_NULL
;
1750 /* ./metamodel//genericity.nit:252 */
1753 stack_frame_head
= fra
.me
.prev
;
1754 return fra
.me
.REG
[0];
1756 val_t
metamodel___genericity___MMTypeNone___adapt_to(val_t p0
, val_t p1
){
1757 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1759 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1760 fra
.me
.file
= LOCATE_metamodel___genericity
;
1762 fra
.me
.meth
= LOCATE_metamodel___genericity___MMTypeNone___adapt_to
;
1763 fra
.me
.has_broke
= 0;
1764 fra
.me
.REG_size
= 2;
1765 fra
.me
.REG
[0] = NIT_NULL
;
1766 fra
.me
.REG
[1] = NIT_NULL
;
1769 /* ./metamodel//genericity.nit:253 */
1772 stack_frame_head
= fra
.me
.prev
;
1773 return fra
.me
.REG
[0];