1 /* This C file is generated by NIT to compile module native_interface___ni_metamodel. */
2 #include "native_interface___ni_metamodel._sep.h"
3 static const char LOCATE_native_interface___ni_metamodel___MMType___friendly_extern_name
[] = "ni_metamodel::MMType::friendly_extern_name";
4 val_t
native_interface___ni_metamodel___MMType___friendly_extern_name(val_t p0
){
5 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
9 static val_t once_value_1
; /* Once value */
10 static val_t once_value_2
; /* Once value */
11 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
12 fra
.me
.file
= LOCATE_native_interface___ni_metamodel
;
14 fra
.me
.meth
= LOCATE_native_interface___ni_metamodel___MMType___friendly_extern_name
;
17 fra
.me
.nitni_local_ref_head
= NULL
;
18 fra
.me
.REG
[0] = NIT_NULL
;
19 fra
.me
.REG
[1] = NIT_NULL
;
20 fra
.me
.REG
[2] = NIT_NULL
;
21 fra
.me
.REG
[3] = NIT_NULL
;
23 /* native_interface/ni_metamodel.nit:30 */
24 fra
.me
.REG
[1] = CALL_metamodel___static_type___MMType___local_class(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
25 fra
.me
.REG
[1] = CALL_primitive_info___MMLocalClass___primitive_info(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
26 /* native_interface/ni_metamodel.nit:31 */
27 REGB0
= CALL_metamodel___static_type___MMType___is_nullable(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
28 if (UNTAG_Bool(REGB0
)) {
29 /* native_interface/ni_metamodel.nit:32 */
31 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
33 fra
.me
.REG
[3] = BOX_NativeString("nullable_");
35 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB0
);
36 once_value_1
= fra
.me
.REG
[3];
37 register_static_object(&once_value_1
);
38 } else fra
.me
.REG
[3] = once_value_1
;
39 fra
.me
.REG
[3] = fra
.me
.REG
[3];
40 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
41 fra
.me
.REG
[3] = CALL_metamodel___static_type___MMType___local_class(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
42 fra
.me
.REG
[3] = CALL_metamodel___abstractmetamodel___MMLocalClass___name(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
43 fra
.me
.REG
[3] = CALL_standard___string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
44 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
46 fra
.me
.REG
[3] = BOX_NativeString("");
48 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB0
);
49 once_value_2
= fra
.me
.REG
[3];
50 register_static_object(&once_value_2
);
51 } else fra
.me
.REG
[3] = once_value_2
;
52 fra
.me
.REG
[3] = fra
.me
.REG
[3];
53 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
54 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
57 /* native_interface/ni_metamodel.nit:33 */
58 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
59 if (UNTAG_Bool(REGB0
)) {
61 REGB1
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
62 if (UNTAG_Bool(REGB1
)) {
66 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[1])(fra
.me
.REG
[1], NIT_NULL
);
70 if (UNTAG_Bool(REGB0
)) {
71 /* native_interface/ni_metamodel.nit:34 */
72 fra
.me
.REG
[0] = CALL_metamodel___static_type___MMType___local_class(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
73 fra
.me
.REG
[0] = CALL_metamodel___abstractmetamodel___MMLocalClass___name(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
74 fra
.me
.REG
[0] = CALL_standard___string___Object___to_s(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
75 fra
.me
.REG
[2] = fra
.me
.REG
[0];
78 /* native_interface/ni_metamodel.nit:36 */
79 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
80 if (UNTAG_Bool(REGB0
)) {
81 nit_abort("Reciever is null", NULL
, LOCATE_native_interface___ni_metamodel
, 36);
83 fra
.me
.REG
[1] = CALL_primitive_info___PrimitiveInfo___cname(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
84 fra
.me
.REG
[2] = fra
.me
.REG
[1];
89 stack_frame_head
= fra
.me
.prev
;
92 static const char LOCATE_native_interface___ni_metamodel___MMType___mangled_name
[] = "ni_metamodel::MMType::mangled_name";
93 val_t
native_interface___ni_metamodel___MMType___mangled_name(val_t p0
){
94 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
97 static val_t once_value_1
; /* Once value */
98 static val_t once_value_2
; /* Once value */
99 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
100 fra
.me
.file
= LOCATE_native_interface___ni_metamodel
;
102 fra
.me
.meth
= LOCATE_native_interface___ni_metamodel___MMType___mangled_name
;
103 fra
.me
.has_broke
= 0;
105 fra
.me
.nitni_local_ref_head
= NULL
;
106 fra
.me
.REG
[0] = NIT_NULL
;
107 fra
.me
.REG
[1] = NIT_NULL
;
108 fra
.me
.REG
[2] = NIT_NULL
;
110 /* native_interface/ni_metamodel.nit:42 */
111 fra
.me
.REG
[1] = CALL_metamodel___static_type___MMType___local_class(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
112 fra
.me
.REG
[1] = CALL_primitive_info___MMLocalClass___primitive_info(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
113 /* native_interface/ni_metamodel.nit:43 */
114 REGB0
= CALL_metamodel___static_type___MMType___is_nullable(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
115 if (UNTAG_Bool(REGB0
)) {
116 /* native_interface/ni_metamodel.nit:44 */
118 fra
.me
.REG
[1] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
120 fra
.me
.REG
[2] = BOX_NativeString("nullable_");
122 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
123 once_value_1
= fra
.me
.REG
[2];
124 register_static_object(&once_value_1
);
125 } else fra
.me
.REG
[2] = once_value_1
;
126 fra
.me
.REG
[2] = fra
.me
.REG
[2];
127 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
128 fra
.me
.REG
[2] = CALL_metamodel___static_type___MMType___local_class(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
129 fra
.me
.REG
[2] = CALL_metamodel___abstractmetamodel___MMLocalClass___name(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
130 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
131 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
133 fra
.me
.REG
[2] = BOX_NativeString("");
135 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
136 once_value_2
= fra
.me
.REG
[2];
137 register_static_object(&once_value_2
);
138 } else fra
.me
.REG
[2] = once_value_2
;
139 fra
.me
.REG
[2] = fra
.me
.REG
[2];
140 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
141 fra
.me
.REG
[1] = CALL_standard___string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
144 /* native_interface/ni_metamodel.nit:46 */
145 fra
.me
.REG
[0] = CALL_metamodel___static_type___MMType___local_class(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
146 fra
.me
.REG
[0] = CALL_metamodel___abstractmetamodel___MMLocalClass___name(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
147 fra
.me
.REG
[0] = CALL_standard___string___Object___to_s(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
148 fra
.me
.REG
[1] = fra
.me
.REG
[0];
152 stack_frame_head
= fra
.me
.prev
;
153 return fra
.me
.REG
[1];
155 static const char LOCATE_native_interface___ni_metamodel___MMType___from_native
[] = "ni_metamodel::MMType::from_native";
156 val_t
native_interface___ni_metamodel___MMType___from_native(val_t p0
, val_t p1
){
157 struct {struct stack_frame_t me
; val_t MORE_REG
[4];} fra
;
161 static val_t once_value_2
; /* Once value */
162 static val_t once_value_3
; /* Once value */
163 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
164 fra
.me
.file
= LOCATE_native_interface___ni_metamodel
;
166 fra
.me
.meth
= LOCATE_native_interface___ni_metamodel___MMType___from_native
;
167 fra
.me
.has_broke
= 0;
169 fra
.me
.nitni_local_ref_head
= NULL
;
170 fra
.me
.REG
[0] = NIT_NULL
;
171 fra
.me
.REG
[1] = NIT_NULL
;
172 fra
.me
.REG
[2] = NIT_NULL
;
173 fra
.me
.REG
[3] = NIT_NULL
;
174 fra
.me
.REG
[4] = NIT_NULL
;
177 /* native_interface/ni_metamodel.nit:53 */
178 fra
.me
.REG
[2] = CALL_metamodel___static_type___MMType___local_class(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
179 fra
.me
.REG
[2] = CALL_primitive_info___MMLocalClass___primitive_info(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
180 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
181 if (UNTAG_Bool(REGB0
)) {
183 REGB1
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
184 if (UNTAG_Bool(REGB1
)) {
188 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], NIT_NULL
);
192 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
193 if (UNTAG_Bool(REGB0
)) {
196 fra
.me
.REG
[2] = CALL_metamodel___static_type___MMType___local_class(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
197 fra
.me
.REG
[2] = CALL_metamodel___abstractmetamodel___MMLocalClass___global(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
198 REGB1
= CALL_metamodel___abstractmetamodel___MMGlobalClass___is_extern(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
201 if (UNTAG_Bool(REGB0
)) {
202 /* native_interface/ni_metamodel.nit:54 */
203 REGB0
= CALL_metamodel___static_type___MMType___is_nullable(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
204 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
206 /* native_interface/ni_metamodel.nit:53 */
210 if (UNTAG_Bool(REGB0
)) {
211 /* native_interface/ni_metamodel.nit:55 */
212 fra
.me
.REG
[2] = CALL_primitive_info___MMType___boxtype(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
215 /* native_interface/ni_metamodel.nit:57 */
217 fra
.me
.REG
[3] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
219 fra
.me
.REG
[4] = BOX_NativeString("");
221 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB0
);
222 once_value_2
= fra
.me
.REG
[4];
223 register_static_object(&once_value_2
);
224 } else fra
.me
.REG
[4] = once_value_2
;
225 fra
.me
.REG
[4] = fra
.me
.REG
[4];
226 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
227 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[1]);
229 fra
.me
.REG
[1] = BOX_NativeString("->ref.val");
231 fra
.me
.REG
[1] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[1], REGB0
);
232 once_value_3
= fra
.me
.REG
[1];
233 register_static_object(&once_value_3
);
234 } else fra
.me
.REG
[1] = once_value_3
;
235 fra
.me
.REG
[1] = fra
.me
.REG
[1];
236 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[1]);
237 fra
.me
.REG
[3] = CALL_standard___string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
238 /* native_interface/ni_metamodel.nit:59 */
239 fra
.me
.REG
[3] = CALL_primitive_info___MMType___boxtype(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[3]);
240 fra
.me
.REG
[2] = fra
.me
.REG
[3];
244 stack_frame_head
= fra
.me
.prev
;
245 return fra
.me
.REG
[2];
247 static const char LOCATE_native_interface___ni_metamodel___MMType___assign_to_friendly
[] = "ni_metamodel::MMType::assign_to_friendly";
248 val_t
native_interface___ni_metamodel___MMType___assign_to_friendly(val_t p0
, val_t p1
, val_t p2
){
249 struct {struct stack_frame_t me
; val_t MORE_REG
[5];} fra
;
253 static val_t once_value_1
; /* Once value */
254 static val_t once_value_2
; /* Once value */
255 static val_t once_value_3
; /* Once value */
256 static val_t once_value_5
; /* Once value */
257 static val_t once_value_6
; /* Once value */
258 static val_t once_value_7
; /* Once value */
259 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
260 fra
.me
.file
= LOCATE_native_interface___ni_metamodel
;
262 fra
.me
.meth
= LOCATE_native_interface___ni_metamodel___MMType___assign_to_friendly
;
263 fra
.me
.has_broke
= 0;
265 fra
.me
.nitni_local_ref_head
= NULL
;
266 fra
.me
.REG
[0] = NIT_NULL
;
267 fra
.me
.REG
[1] = NIT_NULL
;
268 fra
.me
.REG
[2] = NIT_NULL
;
269 fra
.me
.REG
[3] = NIT_NULL
;
270 fra
.me
.REG
[4] = NIT_NULL
;
271 fra
.me
.REG
[5] = NIT_NULL
;
275 /* native_interface/ni_metamodel.nit:67 */
276 fra
.me
.REG
[3] = CALL_metamodel___static_type___MMType___local_class(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
277 fra
.me
.REG
[3] = CALL_primitive_info___MMLocalClass___primitive_info(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
278 REGB0
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
279 if (UNTAG_Bool(REGB0
)) {
281 REGB1
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
282 if (UNTAG_Bool(REGB1
)) {
286 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[3])(fra
.me
.REG
[3], NIT_NULL
);
290 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
291 if (UNTAG_Bool(REGB0
)) {
294 fra
.me
.REG
[3] = CALL_metamodel___static_type___MMType___local_class(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
295 fra
.me
.REG
[3] = CALL_metamodel___abstractmetamodel___MMLocalClass___global(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
296 REGB1
= CALL_metamodel___abstractmetamodel___MMGlobalClass___is_extern(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
299 if (UNTAG_Bool(REGB0
)) {
300 /* native_interface/ni_metamodel.nit:68 */
301 REGB0
= CALL_metamodel___static_type___MMType___is_nullable(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
302 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
304 /* native_interface/ni_metamodel.nit:67 */
308 if (UNTAG_Bool(REGB0
)) {
309 /* native_interface/ni_metamodel.nit:69 */
311 fra
.me
.REG
[3] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
313 fra
.me
.REG
[4] = BOX_NativeString("");
315 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB0
);
316 once_value_1
= fra
.me
.REG
[4];
317 register_static_object(&once_value_1
);
318 } else fra
.me
.REG
[4] = once_value_1
;
319 fra
.me
.REG
[4] = fra
.me
.REG
[4];
320 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
321 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[1]);
323 fra
.me
.REG
[4] = BOX_NativeString(" = ");
325 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB0
);
326 once_value_2
= fra
.me
.REG
[4];
327 register_static_object(&once_value_2
);
328 } else fra
.me
.REG
[4] = once_value_2
;
329 fra
.me
.REG
[4] = fra
.me
.REG
[4];
330 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
331 fra
.me
.REG
[4] = CALL_primitive_info___MMType___unboxtype(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[2]);
332 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
334 fra
.me
.REG
[4] = BOX_NativeString("");
336 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB0
);
337 once_value_3
= fra
.me
.REG
[4];
338 register_static_object(&once_value_3
);
339 } else fra
.me
.REG
[4] = once_value_3
;
340 fra
.me
.REG
[4] = fra
.me
.REG
[4];
341 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
342 fra
.me
.REG
[3] = CALL_standard___string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
345 /* native_interface/ni_metamodel.nit:71 */
347 fra
.me
.REG
[4] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
349 fra
.me
.REG
[5] = BOX_NativeString("");
351 fra
.me
.REG
[5] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[5], REGB0
);
352 once_value_5
= fra
.me
.REG
[5];
353 register_static_object(&once_value_5
);
354 } else fra
.me
.REG
[5] = once_value_5
;
355 fra
.me
.REG
[5] = fra
.me
.REG
[5];
356 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
357 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[1]);
359 fra
.me
.REG
[1] = BOX_NativeString("->ref.val = ");
361 fra
.me
.REG
[1] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[1], REGB0
);
362 once_value_6
= fra
.me
.REG
[1];
363 register_static_object(&once_value_6
);
364 } else fra
.me
.REG
[1] = once_value_6
;
365 fra
.me
.REG
[1] = fra
.me
.REG
[1];
366 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[1]);
367 fra
.me
.REG
[2] = CALL_primitive_info___MMType___unboxtype(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[2]);
368 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[2]);
370 fra
.me
.REG
[2] = BOX_NativeString("");
372 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
373 once_value_7
= fra
.me
.REG
[2];
374 register_static_object(&once_value_7
);
375 } else fra
.me
.REG
[2] = once_value_7
;
376 fra
.me
.REG
[2] = fra
.me
.REG
[2];
377 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[2]);
378 fra
.me
.REG
[4] = CALL_standard___string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
379 fra
.me
.REG
[3] = fra
.me
.REG
[4];
383 stack_frame_head
= fra
.me
.prev
;
384 return fra
.me
.REG
[3];
386 static const char LOCATE_native_interface___ni_metamodel___MMType___assign_from_friendly
[] = "ni_metamodel::MMType::assign_from_friendly";
387 val_t
native_interface___ni_metamodel___MMType___assign_from_friendly(val_t p0
, val_t p1
, val_t p2
){
388 struct {struct stack_frame_t me
; val_t MORE_REG
[4];} fra
;
392 static val_t once_value_1
; /* Once value */
393 static val_t once_value_2
; /* Once value */
394 static val_t once_value_3
; /* Once value */
395 static val_t once_value_5
; /* Once value */
396 static val_t once_value_6
; /* Once value */
397 static val_t once_value_7
; /* Once value */
398 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
399 fra
.me
.file
= LOCATE_native_interface___ni_metamodel
;
401 fra
.me
.meth
= LOCATE_native_interface___ni_metamodel___MMType___assign_from_friendly
;
402 fra
.me
.has_broke
= 0;
404 fra
.me
.nitni_local_ref_head
= NULL
;
405 fra
.me
.REG
[0] = NIT_NULL
;
406 fra
.me
.REG
[1] = NIT_NULL
;
407 fra
.me
.REG
[2] = NIT_NULL
;
408 fra
.me
.REG
[3] = NIT_NULL
;
409 fra
.me
.REG
[4] = NIT_NULL
;
413 /* native_interface/ni_metamodel.nit:79 */
414 fra
.me
.REG
[3] = CALL_metamodel___static_type___MMType___local_class(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
415 fra
.me
.REG
[3] = CALL_primitive_info___MMLocalClass___primitive_info(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
416 REGB0
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
417 if (UNTAG_Bool(REGB0
)) {
419 REGB1
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
420 if (UNTAG_Bool(REGB1
)) {
424 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[3])(fra
.me
.REG
[3], NIT_NULL
);
428 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
429 if (UNTAG_Bool(REGB0
)) {
432 fra
.me
.REG
[3] = CALL_metamodel___static_type___MMType___local_class(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
433 fra
.me
.REG
[3] = CALL_metamodel___abstractmetamodel___MMLocalClass___global(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
434 REGB1
= CALL_metamodel___abstractmetamodel___MMGlobalClass___is_extern(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
437 if (UNTAG_Bool(REGB0
)) {
438 /* native_interface/ni_metamodel.nit:80 */
439 REGB0
= CALL_metamodel___static_type___MMType___is_nullable(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
440 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
442 /* native_interface/ni_metamodel.nit:79 */
446 if (UNTAG_Bool(REGB0
)) {
447 /* native_interface/ni_metamodel.nit:81 */
449 fra
.me
.REG
[3] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
451 fra
.me
.REG
[4] = BOX_NativeString("");
453 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB0
);
454 once_value_1
= fra
.me
.REG
[4];
455 register_static_object(&once_value_1
);
456 } else fra
.me
.REG
[4] = once_value_1
;
457 fra
.me
.REG
[4] = fra
.me
.REG
[4];
458 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
459 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[1]);
461 fra
.me
.REG
[4] = BOX_NativeString(" = ");
463 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB0
);
464 once_value_2
= fra
.me
.REG
[4];
465 register_static_object(&once_value_2
);
466 } else fra
.me
.REG
[4] = once_value_2
;
467 fra
.me
.REG
[4] = fra
.me
.REG
[4];
468 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
469 fra
.me
.REG
[0] = CALL_primitive_info___MMType___boxtype(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[2]);
470 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[0]);
472 fra
.me
.REG
[0] = BOX_NativeString("");
474 fra
.me
.REG
[0] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[0], REGB0
);
475 once_value_3
= fra
.me
.REG
[0];
476 register_static_object(&once_value_3
);
477 } else fra
.me
.REG
[0] = once_value_3
;
478 fra
.me
.REG
[0] = fra
.me
.REG
[0];
479 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[0]);
480 fra
.me
.REG
[3] = CALL_standard___string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
483 /* native_interface/ni_metamodel.nit:83 */
485 fra
.me
.REG
[0] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
487 fra
.me
.REG
[4] = BOX_NativeString("");
489 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB0
);
490 once_value_5
= fra
.me
.REG
[4];
491 register_static_object(&once_value_5
);
492 } else fra
.me
.REG
[4] = once_value_5
;
493 fra
.me
.REG
[4] = fra
.me
.REG
[4];
494 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[4]);
495 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
497 fra
.me
.REG
[1] = BOX_NativeString(" = ");
499 fra
.me
.REG
[1] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[1], REGB0
);
500 once_value_6
= fra
.me
.REG
[1];
501 register_static_object(&once_value_6
);
502 } else fra
.me
.REG
[1] = once_value_6
;
503 fra
.me
.REG
[1] = fra
.me
.REG
[1];
504 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
505 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[2]);
507 fra
.me
.REG
[2] = BOX_NativeString("->ref.val");
509 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
510 once_value_7
= fra
.me
.REG
[2];
511 register_static_object(&once_value_7
);
512 } else fra
.me
.REG
[2] = once_value_7
;
513 fra
.me
.REG
[2] = fra
.me
.REG
[2];
514 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[2]);
515 fra
.me
.REG
[0] = CALL_standard___string___Object___to_s(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
516 fra
.me
.REG
[3] = fra
.me
.REG
[0];
520 stack_frame_head
= fra
.me
.prev
;
521 return fra
.me
.REG
[3];
523 static const char LOCATE_native_interface___ni_metamodel___MMType___uses_nitni_ref
[] = "ni_metamodel::MMType::uses_nitni_ref";
524 val_t
native_interface___ni_metamodel___MMType___uses_nitni_ref(val_t p0
){
525 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
529 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
530 fra
.me
.file
= LOCATE_native_interface___ni_metamodel
;
532 fra
.me
.meth
= LOCATE_native_interface___ni_metamodel___MMType___uses_nitni_ref
;
533 fra
.me
.has_broke
= 0;
535 fra
.me
.nitni_local_ref_head
= NULL
;
536 fra
.me
.REG
[0] = NIT_NULL
;
537 fra
.me
.REG
[1] = NIT_NULL
;
539 /* native_interface/ni_metamodel.nit:87 */
540 fra
.me
.REG
[1] = CALL_metamodel___static_type___MMType___local_class(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
541 fra
.me
.REG
[1] = CALL_primitive_info___MMLocalClass___primitive_info(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
542 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
543 if (UNTAG_Bool(REGB0
)) {
545 REGB1
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
546 if (UNTAG_Bool(REGB1
)) {
550 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[1])(fra
.me
.REG
[1], NIT_NULL
);
554 if (UNTAG_Bool(REGB0
)) {
557 REGB1
= CALL_metamodel___static_type___MMType___is_nullable(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
562 stack_frame_head
= fra
.me
.prev
;
565 static const char LOCATE_native_interface___ni_metamodel___MMType___friendly_null_getter
[] = "ni_metamodel::MMType::friendly_null_getter";
566 val_t
native_interface___ni_metamodel___MMType___friendly_null_getter(val_t p0
){
567 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
570 static val_t once_value_1
; /* Once value */
571 static val_t once_value_2
; /* Once value */
572 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
573 fra
.me
.file
= LOCATE_native_interface___ni_metamodel
;
575 fra
.me
.meth
= LOCATE_native_interface___ni_metamodel___MMType___friendly_null_getter
;
576 fra
.me
.has_broke
= 0;
578 fra
.me
.nitni_local_ref_head
= NULL
;
579 fra
.me
.REG
[0] = NIT_NULL
;
580 fra
.me
.REG
[1] = NIT_NULL
;
581 fra
.me
.REG
[2] = NIT_NULL
;
583 /* native_interface/ni_metamodel.nit:91 */
585 fra
.me
.REG
[1] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
587 fra
.me
.REG
[2] = BOX_NativeString("null_");
589 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
590 once_value_1
= fra
.me
.REG
[2];
591 register_static_object(&once_value_1
);
592 } else fra
.me
.REG
[2] = once_value_1
;
593 fra
.me
.REG
[2] = fra
.me
.REG
[2];
594 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
595 fra
.me
.REG
[0] = CALL_metamodel___static_type___MMType___as_notnull(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
596 fra
.me
.REG
[0] = CALL_native_interface___ni_metamodel___MMType___mangled_name(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
597 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
599 fra
.me
.REG
[0] = BOX_NativeString("");
601 fra
.me
.REG
[0] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[0], REGB0
);
602 once_value_2
= fra
.me
.REG
[0];
603 register_static_object(&once_value_2
);
604 } else fra
.me
.REG
[0] = once_value_2
;
605 fra
.me
.REG
[0] = fra
.me
.REG
[0];
606 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
607 fra
.me
.REG
[1] = CALL_standard___string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
610 stack_frame_head
= fra
.me
.prev
;
611 return fra
.me
.REG
[1];
613 static const char LOCATE_native_interface___ni_metamodel___MMType___local_friendly_null_getter_from
[] = "ni_metamodel::MMType::local_friendly_null_getter_from";
614 val_t
native_interface___ni_metamodel___MMType___local_friendly_null_getter_from(val_t p0
, val_t p1
){
615 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
618 static val_t once_value_1
; /* Once value */
619 static val_t once_value_2
; /* Once value */
620 static val_t once_value_3
; /* Once value */
621 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
622 fra
.me
.file
= LOCATE_native_interface___ni_metamodel
;
624 fra
.me
.meth
= LOCATE_native_interface___ni_metamodel___MMType___local_friendly_null_getter_from
;
625 fra
.me
.has_broke
= 0;
627 fra
.me
.nitni_local_ref_head
= NULL
;
628 fra
.me
.REG
[0] = NIT_NULL
;
629 fra
.me
.REG
[1] = NIT_NULL
;
630 fra
.me
.REG
[2] = NIT_NULL
;
631 fra
.me
.REG
[3] = NIT_NULL
;
634 /* native_interface/ni_metamodel.nit:96 */
636 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
638 fra
.me
.REG
[3] = BOX_NativeString("");
640 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB0
);
641 once_value_1
= fra
.me
.REG
[3];
642 register_static_object(&once_value_1
);
643 } else fra
.me
.REG
[3] = once_value_1
;
644 fra
.me
.REG
[3] = fra
.me
.REG
[3];
645 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
646 fra
.me
.REG
[1] = CALL_standard___string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
647 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
649 fra
.me
.REG
[1] = BOX_NativeString("_");
651 fra
.me
.REG
[1] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[1], REGB0
);
652 once_value_2
= fra
.me
.REG
[1];
653 register_static_object(&once_value_2
);
654 } else fra
.me
.REG
[1] = once_value_2
;
655 fra
.me
.REG
[1] = fra
.me
.REG
[1];
656 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
657 fra
.me
.REG
[0] = CALL_native_interface___ni_metamodel___MMType___friendly_null_getter(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
658 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
660 fra
.me
.REG
[0] = BOX_NativeString("");
662 fra
.me
.REG
[0] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[0], REGB0
);
663 once_value_3
= fra
.me
.REG
[0];
664 register_static_object(&once_value_3
);
665 } else fra
.me
.REG
[0] = once_value_3
;
666 fra
.me
.REG
[0] = fra
.me
.REG
[0];
667 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
668 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
671 stack_frame_head
= fra
.me
.prev
;
672 return fra
.me
.REG
[2];
674 static const char LOCATE_native_interface___ni_metamodel___MMMethod___local_friendly_name_from
[] = "ni_metamodel::MMMethod::local_friendly_name_from";
675 val_t
native_interface___ni_metamodel___MMMethod___local_friendly_name_from(val_t p0
, val_t p1
, val_t p2
){
676 struct {struct stack_frame_t me
; val_t MORE_REG
[4];} fra
;
679 static val_t once_value_1
; /* Once value */
680 static val_t once_value_2
; /* Once value */
681 static val_t once_value_3
; /* Once value */
682 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
683 fra
.me
.file
= LOCATE_native_interface___ni_metamodel
;
685 fra
.me
.meth
= LOCATE_native_interface___ni_metamodel___MMMethod___local_friendly_name_from
;
686 fra
.me
.has_broke
= 0;
688 fra
.me
.nitni_local_ref_head
= NULL
;
689 fra
.me
.REG
[0] = NIT_NULL
;
690 fra
.me
.REG
[1] = NIT_NULL
;
691 fra
.me
.REG
[2] = NIT_NULL
;
692 fra
.me
.REG
[3] = NIT_NULL
;
693 fra
.me
.REG
[4] = NIT_NULL
;
697 /* native_interface/ni_metamodel.nit:105 */
699 fra
.me
.REG
[3] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
701 fra
.me
.REG
[4] = BOX_NativeString("");
703 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB0
);
704 once_value_1
= fra
.me
.REG
[4];
705 register_static_object(&once_value_1
);
706 } else fra
.me
.REG
[4] = once_value_1
;
707 fra
.me
.REG
[4] = fra
.me
.REG
[4];
708 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
709 fra
.me
.REG
[1] = CALL_standard___string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
710 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[1]);
712 fra
.me
.REG
[1] = BOX_NativeString("_");
714 fra
.me
.REG
[1] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[1], REGB0
);
715 once_value_2
= fra
.me
.REG
[1];
716 register_static_object(&once_value_2
);
717 } else fra
.me
.REG
[1] = once_value_2
;
718 fra
.me
.REG
[1] = fra
.me
.REG
[1];
719 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[1]);
720 fra
.me
.REG
[2] = CALL_primitive_info___MMMethod___friendly_extern_name(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[2]);
721 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[2]);
723 fra
.me
.REG
[2] = BOX_NativeString("");
725 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
726 once_value_3
= fra
.me
.REG
[2];
727 register_static_object(&once_value_3
);
728 } else fra
.me
.REG
[2] = once_value_3
;
729 fra
.me
.REG
[2] = fra
.me
.REG
[2];
730 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[2]);
731 fra
.me
.REG
[3] = CALL_standard___string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
734 stack_frame_head
= fra
.me
.prev
;
735 return fra
.me
.REG
[3];
737 static const char LOCATE_native_interface___ni_metamodel___MMMethod___friendly_super_cname
[] = "ni_metamodel::MMMethod::friendly_super_cname";
738 val_t
native_interface___ni_metamodel___MMMethod___friendly_super_cname(val_t p0
){
739 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
742 static val_t once_value_1
; /* Once value */
743 static val_t once_value_2
; /* Once value */
744 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
745 fra
.me
.file
= LOCATE_native_interface___ni_metamodel
;
747 fra
.me
.meth
= LOCATE_native_interface___ni_metamodel___MMMethod___friendly_super_cname
;
748 fra
.me
.has_broke
= 0;
750 fra
.me
.nitni_local_ref_head
= NULL
;
751 fra
.me
.REG
[0] = NIT_NULL
;
752 fra
.me
.REG
[1] = NIT_NULL
;
753 fra
.me
.REG
[2] = NIT_NULL
;
755 /* native_interface/ni_metamodel.nit:110 */
757 fra
.me
.REG
[1] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
759 fra
.me
.REG
[2] = BOX_NativeString("");
761 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
762 once_value_1
= fra
.me
.REG
[2];
763 register_static_object(&once_value_1
);
764 } else fra
.me
.REG
[2] = once_value_1
;
765 fra
.me
.REG
[2] = fra
.me
.REG
[2];
766 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
767 fra
.me
.REG
[2] = CALL_metamodel___abstractmetamodel___MMLocalProperty___local_class(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
768 fra
.me
.REG
[2] = CALL_primitive_info___MMMethod___friendly_extern_name(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[2]);
769 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
771 fra
.me
.REG
[2] = BOX_NativeString("___super");
773 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
774 once_value_2
= fra
.me
.REG
[2];
775 register_static_object(&once_value_2
);
776 } else fra
.me
.REG
[2] = once_value_2
;
777 fra
.me
.REG
[2] = fra
.me
.REG
[2];
778 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
779 fra
.me
.REG
[1] = CALL_standard___string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
782 stack_frame_head
= fra
.me
.prev
;
783 return fra
.me
.REG
[1];
785 static const char LOCATE_native_interface___ni_metamodel___MMMethod___local_friendly_super_name_from
[] = "ni_metamodel::MMMethod::local_friendly_super_name_from";
786 val_t
native_interface___ni_metamodel___MMMethod___local_friendly_super_name_from(val_t p0
, val_t p1
){
787 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
790 static val_t once_value_1
; /* Once value */
791 static val_t once_value_2
; /* Once value */
792 static val_t once_value_3
; /* Once value */
793 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
794 fra
.me
.file
= LOCATE_native_interface___ni_metamodel
;
796 fra
.me
.meth
= LOCATE_native_interface___ni_metamodel___MMMethod___local_friendly_super_name_from
;
797 fra
.me
.has_broke
= 0;
799 fra
.me
.nitni_local_ref_head
= NULL
;
800 fra
.me
.REG
[0] = NIT_NULL
;
801 fra
.me
.REG
[1] = NIT_NULL
;
802 fra
.me
.REG
[2] = NIT_NULL
;
803 fra
.me
.REG
[3] = NIT_NULL
;
806 /* native_interface/ni_metamodel.nit:115 */
808 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
810 fra
.me
.REG
[3] = BOX_NativeString("");
812 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB0
);
813 once_value_1
= fra
.me
.REG
[3];
814 register_static_object(&once_value_1
);
815 } else fra
.me
.REG
[3] = once_value_1
;
816 fra
.me
.REG
[3] = fra
.me
.REG
[3];
817 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
818 fra
.me
.REG
[1] = CALL_standard___string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
819 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
821 fra
.me
.REG
[1] = BOX_NativeString("_");
823 fra
.me
.REG
[1] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[1], REGB0
);
824 once_value_2
= fra
.me
.REG
[1];
825 register_static_object(&once_value_2
);
826 } else fra
.me
.REG
[1] = once_value_2
;
827 fra
.me
.REG
[1] = fra
.me
.REG
[1];
828 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
829 fra
.me
.REG
[0] = CALL_native_interface___ni_metamodel___MMMethod___friendly_super_cname(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
830 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
832 fra
.me
.REG
[0] = BOX_NativeString("");
834 fra
.me
.REG
[0] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[0], REGB0
);
835 once_value_3
= fra
.me
.REG
[0];
836 register_static_object(&once_value_3
);
837 } else fra
.me
.REG
[0] = once_value_3
;
838 fra
.me
.REG
[0] = fra
.me
.REG
[0];
839 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
840 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
843 stack_frame_head
= fra
.me
.prev
;
844 return fra
.me
.REG
[2];
846 static const char LOCATE_native_interface___ni_metamodel___MMMethod___friendly_cparams
[] = "ni_metamodel::MMMethod::friendly_cparams";
847 val_t
native_interface___ni_metamodel___MMMethod___friendly_cparams(val_t p0
, val_t p1
){
848 struct {struct stack_frame_t me
; val_t MORE_REG
[5];} fra
;
853 static val_t once_value_1
; /* Once value */
854 static val_t once_value_2
; /* Once value */
855 static val_t once_value_3
; /* Once value */
856 static val_t once_value_4
; /* Once value */
857 static val_t once_value_5
; /* Once value */
858 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
859 fra
.me
.file
= LOCATE_native_interface___ni_metamodel
;
861 fra
.me
.meth
= LOCATE_native_interface___ni_metamodel___MMMethod___friendly_cparams
;
862 fra
.me
.has_broke
= 0;
864 fra
.me
.nitni_local_ref_head
= NULL
;
865 fra
.me
.REG
[0] = NIT_NULL
;
866 fra
.me
.REG
[1] = NIT_NULL
;
867 fra
.me
.REG
[2] = NIT_NULL
;
868 fra
.me
.REG
[3] = NIT_NULL
;
869 fra
.me
.REG
[4] = NIT_NULL
;
870 fra
.me
.REG
[5] = NIT_NULL
;
873 /* native_interface/ni_metamodel.nit:120 */
874 fra
.me
.REG
[2] = NEW_List_standard___collection___list___List___init();
875 /* native_interface/ni_metamodel.nit:122 */
876 fra
.me
.REG
[3] = CALL_metamodel___abstractmetamodel___MMLocalProperty___global(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
877 REGB0
= CALL_metamodel___abstractmetamodel___MMGlobalProperty___is_init(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
878 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
879 if (UNTAG_Bool(REGB0
)) {
880 /* native_interface/ni_metamodel.nit:123 */
882 fra
.me
.REG
[3] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
884 fra
.me
.REG
[4] = BOX_NativeString("");
886 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB0
);
887 once_value_1
= fra
.me
.REG
[4];
888 register_static_object(&once_value_1
);
889 } else fra
.me
.REG
[4] = once_value_1
;
890 fra
.me
.REG
[4] = fra
.me
.REG
[4];
891 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
892 fra
.me
.REG
[1] = CALL_metamodel___static_type___MMLocalClass___get_type(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
893 fra
.me
.REG
[1] = CALL_native_interface___ni_metamodel___MMType___friendly_extern_name(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
894 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[1]);
896 fra
.me
.REG
[1] = BOX_NativeString(" recv");
898 fra
.me
.REG
[1] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[1], REGB0
);
899 once_value_2
= fra
.me
.REG
[1];
900 register_static_object(&once_value_2
);
901 } else fra
.me
.REG
[1] = once_value_2
;
902 fra
.me
.REG
[1] = fra
.me
.REG
[1];
903 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[1]);
904 fra
.me
.REG
[3] = CALL_standard___string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
905 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
907 /* native_interface/ni_metamodel.nit:126 */
908 fra
.me
.REG
[0] = CALL_metamodel___static_type___MMLocalProperty___signature(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
909 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
910 if (UNTAG_Bool(REGB0
)) {
911 nit_abort("Reciever is null", NULL
, LOCATE_native_interface___ni_metamodel
, 126);
913 fra
.me
.REG
[0] = CALL_metamodel___static_type___MMSignature___params(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
914 /* ../lib/standard/collection/array.nit:269 */
916 /* ../lib/standard/collection/array.nit:270 */
917 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
918 if (UNTAG_Bool(REGB1
)) {
920 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 270);
922 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
923 /* ../lib/standard/collection/array.nit:271 */
924 fra
.me
.REG
[3] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[0]);
925 /* ../lib/standard/collection/array.nit:272 */
927 /* ../lib/standard/collection/array.nit:24 */
928 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
929 if (UNTAG_Bool(REGB1
)) {
931 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
933 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
934 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
935 if (UNTAG_Bool(REGB2
)) {
937 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
939 /* ../lib/standard/kernel.nit:235 */
940 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
941 /* ../lib/standard/collection/array.nit:272 */
942 if (UNTAG_Bool(REGB1
)) {
943 /* ../lib/standard/collection/array.nit:273 */
944 REGB1
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
945 if (UNTAG_Bool(REGB1
)) {
946 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 273);
948 /* ../lib/standard/collection/array.nit:718 */
949 fra
.me
.REG
[1] = ((Nit_NativeArray
)fra
.me
.REG
[3])->val
[UNTAG_Int(REGB0
)];
950 /* native_interface/ni_metamodel.nit:127 */
952 fra
.me
.REG
[4] = NEW_Array_standard___collection___array___Array___with_capacity(REGB1
);
954 fra
.me
.REG
[5] = BOX_NativeString("");
956 fra
.me
.REG
[5] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[5], REGB1
);
957 once_value_3
= fra
.me
.REG
[5];
958 register_static_object(&once_value_3
);
959 } else fra
.me
.REG
[5] = once_value_3
;
960 fra
.me
.REG
[5] = fra
.me
.REG
[5];
961 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
962 fra
.me
.REG
[5] = CALL_metamodel___static_type___MMParam___mmtype(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
963 fra
.me
.REG
[5] = CALL_native_interface___ni_metamodel___MMType___friendly_extern_name(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
964 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
966 fra
.me
.REG
[5] = BOX_NativeString(" ");
968 fra
.me
.REG
[5] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[5], REGB1
);
969 once_value_4
= fra
.me
.REG
[5];
970 register_static_object(&once_value_4
);
971 } else fra
.me
.REG
[5] = once_value_4
;
972 fra
.me
.REG
[5] = fra
.me
.REG
[5];
973 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
974 fra
.me
.REG
[1] = CALL_metamodel___static_type___MMParam___name(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
975 fra
.me
.REG
[1] = CALL_standard___string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
976 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[1]);
978 fra
.me
.REG
[1] = BOX_NativeString("");
980 fra
.me
.REG
[1] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[1], REGB1
);
981 once_value_5
= fra
.me
.REG
[1];
982 register_static_object(&once_value_5
);
983 } else fra
.me
.REG
[1] = once_value_5
;
984 fra
.me
.REG
[1] = fra
.me
.REG
[1];
985 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[1]);
986 fra
.me
.REG
[4] = CALL_standard___string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
987 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[4]);
988 /* ../lib/standard/collection/array.nit:274 */
990 /* ../lib/standard/kernel.nit:238 */
991 REGB1
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
992 /* ../lib/standard/collection/array.nit:274 */
995 /* ../lib/standard/collection/array.nit:272 */
1000 /* native_interface/ni_metamodel.nit:130 */
1003 stack_frame_head
= fra
.me
.prev
;
1004 return fra
.me
.REG
[2];
1006 static const char LOCATE_native_interface___ni_metamodel___MMMethod___csignature_with_suffix
[] = "ni_metamodel::MMMethod::csignature_with_suffix";
1007 val_t
native_interface___ni_metamodel___MMMethod___csignature_with_suffix(val_t p0
, val_t p1
, val_t p2
){
1008 struct {struct stack_frame_t me
; val_t MORE_REG
[4];} fra
;
1011 static val_t once_value_1
; /* Once value */
1012 static val_t once_value_2
; /* Once value */
1013 static val_t once_value_3
; /* Once value */
1014 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1015 fra
.me
.file
= LOCATE_native_interface___ni_metamodel
;
1017 fra
.me
.meth
= LOCATE_native_interface___ni_metamodel___MMMethod___csignature_with_suffix
;
1018 fra
.me
.has_broke
= 0;
1019 fra
.me
.REG_size
= 5;
1020 fra
.me
.nitni_local_ref_head
= NULL
;
1021 fra
.me
.REG
[0] = NIT_NULL
;
1022 fra
.me
.REG
[1] = NIT_NULL
;
1023 fra
.me
.REG
[2] = NIT_NULL
;
1024 fra
.me
.REG
[3] = NIT_NULL
;
1025 fra
.me
.REG
[4] = NIT_NULL
;
1029 /* native_interface/ni_metamodel.nit:135 */
1031 fra
.me
.REG
[3] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
1032 if (!once_value_1
) {
1033 fra
.me
.REG
[4] = BOX_NativeString("");
1035 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB0
);
1036 once_value_1
= fra
.me
.REG
[4];
1037 register_static_object(&once_value_1
);
1038 } else fra
.me
.REG
[4] = once_value_1
;
1039 fra
.me
.REG
[4] = fra
.me
.REG
[4];
1040 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
1041 fra
.me
.REG
[4] = CALL_primitive_info___MMMethod___friendly_extern_name(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[2]);
1042 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
1043 if (!once_value_2
) {
1044 fra
.me
.REG
[4] = BOX_NativeString("");
1046 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB0
);
1047 once_value_2
= fra
.me
.REG
[4];
1048 register_static_object(&once_value_2
);
1049 } else fra
.me
.REG
[4] = once_value_2
;
1050 fra
.me
.REG
[4] = fra
.me
.REG
[4];
1051 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
1052 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[1]);
1053 if (!once_value_3
) {
1054 fra
.me
.REG
[1] = BOX_NativeString("");
1056 fra
.me
.REG
[1] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[1], REGB0
);
1057 once_value_3
= fra
.me
.REG
[1];
1058 register_static_object(&once_value_3
);
1059 } else fra
.me
.REG
[1] = once_value_3
;
1060 fra
.me
.REG
[1] = fra
.me
.REG
[1];
1061 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[1]);
1062 fra
.me
.REG
[3] = CALL_standard___string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
1063 /* native_interface/ni_metamodel.nit:137 */
1064 fra
.me
.REG
[2] = CALL_native_interface___ni_metamodel___MMMethod___csignature_with_name(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[3], fra
.me
.REG
[2]);
1067 stack_frame_head
= fra
.me
.prev
;
1068 return fra
.me
.REG
[2];
1070 static const char LOCATE_native_interface___ni_metamodel___MMMethod___csignature_with_name
[] = "ni_metamodel::MMMethod::csignature_with_name";
1071 val_t
native_interface___ni_metamodel___MMMethod___csignature_with_name(val_t p0
, val_t p1
, val_t p2
){
1072 struct {struct stack_frame_t me
; val_t MORE_REG
[5];} fra
;
1076 static val_t once_value_1
; /* Once value */
1077 static val_t once_value_2
; /* Once value */
1078 static val_t once_value_3
; /* Once value */
1079 static val_t once_value_4
; /* Once value */
1080 static val_t once_value_5
; /* Once value */
1081 static val_t once_value_6
; /* Once value */
1082 static val_t once_value_7
; /* Once value */
1083 static val_t once_value_8
; /* Once value */
1084 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1085 fra
.me
.file
= LOCATE_native_interface___ni_metamodel
;
1087 fra
.me
.meth
= LOCATE_native_interface___ni_metamodel___MMMethod___csignature_with_name
;
1088 fra
.me
.has_broke
= 0;
1089 fra
.me
.REG_size
= 6;
1090 fra
.me
.nitni_local_ref_head
= NULL
;
1091 fra
.me
.REG
[0] = NIT_NULL
;
1092 fra
.me
.REG
[1] = NIT_NULL
;
1093 fra
.me
.REG
[2] = NIT_NULL
;
1094 fra
.me
.REG
[3] = NIT_NULL
;
1095 fra
.me
.REG
[4] = NIT_NULL
;
1096 fra
.me
.REG
[5] = NIT_NULL
;
1100 /* native_interface/ni_metamodel.nit:142 */
1101 fra
.me
.REG
[3] = NEW_Buffer_standard___string___Buffer___init();
1102 /* native_interface/ni_metamodel.nit:145 */
1103 fra
.me
.REG
[4] = CALL_metamodel___static_type___MMLocalProperty___signature(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1104 REGB0
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
1105 if (UNTAG_Bool(REGB0
)) {
1106 nit_abort("Reciever is null", NULL
, LOCATE_native_interface___ni_metamodel
, 145);
1108 fra
.me
.REG
[4] = CALL_metamodel___static_type___MMSignature___return_type(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
1109 REGB0
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
1110 if (UNTAG_Bool(REGB0
)) {
1112 REGB1
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
1113 if (UNTAG_Bool(REGB1
)) {
1114 REGB1
= TAG_Bool(0);
1117 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[4])(fra
.me
.REG
[4], NIT_NULL
);
1121 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
1122 if (UNTAG_Bool(REGB0
)) {
1123 /* native_interface/ni_metamodel.nit:146 */
1125 fra
.me
.REG
[4] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
1126 if (!once_value_1
) {
1127 fra
.me
.REG
[5] = BOX_NativeString("");
1129 fra
.me
.REG
[5] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[5], REGB0
);
1130 once_value_1
= fra
.me
.REG
[5];
1131 register_static_object(&once_value_1
);
1132 } else fra
.me
.REG
[5] = once_value_1
;
1133 fra
.me
.REG
[5] = fra
.me
.REG
[5];
1134 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
1135 fra
.me
.REG
[5] = CALL_metamodel___static_type___MMLocalProperty___signature(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1136 REGB0
= TAG_Bool(fra
.me
.REG
[5]==NIT_NULL
);
1137 if (UNTAG_Bool(REGB0
)) {
1138 nit_abort("Reciever is null", NULL
, LOCATE_native_interface___ni_metamodel
, 146);
1140 fra
.me
.REG
[5] = CALL_metamodel___static_type___MMSignature___return_type(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
1141 REGB0
= TAG_Bool(fra
.me
.REG
[5]==NIT_NULL
);
1142 if (UNTAG_Bool(REGB0
)) {
1143 nit_abort("Reciever is null", NULL
, LOCATE_native_interface___ni_metamodel
, 146);
1145 fra
.me
.REG
[5] = CALL_native_interface___ni_metamodel___MMType___friendly_extern_name(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
1146 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
1147 if (!once_value_2
) {
1148 fra
.me
.REG
[5] = BOX_NativeString(" ");
1150 fra
.me
.REG
[5] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[5], REGB0
);
1151 once_value_2
= fra
.me
.REG
[5];
1152 register_static_object(&once_value_2
);
1153 } else fra
.me
.REG
[5] = once_value_2
;
1154 fra
.me
.REG
[5] = fra
.me
.REG
[5];
1155 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
1156 fra
.me
.REG
[4] = CALL_standard___string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
1157 CALL_standard___collection___abstract_collection___Sequence___append(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
1159 /* native_interface/ni_metamodel.nit:147 */
1160 fra
.me
.REG
[4] = CALL_metamodel___abstractmetamodel___MMLocalProperty___global(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1161 REGB0
= CALL_metamodel___abstractmetamodel___MMGlobalProperty___is_init(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
1162 if (UNTAG_Bool(REGB0
)) {
1163 /* native_interface/ni_metamodel.nit:148 */
1165 fra
.me
.REG
[4] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
1166 if (!once_value_3
) {
1167 fra
.me
.REG
[5] = BOX_NativeString("");
1169 fra
.me
.REG
[5] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[5], REGB0
);
1170 once_value_3
= fra
.me
.REG
[5];
1171 register_static_object(&once_value_3
);
1172 } else fra
.me
.REG
[5] = once_value_3
;
1173 fra
.me
.REG
[5] = fra
.me
.REG
[5];
1174 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
1175 fra
.me
.REG
[5] = CALL_metamodel___static_type___MMLocalClass___get_type(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
1176 fra
.me
.REG
[5] = CALL_native_interface___ni_metamodel___MMType___friendly_extern_name(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
1177 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
1178 if (!once_value_4
) {
1179 fra
.me
.REG
[5] = BOX_NativeString(" ");
1181 fra
.me
.REG
[5] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[5], REGB0
);
1182 once_value_4
= fra
.me
.REG
[5];
1183 register_static_object(&once_value_4
);
1184 } else fra
.me
.REG
[5] = once_value_4
;
1185 fra
.me
.REG
[5] = fra
.me
.REG
[5];
1186 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
1187 fra
.me
.REG
[4] = CALL_standard___string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
1188 CALL_standard___collection___abstract_collection___Sequence___append(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
1190 /* native_interface/ni_metamodel.nit:150 */
1191 if (!once_value_5
) {
1192 fra
.me
.REG
[4] = BOX_NativeString("void ");
1194 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB0
);
1195 once_value_5
= fra
.me
.REG
[4];
1196 register_static_object(&once_value_5
);
1197 } else fra
.me
.REG
[4] = once_value_5
;
1198 fra
.me
.REG
[4] = fra
.me
.REG
[4];
1199 CALL_standard___collection___abstract_collection___Sequence___append(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
1202 /* native_interface/ni_metamodel.nit:154 */
1203 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
1204 if (UNTAG_Bool(REGB0
)) {
1206 REGB1
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
1207 if (UNTAG_Bool(REGB1
)) {
1208 REGB1
= TAG_Bool(0);
1211 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[1])(fra
.me
.REG
[1], NIT_NULL
);
1215 if (UNTAG_Bool(REGB0
)) {
1216 /* native_interface/ni_metamodel.nit:155 */
1217 fra
.me
.REG
[4] = CALL_primitive_info___MMMethod___friendly_extern_name(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[2]);
1218 CALL_standard___collection___abstract_collection___Sequence___append(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
1220 /* native_interface/ni_metamodel.nit:157 */
1221 CALL_standard___collection___abstract_collection___Sequence___append(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[1]);
1223 /* native_interface/ni_metamodel.nit:161 */
1224 fra
.me
.REG
[2] = CALL_native_interface___ni_metamodel___MMMethod___friendly_cparams(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[2]);
1225 /* native_interface/ni_metamodel.nit:163 */
1227 fra
.me
.REG
[0] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
1228 if (!once_value_6
) {
1229 fra
.me
.REG
[1] = BOX_NativeString("( ");
1231 fra
.me
.REG
[1] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[1], REGB0
);
1232 once_value_6
= fra
.me
.REG
[1];
1233 register_static_object(&once_value_6
);
1234 } else fra
.me
.REG
[1] = once_value_6
;
1235 fra
.me
.REG
[1] = fra
.me
.REG
[1];
1236 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
1237 if (!once_value_7
) {
1238 fra
.me
.REG
[1] = BOX_NativeString(", ");
1240 fra
.me
.REG
[1] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[1], REGB0
);
1241 once_value_7
= fra
.me
.REG
[1];
1242 register_static_object(&once_value_7
);
1243 } else fra
.me
.REG
[1] = once_value_7
;
1244 fra
.me
.REG
[1] = fra
.me
.REG
[1];
1245 fra
.me
.REG
[1] = CALL_standard___string___Collection___join(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
1246 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
1247 if (!once_value_8
) {
1248 fra
.me
.REG
[1] = BOX_NativeString(" )");
1250 fra
.me
.REG
[1] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[1], REGB0
);
1251 once_value_8
= fra
.me
.REG
[1];
1252 register_static_object(&once_value_8
);
1253 } else fra
.me
.REG
[1] = once_value_8
;
1254 fra
.me
.REG
[1] = fra
.me
.REG
[1];
1255 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
1256 fra
.me
.REG
[0] = CALL_standard___string___Object___to_s(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1257 CALL_standard___collection___abstract_collection___Sequence___append(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[0]);
1258 /* native_interface/ni_metamodel.nit:165 */
1259 fra
.me
.REG
[3] = CALL_standard___string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
1262 stack_frame_head
= fra
.me
.prev
;
1263 return fra
.me
.REG
[3];
1265 static const char LOCATE_native_interface___ni_metamodel___MMMethod___friendly_csignature
[] = "ni_metamodel::MMMethod::friendly_csignature";
1266 val_t
native_interface___ni_metamodel___MMMethod___friendly_csignature(val_t p0
, val_t p1
){
1267 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1269 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1270 fra
.me
.file
= LOCATE_native_interface___ni_metamodel
;
1272 fra
.me
.meth
= LOCATE_native_interface___ni_metamodel___MMMethod___friendly_csignature
;
1273 fra
.me
.has_broke
= 0;
1274 fra
.me
.REG_size
= 2;
1275 fra
.me
.nitni_local_ref_head
= NULL
;
1276 fra
.me
.REG
[0] = NIT_NULL
;
1277 fra
.me
.REG
[1] = NIT_NULL
;
1280 /* native_interface/ni_metamodel.nit:170 */
1281 fra
.me
.REG
[1] = CALL_native_interface___ni_metamodel___MMMethod___csignature_with_name(fra
.me
.REG
[0])(fra
.me
.REG
[0], NIT_NULL
, fra
.me
.REG
[1]);
1284 stack_frame_head
= fra
.me
.prev
;
1285 return fra
.me
.REG
[1];
1287 static const char LOCATE_native_interface___ni_metamodel___MMMethod___frontier_csignature_from
[] = "ni_metamodel::MMMethod::frontier_csignature_from";
1288 val_t
native_interface___ni_metamodel___MMMethod___frontier_csignature_from(val_t p0
, val_t p1
, val_t p2
){
1289 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
1291 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1292 fra
.me
.file
= LOCATE_native_interface___ni_metamodel
;
1294 fra
.me
.meth
= LOCATE_native_interface___ni_metamodel___MMMethod___frontier_csignature_from
;
1295 fra
.me
.has_broke
= 0;
1296 fra
.me
.REG_size
= 3;
1297 fra
.me
.nitni_local_ref_head
= NULL
;
1298 fra
.me
.REG
[0] = NIT_NULL
;
1299 fra
.me
.REG
[1] = NIT_NULL
;
1300 fra
.me
.REG
[2] = NIT_NULL
;
1304 /* native_interface/ni_metamodel.nit:175 */
1305 fra
.me
.REG
[1] = CALL_native_interface___ni_metamodel___MMMethod___local_friendly_name_from(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], fra
.me
.REG
[2]);
1306 fra
.me
.REG
[2] = CALL_native_interface___ni_metamodel___MMMethod___csignature_with_name(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], fra
.me
.REG
[2]);
1309 stack_frame_head
= fra
.me
.prev
;
1310 return fra
.me
.REG
[2];
1312 static const char LOCATE_native_interface___ni_metamodel___MMMethod___friendly_super_csignature
[] = "ni_metamodel::MMMethod::friendly_super_csignature";
1313 val_t
native_interface___ni_metamodel___MMMethod___friendly_super_csignature(val_t p0
){
1314 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
1317 static val_t once_value_1
; /* Once value */
1318 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1319 fra
.me
.file
= LOCATE_native_interface___ni_metamodel
;
1321 fra
.me
.meth
= LOCATE_native_interface___ni_metamodel___MMMethod___friendly_super_csignature
;
1322 fra
.me
.has_broke
= 0;
1323 fra
.me
.REG_size
= 3;
1324 fra
.me
.nitni_local_ref_head
= NULL
;
1325 fra
.me
.REG
[0] = NIT_NULL
;
1326 fra
.me
.REG
[1] = NIT_NULL
;
1327 fra
.me
.REG
[2] = NIT_NULL
;
1329 /* native_interface/ni_metamodel.nit:180 */
1330 if (!once_value_1
) {
1331 fra
.me
.REG
[1] = BOX_NativeString("___super");
1333 fra
.me
.REG
[1] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[1], REGB0
);
1334 once_value_1
= fra
.me
.REG
[1];
1335 register_static_object(&once_value_1
);
1336 } else fra
.me
.REG
[1] = once_value_1
;
1337 fra
.me
.REG
[1] = fra
.me
.REG
[1];
1338 fra
.me
.REG
[2] = CALL_metamodel___abstractmetamodel___MMLocalProperty___local_class(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1339 fra
.me
.REG
[2] = CALL_native_interface___ni_metamodel___MMMethod___csignature_with_suffix(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], fra
.me
.REG
[2]);
1342 stack_frame_head
= fra
.me
.prev
;
1343 return fra
.me
.REG
[2];
1345 static const char LOCATE_native_interface___ni_metamodel___MMMethod___frontier_super_csignature_from
[] = "ni_metamodel::MMMethod::frontier_super_csignature_from";
1346 val_t
native_interface___ni_metamodel___MMMethod___frontier_super_csignature_from(val_t p0
, val_t p1
){
1347 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
1349 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1350 fra
.me
.file
= LOCATE_native_interface___ni_metamodel
;
1352 fra
.me
.meth
= LOCATE_native_interface___ni_metamodel___MMMethod___frontier_super_csignature_from
;
1353 fra
.me
.has_broke
= 0;
1354 fra
.me
.REG_size
= 3;
1355 fra
.me
.nitni_local_ref_head
= NULL
;
1356 fra
.me
.REG
[0] = NIT_NULL
;
1357 fra
.me
.REG
[1] = NIT_NULL
;
1358 fra
.me
.REG
[2] = NIT_NULL
;
1361 /* native_interface/ni_metamodel.nit:185 */
1362 fra
.me
.REG
[1] = CALL_native_interface___ni_metamodel___MMMethod___local_friendly_super_name_from(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
1363 fra
.me
.REG
[2] = CALL_metamodel___abstractmetamodel___MMLocalProperty___local_class(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1364 fra
.me
.REG
[2] = CALL_native_interface___ni_metamodel___MMMethod___csignature_with_name(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], fra
.me
.REG
[2]);
1367 stack_frame_head
= fra
.me
.prev
;
1368 return fra
.me
.REG
[2];
1370 static const char LOCATE_native_interface___ni_metamodel___MMMethod___impl_csignature
[] = "ni_metamodel::MMMethod::impl_csignature";
1371 val_t
native_interface___ni_metamodel___MMMethod___impl_csignature(val_t p0
){
1372 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
1375 static val_t once_value_1
; /* Once value */
1376 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1377 fra
.me
.file
= LOCATE_native_interface___ni_metamodel
;
1379 fra
.me
.meth
= LOCATE_native_interface___ni_metamodel___MMMethod___impl_csignature
;
1380 fra
.me
.has_broke
= 0;
1381 fra
.me
.REG_size
= 3;
1382 fra
.me
.nitni_local_ref_head
= NULL
;
1383 fra
.me
.REG
[0] = NIT_NULL
;
1384 fra
.me
.REG
[1] = NIT_NULL
;
1385 fra
.me
.REG
[2] = NIT_NULL
;
1387 /* native_interface/ni_metamodel.nit:190 */
1388 if (!once_value_1
) {
1389 fra
.me
.REG
[1] = BOX_NativeString("___impl");
1391 fra
.me
.REG
[1] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[1], REGB0
);
1392 once_value_1
= fra
.me
.REG
[1];
1393 register_static_object(&once_value_1
);
1394 } else fra
.me
.REG
[1] = once_value_1
;
1395 fra
.me
.REG
[1] = fra
.me
.REG
[1];
1396 fra
.me
.REG
[2] = CALL_metamodel___abstractmetamodel___MMLocalProperty___local_class(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1397 fra
.me
.REG
[2] = CALL_native_interface___ni_metamodel___MMMethod___csignature_with_suffix(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], fra
.me
.REG
[2]);
1400 stack_frame_head
= fra
.me
.prev
;
1401 return fra
.me
.REG
[2];
1403 static const char LOCATE_native_interface___ni_metamodel___MMMethod___cparams
[] = "ni_metamodel::MMMethod::cparams";
1404 val_t
native_interface___ni_metamodel___MMMethod___cparams(val_t p0
){
1405 struct {struct stack_frame_t me
; val_t MORE_REG
[5];} fra
;
1410 static val_t once_value_1
; /* Once value */
1411 static val_t once_value_2
; /* Once value */
1412 static val_t once_value_3
; /* Once value */
1413 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1414 fra
.me
.file
= LOCATE_native_interface___ni_metamodel
;
1416 fra
.me
.meth
= LOCATE_native_interface___ni_metamodel___MMMethod___cparams
;
1417 fra
.me
.has_broke
= 0;
1418 fra
.me
.REG_size
= 6;
1419 fra
.me
.nitni_local_ref_head
= NULL
;
1420 fra
.me
.REG
[0] = NIT_NULL
;
1421 fra
.me
.REG
[1] = NIT_NULL
;
1422 fra
.me
.REG
[2] = NIT_NULL
;
1423 fra
.me
.REG
[3] = NIT_NULL
;
1424 fra
.me
.REG
[4] = NIT_NULL
;
1425 fra
.me
.REG
[5] = NIT_NULL
;
1427 /* native_interface/ni_metamodel.nit:196 */
1428 fra
.me
.REG
[1] = NEW_List_standard___collection___list___List___init();
1429 /* native_interface/ni_metamodel.nit:197 */
1430 fra
.me
.REG
[2] = CALL_metamodel___abstractmetamodel___MMLocalProperty___global(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1431 REGB0
= CALL_metamodel___abstractmetamodel___MMGlobalProperty___is_init(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
1432 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
1433 if (UNTAG_Bool(REGB0
)) {
1434 if (!once_value_1
) {
1435 fra
.me
.REG
[2] = BOX_NativeString("val_t recv");
1436 REGB0
= TAG_Int(10);
1437 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
1438 once_value_1
= fra
.me
.REG
[2];
1439 register_static_object(&once_value_1
);
1440 } else fra
.me
.REG
[2] = once_value_1
;
1441 fra
.me
.REG
[2] = fra
.me
.REG
[2];
1442 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
1444 /* native_interface/ni_metamodel.nit:198 */
1445 fra
.me
.REG
[0] = CALL_metamodel___static_type___MMLocalProperty___signature(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1446 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
1447 if (UNTAG_Bool(REGB0
)) {
1448 nit_abort("Reciever is null", NULL
, LOCATE_native_interface___ni_metamodel
, 198);
1450 fra
.me
.REG
[0] = CALL_metamodel___static_type___MMSignature___params(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1451 /* ../lib/standard/collection/array.nit:269 */
1453 /* ../lib/standard/collection/array.nit:270 */
1454 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
1455 if (UNTAG_Bool(REGB1
)) {
1457 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 270);
1459 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
1460 /* ../lib/standard/collection/array.nit:271 */
1461 fra
.me
.REG
[2] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[0]);
1462 /* ../lib/standard/collection/array.nit:272 */
1464 /* ../lib/standard/collection/array.nit:24 */
1465 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
1466 if (UNTAG_Bool(REGB1
)) {
1468 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
1470 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
1471 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
1472 if (UNTAG_Bool(REGB2
)) {
1474 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1476 /* ../lib/standard/kernel.nit:235 */
1477 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
1478 /* ../lib/standard/collection/array.nit:272 */
1479 if (UNTAG_Bool(REGB1
)) {
1480 /* ../lib/standard/collection/array.nit:273 */
1481 REGB1
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
1482 if (UNTAG_Bool(REGB1
)) {
1483 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 273);
1485 /* ../lib/standard/collection/array.nit:718 */
1486 fra
.me
.REG
[3] = ((Nit_NativeArray
)fra
.me
.REG
[2])->val
[UNTAG_Int(REGB0
)];
1487 /* native_interface/ni_metamodel.nit:198 */
1489 fra
.me
.REG
[4] = NEW_Array_standard___collection___array___Array___with_capacity(REGB1
);
1490 if (!once_value_2
) {
1491 fra
.me
.REG
[5] = BOX_NativeString("val_t ");
1493 fra
.me
.REG
[5] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[5], REGB1
);
1494 once_value_2
= fra
.me
.REG
[5];
1495 register_static_object(&once_value_2
);
1496 } else fra
.me
.REG
[5] = once_value_2
;
1497 fra
.me
.REG
[5] = fra
.me
.REG
[5];
1498 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
1499 fra
.me
.REG
[3] = CALL_metamodel___static_type___MMParam___name(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
1500 fra
.me
.REG
[3] = CALL_standard___string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
1501 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[3]);
1502 if (!once_value_3
) {
1503 fra
.me
.REG
[3] = BOX_NativeString("");
1505 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB1
);
1506 once_value_3
= fra
.me
.REG
[3];
1507 register_static_object(&once_value_3
);
1508 } else fra
.me
.REG
[3] = once_value_3
;
1509 fra
.me
.REG
[3] = fra
.me
.REG
[3];
1510 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[3]);
1511 fra
.me
.REG
[4] = CALL_standard___string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
1512 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[4]);
1513 /* ../lib/standard/collection/array.nit:274 */
1515 /* ../lib/standard/kernel.nit:238 */
1516 REGB1
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
1517 /* ../lib/standard/collection/array.nit:274 */
1520 /* ../lib/standard/collection/array.nit:272 */
1525 /* native_interface/ni_metamodel.nit:199 */
1528 stack_frame_head
= fra
.me
.prev
;
1529 return fra
.me
.REG
[1];
1531 static const char LOCATE_native_interface___ni_metamodel___MMMethod___out_csignature
[] = "ni_metamodel::MMMethod::out_csignature";
1532 val_t
native_interface___ni_metamodel___MMMethod___out_csignature(val_t p0
){
1533 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
1537 static val_t once_value_1
; /* Once value */
1538 static val_t once_value_2
; /* Once value */
1539 static val_t once_value_3
; /* Once value */
1540 static val_t once_value_4
; /* Once value */
1541 static val_t once_value_5
; /* Once value */
1542 static val_t once_value_6
; /* Once value */
1543 static val_t once_value_7
; /* Once value */
1544 static val_t once_value_8
; /* Once value */
1545 static val_t once_value_9
; /* Once value */
1546 static val_t once_value_10
; /* Once value */
1547 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1548 fra
.me
.file
= LOCATE_native_interface___ni_metamodel
;
1550 fra
.me
.meth
= LOCATE_native_interface___ni_metamodel___MMMethod___out_csignature
;
1551 fra
.me
.has_broke
= 0;
1552 fra
.me
.REG_size
= 4;
1553 fra
.me
.nitni_local_ref_head
= NULL
;
1554 fra
.me
.REG
[0] = NIT_NULL
;
1555 fra
.me
.REG
[1] = NIT_NULL
;
1556 fra
.me
.REG
[2] = NIT_NULL
;
1557 fra
.me
.REG
[3] = NIT_NULL
;
1559 /* native_interface/ni_metamodel.nit:204 */
1560 fra
.me
.REG
[1] = NEW_Buffer_standard___string___Buffer___init();
1561 /* native_interface/ni_metamodel.nit:207 */
1562 fra
.me
.REG
[2] = CALL_metamodel___static_type___MMLocalProperty___signature(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1563 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
1564 if (UNTAG_Bool(REGB0
)) {
1565 nit_abort("Reciever is null", NULL
, LOCATE_native_interface___ni_metamodel
, 207);
1567 fra
.me
.REG
[2] = CALL_metamodel___static_type___MMSignature___return_type(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
1568 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
1569 if (UNTAG_Bool(REGB0
)) {
1571 REGB1
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
1572 if (UNTAG_Bool(REGB1
)) {
1573 REGB1
= TAG_Bool(0);
1576 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], NIT_NULL
);
1580 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
1581 if (UNTAG_Bool(REGB0
)) {
1582 REGB0
= TAG_Bool(1);
1584 fra
.me
.REG
[2] = CALL_metamodel___abstractmetamodel___MMLocalProperty___global(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1585 REGB1
= CALL_metamodel___abstractmetamodel___MMGlobalProperty___is_init(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
1588 if (UNTAG_Bool(REGB0
)) {
1589 /* native_interface/ni_metamodel.nit:208 */
1590 if (!once_value_1
) {
1591 fra
.me
.REG
[2] = BOX_NativeString("val_t ");
1593 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
1594 once_value_1
= fra
.me
.REG
[2];
1595 register_static_object(&once_value_1
);
1596 } else fra
.me
.REG
[2] = once_value_1
;
1597 fra
.me
.REG
[2] = fra
.me
.REG
[2];
1598 CALL_standard___collection___abstract_collection___Sequence___append(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
1600 /* native_interface/ni_metamodel.nit:210 */
1601 if (!once_value_2
) {
1602 fra
.me
.REG
[2] = BOX_NativeString("void ");
1604 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
1605 once_value_2
= fra
.me
.REG
[2];
1606 register_static_object(&once_value_2
);
1607 } else fra
.me
.REG
[2] = once_value_2
;
1608 fra
.me
.REG
[2] = fra
.me
.REG
[2];
1609 CALL_standard___collection___abstract_collection___Sequence___append(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
1611 /* native_interface/ni_metamodel.nit:214 */
1612 fra
.me
.REG
[2] = CALL_metamodel___abstractmetamodel___MMLocalProperty___global(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1613 REGB0
= CALL_metamodel___abstractmetamodel___MMGlobalProperty___is_init(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
1614 if (UNTAG_Bool(REGB0
)) {
1615 /* native_interface/ni_metamodel.nit:215 */
1617 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
1618 if (!once_value_3
) {
1619 fra
.me
.REG
[3] = BOX_NativeString("NEW_");
1621 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB0
);
1622 once_value_3
= fra
.me
.REG
[3];
1623 register_static_object(&once_value_3
);
1624 } else fra
.me
.REG
[3] = once_value_3
;
1625 fra
.me
.REG
[3] = fra
.me
.REG
[3];
1626 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
1627 fra
.me
.REG
[3] = CALL_metamodel___abstractmetamodel___MMLocalProperty___local_class(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1628 fra
.me
.REG
[3] = CALL_standard___string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
1629 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
1630 if (!once_value_4
) {
1631 fra
.me
.REG
[3] = BOX_NativeString("_");
1633 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB0
);
1634 once_value_4
= fra
.me
.REG
[3];
1635 register_static_object(&once_value_4
);
1636 } else fra
.me
.REG
[3] = once_value_4
;
1637 fra
.me
.REG
[3] = fra
.me
.REG
[3];
1638 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
1639 fra
.me
.REG
[3] = CALL_compiling___compiling_base___MMLocalProperty___cname(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1640 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
1641 if (!once_value_5
) {
1642 fra
.me
.REG
[3] = BOX_NativeString("");
1644 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB0
);
1645 once_value_5
= fra
.me
.REG
[3];
1646 register_static_object(&once_value_5
);
1647 } else fra
.me
.REG
[3] = once_value_5
;
1648 fra
.me
.REG
[3] = fra
.me
.REG
[3];
1649 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
1650 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
1651 CALL_standard___collection___abstract_collection___Sequence___append(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
1653 /* native_interface/ni_metamodel.nit:217 */
1655 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
1656 if (!once_value_6
) {
1657 fra
.me
.REG
[3] = BOX_NativeString("");
1659 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB0
);
1660 once_value_6
= fra
.me
.REG
[3];
1661 register_static_object(&once_value_6
);
1662 } else fra
.me
.REG
[3] = once_value_6
;
1663 fra
.me
.REG
[3] = fra
.me
.REG
[3];
1664 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
1665 fra
.me
.REG
[3] = CALL_metamodel___abstractmetamodel___MMLocalProperty___local_class(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1666 fra
.me
.REG
[3] = CALL_primitive_info___MMMethod___friendly_extern_name(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[3]);
1667 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
1668 if (!once_value_7
) {
1669 fra
.me
.REG
[3] = BOX_NativeString("___out");
1671 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB0
);
1672 once_value_7
= fra
.me
.REG
[3];
1673 register_static_object(&once_value_7
);
1674 } else fra
.me
.REG
[3] = once_value_7
;
1675 fra
.me
.REG
[3] = fra
.me
.REG
[3];
1676 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
1677 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
1678 CALL_standard___collection___abstract_collection___Sequence___append(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
1680 /* native_interface/ni_metamodel.nit:221 */
1682 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
1683 if (!once_value_8
) {
1684 fra
.me
.REG
[3] = BOX_NativeString("( ");
1686 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB0
);
1687 once_value_8
= fra
.me
.REG
[3];
1688 register_static_object(&once_value_8
);
1689 } else fra
.me
.REG
[3] = once_value_8
;
1690 fra
.me
.REG
[3] = fra
.me
.REG
[3];
1691 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
1692 fra
.me
.REG
[0] = CALL_native_interface___ni_metamodel___MMMethod___cparams(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1693 if (!once_value_9
) {
1694 fra
.me
.REG
[3] = BOX_NativeString(", ");
1696 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB0
);
1697 once_value_9
= fra
.me
.REG
[3];
1698 register_static_object(&once_value_9
);
1699 } else fra
.me
.REG
[3] = once_value_9
;
1700 fra
.me
.REG
[3] = fra
.me
.REG
[3];
1701 fra
.me
.REG
[3] = CALL_standard___string___Collection___join(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[3]);
1702 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
1703 if (!once_value_10
) {
1704 fra
.me
.REG
[3] = BOX_NativeString(" )");
1706 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB0
);
1707 once_value_10
= fra
.me
.REG
[3];
1708 register_static_object(&once_value_10
);
1709 } else fra
.me
.REG
[3] = once_value_10
;
1710 fra
.me
.REG
[3] = fra
.me
.REG
[3];
1711 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
1712 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
1713 CALL_standard___collection___abstract_collection___Sequence___append(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
1714 /* native_interface/ni_metamodel.nit:223 */
1715 fra
.me
.REG
[1] = CALL_standard___string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1718 stack_frame_head
= fra
.me
.prev
;
1719 return fra
.me
.REG
[1];
1721 static const char LOCATE_native_interface___ni_metamodel___MMImportedCast___in_name
[] = "ni_metamodel::MMImportedCast::in_name";
1722 val_t
native_interface___ni_metamodel___MMImportedCast___in_name(val_t p0
){
1723 struct {struct stack_frame_t me
;} fra
;
1726 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1727 fra
.me
.file
= LOCATE_native_interface___ni_metamodel
;
1729 fra
.me
.meth
= LOCATE_native_interface___ni_metamodel___MMImportedCast___in_name
;
1730 fra
.me
.has_broke
= 0;
1731 fra
.me
.REG_size
= 1;
1732 fra
.me
.nitni_local_ref_head
= NULL
;
1733 fra
.me
.REG
[0] = NIT_NULL
;
1735 /* native_interface/ni_metamodel.nit:229 */
1736 REGB0
= TAG_Bool(ATTR_native_interface___ni_metamodel___MMImportedCast_____atin_name(fra
.me
.REG
[0])!=NIT_NULL
);
1737 if (UNTAG_Bool(REGB0
)) {
1739 nit_abort("Uninitialized attribute %s", "@in_name", LOCATE_native_interface___ni_metamodel
, 229);
1741 fra
.me
.REG
[0] = ATTR_native_interface___ni_metamodel___MMImportedCast_____atin_name(fra
.me
.REG
[0]);
1742 stack_frame_head
= fra
.me
.prev
;
1743 return fra
.me
.REG
[0];
1745 static const char LOCATE_native_interface___ni_metamodel___MMImportedCast___in_name__eq
[] = "ni_metamodel::MMImportedCast::in_name=";
1746 void native_interface___ni_metamodel___MMImportedCast___in_name__eq(val_t p0
, val_t p1
){
1747 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1749 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1750 fra
.me
.file
= LOCATE_native_interface___ni_metamodel
;
1752 fra
.me
.meth
= LOCATE_native_interface___ni_metamodel___MMImportedCast___in_name__eq
;
1753 fra
.me
.has_broke
= 0;
1754 fra
.me
.REG_size
= 2;
1755 fra
.me
.nitni_local_ref_head
= NULL
;
1756 fra
.me
.REG
[0] = NIT_NULL
;
1757 fra
.me
.REG
[1] = NIT_NULL
;
1760 /* native_interface/ni_metamodel.nit:229 */
1761 ATTR_native_interface___ni_metamodel___MMImportedCast_____atin_name(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
1762 stack_frame_head
= fra
.me
.prev
;
1765 static const char LOCATE_native_interface___ni_metamodel___MMImportedCast___as_friendly_extern_name
[] = "ni_metamodel::MMImportedCast::as_friendly_extern_name";
1766 val_t
native_interface___ni_metamodel___MMImportedCast___as_friendly_extern_name(val_t p0
){
1767 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
1770 static val_t once_value_1
; /* Once value */
1771 static val_t once_value_2
; /* Once value */
1772 static val_t once_value_4
; /* Once value */
1773 static val_t once_value_5
; /* Once value */
1774 static val_t once_value_6
; /* Once value */
1775 static val_t once_value_7
; /* Once value */
1776 static val_t once_value_8
; /* Once value */
1777 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1778 fra
.me
.file
= LOCATE_native_interface___ni_metamodel
;
1780 fra
.me
.meth
= LOCATE_native_interface___ni_metamodel___MMImportedCast___as_friendly_extern_name
;
1781 fra
.me
.has_broke
= 0;
1782 fra
.me
.REG_size
= 4;
1783 fra
.me
.nitni_local_ref_head
= NULL
;
1784 fra
.me
.REG
[0] = NIT_NULL
;
1785 fra
.me
.REG
[1] = NIT_NULL
;
1786 fra
.me
.REG
[2] = NIT_NULL
;
1787 fra
.me
.REG
[3] = NIT_NULL
;
1789 /* native_interface/ni_metamodel.nit:232 */
1790 REGB0
= CALL_metamodel___static_type___MMImportedCast___is_about_nullable_only(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1791 if (UNTAG_Bool(REGB0
)) {
1792 /* native_interface/ni_metamodel.nit:233 */
1793 REGB0
= CALL_metamodel___static_type___MMImportedCast___is_not_null_to_nullable(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1794 if (UNTAG_Bool(REGB0
)) {
1795 /* native_interface/ni_metamodel.nit:235 */
1797 fra
.me
.REG
[1] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
1798 if (!once_value_1
) {
1799 fra
.me
.REG
[2] = BOX_NativeString("");
1801 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
1802 once_value_1
= fra
.me
.REG
[2];
1803 register_static_object(&once_value_1
);
1804 } else fra
.me
.REG
[2] = once_value_1
;
1805 fra
.me
.REG
[2] = fra
.me
.REG
[2];
1806 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
1807 fra
.me
.REG
[2] = CALL_metamodel___static_type___MMImportedCast___from(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1808 fra
.me
.REG
[2] = CALL_native_interface___ni_metamodel___MMType___mangled_name(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
1809 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
1810 if (!once_value_2
) {
1811 fra
.me
.REG
[2] = BOX_NativeString("_as_nullable");
1812 REGB0
= TAG_Int(12);
1813 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
1814 once_value_2
= fra
.me
.REG
[2];
1815 register_static_object(&once_value_2
);
1816 } else fra
.me
.REG
[2] = once_value_2
;
1817 fra
.me
.REG
[2] = fra
.me
.REG
[2];
1818 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
1819 fra
.me
.REG
[1] = CALL_standard___string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1822 /* native_interface/ni_metamodel.nit:236 */
1823 REGB0
= CALL_metamodel___static_type___MMImportedCast___is_nullable_to_not_null(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1824 if (UNTAG_Bool(REGB0
)) {
1825 /* native_interface/ni_metamodel.nit:238 */
1827 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
1828 if (!once_value_4
) {
1829 fra
.me
.REG
[3] = BOX_NativeString("");
1831 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB0
);
1832 once_value_4
= fra
.me
.REG
[3];
1833 register_static_object(&once_value_4
);
1834 } else fra
.me
.REG
[3] = once_value_4
;
1835 fra
.me
.REG
[3] = fra
.me
.REG
[3];
1836 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
1837 fra
.me
.REG
[3] = CALL_metamodel___static_type___MMImportedCast___to(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1838 fra
.me
.REG
[3] = CALL_native_interface___ni_metamodel___MMType___mangled_name(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
1839 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
1840 if (!once_value_5
) {
1841 fra
.me
.REG
[3] = BOX_NativeString("_as_not_null");
1842 REGB0
= TAG_Int(12);
1843 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB0
);
1844 once_value_5
= fra
.me
.REG
[3];
1845 register_static_object(&once_value_5
);
1846 } else fra
.me
.REG
[3] = once_value_5
;
1847 fra
.me
.REG
[3] = fra
.me
.REG
[3];
1848 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
1849 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
1850 fra
.me
.REG
[1] = fra
.me
.REG
[2];
1853 /* native_interface/ni_metamodel.nit:240 */
1854 nit_abort("Aborted", NULL
, LOCATE_native_interface___ni_metamodel
, 240);
1858 /* native_interface/ni_metamodel.nit:244 */
1860 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
1861 if (!once_value_6
) {
1862 fra
.me
.REG
[3] = BOX_NativeString("");
1864 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB0
);
1865 once_value_6
= fra
.me
.REG
[3];
1866 register_static_object(&once_value_6
);
1867 } else fra
.me
.REG
[3] = once_value_6
;
1868 fra
.me
.REG
[3] = fra
.me
.REG
[3];
1869 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
1870 fra
.me
.REG
[3] = CALL_metamodel___static_type___MMImportedCast___from(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1871 fra
.me
.REG
[3] = CALL_native_interface___ni_metamodel___MMType___mangled_name(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
1872 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
1873 if (!once_value_7
) {
1874 fra
.me
.REG
[3] = BOX_NativeString("_as_");
1876 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB0
);
1877 once_value_7
= fra
.me
.REG
[3];
1878 register_static_object(&once_value_7
);
1879 } else fra
.me
.REG
[3] = once_value_7
;
1880 fra
.me
.REG
[3] = fra
.me
.REG
[3];
1881 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
1882 fra
.me
.REG
[0] = CALL_metamodel___static_type___MMImportedCast___to(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1883 fra
.me
.REG
[0] = CALL_native_interface___ni_metamodel___MMType___mangled_name(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1884 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
1885 if (!once_value_8
) {
1886 fra
.me
.REG
[0] = BOX_NativeString("");
1888 fra
.me
.REG
[0] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[0], REGB0
);
1889 once_value_8
= fra
.me
.REG
[0];
1890 register_static_object(&once_value_8
);
1891 } else fra
.me
.REG
[0] = once_value_8
;
1892 fra
.me
.REG
[0] = fra
.me
.REG
[0];
1893 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
1894 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
1895 fra
.me
.REG
[1] = fra
.me
.REG
[2];
1899 stack_frame_head
= fra
.me
.prev
;
1900 return fra
.me
.REG
[1];
1902 static const char LOCATE_native_interface___ni_metamodel___MMImportedCast___as_local_cname
[] = "ni_metamodel::MMImportedCast::as_local_cname";
1903 val_t
native_interface___ni_metamodel___MMImportedCast___as_local_cname(val_t p0
, val_t p1
){
1904 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
1907 static val_t once_value_1
; /* Once value */
1908 static val_t once_value_2
; /* Once value */
1909 static val_t once_value_3
; /* Once value */
1910 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1911 fra
.me
.file
= LOCATE_native_interface___ni_metamodel
;
1913 fra
.me
.meth
= LOCATE_native_interface___ni_metamodel___MMImportedCast___as_local_cname
;
1914 fra
.me
.has_broke
= 0;
1915 fra
.me
.REG_size
= 4;
1916 fra
.me
.nitni_local_ref_head
= NULL
;
1917 fra
.me
.REG
[0] = NIT_NULL
;
1918 fra
.me
.REG
[1] = NIT_NULL
;
1919 fra
.me
.REG
[2] = NIT_NULL
;
1920 fra
.me
.REG
[3] = NIT_NULL
;
1923 /* native_interface/ni_metamodel.nit:249 */
1925 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
1926 if (!once_value_1
) {
1927 fra
.me
.REG
[3] = BOX_NativeString("");
1929 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB0
);
1930 once_value_1
= fra
.me
.REG
[3];
1931 register_static_object(&once_value_1
);
1932 } else fra
.me
.REG
[3] = once_value_1
;
1933 fra
.me
.REG
[3] = fra
.me
.REG
[3];
1934 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
1935 fra
.me
.REG
[1] = CALL_standard___string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1936 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
1937 if (!once_value_2
) {
1938 fra
.me
.REG
[1] = BOX_NativeString("_");
1940 fra
.me
.REG
[1] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[1], REGB0
);
1941 once_value_2
= fra
.me
.REG
[1];
1942 register_static_object(&once_value_2
);
1943 } else fra
.me
.REG
[1] = once_value_2
;
1944 fra
.me
.REG
[1] = fra
.me
.REG
[1];
1945 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
1946 fra
.me
.REG
[0] = CALL_native_interface___ni_metamodel___MMImportedCast___as_friendly_extern_name(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1947 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
1948 if (!once_value_3
) {
1949 fra
.me
.REG
[0] = BOX_NativeString("");
1951 fra
.me
.REG
[0] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[0], REGB0
);
1952 once_value_3
= fra
.me
.REG
[0];
1953 register_static_object(&once_value_3
);
1954 } else fra
.me
.REG
[0] = once_value_3
;
1955 fra
.me
.REG
[0] = fra
.me
.REG
[0];
1956 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
1957 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
1960 stack_frame_head
= fra
.me
.prev
;
1961 return fra
.me
.REG
[2];
1963 static const char LOCATE_native_interface___ni_metamodel___MMImportedCast___as_local_csignature
[] = "ni_metamodel::MMImportedCast::as_local_csignature";
1964 val_t
native_interface___ni_metamodel___MMImportedCast___as_local_csignature(val_t p0
, val_t p1
){
1965 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
1968 static val_t once_value_1
; /* Once value */
1969 static val_t once_value_2
; /* Once value */
1970 static val_t once_value_3
; /* Once value */
1971 static val_t once_value_4
; /* Once value */
1972 static val_t once_value_5
; /* Once value */
1973 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1974 fra
.me
.file
= LOCATE_native_interface___ni_metamodel
;
1976 fra
.me
.meth
= LOCATE_native_interface___ni_metamodel___MMImportedCast___as_local_csignature
;
1977 fra
.me
.has_broke
= 0;
1978 fra
.me
.REG_size
= 4;
1979 fra
.me
.nitni_local_ref_head
= NULL
;
1980 fra
.me
.REG
[0] = NIT_NULL
;
1981 fra
.me
.REG
[1] = NIT_NULL
;
1982 fra
.me
.REG
[2] = NIT_NULL
;
1983 fra
.me
.REG
[3] = NIT_NULL
;
1986 /* native_interface/ni_metamodel.nit:254 */
1988 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
1989 if (!once_value_1
) {
1990 fra
.me
.REG
[3] = BOX_NativeString("");
1992 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB0
);
1993 once_value_1
= fra
.me
.REG
[3];
1994 register_static_object(&once_value_1
);
1995 } else fra
.me
.REG
[3] = once_value_1
;
1996 fra
.me
.REG
[3] = fra
.me
.REG
[3];
1997 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
1998 fra
.me
.REG
[3] = CALL_metamodel___static_type___MMImportedCast___to(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1999 fra
.me
.REG
[3] = CALL_native_interface___ni_metamodel___MMType___friendly_extern_name(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
2000 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2001 if (!once_value_2
) {
2002 fra
.me
.REG
[3] = BOX_NativeString(" ");
2004 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB0
);
2005 once_value_2
= fra
.me
.REG
[3];
2006 register_static_object(&once_value_2
);
2007 } else fra
.me
.REG
[3] = once_value_2
;
2008 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2009 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2010 fra
.me
.REG
[1] = CALL_native_interface___ni_metamodel___MMImportedCast___as_local_cname(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
2011 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
2012 if (!once_value_3
) {
2013 fra
.me
.REG
[1] = BOX_NativeString("( ");
2015 fra
.me
.REG
[1] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[1], REGB0
);
2016 once_value_3
= fra
.me
.REG
[1];
2017 register_static_object(&once_value_3
);
2018 } else fra
.me
.REG
[1] = once_value_3
;
2019 fra
.me
.REG
[1] = fra
.me
.REG
[1];
2020 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
2021 fra
.me
.REG
[1] = CALL_metamodel___static_type___MMImportedCast___from(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2022 fra
.me
.REG
[1] = CALL_native_interface___ni_metamodel___MMType___friendly_extern_name(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
2023 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
2024 if (!once_value_4
) {
2025 fra
.me
.REG
[1] = BOX_NativeString(" ");
2027 fra
.me
.REG
[1] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[1], REGB0
);
2028 once_value_4
= fra
.me
.REG
[1];
2029 register_static_object(&once_value_4
);
2030 } else fra
.me
.REG
[1] = once_value_4
;
2031 fra
.me
.REG
[1] = fra
.me
.REG
[1];
2032 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
2033 fra
.me
.REG
[0] = CALL_native_interface___ni_metamodel___MMImportedCast___in_name(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2034 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
2035 if (!once_value_5
) {
2036 fra
.me
.REG
[0] = BOX_NativeString(" )");
2038 fra
.me
.REG
[0] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[0], REGB0
);
2039 once_value_5
= fra
.me
.REG
[0];
2040 register_static_object(&once_value_5
);
2041 } else fra
.me
.REG
[0] = once_value_5
;
2042 fra
.me
.REG
[0] = fra
.me
.REG
[0];
2043 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
2044 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
2047 stack_frame_head
= fra
.me
.prev
;
2048 return fra
.me
.REG
[2];
2050 static const char LOCATE_native_interface___ni_metamodel___MMImportedCast___as_friendly_csignature
[] = "ni_metamodel::MMImportedCast::as_friendly_csignature";
2051 val_t
native_interface___ni_metamodel___MMImportedCast___as_friendly_csignature(val_t p0
){
2052 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
2055 static val_t once_value_1
; /* Once value */
2056 static val_t once_value_2
; /* Once value */
2057 static val_t once_value_3
; /* Once value */
2058 static val_t once_value_4
; /* Once value */
2059 static val_t once_value_5
; /* Once value */
2060 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2061 fra
.me
.file
= LOCATE_native_interface___ni_metamodel
;
2063 fra
.me
.meth
= LOCATE_native_interface___ni_metamodel___MMImportedCast___as_friendly_csignature
;
2064 fra
.me
.has_broke
= 0;
2065 fra
.me
.REG_size
= 3;
2066 fra
.me
.nitni_local_ref_head
= NULL
;
2067 fra
.me
.REG
[0] = NIT_NULL
;
2068 fra
.me
.REG
[1] = NIT_NULL
;
2069 fra
.me
.REG
[2] = NIT_NULL
;
2071 /* native_interface/ni_metamodel.nit:259 */
2073 fra
.me
.REG
[1] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
2074 if (!once_value_1
) {
2075 fra
.me
.REG
[2] = BOX_NativeString("");
2077 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
2078 once_value_1
= fra
.me
.REG
[2];
2079 register_static_object(&once_value_1
);
2080 } else fra
.me
.REG
[2] = once_value_1
;
2081 fra
.me
.REG
[2] = fra
.me
.REG
[2];
2082 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
2083 fra
.me
.REG
[2] = CALL_metamodel___static_type___MMImportedCast___to(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2084 fra
.me
.REG
[2] = CALL_native_interface___ni_metamodel___MMType___friendly_extern_name(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
2085 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
2086 if (!once_value_2
) {
2087 fra
.me
.REG
[2] = BOX_NativeString(" ");
2089 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
2090 once_value_2
= fra
.me
.REG
[2];
2091 register_static_object(&once_value_2
);
2092 } else fra
.me
.REG
[2] = once_value_2
;
2093 fra
.me
.REG
[2] = fra
.me
.REG
[2];
2094 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
2095 fra
.me
.REG
[2] = CALL_native_interface___ni_metamodel___MMImportedCast___as_friendly_extern_name(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2096 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
2097 if (!once_value_3
) {
2098 fra
.me
.REG
[2] = BOX_NativeString("( ");
2100 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
2101 once_value_3
= fra
.me
.REG
[2];
2102 register_static_object(&once_value_3
);
2103 } else fra
.me
.REG
[2] = once_value_3
;
2104 fra
.me
.REG
[2] = fra
.me
.REG
[2];
2105 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
2106 fra
.me
.REG
[2] = CALL_metamodel___static_type___MMImportedCast___from(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2107 fra
.me
.REG
[2] = CALL_native_interface___ni_metamodel___MMType___friendly_extern_name(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
2108 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
2109 if (!once_value_4
) {
2110 fra
.me
.REG
[2] = BOX_NativeString(" ");
2112 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
2113 once_value_4
= fra
.me
.REG
[2];
2114 register_static_object(&once_value_4
);
2115 } else fra
.me
.REG
[2] = once_value_4
;
2116 fra
.me
.REG
[2] = fra
.me
.REG
[2];
2117 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
2118 fra
.me
.REG
[0] = CALL_native_interface___ni_metamodel___MMImportedCast___in_name(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2119 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
2120 if (!once_value_5
) {
2121 fra
.me
.REG
[0] = BOX_NativeString(" )");
2123 fra
.me
.REG
[0] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[0], REGB0
);
2124 once_value_5
= fra
.me
.REG
[0];
2125 register_static_object(&once_value_5
);
2126 } else fra
.me
.REG
[0] = once_value_5
;
2127 fra
.me
.REG
[0] = fra
.me
.REG
[0];
2128 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
2129 fra
.me
.REG
[1] = CALL_standard___string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
2132 stack_frame_head
= fra
.me
.prev
;
2133 return fra
.me
.REG
[1];
2135 static const char LOCATE_native_interface___ni_metamodel___MMImportedCast___is_a_friendly_extern_name
[] = "ni_metamodel::MMImportedCast::is_a_friendly_extern_name";
2136 val_t
native_interface___ni_metamodel___MMImportedCast___is_a_friendly_extern_name(val_t p0
){
2137 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
2140 static val_t once_value_1
; /* Once value */
2141 static val_t once_value_2
; /* Once value */
2142 static val_t once_value_4
; /* Once value */
2143 static val_t once_value_5
; /* Once value */
2144 static val_t once_value_6
; /* Once value */
2145 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2146 fra
.me
.file
= LOCATE_native_interface___ni_metamodel
;
2148 fra
.me
.meth
= LOCATE_native_interface___ni_metamodel___MMImportedCast___is_a_friendly_extern_name
;
2149 fra
.me
.has_broke
= 0;
2150 fra
.me
.REG_size
= 4;
2151 fra
.me
.nitni_local_ref_head
= NULL
;
2152 fra
.me
.REG
[0] = NIT_NULL
;
2153 fra
.me
.REG
[1] = NIT_NULL
;
2154 fra
.me
.REG
[2] = NIT_NULL
;
2155 fra
.me
.REG
[3] = NIT_NULL
;
2157 /* native_interface/ni_metamodel.nit:263 */
2158 REGB0
= CALL_metamodel___static_type___MMImportedCast___is_about_nullable_only(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2159 if (UNTAG_Bool(REGB0
)) {
2160 /* native_interface/ni_metamodel.nit:264 */
2161 REGB0
= CALL_metamodel___static_type___MMImportedCast___is_not_null_to_nullable(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2162 if (UNTAG_Bool(REGB0
)) {
2163 /* native_interface/ni_metamodel.nit:265 */
2164 nit_abort("Aborted", NULL
, LOCATE_native_interface___ni_metamodel
, 265);
2166 /* native_interface/ni_metamodel.nit:266 */
2167 REGB0
= CALL_metamodel___static_type___MMImportedCast___is_nullable_to_not_null(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2168 if (UNTAG_Bool(REGB0
)) {
2169 /* native_interface/ni_metamodel.nit:269 */
2171 fra
.me
.REG
[1] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
2172 if (!once_value_1
) {
2173 fra
.me
.REG
[2] = BOX_NativeString("");
2175 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
2176 once_value_1
= fra
.me
.REG
[2];
2177 register_static_object(&once_value_1
);
2178 } else fra
.me
.REG
[2] = once_value_1
;
2179 fra
.me
.REG
[2] = fra
.me
.REG
[2];
2180 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
2181 fra
.me
.REG
[2] = CALL_metamodel___static_type___MMImportedCast___to(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2182 fra
.me
.REG
[2] = CALL_native_interface___ni_metamodel___MMType___mangled_name(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
2183 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
2184 if (!once_value_2
) {
2185 fra
.me
.REG
[2] = BOX_NativeString("_is_null");
2187 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
2188 once_value_2
= fra
.me
.REG
[2];
2189 register_static_object(&once_value_2
);
2190 } else fra
.me
.REG
[2] = once_value_2
;
2191 fra
.me
.REG
[2] = fra
.me
.REG
[2];
2192 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
2193 fra
.me
.REG
[1] = CALL_standard___string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
2196 /* native_interface/ni_metamodel.nit:271 */
2197 nit_abort("Aborted", NULL
, LOCATE_native_interface___ni_metamodel
, 271);
2201 /* native_interface/ni_metamodel.nit:275 */
2203 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
2204 if (!once_value_4
) {
2205 fra
.me
.REG
[3] = BOX_NativeString("");
2207 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB0
);
2208 once_value_4
= fra
.me
.REG
[3];
2209 register_static_object(&once_value_4
);
2210 } else fra
.me
.REG
[3] = once_value_4
;
2211 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2212 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2213 fra
.me
.REG
[3] = CALL_metamodel___static_type___MMImportedCast___from(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2214 fra
.me
.REG
[3] = CALL_native_interface___ni_metamodel___MMType___mangled_name(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
2215 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2216 if (!once_value_5
) {
2217 fra
.me
.REG
[3] = BOX_NativeString("_is_a_");
2219 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB0
);
2220 once_value_5
= fra
.me
.REG
[3];
2221 register_static_object(&once_value_5
);
2222 } else fra
.me
.REG
[3] = once_value_5
;
2223 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2224 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2225 fra
.me
.REG
[0] = CALL_metamodel___static_type___MMImportedCast___to(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2226 fra
.me
.REG
[0] = CALL_native_interface___ni_metamodel___MMType___mangled_name(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2227 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
2228 if (!once_value_6
) {
2229 fra
.me
.REG
[0] = BOX_NativeString("");
2231 fra
.me
.REG
[0] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[0], REGB0
);
2232 once_value_6
= fra
.me
.REG
[0];
2233 register_static_object(&once_value_6
);
2234 } else fra
.me
.REG
[0] = once_value_6
;
2235 fra
.me
.REG
[0] = fra
.me
.REG
[0];
2236 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
2237 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
2238 fra
.me
.REG
[1] = fra
.me
.REG
[2];
2242 stack_frame_head
= fra
.me
.prev
;
2243 return fra
.me
.REG
[1];
2245 static const char LOCATE_native_interface___ni_metamodel___MMImportedCast___is_a_local_cname
[] = "ni_metamodel::MMImportedCast::is_a_local_cname";
2246 val_t
native_interface___ni_metamodel___MMImportedCast___is_a_local_cname(val_t p0
, val_t p1
){
2247 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
2250 static val_t once_value_1
; /* Once value */
2251 static val_t once_value_2
; /* Once value */
2252 static val_t once_value_3
; /* Once value */
2253 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2254 fra
.me
.file
= LOCATE_native_interface___ni_metamodel
;
2256 fra
.me
.meth
= LOCATE_native_interface___ni_metamodel___MMImportedCast___is_a_local_cname
;
2257 fra
.me
.has_broke
= 0;
2258 fra
.me
.REG_size
= 4;
2259 fra
.me
.nitni_local_ref_head
= NULL
;
2260 fra
.me
.REG
[0] = NIT_NULL
;
2261 fra
.me
.REG
[1] = NIT_NULL
;
2262 fra
.me
.REG
[2] = NIT_NULL
;
2263 fra
.me
.REG
[3] = NIT_NULL
;
2266 /* native_interface/ni_metamodel.nit:280 */
2268 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
2269 if (!once_value_1
) {
2270 fra
.me
.REG
[3] = BOX_NativeString("");
2272 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB0
);
2273 once_value_1
= fra
.me
.REG
[3];
2274 register_static_object(&once_value_1
);
2275 } else fra
.me
.REG
[3] = once_value_1
;
2276 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2277 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2278 fra
.me
.REG
[1] = CALL_standard___string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
2279 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
2280 if (!once_value_2
) {
2281 fra
.me
.REG
[1] = BOX_NativeString("_");
2283 fra
.me
.REG
[1] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[1], REGB0
);
2284 once_value_2
= fra
.me
.REG
[1];
2285 register_static_object(&once_value_2
);
2286 } else fra
.me
.REG
[1] = once_value_2
;
2287 fra
.me
.REG
[1] = fra
.me
.REG
[1];
2288 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
2289 fra
.me
.REG
[0] = CALL_native_interface___ni_metamodel___MMImportedCast___is_a_friendly_extern_name(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2290 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
2291 if (!once_value_3
) {
2292 fra
.me
.REG
[0] = BOX_NativeString("");
2294 fra
.me
.REG
[0] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[0], REGB0
);
2295 once_value_3
= fra
.me
.REG
[0];
2296 register_static_object(&once_value_3
);
2297 } else fra
.me
.REG
[0] = once_value_3
;
2298 fra
.me
.REG
[0] = fra
.me
.REG
[0];
2299 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
2300 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
2303 stack_frame_head
= fra
.me
.prev
;
2304 return fra
.me
.REG
[2];
2306 static const char LOCATE_native_interface___ni_metamodel___MMImportedCast___is_a_local_csignature
[] = "ni_metamodel::MMImportedCast::is_a_local_csignature";
2307 val_t
native_interface___ni_metamodel___MMImportedCast___is_a_local_csignature(val_t p0
, val_t p1
){
2308 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
2311 static val_t once_value_1
; /* Once value */
2312 static val_t once_value_2
; /* Once value */
2313 static val_t once_value_3
; /* Once value */
2314 static val_t once_value_4
; /* Once value */
2315 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2316 fra
.me
.file
= LOCATE_native_interface___ni_metamodel
;
2318 fra
.me
.meth
= LOCATE_native_interface___ni_metamodel___MMImportedCast___is_a_local_csignature
;
2319 fra
.me
.has_broke
= 0;
2320 fra
.me
.REG_size
= 4;
2321 fra
.me
.nitni_local_ref_head
= NULL
;
2322 fra
.me
.REG
[0] = NIT_NULL
;
2323 fra
.me
.REG
[1] = NIT_NULL
;
2324 fra
.me
.REG
[2] = NIT_NULL
;
2325 fra
.me
.REG
[3] = NIT_NULL
;
2328 /* native_interface/ni_metamodel.nit:287 */
2330 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
2331 if (!once_value_1
) {
2332 fra
.me
.REG
[3] = BOX_NativeString("int ");
2334 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB0
);
2335 once_value_1
= fra
.me
.REG
[3];
2336 register_static_object(&once_value_1
);
2337 } else fra
.me
.REG
[3] = once_value_1
;
2338 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2339 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2340 fra
.me
.REG
[1] = CALL_native_interface___ni_metamodel___MMImportedCast___is_a_local_cname(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
2341 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
2342 if (!once_value_2
) {
2343 fra
.me
.REG
[1] = BOX_NativeString("( ");
2345 fra
.me
.REG
[1] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[1], REGB0
);
2346 once_value_2
= fra
.me
.REG
[1];
2347 register_static_object(&once_value_2
);
2348 } else fra
.me
.REG
[1] = once_value_2
;
2349 fra
.me
.REG
[1] = fra
.me
.REG
[1];
2350 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
2351 fra
.me
.REG
[1] = CALL_metamodel___static_type___MMImportedCast___from(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2352 fra
.me
.REG
[1] = CALL_native_interface___ni_metamodel___MMType___friendly_extern_name(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
2353 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
2354 if (!once_value_3
) {
2355 fra
.me
.REG
[1] = BOX_NativeString(" ");
2357 fra
.me
.REG
[1] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[1], REGB0
);
2358 once_value_3
= fra
.me
.REG
[1];
2359 register_static_object(&once_value_3
);
2360 } else fra
.me
.REG
[1] = once_value_3
;
2361 fra
.me
.REG
[1] = fra
.me
.REG
[1];
2362 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
2363 fra
.me
.REG
[0] = CALL_native_interface___ni_metamodel___MMImportedCast___in_name(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2364 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
2365 if (!once_value_4
) {
2366 fra
.me
.REG
[0] = BOX_NativeString(" )");
2368 fra
.me
.REG
[0] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[0], REGB0
);
2369 once_value_4
= fra
.me
.REG
[0];
2370 register_static_object(&once_value_4
);
2371 } else fra
.me
.REG
[0] = once_value_4
;
2372 fra
.me
.REG
[0] = fra
.me
.REG
[0];
2373 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
2374 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
2377 stack_frame_head
= fra
.me
.prev
;
2378 return fra
.me
.REG
[2];
2380 static const char LOCATE_native_interface___ni_metamodel___MMImportedCast___is_a_friendly_csignature
[] = "ni_metamodel::MMImportedCast::is_a_friendly_csignature";
2381 val_t
native_interface___ni_metamodel___MMImportedCast___is_a_friendly_csignature(val_t p0
){
2382 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
2385 static val_t once_value_1
; /* Once value */
2386 static val_t once_value_2
; /* Once value */
2387 static val_t once_value_3
; /* Once value */
2388 static val_t once_value_4
; /* Once value */
2389 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2390 fra
.me
.file
= LOCATE_native_interface___ni_metamodel
;
2392 fra
.me
.meth
= LOCATE_native_interface___ni_metamodel___MMImportedCast___is_a_friendly_csignature
;
2393 fra
.me
.has_broke
= 0;
2394 fra
.me
.REG_size
= 3;
2395 fra
.me
.nitni_local_ref_head
= NULL
;
2396 fra
.me
.REG
[0] = NIT_NULL
;
2397 fra
.me
.REG
[1] = NIT_NULL
;
2398 fra
.me
.REG
[2] = NIT_NULL
;
2400 /* native_interface/ni_metamodel.nit:292 */
2402 fra
.me
.REG
[1] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
2403 if (!once_value_1
) {
2404 fra
.me
.REG
[2] = BOX_NativeString("int ");
2406 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
2407 once_value_1
= fra
.me
.REG
[2];
2408 register_static_object(&once_value_1
);
2409 } else fra
.me
.REG
[2] = once_value_1
;
2410 fra
.me
.REG
[2] = fra
.me
.REG
[2];
2411 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
2412 fra
.me
.REG
[2] = CALL_native_interface___ni_metamodel___MMImportedCast___is_a_friendly_extern_name(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2413 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
2414 if (!once_value_2
) {
2415 fra
.me
.REG
[2] = BOX_NativeString("( ");
2417 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
2418 once_value_2
= fra
.me
.REG
[2];
2419 register_static_object(&once_value_2
);
2420 } else fra
.me
.REG
[2] = once_value_2
;
2421 fra
.me
.REG
[2] = fra
.me
.REG
[2];
2422 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
2423 fra
.me
.REG
[2] = CALL_metamodel___static_type___MMImportedCast___from(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2424 fra
.me
.REG
[2] = CALL_native_interface___ni_metamodel___MMType___friendly_extern_name(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
2425 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
2426 if (!once_value_3
) {
2427 fra
.me
.REG
[2] = BOX_NativeString(" ");
2429 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
2430 once_value_3
= fra
.me
.REG
[2];
2431 register_static_object(&once_value_3
);
2432 } else fra
.me
.REG
[2] = once_value_3
;
2433 fra
.me
.REG
[2] = fra
.me
.REG
[2];
2434 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
2435 fra
.me
.REG
[0] = CALL_native_interface___ni_metamodel___MMImportedCast___in_name(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2436 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
2437 if (!once_value_4
) {
2438 fra
.me
.REG
[0] = BOX_NativeString(" )");
2440 fra
.me
.REG
[0] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[0], REGB0
);
2441 once_value_4
= fra
.me
.REG
[0];
2442 register_static_object(&once_value_4
);
2443 } else fra
.me
.REG
[0] = once_value_4
;
2444 fra
.me
.REG
[0] = fra
.me
.REG
[0];
2445 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
2446 fra
.me
.REG
[1] = CALL_standard___string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
2449 stack_frame_head
= fra
.me
.prev
;
2450 return fra
.me
.REG
[1];
2452 static const char LOCATE_native_interface___ni_metamodel___MMImportedCast___hash
[] = "ni_metamodel::MMImportedCast::(hash::Object::hash)";
2453 val_t
native_interface___ni_metamodel___MMImportedCast___hash(val_t p0
){
2454 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
2458 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2459 fra
.me
.file
= LOCATE_native_interface___ni_metamodel
;
2461 fra
.me
.meth
= LOCATE_native_interface___ni_metamodel___MMImportedCast___hash
;
2462 fra
.me
.has_broke
= 0;
2463 fra
.me
.REG_size
= 2;
2464 fra
.me
.nitni_local_ref_head
= NULL
;
2465 fra
.me
.REG
[0] = NIT_NULL
;
2466 fra
.me
.REG
[1] = NIT_NULL
;
2468 /* native_interface/ni_metamodel.nit:297 */
2469 fra
.me
.REG
[1] = CALL_metamodel___static_type___MMImportedCast___from(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2470 REGB0
= CALL_standard___hash___Object___hash(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
2471 fra
.me
.REG
[0] = CALL_metamodel___static_type___MMImportedCast___to(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2472 REGB1
= CALL_standard___hash___Object___hash(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2473 /* ../lib/standard/kernel.nit:238 */
2474 REGB1
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
2475 /* native_interface/ni_metamodel.nit:297 */
2478 stack_frame_head
= fra
.me
.prev
;