1 /* This C file is generated by NIT to compile module mmloader. */
2 #include "mmloader._sep.h"
3 val_t
mmloader___Message___location(val_t p0
){
4 struct {struct stack_frame_t me
;} fra
;
6 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
7 fra
.me
.file
= LOCATE_mmloader
;
9 fra
.me
.meth
= LOCATE_mmloader___Message___location
;
12 fra
.me
.REG
[0] = NIT_NULL
;
14 /* ./mmloader.nit:30 */
15 fra
.me
.REG
[0] = ATTR_mmloader___Message____location(fra
.me
.REG
[0]);
16 stack_frame_head
= fra
.me
.prev
;
19 val_t
mmloader___Message___text(val_t p0
){
20 struct {struct stack_frame_t me
;} fra
;
23 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
24 fra
.me
.file
= LOCATE_mmloader
;
26 fra
.me
.meth
= LOCATE_mmloader___Message___text
;
29 fra
.me
.REG
[0] = NIT_NULL
;
31 /* ./mmloader.nit:31 */
32 REGB0
= TAG_Bool(ATTR_mmloader___Message____text(fra
.me
.REG
[0])!=NIT_NULL
);
33 if (UNTAG_Bool(REGB0
)) {
35 nit_abort("Uninitialized attribute %s", "_text", LOCATE_mmloader
, 31);
37 fra
.me
.REG
[0] = ATTR_mmloader___Message____text(fra
.me
.REG
[0]);
38 stack_frame_head
= fra
.me
.prev
;
41 val_t
mmloader___Message_____l(val_t p0
, val_t p1
){
42 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
47 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
48 fra
.me
.file
= LOCATE_mmloader
;
50 fra
.me
.meth
= LOCATE_mmloader___Message_____l
;
53 fra
.me
.REG
[0] = NIT_NULL
;
54 fra
.me
.REG
[1] = NIT_NULL
;
55 fra
.me
.REG
[2] = NIT_NULL
;
56 fra
.me
.REG
[3] = NIT_NULL
;
59 REGB0
= TAG_Bool(VAL_ISA(fra
.me
.REG
[1], VTCOLOR_standard___kernel___Comparable___OTHER(fra
.me
.REG
[0]), VTID_standard___kernel___Comparable___OTHER(fra
.me
.REG
[0]))) /*cast OTHER*/;
60 if (UNTAG_Bool(REGB0
)) {
62 nit_abort("Cast failed", NULL
, LOCATE_mmloader
, 0);
64 /* ./mmloader.nit:33 */
65 fra
.me
.REG
[2] = fra
.me
.REG
[0];
66 /* ./mmloader.nit:34 */
67 fra
.me
.REG
[3] = CALL_mmloader___Message___location(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
68 REGB0
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
69 if (UNTAG_Bool(REGB0
)) {
71 REGB1
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
72 if (UNTAG_Bool(REGB1
)) {
73 REGB1
= TAG_Bool(false);
76 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[3])(fra
.me
.REG
[3], NIT_NULL
);
80 if (UNTAG_Bool(REGB0
)) {
81 REGB0
= TAG_Bool(true);
84 /* ./mmloader.nit:35 */
85 fra
.me
.REG
[3] = CALL_mmloader___Message___location(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
86 REGB1
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
87 if (UNTAG_Bool(REGB1
)) {
89 REGB2
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
90 if (UNTAG_Bool(REGB2
)) {
91 REGB2
= TAG_Bool(false);
94 REGB2
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[3])(fra
.me
.REG
[3], NIT_NULL
);
98 if (UNTAG_Bool(REGB1
)) {
99 REGB1
= TAG_Bool(false);
103 /* ./mmloader.nit:37 */
104 fra
.me
.REG
[2] = CALL_mmloader___Message___location(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
105 REGB1
= TAG_Bool(fra
.me
.REG
[2]!=NIT_NULL
);
106 if (UNTAG_Bool(REGB1
)) {
108 nit_abort("Cast failed", NULL
, LOCATE_mmloader
, 37);
110 fra
.me
.REG
[1] = CALL_mmloader___Message___location(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
111 REGB1
= TAG_Bool(fra
.me
.REG
[1]!=NIT_NULL
);
112 if (UNTAG_Bool(REGB1
)) {
114 nit_abort("Cast failed", NULL
, LOCATE_mmloader
, 37);
116 REGB1
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
117 if (UNTAG_Bool(REGB1
)) {
118 nit_abort("Reciever is null", NULL
, LOCATE_mmloader
, 37);
120 REGB1
= CALL_standard___kernel___Comparable_____l(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
124 stack_frame_head
= fra
.me
.prev
;
127 val_t
mmloader___Message___to_s(val_t p0
){
128 struct {struct stack_frame_t me
; val_t MORE_REG
[4];} fra
;
132 static val_t once_value_2
; /* Once value */
133 static val_t once_value_3
; /* Once value */
134 static val_t once_value_4
; /* Once value */
135 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
136 fra
.me
.file
= LOCATE_mmloader
;
138 fra
.me
.meth
= LOCATE_mmloader___Message___to_s
;
139 fra
.me
.has_broke
= 0;
141 fra
.me
.REG
[0] = NIT_NULL
;
142 fra
.me
.REG
[1] = NIT_NULL
;
143 fra
.me
.REG
[2] = NIT_NULL
;
144 fra
.me
.REG
[3] = NIT_NULL
;
145 fra
.me
.REG
[4] = NIT_NULL
;
147 /* ./mmloader.nit:42 */
148 fra
.me
.REG
[1] = CALL_mmloader___Message___location(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
149 /* ./mmloader.nit:43 */
150 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
151 if (UNTAG_Bool(REGB0
)) {
153 REGB1
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
154 if (UNTAG_Bool(REGB1
)) {
155 REGB1
= TAG_Bool(false);
158 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[1])(fra
.me
.REG
[1], NIT_NULL
);
162 if (UNTAG_Bool(REGB0
)) {
163 /* ./mmloader.nit:44 */
164 fra
.me
.REG
[2] = CALL_mmloader___Message___text(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
167 /* ./mmloader.nit:46 */
169 fra
.me
.REG
[3] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
171 fra
.me
.REG
[4] = BOX_NativeString("");
173 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB0
);
174 once_value_2
= fra
.me
.REG
[4];
175 register_static_object(&once_value_2
);
176 } else fra
.me
.REG
[4] = once_value_2
;
177 fra
.me
.REG
[4] = fra
.me
.REG
[4];
178 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
179 fra
.me
.REG
[1] = CALL_standard___string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
180 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[1]);
182 fra
.me
.REG
[1] = BOX_NativeString(": ");
184 fra
.me
.REG
[1] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[1], REGB0
);
185 once_value_3
= fra
.me
.REG
[1];
186 register_static_object(&once_value_3
);
187 } else fra
.me
.REG
[1] = once_value_3
;
188 fra
.me
.REG
[1] = fra
.me
.REG
[1];
189 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[1]);
190 fra
.me
.REG
[0] = CALL_mmloader___Message___text(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
191 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[0]);
193 fra
.me
.REG
[0] = BOX_NativeString("");
195 fra
.me
.REG
[0] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[0], REGB0
);
196 once_value_4
= fra
.me
.REG
[0];
197 register_static_object(&once_value_4
);
198 } else fra
.me
.REG
[0] = once_value_4
;
199 fra
.me
.REG
[0] = fra
.me
.REG
[0];
200 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[0]);
201 fra
.me
.REG
[3] = CALL_standard___string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
202 fra
.me
.REG
[2] = fra
.me
.REG
[3];
206 stack_frame_head
= fra
.me
.prev
;
207 return fra
.me
.REG
[2];
209 val_t
mmloader___Message___to_color_string(val_t p0
){
210 struct {struct stack_frame_t me
; val_t MORE_REG
[11];} fra
;
218 static val_t once_value_1
; /* Once value */
219 static val_t once_value_2
; /* Once value */
220 static val_t once_value_3
; /* Once value */
221 static val_t once_value_4
; /* Once value */
222 static val_t once_value_5
; /* Once value */
223 static val_t once_value_6
; /* Once value */
224 static val_t once_value_7
; /* Once value */
225 static val_t once_value_8
; /* Once value */
226 static val_t once_value_9
; /* Once value */
227 static val_t once_value_10
; /* Once value */
228 static val_t once_value_12
; /* Once value */
229 static val_t once_value_13
; /* Once value */
230 static val_t once_value_14
; /* Once value */
231 static val_t once_value_15
; /* Once value */
232 static val_t once_value_16
; /* Once value */
233 static val_t once_value_20
; /* Once value */
234 static val_t once_value_21
; /* Once value */
235 static val_t once_value_22
; /* Once value */
236 static val_t once_value_23
; /* Once value */
237 static val_t once_value_24
; /* Once value */
238 static val_t once_value_25
; /* Once value */
239 static val_t once_value_26
; /* Once value */
240 static val_t once_value_27
; /* Once value */
241 static val_t once_value_28
; /* Once value */
242 static val_t once_value_29
; /* Once value */
243 static val_t once_value_30
; /* Once value */
244 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
245 fra
.me
.file
= LOCATE_mmloader
;
247 fra
.me
.meth
= LOCATE_mmloader___Message___to_color_string
;
248 fra
.me
.has_broke
= 0;
249 fra
.me
.REG_size
= 12;
250 fra
.me
.REG
[0] = NIT_NULL
;
251 fra
.me
.REG
[1] = NIT_NULL
;
252 fra
.me
.REG
[2] = NIT_NULL
;
253 fra
.me
.REG
[3] = NIT_NULL
;
254 fra
.me
.REG
[4] = NIT_NULL
;
255 fra
.me
.REG
[5] = NIT_NULL
;
256 fra
.me
.REG
[6] = NIT_NULL
;
257 fra
.me
.REG
[7] = NIT_NULL
;
258 fra
.me
.REG
[8] = NIT_NULL
;
259 fra
.me
.REG
[9] = NIT_NULL
;
260 fra
.me
.REG
[10] = NIT_NULL
;
261 fra
.me
.REG
[11] = NIT_NULL
;
263 /* ./mmloader.nit:52 */
265 /* ./../lib/standard//kernel.nit:297 */
266 REGB0
= TAG_Char(UNTAG_Int(REGB0
));
267 /* ./mmloader.nit:53 */
269 fra
.me
.REG
[1] = NEW_Array_standard___collection___array___Array___with_capacity(REGB1
);
271 fra
.me
.REG
[2] = BOX_NativeString("");
273 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB1
);
274 once_value_1
= fra
.me
.REG
[2];
275 register_static_object(&once_value_1
);
276 } else fra
.me
.REG
[2] = once_value_1
;
277 fra
.me
.REG
[2] = fra
.me
.REG
[2];
278 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
279 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(REGB0
)(REGB0
);
280 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
282 fra
.me
.REG
[2] = BOX_NativeString("[0;31m");
284 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB1
);
285 once_value_2
= fra
.me
.REG
[2];
286 register_static_object(&once_value_2
);
287 } else fra
.me
.REG
[2] = once_value_2
;
288 fra
.me
.REG
[2] = fra
.me
.REG
[2];
289 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
290 fra
.me
.REG
[1] = CALL_standard___string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
291 /* ./mmloader.nit:54 */
293 fra
.me
.REG
[1] = NEW_Array_standard___collection___array___Array___with_capacity(REGB1
);
295 fra
.me
.REG
[2] = BOX_NativeString("");
297 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB1
);
298 once_value_3
= fra
.me
.REG
[2];
299 register_static_object(&once_value_3
);
300 } else fra
.me
.REG
[2] = once_value_3
;
301 fra
.me
.REG
[2] = fra
.me
.REG
[2];
302 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
303 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(REGB0
)(REGB0
);
304 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
306 fra
.me
.REG
[2] = BOX_NativeString("[1;31m");
308 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB1
);
309 once_value_4
= fra
.me
.REG
[2];
310 register_static_object(&once_value_4
);
311 } else fra
.me
.REG
[2] = once_value_4
;
312 fra
.me
.REG
[2] = fra
.me
.REG
[2];
313 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
314 fra
.me
.REG
[1] = CALL_standard___string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
315 /* ./mmloader.nit:55 */
317 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB1
);
319 fra
.me
.REG
[3] = BOX_NativeString("");
321 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB1
);
322 once_value_5
= fra
.me
.REG
[3];
323 register_static_object(&once_value_5
);
324 } else fra
.me
.REG
[3] = once_value_5
;
325 fra
.me
.REG
[3] = fra
.me
.REG
[3];
326 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
327 fra
.me
.REG
[3] = CALL_standard___string___Object___to_s(REGB0
)(REGB0
);
328 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
330 fra
.me
.REG
[3] = BOX_NativeString("[0;32m");
332 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB1
);
333 once_value_6
= fra
.me
.REG
[3];
334 register_static_object(&once_value_6
);
335 } else fra
.me
.REG
[3] = once_value_6
;
336 fra
.me
.REG
[3] = fra
.me
.REG
[3];
337 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
338 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
339 /* ./mmloader.nit:56 */
341 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB1
);
343 fra
.me
.REG
[3] = BOX_NativeString("");
345 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB1
);
346 once_value_7
= fra
.me
.REG
[3];
347 register_static_object(&once_value_7
);
348 } else fra
.me
.REG
[3] = once_value_7
;
349 fra
.me
.REG
[3] = fra
.me
.REG
[3];
350 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
351 fra
.me
.REG
[3] = CALL_standard___string___Object___to_s(REGB0
)(REGB0
);
352 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
354 fra
.me
.REG
[3] = BOX_NativeString("[0;33m");
356 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB1
);
357 once_value_8
= fra
.me
.REG
[3];
358 register_static_object(&once_value_8
);
359 } else fra
.me
.REG
[3] = once_value_8
;
360 fra
.me
.REG
[3] = fra
.me
.REG
[3];
361 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
362 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
363 /* ./mmloader.nit:57 */
365 fra
.me
.REG
[3] = NEW_Array_standard___collection___array___Array___with_capacity(REGB1
);
367 fra
.me
.REG
[4] = BOX_NativeString("");
369 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB1
);
370 once_value_9
= fra
.me
.REG
[4];
371 register_static_object(&once_value_9
);
372 } else fra
.me
.REG
[4] = once_value_9
;
373 fra
.me
.REG
[4] = fra
.me
.REG
[4];
374 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
375 fra
.me
.REG
[4] = CALL_standard___string___Object___to_s(REGB0
)(REGB0
);
376 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
377 if (!once_value_10
) {
378 fra
.me
.REG
[4] = BOX_NativeString("[0m");
380 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB0
);
381 once_value_10
= fra
.me
.REG
[4];
382 register_static_object(&once_value_10
);
383 } else fra
.me
.REG
[4] = once_value_10
;
384 fra
.me
.REG
[4] = fra
.me
.REG
[4];
385 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
386 fra
.me
.REG
[3] = CALL_standard___string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
387 /* ./mmloader.nit:59 */
388 fra
.me
.REG
[4] = CALL_mmloader___Message___location(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
389 /* ./mmloader.nit:60 */
390 REGB0
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
391 if (UNTAG_Bool(REGB0
)) {
393 REGB1
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
394 if (UNTAG_Bool(REGB1
)) {
395 REGB1
= TAG_Bool(false);
398 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[4])(fra
.me
.REG
[4], NIT_NULL
);
402 if (UNTAG_Bool(REGB0
)) {
403 /* ./mmloader.nit:61 */
404 fra
.me
.REG
[5] = CALL_mmloader___Message___text(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
407 /* ./mmloader.nit:62 */
408 REGB0
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
409 if (UNTAG_Bool(REGB0
)) {
410 nit_abort("Reciever is null", NULL
, LOCATE_mmloader
, 62);
412 fra
.me
.REG
[6] = CALL_location___Location___file(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
413 REGB0
= TAG_Bool(fra
.me
.REG
[6]==NIT_NULL
);
414 if (UNTAG_Bool(REGB0
)) {
416 REGB1
= TAG_Bool(fra
.me
.REG
[6]==NIT_NULL
);
417 if (UNTAG_Bool(REGB1
)) {
418 REGB1
= TAG_Bool(false);
421 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[6])(fra
.me
.REG
[6], NIT_NULL
);
425 if (UNTAG_Bool(REGB0
)) {
426 /* ./mmloader.nit:63 */
428 fra
.me
.REG
[6] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
429 if (!once_value_12
) {
430 fra
.me
.REG
[7] = BOX_NativeString("");
432 fra
.me
.REG
[7] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[7], REGB0
);
433 once_value_12
= fra
.me
.REG
[7];
434 register_static_object(&once_value_12
);
435 } else fra
.me
.REG
[7] = once_value_12
;
436 fra
.me
.REG
[7] = fra
.me
.REG
[7];
437 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[7]);
438 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[2]);
439 if (!once_value_13
) {
440 fra
.me
.REG
[7] = BOX_NativeString("");
442 fra
.me
.REG
[7] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[7], REGB0
);
443 once_value_13
= fra
.me
.REG
[7];
444 register_static_object(&once_value_13
);
445 } else fra
.me
.REG
[7] = once_value_13
;
446 fra
.me
.REG
[7] = fra
.me
.REG
[7];
447 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[7]);
448 fra
.me
.REG
[7] = CALL_standard___string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
449 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[7]);
450 if (!once_value_14
) {
451 fra
.me
.REG
[7] = BOX_NativeString("");
453 fra
.me
.REG
[7] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[7], REGB0
);
454 once_value_14
= fra
.me
.REG
[7];
455 register_static_object(&once_value_14
);
456 } else fra
.me
.REG
[7] = once_value_14
;
457 fra
.me
.REG
[7] = fra
.me
.REG
[7];
458 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[7]);
459 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[3]);
460 if (!once_value_15
) {
461 fra
.me
.REG
[7] = BOX_NativeString(": ");
463 fra
.me
.REG
[7] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[7], REGB0
);
464 once_value_15
= fra
.me
.REG
[7];
465 register_static_object(&once_value_15
);
466 } else fra
.me
.REG
[7] = once_value_15
;
467 fra
.me
.REG
[7] = fra
.me
.REG
[7];
468 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[7]);
469 fra
.me
.REG
[7] = CALL_mmloader___Message___text(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
470 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[7]);
471 if (!once_value_16
) {
472 fra
.me
.REG
[7] = BOX_NativeString("");
474 fra
.me
.REG
[7] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[7], REGB0
);
475 once_value_16
= fra
.me
.REG
[7];
476 register_static_object(&once_value_16
);
477 } else fra
.me
.REG
[7] = once_value_16
;
478 fra
.me
.REG
[7] = fra
.me
.REG
[7];
479 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[7]);
480 fra
.me
.REG
[6] = CALL_standard___string___Object___to_s(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
481 fra
.me
.REG
[5] = fra
.me
.REG
[6];
484 /* ./mmloader.nit:65 */
485 fra
.me
.REG
[6] = CALL_mmloader___Message___location(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
486 REGB0
= TAG_Bool(fra
.me
.REG
[6]==NIT_NULL
);
487 if (UNTAG_Bool(REGB0
)) {
488 nit_abort("Reciever is null", NULL
, LOCATE_mmloader
, 65);
490 REGB0
= CALL_location___Location___line_start(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
491 /* ./mmloader.nit:66 */
492 REGB1
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
493 if (UNTAG_Bool(REGB1
)) {
494 nit_abort("Reciever is null", NULL
, LOCATE_mmloader
, 66);
496 fra
.me
.REG
[6] = CALL_location___Location___file(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
497 REGB1
= TAG_Bool(fra
.me
.REG
[6]==NIT_NULL
);
498 if (UNTAG_Bool(REGB1
)) {
499 nit_abort("Reciever is null", NULL
, LOCATE_mmloader
, 66);
501 fra
.me
.REG
[6] = CALL_location___SourceFile___line_starts(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
503 /* ./../lib/standard//kernel.nit:237 */
504 REGB1
= TAG_Int(UNTAG_Int(REGB0
)-UNTAG_Int(REGB1
));
505 /* ./../lib/standard//collection//array.nit:280 */
507 REGB3
= TAG_Bool(VAL_ISA(REGB2
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1
), VTID_standard___kernel___Comparable___OTHER(REGB1
))) /*cast OTHER*/;
508 if (UNTAG_Bool(REGB3
)) {
510 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
512 /* ./../lib/standard//kernel.nit:233 */
513 REGB2
= TAG_Bool(UNTAG_Int(REGB1
)>=UNTAG_Int(REGB2
));
514 /* ./../lib/standard//collection//array.nit:280 */
515 if (UNTAG_Bool(REGB2
)) {
516 REGB2
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[6])!=NIT_NULL
);
517 if (UNTAG_Bool(REGB2
)) {
519 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 280);
521 REGB2
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[6]);
522 REGB3
= TAG_Bool(VAL_ISA(REGB2
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1
), VTID_standard___kernel___Comparable___OTHER(REGB1
))) /*cast OTHER*/;
523 if (UNTAG_Bool(REGB3
)) {
525 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
527 /* ./../lib/standard//kernel.nit:232 */
528 REGB2
= TAG_Bool(UNTAG_Int(REGB1
)<UNTAG_Int(REGB2
));
530 /* ./../lib/standard//collection//array.nit:280 */
531 REGB3
= TAG_Bool(false);
534 if (UNTAG_Bool(REGB2
)) {
536 nit_abort("Assert %s failed", "'index'", LOCATE_standard___collection___array
, 280);
538 /* ./../lib/standard//collection//array.nit:281 */
539 fra
.me
.REG
[6] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[6]);
540 REGB2
= TAG_Bool(fra
.me
.REG
[6]==NIT_NULL
);
541 if (UNTAG_Bool(REGB2
)) {
542 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 281);
544 /* ./../lib/standard//collection//array.nit:718 */
545 fra
.me
.REG
[6] = ((Nit_NativeArray
)fra
.me
.REG
[6])->val
[UNTAG_Int(REGB1
)];
546 /* ./../lib/standard//collection//array.nit:281 */
549 /* ./mmloader.nit:66 */
550 REGB1
= fra
.me
.REG
[6];
551 /* ./mmloader.nit:67 */
553 /* ./mmloader.nit:68 */
554 REGB3
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
555 if (UNTAG_Bool(REGB3
)) {
556 nit_abort("Reciever is null", NULL
, LOCATE_mmloader
, 68);
558 fra
.me
.REG
[6] = CALL_location___Location___file(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
559 REGB3
= TAG_Bool(fra
.me
.REG
[6]==NIT_NULL
);
560 if (UNTAG_Bool(REGB3
)) {
561 nit_abort("Reciever is null", NULL
, LOCATE_mmloader
, 68);
563 fra
.me
.REG
[6] = CALL_location___SourceFile___string(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
564 /* ./mmloader.nit:69 */
567 /* ./../lib/standard//kernel.nit:235 */
568 REGB3
= TAG_Int(UNTAG_Int(REGB2
)+UNTAG_Int(REGB3
));
569 /* ./../lib/standard//collection//array.nit:24 */
570 REGB4
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[6])!=NIT_NULL
);
571 if (UNTAG_Bool(REGB4
)) {
573 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
575 REGB4
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[6]);
576 REGB5
= TAG_Bool(VAL_ISA(REGB4
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB3
), VTID_standard___kernel___Comparable___OTHER(REGB3
))) /*cast OTHER*/;
577 if (UNTAG_Bool(REGB5
)) {
579 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
581 /* ./../lib/standard//kernel.nit:232 */
582 REGB4
= TAG_Bool(UNTAG_Int(REGB3
)<UNTAG_Int(REGB4
));
583 /* ./mmloader.nit:69 */
584 if (UNTAG_Bool(REGB4
)) {
586 /* ./../lib/standard//kernel.nit:235 */
587 REGB4
= TAG_Int(UNTAG_Int(REGB2
)+UNTAG_Int(REGB4
));
588 /* ./mmloader.nit:69 */
589 REGB4
= CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra
.me
.REG
[6])(fra
.me
.REG
[6], REGB4
);
590 REGB3
= TAG_Char('\n');
591 REGB5
= TAG_Bool(IS_EQUAL_OO(REGB4
,REGB3
));
592 if (UNTAG_Bool(REGB5
)) {
594 /* ./../lib/standard//kernel.nit:378 */
595 REGB3
= TAG_Bool((REGB4
)==(REGB3
));
596 /* ./mmloader.nit:69 */
599 REGB5
= TAG_Bool(!UNTAG_Bool(REGB5
));
601 REGB3
= TAG_Bool(false);
604 if (UNTAG_Bool(REGB5
)) {
606 /* ./../lib/standard//kernel.nit:235 */
607 REGB5
= TAG_Int(UNTAG_Int(REGB2
)+UNTAG_Int(REGB5
));
608 /* ./mmloader.nit:69 */
609 REGB5
= CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra
.me
.REG
[6])(fra
.me
.REG
[6], REGB5
);
610 REGB3
= TAG_Char('\r');
611 REGB4
= TAG_Bool(IS_EQUAL_OO(REGB5
,REGB3
));
612 if (UNTAG_Bool(REGB4
)) {
614 /* ./../lib/standard//kernel.nit:378 */
615 REGB3
= TAG_Bool((REGB5
)==(REGB3
));
616 /* ./mmloader.nit:69 */
619 REGB4
= TAG_Bool(!UNTAG_Bool(REGB4
));
621 REGB3
= TAG_Bool(false);
624 if (UNTAG_Bool(REGB4
)) {
625 /* ./mmloader.nit:70 */
627 /* ./../lib/standard//kernel.nit:235 */
628 REGB4
= TAG_Int(UNTAG_Int(REGB2
)+UNTAG_Int(REGB4
));
629 /* ./mmloader.nit:70 */
632 /* ./mmloader.nit:69 */
637 /* ./mmloader.nit:72 */
638 fra
.me
.REG
[7] = CALL_mmloader___Message___location(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
639 REGB4
= TAG_Bool(fra
.me
.REG
[7]==NIT_NULL
);
640 if (UNTAG_Bool(REGB4
)) {
641 nit_abort("Reciever is null", NULL
, LOCATE_mmloader
, 72);
643 REGB4
= CALL_location___Location___column_start(fra
.me
.REG
[7])(fra
.me
.REG
[7]);
645 /* ./../lib/standard//kernel.nit:237 */
646 REGB3
= TAG_Int(UNTAG_Int(REGB4
)-UNTAG_Int(REGB3
));
647 /* ./mmloader.nit:72 */
648 fra
.me
.REG
[7] = CALL_standard___string___AbstractString___substring(fra
.me
.REG
[6])(fra
.me
.REG
[6], REGB1
, REGB3
);
649 /* ./mmloader.nit:74 */
650 fra
.me
.REG
[8] = CALL_mmloader___Message___location(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
651 REGB3
= TAG_Bool(fra
.me
.REG
[8]==NIT_NULL
);
652 if (UNTAG_Bool(REGB3
)) {
653 nit_abort("Reciever is null", NULL
, LOCATE_mmloader
, 74);
655 REGB3
= CALL_location___Location___line_end(fra
.me
.REG
[8])(fra
.me
.REG
[8]);
656 REGB4
= TAG_Bool(IS_EQUAL_OO(REGB0
,REGB3
));
657 if (UNTAG_Bool(REGB4
)) {
659 /* ./../lib/standard//kernel.nit:227 */
660 REGB3
= TAG_Bool((REGB0
)==(REGB3
));
661 /* ./mmloader.nit:74 */
664 REGB4
= TAG_Bool(!UNTAG_Bool(REGB4
));
665 if (UNTAG_Bool(REGB4
)) {
666 /* ./../lib/standard//kernel.nit:237 */
667 REGB4
= TAG_Int(UNTAG_Int(REGB2
)-UNTAG_Int(REGB1
));
668 /* ./mmloader.nit:75 */
670 /* ./../lib/standard//kernel.nit:235 */
671 REGB3
= TAG_Int(UNTAG_Int(REGB4
)+UNTAG_Int(REGB3
));
672 /* ./mmloader.nit:75 */
673 fra
.me
.REG
[8] = REGB3
;
675 /* ./mmloader.nit:77 */
676 fra
.me
.REG
[9] = CALL_mmloader___Message___location(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
677 REGB3
= TAG_Bool(fra
.me
.REG
[9]==NIT_NULL
);
678 if (UNTAG_Bool(REGB3
)) {
679 nit_abort("Reciever is null", NULL
, LOCATE_mmloader
, 77);
681 REGB3
= CALL_location___Location___column_end(fra
.me
.REG
[9])(fra
.me
.REG
[9]);
682 fra
.me
.REG
[8] = REGB3
;
684 /* ./mmloader.nit:79 */
685 fra
.me
.REG
[9] = CALL_mmloader___Message___location(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
686 REGB3
= TAG_Bool(fra
.me
.REG
[9]==NIT_NULL
);
687 if (UNTAG_Bool(REGB3
)) {
688 nit_abort("Reciever is null", NULL
, LOCATE_mmloader
, 79);
690 REGB3
= CALL_location___Location___column_start(fra
.me
.REG
[9])(fra
.me
.REG
[9]);
691 /* ./../lib/standard//kernel.nit:235 */
692 REGB3
= TAG_Int(UNTAG_Int(REGB1
)+UNTAG_Int(REGB3
));
693 /* ./mmloader.nit:79 */
695 /* ./../lib/standard//kernel.nit:237 */
696 REGB4
= TAG_Int(UNTAG_Int(REGB3
)-UNTAG_Int(REGB4
));
697 /* ./mmloader.nit:79 */
698 fra
.me
.REG
[9] = CALL_mmloader___Message___location(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
699 REGB3
= TAG_Bool(fra
.me
.REG
[9]==NIT_NULL
);
700 if (UNTAG_Bool(REGB3
)) {
701 nit_abort("Reciever is null", NULL
, LOCATE_mmloader
, 79);
703 REGB3
= CALL_location___Location___column_start(fra
.me
.REG
[9])(fra
.me
.REG
[9]);
704 REGB0
= TAG_Bool(fra
.me
.REG
[8]==NIT_NULL
);
705 if (UNTAG_Bool(REGB0
)) {
706 nit_abort("Reciever is null", NULL
, LOCATE_mmloader
, 79);
708 /* ./../lib/standard//kernel.nit:237 */
709 REGB3
= TAG_Int(UNTAG_Int(fra
.me
.REG
[8])-UNTAG_Int(REGB3
));
710 /* ./mmloader.nit:79 */
712 /* ./../lib/standard//kernel.nit:235 */
713 REGB0
= TAG_Int(UNTAG_Int(REGB3
)+UNTAG_Int(REGB0
));
714 /* ./mmloader.nit:79 */
715 fra
.me
.REG
[9] = CALL_standard___string___AbstractString___substring(fra
.me
.REG
[6])(fra
.me
.REG
[6], REGB4
, REGB0
);
716 /* ./../lib/standard//kernel.nit:235 */
717 REGB0
= TAG_Int(UNTAG_Int(REGB1
)+UNTAG_Int(fra
.me
.REG
[8]));
718 /* ./../lib/standard//kernel.nit:237 */
719 REGB2
= TAG_Int(UNTAG_Int(REGB2
)-UNTAG_Int(REGB1
));
720 REGB2
= TAG_Int(UNTAG_Int(REGB2
)-UNTAG_Int(fra
.me
.REG
[8]));
721 /* ./mmloader.nit:80 */
723 /* ./../lib/standard//kernel.nit:235 */
724 REGB4
= TAG_Int(UNTAG_Int(REGB2
)+UNTAG_Int(REGB4
));
725 /* ./mmloader.nit:80 */
726 fra
.me
.REG
[8] = CALL_standard___string___AbstractString___substring(fra
.me
.REG
[6])(fra
.me
.REG
[6], REGB0
, REGB4
);
727 /* ./mmloader.nit:81 */
728 fra
.me
.REG
[10] = NEW_Buffer_standard___string___Buffer___init();
729 /* ./mmloader.nit:82 */
730 fra
.me
.REG
[11] = CALL_mmloader___Message___location(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
731 REGB4
= TAG_Bool(fra
.me
.REG
[11]==NIT_NULL
);
732 if (UNTAG_Bool(REGB4
)) {
733 nit_abort("Reciever is null", NULL
, LOCATE_mmloader
, 82);
735 REGB4
= CALL_location___Location___column_start(fra
.me
.REG
[11])(fra
.me
.REG
[11]);
736 /* ./../lib/standard//kernel.nit:235 */
737 REGB4
= TAG_Int(UNTAG_Int(REGB1
)+UNTAG_Int(REGB4
));
738 /* ./mmloader.nit:82 */
740 /* ./../lib/standard//kernel.nit:237 */
741 REGB0
= TAG_Int(UNTAG_Int(REGB4
)-UNTAG_Int(REGB0
));
742 /* ./../lib/standard//kernel.nit:352 */
744 REGB4
= TAG_Bool(VAL_ISA(REGB0
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1
), VTID_standard___kernel___Comparable___OTHER(REGB1
))) /*cast OTHER*/;
745 if (UNTAG_Bool(REGB4
)) {
747 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
749 /* ./../lib/standard//kernel.nit:232 */
750 REGB4
= TAG_Bool(UNTAG_Int(REGB1
)<UNTAG_Int(REGB0
));
751 /* ./../lib/standard//kernel.nit:352 */
752 if (UNTAG_Bool(REGB4
)) {
753 /* ./mmloader.nit:82 */
755 /* ./mmloader.nit:83 */
756 REGB4
= CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra
.me
.REG
[6])(fra
.me
.REG
[6], REGB4
);
757 REGB2
= TAG_Char('\t');
758 REGB3
= TAG_Bool(IS_EQUAL_OO(REGB4
,REGB2
));
759 if (UNTAG_Bool(REGB3
)) {
761 /* ./../lib/standard//kernel.nit:378 */
762 REGB2
= TAG_Bool((REGB4
)==(REGB2
));
763 /* ./mmloader.nit:83 */
766 if (UNTAG_Bool(REGB3
)) {
767 /* ./mmloader.nit:84 */
768 REGB3
= TAG_Char('\t');
769 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[10])(fra
.me
.REG
[10], REGB3
);
771 /* ./mmloader.nit:86 */
772 REGB3
= TAG_Char(' ');
773 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[10])(fra
.me
.REG
[10], REGB3
);
775 /* ./../lib/standard//kernel.nit:354 */
777 /* ./../lib/standard//kernel.nit:235 */
778 REGB3
= TAG_Int(UNTAG_Int(REGB1
)+UNTAG_Int(REGB3
));
779 /* ./../lib/standard//kernel.nit:354 */
782 /* ./../lib/standard//kernel.nit:352 */
787 /* ./mmloader.nit:89 */
789 fra
.me
.REG
[6] = NEW_Array_standard___collection___array___Array___with_capacity(REGB1
);
790 if (!once_value_20
) {
791 fra
.me
.REG
[11] = BOX_NativeString("");
793 fra
.me
.REG
[11] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[11], REGB1
);
794 once_value_20
= fra
.me
.REG
[11];
795 register_static_object(&once_value_20
);
796 } else fra
.me
.REG
[11] = once_value_20
;
797 fra
.me
.REG
[11] = fra
.me
.REG
[11];
798 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[11]);
799 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[2]);
800 if (!once_value_21
) {
801 fra
.me
.REG
[2] = BOX_NativeString("");
803 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB1
);
804 once_value_21
= fra
.me
.REG
[2];
805 register_static_object(&once_value_21
);
806 } else fra
.me
.REG
[2] = once_value_21
;
807 fra
.me
.REG
[2] = fra
.me
.REG
[2];
808 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[2]);
809 fra
.me
.REG
[4] = CALL_standard___string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
810 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[4]);
811 if (!once_value_22
) {
812 fra
.me
.REG
[4] = BOX_NativeString("");
814 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB1
);
815 once_value_22
= fra
.me
.REG
[4];
816 register_static_object(&once_value_22
);
817 } else fra
.me
.REG
[4] = once_value_22
;
818 fra
.me
.REG
[4] = fra
.me
.REG
[4];
819 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[4]);
820 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[3]);
821 if (!once_value_23
) {
822 fra
.me
.REG
[4] = BOX_NativeString(": ");
824 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB1
);
825 once_value_23
= fra
.me
.REG
[4];
826 register_static_object(&once_value_23
);
827 } else fra
.me
.REG
[4] = once_value_23
;
828 fra
.me
.REG
[4] = fra
.me
.REG
[4];
829 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[4]);
830 fra
.me
.REG
[0] = CALL_mmloader___Message___text(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
831 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[0]);
832 if (!once_value_24
) {
833 fra
.me
.REG
[0] = BOX_NativeString("\n\t");
835 fra
.me
.REG
[0] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[0], REGB1
);
836 once_value_24
= fra
.me
.REG
[0];
837 register_static_object(&once_value_24
);
838 } else fra
.me
.REG
[0] = once_value_24
;
839 fra
.me
.REG
[0] = fra
.me
.REG
[0];
840 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[0]);
841 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[7]);
842 if (!once_value_25
) {
843 fra
.me
.REG
[7] = BOX_NativeString("");
845 fra
.me
.REG
[7] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[7], REGB1
);
846 once_value_25
= fra
.me
.REG
[7];
847 register_static_object(&once_value_25
);
848 } else fra
.me
.REG
[7] = once_value_25
;
849 fra
.me
.REG
[7] = fra
.me
.REG
[7];
850 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[7]);
851 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[1]);
852 if (!once_value_26
) {
853 fra
.me
.REG
[1] = BOX_NativeString("");
855 fra
.me
.REG
[1] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[1], REGB1
);
856 once_value_26
= fra
.me
.REG
[1];
857 register_static_object(&once_value_26
);
858 } else fra
.me
.REG
[1] = once_value_26
;
859 fra
.me
.REG
[1] = fra
.me
.REG
[1];
860 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[1]);
861 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[9]);
862 if (!once_value_27
) {
863 fra
.me
.REG
[9] = BOX_NativeString("");
865 fra
.me
.REG
[9] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[9], REGB1
);
866 once_value_27
= fra
.me
.REG
[9];
867 register_static_object(&once_value_27
);
868 } else fra
.me
.REG
[9] = once_value_27
;
869 fra
.me
.REG
[9] = fra
.me
.REG
[9];
870 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[9]);
871 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[3]);
872 if (!once_value_28
) {
873 fra
.me
.REG
[3] = BOX_NativeString("");
875 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB1
);
876 once_value_28
= fra
.me
.REG
[3];
877 register_static_object(&once_value_28
);
878 } else fra
.me
.REG
[3] = once_value_28
;
879 fra
.me
.REG
[3] = fra
.me
.REG
[3];
880 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[3]);
881 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[8]);
882 if (!once_value_29
) {
883 fra
.me
.REG
[8] = BOX_NativeString("\n\t");
885 fra
.me
.REG
[8] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[8], REGB1
);
886 once_value_29
= fra
.me
.REG
[8];
887 register_static_object(&once_value_29
);
888 } else fra
.me
.REG
[8] = once_value_29
;
889 fra
.me
.REG
[8] = fra
.me
.REG
[8];
890 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[8]);
891 fra
.me
.REG
[10] = CALL_standard___string___Object___to_s(fra
.me
.REG
[10])(fra
.me
.REG
[10]);
892 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[10]);
893 if (!once_value_30
) {
894 fra
.me
.REG
[10] = BOX_NativeString("^");
896 fra
.me
.REG
[10] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[10], REGB1
);
897 once_value_30
= fra
.me
.REG
[10];
898 register_static_object(&once_value_30
);
899 } else fra
.me
.REG
[10] = once_value_30
;
900 fra
.me
.REG
[10] = fra
.me
.REG
[10];
901 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[10]);
902 fra
.me
.REG
[6] = CALL_standard___string___Object___to_s(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
903 fra
.me
.REG
[5] = fra
.me
.REG
[6];
908 stack_frame_head
= fra
.me
.prev
;
909 return fra
.me
.REG
[5];
911 void mmloader___Message___init(val_t p0
, val_t p1
, val_t p2
, int* init_table
){
912 int itpos0
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_mmloader___Message
].i
;
913 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
915 if (init_table
[itpos0
]) return;
916 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
917 fra
.me
.file
= LOCATE_mmloader
;
919 fra
.me
.meth
= LOCATE_mmloader___Message___init
;
920 fra
.me
.has_broke
= 0;
922 fra
.me
.REG
[0] = NIT_NULL
;
923 fra
.me
.REG
[1] = NIT_NULL
;
924 fra
.me
.REG
[2] = NIT_NULL
;
928 ATTR_mmloader___Message____location(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
929 ATTR_mmloader___Message____text(fra
.me
.REG
[0]) = fra
.me
.REG
[2];
930 stack_frame_head
= fra
.me
.prev
;
931 init_table
[itpos0
] = 1;
934 val_t
mmloader___ToolContext___error_count(val_t p0
){
935 struct {struct stack_frame_t me
;} fra
;
938 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
939 fra
.me
.file
= LOCATE_mmloader
;
941 fra
.me
.meth
= LOCATE_mmloader___ToolContext___error_count
;
942 fra
.me
.has_broke
= 0;
944 fra
.me
.REG
[0] = NIT_NULL
;
946 /* ./mmloader.nit:97 */
947 REGB0
= TAG_Bool(ATTR_mmloader___ToolContext____error_count(fra
.me
.REG
[0])!=NIT_NULL
);
948 if (UNTAG_Bool(REGB0
)) {
950 nit_abort("Uninitialized attribute %s", "_error_count", LOCATE_mmloader
, 97);
952 REGB0
= ATTR_mmloader___ToolContext____error_count(fra
.me
.REG
[0]);
953 stack_frame_head
= fra
.me
.prev
;
956 val_t
mmloader___ToolContext___warning_count(val_t p0
){
957 struct {struct stack_frame_t me
;} fra
;
960 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
961 fra
.me
.file
= LOCATE_mmloader
;
963 fra
.me
.meth
= LOCATE_mmloader___ToolContext___warning_count
;
964 fra
.me
.has_broke
= 0;
966 fra
.me
.REG
[0] = NIT_NULL
;
968 /* ./mmloader.nit:100 */
969 REGB0
= TAG_Bool(ATTR_mmloader___ToolContext____warning_count(fra
.me
.REG
[0])!=NIT_NULL
);
970 if (UNTAG_Bool(REGB0
)) {
972 nit_abort("Uninitialized attribute %s", "_warning_count", LOCATE_mmloader
, 100);
974 REGB0
= ATTR_mmloader___ToolContext____warning_count(fra
.me
.REG
[0]);
975 stack_frame_head
= fra
.me
.prev
;
978 val_t
mmloader___ToolContext___log_directory(val_t p0
){
979 struct {struct stack_frame_t me
;} fra
;
982 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
983 fra
.me
.file
= LOCATE_mmloader
;
985 fra
.me
.meth
= LOCATE_mmloader___ToolContext___log_directory
;
986 fra
.me
.has_broke
= 0;
988 fra
.me
.REG
[0] = NIT_NULL
;
990 /* ./mmloader.nit:103 */
991 REGB0
= TAG_Bool(ATTR_mmloader___ToolContext____log_directory(fra
.me
.REG
[0])!=NIT_NULL
);
992 if (UNTAG_Bool(REGB0
)) {
994 nit_abort("Uninitialized attribute %s", "_log_directory", LOCATE_mmloader
, 103);
996 fra
.me
.REG
[0] = ATTR_mmloader___ToolContext____log_directory(fra
.me
.REG
[0]);
997 stack_frame_head
= fra
.me
.prev
;
998 return fra
.me
.REG
[0];
1000 void mmloader___ToolContext___check_errors(val_t p0
){
1001 struct {struct stack_frame_t me
; val_t MORE_REG
[6];} fra
;
1006 static val_t once_value_1
; /* Once value */
1007 static val_t once_value_2
; /* Once value */
1008 static val_t once_value_3
; /* Once value */
1009 static val_t once_value_4
; /* Once value */
1010 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1011 fra
.me
.file
= LOCATE_mmloader
;
1013 fra
.me
.meth
= LOCATE_mmloader___ToolContext___check_errors
;
1014 fra
.me
.has_broke
= 0;
1015 fra
.me
.REG_size
= 7;
1016 fra
.me
.REG
[0] = NIT_NULL
;
1017 fra
.me
.REG
[1] = NIT_NULL
;
1018 fra
.me
.REG
[2] = NIT_NULL
;
1019 fra
.me
.REG
[3] = NIT_NULL
;
1020 fra
.me
.REG
[4] = NIT_NULL
;
1021 fra
.me
.REG
[5] = NIT_NULL
;
1022 fra
.me
.REG
[6] = NIT_NULL
;
1024 /* ./mmloader.nit:112 */
1025 REGB0
= TAG_Bool(ATTR_mmloader___ToolContext____messages(fra
.me
.REG
[0])!=NIT_NULL
);
1026 if (UNTAG_Bool(REGB0
)) {
1028 nit_abort("Uninitialized attribute %s", "_messages", LOCATE_mmloader
, 112);
1030 fra
.me
.REG
[1] = ATTR_mmloader___ToolContext____messages(fra
.me
.REG
[0]);
1031 /* ./../lib/standard//collection//array.nit:24 */
1032 REGB0
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[1])!=NIT_NULL
);
1033 if (UNTAG_Bool(REGB0
)) {
1035 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
1037 REGB0
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[1]);
1038 /* ./mmloader.nit:112 */
1040 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
1041 if (UNTAG_Bool(REGB2
)) {
1043 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1045 /* ./../lib/standard//kernel.nit:234 */
1046 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>UNTAG_Int(REGB1
));
1047 /* ./mmloader.nit:112 */
1048 if (UNTAG_Bool(REGB1
)) {
1049 /* ./mmloader.nit:113 */
1050 REGB1
= TAG_Bool(ATTR_mmloader___ToolContext____message_sorter(fra
.me
.REG
[0])!=NIT_NULL
);
1051 if (UNTAG_Bool(REGB1
)) {
1053 nit_abort("Uninitialized attribute %s", "_message_sorter", LOCATE_mmloader
, 113);
1055 fra
.me
.REG
[1] = ATTR_mmloader___ToolContext____message_sorter(fra
.me
.REG
[0]);
1056 REGB1
= TAG_Bool(ATTR_mmloader___ToolContext____messages(fra
.me
.REG
[0])!=NIT_NULL
);
1057 if (UNTAG_Bool(REGB1
)) {
1059 nit_abort("Uninitialized attribute %s", "_messages", LOCATE_mmloader
, 113);
1061 fra
.me
.REG
[2] = ATTR_mmloader___ToolContext____messages(fra
.me
.REG
[0]);
1062 CALL_standard___collection___sorter___AbstractSorter___sort(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
1063 /* ./mmloader.nit:115 */
1064 REGB1
= TAG_Bool(ATTR_mmloader___ToolContext____messages(fra
.me
.REG
[0])!=NIT_NULL
);
1065 if (UNTAG_Bool(REGB1
)) {
1067 nit_abort("Uninitialized attribute %s", "_messages", LOCATE_mmloader
, 115);
1069 fra
.me
.REG
[2] = ATTR_mmloader___ToolContext____messages(fra
.me
.REG
[0]);
1070 /* ./../lib/standard//collection//array.nit:269 */
1072 /* ./../lib/standard//collection//array.nit:270 */
1073 REGB0
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
1074 if (UNTAG_Bool(REGB0
)) {
1076 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 270);
1078 REGB0
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2]);
1079 /* ./../lib/standard//collection//array.nit:271 */
1080 fra
.me
.REG
[1] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[2]);
1081 /* ./../lib/standard//collection//array.nit:272 */
1083 /* ./../lib/standard//collection//array.nit:24 */
1084 REGB0
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
1085 if (UNTAG_Bool(REGB0
)) {
1087 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
1089 REGB0
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2]);
1090 REGB2
= TAG_Bool(VAL_ISA(REGB0
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1
), VTID_standard___kernel___Comparable___OTHER(REGB1
))) /*cast OTHER*/;
1091 if (UNTAG_Bool(REGB2
)) {
1093 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1095 /* ./../lib/standard//kernel.nit:232 */
1096 REGB0
= TAG_Bool(UNTAG_Int(REGB1
)<UNTAG_Int(REGB0
));
1097 /* ./../lib/standard//collection//array.nit:272 */
1098 if (UNTAG_Bool(REGB0
)) {
1099 /* ./../lib/standard//collection//array.nit:273 */
1100 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
1101 if (UNTAG_Bool(REGB0
)) {
1102 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 273);
1104 /* ./../lib/standard//collection//array.nit:718 */
1105 fra
.me
.REG
[3] = ((Nit_NativeArray
)fra
.me
.REG
[1])->val
[UNTAG_Int(REGB1
)];
1106 /* ./mmloader.nit:116 */
1107 fra
.me
.REG
[4] = CALL_mmloader___ToolContext___opt_no_color(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1108 fra
.me
.REG
[4] = CALL_opts___Option___value(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
1109 if (UNTAG_Bool(fra
.me
.REG
[4])) {
1110 /* ./mmloader.nit:117 */
1111 fra
.me
.REG
[4] = CALL_standard___file___Object___stderr(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1113 fra
.me
.REG
[5] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
1114 if (!once_value_1
) {
1115 fra
.me
.REG
[6] = BOX_NativeString("");
1117 fra
.me
.REG
[6] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[6], REGB0
);
1118 once_value_1
= fra
.me
.REG
[6];
1119 register_static_object(&once_value_1
);
1120 } else fra
.me
.REG
[6] = once_value_1
;
1121 fra
.me
.REG
[6] = fra
.me
.REG
[6];
1122 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
1123 fra
.me
.REG
[6] = CALL_standard___string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
1124 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
1125 if (!once_value_2
) {
1126 fra
.me
.REG
[6] = BOX_NativeString("\n");
1128 fra
.me
.REG
[6] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[6], REGB0
);
1129 once_value_2
= fra
.me
.REG
[6];
1130 register_static_object(&once_value_2
);
1131 } else fra
.me
.REG
[6] = once_value_2
;
1132 fra
.me
.REG
[6] = fra
.me
.REG
[6];
1133 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
1134 fra
.me
.REG
[5] = CALL_standard___string___Object___to_s(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
1135 CALL_standard___stream___OStream___write(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
1137 /* ./mmloader.nit:119 */
1138 fra
.me
.REG
[5] = CALL_standard___file___Object___stderr(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1140 fra
.me
.REG
[4] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
1141 if (!once_value_3
) {
1142 fra
.me
.REG
[6] = BOX_NativeString("");
1144 fra
.me
.REG
[6] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[6], REGB0
);
1145 once_value_3
= fra
.me
.REG
[6];
1146 register_static_object(&once_value_3
);
1147 } else fra
.me
.REG
[6] = once_value_3
;
1148 fra
.me
.REG
[6] = fra
.me
.REG
[6];
1149 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[6]);
1150 fra
.me
.REG
[3] = CALL_mmloader___Message___to_color_string(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
1151 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[3]);
1152 if (!once_value_4
) {
1153 fra
.me
.REG
[3] = BOX_NativeString("\n");
1155 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB0
);
1156 once_value_4
= fra
.me
.REG
[3];
1157 register_static_object(&once_value_4
);
1158 } else fra
.me
.REG
[3] = once_value_4
;
1159 fra
.me
.REG
[3] = fra
.me
.REG
[3];
1160 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[3]);
1161 fra
.me
.REG
[4] = CALL_standard___string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
1162 CALL_standard___stream___OStream___write(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[4]);
1164 /* ./../lib/standard//collection//array.nit:274 */
1166 /* ./../lib/standard//kernel.nit:235 */
1167 REGB0
= TAG_Int(UNTAG_Int(REGB1
)+UNTAG_Int(REGB0
));
1168 /* ./../lib/standard//collection//array.nit:274 */
1171 /* ./../lib/standard//collection//array.nit:272 */
1176 /* ./mmloader.nit:123 */
1177 REGB1
= TAG_Bool(ATTR_mmloader___ToolContext____messages(fra
.me
.REG
[0])!=NIT_NULL
);
1178 if (UNTAG_Bool(REGB1
)) {
1180 nit_abort("Uninitialized attribute %s", "_messages", LOCATE_mmloader
, 123);
1182 fra
.me
.REG
[1] = ATTR_mmloader___ToolContext____messages(fra
.me
.REG
[0]);
1183 CALL_standard___collection___abstract_collection___RemovableCollection___clear(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1185 /* ./mmloader.nit:126 */
1186 REGB1
= CALL_mmloader___ToolContext___error_count(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1188 REGB2
= TAG_Bool(VAL_ISA(REGB0
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1
), VTID_standard___kernel___Comparable___OTHER(REGB1
))) /*cast OTHER*/;
1189 if (UNTAG_Bool(REGB2
)) {
1191 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1193 /* ./../lib/standard//kernel.nit:234 */
1194 REGB0
= TAG_Bool(UNTAG_Int(REGB1
)>UNTAG_Int(REGB0
));
1195 /* ./mmloader.nit:126 */
1196 if (UNTAG_Bool(REGB0
)) {
1198 CALL_standard___kernel___Object___exit(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
1200 stack_frame_head
= fra
.me
.prev
;
1203 void mmloader___ToolContext___error(val_t p0
, val_t p1
, val_t p2
){
1204 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
1208 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1209 fra
.me
.file
= LOCATE_mmloader
;
1211 fra
.me
.meth
= LOCATE_mmloader___ToolContext___error
;
1212 fra
.me
.has_broke
= 0;
1213 fra
.me
.REG_size
= 4;
1214 fra
.me
.REG
[0] = NIT_NULL
;
1215 fra
.me
.REG
[1] = NIT_NULL
;
1216 fra
.me
.REG
[2] = NIT_NULL
;
1217 fra
.me
.REG
[3] = NIT_NULL
;
1221 /* ./mmloader.nit:132 */
1222 REGB0
= TAG_Bool(ATTR_mmloader___ToolContext____messages(fra
.me
.REG
[0])!=NIT_NULL
);
1223 if (UNTAG_Bool(REGB0
)) {
1225 nit_abort("Uninitialized attribute %s", "_messages", LOCATE_mmloader
, 132);
1227 fra
.me
.REG
[3] = ATTR_mmloader___ToolContext____messages(fra
.me
.REG
[0]);
1228 fra
.me
.REG
[2] = NEW_Message_mmloader___Message___init(fra
.me
.REG
[1], fra
.me
.REG
[2]);
1229 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[2]);
1230 /* ./mmloader.nit:133 */
1231 REGB0
= TAG_Bool(ATTR_mmloader___ToolContext____error_count(fra
.me
.REG
[0])!=NIT_NULL
);
1232 if (UNTAG_Bool(REGB0
)) {
1234 nit_abort("Uninitialized attribute %s", "_error_count", LOCATE_mmloader
, 133);
1236 REGB0
= ATTR_mmloader___ToolContext____error_count(fra
.me
.REG
[0]);
1238 /* ./../lib/standard//kernel.nit:235 */
1239 REGB1
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
1240 /* ./mmloader.nit:133 */
1241 ATTR_mmloader___ToolContext____error_count(fra
.me
.REG
[0]) = REGB1
;
1242 /* ./mmloader.nit:134 */
1243 fra
.me
.REG
[2] = CALL_mmloader___ToolContext___opt_stop_on_first_error(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1244 fra
.me
.REG
[2] = CALL_opts___Option___value(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
1245 if (UNTAG_Bool(fra
.me
.REG
[2])) {
1246 CALL_mmloader___ToolContext___check_errors(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1248 stack_frame_head
= fra
.me
.prev
;
1251 void mmloader___ToolContext___fatal_error(val_t p0
, val_t p1
, val_t p2
){
1252 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
1254 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1255 fra
.me
.file
= LOCATE_mmloader
;
1257 fra
.me
.meth
= LOCATE_mmloader___ToolContext___fatal_error
;
1258 fra
.me
.has_broke
= 0;
1259 fra
.me
.REG_size
= 3;
1260 fra
.me
.REG
[0] = NIT_NULL
;
1261 fra
.me
.REG
[1] = NIT_NULL
;
1262 fra
.me
.REG
[2] = NIT_NULL
;
1266 /* ./mmloader.nit:140 */
1267 CALL_mmloader___ToolContext___error(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], fra
.me
.REG
[2]);
1268 /* ./mmloader.nit:141 */
1269 CALL_mmloader___ToolContext___check_errors(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1270 stack_frame_head
= fra
.me
.prev
;
1273 void mmloader___ToolContext___warning(val_t p0
, val_t p1
, val_t p2
){
1274 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
1279 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1280 fra
.me
.file
= LOCATE_mmloader
;
1282 fra
.me
.meth
= LOCATE_mmloader___ToolContext___warning
;
1283 fra
.me
.has_broke
= 0;
1284 fra
.me
.REG_size
= 4;
1285 fra
.me
.REG
[0] = NIT_NULL
;
1286 fra
.me
.REG
[1] = NIT_NULL
;
1287 fra
.me
.REG
[2] = NIT_NULL
;
1288 fra
.me
.REG
[3] = NIT_NULL
;
1292 /* ./mmloader.nit:147 */
1293 REGB0
= TAG_Bool(ATTR_mmloader___ToolContext____opt_warn(fra
.me
.REG
[0])!=NIT_NULL
);
1294 if (UNTAG_Bool(REGB0
)) {
1296 nit_abort("Uninitialized attribute %s", "_opt_warn", LOCATE_mmloader
, 147);
1298 fra
.me
.REG
[3] = ATTR_mmloader___ToolContext____opt_warn(fra
.me
.REG
[0]);
1299 fra
.me
.REG
[3] = CALL_opts___Option___value(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
1301 REGB1
= TAG_Bool(IS_EQUAL_ON(REGB0
,fra
.me
.REG
[3]));
1302 if (UNTAG_Bool(REGB1
)) {
1304 REGB2
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
1305 if (UNTAG_Bool(REGB2
)) {
1306 REGB2
= TAG_Bool(false);
1309 /* ./../lib/standard//kernel.nit:227 */
1310 REGB0
= TAG_Bool((fra
.me
.REG
[3])==(REGB0
));
1311 /* ./mmloader.nit:147 */
1315 if (UNTAG_Bool(REGB1
)) {
1318 /* ./mmloader.nit:148 */
1319 REGB1
= TAG_Bool(ATTR_mmloader___ToolContext____messages(fra
.me
.REG
[0])!=NIT_NULL
);
1320 if (UNTAG_Bool(REGB1
)) {
1322 nit_abort("Uninitialized attribute %s", "_messages", LOCATE_mmloader
, 148);
1324 fra
.me
.REG
[3] = ATTR_mmloader___ToolContext____messages(fra
.me
.REG
[0]);
1325 fra
.me
.REG
[2] = NEW_Message_mmloader___Message___init(fra
.me
.REG
[1], fra
.me
.REG
[2]);
1326 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[2]);
1327 /* ./mmloader.nit:149 */
1328 REGB1
= TAG_Bool(ATTR_mmloader___ToolContext____opt_warn(fra
.me
.REG
[0])!=NIT_NULL
);
1329 if (UNTAG_Bool(REGB1
)) {
1331 nit_abort("Uninitialized attribute %s", "_opt_warn", LOCATE_mmloader
, 149);
1333 fra
.me
.REG
[2] = ATTR_mmloader___ToolContext____opt_warn(fra
.me
.REG
[0]);
1334 fra
.me
.REG
[2] = CALL_opts___Option___value(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
1336 REGB0
= TAG_Bool(IS_EQUAL_ON(REGB1
,fra
.me
.REG
[2]));
1337 if (UNTAG_Bool(REGB0
)) {
1339 REGB2
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
1340 if (UNTAG_Bool(REGB2
)) {
1341 REGB2
= TAG_Bool(false);
1344 /* ./../lib/standard//kernel.nit:227 */
1345 REGB1
= TAG_Bool((fra
.me
.REG
[2])==(REGB1
));
1346 /* ./mmloader.nit:149 */
1350 if (UNTAG_Bool(REGB0
)) {
1351 /* ./mmloader.nit:150 */
1352 REGB0
= TAG_Bool(ATTR_mmloader___ToolContext____warning_count(fra
.me
.REG
[0])!=NIT_NULL
);
1353 if (UNTAG_Bool(REGB0
)) {
1355 nit_abort("Uninitialized attribute %s", "_warning_count", LOCATE_mmloader
, 150);
1357 REGB0
= ATTR_mmloader___ToolContext____warning_count(fra
.me
.REG
[0]);
1359 /* ./../lib/standard//kernel.nit:235 */
1360 REGB1
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
1361 /* ./mmloader.nit:150 */
1362 ATTR_mmloader___ToolContext____warning_count(fra
.me
.REG
[0]) = REGB1
;
1364 /* ./mmloader.nit:152 */
1365 REGB1
= TAG_Bool(ATTR_mmloader___ToolContext____error_count(fra
.me
.REG
[0])!=NIT_NULL
);
1366 if (UNTAG_Bool(REGB1
)) {
1368 nit_abort("Uninitialized attribute %s", "_error_count", LOCATE_mmloader
, 152);
1370 REGB1
= ATTR_mmloader___ToolContext____error_count(fra
.me
.REG
[0]);
1372 /* ./../lib/standard//kernel.nit:235 */
1373 REGB0
= TAG_Int(UNTAG_Int(REGB1
)+UNTAG_Int(REGB0
));
1374 /* ./mmloader.nit:152 */
1375 ATTR_mmloader___ToolContext____error_count(fra
.me
.REG
[0]) = REGB0
;
1377 /* ./mmloader.nit:154 */
1378 fra
.me
.REG
[2] = CALL_mmloader___ToolContext___opt_stop_on_first_error(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1379 fra
.me
.REG
[2] = CALL_opts___Option___value(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
1380 if (UNTAG_Bool(fra
.me
.REG
[2])) {
1381 CALL_mmloader___ToolContext___check_errors(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1384 stack_frame_head
= fra
.me
.prev
;
1387 void mmloader___ToolContext___info(val_t p0
, val_t p1
, val_t p2
){
1388 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
1393 static val_t once_value_1
; /* Once value */
1394 static val_t once_value_2
; /* Once value */
1395 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1396 fra
.me
.file
= LOCATE_mmloader
;
1398 fra
.me
.meth
= LOCATE_mmloader___ToolContext___info
;
1399 fra
.me
.has_broke
= 0;
1400 fra
.me
.REG_size
= 4;
1401 fra
.me
.REG
[0] = NIT_NULL
;
1402 fra
.me
.REG
[1] = NIT_NULL
;
1403 fra
.me
.REG
[2] = NIT_NULL
;
1404 fra
.me
.REG
[3] = NIT_NULL
;
1408 /* ./mmloader.nit:160 */
1409 REGB1
= CALL_mmloader___ToolContext___verbose_level(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1410 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
1411 if (UNTAG_Bool(REGB2
)) {
1413 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1415 /* ./../lib/standard//kernel.nit:231 */
1416 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<=UNTAG_Int(REGB1
));
1417 /* ./mmloader.nit:160 */
1418 if (UNTAG_Bool(REGB1
)) {
1419 /* ./mmloader.nit:161 */
1421 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB1
);
1422 if (!once_value_1
) {
1423 fra
.me
.REG
[3] = BOX_NativeString("");
1425 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB1
);
1426 once_value_1
= fra
.me
.REG
[3];
1427 register_static_object(&once_value_1
);
1428 } else fra
.me
.REG
[3] = once_value_1
;
1429 fra
.me
.REG
[3] = fra
.me
.REG
[3];
1430 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
1431 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
1432 if (!once_value_2
) {
1433 fra
.me
.REG
[1] = BOX_NativeString("");
1435 fra
.me
.REG
[1] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[1], REGB1
);
1436 once_value_2
= fra
.me
.REG
[1];
1437 register_static_object(&once_value_2
);
1438 } else fra
.me
.REG
[1] = once_value_2
;
1439 fra
.me
.REG
[1] = fra
.me
.REG
[1];
1440 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
1441 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
1442 CALL_standard___file___Object___print(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[2]);
1444 stack_frame_head
= fra
.me
.prev
;
1447 val_t
mmloader___ToolContext___paths(val_t p0
){
1448 struct {struct stack_frame_t me
;} fra
;
1451 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1452 fra
.me
.file
= LOCATE_mmloader
;
1454 fra
.me
.meth
= LOCATE_mmloader___ToolContext___paths
;
1455 fra
.me
.has_broke
= 0;
1456 fra
.me
.REG_size
= 1;
1457 fra
.me
.REG
[0] = NIT_NULL
;
1459 /* ./mmloader.nit:165 */
1460 REGB0
= TAG_Bool(ATTR_mmloader___ToolContext____paths(fra
.me
.REG
[0])!=NIT_NULL
);
1461 if (UNTAG_Bool(REGB0
)) {
1463 nit_abort("Uninitialized attribute %s", "_paths", LOCATE_mmloader
, 165);
1465 fra
.me
.REG
[0] = ATTR_mmloader___ToolContext____paths(fra
.me
.REG
[0]);
1466 stack_frame_head
= fra
.me
.prev
;
1467 return fra
.me
.REG
[0];
1469 val_t
mmloader___ToolContext___option_context(val_t p0
){
1470 struct {struct stack_frame_t me
;} fra
;
1473 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1474 fra
.me
.file
= LOCATE_mmloader
;
1476 fra
.me
.meth
= LOCATE_mmloader___ToolContext___option_context
;
1477 fra
.me
.has_broke
= 0;
1478 fra
.me
.REG_size
= 1;
1479 fra
.me
.REG
[0] = NIT_NULL
;
1481 /* ./mmloader.nit:171 */
1482 REGB0
= TAG_Bool(ATTR_mmloader___ToolContext____option_context(fra
.me
.REG
[0])!=NIT_NULL
);
1483 if (UNTAG_Bool(REGB0
)) {
1485 nit_abort("Uninitialized attribute %s", "_option_context", LOCATE_mmloader
, 171);
1487 fra
.me
.REG
[0] = ATTR_mmloader___ToolContext____option_context(fra
.me
.REG
[0]);
1488 stack_frame_head
= fra
.me
.prev
;
1489 return fra
.me
.REG
[0];
1491 val_t
mmloader___ToolContext___opt_warn(val_t p0
){
1492 struct {struct stack_frame_t me
;} fra
;
1495 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1496 fra
.me
.file
= LOCATE_mmloader
;
1498 fra
.me
.meth
= LOCATE_mmloader___ToolContext___opt_warn
;
1499 fra
.me
.has_broke
= 0;
1500 fra
.me
.REG_size
= 1;
1501 fra
.me
.REG
[0] = NIT_NULL
;
1503 /* ./mmloader.nit:174 */
1504 REGB0
= TAG_Bool(ATTR_mmloader___ToolContext____opt_warn(fra
.me
.REG
[0])!=NIT_NULL
);
1505 if (UNTAG_Bool(REGB0
)) {
1507 nit_abort("Uninitialized attribute %s", "_opt_warn", LOCATE_mmloader
, 174);
1509 fra
.me
.REG
[0] = ATTR_mmloader___ToolContext____opt_warn(fra
.me
.REG
[0]);
1510 stack_frame_head
= fra
.me
.prev
;
1511 return fra
.me
.REG
[0];
1513 val_t
mmloader___ToolContext___opt_path(val_t p0
){
1514 struct {struct stack_frame_t me
;} fra
;
1517 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1518 fra
.me
.file
= LOCATE_mmloader
;
1520 fra
.me
.meth
= LOCATE_mmloader___ToolContext___opt_path
;
1521 fra
.me
.has_broke
= 0;
1522 fra
.me
.REG_size
= 1;
1523 fra
.me
.REG
[0] = NIT_NULL
;
1525 /* ./mmloader.nit:177 */
1526 REGB0
= TAG_Bool(ATTR_mmloader___ToolContext____opt_path(fra
.me
.REG
[0])!=NIT_NULL
);
1527 if (UNTAG_Bool(REGB0
)) {
1529 nit_abort("Uninitialized attribute %s", "_opt_path", LOCATE_mmloader
, 177);
1531 fra
.me
.REG
[0] = ATTR_mmloader___ToolContext____opt_path(fra
.me
.REG
[0]);
1532 stack_frame_head
= fra
.me
.prev
;
1533 return fra
.me
.REG
[0];
1535 val_t
mmloader___ToolContext___opt_log(val_t p0
){
1536 struct {struct stack_frame_t me
;} fra
;
1539 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1540 fra
.me
.file
= LOCATE_mmloader
;
1542 fra
.me
.meth
= LOCATE_mmloader___ToolContext___opt_log
;
1543 fra
.me
.has_broke
= 0;
1544 fra
.me
.REG_size
= 1;
1545 fra
.me
.REG
[0] = NIT_NULL
;
1547 /* ./mmloader.nit:180 */
1548 REGB0
= TAG_Bool(ATTR_mmloader___ToolContext____opt_log(fra
.me
.REG
[0])!=NIT_NULL
);
1549 if (UNTAG_Bool(REGB0
)) {
1551 nit_abort("Uninitialized attribute %s", "_opt_log", LOCATE_mmloader
, 180);
1553 fra
.me
.REG
[0] = ATTR_mmloader___ToolContext____opt_log(fra
.me
.REG
[0]);
1554 stack_frame_head
= fra
.me
.prev
;
1555 return fra
.me
.REG
[0];
1557 val_t
mmloader___ToolContext___opt_log_dir(val_t p0
){
1558 struct {struct stack_frame_t me
;} fra
;
1561 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1562 fra
.me
.file
= LOCATE_mmloader
;
1564 fra
.me
.meth
= LOCATE_mmloader___ToolContext___opt_log_dir
;
1565 fra
.me
.has_broke
= 0;
1566 fra
.me
.REG_size
= 1;
1567 fra
.me
.REG
[0] = NIT_NULL
;
1569 /* ./mmloader.nit:183 */
1570 REGB0
= TAG_Bool(ATTR_mmloader___ToolContext____opt_log_dir(fra
.me
.REG
[0])!=NIT_NULL
);
1571 if (UNTAG_Bool(REGB0
)) {
1573 nit_abort("Uninitialized attribute %s", "_opt_log_dir", LOCATE_mmloader
, 183);
1575 fra
.me
.REG
[0] = ATTR_mmloader___ToolContext____opt_log_dir(fra
.me
.REG
[0]);
1576 stack_frame_head
= fra
.me
.prev
;
1577 return fra
.me
.REG
[0];
1579 val_t
mmloader___ToolContext___opt_only_metamodel(val_t p0
){
1580 struct {struct stack_frame_t me
;} fra
;
1583 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1584 fra
.me
.file
= LOCATE_mmloader
;
1586 fra
.me
.meth
= LOCATE_mmloader___ToolContext___opt_only_metamodel
;
1587 fra
.me
.has_broke
= 0;
1588 fra
.me
.REG_size
= 1;
1589 fra
.me
.REG
[0] = NIT_NULL
;
1591 /* ./mmloader.nit:186 */
1592 REGB0
= TAG_Bool(ATTR_mmloader___ToolContext____opt_only_metamodel(fra
.me
.REG
[0])!=NIT_NULL
);
1593 if (UNTAG_Bool(REGB0
)) {
1595 nit_abort("Uninitialized attribute %s", "_opt_only_metamodel", LOCATE_mmloader
, 186);
1597 fra
.me
.REG
[0] = ATTR_mmloader___ToolContext____opt_only_metamodel(fra
.me
.REG
[0]);
1598 stack_frame_head
= fra
.me
.prev
;
1599 return fra
.me
.REG
[0];
1601 val_t
mmloader___ToolContext___opt_only_parse(val_t p0
){
1602 struct {struct stack_frame_t me
;} fra
;
1605 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1606 fra
.me
.file
= LOCATE_mmloader
;
1608 fra
.me
.meth
= LOCATE_mmloader___ToolContext___opt_only_parse
;
1609 fra
.me
.has_broke
= 0;
1610 fra
.me
.REG_size
= 1;
1611 fra
.me
.REG
[0] = NIT_NULL
;
1613 /* ./mmloader.nit:189 */
1614 REGB0
= TAG_Bool(ATTR_mmloader___ToolContext____opt_only_parse(fra
.me
.REG
[0])!=NIT_NULL
);
1615 if (UNTAG_Bool(REGB0
)) {
1617 nit_abort("Uninitialized attribute %s", "_opt_only_parse", LOCATE_mmloader
, 189);
1619 fra
.me
.REG
[0] = ATTR_mmloader___ToolContext____opt_only_parse(fra
.me
.REG
[0]);
1620 stack_frame_head
= fra
.me
.prev
;
1621 return fra
.me
.REG
[0];
1623 val_t
mmloader___ToolContext___opt_help(val_t p0
){
1624 struct {struct stack_frame_t me
;} fra
;
1627 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1628 fra
.me
.file
= LOCATE_mmloader
;
1630 fra
.me
.meth
= LOCATE_mmloader___ToolContext___opt_help
;
1631 fra
.me
.has_broke
= 0;
1632 fra
.me
.REG_size
= 1;
1633 fra
.me
.REG
[0] = NIT_NULL
;
1635 /* ./mmloader.nit:192 */
1636 REGB0
= TAG_Bool(ATTR_mmloader___ToolContext____opt_help(fra
.me
.REG
[0])!=NIT_NULL
);
1637 if (UNTAG_Bool(REGB0
)) {
1639 nit_abort("Uninitialized attribute %s", "_opt_help", LOCATE_mmloader
, 192);
1641 fra
.me
.REG
[0] = ATTR_mmloader___ToolContext____opt_help(fra
.me
.REG
[0]);
1642 stack_frame_head
= fra
.me
.prev
;
1643 return fra
.me
.REG
[0];
1645 val_t
mmloader___ToolContext___opt_version(val_t p0
){
1646 struct {struct stack_frame_t me
;} fra
;
1649 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1650 fra
.me
.file
= LOCATE_mmloader
;
1652 fra
.me
.meth
= LOCATE_mmloader___ToolContext___opt_version
;
1653 fra
.me
.has_broke
= 0;
1654 fra
.me
.REG_size
= 1;
1655 fra
.me
.REG
[0] = NIT_NULL
;
1657 /* ./mmloader.nit:195 */
1658 REGB0
= TAG_Bool(ATTR_mmloader___ToolContext____opt_version(fra
.me
.REG
[0])!=NIT_NULL
);
1659 if (UNTAG_Bool(REGB0
)) {
1661 nit_abort("Uninitialized attribute %s", "_opt_version", LOCATE_mmloader
, 195);
1663 fra
.me
.REG
[0] = ATTR_mmloader___ToolContext____opt_version(fra
.me
.REG
[0]);
1664 stack_frame_head
= fra
.me
.prev
;
1665 return fra
.me
.REG
[0];
1667 val_t
mmloader___ToolContext___opt_verbose(val_t p0
){
1668 struct {struct stack_frame_t me
;} fra
;
1671 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1672 fra
.me
.file
= LOCATE_mmloader
;
1674 fra
.me
.meth
= LOCATE_mmloader___ToolContext___opt_verbose
;
1675 fra
.me
.has_broke
= 0;
1676 fra
.me
.REG_size
= 1;
1677 fra
.me
.REG
[0] = NIT_NULL
;
1679 /* ./mmloader.nit:198 */
1680 REGB0
= TAG_Bool(ATTR_mmloader___ToolContext____opt_verbose(fra
.me
.REG
[0])!=NIT_NULL
);
1681 if (UNTAG_Bool(REGB0
)) {
1683 nit_abort("Uninitialized attribute %s", "_opt_verbose", LOCATE_mmloader
, 198);
1685 fra
.me
.REG
[0] = ATTR_mmloader___ToolContext____opt_verbose(fra
.me
.REG
[0]);
1686 stack_frame_head
= fra
.me
.prev
;
1687 return fra
.me
.REG
[0];
1689 val_t
mmloader___ToolContext___opt_stop_on_first_error(val_t p0
){
1690 struct {struct stack_frame_t me
;} fra
;
1693 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1694 fra
.me
.file
= LOCATE_mmloader
;
1696 fra
.me
.meth
= LOCATE_mmloader___ToolContext___opt_stop_on_first_error
;
1697 fra
.me
.has_broke
= 0;
1698 fra
.me
.REG_size
= 1;
1699 fra
.me
.REG
[0] = NIT_NULL
;
1701 /* ./mmloader.nit:201 */
1702 REGB0
= TAG_Bool(ATTR_mmloader___ToolContext____opt_stop_on_first_error(fra
.me
.REG
[0])!=NIT_NULL
);
1703 if (UNTAG_Bool(REGB0
)) {
1705 nit_abort("Uninitialized attribute %s", "_opt_stop_on_first_error", LOCATE_mmloader
, 201);
1707 fra
.me
.REG
[0] = ATTR_mmloader___ToolContext____opt_stop_on_first_error(fra
.me
.REG
[0]);
1708 stack_frame_head
= fra
.me
.prev
;
1709 return fra
.me
.REG
[0];
1711 val_t
mmloader___ToolContext___opt_no_color(val_t p0
){
1712 struct {struct stack_frame_t me
;} fra
;
1715 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1716 fra
.me
.file
= LOCATE_mmloader
;
1718 fra
.me
.meth
= LOCATE_mmloader___ToolContext___opt_no_color
;
1719 fra
.me
.has_broke
= 0;
1720 fra
.me
.REG_size
= 1;
1721 fra
.me
.REG
[0] = NIT_NULL
;
1723 /* ./mmloader.nit:204 */
1724 REGB0
= TAG_Bool(ATTR_mmloader___ToolContext____opt_no_color(fra
.me
.REG
[0])!=NIT_NULL
);
1725 if (UNTAG_Bool(REGB0
)) {
1727 nit_abort("Uninitialized attribute %s", "_opt_no_color", LOCATE_mmloader
, 204);
1729 fra
.me
.REG
[0] = ATTR_mmloader___ToolContext____opt_no_color(fra
.me
.REG
[0]);
1730 stack_frame_head
= fra
.me
.prev
;
1731 return fra
.me
.REG
[0];
1733 val_t
mmloader___ToolContext___verbose_level(val_t p0
){
1734 struct {struct stack_frame_t me
;} fra
;
1737 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1738 fra
.me
.file
= LOCATE_mmloader
;
1740 fra
.me
.meth
= LOCATE_mmloader___ToolContext___verbose_level
;
1741 fra
.me
.has_broke
= 0;
1742 fra
.me
.REG_size
= 1;
1743 fra
.me
.REG
[0] = NIT_NULL
;
1745 /* ./mmloader.nit:207 */
1746 REGB0
= TAG_Bool(ATTR_mmloader___ToolContext____verbose_level(fra
.me
.REG
[0])!=NIT_NULL
);
1747 if (UNTAG_Bool(REGB0
)) {
1749 nit_abort("Uninitialized attribute %s", "_verbose_level", LOCATE_mmloader
, 207);
1751 REGB0
= ATTR_mmloader___ToolContext____verbose_level(fra
.me
.REG
[0]);
1752 stack_frame_head
= fra
.me
.prev
;
1755 void mmloader___ToolContext___init(val_t p0
, int* init_table
){
1756 int itpos1
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_mmloader___ToolContext
].i
;
1757 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
1760 if (init_table
[itpos1
]) return;
1761 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1762 fra
.me
.file
= LOCATE_mmloader
;
1764 fra
.me
.meth
= LOCATE_mmloader___ToolContext___init
;
1765 fra
.me
.has_broke
= 0;
1766 fra
.me
.REG_size
= 4;
1767 fra
.me
.REG
[0] = NIT_NULL
;
1768 fra
.me
.REG
[1] = NIT_NULL
;
1769 fra
.me
.REG
[2] = NIT_NULL
;
1770 fra
.me
.REG
[3] = NIT_NULL
;
1772 /* ./mmloader.nit:210 */
1773 fra
.me
.REG
[1] = fra
.me
.REG
[0];
1774 /* ./mmloader.nit:212 */
1775 CALL_metamodel___abstractmetamodel___MMContext___init(fra
.me
.REG
[0])(fra
.me
.REG
[0], init_table
);
1776 /* ./mmloader.nit:213 */
1777 fra
.me
.REG
[0] = CALL_mmloader___ToolContext___option_context(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1778 REGB0
= TAG_Int(10);
1779 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
1780 fra
.me
.REG
[3] = CALL_mmloader___ToolContext___opt_warn(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1781 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
1782 fra
.me
.REG
[3] = CALL_mmloader___ToolContext___opt_stop_on_first_error(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1783 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
1784 fra
.me
.REG
[3] = CALL_mmloader___ToolContext___opt_no_color(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1785 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
1786 fra
.me
.REG
[3] = CALL_mmloader___ToolContext___opt_path(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1787 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
1788 fra
.me
.REG
[3] = CALL_mmloader___ToolContext___opt_log(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1789 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
1790 fra
.me
.REG
[3] = CALL_mmloader___ToolContext___opt_log_dir(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1791 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
1792 fra
.me
.REG
[3] = CALL_mmloader___ToolContext___opt_only_parse(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1793 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
1794 fra
.me
.REG
[3] = CALL_mmloader___ToolContext___opt_only_metamodel(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1795 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
1796 fra
.me
.REG
[3] = CALL_mmloader___ToolContext___opt_help(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1797 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
1798 fra
.me
.REG
[3] = CALL_mmloader___ToolContext___opt_version(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1799 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
1800 fra
.me
.REG
[1] = CALL_mmloader___ToolContext___opt_verbose(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1801 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
1802 CALL_opts___OptionContext___add_option(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[2]);
1803 stack_frame_head
= fra
.me
.prev
;
1804 init_table
[itpos1
] = 1;
1807 void mmloader___ToolContext___process_options(val_t p0
){
1808 struct {struct stack_frame_t me
; val_t MORE_REG
[4];} fra
;
1812 static val_t once_value_1
; /* Once value */
1813 static val_t once_value_2
; /* Once value */
1814 static val_t once_value_3
; /* Once value */
1815 static val_t once_value_4
; /* Once value */
1816 static val_t once_value_5
; /* Once value */
1817 static val_t once_value_6
; /* Once value */
1818 static val_t once_value_7
; /* Once value */
1819 static val_t once_value_8
; /* Once value */
1820 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1821 fra
.me
.file
= LOCATE_mmloader
;
1823 fra
.me
.meth
= LOCATE_mmloader___ToolContext___process_options
;
1824 fra
.me
.has_broke
= 0;
1825 fra
.me
.REG_size
= 5;
1826 fra
.me
.REG
[0] = NIT_NULL
;
1827 fra
.me
.REG
[1] = NIT_NULL
;
1828 fra
.me
.REG
[2] = NIT_NULL
;
1829 fra
.me
.REG
[3] = NIT_NULL
;
1830 fra
.me
.REG
[4] = NIT_NULL
;
1832 /* ./mmloader.nit:216 */
1833 fra
.me
.REG
[1] = fra
.me
.REG
[0];
1834 /* ./mmloader.nit:220 */
1835 fra
.me
.REG
[2] = CALL_mmloader___ToolContext___option_context(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1836 fra
.me
.REG
[3] = CALL_standard___string___Object___args(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1837 CALL_opts___OptionContext___parse(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
1838 /* ./mmloader.nit:223 */
1839 fra
.me
.REG
[3] = CALL_mmloader___ToolContext___opt_verbose(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1840 fra
.me
.REG
[3] = CALL_opts___Option___value(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
1841 ATTR_mmloader___ToolContext____verbose_level(fra
.me
.REG
[1]) = fra
.me
.REG
[3];
1842 /* ./mmloader.nit:226 */
1843 fra
.me
.REG
[3] = CALL_mmloader___ToolContext___paths(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1844 fra
.me
.REG
[2] = CALL_mmloader___ToolContext___opt_path(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1845 fra
.me
.REG
[2] = CALL_opts___Option___value(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
1846 CALL_standard___collection___abstract_collection___Sequence___append(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[2]);
1847 /* ./mmloader.nit:228 */
1848 if (!once_value_1
) {
1849 if (!once_value_2
) {
1850 fra
.me
.REG
[2] = BOX_NativeString("NIT_PATH");
1852 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
1853 once_value_2
= fra
.me
.REG
[2];
1854 register_static_object(&once_value_2
);
1855 } else fra
.me
.REG
[2] = once_value_2
;
1856 fra
.me
.REG
[2] = fra
.me
.REG
[2];
1857 fra
.me
.REG
[2] = CALL_standard___symbol___String___to_symbol(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
1858 fra
.me
.REG
[2] = CALL_standard___environ___Symbol___environ(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
1859 once_value_1
= fra
.me
.REG
[2];
1860 register_static_object(&once_value_1
);
1861 } else fra
.me
.REG
[2] = once_value_1
;
1862 fra
.me
.REG
[2] = fra
.me
.REG
[2];
1863 /* ./mmloader.nit:229 */
1864 REGB0
= CALL_standard___collection___abstract_collection___Collection___is_empty(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
1865 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
1866 if (UNTAG_Bool(REGB0
)) {
1867 /* ./mmloader.nit:230 */
1868 fra
.me
.REG
[3] = CALL_mmloader___ToolContext___paths(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1869 REGB0
= TAG_Char(':');
1870 fra
.me
.REG
[4] = CALL_standard___string_search___String___split_with(fra
.me
.REG
[2])(fra
.me
.REG
[2], REGB0
);
1871 CALL_standard___collection___abstract_collection___Sequence___append(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
1873 /* ./mmloader.nit:233 */
1874 if (!once_value_3
) {
1875 if (!once_value_4
) {
1876 fra
.me
.REG
[4] = BOX_NativeString("NIT_DIR");
1878 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB0
);
1879 once_value_4
= fra
.me
.REG
[4];
1880 register_static_object(&once_value_4
);
1881 } else fra
.me
.REG
[4] = once_value_4
;
1882 fra
.me
.REG
[4] = fra
.me
.REG
[4];
1883 fra
.me
.REG
[4] = CALL_standard___symbol___String___to_symbol(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
1884 fra
.me
.REG
[4] = CALL_standard___environ___Symbol___environ(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
1885 once_value_3
= fra
.me
.REG
[4];
1886 register_static_object(&once_value_3
);
1887 } else fra
.me
.REG
[4] = once_value_3
;
1888 fra
.me
.REG
[4] = fra
.me
.REG
[4];
1889 fra
.me
.REG
[2] = fra
.me
.REG
[4];
1890 /* ./mmloader.nit:234 */
1891 REGB0
= CALL_standard___collection___abstract_collection___Collection___is_empty(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
1892 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
1893 if (UNTAG_Bool(REGB0
)) {
1894 /* ./mmloader.nit:235 */
1896 fra
.me
.REG
[4] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
1897 if (!once_value_5
) {
1898 fra
.me
.REG
[3] = BOX_NativeString("");
1900 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB0
);
1901 once_value_5
= fra
.me
.REG
[3];
1902 register_static_object(&once_value_5
);
1903 } else fra
.me
.REG
[3] = once_value_5
;
1904 fra
.me
.REG
[3] = fra
.me
.REG
[3];
1905 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[3]);
1906 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[2]);
1907 if (!once_value_6
) {
1908 fra
.me
.REG
[2] = BOX_NativeString("/lib");
1910 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
1911 once_value_6
= fra
.me
.REG
[2];
1912 register_static_object(&once_value_6
);
1913 } else fra
.me
.REG
[2] = once_value_6
;
1914 fra
.me
.REG
[2] = fra
.me
.REG
[2];
1915 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[2]);
1916 fra
.me
.REG
[4] = CALL_standard___string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
1917 /* ./mmloader.nit:236 */
1918 REGB0
= CALL_standard___file___String___file_exists(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
1919 if (UNTAG_Bool(REGB0
)) {
1920 fra
.me
.REG
[2] = CALL_mmloader___ToolContext___paths(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1921 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[4]);
1924 /* ./mmloader.nit:239 */
1926 fra
.me
.REG
[4] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
1927 if (!once_value_7
) {
1928 fra
.me
.REG
[2] = BOX_NativeString("");
1930 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
1931 once_value_7
= fra
.me
.REG
[2];
1932 register_static_object(&once_value_7
);
1933 } else fra
.me
.REG
[2] = once_value_7
;
1934 fra
.me
.REG
[2] = fra
.me
.REG
[2];
1935 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[2]);
1936 fra
.me
.REG
[2] = CALL_standard___kernel___Object___sys(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1937 fra
.me
.REG
[2] = CALL_standard___string___Sys___program_name(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
1938 fra
.me
.REG
[2] = CALL_standard___file___String___dirname(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
1939 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[2]);
1940 if (!once_value_8
) {
1941 fra
.me
.REG
[2] = BOX_NativeString("/../lib");
1943 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
1944 once_value_8
= fra
.me
.REG
[2];
1945 register_static_object(&once_value_8
);
1946 } else fra
.me
.REG
[2] = once_value_8
;
1947 fra
.me
.REG
[2] = fra
.me
.REG
[2];
1948 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[2]);
1949 fra
.me
.REG
[4] = CALL_standard___string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
1950 /* ./mmloader.nit:240 */
1951 REGB0
= CALL_standard___file___String___file_exists(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
1952 if (UNTAG_Bool(REGB0
)) {
1953 fra
.me
.REG
[2] = CALL_mmloader___ToolContext___paths(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1954 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[4]);
1956 /* ./mmloader.nit:242 */
1957 fra
.me
.REG
[4] = CALL_mmloader___ToolContext___opt_log_dir(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1958 fra
.me
.REG
[4] = CALL_opts___Option___value(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
1959 REGB0
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
1960 if (UNTAG_Bool(REGB0
)) {
1962 REGB1
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
1963 if (UNTAG_Bool(REGB1
)) {
1964 REGB1
= TAG_Bool(false);
1967 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[4])(fra
.me
.REG
[4], NIT_NULL
);
1971 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
1972 if (UNTAG_Bool(REGB0
)) {
1973 fra
.me
.REG
[4] = CALL_mmloader___ToolContext___opt_log_dir(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1974 fra
.me
.REG
[4] = CALL_opts___Option___value(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
1975 REGB0
= TAG_Bool((fra
.me
.REG
[4]!=NIT_NULL
) && VAL_ISA(fra
.me
.REG
[4], COLOR_standard___string___String
, ID_standard___string___String
)) /*cast String*/;
1976 if (UNTAG_Bool(REGB0
)) {
1978 nit_abort("Cast failed", NULL
, LOCATE_mmloader
, 242);
1980 ATTR_mmloader___ToolContext____log_directory(fra
.me
.REG
[1]) = fra
.me
.REG
[4];
1982 /* ./mmloader.nit:243 */
1983 REGB0
= TAG_Bool(ATTR_mmloader___ToolContext____opt_log(fra
.me
.REG
[1])!=NIT_NULL
);
1984 if (UNTAG_Bool(REGB0
)) {
1986 nit_abort("Uninitialized attribute %s", "_opt_log", LOCATE_mmloader
, 243);
1988 fra
.me
.REG
[4] = ATTR_mmloader___ToolContext____opt_log(fra
.me
.REG
[1]);
1989 fra
.me
.REG
[4] = CALL_opts___Option___value(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
1990 if (UNTAG_Bool(fra
.me
.REG
[4])) {
1991 /* ./mmloader.nit:245 */
1992 fra
.me
.REG
[1] = CALL_mmloader___ToolContext___log_directory(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1993 CALL_standard___file___String___mkdir(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1995 stack_frame_head
= fra
.me
.prev
;
1998 val_t
mmloader___ToolContext___try_to_load(val_t p0
, val_t p1
, val_t p2
){
1999 struct {struct stack_frame_t me
; val_t MORE_REG
[9];} fra
;
2004 static val_t once_value_4
; /* Once value */
2005 static val_t once_value_5
; /* Once value */
2006 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2007 fra
.me
.file
= LOCATE_mmloader
;
2009 fra
.me
.meth
= LOCATE_mmloader___ToolContext___try_to_load
;
2010 fra
.me
.has_broke
= 0;
2011 fra
.me
.REG_size
= 10;
2012 fra
.me
.REG
[0] = NIT_NULL
;
2013 fra
.me
.REG
[1] = NIT_NULL
;
2014 fra
.me
.REG
[2] = NIT_NULL
;
2015 fra
.me
.REG
[3] = NIT_NULL
;
2016 fra
.me
.REG
[4] = NIT_NULL
;
2017 fra
.me
.REG
[5] = NIT_NULL
;
2018 fra
.me
.REG
[6] = NIT_NULL
;
2019 fra
.me
.REG
[7] = NIT_NULL
;
2020 fra
.me
.REG
[8] = NIT_NULL
;
2021 fra
.me
.REG
[9] = NIT_NULL
;
2025 /* ./mmloader.nit:255 */
2026 fra
.me
.REG
[3] = CALL_metamodel___abstractmetamodel___MMDirectory___modules(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
2027 fra
.me
.REG
[3] = CALL_standard___collection___abstract_collection___MapRead___values(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
2028 CALL_standard___collection___abstract_collection___Collection___iterate(fra
.me
.REG
[3])(fra
.me
.REG
[3], (&(fra
.me
)), ((fun_t
)OC_mmloader___ToolContext___try_to_load_1
));
2029 switch ((&(fra
.me
))->has_broke
) {
2031 case 1: (&(fra
.me
))->has_broke
= 0; goto label3
;
2033 /* ./mmloader.nit:261 */
2034 REGB0
= TAG_Bool(ATTR_mmloader___ToolContext____loaders(fra
.me
.REG
[0])!=NIT_NULL
);
2035 if (UNTAG_Bool(REGB0
)) {
2037 nit_abort("Uninitialized attribute %s", "_loaders", LOCATE_mmloader
, 261);
2039 fra
.me
.REG
[4] = ATTR_mmloader___ToolContext____loaders(fra
.me
.REG
[0]);
2040 /* ./../lib/standard//collection//array.nit:269 */
2042 /* ./../lib/standard//collection//array.nit:270 */
2043 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[4])!=NIT_NULL
);
2044 if (UNTAG_Bool(REGB1
)) {
2046 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 270);
2048 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[4]);
2049 /* ./../lib/standard//collection//array.nit:271 */
2050 fra
.me
.REG
[5] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[4]);
2051 /* ./../lib/standard//collection//array.nit:272 */
2053 /* ./../lib/standard//collection//array.nit:24 */
2054 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[4])!=NIT_NULL
);
2055 if (UNTAG_Bool(REGB1
)) {
2057 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
2059 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[4]);
2060 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
2061 if (UNTAG_Bool(REGB2
)) {
2063 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2065 /* ./../lib/standard//kernel.nit:232 */
2066 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
2067 /* ./../lib/standard//collection//array.nit:272 */
2068 if (UNTAG_Bool(REGB1
)) {
2069 /* ./../lib/standard//collection//array.nit:273 */
2070 REGB1
= TAG_Bool(fra
.me
.REG
[5]==NIT_NULL
);
2071 if (UNTAG_Bool(REGB1
)) {
2072 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 273);
2074 /* ./../lib/standard//collection//array.nit:718 */
2075 fra
.me
.REG
[6] = ((Nit_NativeArray
)fra
.me
.REG
[5])->val
[UNTAG_Int(REGB0
)];
2076 /* ./mmloader.nit:262 */
2077 fra
.me
.REG
[7] = CALL_mmloader___ModuleLoader___try_to_load_dir(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[1], fra
.me
.REG
[2]);
2078 /* ./mmloader.nit:263 */
2079 REGB1
= TAG_Bool(fra
.me
.REG
[7]==NIT_NULL
);
2080 if (UNTAG_Bool(REGB1
)) {
2082 REGB2
= TAG_Bool(fra
.me
.REG
[7]==NIT_NULL
);
2083 if (UNTAG_Bool(REGB2
)) {
2084 REGB2
= TAG_Bool(false);
2087 REGB2
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[7])(fra
.me
.REG
[7], NIT_NULL
);
2091 REGB1
= TAG_Bool(!UNTAG_Bool(REGB1
));
2092 if (UNTAG_Bool(REGB1
)) {
2093 /* ./mmloader.nit:264 */
2094 fra
.me
.REG
[8] = CALL_mmloader___ToolContext___try_to_load(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], fra
.me
.REG
[7]);
2095 /* ./mmloader.nit:265 */
2096 REGB1
= TAG_Bool(fra
.me
.REG
[8]==NIT_NULL
);
2097 if (UNTAG_Bool(REGB1
)) {
2099 REGB2
= TAG_Bool(fra
.me
.REG
[8]==NIT_NULL
);
2100 if (UNTAG_Bool(REGB2
)) {
2101 REGB2
= TAG_Bool(false);
2104 REGB2
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[8])(fra
.me
.REG
[8], NIT_NULL
);
2108 REGB1
= TAG_Bool(!UNTAG_Bool(REGB1
));
2109 if (UNTAG_Bool(REGB1
)) {
2110 /* ./mmloader.nit:266 */
2111 REGB1
= TAG_Bool(fra
.me
.REG
[7]==NIT_NULL
);
2112 if (UNTAG_Bool(REGB1
)) {
2113 nit_abort("Reciever is null", NULL
, LOCATE_mmloader
, 266);
2115 CALL_metamodel___abstractmetamodel___MMDirectory___owner__eq(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[8]);
2116 /* ./mmloader.nit:267 */
2117 CALL_metamodel___abstractmetamodel___MMDirectory___add_module(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[8]);
2118 /* ./mmloader.nit:268 */
2119 fra
.me
.REG
[3] = fra
.me
.REG
[8];
2123 /* ./mmloader.nit:272 */
2124 REGB1
= CALL_mmloader___ModuleLoader___can_handle(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[1], fra
.me
.REG
[2]);
2125 if (UNTAG_Bool(REGB1
)) {
2126 /* ./mmloader.nit:273 */
2127 fra
.me
.REG
[8] = CALL_metamodel___abstractmetamodel___MMDirectory___full_name_for(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
2128 /* ./mmloader.nit:274 */
2129 REGB1
= TAG_Bool(ATTR_mmloader___ToolContext____processing_modules(fra
.me
.REG
[0])!=NIT_NULL
);
2130 if (UNTAG_Bool(REGB1
)) {
2132 nit_abort("Uninitialized attribute %s", "_processing_modules", LOCATE_mmloader
, 274);
2134 fra
.me
.REG
[7] = ATTR_mmloader___ToolContext____processing_modules(fra
.me
.REG
[0]);
2135 REGB1
= CALL_standard___collection___abstract_collection___Collection___has(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[8]);
2136 if (UNTAG_Bool(REGB1
)) {
2137 /* ./mmloader.nit:276 */
2139 fra
.me
.REG
[7] = NEW_Array_standard___collection___array___Array___with_capacity(REGB1
);
2140 if (!once_value_4
) {
2141 fra
.me
.REG
[9] = BOX_NativeString("Error: Dependency loop for module ");
2142 REGB1
= TAG_Int(34);
2143 fra
.me
.REG
[9] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[9], REGB1
);
2144 once_value_4
= fra
.me
.REG
[9];
2145 register_static_object(&once_value_4
);
2146 } else fra
.me
.REG
[9] = once_value_4
;
2147 fra
.me
.REG
[9] = fra
.me
.REG
[9];
2148 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[9]);
2149 fra
.me
.REG
[9] = CALL_standard___string___Object___to_s(fra
.me
.REG
[8])(fra
.me
.REG
[8]);
2150 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[9]);
2151 if (!once_value_5
) {
2152 fra
.me
.REG
[9] = BOX_NativeString("");
2154 fra
.me
.REG
[9] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[9], REGB1
);
2155 once_value_5
= fra
.me
.REG
[9];
2156 register_static_object(&once_value_5
);
2157 } else fra
.me
.REG
[9] = once_value_5
;
2158 fra
.me
.REG
[9] = fra
.me
.REG
[9];
2159 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[9]);
2160 fra
.me
.REG
[7] = CALL_standard___string___Object___to_s(fra
.me
.REG
[7])(fra
.me
.REG
[7]);
2161 CALL_mmloader___ToolContext___fatal_error(fra
.me
.REG
[0])(fra
.me
.REG
[0], NIT_NULL
, fra
.me
.REG
[7]);
2163 /* ./mmloader.nit:278 */
2164 REGB1
= TAG_Bool(ATTR_mmloader___ToolContext____processing_modules(fra
.me
.REG
[0])!=NIT_NULL
);
2165 if (UNTAG_Bool(REGB1
)) {
2167 nit_abort("Uninitialized attribute %s", "_processing_modules", LOCATE_mmloader
, 278);
2169 fra
.me
.REG
[7] = ATTR_mmloader___ToolContext____processing_modules(fra
.me
.REG
[0]);
2170 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[8]);
2171 /* ./mmloader.nit:279 */
2172 fra
.me
.REG
[6] = CALL_mmloader___ModuleLoader___load_and_process_module(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[0], fra
.me
.REG
[1], fra
.me
.REG
[2]);
2173 /* ./mmloader.nit:280 */
2174 REGB1
= TAG_Bool(ATTR_mmloader___ToolContext____processing_modules(fra
.me
.REG
[0])!=NIT_NULL
);
2175 if (UNTAG_Bool(REGB1
)) {
2177 nit_abort("Uninitialized attribute %s", "_processing_modules", LOCATE_mmloader
, 280);
2179 fra
.me
.REG
[7] = ATTR_mmloader___ToolContext____processing_modules(fra
.me
.REG
[0]);
2180 CALL_standard___collection___abstract_collection___RemovableCollection___remove(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[8]);
2181 /* ./mmloader.nit:282 */
2182 CALL_metamodel___abstractmetamodel___MMDirectory___add_module(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[6]);
2183 /* ./mmloader.nit:283 */
2184 fra
.me
.REG
[3] = fra
.me
.REG
[6];
2187 /* ./../lib/standard//collection//array.nit:274 */
2189 /* ./../lib/standard//kernel.nit:235 */
2190 REGB1
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
2191 /* ./../lib/standard//collection//array.nit:274 */
2194 /* ./../lib/standard//collection//array.nit:272 */
2199 /* ./mmloader.nit:286 */
2200 fra
.me
.REG
[3] = NIT_NULL
;
2203 stack_frame_head
= fra
.me
.prev
;
2204 return fra
.me
.REG
[3];
2206 void OC_mmloader___ToolContext___try_to_load_1(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
){
2207 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
2212 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2213 fra
.me
.file
= LOCATE_mmloader
;
2215 fra
.me
.meth
= LOCATE_mmloader___ToolContext___try_to_load
;
2216 fra
.me
.has_broke
= 0;
2217 fra
.me
.REG_size
= 2;
2218 fra
.me
.REG
[0] = NIT_NULL
;
2219 fra
.me
.REG
[1] = NIT_NULL
;
2220 fra
.me
.closure_ctx
= closctx_param
;
2221 fra
.me
.closure_funs
= CREG
;
2223 CREG
[0] = clos_fun0
;
2224 /* ./mmloader.nit:256 */
2225 fra
.me
.REG
[1] = CALL_metamodel___abstractmetamodel___MMModule___name(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2226 REGB0
= TAG_Bool(IS_EQUAL_OO(fra
.me
.REG
[1],closctx
->REG
[1]));
2227 if (UNTAG_Bool(REGB0
)) {
2229 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[1])(fra
.me
.REG
[1], closctx
->REG
[1]);
2232 if (UNTAG_Bool(REGB0
)) {
2233 closctx
->REG
[3] = fra
.me
.REG
[0];
2234 closctx
->has_broke
= 1;
2238 stack_frame_head
= fra
.me
.prev
;
2241 val_t
mmloader___ToolContext___get_module_from_filename(val_t p0
, val_t p1
){
2242 struct {struct stack_frame_t me
; val_t MORE_REG
[6];} fra
;
2246 static val_t once_value_1
; /* Once value */
2247 static val_t once_value_3
; /* Once value */
2248 static val_t once_value_4
; /* Once value */
2249 static val_t once_value_5
; /* Once value */
2250 static val_t once_value_6
; /* Once value */
2251 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2252 fra
.me
.file
= LOCATE_mmloader
;
2254 fra
.me
.meth
= LOCATE_mmloader___ToolContext___get_module_from_filename
;
2255 fra
.me
.has_broke
= 0;
2256 fra
.me
.REG_size
= 7;
2257 fra
.me
.REG
[0] = NIT_NULL
;
2258 fra
.me
.REG
[1] = NIT_NULL
;
2259 fra
.me
.REG
[2] = NIT_NULL
;
2260 fra
.me
.REG
[3] = NIT_NULL
;
2261 fra
.me
.REG
[4] = NIT_NULL
;
2262 fra
.me
.REG
[5] = NIT_NULL
;
2263 fra
.me
.REG
[6] = NIT_NULL
;
2266 /* ./mmloader.nit:298 */
2267 fra
.me
.REG
[2] = CALL_standard___file___String___dirname(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
2268 /* ./mmloader.nit:299 */
2269 if (!once_value_1
) {
2270 fra
.me
.REG
[3] = BOX_NativeString(".nit");
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 fra
.me
.REG
[3] = CALL_standard___file___String___basename(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[3]);
2278 fra
.me
.REG
[3] = CALL_standard___symbol___String___to_symbol(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
2279 /* ./mmloader.nit:301 */
2280 fra
.me
.REG
[2] = CALL_mmloader___ToolContext___directory_for(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[2]);
2281 /* ./mmloader.nit:303 */
2282 fra
.me
.REG
[4] = CALL_standard___string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
2283 REGB0
= TAG_Bool(IS_EQUAL_OO(fra
.me
.REG
[4],fra
.me
.REG
[1]));
2284 if (UNTAG_Bool(REGB0
)) {
2286 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[1]);
2289 if (UNTAG_Bool(REGB0
)) {
2290 /* ./mmloader.nit:306 */
2291 fra
.me
.REG
[4] = CALL_mmloader___ToolContext___try_to_load(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[3], fra
.me
.REG
[2]);
2292 /* ./mmloader.nit:307 */
2293 REGB0
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
2294 if (UNTAG_Bool(REGB0
)) {
2296 REGB1
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
2297 if (UNTAG_Bool(REGB1
)) {
2298 REGB1
= TAG_Bool(false);
2301 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[4])(fra
.me
.REG
[4], NIT_NULL
);
2305 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
2306 if (UNTAG_Bool(REGB0
)) {
2309 /* ./mmloader.nit:310 */
2310 fra
.me
.REG
[5] = CALL_mmloader___ToolContext___get_module(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[3], NIT_NULL
);
2311 fra
.me
.REG
[4] = fra
.me
.REG
[5];
2314 /* ./mmloader.nit:313 */
2315 REGB0
= CALL_standard___file___String___file_exists(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
2316 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
2317 if (UNTAG_Bool(REGB0
)) {
2318 /* ./mmloader.nit:314 */
2320 fra
.me
.REG
[5] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
2321 if (!once_value_3
) {
2322 fra
.me
.REG
[6] = BOX_NativeString("Error: File ");
2323 REGB0
= TAG_Int(12);
2324 fra
.me
.REG
[6] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[6], REGB0
);
2325 once_value_3
= fra
.me
.REG
[6];
2326 register_static_object(&once_value_3
);
2327 } else fra
.me
.REG
[6] = once_value_3
;
2328 fra
.me
.REG
[6] = fra
.me
.REG
[6];
2329 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
2330 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[1]);
2331 if (!once_value_4
) {
2332 fra
.me
.REG
[6] = BOX_NativeString(" not found.");
2333 REGB0
= TAG_Int(11);
2334 fra
.me
.REG
[6] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[6], REGB0
);
2335 once_value_4
= fra
.me
.REG
[6];
2336 register_static_object(&once_value_4
);
2337 } else fra
.me
.REG
[6] = once_value_4
;
2338 fra
.me
.REG
[6] = fra
.me
.REG
[6];
2339 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
2340 fra
.me
.REG
[5] = CALL_standard___string___Object___to_s(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
2341 CALL_mmloader___ToolContext___fatal_error(fra
.me
.REG
[0])(fra
.me
.REG
[0], NIT_NULL
, fra
.me
.REG
[5]);
2342 /* ./mmloader.nit:315 */
2343 nit_abort("Aborted", NULL
, LOCATE_mmloader
, 315);
2345 /* ./mmloader.nit:319 */
2346 fra
.me
.REG
[2] = CALL_mmloader___ToolContext___try_to_load(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[3], fra
.me
.REG
[2]);
2347 /* ./mmloader.nit:320 */
2348 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
2349 if (UNTAG_Bool(REGB0
)) {
2351 REGB1
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
2352 if (UNTAG_Bool(REGB1
)) {
2353 REGB1
= TAG_Bool(false);
2356 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], NIT_NULL
);
2360 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
2361 if (UNTAG_Bool(REGB0
)) {
2362 fra
.me
.REG
[4] = fra
.me
.REG
[2];
2365 /* ./mmloader.nit:322 */
2367 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
2368 if (!once_value_5
) {
2369 fra
.me
.REG
[3] = BOX_NativeString("Error: ");
2371 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB0
);
2372 once_value_5
= fra
.me
.REG
[3];
2373 register_static_object(&once_value_5
);
2374 } else fra
.me
.REG
[3] = once_value_5
;
2375 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2376 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2377 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
2378 if (!once_value_6
) {
2379 fra
.me
.REG
[1] = BOX_NativeString(" is not a NIT source module.");
2380 REGB0
= TAG_Int(28);
2381 fra
.me
.REG
[1] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[1], REGB0
);
2382 once_value_6
= fra
.me
.REG
[1];
2383 register_static_object(&once_value_6
);
2384 } else fra
.me
.REG
[1] = once_value_6
;
2385 fra
.me
.REG
[1] = fra
.me
.REG
[1];
2386 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
2387 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
2388 CALL_mmloader___ToolContext___fatal_error(fra
.me
.REG
[0])(fra
.me
.REG
[0], NIT_NULL
, fra
.me
.REG
[2]);
2389 /* ./mmloader.nit:323 */
2390 nit_abort("Aborted", NULL
, LOCATE_mmloader
, 323);
2392 stack_frame_head
= fra
.me
.prev
;
2393 return fra
.me
.REG
[4];
2395 val_t
mmloader___ToolContext___get_module(val_t p0
, val_t p1
, val_t p2
){
2396 struct {struct stack_frame_t me
; val_t MORE_REG
[5];} fra
;
2401 static val_t once_value_4
; /* Once value */
2402 static val_t once_value_5
; /* Once value */
2403 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2404 fra
.me
.file
= LOCATE_mmloader
;
2406 fra
.me
.meth
= LOCATE_mmloader___ToolContext___get_module
;
2407 fra
.me
.has_broke
= 0;
2408 fra
.me
.REG_size
= 6;
2409 fra
.me
.REG
[0] = NIT_NULL
;
2410 fra
.me
.REG
[1] = NIT_NULL
;
2411 fra
.me
.REG
[2] = NIT_NULL
;
2412 fra
.me
.REG
[3] = NIT_NULL
;
2413 fra
.me
.REG
[4] = NIT_NULL
;
2414 fra
.me
.REG
[5] = NIT_NULL
;
2418 /* ./mmloader.nit:330 */
2419 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
2420 if (UNTAG_Bool(REGB0
)) {
2422 REGB1
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
2423 if (UNTAG_Bool(REGB1
)) {
2424 REGB1
= TAG_Bool(false);
2427 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], NIT_NULL
);
2431 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
2432 if (UNTAG_Bool(REGB0
)) {
2433 /* ./mmloader.nit:331 */
2434 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
2435 if (UNTAG_Bool(REGB0
)) {
2436 nit_abort("Reciever is null", NULL
, LOCATE_mmloader
, 331);
2438 fra
.me
.REG
[2] = CALL_metamodel___abstractmetamodel___MMModule___directory(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
2439 /* ./mmloader.nit:332 */
2441 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
2442 if (UNTAG_Bool(REGB0
)) {
2444 REGB1
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
2445 if (UNTAG_Bool(REGB1
)) {
2446 REGB1
= TAG_Bool(false);
2449 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], NIT_NULL
);
2453 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
2454 if (UNTAG_Bool(REGB0
)) {
2455 /* ./mmloader.nit:333 */
2456 fra
.me
.REG
[3] = CALL_mmloader___ToolContext___try_to_load(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], fra
.me
.REG
[2]);
2457 /* ./mmloader.nit:334 */
2458 REGB0
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
2459 if (UNTAG_Bool(REGB0
)) {
2461 REGB1
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
2462 if (UNTAG_Bool(REGB1
)) {
2463 REGB1
= TAG_Bool(false);
2466 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[3])(fra
.me
.REG
[3], NIT_NULL
);
2470 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
2471 if (UNTAG_Bool(REGB0
)) {
2474 /* ./mmloader.nit:335 */
2475 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
2476 if (UNTAG_Bool(REGB0
)) {
2477 nit_abort("Reciever is null", NULL
, LOCATE_mmloader
, 335);
2479 fra
.me
.REG
[4] = CALL_metamodel___abstractmetamodel___MMDirectory___parent(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
2480 fra
.me
.REG
[2] = fra
.me
.REG
[4];
2482 /* ./mmloader.nit:332 */
2488 /* ./mmloader.nit:339 */
2489 fra
.me
.REG
[2] = CALL_mmloader___ToolContext___paths(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2490 /* ./../lib/standard//collection//array.nit:269 */
2492 /* ./../lib/standard//collection//array.nit:270 */
2493 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
2494 if (UNTAG_Bool(REGB1
)) {
2496 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 270);
2498 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2]);
2499 /* ./../lib/standard//collection//array.nit:271 */
2500 fra
.me
.REG
[4] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[2]);
2501 /* ./../lib/standard//collection//array.nit:272 */
2503 /* ./../lib/standard//collection//array.nit:24 */
2504 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
2505 if (UNTAG_Bool(REGB1
)) {
2507 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
2509 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2]);
2510 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
2511 if (UNTAG_Bool(REGB2
)) {
2513 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2515 /* ./../lib/standard//kernel.nit:232 */
2516 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
2517 /* ./../lib/standard//collection//array.nit:272 */
2518 if (UNTAG_Bool(REGB1
)) {
2519 /* ./../lib/standard//collection//array.nit:273 */
2520 REGB1
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
2521 if (UNTAG_Bool(REGB1
)) {
2522 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 273);
2524 /* ./../lib/standard//collection//array.nit:718 */
2525 fra
.me
.REG
[5] = ((Nit_NativeArray
)fra
.me
.REG
[4])->val
[UNTAG_Int(REGB0
)];
2526 /* ./mmloader.nit:340 */
2527 fra
.me
.REG
[5] = CALL_mmloader___ToolContext___directory_for(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[5]);
2528 fra
.me
.REG
[5] = CALL_mmloader___ToolContext___try_to_load(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], fra
.me
.REG
[5]);
2529 /* ./mmloader.nit:341 */
2530 REGB1
= TAG_Bool(fra
.me
.REG
[5]==NIT_NULL
);
2531 if (UNTAG_Bool(REGB1
)) {
2533 REGB2
= TAG_Bool(fra
.me
.REG
[5]==NIT_NULL
);
2534 if (UNTAG_Bool(REGB2
)) {
2535 REGB2
= TAG_Bool(false);
2538 REGB2
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[5])(fra
.me
.REG
[5], NIT_NULL
);
2542 REGB1
= TAG_Bool(!UNTAG_Bool(REGB1
));
2543 if (UNTAG_Bool(REGB1
)) {
2544 fra
.me
.REG
[3] = fra
.me
.REG
[5];
2547 /* ./../lib/standard//collection//array.nit:274 */
2549 /* ./../lib/standard//kernel.nit:235 */
2550 REGB1
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
2551 /* ./../lib/standard//collection//array.nit:274 */
2554 /* ./../lib/standard//collection//array.nit:272 */
2559 /* ./mmloader.nit:344 */
2561 fra
.me
.REG
[4] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
2562 if (!once_value_4
) {
2563 fra
.me
.REG
[2] = BOX_NativeString("Error: No ressource found for module ");
2564 REGB0
= TAG_Int(37);
2565 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
2566 once_value_4
= fra
.me
.REG
[2];
2567 register_static_object(&once_value_4
);
2568 } else fra
.me
.REG
[2] = once_value_4
;
2569 fra
.me
.REG
[2] = fra
.me
.REG
[2];
2570 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[2]);
2571 fra
.me
.REG
[1] = CALL_standard___string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
2572 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[1]);
2573 if (!once_value_5
) {
2574 fra
.me
.REG
[1] = BOX_NativeString(".");
2576 fra
.me
.REG
[1] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[1], REGB0
);
2577 once_value_5
= fra
.me
.REG
[1];
2578 register_static_object(&once_value_5
);
2579 } else fra
.me
.REG
[1] = once_value_5
;
2580 fra
.me
.REG
[1] = fra
.me
.REG
[1];
2581 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[1]);
2582 fra
.me
.REG
[4] = CALL_standard___string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
2583 CALL_mmloader___ToolContext___fatal_error(fra
.me
.REG
[0])(fra
.me
.REG
[0], NIT_NULL
, fra
.me
.REG
[4]);
2584 /* ./mmloader.nit:345 */
2585 nit_abort("Aborted", NULL
, LOCATE_mmloader
, 345);
2587 stack_frame_head
= fra
.me
.prev
;
2588 return fra
.me
.REG
[3];
2590 val_t
mmloader___ToolContext___directory_for(val_t p0
, val_t p1
){
2591 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
2594 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2595 fra
.me
.file
= LOCATE_mmloader
;
2597 fra
.me
.meth
= LOCATE_mmloader___ToolContext___directory_for
;
2598 fra
.me
.has_broke
= 0;
2599 fra
.me
.REG_size
= 4;
2600 fra
.me
.REG
[0] = NIT_NULL
;
2601 fra
.me
.REG
[1] = NIT_NULL
;
2602 fra
.me
.REG
[2] = NIT_NULL
;
2603 fra
.me
.REG
[3] = NIT_NULL
;
2606 /* ./mmloader.nit:351 */
2607 REGB0
= TAG_Bool(ATTR_mmloader___ToolContext____path_dirs(fra
.me
.REG
[0])!=NIT_NULL
);
2608 if (UNTAG_Bool(REGB0
)) {
2610 nit_abort("Uninitialized attribute %s", "_path_dirs", LOCATE_mmloader
, 351);
2612 fra
.me
.REG
[2] = ATTR_mmloader___ToolContext____path_dirs(fra
.me
.REG
[0]);
2613 REGB0
= CALL_standard___collection___abstract_collection___MapRead___has_key(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
2614 if (UNTAG_Bool(REGB0
)) {
2615 REGB0
= TAG_Bool(ATTR_mmloader___ToolContext____path_dirs(fra
.me
.REG
[0])!=NIT_NULL
);
2616 if (UNTAG_Bool(REGB0
)) {
2618 nit_abort("Uninitialized attribute %s", "_path_dirs", LOCATE_mmloader
, 351);
2620 fra
.me
.REG
[2] = ATTR_mmloader___ToolContext____path_dirs(fra
.me
.REG
[0]);
2621 fra
.me
.REG
[2] = CALL_standard___collection___abstract_collection___MapRead_____bra(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
2624 /* ./mmloader.nit:352 */
2625 fra
.me
.REG
[3] = CALL_standard___symbol___String___to_symbol(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
2626 fra
.me
.REG
[3] = NEW_MMDirectory_metamodel___abstractmetamodel___MMDirectory___init(fra
.me
.REG
[3], fra
.me
.REG
[1], NIT_NULL
);
2627 /* ./mmloader.nit:353 */
2628 REGB0
= TAG_Bool(ATTR_mmloader___ToolContext____path_dirs(fra
.me
.REG
[0])!=NIT_NULL
);
2629 if (UNTAG_Bool(REGB0
)) {
2631 nit_abort("Uninitialized attribute %s", "_path_dirs", LOCATE_mmloader
, 353);
2633 fra
.me
.REG
[0] = ATTR_mmloader___ToolContext____path_dirs(fra
.me
.REG
[0]);
2634 CALL_standard___collection___abstract_collection___Map_____braeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], fra
.me
.REG
[3]);
2635 /* ./mmloader.nit:354 */
2636 fra
.me
.REG
[2] = fra
.me
.REG
[3];
2639 stack_frame_head
= fra
.me
.prev
;
2640 return fra
.me
.REG
[2];
2642 void mmloader___ToolContext___register_loader(val_t p0
, val_t p1
){
2643 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
2646 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2647 fra
.me
.file
= LOCATE_mmloader
;
2649 fra
.me
.meth
= LOCATE_mmloader___ToolContext___register_loader
;
2650 fra
.me
.has_broke
= 0;
2651 fra
.me
.REG_size
= 2;
2652 fra
.me
.REG
[0] = NIT_NULL
;
2653 fra
.me
.REG
[1] = NIT_NULL
;
2656 /* ./mmloader.nit:361 */
2657 REGB0
= TAG_Bool(ATTR_mmloader___ToolContext____loaders(fra
.me
.REG
[0])!=NIT_NULL
);
2658 if (UNTAG_Bool(REGB0
)) {
2660 nit_abort("Uninitialized attribute %s", "_loaders", LOCATE_mmloader
, 361);
2662 fra
.me
.REG
[0] = ATTR_mmloader___ToolContext____loaders(fra
.me
.REG
[0]);
2663 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
2664 stack_frame_head
= fra
.me
.prev
;
2667 val_t
mmloader___ModuleLoader___file_type(val_t p0
){
2668 struct {struct stack_frame_t me
;} fra
;
2670 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2671 fra
.me
.file
= LOCATE_mmloader
;
2673 fra
.me
.meth
= LOCATE_mmloader___ModuleLoader___file_type
;
2674 fra
.me
.has_broke
= 0;
2675 fra
.me
.REG_size
= 0;
2676 /* ./mmloader.nit:369 */
2677 nit_abort("Deferred method called", NULL
, LOCATE_mmloader
, 369);
2678 stack_frame_head
= fra
.me
.prev
;
2681 val_t
mmloader___ModuleLoader___try_to_load_dir(val_t p0
, val_t p1
, val_t p2
){
2682 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
2685 static val_t once_value_1
; /* Once value */
2686 static val_t once_value_2
; /* Once value */
2687 static val_t once_value_3
; /* Once value */
2688 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2689 fra
.me
.file
= LOCATE_mmloader
;
2691 fra
.me
.meth
= LOCATE_mmloader___ModuleLoader___try_to_load_dir
;
2692 fra
.me
.has_broke
= 0;
2693 fra
.me
.REG_size
= 4;
2694 fra
.me
.REG
[0] = NIT_NULL
;
2695 fra
.me
.REG
[1] = NIT_NULL
;
2696 fra
.me
.REG
[2] = NIT_NULL
;
2697 fra
.me
.REG
[3] = NIT_NULL
;
2701 /* ./mmloader.nit:375 */
2703 fra
.me
.REG
[0] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
2704 if (!once_value_1
) {
2705 fra
.me
.REG
[3] = BOX_NativeString("");
2707 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB0
);
2708 once_value_1
= fra
.me
.REG
[3];
2709 register_static_object(&once_value_1
);
2710 } else fra
.me
.REG
[3] = once_value_1
;
2711 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2712 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[3]);
2713 fra
.me
.REG
[3] = CALL_metamodel___abstractmetamodel___MMDirectory___path(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
2714 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[3]);
2715 if (!once_value_2
) {
2716 fra
.me
.REG
[3] = BOX_NativeString("/");
2718 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB0
);
2719 once_value_2
= fra
.me
.REG
[3];
2720 register_static_object(&once_value_2
);
2721 } else fra
.me
.REG
[3] = once_value_2
;
2722 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2723 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[3]);
2724 fra
.me
.REG
[3] = CALL_standard___string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
2725 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[3]);
2726 if (!once_value_3
) {
2727 fra
.me
.REG
[3] = BOX_NativeString("/");
2729 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB0
);
2730 once_value_3
= fra
.me
.REG
[3];
2731 register_static_object(&once_value_3
);
2732 } else fra
.me
.REG
[3] = once_value_3
;
2733 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2734 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[3]);
2735 fra
.me
.REG
[0] = CALL_standard___string___Object___to_s(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2736 /* ./mmloader.nit:376 */
2737 REGB0
= CALL_standard___file___String___file_exists(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2738 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
2739 if (UNTAG_Bool(REGB0
)) {
2740 fra
.me
.REG
[3] = NIT_NULL
;
2743 /* ./mmloader.nit:378 */
2744 fra
.me
.REG
[1] = CALL_metamodel___abstractmetamodel___MMDirectory___full_name_for(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
2745 fra
.me
.REG
[2] = NEW_MMDirectory_metamodel___abstractmetamodel___MMDirectory___init(fra
.me
.REG
[1], fra
.me
.REG
[0], fra
.me
.REG
[2]);
2746 /* ./mmloader.nit:379 */
2747 fra
.me
.REG
[3] = fra
.me
.REG
[2];
2750 stack_frame_head
= fra
.me
.prev
;
2751 return fra
.me
.REG
[3];
2753 val_t
mmloader___ModuleLoader___can_handle(val_t p0
, val_t p1
, val_t p2
){
2754 struct {struct stack_frame_t me
; val_t MORE_REG
[4];} fra
;
2758 static val_t once_value_1
; /* Once value */
2759 static val_t once_value_2
; /* Once value */
2760 static val_t once_value_3
; /* Once value */
2761 static val_t once_value_4
; /* Once value */
2762 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2763 fra
.me
.file
= LOCATE_mmloader
;
2765 fra
.me
.meth
= LOCATE_mmloader___ModuleLoader___can_handle
;
2766 fra
.me
.has_broke
= 0;
2767 fra
.me
.REG_size
= 5;
2768 fra
.me
.REG
[0] = NIT_NULL
;
2769 fra
.me
.REG
[1] = NIT_NULL
;
2770 fra
.me
.REG
[2] = NIT_NULL
;
2771 fra
.me
.REG
[3] = NIT_NULL
;
2772 fra
.me
.REG
[4] = NIT_NULL
;
2776 /* ./mmloader.nit:386 */
2778 fra
.me
.REG
[3] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
2779 if (!once_value_1
) {
2780 fra
.me
.REG
[4] = BOX_NativeString("");
2782 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB0
);
2783 once_value_1
= fra
.me
.REG
[4];
2784 register_static_object(&once_value_1
);
2785 } else fra
.me
.REG
[4] = once_value_1
;
2786 fra
.me
.REG
[4] = fra
.me
.REG
[4];
2787 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
2788 fra
.me
.REG
[2] = CALL_metamodel___abstractmetamodel___MMDirectory___path(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
2789 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[2]);
2790 if (!once_value_2
) {
2791 fra
.me
.REG
[2] = BOX_NativeString("/");
2793 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
2794 once_value_2
= fra
.me
.REG
[2];
2795 register_static_object(&once_value_2
);
2796 } else fra
.me
.REG
[2] = once_value_2
;
2797 fra
.me
.REG
[2] = fra
.me
.REG
[2];
2798 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[2]);
2799 fra
.me
.REG
[1] = CALL_standard___string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
2800 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[1]);
2801 if (!once_value_3
) {
2802 fra
.me
.REG
[1] = BOX_NativeString(".");
2804 fra
.me
.REG
[1] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[1], REGB0
);
2805 once_value_3
= fra
.me
.REG
[1];
2806 register_static_object(&once_value_3
);
2807 } else fra
.me
.REG
[1] = once_value_3
;
2808 fra
.me
.REG
[1] = fra
.me
.REG
[1];
2809 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[1]);
2810 fra
.me
.REG
[0] = CALL_mmloader___ModuleLoader___file_type(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2811 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[0]);
2812 if (!once_value_4
) {
2813 fra
.me
.REG
[0] = BOX_NativeString("");
2815 fra
.me
.REG
[0] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[0], REGB0
);
2816 once_value_4
= fra
.me
.REG
[0];
2817 register_static_object(&once_value_4
);
2818 } else fra
.me
.REG
[0] = once_value_4
;
2819 fra
.me
.REG
[0] = fra
.me
.REG
[0];
2820 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[0]);
2821 fra
.me
.REG
[3] = CALL_standard___string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
2822 /* ./mmloader.nit:387 */
2823 REGB0
= CALL_standard___file___String___file_exists(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
2824 if (UNTAG_Bool(REGB0
)) {
2825 REGB0
= TAG_Bool(true);
2828 /* ./mmloader.nit:388 */
2829 REGB1
= TAG_Bool(false);
2833 stack_frame_head
= fra
.me
.prev
;
2836 val_t
mmloader___ModuleLoader___load_and_process_module(val_t p0
, val_t p1
, val_t p2
, val_t p3
){
2837 struct {struct stack_frame_t me
; val_t MORE_REG
[5];} fra
;
2840 static val_t once_value_1
; /* Once value */
2841 static val_t once_value_2
; /* Once value */
2842 static val_t once_value_3
; /* Once value */
2843 static val_t once_value_4
; /* Once value */
2844 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2845 fra
.me
.file
= LOCATE_mmloader
;
2847 fra
.me
.meth
= LOCATE_mmloader___ModuleLoader___load_and_process_module
;
2848 fra
.me
.has_broke
= 0;
2849 fra
.me
.REG_size
= 6;
2850 fra
.me
.REG
[0] = NIT_NULL
;
2851 fra
.me
.REG
[1] = NIT_NULL
;
2852 fra
.me
.REG
[2] = NIT_NULL
;
2853 fra
.me
.REG
[3] = NIT_NULL
;
2854 fra
.me
.REG
[4] = NIT_NULL
;
2855 fra
.me
.REG
[5] = NIT_NULL
;
2860 /* ./mmloader.nit:395 */
2862 fra
.me
.REG
[4] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
2863 if (!once_value_1
) {
2864 fra
.me
.REG
[5] = BOX_NativeString("");
2866 fra
.me
.REG
[5] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[5], REGB0
);
2867 once_value_1
= fra
.me
.REG
[5];
2868 register_static_object(&once_value_1
);
2869 } else fra
.me
.REG
[5] = once_value_1
;
2870 fra
.me
.REG
[5] = fra
.me
.REG
[5];
2871 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
2872 fra
.me
.REG
[5] = CALL_metamodel___abstractmetamodel___MMDirectory___path(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
2873 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
2874 if (!once_value_2
) {
2875 fra
.me
.REG
[5] = BOX_NativeString("/");
2877 fra
.me
.REG
[5] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[5], REGB0
);
2878 once_value_2
= fra
.me
.REG
[5];
2879 register_static_object(&once_value_2
);
2880 } else fra
.me
.REG
[5] = once_value_2
;
2881 fra
.me
.REG
[5] = fra
.me
.REG
[5];
2882 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
2883 fra
.me
.REG
[5] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
2884 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
2885 if (!once_value_3
) {
2886 fra
.me
.REG
[5] = BOX_NativeString(".");
2888 fra
.me
.REG
[5] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[5], REGB0
);
2889 once_value_3
= fra
.me
.REG
[5];
2890 register_static_object(&once_value_3
);
2891 } else fra
.me
.REG
[5] = once_value_3
;
2892 fra
.me
.REG
[5] = fra
.me
.REG
[5];
2893 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
2894 fra
.me
.REG
[5] = CALL_mmloader___ModuleLoader___file_type(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2895 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
2896 if (!once_value_4
) {
2897 fra
.me
.REG
[5] = BOX_NativeString("");
2899 fra
.me
.REG
[5] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[5], REGB0
);
2900 once_value_4
= fra
.me
.REG
[5];
2901 register_static_object(&once_value_4
);
2902 } else fra
.me
.REG
[5] = once_value_4
;
2903 fra
.me
.REG
[5] = fra
.me
.REG
[5];
2904 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
2905 fra
.me
.REG
[4] = CALL_standard___string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
2906 /* ./mmloader.nit:396 */
2907 fra
.me
.REG
[4] = CALL_mmloader___ModuleLoader___load_module(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], fra
.me
.REG
[2], fra
.me
.REG
[3], fra
.me
.REG
[4]);
2908 /* ./mmloader.nit:397 */
2909 fra
.me
.REG
[3] = CALL_mmloader___ToolContext___opt_only_parse(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
2910 fra
.me
.REG
[3] = CALL_opts___Option___value(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
2911 REGB0
= TAG_Bool(!UNTAG_Bool(fra
.me
.REG
[3]));
2912 if (UNTAG_Bool(REGB0
)) {
2913 CALL_mmloader___ModuleLoader___process_metamodel(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], fra
.me
.REG
[4]);
2915 /* ./mmloader.nit:398 */
2918 stack_frame_head
= fra
.me
.prev
;
2919 return fra
.me
.REG
[4];
2921 val_t
mmloader___ModuleLoader___load_module(val_t p0
, val_t p1
, val_t p2
, val_t p3
, val_t p4
){
2922 struct {struct stack_frame_t me
; val_t MORE_REG
[7];} fra
;
2926 static val_t once_value_1
; /* Once value */
2927 static val_t once_value_2
; /* Once value */
2928 static val_t once_value_3
; /* Once value */
2929 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2930 fra
.me
.file
= LOCATE_mmloader
;
2932 fra
.me
.meth
= LOCATE_mmloader___ModuleLoader___load_module
;
2933 fra
.me
.has_broke
= 0;
2934 fra
.me
.REG_size
= 8;
2935 fra
.me
.REG
[0] = NIT_NULL
;
2936 fra
.me
.REG
[1] = NIT_NULL
;
2937 fra
.me
.REG
[2] = NIT_NULL
;
2938 fra
.me
.REG
[3] = NIT_NULL
;
2939 fra
.me
.REG
[4] = NIT_NULL
;
2940 fra
.me
.REG
[5] = NIT_NULL
;
2941 fra
.me
.REG
[6] = NIT_NULL
;
2942 fra
.me
.REG
[7] = NIT_NULL
;
2948 /* ./mmloader.nit:405 */
2949 if (!once_value_1
) {
2950 fra
.me
.REG
[5] = BOX_NativeString("-");
2952 fra
.me
.REG
[5] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[5], REGB0
);
2953 once_value_1
= fra
.me
.REG
[5];
2954 register_static_object(&once_value_1
);
2955 } else fra
.me
.REG
[5] = once_value_1
;
2956 fra
.me
.REG
[5] = fra
.me
.REG
[5];
2957 REGB0
= TAG_Bool(IS_EQUAL_OO(fra
.me
.REG
[4],fra
.me
.REG
[5]));
2958 if (UNTAG_Bool(REGB0
)) {
2960 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
2963 if (UNTAG_Bool(REGB0
)) {
2964 /* ./mmloader.nit:406 */
2965 fra
.me
.REG
[5] = CALL_standard___file___Object___stdin(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2967 /* ./mmloader.nit:408 */
2968 fra
.me
.REG
[6] = CALL_standard___string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
2969 fra
.me
.REG
[6] = NEW_IFStream_standard___file___IFStream___open(fra
.me
.REG
[6]);
2970 fra
.me
.REG
[5] = fra
.me
.REG
[6];
2972 /* ./mmloader.nit:411 */
2973 REGB0
= CALL_standard___stream___IStream___eof(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
2974 if (UNTAG_Bool(REGB0
)) {
2975 /* ./mmloader.nit:412 */
2977 fra
.me
.REG
[6] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
2978 if (!once_value_2
) {
2979 fra
.me
.REG
[7] = BOX_NativeString("Error: Problem in opening file ");
2980 REGB0
= TAG_Int(31);
2981 fra
.me
.REG
[7] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[7], REGB0
);
2982 once_value_2
= fra
.me
.REG
[7];
2983 register_static_object(&once_value_2
);
2984 } else fra
.me
.REG
[7] = once_value_2
;
2985 fra
.me
.REG
[7] = fra
.me
.REG
[7];
2986 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[7]);
2987 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[4]);
2988 if (!once_value_3
) {
2989 fra
.me
.REG
[7] = BOX_NativeString("");
2991 fra
.me
.REG
[7] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[7], REGB0
);
2992 once_value_3
= fra
.me
.REG
[7];
2993 register_static_object(&once_value_3
);
2994 } else fra
.me
.REG
[7] = once_value_3
;
2995 fra
.me
.REG
[7] = fra
.me
.REG
[7];
2996 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[7]);
2997 fra
.me
.REG
[6] = CALL_standard___string___Object___to_s(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
2998 CALL_mmloader___ToolContext___fatal_error(fra
.me
.REG
[1])(fra
.me
.REG
[1], NIT_NULL
, fra
.me
.REG
[6]);
3000 /* ./mmloader.nit:414 */
3001 fra
.me
.REG
[3] = CALL_mmloader___ModuleLoader___parse_file(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], fra
.me
.REG
[5], fra
.me
.REG
[4], fra
.me
.REG
[2], fra
.me
.REG
[3]);
3002 /* ./mmloader.nit:415 */
3003 fra
.me
.REG
[0] = CALL_standard___file___Object___stdin(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3004 REGB0
= TAG_Bool(IS_EQUAL_OO(fra
.me
.REG
[5],fra
.me
.REG
[0]));
3005 if (UNTAG_Bool(REGB0
)) {
3007 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[0]);
3010 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
3011 if (UNTAG_Bool(REGB0
)) {
3012 CALL_standard___stream___IOS___close(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
3014 /* ./mmloader.nit:416 */
3017 stack_frame_head
= fra
.me
.prev
;
3018 return fra
.me
.REG
[3];
3020 val_t
mmloader___ModuleLoader___parse_file(val_t p0
, val_t p1
, val_t p2
, val_t p3
, val_t p4
, val_t p5
){
3021 struct {struct stack_frame_t me
;} fra
;
3023 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3024 fra
.me
.file
= LOCATE_mmloader
;
3026 fra
.me
.meth
= LOCATE_mmloader___ModuleLoader___parse_file
;
3027 fra
.me
.has_broke
= 0;
3028 fra
.me
.REG_size
= 0;
3029 /* ./mmloader.nit:419 */
3030 nit_abort("Deferred method called", NULL
, LOCATE_mmloader
, 419);
3031 stack_frame_head
= fra
.me
.prev
;
3034 void mmloader___ModuleLoader___process_metamodel(val_t p0
, val_t p1
, val_t p2
){
3035 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
3038 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3039 fra
.me
.file
= LOCATE_mmloader
;
3041 fra
.me
.meth
= LOCATE_mmloader___ModuleLoader___process_metamodel
;
3042 fra
.me
.has_broke
= 0;
3043 fra
.me
.REG_size
= 2;
3044 fra
.me
.REG
[0] = NIT_NULL
;
3045 fra
.me
.REG
[1] = NIT_NULL
;
3048 REGB0
= TAG_Bool(VAL_ISA(fra
.me
.REG
[1], VTCOLOR_mmloader___ModuleLoader___MODULE(fra
.me
.REG
[0]), VTID_mmloader___ModuleLoader___MODULE(fra
.me
.REG
[0]))) /*cast MODULE*/;
3049 if (UNTAG_Bool(REGB0
)) {
3051 nit_abort("Cast failed", NULL
, LOCATE_mmloader
, 0);
3053 /* ./mmloader.nit:422 */
3054 nit_abort("Deferred method called", NULL
, LOCATE_mmloader
, 422);
3055 stack_frame_head
= fra
.me
.prev
;
3058 void mmloader___ModuleLoader___init(val_t p0
, int* init_table
){
3059 int itpos2
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_mmloader___ModuleLoader
].i
;
3060 struct {struct stack_frame_t me
;} fra
;
3062 if (init_table
[itpos2
]) return;
3063 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3064 fra
.me
.file
= LOCATE_mmloader
;
3066 fra
.me
.meth
= LOCATE_mmloader___ModuleLoader___init
;
3067 fra
.me
.has_broke
= 0;
3068 fra
.me
.REG_size
= 0;
3069 stack_frame_head
= fra
.me
.prev
;
3070 init_table
[itpos2
] = 1;