1 /* This C file is generated by NIT to compile module standard___collection___array. */
2 #include "standard___collection___array._sep.h"
3 static const char LOCATE_standard___collection___array___AbstractArrayRead___length
[] = "array::AbstractArrayRead::(abstract_collection::Collection::length)";
4 val_t
standard___collection___array___AbstractArrayRead___length(val_t p0
){
5 struct {struct stack_frame_t me
;} fra
;
8 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
9 fra
.me
.file
= LOCATE_standard___collection___array
;
11 fra
.me
.meth
= LOCATE_standard___collection___array___AbstractArrayRead___length
;
14 fra
.me
.nitni_local_ref_head
= NULL
;
15 fra
.me
.REG
[0] = NIT_NULL
;
17 /* ../lib/standard/collection/array.nit:24 */
18 REGB0
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
19 if (UNTAG_Bool(REGB0
)) {
21 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
23 REGB0
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
24 stack_frame_head
= fra
.me
.prev
;
27 static const char LOCATE_standard___collection___array___AbstractArrayRead___is_empty
[] = "array::AbstractArrayRead::(abstract_collection::Collection::is_empty)";
28 val_t
standard___collection___array___AbstractArrayRead___is_empty(val_t p0
){
29 struct {struct stack_frame_t me
;} fra
;
34 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
35 fra
.me
.file
= LOCATE_standard___collection___array
;
37 fra
.me
.meth
= LOCATE_standard___collection___array___AbstractArrayRead___is_empty
;
40 fra
.me
.nitni_local_ref_head
= NULL
;
41 fra
.me
.REG
[0] = NIT_NULL
;
43 /* ../lib/standard/collection/array.nit:26 */
44 REGB0
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
45 if (UNTAG_Bool(REGB0
)) {
47 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 26);
49 REGB0
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
51 REGB2
= TAG_Bool(IS_EQUAL_OO(REGB0
,REGB1
));
52 if (UNTAG_Bool(REGB2
)) {
54 /* ../lib/standard/kernel.nit:237 */
55 REGB1
= TAG_Bool((REGB0
)==(REGB1
));
56 /* ../lib/standard/collection/array.nit:26 */
61 stack_frame_head
= fra
.me
.prev
;
64 static const char LOCATE_standard___collection___array___AbstractArrayRead___has
[] = "array::AbstractArrayRead::(abstract_collection::Collection::has)";
65 val_t
standard___collection___array___AbstractArrayRead___has(val_t p0
, val_t p1
){
66 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
72 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
73 fra
.me
.file
= LOCATE_standard___collection___array
;
75 fra
.me
.meth
= LOCATE_standard___collection___array___AbstractArrayRead___has
;
78 fra
.me
.nitni_local_ref_head
= NULL
;
79 fra
.me
.REG
[0] = NIT_NULL
;
80 fra
.me
.REG
[1] = NIT_NULL
;
81 fra
.me
.REG
[2] = NIT_NULL
;
84 /* ../lib/standard/collection/array.nit:30 */
86 /* ../lib/standard/collection/array.nit:24 */
87 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
88 if (UNTAG_Bool(REGB1
)) {
90 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
92 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
93 /* ../lib/standard/collection/array.nit:32 */
95 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
96 if (UNTAG_Bool(REGB2
)) {
98 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
100 /* ../lib/standard/kernel.nit:242 */
101 REGB2
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
102 /* ../lib/standard/collection/array.nit:32 */
103 if (UNTAG_Bool(REGB2
)) {
104 /* ../lib/standard/collection/array.nit:33 */
105 fra
.me
.REG
[2] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
106 REGB2
= TAG_Bool(IS_EQUAL_NN(fra
.me
.REG
[2],fra
.me
.REG
[1]));
107 if (UNTAG_Bool(REGB2
)) {
109 REGB3
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
110 if (UNTAG_Bool(REGB3
)) {
114 REGB3
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
118 if (UNTAG_Bool(REGB2
)) {
122 /* ../lib/standard/collection/array.nit:34 */
124 /* ../lib/standard/kernel.nit:245 */
125 REGB3
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB3
));
126 /* ../lib/standard/collection/array.nit:34 */
129 /* ../lib/standard/collection/array.nit:32 */
134 /* ../lib/standard/collection/array.nit:36 */
139 stack_frame_head
= fra
.me
.prev
;
142 static const char LOCATE_standard___collection___array___AbstractArrayRead___has_only
[] = "array::AbstractArrayRead::(abstract_collection::Collection::has_only)";
143 val_t
standard___collection___array___AbstractArrayRead___has_only(val_t p0
, val_t p1
){
144 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
150 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
151 fra
.me
.file
= LOCATE_standard___collection___array
;
153 fra
.me
.meth
= LOCATE_standard___collection___array___AbstractArrayRead___has_only
;
154 fra
.me
.has_broke
= 0;
156 fra
.me
.nitni_local_ref_head
= NULL
;
157 fra
.me
.REG
[0] = NIT_NULL
;
158 fra
.me
.REG
[1] = NIT_NULL
;
159 fra
.me
.REG
[2] = NIT_NULL
;
162 /* ../lib/standard/collection/array.nit:41 */
164 /* ../lib/standard/collection/array.nit:24 */
165 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
166 if (UNTAG_Bool(REGB1
)) {
168 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
170 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
171 /* ../lib/standard/collection/array.nit:43 */
173 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
174 if (UNTAG_Bool(REGB2
)) {
176 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
178 /* ../lib/standard/kernel.nit:242 */
179 REGB2
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
180 /* ../lib/standard/collection/array.nit:43 */
181 if (UNTAG_Bool(REGB2
)) {
182 /* ../lib/standard/collection/array.nit:44 */
183 fra
.me
.REG
[2] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
184 REGB2
= TAG_Bool(IS_EQUAL_NN(fra
.me
.REG
[2],fra
.me
.REG
[1]));
185 if (UNTAG_Bool(REGB2
)) {
187 REGB3
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
188 if (UNTAG_Bool(REGB3
)) {
192 REGB3
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
196 REGB2
= TAG_Bool(!UNTAG_Bool(REGB2
));
197 if (UNTAG_Bool(REGB2
)) {
201 /* ../lib/standard/collection/array.nit:45 */
203 /* ../lib/standard/kernel.nit:245 */
204 REGB3
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB3
));
205 /* ../lib/standard/collection/array.nit:45 */
208 /* ../lib/standard/collection/array.nit:43 */
213 /* ../lib/standard/collection/array.nit:47 */
218 stack_frame_head
= fra
.me
.prev
;
221 static const char LOCATE_standard___collection___array___AbstractArrayRead___count
[] = "array::AbstractArrayRead::(abstract_collection::Collection::count)";
222 val_t
standard___collection___array___AbstractArrayRead___count(val_t p0
, val_t p1
){
223 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
230 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
231 fra
.me
.file
= LOCATE_standard___collection___array
;
233 fra
.me
.meth
= LOCATE_standard___collection___array___AbstractArrayRead___count
;
234 fra
.me
.has_broke
= 0;
236 fra
.me
.nitni_local_ref_head
= NULL
;
237 fra
.me
.REG
[0] = NIT_NULL
;
238 fra
.me
.REG
[1] = NIT_NULL
;
239 fra
.me
.REG
[2] = NIT_NULL
;
242 /* ../lib/standard/collection/array.nit:52 */
244 /* ../lib/standard/collection/array.nit:53 */
246 /* ../lib/standard/collection/array.nit:24 */
247 REGB2
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
248 if (UNTAG_Bool(REGB2
)) {
250 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
252 REGB2
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
253 /* ../lib/standard/collection/array.nit:55 */
255 REGB3
= TAG_Bool(VAL_ISA(REGB2
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1
), VTID_standard___kernel___Comparable___OTHER(REGB1
))) /*cast OTHER*/;
256 if (UNTAG_Bool(REGB3
)) {
258 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
260 /* ../lib/standard/kernel.nit:242 */
261 REGB3
= TAG_Bool(UNTAG_Int(REGB1
)<UNTAG_Int(REGB2
));
262 /* ../lib/standard/collection/array.nit:55 */
263 if (UNTAG_Bool(REGB3
)) {
264 /* ../lib/standard/collection/array.nit:56 */
265 fra
.me
.REG
[2] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB1
);
266 REGB3
= TAG_Bool(IS_EQUAL_NN(fra
.me
.REG
[2],fra
.me
.REG
[1]));
267 if (UNTAG_Bool(REGB3
)) {
269 REGB4
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
270 if (UNTAG_Bool(REGB4
)) {
274 REGB4
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
278 if (UNTAG_Bool(REGB3
)) {
280 /* ../lib/standard/kernel.nit:245 */
281 REGB3
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB3
));
282 /* ../lib/standard/collection/array.nit:56 */
285 /* ../lib/standard/collection/array.nit:57 */
287 /* ../lib/standard/kernel.nit:245 */
288 REGB3
= TAG_Int(UNTAG_Int(REGB1
)+UNTAG_Int(REGB3
));
289 /* ../lib/standard/collection/array.nit:57 */
292 /* ../lib/standard/collection/array.nit:55 */
297 /* ../lib/standard/collection/array.nit:59 */
300 stack_frame_head
= fra
.me
.prev
;
303 static const char LOCATE_standard___collection___array___AbstractArrayRead___index_of
[] = "array::AbstractArrayRead::(abstract_collection::SequenceRead::index_of)";
304 val_t
standard___collection___array___AbstractArrayRead___index_of(val_t p0
, val_t p1
){
305 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
308 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
309 fra
.me
.file
= LOCATE_standard___collection___array
;
311 fra
.me
.meth
= LOCATE_standard___collection___array___AbstractArrayRead___index_of
;
312 fra
.me
.has_broke
= 0;
314 fra
.me
.nitni_local_ref_head
= NULL
;
315 fra
.me
.REG
[0] = NIT_NULL
;
316 fra
.me
.REG
[1] = NIT_NULL
;
319 /* ../lib/standard/collection/array.nit:62 */
321 REGB0
= CALL_standard___collection___array___AbstractArrayRead___index_of_from(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], REGB0
);
324 stack_frame_head
= fra
.me
.prev
;
327 static const char LOCATE_standard___collection___array___AbstractArrayRead___last_index_of
[] = "array::AbstractArrayRead::last_index_of";
328 val_t
standard___collection___array___AbstractArrayRead___last_index_of(val_t p0
, val_t p1
){
329 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
333 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
334 fra
.me
.file
= LOCATE_standard___collection___array
;
336 fra
.me
.meth
= LOCATE_standard___collection___array___AbstractArrayRead___last_index_of
;
337 fra
.me
.has_broke
= 0;
339 fra
.me
.nitni_local_ref_head
= NULL
;
340 fra
.me
.REG
[0] = NIT_NULL
;
341 fra
.me
.REG
[1] = NIT_NULL
;
344 /* ../lib/standard/collection/array.nit:24 */
345 REGB0
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
346 if (UNTAG_Bool(REGB0
)) {
348 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
350 REGB0
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
351 /* ../lib/standard/collection/array.nit:66 */
353 /* ../lib/standard/kernel.nit:247 */
354 REGB1
= TAG_Int(UNTAG_Int(REGB0
)-UNTAG_Int(REGB1
));
355 /* ../lib/standard/collection/array.nit:66 */
356 REGB1
= CALL_standard___collection___array___AbstractArrayRead___last_index_of_from(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], REGB1
);
359 stack_frame_head
= fra
.me
.prev
;
362 static const char LOCATE_standard___collection___array___AbstractArrayRead___index_of_from
[] = "array::AbstractArrayRead::index_of_from";
363 val_t
standard___collection___array___AbstractArrayRead___index_of_from(val_t p0
, val_t p1
, val_t p2
){
364 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
370 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
371 fra
.me
.file
= LOCATE_standard___collection___array
;
373 fra
.me
.meth
= LOCATE_standard___collection___array___AbstractArrayRead___index_of_from
;
374 fra
.me
.has_broke
= 0;
376 fra
.me
.nitni_local_ref_head
= NULL
;
377 fra
.me
.REG
[0] = NIT_NULL
;
378 fra
.me
.REG
[1] = NIT_NULL
;
379 fra
.me
.REG
[2] = NIT_NULL
;
383 /* ../lib/standard/collection/array.nit:24 */
384 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
385 if (UNTAG_Bool(REGB1
)) {
387 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
389 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
390 /* ../lib/standard/collection/array.nit:74 */
392 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
393 if (UNTAG_Bool(REGB2
)) {
395 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
397 /* ../lib/standard/kernel.nit:242 */
398 REGB2
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
399 /* ../lib/standard/collection/array.nit:74 */
400 if (UNTAG_Bool(REGB2
)) {
401 /* ../lib/standard/collection/array.nit:75 */
402 fra
.me
.REG
[2] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
403 REGB2
= TAG_Bool(IS_EQUAL_NN(fra
.me
.REG
[2],fra
.me
.REG
[1]));
404 if (UNTAG_Bool(REGB2
)) {
406 REGB3
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
407 if (UNTAG_Bool(REGB3
)) {
411 REGB3
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
415 if (UNTAG_Bool(REGB2
)) {
416 /* ../lib/standard/collection/array.nit:76 */
420 /* ../lib/standard/collection/array.nit:78 */
422 /* ../lib/standard/kernel.nit:245 */
423 REGB3
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB3
));
424 /* ../lib/standard/collection/array.nit:78 */
427 /* ../lib/standard/collection/array.nit:74 */
432 /* ../lib/standard/collection/array.nit:80 */
434 /* ../lib/standard/kernel.nit:246 */
435 REGB0
= TAG_Int(-UNTAG_Int(REGB0
));
436 /* ../lib/standard/collection/array.nit:80 */
440 stack_frame_head
= fra
.me
.prev
;
443 static const char LOCATE_standard___collection___array___AbstractArrayRead___last_index_of_from
[] = "array::AbstractArrayRead::last_index_of_from";
444 val_t
standard___collection___array___AbstractArrayRead___last_index_of_from(val_t p0
, val_t p1
, val_t p2
){
445 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
450 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
451 fra
.me
.file
= LOCATE_standard___collection___array
;
453 fra
.me
.meth
= LOCATE_standard___collection___array___AbstractArrayRead___last_index_of_from
;
454 fra
.me
.has_broke
= 0;
456 fra
.me
.nitni_local_ref_head
= NULL
;
457 fra
.me
.REG
[0] = NIT_NULL
;
458 fra
.me
.REG
[1] = NIT_NULL
;
459 fra
.me
.REG
[2] = NIT_NULL
;
463 /* ../lib/standard/collection/array.nit:88 */
466 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
467 if (UNTAG_Bool(REGB2
)) {
469 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
471 /* ../lib/standard/kernel.nit:243 */
472 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB1
));
473 /* ../lib/standard/collection/array.nit:88 */
474 if (UNTAG_Bool(REGB1
)) {
475 /* ../lib/standard/collection/array.nit:89 */
476 fra
.me
.REG
[2] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
477 REGB1
= TAG_Bool(IS_EQUAL_NN(fra
.me
.REG
[2],fra
.me
.REG
[1]));
478 if (UNTAG_Bool(REGB1
)) {
480 REGB2
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
481 if (UNTAG_Bool(REGB2
)) {
485 REGB2
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
489 if (UNTAG_Bool(REGB1
)) {
490 /* ../lib/standard/collection/array.nit:90 */
494 /* ../lib/standard/collection/array.nit:92 */
496 /* ../lib/standard/kernel.nit:247 */
497 REGB2
= TAG_Int(UNTAG_Int(REGB0
)-UNTAG_Int(REGB2
));
498 /* ../lib/standard/collection/array.nit:92 */
502 /* ../lib/standard/collection/array.nit:88 */
507 /* ../lib/standard/collection/array.nit:95 */
509 /* ../lib/standard/kernel.nit:246 */
510 REGB0
= TAG_Int(-UNTAG_Int(REGB0
));
511 /* ../lib/standard/collection/array.nit:95 */
515 stack_frame_head
= fra
.me
.prev
;
518 static const char LOCATE_standard___collection___array___AbstractArrayRead___reversed
[] = "array::AbstractArrayRead::reversed";
519 val_t
standard___collection___array___AbstractArrayRead___reversed(val_t p0
){
520 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
525 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
526 fra
.me
.file
= LOCATE_standard___collection___array
;
528 fra
.me
.meth
= LOCATE_standard___collection___array___AbstractArrayRead___reversed
;
529 fra
.me
.has_broke
= 0;
531 fra
.me
.nitni_local_ref_head
= NULL
;
532 fra
.me
.REG
[0] = NIT_NULL
;
533 fra
.me
.REG
[1] = NIT_NULL
;
534 fra
.me
.REG
[2] = NIT_NULL
;
536 /* ../lib/standard/collection/array.nit:103 */
537 REGB0
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
538 if (UNTAG_Bool(REGB0
)) {
540 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 103);
542 REGB0
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
543 /* ../lib/standard/collection/array.nit:104 */
544 fra
.me
.REG
[1] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
545 /* ../lib/standard/collection/array.nit:105 */
548 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
549 if (UNTAG_Bool(REGB2
)) {
551 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
553 /* ../lib/standard/kernel.nit:244 */
554 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>UNTAG_Int(REGB1
));
555 /* ../lib/standard/collection/array.nit:105 */
556 if (UNTAG_Bool(REGB1
)) {
557 /* ../lib/standard/collection/array.nit:106 */
559 /* ../lib/standard/kernel.nit:247 */
560 REGB1
= TAG_Int(UNTAG_Int(REGB0
)-UNTAG_Int(REGB1
));
561 /* ../lib/standard/collection/array.nit:106 */
563 /* ../lib/standard/collection/array.nit:107 */
564 fra
.me
.REG
[2] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
565 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
567 /* ../lib/standard/collection/array.nit:105 */
572 /* ../lib/standard/collection/array.nit:109 */
575 stack_frame_head
= fra
.me
.prev
;
576 return fra
.me
.REG
[1];
578 static const char LOCATE_standard___collection___array___AbstractArrayRead___copy_to
[] = "array::AbstractArrayRead::copy_to";
579 void standard___collection___array___AbstractArrayRead___copy_to(val_t p0
, val_t p1
, val_t p2
, val_t p3
, val_t p4
){
580 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
587 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
588 fra
.me
.file
= LOCATE_standard___collection___array
;
590 fra
.me
.meth
= LOCATE_standard___collection___array___AbstractArrayRead___copy_to
;
591 fra
.me
.has_broke
= 0;
593 fra
.me
.nitni_local_ref_head
= NULL
;
594 fra
.me
.REG
[0] = NIT_NULL
;
595 fra
.me
.REG
[1] = NIT_NULL
;
596 fra
.me
.REG
[2] = NIT_NULL
;
602 /* ../lib/standard/collection/array.nit:122 */
605 REGB4
= TAG_Bool(VAL_ISA(REGB3
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1
), VTID_standard___kernel___Comparable___OTHER(REGB1
))) /*cast OTHER*/;
606 if (UNTAG_Bool(REGB4
)) {
608 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
610 /* ../lib/standard/kernel.nit:244 */
611 REGB3
= TAG_Bool(UNTAG_Int(REGB1
)>UNTAG_Int(REGB3
));
612 /* ../lib/standard/collection/array.nit:122 */
613 if (UNTAG_Bool(REGB3
)) {
614 /* ../lib/standard/collection/array.nit:123 */
616 /* ../lib/standard/kernel.nit:247 */
617 REGB3
= TAG_Int(UNTAG_Int(REGB1
)-UNTAG_Int(REGB3
));
618 /* ../lib/standard/collection/array.nit:123 */
620 /* ../lib/standard/kernel.nit:245 */
621 REGB3
= TAG_Int(UNTAG_Int(REGB2
)+UNTAG_Int(REGB1
));
622 REGB4
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
623 /* ../lib/standard/collection/array.nit:124 */
624 fra
.me
.REG
[2] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB4
);
625 CALL_standard___collection___abstract_collection___Sequence_____braeq(fra
.me
.REG
[1])(fra
.me
.REG
[1], REGB3
, fra
.me
.REG
[2]);
627 /* ../lib/standard/collection/array.nit:122 */
632 stack_frame_head
= fra
.me
.prev
;
635 static const char LOCATE_standard___collection___array___AbstractArrayRead___output
[] = "array::AbstractArrayRead::(kernel::Object::output)";
636 void standard___collection___array___AbstractArrayRead___output(val_t p0
){
637 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
643 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
644 fra
.me
.file
= LOCATE_standard___collection___array
;
646 fra
.me
.meth
= LOCATE_standard___collection___array___AbstractArrayRead___output
;
647 fra
.me
.has_broke
= 0;
649 fra
.me
.nitni_local_ref_head
= NULL
;
650 fra
.me
.REG
[0] = NIT_NULL
;
651 fra
.me
.REG
[1] = NIT_NULL
;
653 /* ../lib/standard/collection/array.nit:130 */
655 /* ../lib/standard/collection/array.nit:24 */
656 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
657 if (UNTAG_Bool(REGB1
)) {
659 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
661 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
662 /* ../lib/standard/collection/array.nit:132 */
664 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
665 if (UNTAG_Bool(REGB2
)) {
667 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
669 /* ../lib/standard/kernel.nit:242 */
670 REGB2
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
671 /* ../lib/standard/collection/array.nit:132 */
672 if (UNTAG_Bool(REGB2
)) {
673 /* ../lib/standard/collection/array.nit:133 */
674 fra
.me
.REG
[1] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
675 /* ../lib/standard/collection/array.nit:134 */
676 REGB2
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
677 if (UNTAG_Bool(REGB2
)) {
679 REGB3
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
680 if (UNTAG_Bool(REGB3
)) {
684 REGB3
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[1])(fra
.me
.REG
[1], NIT_NULL
);
688 REGB2
= TAG_Bool(!UNTAG_Bool(REGB2
));
689 if (UNTAG_Bool(REGB2
)) {
690 REGB2
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
691 if (UNTAG_Bool(REGB2
)) {
692 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 134);
694 CALL_standard___kernel___Object___output(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
696 /* ../lib/standard/collection/array.nit:135 */
698 /* ../lib/standard/kernel.nit:245 */
699 REGB2
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB2
));
700 /* ../lib/standard/collection/array.nit:135 */
703 /* ../lib/standard/collection/array.nit:132 */
708 stack_frame_head
= fra
.me
.prev
;
711 static const char LOCATE_standard___collection___array___AbstractArrayRead___iterator
[] = "array::AbstractArrayRead::(abstract_collection::Collection::iterator)";
712 val_t
standard___collection___array___AbstractArrayRead___iterator(val_t p0
){
713 struct {struct stack_frame_t me
;} fra
;
715 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
716 fra
.me
.file
= LOCATE_standard___collection___array
;
718 fra
.me
.meth
= LOCATE_standard___collection___array___AbstractArrayRead___iterator
;
719 fra
.me
.has_broke
= 0;
721 fra
.me
.nitni_local_ref_head
= NULL
;
722 fra
.me
.REG
[0] = NIT_NULL
;
724 /* ../lib/standard/collection/array.nit:139 */
725 fra
.me
.REG
[0] = NEW_ArrayIterator_standard___collection___array___ArrayIterator___init(fra
.me
.REG
[0]);
728 stack_frame_head
= fra
.me
.prev
;
729 return fra
.me
.REG
[0];
731 static const char LOCATE_standard___collection___array___AbstractArrayRead_____eqeq
[] = "array::AbstractArrayRead::(kernel::Object::==)";
732 val_t
standard___collection___array___AbstractArrayRead_____eqeq(val_t p0
, val_t p1
){
733 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
740 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
741 fra
.me
.file
= LOCATE_standard___collection___array
;
743 fra
.me
.meth
= LOCATE_standard___collection___array___AbstractArrayRead_____eqeq
;
744 fra
.me
.has_broke
= 0;
746 fra
.me
.nitni_local_ref_head
= NULL
;
747 fra
.me
.REG
[0] = NIT_NULL
;
748 fra
.me
.REG
[1] = NIT_NULL
;
749 fra
.me
.REG
[2] = NIT_NULL
;
750 fra
.me
.REG
[3] = NIT_NULL
;
753 /* ../lib/standard/collection/array.nit:144 */
754 REGB0
= TAG_Bool((fra
.me
.REG
[1]!=NIT_NULL
) && VAL_ISA(fra
.me
.REG
[1], COLOR_standard___collection___array___AbstractArray
, ID_standard___collection___array___AbstractArray
)) /*cast AbstractArray[nullable Object]*/;
755 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
756 if (UNTAG_Bool(REGB0
)) {
759 REGB1
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
762 if (UNTAG_Bool(REGB0
)) {
766 /* ../lib/standard/collection/array.nit:24 */
767 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
768 if (UNTAG_Bool(REGB1
)) {
770 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
772 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
773 /* ../lib/standard/collection/array.nit:146 */
774 REGB2
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
775 if (UNTAG_Bool(REGB2
)) {
776 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 146);
778 /* ../lib/standard/collection/array.nit:24 */
779 REGB2
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[1])!=NIT_NULL
);
780 if (UNTAG_Bool(REGB2
)) {
782 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
784 REGB2
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[1]);
785 /* ../lib/standard/collection/array.nit:146 */
786 REGB3
= TAG_Bool(IS_EQUAL_OO(REGB2
,REGB1
));
787 if (UNTAG_Bool(REGB3
)) {
789 /* ../lib/standard/kernel.nit:237 */
790 REGB2
= TAG_Bool((REGB2
)==(REGB1
));
791 /* ../lib/standard/collection/array.nit:146 */
794 REGB3
= TAG_Bool(!UNTAG_Bool(REGB3
));
795 if (UNTAG_Bool(REGB3
)) {
800 /* ../lib/standard/collection/array.nit:147 */
802 /* ../lib/standard/collection/array.nit:148 */
804 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB3
), VTID_standard___kernel___Comparable___OTHER(REGB3
))) /*cast OTHER*/;
805 if (UNTAG_Bool(REGB2
)) {
807 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
809 /* ../lib/standard/kernel.nit:242 */
810 REGB2
= TAG_Bool(UNTAG_Int(REGB3
)<UNTAG_Int(REGB1
));
811 /* ../lib/standard/collection/array.nit:148 */
812 if (UNTAG_Bool(REGB2
)) {
813 /* ../lib/standard/collection/array.nit:149 */
814 fra
.me
.REG
[2] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB3
);
815 REGB2
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
816 if (UNTAG_Bool(REGB2
)) {
817 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 149);
819 fra
.me
.REG
[3] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra
.me
.REG
[1])(fra
.me
.REG
[1], REGB3
);
820 REGB2
= TAG_Bool(IS_EQUAL_NN(fra
.me
.REG
[2],fra
.me
.REG
[3]));
821 if (UNTAG_Bool(REGB2
)) {
823 REGB4
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
824 if (UNTAG_Bool(REGB4
)) {
828 REGB4
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
832 REGB2
= TAG_Bool(!UNTAG_Bool(REGB2
));
833 if (UNTAG_Bool(REGB2
)) {
838 /* ../lib/standard/collection/array.nit:150 */
840 /* ../lib/standard/kernel.nit:245 */
841 REGB2
= TAG_Int(UNTAG_Int(REGB3
)+UNTAG_Int(REGB2
));
842 /* ../lib/standard/collection/array.nit:150 */
845 /* ../lib/standard/collection/array.nit:148 */
850 /* ../lib/standard/collection/array.nit:152 */
855 stack_frame_head
= fra
.me
.prev
;
858 static const char LOCATE_standard___collection___array___AbstractArrayRead___init
[] = "array::AbstractArrayRead::init";
859 void standard___collection___array___AbstractArrayRead___init(val_t p0
, int* init_table
){
860 int itpos0
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_standard___collection___array___AbstractArrayRead
].i
;
861 struct {struct stack_frame_t me
;} fra
;
863 if (init_table
[itpos0
]) return;
864 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
865 fra
.me
.file
= LOCATE_standard___collection___array
;
867 fra
.me
.meth
= LOCATE_standard___collection___array___AbstractArrayRead___init
;
868 fra
.me
.has_broke
= 0;
870 fra
.me
.nitni_local_ref_head
= NULL
;
871 stack_frame_head
= fra
.me
.prev
;
872 init_table
[itpos0
] = 1;
875 static const char LOCATE_standard___collection___array___AbstractArray___enlarge
[] = "array::AbstractArray::enlarge";
876 void standard___collection___array___AbstractArray___enlarge(val_t p0
, val_t p1
){
877 struct {struct stack_frame_t me
;} fra
;
879 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
880 fra
.me
.file
= LOCATE_standard___collection___array
;
882 fra
.me
.meth
= LOCATE_standard___collection___array___AbstractArray___enlarge
;
883 fra
.me
.has_broke
= 0;
885 fra
.me
.nitni_local_ref_head
= NULL
;
886 /* ../lib/standard/collection/array.nit:161 */
887 nit_abort("Deferred method called", NULL
, LOCATE_standard___collection___array
, 161);
888 stack_frame_head
= fra
.me
.prev
;
891 static const char LOCATE_standard___collection___array___AbstractArray___push
[] = "array::AbstractArray::(abstract_collection::Sequence::push)";
892 void standard___collection___array___AbstractArray___push(val_t p0
, val_t p1
){
893 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
895 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
896 fra
.me
.file
= LOCATE_standard___collection___array
;
898 fra
.me
.meth
= LOCATE_standard___collection___array___AbstractArray___push
;
899 fra
.me
.has_broke
= 0;
901 fra
.me
.nitni_local_ref_head
= NULL
;
902 fra
.me
.REG
[0] = NIT_NULL
;
903 fra
.me
.REG
[1] = NIT_NULL
;
906 /* ../lib/standard/collection/array.nit:166 */
907 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
908 stack_frame_head
= fra
.me
.prev
;
911 static const char LOCATE_standard___collection___array___AbstractArray___pop
[] = "array::AbstractArray::(abstract_collection::Sequence::pop)";
912 val_t
standard___collection___array___AbstractArray___pop(val_t p0
){
913 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
917 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
918 fra
.me
.file
= LOCATE_standard___collection___array
;
920 fra
.me
.meth
= LOCATE_standard___collection___array___AbstractArray___pop
;
921 fra
.me
.has_broke
= 0;
923 fra
.me
.nitni_local_ref_head
= NULL
;
924 fra
.me
.REG
[0] = NIT_NULL
;
925 fra
.me
.REG
[1] = NIT_NULL
;
927 /* ../lib/standard/collection/array.nit:170 */
928 REGB0
= CALL_standard___collection___abstract_collection___Collection___is_empty(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
929 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
930 if (UNTAG_Bool(REGB0
)) {
932 nit_abort("Assert '%s' failed", "not_empty", LOCATE_standard___collection___array
, 170);
934 /* ../lib/standard/collection/array.nit:171 */
935 fra
.me
.REG
[1] = CALL_standard___collection___abstract_collection___SequenceRead___last(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
936 /* ../lib/standard/collection/array.nit:172 */
937 REGB0
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
939 /* ../lib/standard/kernel.nit:247 */
940 REGB1
= TAG_Int(UNTAG_Int(REGB0
)-UNTAG_Int(REGB1
));
941 /* ../lib/standard/collection/array.nit:172 */
942 ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]) = REGB1
;
943 /* ../lib/standard/collection/array.nit:173 */
946 stack_frame_head
= fra
.me
.prev
;
947 return fra
.me
.REG
[1];
949 static const char LOCATE_standard___collection___array___AbstractArray___shift
[] = "array::AbstractArray::(abstract_collection::Sequence::shift)";
950 val_t
standard___collection___array___AbstractArray___shift(val_t p0
){
951 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
956 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
957 fra
.me
.file
= LOCATE_standard___collection___array
;
959 fra
.me
.meth
= LOCATE_standard___collection___array___AbstractArray___shift
;
960 fra
.me
.has_broke
= 0;
962 fra
.me
.nitni_local_ref_head
= NULL
;
963 fra
.me
.REG
[0] = NIT_NULL
;
964 fra
.me
.REG
[1] = NIT_NULL
;
965 fra
.me
.REG
[2] = NIT_NULL
;
967 /* ../lib/standard/collection/array.nit:178 */
968 REGB0
= CALL_standard___collection___abstract_collection___Collection___is_empty(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
969 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
970 if (UNTAG_Bool(REGB0
)) {
972 nit_abort("Assert '%s' failed", "not_empty", LOCATE_standard___collection___array
, 178);
974 /* ../lib/standard/collection/array.nit:179 */
975 fra
.me
.REG
[1] = CALL_standard___collection___abstract_collection___Collection___first(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
976 /* ../lib/standard/collection/array.nit:180 */
978 /* ../lib/standard/collection/array.nit:24 */
979 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
980 if (UNTAG_Bool(REGB1
)) {
982 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
984 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
985 /* ../lib/standard/collection/array.nit:182 */
987 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
988 if (UNTAG_Bool(REGB2
)) {
990 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
992 /* ../lib/standard/kernel.nit:242 */
993 REGB2
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
994 /* ../lib/standard/collection/array.nit:182 */
995 if (UNTAG_Bool(REGB2
)) {
996 /* ../lib/standard/collection/array.nit:183 */
998 /* ../lib/standard/kernel.nit:247 */
999 REGB2
= TAG_Int(UNTAG_Int(REGB0
)-UNTAG_Int(REGB2
));
1000 /* ../lib/standard/collection/array.nit:183 */
1001 fra
.me
.REG
[2] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
1002 CALL_standard___collection___abstract_collection___Sequence_____braeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB2
, fra
.me
.REG
[2]);
1003 /* ../lib/standard/collection/array.nit:184 */
1005 /* ../lib/standard/kernel.nit:245 */
1006 REGB2
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB2
));
1007 /* ../lib/standard/collection/array.nit:184 */
1010 /* ../lib/standard/collection/array.nit:182 */
1015 /* ../lib/standard/collection/array.nit:186 */
1017 /* ../lib/standard/kernel.nit:247 */
1018 REGB0
= TAG_Int(UNTAG_Int(REGB1
)-UNTAG_Int(REGB0
));
1019 /* ../lib/standard/collection/array.nit:186 */
1020 ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]) = REGB0
;
1021 /* ../lib/standard/collection/array.nit:187 */
1024 stack_frame_head
= fra
.me
.prev
;
1025 return fra
.me
.REG
[1];
1027 static const char LOCATE_standard___collection___array___AbstractArray___unshift
[] = "array::AbstractArray::(abstract_collection::Sequence::unshift)";
1028 void standard___collection___array___AbstractArray___unshift(val_t p0
, val_t p1
){
1029 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
1034 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1035 fra
.me
.file
= LOCATE_standard___collection___array
;
1037 fra
.me
.meth
= LOCATE_standard___collection___array___AbstractArray___unshift
;
1038 fra
.me
.has_broke
= 0;
1039 fra
.me
.REG_size
= 3;
1040 fra
.me
.nitni_local_ref_head
= NULL
;
1041 fra
.me
.REG
[0] = NIT_NULL
;
1042 fra
.me
.REG
[1] = NIT_NULL
;
1043 fra
.me
.REG
[2] = NIT_NULL
;
1046 /* ../lib/standard/collection/array.nit:24 */
1047 REGB0
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
1048 if (UNTAG_Bool(REGB0
)) {
1050 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
1052 REGB0
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
1053 /* ../lib/standard/collection/array.nit:192 */
1055 /* ../lib/standard/kernel.nit:247 */
1056 REGB1
= TAG_Int(UNTAG_Int(REGB0
)-UNTAG_Int(REGB1
));
1057 /* ../lib/standard/collection/array.nit:193 */
1060 REGB2
= TAG_Bool(VAL_ISA(REGB0
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1
), VTID_standard___kernel___Comparable___OTHER(REGB1
))) /*cast OTHER*/;
1061 if (UNTAG_Bool(REGB2
)) {
1063 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1065 /* ../lib/standard/kernel.nit:244 */
1066 REGB0
= TAG_Bool(UNTAG_Int(REGB1
)>UNTAG_Int(REGB0
));
1067 /* ../lib/standard/collection/array.nit:193 */
1068 if (UNTAG_Bool(REGB0
)) {
1069 /* ../lib/standard/collection/array.nit:194 */
1071 /* ../lib/standard/kernel.nit:245 */
1072 REGB0
= TAG_Int(UNTAG_Int(REGB1
)+UNTAG_Int(REGB0
));
1073 /* ../lib/standard/collection/array.nit:194 */
1074 fra
.me
.REG
[2] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB1
);
1075 CALL_standard___collection___abstract_collection___Sequence_____braeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
, fra
.me
.REG
[2]);
1076 /* ../lib/standard/collection/array.nit:195 */
1078 /* ../lib/standard/kernel.nit:247 */
1079 REGB0
= TAG_Int(UNTAG_Int(REGB1
)-UNTAG_Int(REGB0
));
1080 /* ../lib/standard/collection/array.nit:195 */
1083 /* ../lib/standard/collection/array.nit:193 */
1088 /* ../lib/standard/collection/array.nit:197 */
1090 CALL_standard___collection___abstract_collection___Sequence_____braeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB1
, fra
.me
.REG
[1]);
1091 stack_frame_head
= fra
.me
.prev
;
1094 static const char LOCATE_standard___collection___array___AbstractArray___insert
[] = "array::AbstractArray::insert";
1095 void standard___collection___array___AbstractArray___insert(val_t p0
, val_t p1
, val_t p2
){
1096 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1101 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1102 fra
.me
.file
= LOCATE_standard___collection___array
;
1104 fra
.me
.meth
= LOCATE_standard___collection___array___AbstractArray___insert
;
1105 fra
.me
.has_broke
= 0;
1106 fra
.me
.REG_size
= 2;
1107 fra
.me
.nitni_local_ref_head
= NULL
;
1108 fra
.me
.REG
[0] = NIT_NULL
;
1109 fra
.me
.REG
[1] = NIT_NULL
;
1113 /* ../lib/standard/collection/array.nit:24 */
1114 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
1115 if (UNTAG_Bool(REGB1
)) {
1117 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
1119 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
1120 /* ../lib/standard/collection/array.nit:207 */
1122 /* ../lib/standard/kernel.nit:245 */
1123 REGB2
= TAG_Int(UNTAG_Int(REGB1
)+UNTAG_Int(REGB2
));
1124 /* ../lib/standard/collection/array.nit:207 */
1125 CALL_standard___collection___array___AbstractArray___enlarge(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB2
);
1126 /* ../lib/standard/collection/array.nit:24 */
1127 REGB2
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
1128 if (UNTAG_Bool(REGB2
)) {
1130 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
1132 REGB2
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
1133 /* ../lib/standard/kernel.nit:247 */
1134 REGB2
= TAG_Int(UNTAG_Int(REGB2
)-UNTAG_Int(REGB0
));
1135 /* ../lib/standard/collection/array.nit:208 */
1137 /* ../lib/standard/kernel.nit:245 */
1138 REGB1
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
1139 /* ../lib/standard/collection/array.nit:208 */
1140 CALL_standard___collection___array___AbstractArrayRead___copy_to(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
, REGB2
, fra
.me
.REG
[0], REGB1
);
1141 /* ../lib/standard/collection/array.nit:209 */
1142 CALL_standard___collection___abstract_collection___Sequence_____braeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
, fra
.me
.REG
[1]);
1143 stack_frame_head
= fra
.me
.prev
;
1146 static const char LOCATE_standard___collection___array___AbstractArray___add
[] = "array::AbstractArray::(abstract_collection::SimpleCollection::add)";
1147 void standard___collection___array___AbstractArray___add(val_t p0
, val_t p1
){
1148 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1151 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1152 fra
.me
.file
= LOCATE_standard___collection___array
;
1154 fra
.me
.meth
= LOCATE_standard___collection___array___AbstractArray___add
;
1155 fra
.me
.has_broke
= 0;
1156 fra
.me
.REG_size
= 2;
1157 fra
.me
.nitni_local_ref_head
= NULL
;
1158 fra
.me
.REG
[0] = NIT_NULL
;
1159 fra
.me
.REG
[1] = NIT_NULL
;
1162 /* ../lib/standard/collection/array.nit:24 */
1163 REGB0
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
1164 if (UNTAG_Bool(REGB0
)) {
1166 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
1168 REGB0
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
1169 /* ../lib/standard/collection/array.nit:212 */
1170 CALL_standard___collection___abstract_collection___Sequence_____braeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
, fra
.me
.REG
[1]);
1171 stack_frame_head
= fra
.me
.prev
;
1174 static const char LOCATE_standard___collection___array___AbstractArray___clear
[] = "array::AbstractArray::(abstract_collection::RemovableCollection::clear)";
1175 void standard___collection___array___AbstractArray___clear(val_t p0
){
1176 struct {struct stack_frame_t me
;} fra
;
1179 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1180 fra
.me
.file
= LOCATE_standard___collection___array
;
1182 fra
.me
.meth
= LOCATE_standard___collection___array___AbstractArray___clear
;
1183 fra
.me
.has_broke
= 0;
1184 fra
.me
.REG_size
= 1;
1185 fra
.me
.nitni_local_ref_head
= NULL
;
1186 fra
.me
.REG
[0] = NIT_NULL
;
1188 /* ../lib/standard/collection/array.nit:214 */
1190 ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]) = REGB0
;
1191 stack_frame_head
= fra
.me
.prev
;
1194 static const char LOCATE_standard___collection___array___AbstractArray___remove
[] = "array::AbstractArray::(abstract_collection::RemovableCollection::remove)";
1195 void standard___collection___array___AbstractArray___remove(val_t p0
, val_t p1
){
1196 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1199 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1200 fra
.me
.file
= LOCATE_standard___collection___array
;
1202 fra
.me
.meth
= LOCATE_standard___collection___array___AbstractArray___remove
;
1203 fra
.me
.has_broke
= 0;
1204 fra
.me
.REG_size
= 2;
1205 fra
.me
.nitni_local_ref_head
= NULL
;
1206 fra
.me
.REG
[0] = NIT_NULL
;
1207 fra
.me
.REG
[1] = NIT_NULL
;
1210 /* ../lib/standard/collection/array.nit:216 */
1211 REGB0
= CALL_standard___collection___abstract_collection___SequenceRead___index_of(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
1212 CALL_standard___collection___abstract_collection___Sequence___remove_at(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
1213 stack_frame_head
= fra
.me
.prev
;
1216 static const char LOCATE_standard___collection___array___AbstractArray___remove_all
[] = "array::AbstractArray::(abstract_collection::RemovableCollection::remove_all)";
1217 void standard___collection___array___AbstractArray___remove_all(val_t p0
, val_t p1
){
1218 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1223 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1224 fra
.me
.file
= LOCATE_standard___collection___array
;
1226 fra
.me
.meth
= LOCATE_standard___collection___array___AbstractArray___remove_all
;
1227 fra
.me
.has_broke
= 0;
1228 fra
.me
.REG_size
= 2;
1229 fra
.me
.nitni_local_ref_head
= NULL
;
1230 fra
.me
.REG
[0] = NIT_NULL
;
1231 fra
.me
.REG
[1] = NIT_NULL
;
1234 /* ../lib/standard/collection/array.nit:220 */
1235 REGB0
= CALL_standard___collection___abstract_collection___SequenceRead___index_of(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
1236 /* ../lib/standard/collection/array.nit:221 */
1239 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
1240 if (UNTAG_Bool(REGB2
)) {
1242 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1244 /* ../lib/standard/kernel.nit:243 */
1245 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB1
));
1246 /* ../lib/standard/collection/array.nit:221 */
1247 if (UNTAG_Bool(REGB1
)) {
1248 /* ../lib/standard/collection/array.nit:222 */
1249 CALL_standard___collection___abstract_collection___Sequence___remove_at(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
1250 /* ../lib/standard/collection/array.nit:223 */
1251 REGB1
= CALL_standard___collection___array___AbstractArrayRead___index_of_from(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], REGB0
);
1254 /* ../lib/standard/collection/array.nit:221 */
1259 stack_frame_head
= fra
.me
.prev
;
1262 static const char LOCATE_standard___collection___array___AbstractArray___remove_at
[] = "array::AbstractArray::(abstract_collection::Sequence::remove_at)";
1263 void standard___collection___array___AbstractArray___remove_at(val_t p0
, val_t p1
){
1264 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1270 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1271 fra
.me
.file
= LOCATE_standard___collection___array
;
1273 fra
.me
.meth
= LOCATE_standard___collection___array___AbstractArray___remove_at
;
1274 fra
.me
.has_broke
= 0;
1275 fra
.me
.REG_size
= 2;
1276 fra
.me
.nitni_local_ref_head
= NULL
;
1277 fra
.me
.REG
[0] = NIT_NULL
;
1278 fra
.me
.REG
[1] = NIT_NULL
;
1281 /* ../lib/standard/collection/array.nit:24 */
1282 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
1283 if (UNTAG_Bool(REGB1
)) {
1285 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
1287 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
1288 /* ../lib/standard/collection/array.nit:230 */
1290 REGB3
= TAG_Bool(VAL_ISA(REGB2
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
1291 if (UNTAG_Bool(REGB3
)) {
1293 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1295 /* ../lib/standard/kernel.nit:243 */
1296 REGB2
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB2
));
1297 /* ../lib/standard/collection/array.nit:230 */
1298 if (UNTAG_Bool(REGB2
)) {
1299 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
1300 if (UNTAG_Bool(REGB2
)) {
1302 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1304 /* ../lib/standard/kernel.nit:242 */
1305 REGB2
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
1307 /* ../lib/standard/collection/array.nit:230 */
1308 REGB3
= TAG_Bool(0);
1311 if (UNTAG_Bool(REGB2
)) {
1312 /* ../lib/standard/collection/array.nit:231 */
1314 /* ../lib/standard/kernel.nit:245 */
1315 REGB2
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB2
));
1316 /* ../lib/standard/collection/array.nit:232 */
1318 REGB0
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB2
), VTID_standard___kernel___Comparable___OTHER(REGB2
))) /*cast OTHER*/;
1319 if (UNTAG_Bool(REGB0
)) {
1321 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1323 /* ../lib/standard/kernel.nit:242 */
1324 REGB0
= TAG_Bool(UNTAG_Int(REGB2
)<UNTAG_Int(REGB1
));
1325 /* ../lib/standard/collection/array.nit:232 */
1326 if (UNTAG_Bool(REGB0
)) {
1327 /* ../lib/standard/collection/array.nit:233 */
1329 /* ../lib/standard/kernel.nit:247 */
1330 REGB0
= TAG_Int(UNTAG_Int(REGB2
)-UNTAG_Int(REGB0
));
1331 /* ../lib/standard/collection/array.nit:233 */
1332 fra
.me
.REG
[1] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB2
);
1333 CALL_standard___collection___abstract_collection___Sequence_____braeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
, fra
.me
.REG
[1]);
1334 /* ../lib/standard/collection/array.nit:234 */
1336 /* ../lib/standard/kernel.nit:245 */
1337 REGB0
= TAG_Int(UNTAG_Int(REGB2
)+UNTAG_Int(REGB0
));
1338 /* ../lib/standard/collection/array.nit:234 */
1341 /* ../lib/standard/collection/array.nit:232 */
1346 /* ../lib/standard/collection/array.nit:236 */
1348 /* ../lib/standard/kernel.nit:247 */
1349 REGB2
= TAG_Int(UNTAG_Int(REGB1
)-UNTAG_Int(REGB2
));
1350 /* ../lib/standard/collection/array.nit:236 */
1351 ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]) = REGB2
;
1353 stack_frame_head
= fra
.me
.prev
;
1356 static const char LOCATE_standard___collection___array___AbstractArray___swap_at
[] = "array::AbstractArray::swap_at";
1357 void standard___collection___array___AbstractArray___swap_at(val_t p0
, val_t p1
, val_t p2
){
1358 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
1362 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1363 fra
.me
.file
= LOCATE_standard___collection___array
;
1365 fra
.me
.meth
= LOCATE_standard___collection___array___AbstractArray___swap_at
;
1366 fra
.me
.has_broke
= 0;
1367 fra
.me
.REG_size
= 3;
1368 fra
.me
.nitni_local_ref_head
= NULL
;
1369 fra
.me
.REG
[0] = NIT_NULL
;
1370 fra
.me
.REG
[1] = NIT_NULL
;
1371 fra
.me
.REG
[2] = NIT_NULL
;
1375 /* ../lib/standard/collection/array.nit:247 */
1376 fra
.me
.REG
[1] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
1377 /* ../lib/standard/collection/array.nit:248 */
1378 fra
.me
.REG
[2] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB1
);
1379 CALL_standard___collection___abstract_collection___Sequence_____braeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
, fra
.me
.REG
[2]);
1380 /* ../lib/standard/collection/array.nit:249 */
1381 CALL_standard___collection___abstract_collection___Sequence_____braeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB1
, fra
.me
.REG
[1]);
1382 stack_frame_head
= fra
.me
.prev
;
1385 static const char LOCATE_standard___collection___array___Array___iterate
[] = "array::Array::(abstract_collection::Collection::iterate)";
1386 void standard___collection___array___Array___iterate(val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
){
1387 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
1393 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1394 fra
.me
.file
= LOCATE_standard___collection___array
;
1396 fra
.me
.meth
= LOCATE_standard___collection___array___Array___iterate
;
1397 fra
.me
.has_broke
= 0;
1398 fra
.me
.REG_size
= 3;
1399 fra
.me
.nitni_local_ref_head
= NULL
;
1400 fra
.me
.REG
[0] = NIT_NULL
;
1401 fra
.me
.REG
[1] = NIT_NULL
;
1402 fra
.me
.REG
[2] = NIT_NULL
;
1403 fra
.me
.closure_ctx
= closctx_param
;
1404 fra
.me
.closure_funs
= CREG
;
1406 CREG
[0] = clos_fun0
;
1407 /* ../lib/standard/collection/array.nit:270 */
1409 /* ../lib/standard/collection/array.nit:271 */
1410 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
1411 if (UNTAG_Bool(REGB1
)) {
1413 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 271);
1415 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
1416 /* ../lib/standard/collection/array.nit:272 */
1417 fra
.me
.REG
[1] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[0]);
1418 /* ../lib/standard/collection/array.nit:273 */
1420 /* ../lib/standard/collection/array.nit:24 */
1421 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
1422 if (UNTAG_Bool(REGB1
)) {
1424 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
1426 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
1427 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
1428 if (UNTAG_Bool(REGB2
)) {
1430 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1432 /* ../lib/standard/kernel.nit:242 */
1433 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
1434 /* ../lib/standard/collection/array.nit:273 */
1435 if (UNTAG_Bool(REGB1
)) {
1436 /* ../lib/standard/collection/array.nit:274 */
1437 REGB1
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
1438 if (UNTAG_Bool(REGB1
)) {
1439 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 274);
1441 /* ../lib/standard/collection/array.nit:725 */
1442 fra
.me
.REG
[2] = ((Nit_NativeArray
)fra
.me
.REG
[1])->val
[UNTAG_Int(REGB0
)];
1443 /* ../lib/standard/collection/array.nit:274 */
1444 ((void (*)(struct stack_frame_t
*, val_t
))(CREG
[0]))(closctx_param
, fra
.me
.REG
[2]);
1445 if (closctx_param
->has_broke
) {
1448 /* ../lib/standard/collection/array.nit:275 */
1450 /* ../lib/standard/kernel.nit:245 */
1451 REGB1
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
1452 /* ../lib/standard/collection/array.nit:275 */
1455 /* ../lib/standard/collection/array.nit:273 */
1461 stack_frame_head
= fra
.me
.prev
;
1464 static const char LOCATE_standard___collection___array___Array_____bra
[] = "array::Array::(abstract_collection::SequenceRead::[])";
1465 val_t
standard___collection___array___Array_____bra(val_t p0
, val_t p1
){
1466 struct {struct stack_frame_t me
;} fra
;
1471 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1472 fra
.me
.file
= LOCATE_standard___collection___array
;
1474 fra
.me
.meth
= LOCATE_standard___collection___array___Array_____bra
;
1475 fra
.me
.has_broke
= 0;
1476 fra
.me
.REG_size
= 1;
1477 fra
.me
.nitni_local_ref_head
= NULL
;
1478 fra
.me
.REG
[0] = NIT_NULL
;
1481 /* ../lib/standard/collection/array.nit:281 */
1483 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
1484 if (UNTAG_Bool(REGB2
)) {
1486 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1488 /* ../lib/standard/kernel.nit:243 */
1489 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB1
));
1490 /* ../lib/standard/collection/array.nit:281 */
1491 if (UNTAG_Bool(REGB1
)) {
1492 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
1493 if (UNTAG_Bool(REGB1
)) {
1495 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 281);
1497 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
1498 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
1499 if (UNTAG_Bool(REGB2
)) {
1501 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1503 /* ../lib/standard/kernel.nit:242 */
1504 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
1506 /* ../lib/standard/collection/array.nit:281 */
1507 REGB2
= TAG_Bool(0);
1510 if (UNTAG_Bool(REGB1
)) {
1512 nit_abort("Assert '%s' failed", "index", LOCATE_standard___collection___array
, 281);
1514 /* ../lib/standard/collection/array.nit:282 */
1515 fra
.me
.REG
[0] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[0]);
1516 REGB1
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
1517 if (UNTAG_Bool(REGB1
)) {
1518 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 282);
1520 /* ../lib/standard/collection/array.nit:725 */
1521 fra
.me
.REG
[0] = ((Nit_NativeArray
)fra
.me
.REG
[0])->val
[UNTAG_Int(REGB0
)];
1522 /* ../lib/standard/collection/array.nit:282 */
1525 stack_frame_head
= fra
.me
.prev
;
1526 return fra
.me
.REG
[0];
1528 static const char LOCATE_standard___collection___array___Array_____braeq
[] = "array::Array::(abstract_collection::Sequence::[]=)";
1529 void standard___collection___array___Array_____braeq(val_t p0
, val_t p1
, val_t p2
){
1530 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1535 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1536 fra
.me
.file
= LOCATE_standard___collection___array
;
1538 fra
.me
.meth
= LOCATE_standard___collection___array___Array_____braeq
;
1539 fra
.me
.has_broke
= 0;
1540 fra
.me
.REG_size
= 2;
1541 fra
.me
.nitni_local_ref_head
= NULL
;
1542 fra
.me
.REG
[0] = NIT_NULL
;
1543 fra
.me
.REG
[1] = NIT_NULL
;
1547 /* ../lib/standard/collection/array.nit:287 */
1549 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
1550 if (UNTAG_Bool(REGB2
)) {
1552 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1554 /* ../lib/standard/kernel.nit:243 */
1555 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB1
));
1556 /* ../lib/standard/collection/array.nit:287 */
1557 if (UNTAG_Bool(REGB1
)) {
1558 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
1559 if (UNTAG_Bool(REGB1
)) {
1561 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 287);
1563 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
1565 /* ../lib/standard/kernel.nit:245 */
1566 REGB2
= TAG_Int(UNTAG_Int(REGB1
)+UNTAG_Int(REGB2
));
1567 REGB1
= TAG_Bool(VAL_ISA(REGB2
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
1568 if (UNTAG_Bool(REGB1
)) {
1570 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1572 /* ../lib/standard/kernel.nit:242 */
1573 REGB2
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB2
));
1575 /* ../lib/standard/collection/array.nit:287 */
1576 REGB1
= TAG_Bool(0);
1579 if (UNTAG_Bool(REGB2
)) {
1581 nit_abort("Assert '%s' failed", "index", LOCATE_standard___collection___array
, 287);
1583 /* ../lib/standard/collection/array.nit:288 */
1584 REGB2
= TAG_Bool(ATTR_standard___collection___array___Array____capacity(fra
.me
.REG
[0])!=NIT_NULL
);
1585 if (UNTAG_Bool(REGB2
)) {
1587 nit_abort("Uninitialized attribute %s", "_capacity", LOCATE_standard___collection___array
, 288);
1589 REGB2
= ATTR_standard___collection___array___Array____capacity(fra
.me
.REG
[0]);
1590 REGB1
= TAG_Bool(VAL_ISA(REGB0
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB2
), VTID_standard___kernel___Comparable___OTHER(REGB2
))) /*cast OTHER*/;
1591 if (UNTAG_Bool(REGB1
)) {
1593 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1595 /* ../lib/standard/kernel.nit:241 */
1596 REGB2
= TAG_Bool(UNTAG_Int(REGB2
)<=UNTAG_Int(REGB0
));
1597 /* ../lib/standard/collection/array.nit:288 */
1598 if (UNTAG_Bool(REGB2
)) {
1599 /* ../lib/standard/collection/array.nit:289 */
1601 /* ../lib/standard/kernel.nit:245 */
1602 REGB2
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB2
));
1603 /* ../lib/standard/collection/array.nit:289 */
1604 CALL_standard___collection___array___AbstractArray___enlarge(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB2
);
1606 /* ../lib/standard/collection/array.nit:291 */
1607 REGB2
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
1608 if (UNTAG_Bool(REGB2
)) {
1610 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 291);
1612 REGB2
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
1613 REGB1
= TAG_Bool(VAL_ISA(REGB0
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB2
), VTID_standard___kernel___Comparable___OTHER(REGB2
))) /*cast OTHER*/;
1614 if (UNTAG_Bool(REGB1
)) {
1616 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1618 /* ../lib/standard/kernel.nit:241 */
1619 REGB2
= TAG_Bool(UNTAG_Int(REGB2
)<=UNTAG_Int(REGB0
));
1620 /* ../lib/standard/collection/array.nit:291 */
1621 if (UNTAG_Bool(REGB2
)) {
1622 /* ../lib/standard/collection/array.nit:292 */
1624 /* ../lib/standard/kernel.nit:245 */
1625 REGB2
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB2
));
1626 /* ../lib/standard/collection/array.nit:292 */
1627 ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]) = REGB2
;
1629 /* ../lib/standard/collection/array.nit:294 */
1630 fra
.me
.REG
[0] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[0]);
1631 REGB2
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
1632 if (UNTAG_Bool(REGB2
)) {
1633 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 294);
1635 /* ../lib/standard/collection/array.nit:726 */
1636 ((Nit_NativeArray
)fra
.me
.REG
[0])->val
[UNTAG_Int(REGB0
)]=fra
.me
.REG
[1];
1637 stack_frame_head
= fra
.me
.prev
;
1640 static const char LOCATE_standard___collection___array___Array___add
[] = "array::Array::(abstract_collection::SimpleCollection::add)";
1641 void standard___collection___array___Array___add(val_t p0
, val_t p1
){
1642 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1647 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1648 fra
.me
.file
= LOCATE_standard___collection___array
;
1650 fra
.me
.meth
= LOCATE_standard___collection___array___Array___add
;
1651 fra
.me
.has_broke
= 0;
1652 fra
.me
.REG_size
= 2;
1653 fra
.me
.nitni_local_ref_head
= NULL
;
1654 fra
.me
.REG
[0] = NIT_NULL
;
1655 fra
.me
.REG
[1] = NIT_NULL
;
1658 /* ../lib/standard/collection/array.nit:299 */
1659 REGB0
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
1660 if (UNTAG_Bool(REGB0
)) {
1662 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 299);
1664 REGB0
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
1665 /* ../lib/standard/collection/array.nit:300 */
1666 REGB1
= TAG_Bool(ATTR_standard___collection___array___Array____capacity(fra
.me
.REG
[0])!=NIT_NULL
);
1667 if (UNTAG_Bool(REGB1
)) {
1669 nit_abort("Uninitialized attribute %s", "_capacity", LOCATE_standard___collection___array
, 300);
1671 REGB1
= ATTR_standard___collection___array___Array____capacity(fra
.me
.REG
[0]);
1672 REGB2
= TAG_Bool(VAL_ISA(REGB0
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1
), VTID_standard___kernel___Comparable___OTHER(REGB1
))) /*cast OTHER*/;
1673 if (UNTAG_Bool(REGB2
)) {
1675 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1677 /* ../lib/standard/kernel.nit:241 */
1678 REGB1
= TAG_Bool(UNTAG_Int(REGB1
)<=UNTAG_Int(REGB0
));
1679 /* ../lib/standard/collection/array.nit:300 */
1680 if (UNTAG_Bool(REGB1
)) {
1681 /* ../lib/standard/collection/array.nit:301 */
1683 /* ../lib/standard/kernel.nit:245 */
1684 REGB1
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
1685 /* ../lib/standard/collection/array.nit:301 */
1686 CALL_standard___collection___array___AbstractArray___enlarge(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB1
);
1688 /* ../lib/standard/collection/array.nit:303 */
1690 /* ../lib/standard/kernel.nit:245 */
1691 REGB1
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
1692 /* ../lib/standard/collection/array.nit:303 */
1693 ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]) = REGB1
;
1694 /* ../lib/standard/collection/array.nit:304 */
1695 fra
.me
.REG
[0] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[0]);
1696 REGB1
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
1697 if (UNTAG_Bool(REGB1
)) {
1698 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 304);
1700 /* ../lib/standard/collection/array.nit:726 */
1701 ((Nit_NativeArray
)fra
.me
.REG
[0])->val
[UNTAG_Int(REGB0
)]=fra
.me
.REG
[1];
1702 stack_frame_head
= fra
.me
.prev
;
1705 static const char LOCATE_standard___collection___array___Array___enlarge
[] = "array::Array::(array::AbstractArray::enlarge)";
1706 void standard___collection___array___Array___enlarge(val_t p0
, val_t p1
){
1707 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
1713 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1714 fra
.me
.file
= LOCATE_standard___collection___array
;
1716 fra
.me
.meth
= LOCATE_standard___collection___array___Array___enlarge
;
1717 fra
.me
.has_broke
= 0;
1718 fra
.me
.REG_size
= 3;
1719 fra
.me
.nitni_local_ref_head
= NULL
;
1720 fra
.me
.REG
[0] = NIT_NULL
;
1721 fra
.me
.REG
[1] = NIT_NULL
;
1722 fra
.me
.REG
[2] = NIT_NULL
;
1725 /* ../lib/standard/collection/array.nit:309 */
1726 REGB1
= TAG_Bool(ATTR_standard___collection___array___Array____capacity(fra
.me
.REG
[0])!=NIT_NULL
);
1727 if (UNTAG_Bool(REGB1
)) {
1729 nit_abort("Uninitialized attribute %s", "_capacity", LOCATE_standard___collection___array
, 309);
1731 REGB1
= ATTR_standard___collection___array___Array____capacity(fra
.me
.REG
[0]);
1732 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
1733 if (UNTAG_Bool(REGB2
)) {
1735 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1737 /* ../lib/standard/kernel.nit:241 */
1738 REGB2
= TAG_Bool(UNTAG_Int(REGB0
)<=UNTAG_Int(REGB1
));
1739 /* ../lib/standard/collection/array.nit:310 */
1740 if (UNTAG_Bool(REGB2
)) {
1743 /* ../lib/standard/collection/array.nit:311 */
1745 REGB2
= TAG_Bool(VAL_ISA(REGB0
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1
), VTID_standard___kernel___Comparable___OTHER(REGB1
))) /*cast OTHER*/;
1746 if (UNTAG_Bool(REGB2
)) {
1748 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1750 /* ../lib/standard/kernel.nit:241 */
1751 REGB2
= TAG_Bool(UNTAG_Int(REGB1
)<=UNTAG_Int(REGB0
));
1752 /* ../lib/standard/collection/array.nit:311 */
1753 if (UNTAG_Bool(REGB2
)) {
1755 /* ../lib/standard/kernel.nit:248 */
1756 REGB2
= TAG_Int(UNTAG_Int(REGB1
)*UNTAG_Int(REGB2
));
1757 /* ../lib/standard/collection/array.nit:311 */
1759 /* ../lib/standard/kernel.nit:245 */
1760 REGB3
= TAG_Int(UNTAG_Int(REGB2
)+UNTAG_Int(REGB3
));
1761 /* ../lib/standard/collection/array.nit:311 */
1768 /* ../lib/standard/collection/array.nit:719 */
1769 fra
.me
.REG
[1] = NEW_NativeArray(UNTAG_Int(REGB1
), sizeof(val_t
));
1770 /* ../lib/standard/collection/array.nit:313 */
1771 REGB0
= TAG_Bool(ATTR_standard___collection___array___Array____capacity(fra
.me
.REG
[0])!=NIT_NULL
);
1772 if (UNTAG_Bool(REGB0
)) {
1774 nit_abort("Uninitialized attribute %s", "_capacity", LOCATE_standard___collection___array
, 313);
1776 REGB0
= ATTR_standard___collection___array___Array____capacity(fra
.me
.REG
[0]);
1778 REGB2
= TAG_Bool(VAL_ISA(REGB3
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
1779 if (UNTAG_Bool(REGB2
)) {
1781 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1783 /* ../lib/standard/kernel.nit:244 */
1784 REGB3
= TAG_Bool(UNTAG_Int(REGB0
)>UNTAG_Int(REGB3
));
1785 /* ../lib/standard/collection/array.nit:313 */
1786 if (UNTAG_Bool(REGB3
)) {
1787 fra
.me
.REG
[2] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[0]);
1788 REGB3
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
1789 if (UNTAG_Bool(REGB3
)) {
1791 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 313);
1793 REGB3
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
1794 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
1795 if (UNTAG_Bool(REGB0
)) {
1796 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 313);
1798 /* ../lib/standard/collection/array.nit:727 */
1799 (void)memcpy(((Nit_NativeArray
)fra
.me
.REG
[1])->val
, ((Nit_NativeArray
)fra
.me
.REG
[2])->val
, UNTAG_Int(REGB3
)*sizeof(val_t
));
1801 /* ../lib/standard/collection/array.nit:314 */
1802 ATTR_standard___collection___array___Array____items(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
1803 /* ../lib/standard/collection/array.nit:315 */
1804 ATTR_standard___collection___array___Array____capacity(fra
.me
.REG
[0]) = REGB1
;
1806 stack_frame_head
= fra
.me
.prev
;
1809 static const char LOCATE_standard___collection___array___Array___init
[] = "array::Array::init";
1810 void standard___collection___array___Array___init(val_t p0
, int* init_table
){
1811 int itpos1
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_standard___collection___array___Array
].i
;
1812 struct {struct stack_frame_t me
;} fra
;
1815 if (init_table
[itpos1
]) return;
1816 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1817 fra
.me
.file
= LOCATE_standard___collection___array
;
1819 fra
.me
.meth
= LOCATE_standard___collection___array___Array___init
;
1820 fra
.me
.has_broke
= 0;
1821 fra
.me
.REG_size
= 1;
1822 fra
.me
.nitni_local_ref_head
= NULL
;
1823 fra
.me
.REG
[0] = NIT_NULL
;
1825 /* ../lib/standard/collection/array.nit:321 */
1827 ATTR_standard___collection___array___Array____capacity(fra
.me
.REG
[0]) = REGB0
;
1828 /* ../lib/standard/collection/array.nit:322 */
1830 ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]) = REGB0
;
1831 stack_frame_head
= fra
.me
.prev
;
1832 init_table
[itpos1
] = 1;
1835 static const char LOCATE_standard___collection___array___Array___from
[] = "array::Array::from";
1836 void standard___collection___array___Array___from(val_t p0
, val_t p1
, int* init_table
){
1837 int itpos2
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_standard___collection___array___Array
].i
;
1838 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1841 if (init_table
[itpos2
]) return;
1842 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1843 fra
.me
.file
= LOCATE_standard___collection___array
;
1845 fra
.me
.meth
= LOCATE_standard___collection___array___Array___from
;
1846 fra
.me
.has_broke
= 0;
1847 fra
.me
.REG_size
= 2;
1848 fra
.me
.nitni_local_ref_head
= NULL
;
1849 fra
.me
.REG
[0] = NIT_NULL
;
1850 fra
.me
.REG
[1] = NIT_NULL
;
1853 /* ../lib/standard/collection/array.nit:327 */
1854 REGB0
= CALL_standard___collection___abstract_collection___Collection___length(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1855 CALL_standard___collection___array___Array___with_capacity(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
, init_table
);
1856 /* ../lib/standard/collection/array.nit:328 */
1857 CALL_standard___collection___abstract_collection___SimpleCollection___add_all(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
1858 stack_frame_head
= fra
.me
.prev
;
1859 init_table
[itpos2
] = 1;
1862 static const char LOCATE_standard___collection___array___Array___with_items
[] = "array::Array::with_items";
1863 void standard___collection___array___Array___with_items(val_t p0
, val_t p1
, int* init_table
){
1864 int itpos3
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_standard___collection___array___Array
].i
;
1865 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
1868 if (init_table
[itpos3
]) return;
1869 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1870 fra
.me
.file
= LOCATE_standard___collection___array
;
1872 fra
.me
.meth
= LOCATE_standard___collection___array___Array___with_items
;
1873 fra
.me
.has_broke
= 0;
1874 fra
.me
.REG_size
= 3;
1875 fra
.me
.nitni_local_ref_head
= NULL
;
1876 fra
.me
.REG
[0] = NIT_NULL
;
1877 fra
.me
.REG
[1] = NIT_NULL
;
1878 fra
.me
.REG
[2] = NIT_NULL
;
1881 /* ../lib/standard/collection/array.nit:331 */
1882 fra
.me
.REG
[2] = fra
.me
.REG
[0];
1883 REGB0
= TAG_Bool((fra
.me
.REG
[1]!=NIT_NULL
) && VAL_ISA(fra
.me
.REG
[1], COLOR_standard___collection___array___Array
, ID_standard___collection___array___Array
)) /*cast Array[E]*/;
1884 if (UNTAG_Bool(REGB0
)) {
1886 nit_abort("Cast failed", NULL
, LOCATE_standard___collection___array
, 331);
1888 /* ../lib/standard/collection/array.nit:334 */
1889 fra
.me
.REG
[0] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[1]);
1890 ATTR_standard___collection___array___Array____items(fra
.me
.REG
[2]) = fra
.me
.REG
[0];
1891 /* ../lib/standard/collection/array.nit:335 */
1892 REGB0
= TAG_Bool(ATTR_standard___collection___array___Array____capacity(fra
.me
.REG
[1])!=NIT_NULL
);
1893 if (UNTAG_Bool(REGB0
)) {
1895 nit_abort("Uninitialized attribute %s", "_capacity", LOCATE_standard___collection___array
, 335);
1897 REGB0
= ATTR_standard___collection___array___Array____capacity(fra
.me
.REG
[1]);
1898 ATTR_standard___collection___array___Array____capacity(fra
.me
.REG
[2]) = REGB0
;
1899 /* ../lib/standard/collection/array.nit:24 */
1900 REGB0
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[1])!=NIT_NULL
);
1901 if (UNTAG_Bool(REGB0
)) {
1903 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
1905 REGB0
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[1]);
1906 /* ../lib/standard/collection/array.nit:336 */
1907 ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2]) = REGB0
;
1908 stack_frame_head
= fra
.me
.prev
;
1909 init_table
[itpos3
] = 1;
1912 static const char LOCATE_standard___collection___array___Array___with_capacity
[] = "array::Array::with_capacity";
1913 void standard___collection___array___Array___with_capacity(val_t p0
, val_t p1
, int* init_table
){
1914 int itpos4
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_standard___collection___array___Array
].i
;
1915 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1920 if (init_table
[itpos4
]) return;
1921 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1922 fra
.me
.file
= LOCATE_standard___collection___array
;
1924 fra
.me
.meth
= LOCATE_standard___collection___array___Array___with_capacity
;
1925 fra
.me
.has_broke
= 0;
1926 fra
.me
.REG_size
= 2;
1927 fra
.me
.nitni_local_ref_head
= NULL
;
1928 fra
.me
.REG
[0] = NIT_NULL
;
1929 fra
.me
.REG
[1] = NIT_NULL
;
1932 /* ../lib/standard/collection/array.nit:342 */
1934 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
1935 if (UNTAG_Bool(REGB2
)) {
1937 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1939 /* ../lib/standard/kernel.nit:243 */
1940 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB1
));
1941 /* ../lib/standard/collection/array.nit:342 */
1942 if (UNTAG_Bool(REGB1
)) {
1944 nit_abort("Assert '%s' failed", "positive", LOCATE_standard___collection___array
, 342);
1946 /* ../lib/standard/collection/array.nit:719 */
1947 fra
.me
.REG
[1] = NEW_NativeArray(UNTAG_Int(REGB0
), sizeof(val_t
));
1948 /* ../lib/standard/collection/array.nit:343 */
1949 ATTR_standard___collection___array___Array____items(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
1950 /* ../lib/standard/collection/array.nit:344 */
1951 ATTR_standard___collection___array___Array____capacity(fra
.me
.REG
[0]) = REGB0
;
1952 /* ../lib/standard/collection/array.nit:345 */
1954 ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]) = REGB0
;
1955 stack_frame_head
= fra
.me
.prev
;
1956 init_table
[itpos4
] = 1;
1959 static const char LOCATE_standard___collection___array___Array___filled_with
[] = "array::Array::filled_with";
1960 void standard___collection___array___Array___filled_with(val_t p0
, val_t p1
, val_t p2
, int* init_table
){
1961 int itpos5
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_standard___collection___array___Array
].i
;
1962 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
1967 if (init_table
[itpos5
]) return;
1968 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1969 fra
.me
.file
= LOCATE_standard___collection___array
;
1971 fra
.me
.meth
= LOCATE_standard___collection___array___Array___filled_with
;
1972 fra
.me
.has_broke
= 0;
1973 fra
.me
.REG_size
= 3;
1974 fra
.me
.nitni_local_ref_head
= NULL
;
1975 fra
.me
.REG
[0] = NIT_NULL
;
1976 fra
.me
.REG
[1] = NIT_NULL
;
1977 fra
.me
.REG
[2] = NIT_NULL
;
1981 /* ../lib/standard/collection/array.nit:351 */
1983 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
1984 if (UNTAG_Bool(REGB2
)) {
1986 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1988 /* ../lib/standard/kernel.nit:243 */
1989 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB1
));
1990 /* ../lib/standard/collection/array.nit:351 */
1991 if (UNTAG_Bool(REGB1
)) {
1993 nit_abort("Assert '%s' failed", "positive", LOCATE_standard___collection___array
, 351);
1995 /* ../lib/standard/collection/array.nit:719 */
1996 fra
.me
.REG
[2] = NEW_NativeArray(UNTAG_Int(REGB0
), sizeof(val_t
));
1997 /* ../lib/standard/collection/array.nit:352 */
1998 ATTR_standard___collection___array___Array____items(fra
.me
.REG
[0]) = fra
.me
.REG
[2];
1999 /* ../lib/standard/collection/array.nit:353 */
2000 ATTR_standard___collection___array___Array____capacity(fra
.me
.REG
[0]) = REGB0
;
2001 /* ../lib/standard/collection/array.nit:354 */
2002 ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]) = REGB0
;
2003 /* ../lib/standard/collection/array.nit:355 */
2005 /* ../lib/standard/collection/array.nit:356 */
2007 REGB2
= TAG_Bool(VAL_ISA(REGB0
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1
), VTID_standard___kernel___Comparable___OTHER(REGB1
))) /*cast OTHER*/;
2008 if (UNTAG_Bool(REGB2
)) {
2010 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2012 /* ../lib/standard/kernel.nit:242 */
2013 REGB2
= TAG_Bool(UNTAG_Int(REGB1
)<UNTAG_Int(REGB0
));
2014 /* ../lib/standard/collection/array.nit:356 */
2015 if (UNTAG_Bool(REGB2
)) {
2016 /* ../lib/standard/collection/array.nit:357 */
2017 CALL_standard___collection___abstract_collection___Sequence_____braeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB1
, fra
.me
.REG
[1]);
2018 /* ../lib/standard/collection/array.nit:358 */
2020 /* ../lib/standard/kernel.nit:245 */
2021 REGB2
= TAG_Int(UNTAG_Int(REGB1
)+UNTAG_Int(REGB2
));
2022 /* ../lib/standard/collection/array.nit:358 */
2025 /* ../lib/standard/collection/array.nit:356 */
2030 stack_frame_head
= fra
.me
.prev
;
2031 init_table
[itpos5
] = 1;
2034 static const char LOCATE_standard___collection___array___Array___with_native
[] = "array::Array::with_native";
2035 void standard___collection___array___Array___with_native(val_t p0
, val_t p1
, val_t p2
, int* init_table
){
2036 int itpos6
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_standard___collection___array___Array
].i
;
2037 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
2042 if (init_table
[itpos6
]) return;
2043 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2044 fra
.me
.file
= LOCATE_standard___collection___array
;
2046 fra
.me
.meth
= LOCATE_standard___collection___array___Array___with_native
;
2047 fra
.me
.has_broke
= 0;
2048 fra
.me
.REG_size
= 2;
2049 fra
.me
.nitni_local_ref_head
= NULL
;
2050 fra
.me
.REG
[0] = NIT_NULL
;
2051 fra
.me
.REG
[1] = NIT_NULL
;
2055 /* ../lib/standard/collection/array.nit:365 */
2057 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
2058 if (UNTAG_Bool(REGB2
)) {
2060 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2062 /* ../lib/standard/kernel.nit:243 */
2063 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB1
));
2064 /* ../lib/standard/collection/array.nit:365 */
2065 if (UNTAG_Bool(REGB1
)) {
2067 nit_abort("Assert '%s' failed", "positive", LOCATE_standard___collection___array
, 365);
2069 /* ../lib/standard/collection/array.nit:366 */
2070 ATTR_standard___collection___array___Array____items(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
2071 /* ../lib/standard/collection/array.nit:367 */
2072 ATTR_standard___collection___array___Array____capacity(fra
.me
.REG
[0]) = REGB0
;
2073 /* ../lib/standard/collection/array.nit:368 */
2074 ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]) = REGB0
;
2075 stack_frame_head
= fra
.me
.prev
;
2076 init_table
[itpos6
] = 1;
2079 static const char LOCATE_standard___collection___array___Array___intern_items
[] = "array::Array::intern_items";
2080 val_t
standard___collection___array___Array___intern_items(val_t p0
){
2081 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
2084 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2085 fra
.me
.file
= LOCATE_standard___collection___array
;
2087 fra
.me
.meth
= LOCATE_standard___collection___array___Array___intern_items
;
2088 fra
.me
.has_broke
= 0;
2089 fra
.me
.REG_size
= 2;
2090 fra
.me
.nitni_local_ref_head
= NULL
;
2091 fra
.me
.REG
[0] = NIT_NULL
;
2092 fra
.me
.REG
[1] = NIT_NULL
;
2094 /* ../lib/standard/collection/array.nit:374 */
2095 fra
.me
.REG
[1] = fra
.me
.REG
[0];
2096 /* ../lib/standard/collection/array.nit:376 */
2097 fra
.me
.REG
[1] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[1]);
2098 REGB0
= TAG_Bool(fra
.me
.REG
[1]!=NIT_NULL
);
2099 if (UNTAG_Bool(REGB0
)) {
2101 nit_abort("Cast failed", NULL
, LOCATE_standard___collection___array
, 376);
2105 stack_frame_head
= fra
.me
.prev
;
2106 return fra
.me
.REG
[1];
2108 static const char LOCATE_standard___collection___array___Array___sort
[] = "array::Array::sort";
2109 void standard___collection___array___Array___sort(val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
){
2110 struct {struct stack_frame_t me
;} fra
;
2116 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2117 fra
.me
.file
= LOCATE_standard___collection___array
;
2119 fra
.me
.meth
= LOCATE_standard___collection___array___Array___sort
;
2120 fra
.me
.has_broke
= 0;
2121 fra
.me
.REG_size
= 1;
2122 fra
.me
.nitni_local_ref_head
= NULL
;
2123 fra
.me
.REG
[0] = NIT_NULL
;
2124 fra
.me
.closure_ctx
= closctx_param
;
2125 fra
.me
.closure_funs
= CREG
;
2127 CREG
[0] = clos_fun0
;
2128 /* ../lib/standard/collection/array.nit:385 */
2130 /* ../lib/standard/collection/array.nit:24 */
2131 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
2132 if (UNTAG_Bool(REGB1
)) {
2134 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
2136 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
2137 /* ../lib/standard/collection/array.nit:385 */
2139 /* ../lib/standard/kernel.nit:247 */
2140 REGB2
= TAG_Int(UNTAG_Int(REGB1
)-UNTAG_Int(REGB2
));
2141 CALL_standard___collection___array___Array___sub_sort(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
, REGB2
, (&(fra
.me
)), ((fun_t
)OC_standard___collection___array___Array___sort_1
));
2142 switch ((&(fra
.me
))->has_broke
) {
2144 case 1: (&(fra
.me
))->has_broke
= 0; goto label3
;
2147 stack_frame_head
= fra
.me
.prev
;
2150 val_t
OC_standard___collection___array___Array___sort_1(struct stack_frame_t
*closctx
, val_t p0
, val_t p1
){
2151 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
2154 /* ../lib/standard/collection/array.nit:385 */
2155 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2156 fra
.me
.file
= LOCATE_standard___collection___array
;
2158 fra
.me
.meth
= LOCATE_standard___collection___array___Array___sort
;
2159 fra
.me
.has_broke
= 0;
2160 fra
.me
.REG_size
= 2;
2161 fra
.me
.nitni_local_ref_head
= NULL
;
2162 fra
.me
.REG
[0] = NIT_NULL
;
2163 fra
.me
.REG
[1] = NIT_NULL
;
2166 REGB0
= ((val_t (*)(struct stack_frame_t
*, val_t
, val_t
))(closctx
->closure_funs
[0]))(closctx
->closure_ctx
, fra
.me
.REG
[0], fra
.me
.REG
[1]);
2167 if (closctx
->closure_ctx
->has_broke
) {
2168 closctx
->has_broke
= 1;
2173 stack_frame_head
= fra
.me
.prev
;
2176 static const char LOCATE_standard___collection___array___Array___sub_sort
[] = "array::Array::sub_sort";
2177 void standard___collection___array___Array___sub_sort(val_t p0
, val_t p1
, val_t p2
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
){
2178 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
2188 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2189 fra
.me
.file
= LOCATE_standard___collection___array
;
2191 fra
.me
.meth
= LOCATE_standard___collection___array___Array___sub_sort
;
2192 fra
.me
.has_broke
= 0;
2193 fra
.me
.REG_size
= 4;
2194 fra
.me
.nitni_local_ref_head
= NULL
;
2195 fra
.me
.REG
[0] = NIT_NULL
;
2196 fra
.me
.REG
[1] = NIT_NULL
;
2197 fra
.me
.REG
[2] = NIT_NULL
;
2198 fra
.me
.REG
[3] = NIT_NULL
;
2199 fra
.me
.closure_ctx
= closctx_param
;
2200 fra
.me
.closure_funs
= CREG
;
2204 CREG
[0] = clos_fun0
;
2205 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
2206 if (UNTAG_Bool(REGB2
)) {
2208 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2210 /* ../lib/standard/kernel.nit:243 */
2211 REGB2
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB1
));
2212 /* ../lib/standard/collection/array.nit:392 */
2213 if (UNTAG_Bool(REGB2
)) {
2214 /* ../lib/standard/collection/array.nit:393 */
2217 /* ../lib/standard/collection/array.nit:394 */
2219 /* ../lib/standard/kernel.nit:245 */
2220 REGB2
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB2
));
2221 REGB3
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB2
), VTID_standard___kernel___Comparable___OTHER(REGB2
))) /*cast OTHER*/;
2222 if (UNTAG_Bool(REGB3
)) {
2224 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2226 /* ../lib/standard/kernel.nit:242 */
2227 REGB2
= TAG_Bool(UNTAG_Int(REGB2
)<UNTAG_Int(REGB1
));
2228 /* ../lib/standard/collection/array.nit:394 */
2229 if (UNTAG_Bool(REGB2
)) {
2230 /* ../lib/standard/collection/array.nit:279 */
2231 fra
.me
.REG
[1] = fra
.me
.REG
[0];
2233 /* ../lib/standard/collection/array.nit:281 */
2235 REGB4
= TAG_Bool(VAL_ISA(REGB3
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB2
), VTID_standard___kernel___Comparable___OTHER(REGB2
))) /*cast OTHER*/;
2236 if (UNTAG_Bool(REGB4
)) {
2238 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2240 /* ../lib/standard/kernel.nit:243 */
2241 REGB3
= TAG_Bool(UNTAG_Int(REGB2
)>=UNTAG_Int(REGB3
));
2242 /* ../lib/standard/collection/array.nit:281 */
2243 if (UNTAG_Bool(REGB3
)) {
2244 REGB3
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[1])!=NIT_NULL
);
2245 if (UNTAG_Bool(REGB3
)) {
2247 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 281);
2249 REGB3
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[1]);
2250 REGB4
= TAG_Bool(VAL_ISA(REGB3
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB2
), VTID_standard___kernel___Comparable___OTHER(REGB2
))) /*cast OTHER*/;
2251 if (UNTAG_Bool(REGB4
)) {
2253 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2255 /* ../lib/standard/kernel.nit:242 */
2256 REGB3
= TAG_Bool(UNTAG_Int(REGB2
)<UNTAG_Int(REGB3
));
2258 /* ../lib/standard/collection/array.nit:281 */
2259 REGB4
= TAG_Bool(0);
2262 if (UNTAG_Bool(REGB3
)) {
2264 nit_abort("Assert '%s' failed", "index", LOCATE_standard___collection___array
, 281);
2266 /* ../lib/standard/collection/array.nit:282 */
2267 fra
.me
.REG
[1] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[1]);
2268 REGB3
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
2269 if (UNTAG_Bool(REGB3
)) {
2270 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 282);
2272 /* ../lib/standard/collection/array.nit:725 */
2273 fra
.me
.REG
[1] = ((Nit_NativeArray
)fra
.me
.REG
[1])->val
[UNTAG_Int(REGB2
)];
2274 /* ../lib/standard/collection/array.nit:282 */
2277 /* ../lib/standard/collection/array.nit:396 */
2279 /* ../lib/standard/collection/array.nit:397 */
2281 /* ../lib/standard/collection/array.nit:398 */
2283 REGB4
= TAG_Bool(VAL_ISA(REGB2
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB3
), VTID_standard___kernel___Comparable___OTHER(REGB3
))) /*cast OTHER*/;
2284 if (UNTAG_Bool(REGB4
)) {
2286 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2288 /* ../lib/standard/kernel.nit:244 */
2289 REGB4
= TAG_Bool(UNTAG_Int(REGB3
)>UNTAG_Int(REGB2
));
2290 /* ../lib/standard/collection/array.nit:398 */
2291 if (UNTAG_Bool(REGB4
)) {
2292 /* ../lib/standard/collection/array.nit:399 */
2294 REGB4
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB2
), VTID_standard___kernel___Comparable___OTHER(REGB2
))) /*cast OTHER*/;
2295 if (UNTAG_Bool(REGB4
)) {
2297 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2299 /* ../lib/standard/kernel.nit:241 */
2300 REGB4
= TAG_Bool(UNTAG_Int(REGB2
)<=UNTAG_Int(REGB1
));
2301 /* ../lib/standard/collection/array.nit:399 */
2302 if (UNTAG_Bool(REGB4
)) {
2303 /* ../lib/standard/collection/array.nit:279 */
2304 fra
.me
.REG
[2] = fra
.me
.REG
[0];
2306 /* ../lib/standard/collection/array.nit:281 */
2308 REGB6
= TAG_Bool(VAL_ISA(REGB5
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB4
), VTID_standard___kernel___Comparable___OTHER(REGB4
))) /*cast OTHER*/;
2309 if (UNTAG_Bool(REGB6
)) {
2311 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2313 /* ../lib/standard/kernel.nit:243 */
2314 REGB5
= TAG_Bool(UNTAG_Int(REGB4
)>=UNTAG_Int(REGB5
));
2315 /* ../lib/standard/collection/array.nit:281 */
2316 if (UNTAG_Bool(REGB5
)) {
2317 REGB5
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
2318 if (UNTAG_Bool(REGB5
)) {
2320 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 281);
2322 REGB5
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2]);
2323 REGB6
= TAG_Bool(VAL_ISA(REGB5
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB4
), VTID_standard___kernel___Comparable___OTHER(REGB4
))) /*cast OTHER*/;
2324 if (UNTAG_Bool(REGB6
)) {
2326 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2328 /* ../lib/standard/kernel.nit:242 */
2329 REGB5
= TAG_Bool(UNTAG_Int(REGB4
)<UNTAG_Int(REGB5
));
2331 /* ../lib/standard/collection/array.nit:281 */
2332 REGB6
= TAG_Bool(0);
2335 if (UNTAG_Bool(REGB5
)) {
2337 nit_abort("Assert '%s' failed", "index", LOCATE_standard___collection___array
, 281);
2339 /* ../lib/standard/collection/array.nit:282 */
2340 fra
.me
.REG
[2] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[2]);
2341 REGB5
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
2342 if (UNTAG_Bool(REGB5
)) {
2343 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 282);
2345 /* ../lib/standard/collection/array.nit:725 */
2346 fra
.me
.REG
[2] = ((Nit_NativeArray
)fra
.me
.REG
[2])->val
[UNTAG_Int(REGB4
)];
2347 /* ../lib/standard/collection/array.nit:282 */
2350 /* ../lib/standard/collection/array.nit:399 */
2351 REGB4
= ((val_t (*)(struct stack_frame_t
*, val_t
, val_t
))(CREG
[0]))(closctx_param
, fra
.me
.REG
[2], fra
.me
.REG
[1]);
2352 if (closctx_param
->has_broke
) {
2356 REGB6
= TAG_Bool(VAL_ISA(REGB5
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB4
), VTID_standard___kernel___Comparable___OTHER(REGB4
))) /*cast OTHER*/;
2357 if (UNTAG_Bool(REGB6
)) {
2359 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2361 /* ../lib/standard/kernel.nit:241 */
2362 REGB5
= TAG_Bool(UNTAG_Int(REGB4
)<=UNTAG_Int(REGB5
));
2364 /* ../lib/standard/collection/array.nit:399 */
2365 REGB4
= TAG_Bool(0);
2368 if (UNTAG_Bool(REGB5
)) {
2370 /* ../lib/standard/kernel.nit:245 */
2371 REGB5
= TAG_Int(UNTAG_Int(REGB2
)+UNTAG_Int(REGB5
));
2372 /* ../lib/standard/collection/array.nit:399 */
2379 /* ../lib/standard/collection/array.nit:400 */
2381 REGB5
= TAG_Bool(VAL_ISA(REGB2
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB3
), VTID_standard___kernel___Comparable___OTHER(REGB3
))) /*cast OTHER*/;
2382 if (UNTAG_Bool(REGB5
)) {
2384 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2386 /* ../lib/standard/kernel.nit:244 */
2387 REGB5
= TAG_Bool(UNTAG_Int(REGB3
)>UNTAG_Int(REGB2
));
2388 /* ../lib/standard/collection/array.nit:400 */
2389 if (UNTAG_Bool(REGB5
)) {
2390 /* ../lib/standard/collection/array.nit:279 */
2391 fra
.me
.REG
[2] = fra
.me
.REG
[0];
2393 /* ../lib/standard/collection/array.nit:281 */
2395 REGB6
= TAG_Bool(VAL_ISA(REGB4
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB5
), VTID_standard___kernel___Comparable___OTHER(REGB5
))) /*cast OTHER*/;
2396 if (UNTAG_Bool(REGB6
)) {
2398 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2400 /* ../lib/standard/kernel.nit:243 */
2401 REGB4
= TAG_Bool(UNTAG_Int(REGB5
)>=UNTAG_Int(REGB4
));
2402 /* ../lib/standard/collection/array.nit:281 */
2403 if (UNTAG_Bool(REGB4
)) {
2404 REGB4
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
2405 if (UNTAG_Bool(REGB4
)) {
2407 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 281);
2409 REGB4
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2]);
2410 REGB6
= TAG_Bool(VAL_ISA(REGB4
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB5
), VTID_standard___kernel___Comparable___OTHER(REGB5
))) /*cast OTHER*/;
2411 if (UNTAG_Bool(REGB6
)) {
2413 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2415 /* ../lib/standard/kernel.nit:242 */
2416 REGB4
= TAG_Bool(UNTAG_Int(REGB5
)<UNTAG_Int(REGB4
));
2418 /* ../lib/standard/collection/array.nit:281 */
2419 REGB6
= TAG_Bool(0);
2422 if (UNTAG_Bool(REGB4
)) {
2424 nit_abort("Assert '%s' failed", "index", LOCATE_standard___collection___array
, 281);
2426 /* ../lib/standard/collection/array.nit:282 */
2427 fra
.me
.REG
[2] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[2]);
2428 REGB4
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
2429 if (UNTAG_Bool(REGB4
)) {
2430 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 282);
2432 /* ../lib/standard/collection/array.nit:725 */
2433 fra
.me
.REG
[2] = ((Nit_NativeArray
)fra
.me
.REG
[2])->val
[UNTAG_Int(REGB5
)];
2434 /* ../lib/standard/collection/array.nit:282 */
2437 /* ../lib/standard/collection/array.nit:400 */
2438 REGB5
= ((val_t (*)(struct stack_frame_t
*, val_t
, val_t
))(CREG
[0]))(closctx_param
, fra
.me
.REG
[2], fra
.me
.REG
[1]);
2439 if (closctx_param
->has_broke
) {
2443 REGB6
= TAG_Bool(VAL_ISA(REGB4
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB5
), VTID_standard___kernel___Comparable___OTHER(REGB5
))) /*cast OTHER*/;
2444 if (UNTAG_Bool(REGB6
)) {
2446 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2448 /* ../lib/standard/kernel.nit:243 */
2449 REGB4
= TAG_Bool(UNTAG_Int(REGB5
)>=UNTAG_Int(REGB4
));
2451 /* ../lib/standard/collection/array.nit:400 */
2452 REGB5
= TAG_Bool(0);
2455 if (UNTAG_Bool(REGB4
)) {
2457 /* ../lib/standard/kernel.nit:247 */
2458 REGB4
= TAG_Int(UNTAG_Int(REGB3
)-UNTAG_Int(REGB4
));
2459 /* ../lib/standard/collection/array.nit:400 */
2466 REGB4
= TAG_Bool(VAL_ISA(REGB2
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB3
), VTID_standard___kernel___Comparable___OTHER(REGB3
))) /*cast OTHER*/;
2467 if (UNTAG_Bool(REGB4
)) {
2469 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2471 /* ../lib/standard/kernel.nit:244 */
2472 REGB4
= TAG_Bool(UNTAG_Int(REGB3
)>UNTAG_Int(REGB2
));
2473 /* ../lib/standard/collection/array.nit:401 */
2474 if (UNTAG_Bool(REGB4
)) {
2475 /* ../lib/standard/collection/array.nit:279 */
2476 fra
.me
.REG
[2] = fra
.me
.REG
[0];
2478 /* ../lib/standard/collection/array.nit:281 */
2480 REGB6
= TAG_Bool(VAL_ISA(REGB5
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB4
), VTID_standard___kernel___Comparable___OTHER(REGB4
))) /*cast OTHER*/;
2481 if (UNTAG_Bool(REGB6
)) {
2483 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2485 /* ../lib/standard/kernel.nit:243 */
2486 REGB5
= TAG_Bool(UNTAG_Int(REGB4
)>=UNTAG_Int(REGB5
));
2487 /* ../lib/standard/collection/array.nit:281 */
2488 if (UNTAG_Bool(REGB5
)) {
2489 REGB5
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
2490 if (UNTAG_Bool(REGB5
)) {
2492 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 281);
2494 REGB5
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2]);
2495 REGB6
= TAG_Bool(VAL_ISA(REGB5
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB4
), VTID_standard___kernel___Comparable___OTHER(REGB4
))) /*cast OTHER*/;
2496 if (UNTAG_Bool(REGB6
)) {
2498 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2500 /* ../lib/standard/kernel.nit:242 */
2501 REGB5
= TAG_Bool(UNTAG_Int(REGB4
)<UNTAG_Int(REGB5
));
2503 /* ../lib/standard/collection/array.nit:281 */
2504 REGB6
= TAG_Bool(0);
2507 if (UNTAG_Bool(REGB5
)) {
2509 nit_abort("Assert '%s' failed", "index", LOCATE_standard___collection___array
, 281);
2511 /* ../lib/standard/collection/array.nit:282 */
2512 fra
.me
.REG
[2] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[2]);
2513 REGB5
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
2514 if (UNTAG_Bool(REGB5
)) {
2515 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 282);
2517 /* ../lib/standard/collection/array.nit:725 */
2518 fra
.me
.REG
[2] = ((Nit_NativeArray
)fra
.me
.REG
[2])->val
[UNTAG_Int(REGB4
)];
2519 /* ../lib/standard/collection/array.nit:282 */
2522 /* ../lib/standard/collection/array.nit:279 */
2523 fra
.me
.REG
[3] = fra
.me
.REG
[0];
2525 /* ../lib/standard/collection/array.nit:281 */
2527 REGB6
= TAG_Bool(VAL_ISA(REGB5
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB4
), VTID_standard___kernel___Comparable___OTHER(REGB4
))) /*cast OTHER*/;
2528 if (UNTAG_Bool(REGB6
)) {
2530 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2532 /* ../lib/standard/kernel.nit:243 */
2533 REGB5
= TAG_Bool(UNTAG_Int(REGB4
)>=UNTAG_Int(REGB5
));
2534 /* ../lib/standard/collection/array.nit:281 */
2535 if (UNTAG_Bool(REGB5
)) {
2536 REGB5
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[3])!=NIT_NULL
);
2537 if (UNTAG_Bool(REGB5
)) {
2539 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 281);
2541 REGB5
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[3]);
2542 REGB6
= TAG_Bool(VAL_ISA(REGB5
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB4
), VTID_standard___kernel___Comparable___OTHER(REGB4
))) /*cast OTHER*/;
2543 if (UNTAG_Bool(REGB6
)) {
2545 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2547 /* ../lib/standard/kernel.nit:242 */
2548 REGB5
= TAG_Bool(UNTAG_Int(REGB4
)<UNTAG_Int(REGB5
));
2550 /* ../lib/standard/collection/array.nit:281 */
2551 REGB6
= TAG_Bool(0);
2554 if (UNTAG_Bool(REGB5
)) {
2556 nit_abort("Assert '%s' failed", "index", LOCATE_standard___collection___array
, 281);
2558 /* ../lib/standard/collection/array.nit:282 */
2559 fra
.me
.REG
[3] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[3]);
2560 REGB5
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
2561 if (UNTAG_Bool(REGB5
)) {
2562 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 282);
2564 /* ../lib/standard/collection/array.nit:725 */
2565 fra
.me
.REG
[3] = ((Nit_NativeArray
)fra
.me
.REG
[3])->val
[UNTAG_Int(REGB4
)];
2566 /* ../lib/standard/collection/array.nit:282 */
2569 /* ../lib/standard/collection/array.nit:403 */
2570 CALL_standard___collection___abstract_collection___Sequence_____braeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB2
, fra
.me
.REG
[3]);
2571 /* ../lib/standard/collection/array.nit:404 */
2572 CALL_standard___collection___abstract_collection___Sequence_____braeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB3
, fra
.me
.REG
[2]);
2575 /* ../lib/standard/collection/array.nit:398 */
2580 /* ../lib/standard/collection/array.nit:407 */
2582 /* ../lib/standard/kernel.nit:247 */
2583 REGB3
= TAG_Int(UNTAG_Int(REGB2
)-UNTAG_Int(REGB3
));
2584 /* ../lib/standard/collection/array.nit:279 */
2585 fra
.me
.REG
[2] = fra
.me
.REG
[0];
2586 /* ../lib/standard/collection/array.nit:281 */
2588 REGB5
= TAG_Bool(VAL_ISA(REGB4
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB3
), VTID_standard___kernel___Comparable___OTHER(REGB3
))) /*cast OTHER*/;
2589 if (UNTAG_Bool(REGB5
)) {
2591 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2593 /* ../lib/standard/kernel.nit:243 */
2594 REGB4
= TAG_Bool(UNTAG_Int(REGB3
)>=UNTAG_Int(REGB4
));
2595 /* ../lib/standard/collection/array.nit:281 */
2596 if (UNTAG_Bool(REGB4
)) {
2597 REGB4
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
2598 if (UNTAG_Bool(REGB4
)) {
2600 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 281);
2602 REGB4
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2]);
2603 REGB5
= TAG_Bool(VAL_ISA(REGB4
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB3
), VTID_standard___kernel___Comparable___OTHER(REGB3
))) /*cast OTHER*/;
2604 if (UNTAG_Bool(REGB5
)) {
2606 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2608 /* ../lib/standard/kernel.nit:242 */
2609 REGB4
= TAG_Bool(UNTAG_Int(REGB3
)<UNTAG_Int(REGB4
));
2611 /* ../lib/standard/collection/array.nit:281 */
2612 REGB5
= TAG_Bool(0);
2615 if (UNTAG_Bool(REGB4
)) {
2617 nit_abort("Assert '%s' failed", "index", LOCATE_standard___collection___array
, 281);
2619 /* ../lib/standard/collection/array.nit:282 */
2620 fra
.me
.REG
[2] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[2]);
2621 REGB4
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
2622 if (UNTAG_Bool(REGB4
)) {
2623 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 282);
2625 /* ../lib/standard/collection/array.nit:725 */
2626 fra
.me
.REG
[2] = ((Nit_NativeArray
)fra
.me
.REG
[2])->val
[UNTAG_Int(REGB3
)];
2627 /* ../lib/standard/collection/array.nit:282 */
2630 /* ../lib/standard/collection/array.nit:407 */
2631 CALL_standard___collection___abstract_collection___Sequence_____braeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
, fra
.me
.REG
[2]);
2632 /* ../lib/standard/collection/array.nit:408 */
2634 /* ../lib/standard/kernel.nit:247 */
2635 REGB3
= TAG_Int(UNTAG_Int(REGB2
)-UNTAG_Int(REGB3
));
2636 /* ../lib/standard/collection/array.nit:408 */
2637 CALL_standard___collection___abstract_collection___Sequence_____braeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB3
, fra
.me
.REG
[1]);
2638 /* ../lib/standard/collection/array.nit:409 */
2640 /* ../lib/standard/kernel.nit:247 */
2641 REGB3
= TAG_Int(UNTAG_Int(REGB2
)-UNTAG_Int(REGB3
));
2642 CALL_standard___collection___array___Array___sub_sort(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
, REGB3
, (&(fra
.me
)), ((fun_t
)OC_standard___collection___array___Array___sub_sort_11
));
2643 switch ((&(fra
.me
))->has_broke
) {
2645 case 1: (&(fra
.me
))->has_broke
= 0; goto label1
;
2647 CALL_standard___collection___array___Array___sub_sort(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB2
, REGB1
, (&(fra
.me
)), ((fun_t
)OC_standard___collection___array___Array___sub_sort_13
));
2648 switch ((&(fra
.me
))->has_broke
) {
2650 case 1: (&(fra
.me
))->has_broke
= 0; goto label1
;
2653 /* ../lib/standard/collection/array.nit:413 */
2655 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
2656 if (UNTAG_Bool(REGB2
)) {
2658 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2660 /* ../lib/standard/kernel.nit:242 */
2661 REGB2
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
2662 /* ../lib/standard/collection/array.nit:413 */
2663 if (UNTAG_Bool(REGB2
)) {
2664 /* ../lib/standard/collection/array.nit:414 */
2666 /* ../lib/standard/collection/array.nit:279 */
2667 fra
.me
.REG
[1] = fra
.me
.REG
[0];
2669 /* ../lib/standard/collection/array.nit:281 */
2671 REGB5
= TAG_Bool(VAL_ISA(REGB4
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB3
), VTID_standard___kernel___Comparable___OTHER(REGB3
))) /*cast OTHER*/;
2672 if (UNTAG_Bool(REGB5
)) {
2674 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2676 /* ../lib/standard/kernel.nit:243 */
2677 REGB4
= TAG_Bool(UNTAG_Int(REGB3
)>=UNTAG_Int(REGB4
));
2678 /* ../lib/standard/collection/array.nit:281 */
2679 if (UNTAG_Bool(REGB4
)) {
2680 REGB4
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[1])!=NIT_NULL
);
2681 if (UNTAG_Bool(REGB4
)) {
2683 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 281);
2685 REGB4
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[1]);
2686 REGB5
= TAG_Bool(VAL_ISA(REGB4
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB3
), VTID_standard___kernel___Comparable___OTHER(REGB3
))) /*cast OTHER*/;
2687 if (UNTAG_Bool(REGB5
)) {
2689 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2691 /* ../lib/standard/kernel.nit:242 */
2692 REGB4
= TAG_Bool(UNTAG_Int(REGB3
)<UNTAG_Int(REGB4
));
2694 /* ../lib/standard/collection/array.nit:281 */
2695 REGB5
= TAG_Bool(0);
2698 if (UNTAG_Bool(REGB4
)) {
2700 nit_abort("Assert '%s' failed", "index", LOCATE_standard___collection___array
, 281);
2702 /* ../lib/standard/collection/array.nit:282 */
2703 fra
.me
.REG
[1] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[1]);
2704 REGB4
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
2705 if (UNTAG_Bool(REGB4
)) {
2706 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 282);
2708 /* ../lib/standard/collection/array.nit:725 */
2709 fra
.me
.REG
[1] = ((Nit_NativeArray
)fra
.me
.REG
[1])->val
[UNTAG_Int(REGB3
)];
2710 /* ../lib/standard/collection/array.nit:282 */
2713 /* ../lib/standard/collection/array.nit:416 */
2715 /* ../lib/standard/collection/array.nit:417 */
2717 REGB4
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB3
), VTID_standard___kernel___Comparable___OTHER(REGB3
))) /*cast OTHER*/;
2718 if (UNTAG_Bool(REGB4
)) {
2720 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2722 /* ../lib/standard/kernel.nit:241 */
2723 REGB4
= TAG_Bool(UNTAG_Int(REGB3
)<=UNTAG_Int(REGB1
));
2724 /* ../lib/standard/collection/array.nit:417 */
2725 if (UNTAG_Bool(REGB4
)) {
2726 /* ../lib/standard/collection/array.nit:279 */
2727 fra
.me
.REG
[2] = fra
.me
.REG
[0];
2729 /* ../lib/standard/collection/array.nit:281 */
2731 REGB6
= TAG_Bool(VAL_ISA(REGB5
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB4
), VTID_standard___kernel___Comparable___OTHER(REGB4
))) /*cast OTHER*/;
2732 if (UNTAG_Bool(REGB6
)) {
2734 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2736 /* ../lib/standard/kernel.nit:243 */
2737 REGB5
= TAG_Bool(UNTAG_Int(REGB4
)>=UNTAG_Int(REGB5
));
2738 /* ../lib/standard/collection/array.nit:281 */
2739 if (UNTAG_Bool(REGB5
)) {
2740 REGB5
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
2741 if (UNTAG_Bool(REGB5
)) {
2743 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 281);
2745 REGB5
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2]);
2746 REGB6
= TAG_Bool(VAL_ISA(REGB5
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB4
), VTID_standard___kernel___Comparable___OTHER(REGB4
))) /*cast OTHER*/;
2747 if (UNTAG_Bool(REGB6
)) {
2749 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2751 /* ../lib/standard/kernel.nit:242 */
2752 REGB5
= TAG_Bool(UNTAG_Int(REGB4
)<UNTAG_Int(REGB5
));
2754 /* ../lib/standard/collection/array.nit:281 */
2755 REGB6
= TAG_Bool(0);
2758 if (UNTAG_Bool(REGB5
)) {
2760 nit_abort("Assert '%s' failed", "index", LOCATE_standard___collection___array
, 281);
2762 /* ../lib/standard/collection/array.nit:282 */
2763 fra
.me
.REG
[2] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[2]);
2764 REGB5
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
2765 if (UNTAG_Bool(REGB5
)) {
2766 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 282);
2768 /* ../lib/standard/collection/array.nit:725 */
2769 fra
.me
.REG
[2] = ((Nit_NativeArray
)fra
.me
.REG
[2])->val
[UNTAG_Int(REGB4
)];
2770 /* ../lib/standard/collection/array.nit:282 */
2773 /* ../lib/standard/collection/array.nit:418 */
2774 REGB4
= ((val_t (*)(struct stack_frame_t
*, val_t
, val_t
))(CREG
[0]))(closctx_param
, fra
.me
.REG
[1], fra
.me
.REG
[2]);
2775 if (closctx_param
->has_broke
) {
2779 REGB6
= TAG_Bool(VAL_ISA(REGB5
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB4
), VTID_standard___kernel___Comparable___OTHER(REGB4
))) /*cast OTHER*/;
2780 if (UNTAG_Bool(REGB6
)) {
2782 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2784 /* ../lib/standard/kernel.nit:244 */
2785 REGB5
= TAG_Bool(UNTAG_Int(REGB4
)>UNTAG_Int(REGB5
));
2786 /* ../lib/standard/collection/array.nit:418 */
2787 if (UNTAG_Bool(REGB5
)) {
2788 /* ../lib/standard/collection/array.nit:419 */
2790 /* ../lib/standard/collection/array.nit:279 */
2791 fra
.me
.REG
[2] = fra
.me
.REG
[0];
2793 /* ../lib/standard/collection/array.nit:281 */
2795 REGB6
= TAG_Bool(VAL_ISA(REGB4
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB5
), VTID_standard___kernel___Comparable___OTHER(REGB5
))) /*cast OTHER*/;
2796 if (UNTAG_Bool(REGB6
)) {
2798 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2800 /* ../lib/standard/kernel.nit:243 */
2801 REGB4
= TAG_Bool(UNTAG_Int(REGB5
)>=UNTAG_Int(REGB4
));
2802 /* ../lib/standard/collection/array.nit:281 */
2803 if (UNTAG_Bool(REGB4
)) {
2804 REGB4
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
2805 if (UNTAG_Bool(REGB4
)) {
2807 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 281);
2809 REGB4
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2]);
2810 REGB6
= TAG_Bool(VAL_ISA(REGB4
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB5
), VTID_standard___kernel___Comparable___OTHER(REGB5
))) /*cast OTHER*/;
2811 if (UNTAG_Bool(REGB6
)) {
2813 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2815 /* ../lib/standard/kernel.nit:242 */
2816 REGB4
= TAG_Bool(UNTAG_Int(REGB5
)<UNTAG_Int(REGB4
));
2818 /* ../lib/standard/collection/array.nit:281 */
2819 REGB6
= TAG_Bool(0);
2822 if (UNTAG_Bool(REGB4
)) {
2824 nit_abort("Assert '%s' failed", "index", LOCATE_standard___collection___array
, 281);
2826 /* ../lib/standard/collection/array.nit:282 */
2827 fra
.me
.REG
[2] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[2]);
2828 REGB4
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
2829 if (UNTAG_Bool(REGB4
)) {
2830 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 282);
2832 /* ../lib/standard/collection/array.nit:725 */
2833 fra
.me
.REG
[2] = ((Nit_NativeArray
)fra
.me
.REG
[2])->val
[UNTAG_Int(REGB5
)];
2834 /* ../lib/standard/collection/array.nit:282 */
2837 /* ../lib/standard/collection/array.nit:420 */
2838 fra
.me
.REG
[1] = fra
.me
.REG
[2];
2840 /* ../lib/standard/collection/array.nit:422 */
2842 /* ../lib/standard/kernel.nit:245 */
2843 REGB5
= TAG_Int(UNTAG_Int(REGB3
)+UNTAG_Int(REGB5
));
2844 /* ../lib/standard/collection/array.nit:422 */
2847 /* ../lib/standard/collection/array.nit:417 */
2852 /* ../lib/standard/collection/array.nit:424 */
2853 REGB3
= TAG_Bool(IS_EQUAL_OO(REGB2
,REGB0
));
2854 if (UNTAG_Bool(REGB3
)) {
2856 /* ../lib/standard/kernel.nit:237 */
2857 REGB5
= TAG_Bool((REGB2
)==(REGB0
));
2858 /* ../lib/standard/collection/array.nit:424 */
2861 REGB3
= TAG_Bool(!UNTAG_Bool(REGB3
));
2862 if (UNTAG_Bool(REGB3
)) {
2863 /* ../lib/standard/collection/array.nit:279 */
2864 fra
.me
.REG
[2] = fra
.me
.REG
[0];
2866 /* ../lib/standard/collection/array.nit:281 */
2868 REGB4
= TAG_Bool(VAL_ISA(REGB5
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB3
), VTID_standard___kernel___Comparable___OTHER(REGB3
))) /*cast OTHER*/;
2869 if (UNTAG_Bool(REGB4
)) {
2871 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2873 /* ../lib/standard/kernel.nit:243 */
2874 REGB5
= TAG_Bool(UNTAG_Int(REGB3
)>=UNTAG_Int(REGB5
));
2875 /* ../lib/standard/collection/array.nit:281 */
2876 if (UNTAG_Bool(REGB5
)) {
2877 REGB5
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
2878 if (UNTAG_Bool(REGB5
)) {
2880 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 281);
2882 REGB5
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2]);
2883 REGB4
= TAG_Bool(VAL_ISA(REGB5
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB3
), VTID_standard___kernel___Comparable___OTHER(REGB3
))) /*cast OTHER*/;
2884 if (UNTAG_Bool(REGB4
)) {
2886 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2888 /* ../lib/standard/kernel.nit:242 */
2889 REGB5
= TAG_Bool(UNTAG_Int(REGB3
)<UNTAG_Int(REGB5
));
2891 /* ../lib/standard/collection/array.nit:281 */
2892 REGB4
= TAG_Bool(0);
2895 if (UNTAG_Bool(REGB5
)) {
2897 nit_abort("Assert '%s' failed", "index", LOCATE_standard___collection___array
, 281);
2899 /* ../lib/standard/collection/array.nit:282 */
2900 fra
.me
.REG
[2] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[2]);
2901 REGB5
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
2902 if (UNTAG_Bool(REGB5
)) {
2903 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 282);
2905 /* ../lib/standard/collection/array.nit:725 */
2906 fra
.me
.REG
[2] = ((Nit_NativeArray
)fra
.me
.REG
[2])->val
[UNTAG_Int(REGB3
)];
2907 /* ../lib/standard/collection/array.nit:282 */
2910 /* ../lib/standard/collection/array.nit:425 */
2911 CALL_standard___collection___abstract_collection___Sequence_____braeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB2
, fra
.me
.REG
[2]);
2912 /* ../lib/standard/collection/array.nit:426 */
2913 CALL_standard___collection___abstract_collection___Sequence_____braeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
, fra
.me
.REG
[1]);
2915 /* ../lib/standard/collection/array.nit:428 */
2917 /* ../lib/standard/kernel.nit:245 */
2918 REGB2
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB2
));
2919 /* ../lib/standard/collection/array.nit:428 */
2922 /* ../lib/standard/collection/array.nit:413 */
2930 stack_frame_head
= fra
.me
.prev
;
2933 val_t
OC_standard___collection___array___Array___sub_sort_11(struct stack_frame_t
*closctx
, val_t p0
, val_t p1
){
2934 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
2937 /* ../lib/standard/collection/array.nit:409 */
2938 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2939 fra
.me
.file
= LOCATE_standard___collection___array
;
2941 fra
.me
.meth
= LOCATE_standard___collection___array___Array___sub_sort
;
2942 fra
.me
.has_broke
= 0;
2943 fra
.me
.REG_size
= 2;
2944 fra
.me
.nitni_local_ref_head
= NULL
;
2945 fra
.me
.REG
[0] = NIT_NULL
;
2946 fra
.me
.REG
[1] = NIT_NULL
;
2949 REGB0
= ((val_t (*)(struct stack_frame_t
*, val_t
, val_t
))(closctx
->closure_funs
[0]))(closctx
->closure_ctx
, fra
.me
.REG
[0], fra
.me
.REG
[1]);
2950 if (closctx
->closure_ctx
->has_broke
) {
2951 closctx
->has_broke
= 1;
2956 stack_frame_head
= fra
.me
.prev
;
2959 val_t
OC_standard___collection___array___Array___sub_sort_13(struct stack_frame_t
*closctx
, val_t p0
, val_t p1
){
2960 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
2963 /* ../lib/standard/collection/array.nit:410 */
2964 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2965 fra
.me
.file
= LOCATE_standard___collection___array
;
2967 fra
.me
.meth
= LOCATE_standard___collection___array___Array___sub_sort
;
2968 fra
.me
.has_broke
= 0;
2969 fra
.me
.REG_size
= 2;
2970 fra
.me
.nitni_local_ref_head
= NULL
;
2971 fra
.me
.REG
[0] = NIT_NULL
;
2972 fra
.me
.REG
[1] = NIT_NULL
;
2975 REGB0
= ((val_t (*)(struct stack_frame_t
*, val_t
, val_t
))(closctx
->closure_funs
[0]))(closctx
->closure_ctx
, fra
.me
.REG
[0], fra
.me
.REG
[1]);
2976 if (closctx
->closure_ctx
->has_broke
) {
2977 closctx
->has_broke
= 1;
2982 stack_frame_head
= fra
.me
.prev
;
2985 static const char LOCATE_standard___collection___array___ArrayIterator___item
[] = "array::ArrayIterator::(abstract_collection::Iterator::item)";
2986 val_t
standard___collection___array___ArrayIterator___item(val_t p0
){
2987 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
2990 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2991 fra
.me
.file
= LOCATE_standard___collection___array
;
2993 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayIterator___item
;
2994 fra
.me
.has_broke
= 0;
2995 fra
.me
.REG_size
= 2;
2996 fra
.me
.nitni_local_ref_head
= NULL
;
2997 fra
.me
.REG
[0] = NIT_NULL
;
2998 fra
.me
.REG
[1] = NIT_NULL
;
3000 /* ../lib/standard/collection/array.nit:438 */
3001 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArrayIterator____array(fra
.me
.REG
[0])!=NIT_NULL
);
3002 if (UNTAG_Bool(REGB0
)) {
3004 nit_abort("Uninitialized attribute %s", "_array", LOCATE_standard___collection___array
, 438);
3006 fra
.me
.REG
[1] = ATTR_standard___collection___array___ArrayIterator____array(fra
.me
.REG
[0]);
3007 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArrayIterator____index(fra
.me
.REG
[0])!=NIT_NULL
);
3008 if (UNTAG_Bool(REGB0
)) {
3010 nit_abort("Uninitialized attribute %s", "_index", LOCATE_standard___collection___array
, 438);
3012 REGB0
= ATTR_standard___collection___array___ArrayIterator____index(fra
.me
.REG
[0]);
3013 fra
.me
.REG
[1] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra
.me
.REG
[1])(fra
.me
.REG
[1], REGB0
);
3016 stack_frame_head
= fra
.me
.prev
;
3017 return fra
.me
.REG
[1];
3019 static const char LOCATE_standard___collection___array___ArrayIterator___is_ok
[] = "array::ArrayIterator::(abstract_collection::Iterator::is_ok)";
3020 val_t
standard___collection___array___ArrayIterator___is_ok(val_t p0
){
3021 struct {struct stack_frame_t me
;} fra
;
3026 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3027 fra
.me
.file
= LOCATE_standard___collection___array
;
3029 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayIterator___is_ok
;
3030 fra
.me
.has_broke
= 0;
3031 fra
.me
.REG_size
= 1;
3032 fra
.me
.nitni_local_ref_head
= NULL
;
3033 fra
.me
.REG
[0] = NIT_NULL
;
3035 /* ../lib/standard/collection/array.nit:442 */
3036 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArrayIterator____index(fra
.me
.REG
[0])!=NIT_NULL
);
3037 if (UNTAG_Bool(REGB0
)) {
3039 nit_abort("Uninitialized attribute %s", "_index", LOCATE_standard___collection___array
, 442);
3041 REGB0
= ATTR_standard___collection___array___ArrayIterator____index(fra
.me
.REG
[0]);
3042 REGB1
= TAG_Bool(ATTR_standard___collection___array___ArrayIterator____array(fra
.me
.REG
[0])!=NIT_NULL
);
3043 if (UNTAG_Bool(REGB1
)) {
3045 nit_abort("Uninitialized attribute %s", "_array", LOCATE_standard___collection___array
, 442);
3047 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArrayIterator____array(fra
.me
.REG
[0]);
3048 /* ../lib/standard/collection/array.nit:24 */
3049 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
3050 if (UNTAG_Bool(REGB1
)) {
3052 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
3054 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
3055 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
3056 if (UNTAG_Bool(REGB2
)) {
3058 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
3060 /* ../lib/standard/kernel.nit:242 */
3061 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
3062 /* ../lib/standard/collection/array.nit:442 */
3065 stack_frame_head
= fra
.me
.prev
;
3068 static const char LOCATE_standard___collection___array___ArrayIterator___next
[] = "array::ArrayIterator::(abstract_collection::Iterator::next)";
3069 void standard___collection___array___ArrayIterator___next(val_t p0
){
3070 struct {struct stack_frame_t me
;} fra
;
3074 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3075 fra
.me
.file
= LOCATE_standard___collection___array
;
3077 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayIterator___next
;
3078 fra
.me
.has_broke
= 0;
3079 fra
.me
.REG_size
= 1;
3080 fra
.me
.nitni_local_ref_head
= NULL
;
3081 fra
.me
.REG
[0] = NIT_NULL
;
3083 /* ../lib/standard/collection/array.nit:444 */
3084 REGB0
= ATTR_standard___collection___array___ArrayIterator____index(fra
.me
.REG
[0]);
3086 /* ../lib/standard/kernel.nit:245 */
3087 REGB1
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
3088 /* ../lib/standard/collection/array.nit:444 */
3089 ATTR_standard___collection___array___ArrayIterator____index(fra
.me
.REG
[0]) = REGB1
;
3090 stack_frame_head
= fra
.me
.prev
;
3093 static const char LOCATE_standard___collection___array___ArrayIterator___init
[] = "array::ArrayIterator::init";
3094 void standard___collection___array___ArrayIterator___init(val_t p0
, val_t p1
, int* init_table
){
3095 int itpos7
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_standard___collection___array___ArrayIterator
].i
;
3096 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
3099 if (init_table
[itpos7
]) return;
3100 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3101 fra
.me
.file
= LOCATE_standard___collection___array
;
3103 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayIterator___init
;
3104 fra
.me
.has_broke
= 0;
3105 fra
.me
.REG_size
= 2;
3106 fra
.me
.nitni_local_ref_head
= NULL
;
3107 fra
.me
.REG
[0] = NIT_NULL
;
3108 fra
.me
.REG
[1] = NIT_NULL
;
3111 /* ../lib/standard/collection/array.nit:448 */
3112 ATTR_standard___collection___array___ArrayIterator____array(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
3113 /* ../lib/standard/collection/array.nit:449 */
3115 ATTR_standard___collection___array___ArrayIterator____index(fra
.me
.REG
[0]) = REGB0
;
3116 stack_frame_head
= fra
.me
.prev
;
3117 init_table
[itpos7
] = 1;
3120 static const char LOCATE_standard___collection___array___ArrayIterator___index
[] = "array::ArrayIterator::(abstract_collection::IndexedIterator::index)";
3121 val_t
standard___collection___array___ArrayIterator___index(val_t p0
){
3122 struct {struct stack_frame_t me
;} fra
;
3125 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3126 fra
.me
.file
= LOCATE_standard___collection___array
;
3128 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayIterator___index
;
3129 fra
.me
.has_broke
= 0;
3130 fra
.me
.REG_size
= 1;
3131 fra
.me
.nitni_local_ref_head
= NULL
;
3132 fra
.me
.REG
[0] = NIT_NULL
;
3134 /* ../lib/standard/collection/array.nit:452 */
3135 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArrayIterator____index(fra
.me
.REG
[0])!=NIT_NULL
);
3136 if (UNTAG_Bool(REGB0
)) {
3138 nit_abort("Uninitialized attribute %s", "_index", LOCATE_standard___collection___array
, 452);
3140 REGB0
= ATTR_standard___collection___array___ArrayIterator____index(fra
.me
.REG
[0]);
3141 stack_frame_head
= fra
.me
.prev
;
3144 static const char LOCATE_standard___collection___array___ArraySet___has
[] = "array::ArraySet::(abstract_collection::Collection::has)";
3145 val_t
standard___collection___array___ArraySet___has(val_t p0
, val_t p1
){
3146 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
3149 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3150 fra
.me
.file
= LOCATE_standard___collection___array
;
3152 fra
.me
.meth
= LOCATE_standard___collection___array___ArraySet___has
;
3153 fra
.me
.has_broke
= 0;
3154 fra
.me
.REG_size
= 2;
3155 fra
.me
.nitni_local_ref_head
= NULL
;
3156 fra
.me
.REG
[0] = NIT_NULL
;
3157 fra
.me
.REG
[1] = NIT_NULL
;
3160 /* ../lib/standard/collection/array.nit:465 */
3161 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArraySet____array(fra
.me
.REG
[0])!=NIT_NULL
);
3162 if (UNTAG_Bool(REGB0
)) {
3164 nit_abort("Uninitialized attribute %s", "_array", LOCATE_standard___collection___array
, 465);
3166 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArraySet____array(fra
.me
.REG
[0]);
3167 REGB0
= CALL_standard___collection___abstract_collection___Collection___has(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
3170 stack_frame_head
= fra
.me
.prev
;
3173 static const char LOCATE_standard___collection___array___ArraySet___add
[] = "array::ArraySet::(abstract_collection::SimpleCollection::add)";
3174 void standard___collection___array___ArraySet___add(val_t p0
, val_t p1
){
3175 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
3178 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3179 fra
.me
.file
= LOCATE_standard___collection___array
;
3181 fra
.me
.meth
= LOCATE_standard___collection___array___ArraySet___add
;
3182 fra
.me
.has_broke
= 0;
3183 fra
.me
.REG_size
= 3;
3184 fra
.me
.nitni_local_ref_head
= NULL
;
3185 fra
.me
.REG
[0] = NIT_NULL
;
3186 fra
.me
.REG
[1] = NIT_NULL
;
3187 fra
.me
.REG
[2] = NIT_NULL
;
3190 /* ../lib/standard/collection/array.nit:467 */
3191 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArraySet____array(fra
.me
.REG
[0])!=NIT_NULL
);
3192 if (UNTAG_Bool(REGB0
)) {
3194 nit_abort("Uninitialized attribute %s", "_array", LOCATE_standard___collection___array
, 467);
3196 fra
.me
.REG
[2] = ATTR_standard___collection___array___ArraySet____array(fra
.me
.REG
[0]);
3197 REGB0
= CALL_standard___collection___abstract_collection___Collection___has(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
3198 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
3199 if (UNTAG_Bool(REGB0
)) {
3200 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArraySet____array(fra
.me
.REG
[0])!=NIT_NULL
);
3201 if (UNTAG_Bool(REGB0
)) {
3203 nit_abort("Uninitialized attribute %s", "_array", LOCATE_standard___collection___array
, 467);
3205 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArraySet____array(fra
.me
.REG
[0]);
3206 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
3208 stack_frame_head
= fra
.me
.prev
;
3211 static const char LOCATE_standard___collection___array___ArraySet___is_empty
[] = "array::ArraySet::(abstract_collection::Collection::is_empty)";
3212 val_t
standard___collection___array___ArraySet___is_empty(val_t p0
){
3213 struct {struct stack_frame_t me
;} fra
;
3216 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3217 fra
.me
.file
= LOCATE_standard___collection___array
;
3219 fra
.me
.meth
= LOCATE_standard___collection___array___ArraySet___is_empty
;
3220 fra
.me
.has_broke
= 0;
3221 fra
.me
.REG_size
= 1;
3222 fra
.me
.nitni_local_ref_head
= NULL
;
3223 fra
.me
.REG
[0] = NIT_NULL
;
3225 /* ../lib/standard/collection/array.nit:469 */
3226 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArraySet____array(fra
.me
.REG
[0])!=NIT_NULL
);
3227 if (UNTAG_Bool(REGB0
)) {
3229 nit_abort("Uninitialized attribute %s", "_array", LOCATE_standard___collection___array
, 469);
3231 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArraySet____array(fra
.me
.REG
[0]);
3232 REGB0
= CALL_standard___collection___abstract_collection___Collection___is_empty(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3235 stack_frame_head
= fra
.me
.prev
;
3238 static const char LOCATE_standard___collection___array___ArraySet___length
[] = "array::ArraySet::(abstract_collection::Collection::length)";
3239 val_t
standard___collection___array___ArraySet___length(val_t p0
){
3240 struct {struct stack_frame_t me
;} fra
;
3243 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3244 fra
.me
.file
= LOCATE_standard___collection___array
;
3246 fra
.me
.meth
= LOCATE_standard___collection___array___ArraySet___length
;
3247 fra
.me
.has_broke
= 0;
3248 fra
.me
.REG_size
= 1;
3249 fra
.me
.nitni_local_ref_head
= NULL
;
3250 fra
.me
.REG
[0] = NIT_NULL
;
3252 /* ../lib/standard/collection/array.nit:471 */
3253 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArraySet____array(fra
.me
.REG
[0])!=NIT_NULL
);
3254 if (UNTAG_Bool(REGB0
)) {
3256 nit_abort("Uninitialized attribute %s", "_array", LOCATE_standard___collection___array
, 471);
3258 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArraySet____array(fra
.me
.REG
[0]);
3259 /* ../lib/standard/collection/array.nit:24 */
3260 REGB0
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
3261 if (UNTAG_Bool(REGB0
)) {
3263 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
3265 REGB0
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
3266 /* ../lib/standard/collection/array.nit:471 */
3269 stack_frame_head
= fra
.me
.prev
;
3272 static const char LOCATE_standard___collection___array___ArraySet___first
[] = "array::ArraySet::(abstract_collection::Collection::first)";
3273 val_t
standard___collection___array___ArraySet___first(val_t p0
){
3274 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
3279 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3280 fra
.me
.file
= LOCATE_standard___collection___array
;
3282 fra
.me
.meth
= LOCATE_standard___collection___array___ArraySet___first
;
3283 fra
.me
.has_broke
= 0;
3284 fra
.me
.REG_size
= 2;
3285 fra
.me
.nitni_local_ref_head
= NULL
;
3286 fra
.me
.REG
[0] = NIT_NULL
;
3287 fra
.me
.REG
[1] = NIT_NULL
;
3289 /* ../lib/standard/collection/array.nit:475 */
3290 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArraySet____array(fra
.me
.REG
[0])!=NIT_NULL
);
3291 if (UNTAG_Bool(REGB0
)) {
3293 nit_abort("Uninitialized attribute %s", "_array", LOCATE_standard___collection___array
, 475);
3295 fra
.me
.REG
[1] = ATTR_standard___collection___array___ArraySet____array(fra
.me
.REG
[0]);
3296 /* ../lib/standard/collection/array.nit:24 */
3297 REGB0
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[1])!=NIT_NULL
);
3298 if (UNTAG_Bool(REGB0
)) {
3300 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
3302 REGB0
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[1]);
3303 /* ../lib/standard/collection/array.nit:475 */
3305 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
3306 if (UNTAG_Bool(REGB2
)) {
3308 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
3310 /* ../lib/standard/kernel.nit:244 */
3311 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>UNTAG_Int(REGB1
));
3312 /* ../lib/standard/collection/array.nit:475 */
3313 if (UNTAG_Bool(REGB1
)) {
3315 nit_abort("Assert failed", NULL
, LOCATE_standard___collection___array
, 475);
3317 /* ../lib/standard/collection/array.nit:476 */
3318 REGB1
= TAG_Bool(ATTR_standard___collection___array___ArraySet____array(fra
.me
.REG
[0])!=NIT_NULL
);
3319 if (UNTAG_Bool(REGB1
)) {
3321 nit_abort("Uninitialized attribute %s", "_array", LOCATE_standard___collection___array
, 476);
3323 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArraySet____array(fra
.me
.REG
[0]);
3324 fra
.me
.REG
[0] = CALL_standard___collection___abstract_collection___Collection___first(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3327 stack_frame_head
= fra
.me
.prev
;
3328 return fra
.me
.REG
[0];
3330 static const char LOCATE_standard___collection___array___ArraySet___remove
[] = "array::ArraySet::(abstract_collection::RemovableCollection::remove)";
3331 void standard___collection___array___ArraySet___remove(val_t p0
, val_t p1
){
3332 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
3337 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3338 fra
.me
.file
= LOCATE_standard___collection___array
;
3340 fra
.me
.meth
= LOCATE_standard___collection___array___ArraySet___remove
;
3341 fra
.me
.has_broke
= 0;
3342 fra
.me
.REG_size
= 3;
3343 fra
.me
.nitni_local_ref_head
= NULL
;
3344 fra
.me
.REG
[0] = NIT_NULL
;
3345 fra
.me
.REG
[1] = NIT_NULL
;
3346 fra
.me
.REG
[2] = NIT_NULL
;
3349 /* ../lib/standard/collection/array.nit:481 */
3350 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArraySet____array(fra
.me
.REG
[0])!=NIT_NULL
);
3351 if (UNTAG_Bool(REGB0
)) {
3353 nit_abort("Uninitialized attribute %s", "_array", LOCATE_standard___collection___array
, 481);
3355 fra
.me
.REG
[2] = ATTR_standard___collection___array___ArraySet____array(fra
.me
.REG
[0]);
3356 REGB0
= CALL_standard___collection___abstract_collection___SequenceRead___index_of(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
3357 /* ../lib/standard/collection/array.nit:482 */
3359 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
3360 if (UNTAG_Bool(REGB2
)) {
3362 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
3364 /* ../lib/standard/kernel.nit:243 */
3365 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB1
));
3366 /* ../lib/standard/collection/array.nit:482 */
3367 if (UNTAG_Bool(REGB1
)) {
3368 CALL_standard___collection___array___ArraySet___remove_at(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
3370 stack_frame_head
= fra
.me
.prev
;
3373 static const char LOCATE_standard___collection___array___ArraySet___remove_all
[] = "array::ArraySet::(abstract_collection::RemovableCollection::remove_all)";
3374 void standard___collection___array___ArraySet___remove_all(val_t p0
, val_t p1
){
3375 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
3377 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3378 fra
.me
.file
= LOCATE_standard___collection___array
;
3380 fra
.me
.meth
= LOCATE_standard___collection___array___ArraySet___remove_all
;
3381 fra
.me
.has_broke
= 0;
3382 fra
.me
.REG_size
= 2;
3383 fra
.me
.nitni_local_ref_head
= NULL
;
3384 fra
.me
.REG
[0] = NIT_NULL
;
3385 fra
.me
.REG
[1] = NIT_NULL
;
3388 /* ../lib/standard/collection/array.nit:485 */
3389 CALL_standard___collection___abstract_collection___RemovableCollection___remove(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
3390 stack_frame_head
= fra
.me
.prev
;
3393 static const char LOCATE_standard___collection___array___ArraySet___clear
[] = "array::ArraySet::(abstract_collection::RemovableCollection::clear)";
3394 void standard___collection___array___ArraySet___clear(val_t p0
){
3395 struct {struct stack_frame_t me
;} fra
;
3398 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3399 fra
.me
.file
= LOCATE_standard___collection___array
;
3401 fra
.me
.meth
= LOCATE_standard___collection___array___ArraySet___clear
;
3402 fra
.me
.has_broke
= 0;
3403 fra
.me
.REG_size
= 1;
3404 fra
.me
.nitni_local_ref_head
= NULL
;
3405 fra
.me
.REG
[0] = NIT_NULL
;
3407 /* ../lib/standard/collection/array.nit:487 */
3408 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArraySet____array(fra
.me
.REG
[0])!=NIT_NULL
);
3409 if (UNTAG_Bool(REGB0
)) {
3411 nit_abort("Uninitialized attribute %s", "_array", LOCATE_standard___collection___array
, 487);
3413 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArraySet____array(fra
.me
.REG
[0]);
3414 CALL_standard___collection___abstract_collection___RemovableCollection___clear(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3415 stack_frame_head
= fra
.me
.prev
;
3418 static const char LOCATE_standard___collection___array___ArraySet___iterator
[] = "array::ArraySet::(abstract_collection::Collection::iterator)";
3419 val_t
standard___collection___array___ArraySet___iterator(val_t p0
){
3420 struct {struct stack_frame_t me
;} fra
;
3423 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3424 fra
.me
.file
= LOCATE_standard___collection___array
;
3426 fra
.me
.meth
= LOCATE_standard___collection___array___ArraySet___iterator
;
3427 fra
.me
.has_broke
= 0;
3428 fra
.me
.REG_size
= 1;
3429 fra
.me
.nitni_local_ref_head
= NULL
;
3430 fra
.me
.REG
[0] = NIT_NULL
;
3432 /* ../lib/standard/collection/array.nit:489 */
3433 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArraySet____array(fra
.me
.REG
[0])!=NIT_NULL
);
3434 if (UNTAG_Bool(REGB0
)) {
3436 nit_abort("Uninitialized attribute %s", "_array", LOCATE_standard___collection___array
, 489);
3438 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArraySet____array(fra
.me
.REG
[0]);
3439 fra
.me
.REG
[0] = CALL_standard___collection___abstract_collection___Collection___iterator(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3440 fra
.me
.REG
[0] = NEW_ArraySetIterator_standard___collection___array___ArraySetIterator___init(fra
.me
.REG
[0]);
3443 stack_frame_head
= fra
.me
.prev
;
3444 return fra
.me
.REG
[0];
3446 static const char LOCATE_standard___collection___array___ArraySet___enlarge
[] = "array::ArraySet::enlarge";
3447 void standard___collection___array___ArraySet___enlarge(val_t p0
, val_t p1
){
3448 struct {struct stack_frame_t me
;} fra
;
3452 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3453 fra
.me
.file
= LOCATE_standard___collection___array
;
3455 fra
.me
.meth
= LOCATE_standard___collection___array___ArraySet___enlarge
;
3456 fra
.me
.has_broke
= 0;
3457 fra
.me
.REG_size
= 1;
3458 fra
.me
.nitni_local_ref_head
= NULL
;
3459 fra
.me
.REG
[0] = NIT_NULL
;
3462 /* ../lib/standard/collection/array.nit:492 */
3463 REGB1
= TAG_Bool(ATTR_standard___collection___array___ArraySet____array(fra
.me
.REG
[0])!=NIT_NULL
);
3464 if (UNTAG_Bool(REGB1
)) {
3466 nit_abort("Uninitialized attribute %s", "_array", LOCATE_standard___collection___array
, 492);
3468 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArraySet____array(fra
.me
.REG
[0]);
3469 CALL_standard___collection___array___AbstractArray___enlarge(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
3470 stack_frame_head
= fra
.me
.prev
;
3473 static const char LOCATE_standard___collection___array___ArraySet___remove_at
[] = "array::ArraySet::remove_at";
3474 void standard___collection___array___ArraySet___remove_at(val_t p0
, val_t p1
){
3475 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
3479 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3480 fra
.me
.file
= LOCATE_standard___collection___array
;
3482 fra
.me
.meth
= LOCATE_standard___collection___array___ArraySet___remove_at
;
3483 fra
.me
.has_broke
= 0;
3484 fra
.me
.REG_size
= 3;
3485 fra
.me
.nitni_local_ref_head
= NULL
;
3486 fra
.me
.REG
[0] = NIT_NULL
;
3487 fra
.me
.REG
[1] = NIT_NULL
;
3488 fra
.me
.REG
[2] = NIT_NULL
;
3491 /* ../lib/standard/collection/array.nit:496 */
3492 REGB1
= TAG_Bool(ATTR_standard___collection___array___ArraySet____array(fra
.me
.REG
[0])!=NIT_NULL
);
3493 if (UNTAG_Bool(REGB1
)) {
3495 nit_abort("Uninitialized attribute %s", "_array", LOCATE_standard___collection___array
, 496);
3497 fra
.me
.REG
[1] = ATTR_standard___collection___array___ArraySet____array(fra
.me
.REG
[0]);
3498 REGB1
= TAG_Bool(ATTR_standard___collection___array___ArraySet____array(fra
.me
.REG
[0])!=NIT_NULL
);
3499 if (UNTAG_Bool(REGB1
)) {
3501 nit_abort("Uninitialized attribute %s", "_array", LOCATE_standard___collection___array
, 496);
3503 fra
.me
.REG
[2] = ATTR_standard___collection___array___ArraySet____array(fra
.me
.REG
[0]);
3504 fra
.me
.REG
[2] = CALL_standard___collection___abstract_collection___SequenceRead___last(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
3505 CALL_standard___collection___abstract_collection___Sequence_____braeq(fra
.me
.REG
[1])(fra
.me
.REG
[1], REGB0
, fra
.me
.REG
[2]);
3506 /* ../lib/standard/collection/array.nit:497 */
3507 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArraySet____array(fra
.me
.REG
[0])!=NIT_NULL
);
3508 if (UNTAG_Bool(REGB0
)) {
3510 nit_abort("Uninitialized attribute %s", "_array", LOCATE_standard___collection___array
, 497);
3512 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArraySet____array(fra
.me
.REG
[0]);
3513 CALL_standard___collection___abstract_collection___Sequence___pop(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3514 stack_frame_head
= fra
.me
.prev
;
3517 static const char LOCATE_standard___collection___array___ArraySet___init
[] = "array::ArraySet::init";
3518 void standard___collection___array___ArraySet___init(val_t p0
, int* init_table
){
3519 int itpos8
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_standard___collection___array___ArraySet
].i
;
3520 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
3522 if (init_table
[itpos8
]) return;
3523 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3524 fra
.me
.file
= LOCATE_standard___collection___array
;
3526 fra
.me
.meth
= LOCATE_standard___collection___array___ArraySet___init
;
3527 fra
.me
.has_broke
= 0;
3528 fra
.me
.REG_size
= 2;
3529 fra
.me
.nitni_local_ref_head
= NULL
;
3530 fra
.me
.REG
[0] = NIT_NULL
;
3531 fra
.me
.REG
[1] = NIT_NULL
;
3533 /* ../lib/standard/collection/array.nit:501 */
3534 fra
.me
.REG
[1] = NEW_Array_standard___collection___array___Array___init();
3535 ATTR_standard___collection___array___ArraySet____array(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
3536 stack_frame_head
= fra
.me
.prev
;
3537 init_table
[itpos8
] = 1;
3540 static const char LOCATE_standard___collection___array___ArraySet___with_capacity
[] = "array::ArraySet::with_capacity";
3541 void standard___collection___array___ArraySet___with_capacity(val_t p0
, val_t p1
, int* init_table
){
3542 int itpos9
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_standard___collection___array___ArraySet
].i
;
3543 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
3546 if (init_table
[itpos9
]) return;
3547 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3548 fra
.me
.file
= LOCATE_standard___collection___array
;
3550 fra
.me
.meth
= LOCATE_standard___collection___array___ArraySet___with_capacity
;
3551 fra
.me
.has_broke
= 0;
3552 fra
.me
.REG_size
= 2;
3553 fra
.me
.nitni_local_ref_head
= NULL
;
3554 fra
.me
.REG
[0] = NIT_NULL
;
3555 fra
.me
.REG
[1] = NIT_NULL
;
3558 /* ../lib/standard/collection/array.nit:504 */
3559 fra
.me
.REG
[1] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
3560 ATTR_standard___collection___array___ArraySet____array(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
3561 stack_frame_head
= fra
.me
.prev
;
3562 init_table
[itpos9
] = 1;
3565 static const char LOCATE_standard___collection___array___ArraySetIterator___is_ok
[] = "array::ArraySetIterator::(abstract_collection::Iterator::is_ok)";
3566 val_t
standard___collection___array___ArraySetIterator___is_ok(val_t p0
){
3567 struct {struct stack_frame_t me
;} fra
;
3570 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3571 fra
.me
.file
= LOCATE_standard___collection___array
;
3573 fra
.me
.meth
= LOCATE_standard___collection___array___ArraySetIterator___is_ok
;
3574 fra
.me
.has_broke
= 0;
3575 fra
.me
.REG_size
= 1;
3576 fra
.me
.nitni_local_ref_head
= NULL
;
3577 fra
.me
.REG
[0] = NIT_NULL
;
3579 /* ../lib/standard/collection/array.nit:511 */
3580 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArraySetIterator____iter(fra
.me
.REG
[0])!=NIT_NULL
);
3581 if (UNTAG_Bool(REGB0
)) {
3583 nit_abort("Uninitialized attribute %s", "_iter", LOCATE_standard___collection___array
, 511);
3585 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArraySetIterator____iter(fra
.me
.REG
[0]);
3586 REGB0
= CALL_standard___collection___abstract_collection___Iterator___is_ok(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3589 stack_frame_head
= fra
.me
.prev
;
3592 static const char LOCATE_standard___collection___array___ArraySetIterator___next
[] = "array::ArraySetIterator::(abstract_collection::Iterator::next)";
3593 void standard___collection___array___ArraySetIterator___next(val_t p0
){
3594 struct {struct stack_frame_t me
;} fra
;
3597 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3598 fra
.me
.file
= LOCATE_standard___collection___array
;
3600 fra
.me
.meth
= LOCATE_standard___collection___array___ArraySetIterator___next
;
3601 fra
.me
.has_broke
= 0;
3602 fra
.me
.REG_size
= 1;
3603 fra
.me
.nitni_local_ref_head
= NULL
;
3604 fra
.me
.REG
[0] = NIT_NULL
;
3606 /* ../lib/standard/collection/array.nit:513 */
3607 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArraySetIterator____iter(fra
.me
.REG
[0])!=NIT_NULL
);
3608 if (UNTAG_Bool(REGB0
)) {
3610 nit_abort("Uninitialized attribute %s", "_iter", LOCATE_standard___collection___array
, 513);
3612 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArraySetIterator____iter(fra
.me
.REG
[0]);
3613 CALL_standard___collection___abstract_collection___Iterator___next(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3614 stack_frame_head
= fra
.me
.prev
;
3617 static const char LOCATE_standard___collection___array___ArraySetIterator___item
[] = "array::ArraySetIterator::(abstract_collection::Iterator::item)";
3618 val_t
standard___collection___array___ArraySetIterator___item(val_t p0
){
3619 struct {struct stack_frame_t me
;} fra
;
3622 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3623 fra
.me
.file
= LOCATE_standard___collection___array
;
3625 fra
.me
.meth
= LOCATE_standard___collection___array___ArraySetIterator___item
;
3626 fra
.me
.has_broke
= 0;
3627 fra
.me
.REG_size
= 1;
3628 fra
.me
.nitni_local_ref_head
= NULL
;
3629 fra
.me
.REG
[0] = NIT_NULL
;
3631 /* ../lib/standard/collection/array.nit:515 */
3632 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArraySetIterator____iter(fra
.me
.REG
[0])!=NIT_NULL
);
3633 if (UNTAG_Bool(REGB0
)) {
3635 nit_abort("Uninitialized attribute %s", "_iter", LOCATE_standard___collection___array
, 515);
3637 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArraySetIterator____iter(fra
.me
.REG
[0]);
3638 fra
.me
.REG
[0] = CALL_standard___collection___abstract_collection___Iterator___item(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3641 stack_frame_head
= fra
.me
.prev
;
3642 return fra
.me
.REG
[0];
3644 static const char LOCATE_standard___collection___array___ArraySetIterator___init
[] = "array::ArraySetIterator::init";
3645 void standard___collection___array___ArraySetIterator___init(val_t p0
, val_t p1
, int* init_table
){
3646 int itpos10
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_standard___collection___array___ArraySetIterator
].i
;
3647 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
3649 if (init_table
[itpos10
]) return;
3650 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3651 fra
.me
.file
= LOCATE_standard___collection___array
;
3653 fra
.me
.meth
= LOCATE_standard___collection___array___ArraySetIterator___init
;
3654 fra
.me
.has_broke
= 0;
3655 fra
.me
.REG_size
= 2;
3656 fra
.me
.nitni_local_ref_head
= NULL
;
3657 fra
.me
.REG
[0] = NIT_NULL
;
3658 fra
.me
.REG
[1] = NIT_NULL
;
3661 /* ../lib/standard/collection/array.nit:517 */
3662 ATTR_standard___collection___array___ArraySetIterator____iter(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
3663 stack_frame_head
= fra
.me
.prev
;
3664 init_table
[itpos10
] = 1;
3667 static const char LOCATE_standard___collection___array___ArrayMap_____bra
[] = "array::ArrayMap::(abstract_collection::MapRead::[])";
3668 val_t
standard___collection___array___ArrayMap_____bra(val_t p0
, val_t p1
){
3669 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
3674 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3675 fra
.me
.file
= LOCATE_standard___collection___array
;
3677 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMap_____bra
;
3678 fra
.me
.has_broke
= 0;
3679 fra
.me
.REG_size
= 2;
3680 fra
.me
.nitni_local_ref_head
= NULL
;
3681 fra
.me
.REG
[0] = NIT_NULL
;
3682 fra
.me
.REG
[1] = NIT_NULL
;
3685 /* ../lib/standard/collection/array.nit:530 */
3686 REGB0
= CALL_standard___collection___array___ArrayMap___index(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
3687 /* ../lib/standard/collection/array.nit:531 */
3689 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
3690 if (UNTAG_Bool(REGB2
)) {
3692 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
3694 /* ../lib/standard/kernel.nit:243 */
3695 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB1
));
3696 /* ../lib/standard/collection/array.nit:531 */
3697 if (UNTAG_Bool(REGB1
)) {
3698 /* ../lib/standard/collection/array.nit:532 */
3699 REGB1
= TAG_Bool(ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
3700 if (UNTAG_Bool(REGB1
)) {
3702 nit_abort("Uninitialized attribute %s", "_items", LOCATE_standard___collection___array
, 532);
3704 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0]);
3705 /* ../lib/standard/collection/array.nit:281 */
3707 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
3708 if (UNTAG_Bool(REGB2
)) {
3710 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
3712 /* ../lib/standard/kernel.nit:243 */
3713 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB1
));
3714 /* ../lib/standard/collection/array.nit:281 */
3715 if (UNTAG_Bool(REGB1
)) {
3716 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
3717 if (UNTAG_Bool(REGB1
)) {
3719 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 281);
3721 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
3722 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
3723 if (UNTAG_Bool(REGB2
)) {
3725 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
3727 /* ../lib/standard/kernel.nit:242 */
3728 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
3730 /* ../lib/standard/collection/array.nit:281 */
3731 REGB2
= TAG_Bool(0);
3734 if (UNTAG_Bool(REGB1
)) {
3736 nit_abort("Assert '%s' failed", "index", LOCATE_standard___collection___array
, 281);
3738 /* ../lib/standard/collection/array.nit:282 */
3739 fra
.me
.REG
[0] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[0]);
3740 REGB1
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
3741 if (UNTAG_Bool(REGB1
)) {
3742 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 282);
3744 /* ../lib/standard/collection/array.nit:725 */
3745 fra
.me
.REG
[0] = ((Nit_NativeArray
)fra
.me
.REG
[0])->val
[UNTAG_Int(REGB0
)];
3746 /* ../lib/standard/collection/array.nit:282 */
3749 /* ../lib/standard/collection/array.nit:532 */
3750 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
3751 if (UNTAG_Bool(REGB0
)) {
3752 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 532);
3754 fra
.me
.REG
[0] = CALL_standard___collection___abstract_collection___Couple___second(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3757 /* ../lib/standard/collection/array.nit:534 */
3758 nit_abort("Aborted", NULL
, LOCATE_standard___collection___array
, 534);
3761 stack_frame_head
= fra
.me
.prev
;
3762 return fra
.me
.REG
[0];
3764 static const char LOCATE_standard___collection___array___ArrayMap_____braeq
[] = "array::ArrayMap::(abstract_collection::Map::[]=)";
3765 void standard___collection___array___ArrayMap_____braeq(val_t p0
, val_t p1
, val_t p2
){
3766 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
3771 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3772 fra
.me
.file
= LOCATE_standard___collection___array
;
3774 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMap_____braeq
;
3775 fra
.me
.has_broke
= 0;
3776 fra
.me
.REG_size
= 4;
3777 fra
.me
.nitni_local_ref_head
= NULL
;
3778 fra
.me
.REG
[0] = NIT_NULL
;
3779 fra
.me
.REG
[1] = NIT_NULL
;
3780 fra
.me
.REG
[2] = NIT_NULL
;
3781 fra
.me
.REG
[3] = NIT_NULL
;
3785 /* ../lib/standard/collection/array.nit:541 */
3786 REGB0
= CALL_standard___collection___array___ArrayMap___index(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
3787 /* ../lib/standard/collection/array.nit:542 */
3789 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
3790 if (UNTAG_Bool(REGB2
)) {
3792 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
3794 /* ../lib/standard/kernel.nit:243 */
3795 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB1
));
3796 /* ../lib/standard/collection/array.nit:542 */
3797 if (UNTAG_Bool(REGB1
)) {
3798 /* ../lib/standard/collection/array.nit:543 */
3799 REGB1
= TAG_Bool(ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
3800 if (UNTAG_Bool(REGB1
)) {
3802 nit_abort("Uninitialized attribute %s", "_items", LOCATE_standard___collection___array
, 543);
3804 fra
.me
.REG
[3] = ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0]);
3805 /* ../lib/standard/collection/array.nit:281 */
3807 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
3808 if (UNTAG_Bool(REGB2
)) {
3810 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
3812 /* ../lib/standard/kernel.nit:243 */
3813 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB1
));
3814 /* ../lib/standard/collection/array.nit:281 */
3815 if (UNTAG_Bool(REGB1
)) {
3816 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[3])!=NIT_NULL
);
3817 if (UNTAG_Bool(REGB1
)) {
3819 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 281);
3821 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[3]);
3822 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
3823 if (UNTAG_Bool(REGB2
)) {
3825 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
3827 /* ../lib/standard/kernel.nit:242 */
3828 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
3830 /* ../lib/standard/collection/array.nit:281 */
3831 REGB2
= TAG_Bool(0);
3834 if (UNTAG_Bool(REGB1
)) {
3836 nit_abort("Assert '%s' failed", "index", LOCATE_standard___collection___array
, 281);
3838 /* ../lib/standard/collection/array.nit:282 */
3839 fra
.me
.REG
[3] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[3]);
3840 REGB1
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
3841 if (UNTAG_Bool(REGB1
)) {
3842 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 282);
3844 /* ../lib/standard/collection/array.nit:725 */
3845 fra
.me
.REG
[3] = ((Nit_NativeArray
)fra
.me
.REG
[3])->val
[UNTAG_Int(REGB0
)];
3846 /* ../lib/standard/collection/array.nit:282 */
3849 /* ../lib/standard/collection/array.nit:543 */
3850 REGB0
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
3851 if (UNTAG_Bool(REGB0
)) {
3852 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 543);
3854 CALL_standard___collection___abstract_collection___Couple___second__eq(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[2]);
3856 /* ../lib/standard/collection/array.nit:545 */
3857 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
3858 if (UNTAG_Bool(REGB0
)) {
3860 nit_abort("Uninitialized attribute %s", "_items", LOCATE_standard___collection___array
, 545);
3862 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0]);
3863 fra
.me
.REG
[2] = NEW_Couple_standard___collection___abstract_collection___Couple___init(fra
.me
.REG
[1], fra
.me
.REG
[2]);
3864 CALL_standard___collection___abstract_collection___Sequence___push(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[2]);
3866 stack_frame_head
= fra
.me
.prev
;
3869 static const char LOCATE_standard___collection___array___ArrayMap___keys
[] = "array::ArrayMap::(abstract_collection::MapRead::keys)";
3870 val_t
standard___collection___array___ArrayMap___keys(val_t p0
){
3871 struct {struct stack_frame_t me
;} fra
;
3874 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3875 fra
.me
.file
= LOCATE_standard___collection___array
;
3877 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMap___keys
;
3878 fra
.me
.has_broke
= 0;
3879 fra
.me
.REG_size
= 1;
3880 fra
.me
.nitni_local_ref_head
= NULL
;
3881 fra
.me
.REG
[0] = NIT_NULL
;
3883 /* ../lib/standard/collection/array.nit:549 */
3884 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArrayMap_____atkeys(fra
.me
.REG
[0])!=NIT_NULL
);
3885 if (UNTAG_Bool(REGB0
)) {
3887 nit_abort("Uninitialized attribute %s", "@keys", LOCATE_standard___collection___array
, 549);
3889 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArrayMap_____atkeys(fra
.me
.REG
[0]);
3890 stack_frame_head
= fra
.me
.prev
;
3891 return fra
.me
.REG
[0];
3893 static const char LOCATE_standard___collection___array___ArrayMap___keys__eq
[] = "array::ArrayMap::keys=";
3894 void standard___collection___array___ArrayMap___keys__eq(val_t p0
, val_t p1
){
3895 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
3897 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3898 fra
.me
.file
= LOCATE_standard___collection___array
;
3900 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMap___keys__eq
;
3901 fra
.me
.has_broke
= 0;
3902 fra
.me
.REG_size
= 2;
3903 fra
.me
.nitni_local_ref_head
= NULL
;
3904 fra
.me
.REG
[0] = NIT_NULL
;
3905 fra
.me
.REG
[1] = NIT_NULL
;
3908 /* ../lib/standard/collection/array.nit:549 */
3909 ATTR_standard___collection___array___ArrayMap_____atkeys(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
3910 stack_frame_head
= fra
.me
.prev
;
3913 static const char LOCATE_standard___collection___array___ArrayMap___values
[] = "array::ArrayMap::(abstract_collection::MapRead::values)";
3914 val_t
standard___collection___array___ArrayMap___values(val_t p0
){
3915 struct {struct stack_frame_t me
;} fra
;
3918 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3919 fra
.me
.file
= LOCATE_standard___collection___array
;
3921 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMap___values
;
3922 fra
.me
.has_broke
= 0;
3923 fra
.me
.REG_size
= 1;
3924 fra
.me
.nitni_local_ref_head
= NULL
;
3925 fra
.me
.REG
[0] = NIT_NULL
;
3927 /* ../lib/standard/collection/array.nit:550 */
3928 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArrayMap_____atvalues(fra
.me
.REG
[0])!=NIT_NULL
);
3929 if (UNTAG_Bool(REGB0
)) {
3931 nit_abort("Uninitialized attribute %s", "@values", LOCATE_standard___collection___array
, 550);
3933 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArrayMap_____atvalues(fra
.me
.REG
[0]);
3934 stack_frame_head
= fra
.me
.prev
;
3935 return fra
.me
.REG
[0];
3937 static const char LOCATE_standard___collection___array___ArrayMap___values__eq
[] = "array::ArrayMap::values=";
3938 void standard___collection___array___ArrayMap___values__eq(val_t p0
, val_t p1
){
3939 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
3941 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3942 fra
.me
.file
= LOCATE_standard___collection___array
;
3944 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMap___values__eq
;
3945 fra
.me
.has_broke
= 0;
3946 fra
.me
.REG_size
= 2;
3947 fra
.me
.nitni_local_ref_head
= NULL
;
3948 fra
.me
.REG
[0] = NIT_NULL
;
3949 fra
.me
.REG
[1] = NIT_NULL
;
3952 /* ../lib/standard/collection/array.nit:550 */
3953 ATTR_standard___collection___array___ArrayMap_____atvalues(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
3954 stack_frame_head
= fra
.me
.prev
;
3957 static const char LOCATE_standard___collection___array___ArrayMap___length
[] = "array::ArrayMap::(abstract_collection::MapRead::length)";
3958 val_t
standard___collection___array___ArrayMap___length(val_t p0
){
3959 struct {struct stack_frame_t me
;} fra
;
3962 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3963 fra
.me
.file
= LOCATE_standard___collection___array
;
3965 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMap___length
;
3966 fra
.me
.has_broke
= 0;
3967 fra
.me
.REG_size
= 1;
3968 fra
.me
.nitni_local_ref_head
= NULL
;
3969 fra
.me
.REG
[0] = NIT_NULL
;
3971 /* ../lib/standard/collection/array.nit:553 */
3972 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
3973 if (UNTAG_Bool(REGB0
)) {
3975 nit_abort("Uninitialized attribute %s", "_items", LOCATE_standard___collection___array
, 553);
3977 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0]);
3978 /* ../lib/standard/collection/array.nit:24 */
3979 REGB0
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
3980 if (UNTAG_Bool(REGB0
)) {
3982 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
3984 REGB0
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
3985 /* ../lib/standard/collection/array.nit:553 */
3988 stack_frame_head
= fra
.me
.prev
;
3991 static const char LOCATE_standard___collection___array___ArrayMap___iterator
[] = "array::ArrayMap::(abstract_collection::MapRead::iterator)";
3992 val_t
standard___collection___array___ArrayMap___iterator(val_t p0
){
3993 struct {struct stack_frame_t me
;} fra
;
3996 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3997 fra
.me
.file
= LOCATE_standard___collection___array
;
3999 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMap___iterator
;
4000 fra
.me
.has_broke
= 0;
4001 fra
.me
.REG_size
= 1;
4002 fra
.me
.nitni_local_ref_head
= NULL
;
4003 fra
.me
.REG
[0] = NIT_NULL
;
4005 /* ../lib/standard/collection/array.nit:555 */
4006 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
4007 if (UNTAG_Bool(REGB0
)) {
4009 nit_abort("Uninitialized attribute %s", "_items", LOCATE_standard___collection___array
, 555);
4011 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0]);
4012 fra
.me
.REG
[0] = CALL_standard___collection___abstract_collection___Collection___iterator(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4013 fra
.me
.REG
[0] = NEW_CoupleMapIterator_standard___collection___abstract_collection___CoupleMapIterator___init(fra
.me
.REG
[0]);
4016 stack_frame_head
= fra
.me
.prev
;
4017 return fra
.me
.REG
[0];
4019 static const char LOCATE_standard___collection___array___ArrayMap___is_empty
[] = "array::ArrayMap::(abstract_collection::MapRead::is_empty)";
4020 val_t
standard___collection___array___ArrayMap___is_empty(val_t p0
){
4021 struct {struct stack_frame_t me
;} fra
;
4024 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4025 fra
.me
.file
= LOCATE_standard___collection___array
;
4027 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMap___is_empty
;
4028 fra
.me
.has_broke
= 0;
4029 fra
.me
.REG_size
= 1;
4030 fra
.me
.nitni_local_ref_head
= NULL
;
4031 fra
.me
.REG
[0] = NIT_NULL
;
4033 /* ../lib/standard/collection/array.nit:557 */
4034 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
4035 if (UNTAG_Bool(REGB0
)) {
4037 nit_abort("Uninitialized attribute %s", "_items", LOCATE_standard___collection___array
, 557);
4039 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0]);
4040 REGB0
= CALL_standard___collection___abstract_collection___Collection___is_empty(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4043 stack_frame_head
= fra
.me
.prev
;
4046 static const char LOCATE_standard___collection___array___ArrayMap___clear
[] = "array::ArrayMap::(abstract_collection::Map::clear)";
4047 void standard___collection___array___ArrayMap___clear(val_t p0
){
4048 struct {struct stack_frame_t me
;} fra
;
4051 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4052 fra
.me
.file
= LOCATE_standard___collection___array
;
4054 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMap___clear
;
4055 fra
.me
.has_broke
= 0;
4056 fra
.me
.REG_size
= 1;
4057 fra
.me
.nitni_local_ref_head
= NULL
;
4058 fra
.me
.REG
[0] = NIT_NULL
;
4060 /* ../lib/standard/collection/array.nit:559 */
4061 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
4062 if (UNTAG_Bool(REGB0
)) {
4064 nit_abort("Uninitialized attribute %s", "_items", LOCATE_standard___collection___array
, 559);
4066 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0]);
4067 CALL_standard___collection___abstract_collection___RemovableCollection___clear(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4068 stack_frame_head
= fra
.me
.prev
;
4071 static const char LOCATE_standard___collection___array___ArrayMap___enlarge
[] = "array::ArrayMap::enlarge";
4072 void standard___collection___array___ArrayMap___enlarge(val_t p0
, val_t p1
){
4073 struct {struct stack_frame_t me
;} fra
;
4077 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4078 fra
.me
.file
= LOCATE_standard___collection___array
;
4080 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMap___enlarge
;
4081 fra
.me
.has_broke
= 0;
4082 fra
.me
.REG_size
= 1;
4083 fra
.me
.nitni_local_ref_head
= NULL
;
4084 fra
.me
.REG
[0] = NIT_NULL
;
4087 /* ../lib/standard/collection/array.nit:562 */
4088 REGB1
= TAG_Bool(ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
4089 if (UNTAG_Bool(REGB1
)) {
4091 nit_abort("Uninitialized attribute %s", "_items", LOCATE_standard___collection___array
, 562);
4093 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0]);
4094 CALL_standard___collection___array___AbstractArray___enlarge(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
4095 stack_frame_head
= fra
.me
.prev
;
4098 static const char LOCATE_standard___collection___array___ArrayMap___couple_at
[] = "array::ArrayMap::(abstract_collection::CoupleMap::couple_at)";
4099 val_t
standard___collection___array___ArrayMap___couple_at(val_t p0
, val_t p1
){
4100 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
4105 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4106 fra
.me
.file
= LOCATE_standard___collection___array
;
4108 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMap___couple_at
;
4109 fra
.me
.has_broke
= 0;
4110 fra
.me
.REG_size
= 2;
4111 fra
.me
.nitni_local_ref_head
= NULL
;
4112 fra
.me
.REG
[0] = NIT_NULL
;
4113 fra
.me
.REG
[1] = NIT_NULL
;
4116 /* ../lib/standard/collection/array.nit:566 */
4117 REGB0
= CALL_standard___collection___array___ArrayMap___index(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
4118 /* ../lib/standard/collection/array.nit:567 */
4120 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
4121 if (UNTAG_Bool(REGB2
)) {
4123 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
4125 /* ../lib/standard/kernel.nit:243 */
4126 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB1
));
4127 /* ../lib/standard/collection/array.nit:567 */
4128 if (UNTAG_Bool(REGB1
)) {
4129 /* ../lib/standard/collection/array.nit:568 */
4130 REGB1
= TAG_Bool(ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
4131 if (UNTAG_Bool(REGB1
)) {
4133 nit_abort("Uninitialized attribute %s", "_items", LOCATE_standard___collection___array
, 568);
4135 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0]);
4136 /* ../lib/standard/collection/array.nit:281 */
4138 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
4139 if (UNTAG_Bool(REGB2
)) {
4141 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
4143 /* ../lib/standard/kernel.nit:243 */
4144 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB1
));
4145 /* ../lib/standard/collection/array.nit:281 */
4146 if (UNTAG_Bool(REGB1
)) {
4147 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
4148 if (UNTAG_Bool(REGB1
)) {
4150 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 281);
4152 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
4153 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
4154 if (UNTAG_Bool(REGB2
)) {
4156 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
4158 /* ../lib/standard/kernel.nit:242 */
4159 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
4161 /* ../lib/standard/collection/array.nit:281 */
4162 REGB2
= TAG_Bool(0);
4165 if (UNTAG_Bool(REGB1
)) {
4167 nit_abort("Assert '%s' failed", "index", LOCATE_standard___collection___array
, 281);
4169 /* ../lib/standard/collection/array.nit:282 */
4170 fra
.me
.REG
[0] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[0]);
4171 REGB1
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
4172 if (UNTAG_Bool(REGB1
)) {
4173 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 282);
4175 /* ../lib/standard/collection/array.nit:725 */
4176 fra
.me
.REG
[0] = ((Nit_NativeArray
)fra
.me
.REG
[0])->val
[UNTAG_Int(REGB0
)];
4177 /* ../lib/standard/collection/array.nit:282 */
4180 /* ../lib/standard/collection/array.nit:568 */
4183 /* ../lib/standard/collection/array.nit:570 */
4184 fra
.me
.REG
[0] = NIT_NULL
;
4188 stack_frame_head
= fra
.me
.prev
;
4189 return fra
.me
.REG
[0];
4191 static const char LOCATE_standard___collection___array___ArrayMap___remove_at_index
[] = "array::ArrayMap::remove_at_index";
4192 void standard___collection___array___ArrayMap___remove_at_index(val_t p0
, val_t p1
){
4193 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
4197 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4198 fra
.me
.file
= LOCATE_standard___collection___array
;
4200 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMap___remove_at_index
;
4201 fra
.me
.has_broke
= 0;
4202 fra
.me
.REG_size
= 3;
4203 fra
.me
.nitni_local_ref_head
= NULL
;
4204 fra
.me
.REG
[0] = NIT_NULL
;
4205 fra
.me
.REG
[1] = NIT_NULL
;
4206 fra
.me
.REG
[2] = NIT_NULL
;
4209 /* ../lib/standard/collection/array.nit:580 */
4210 REGB1
= TAG_Bool(ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
4211 if (UNTAG_Bool(REGB1
)) {
4213 nit_abort("Uninitialized attribute %s", "_items", LOCATE_standard___collection___array
, 580);
4215 fra
.me
.REG
[1] = ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0]);
4216 REGB1
= TAG_Bool(ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
4217 if (UNTAG_Bool(REGB1
)) {
4219 nit_abort("Uninitialized attribute %s", "_items", LOCATE_standard___collection___array
, 580);
4221 fra
.me
.REG
[2] = ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0]);
4222 fra
.me
.REG
[2] = CALL_standard___collection___abstract_collection___SequenceRead___last(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
4223 CALL_standard___collection___abstract_collection___Sequence_____braeq(fra
.me
.REG
[1])(fra
.me
.REG
[1], REGB0
, fra
.me
.REG
[2]);
4224 /* ../lib/standard/collection/array.nit:581 */
4225 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
4226 if (UNTAG_Bool(REGB0
)) {
4228 nit_abort("Uninitialized attribute %s", "_items", LOCATE_standard___collection___array
, 581);
4230 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0]);
4231 CALL_standard___collection___abstract_collection___Sequence___pop(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4232 stack_frame_head
= fra
.me
.prev
;
4235 static const char LOCATE_standard___collection___array___ArrayMap___index
[] = "array::ArrayMap::index";
4236 val_t
standard___collection___array___ArrayMap___index(val_t p0
, val_t p1
){
4237 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
4244 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4245 fra
.me
.file
= LOCATE_standard___collection___array
;
4247 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMap___index
;
4248 fra
.me
.has_broke
= 0;
4249 fra
.me
.REG_size
= 3;
4250 fra
.me
.nitni_local_ref_head
= NULL
;
4251 fra
.me
.REG
[0] = NIT_NULL
;
4252 fra
.me
.REG
[1] = NIT_NULL
;
4253 fra
.me
.REG
[2] = NIT_NULL
;
4256 /* ../lib/standard/collection/array.nit:591 */
4257 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArrayMap____last_index(fra
.me
.REG
[0])!=NIT_NULL
);
4258 if (UNTAG_Bool(REGB0
)) {
4260 nit_abort("Uninitialized attribute %s", "_last_index", LOCATE_standard___collection___array
, 591);
4262 REGB0
= ATTR_standard___collection___array___ArrayMap____last_index(fra
.me
.REG
[0]);
4263 /* ../lib/standard/collection/array.nit:592 */
4264 REGB1
= TAG_Bool(ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
4265 if (UNTAG_Bool(REGB1
)) {
4267 nit_abort("Uninitialized attribute %s", "_items", LOCATE_standard___collection___array
, 592);
4269 fra
.me
.REG
[2] = ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0]);
4270 /* ../lib/standard/collection/array.nit:24 */
4271 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
4272 if (UNTAG_Bool(REGB1
)) {
4274 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
4276 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2]);
4277 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
4278 if (UNTAG_Bool(REGB2
)) {
4280 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
4282 /* ../lib/standard/kernel.nit:242 */
4283 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
4284 /* ../lib/standard/collection/array.nit:592 */
4285 if (UNTAG_Bool(REGB1
)) {
4286 REGB1
= TAG_Bool(ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
4287 if (UNTAG_Bool(REGB1
)) {
4289 nit_abort("Uninitialized attribute %s", "_items", LOCATE_standard___collection___array
, 592);
4291 fra
.me
.REG
[2] = ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0]);
4292 /* ../lib/standard/collection/array.nit:279 */
4294 /* ../lib/standard/collection/array.nit:281 */
4296 REGB3
= TAG_Bool(VAL_ISA(REGB2
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1
), VTID_standard___kernel___Comparable___OTHER(REGB1
))) /*cast OTHER*/;
4297 if (UNTAG_Bool(REGB3
)) {
4299 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
4301 /* ../lib/standard/kernel.nit:243 */
4302 REGB2
= TAG_Bool(UNTAG_Int(REGB1
)>=UNTAG_Int(REGB2
));
4303 /* ../lib/standard/collection/array.nit:281 */
4304 if (UNTAG_Bool(REGB2
)) {
4305 REGB2
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
4306 if (UNTAG_Bool(REGB2
)) {
4308 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 281);
4310 REGB2
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2]);
4311 REGB3
= TAG_Bool(VAL_ISA(REGB2
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1
), VTID_standard___kernel___Comparable___OTHER(REGB1
))) /*cast OTHER*/;
4312 if (UNTAG_Bool(REGB3
)) {
4314 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
4316 /* ../lib/standard/kernel.nit:242 */
4317 REGB2
= TAG_Bool(UNTAG_Int(REGB1
)<UNTAG_Int(REGB2
));
4319 /* ../lib/standard/collection/array.nit:281 */
4320 REGB3
= TAG_Bool(0);
4323 if (UNTAG_Bool(REGB2
)) {
4325 nit_abort("Assert '%s' failed", "index", LOCATE_standard___collection___array
, 281);
4327 /* ../lib/standard/collection/array.nit:282 */
4328 fra
.me
.REG
[2] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[2]);
4329 REGB2
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
4330 if (UNTAG_Bool(REGB2
)) {
4331 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 282);
4333 /* ../lib/standard/collection/array.nit:725 */
4334 fra
.me
.REG
[2] = ((Nit_NativeArray
)fra
.me
.REG
[2])->val
[UNTAG_Int(REGB1
)];
4335 /* ../lib/standard/collection/array.nit:282 */
4338 /* ../lib/standard/collection/array.nit:592 */
4339 REGB1
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
4340 if (UNTAG_Bool(REGB1
)) {
4341 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 592);
4343 fra
.me
.REG
[2] = CALL_standard___collection___abstract_collection___Couple___first(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
4344 REGB1
= TAG_Bool(IS_EQUAL_ON(fra
.me
.REG
[1],fra
.me
.REG
[2]));
4345 if (UNTAG_Bool(REGB1
)) {
4347 REGB2
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
4348 if (UNTAG_Bool(REGB2
)) {
4349 REGB2
= TAG_Bool(0);
4352 REGB2
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
4357 REGB2
= TAG_Bool(0);
4360 if (UNTAG_Bool(REGB1
)) {
4363 /* ../lib/standard/collection/array.nit:594 */
4365 /* ../lib/standard/collection/array.nit:595 */
4367 REGB2
= TAG_Bool(ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
4368 if (UNTAG_Bool(REGB2
)) {
4370 nit_abort("Uninitialized attribute %s", "_items", LOCATE_standard___collection___array
, 595);
4372 fra
.me
.REG
[2] = ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0]);
4373 /* ../lib/standard/collection/array.nit:24 */
4374 REGB2
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
4375 if (UNTAG_Bool(REGB2
)) {
4377 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
4379 REGB2
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2]);
4380 REGB3
= TAG_Bool(VAL_ISA(REGB2
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1
), VTID_standard___kernel___Comparable___OTHER(REGB1
))) /*cast OTHER*/;
4381 if (UNTAG_Bool(REGB3
)) {
4383 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
4385 /* ../lib/standard/kernel.nit:242 */
4386 REGB2
= TAG_Bool(UNTAG_Int(REGB1
)<UNTAG_Int(REGB2
));
4387 /* ../lib/standard/collection/array.nit:595 */
4388 if (UNTAG_Bool(REGB2
)) {
4389 /* ../lib/standard/collection/array.nit:596 */
4390 REGB2
= TAG_Bool(ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
4391 if (UNTAG_Bool(REGB2
)) {
4393 nit_abort("Uninitialized attribute %s", "_items", LOCATE_standard___collection___array
, 596);
4395 fra
.me
.REG
[2] = ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0]);
4396 /* ../lib/standard/collection/array.nit:279 */
4398 /* ../lib/standard/collection/array.nit:281 */
4400 REGB4
= TAG_Bool(VAL_ISA(REGB3
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB2
), VTID_standard___kernel___Comparable___OTHER(REGB2
))) /*cast OTHER*/;
4401 if (UNTAG_Bool(REGB4
)) {
4403 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
4405 /* ../lib/standard/kernel.nit:243 */
4406 REGB3
= TAG_Bool(UNTAG_Int(REGB2
)>=UNTAG_Int(REGB3
));
4407 /* ../lib/standard/collection/array.nit:281 */
4408 if (UNTAG_Bool(REGB3
)) {
4409 REGB3
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
4410 if (UNTAG_Bool(REGB3
)) {
4412 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 281);
4414 REGB3
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2]);
4415 REGB4
= TAG_Bool(VAL_ISA(REGB3
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB2
), VTID_standard___kernel___Comparable___OTHER(REGB2
))) /*cast OTHER*/;
4416 if (UNTAG_Bool(REGB4
)) {
4418 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
4420 /* ../lib/standard/kernel.nit:242 */
4421 REGB3
= TAG_Bool(UNTAG_Int(REGB2
)<UNTAG_Int(REGB3
));
4423 /* ../lib/standard/collection/array.nit:281 */
4424 REGB4
= TAG_Bool(0);
4427 if (UNTAG_Bool(REGB3
)) {
4429 nit_abort("Assert '%s' failed", "index", LOCATE_standard___collection___array
, 281);
4431 /* ../lib/standard/collection/array.nit:282 */
4432 fra
.me
.REG
[2] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[2]);
4433 REGB3
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
4434 if (UNTAG_Bool(REGB3
)) {
4435 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 282);
4437 /* ../lib/standard/collection/array.nit:725 */
4438 fra
.me
.REG
[2] = ((Nit_NativeArray
)fra
.me
.REG
[2])->val
[UNTAG_Int(REGB2
)];
4439 /* ../lib/standard/collection/array.nit:282 */
4442 /* ../lib/standard/collection/array.nit:596 */
4443 REGB2
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
4444 if (UNTAG_Bool(REGB2
)) {
4445 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 596);
4447 fra
.me
.REG
[2] = CALL_standard___collection___abstract_collection___Couple___first(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
4448 REGB2
= TAG_Bool(IS_EQUAL_ON(fra
.me
.REG
[1],fra
.me
.REG
[2]));
4449 if (UNTAG_Bool(REGB2
)) {
4451 REGB3
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
4452 if (UNTAG_Bool(REGB3
)) {
4453 REGB3
= TAG_Bool(0);
4456 REGB3
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
4460 if (UNTAG_Bool(REGB2
)) {
4461 /* ../lib/standard/collection/array.nit:597 */
4462 ATTR_standard___collection___array___ArrayMap____last_index(fra
.me
.REG
[0]) = REGB1
;
4463 /* ../lib/standard/collection/array.nit:598 */
4467 /* ../lib/standard/collection/array.nit:600 */
4469 /* ../lib/standard/kernel.nit:245 */
4470 REGB2
= TAG_Int(UNTAG_Int(REGB1
)+UNTAG_Int(REGB2
));
4471 /* ../lib/standard/collection/array.nit:600 */
4474 /* ../lib/standard/collection/array.nit:595 */
4479 /* ../lib/standard/collection/array.nit:602 */
4481 /* ../lib/standard/kernel.nit:246 */
4482 REGB1
= TAG_Int(-UNTAG_Int(REGB1
));
4483 /* ../lib/standard/collection/array.nit:602 */
4487 stack_frame_head
= fra
.me
.prev
;
4490 static const char LOCATE_standard___collection___array___ArrayMap___init
[] = "array::ArrayMap::init";
4491 void standard___collection___array___ArrayMap___init(val_t p0
, int* init_table
){
4492 int itpos11
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_standard___collection___array___ArrayMap
].i
;
4493 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
4495 if (init_table
[itpos11
]) return;
4496 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4497 fra
.me
.file
= LOCATE_standard___collection___array
;
4499 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMap___init
;
4500 fra
.me
.has_broke
= 0;
4501 fra
.me
.REG_size
= 2;
4502 fra
.me
.nitni_local_ref_head
= NULL
;
4503 fra
.me
.REG
[0] = NIT_NULL
;
4504 fra
.me
.REG
[1] = NIT_NULL
;
4506 /* ../lib/standard/collection/array.nit:608 */
4507 fra
.me
.REG
[1] = NEW_Array_standard___collection___array___Array___init();
4508 ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
4509 stack_frame_head
= fra
.me
.prev
;
4510 init_table
[itpos11
] = 1;
4513 static const char LOCATE_standard___collection___array___ArrayMapKeys___map
[] = "array::ArrayMapKeys::map";
4514 val_t
standard___collection___array___ArrayMapKeys___map(val_t p0
){
4515 struct {struct stack_frame_t me
;} fra
;
4518 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4519 fra
.me
.file
= LOCATE_standard___collection___array
;
4521 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMapKeys___map
;
4522 fra
.me
.has_broke
= 0;
4523 fra
.me
.REG_size
= 1;
4524 fra
.me
.nitni_local_ref_head
= NULL
;
4525 fra
.me
.REG
[0] = NIT_NULL
;
4527 /* ../lib/standard/collection/array.nit:614 */
4528 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArrayMapKeys_____atmap(fra
.me
.REG
[0])!=NIT_NULL
);
4529 if (UNTAG_Bool(REGB0
)) {
4531 nit_abort("Uninitialized attribute %s", "@map", LOCATE_standard___collection___array
, 614);
4533 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArrayMapKeys_____atmap(fra
.me
.REG
[0]);
4534 stack_frame_head
= fra
.me
.prev
;
4535 return fra
.me
.REG
[0];
4537 static const char LOCATE_standard___collection___array___ArrayMapKeys___map__eq
[] = "array::ArrayMapKeys::map=";
4538 void standard___collection___array___ArrayMapKeys___map__eq(val_t p0
, val_t p1
){
4539 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
4541 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4542 fra
.me
.file
= LOCATE_standard___collection___array
;
4544 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMapKeys___map__eq
;
4545 fra
.me
.has_broke
= 0;
4546 fra
.me
.REG_size
= 2;
4547 fra
.me
.nitni_local_ref_head
= NULL
;
4548 fra
.me
.REG
[0] = NIT_NULL
;
4549 fra
.me
.REG
[1] = NIT_NULL
;
4552 /* ../lib/standard/collection/array.nit:614 */
4553 ATTR_standard___collection___array___ArrayMapKeys_____atmap(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
4554 stack_frame_head
= fra
.me
.prev
;
4557 static const char LOCATE_standard___collection___array___ArrayMapKeys___count
[] = "array::ArrayMapKeys::(abstract_collection::Collection::count)";
4558 val_t
standard___collection___array___ArrayMapKeys___count(val_t p0
, val_t p1
){
4559 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
4563 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4564 fra
.me
.file
= LOCATE_standard___collection___array
;
4566 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMapKeys___count
;
4567 fra
.me
.has_broke
= 0;
4568 fra
.me
.REG_size
= 2;
4569 fra
.me
.nitni_local_ref_head
= NULL
;
4570 fra
.me
.REG
[0] = NIT_NULL
;
4571 fra
.me
.REG
[1] = NIT_NULL
;
4574 /* ../lib/standard/collection/array.nit:616 */
4575 REGB0
= CALL_standard___collection___abstract_collection___Collection___has(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
4576 if (UNTAG_Bool(REGB0
)) {
4585 stack_frame_head
= fra
.me
.prev
;
4588 static const char LOCATE_standard___collection___array___ArrayMapKeys___first
[] = "array::ArrayMapKeys::(abstract_collection::Collection::first)";
4589 val_t
standard___collection___array___ArrayMapKeys___first(val_t p0
){
4590 struct {struct stack_frame_t me
;} fra
;
4593 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4594 fra
.me
.file
= LOCATE_standard___collection___array
;
4596 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMapKeys___first
;
4597 fra
.me
.has_broke
= 0;
4598 fra
.me
.REG_size
= 1;
4599 fra
.me
.nitni_local_ref_head
= NULL
;
4600 fra
.me
.REG
[0] = NIT_NULL
;
4602 /* ../lib/standard/collection/array.nit:617 */
4603 fra
.me
.REG
[0] = CALL_standard___collection___array___ArrayMapKeys___map(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4604 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
4605 if (UNTAG_Bool(REGB0
)) {
4607 nit_abort("Uninitialized attribute %s", "_items", LOCATE_standard___collection___array
, 617);
4609 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0]);
4610 fra
.me
.REG
[0] = CALL_standard___collection___abstract_collection___Collection___first(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4611 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
4612 if (UNTAG_Bool(REGB0
)) {
4613 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 617);
4615 fra
.me
.REG
[0] = CALL_standard___collection___abstract_collection___Couple___first(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4618 stack_frame_head
= fra
.me
.prev
;
4619 return fra
.me
.REG
[0];
4621 static const char LOCATE_standard___collection___array___ArrayMapKeys___has
[] = "array::ArrayMapKeys::(abstract_collection::Collection::has)";
4622 val_t
standard___collection___array___ArrayMapKeys___has(val_t p0
, val_t p1
){
4623 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
4628 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4629 fra
.me
.file
= LOCATE_standard___collection___array
;
4631 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMapKeys___has
;
4632 fra
.me
.has_broke
= 0;
4633 fra
.me
.REG_size
= 2;
4634 fra
.me
.nitni_local_ref_head
= NULL
;
4635 fra
.me
.REG
[0] = NIT_NULL
;
4636 fra
.me
.REG
[1] = NIT_NULL
;
4639 /* ../lib/standard/collection/array.nit:618 */
4640 fra
.me
.REG
[0] = CALL_standard___collection___array___ArrayMapKeys___map(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4641 REGB0
= CALL_standard___collection___array___ArrayMap___index(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
4643 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
4644 if (UNTAG_Bool(REGB2
)) {
4646 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
4648 /* ../lib/standard/kernel.nit:243 */
4649 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB1
));
4650 /* ../lib/standard/collection/array.nit:618 */
4653 stack_frame_head
= fra
.me
.prev
;
4656 static const char LOCATE_standard___collection___array___ArrayMapKeys___has_only
[] = "array::ArrayMapKeys::(abstract_collection::Collection::has_only)";
4657 val_t
standard___collection___array___ArrayMapKeys___has_only(val_t p0
, val_t p1
){
4658 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
4663 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4664 fra
.me
.file
= LOCATE_standard___collection___array
;
4666 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMapKeys___has_only
;
4667 fra
.me
.has_broke
= 0;
4668 fra
.me
.REG_size
= 2;
4669 fra
.me
.nitni_local_ref_head
= NULL
;
4670 fra
.me
.REG
[0] = NIT_NULL
;
4671 fra
.me
.REG
[1] = NIT_NULL
;
4674 /* ../lib/standard/collection/array.nit:619 */
4675 REGB0
= CALL_standard___collection___abstract_collection___Collection___has(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
4676 if (UNTAG_Bool(REGB0
)) {
4677 REGB0
= CALL_standard___collection___abstract_collection___Collection___length(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4679 REGB2
= TAG_Bool(IS_EQUAL_OO(REGB0
,REGB1
));
4680 if (UNTAG_Bool(REGB2
)) {
4682 /* ../lib/standard/kernel.nit:237 */
4683 REGB1
= TAG_Bool((REGB0
)==(REGB1
));
4684 /* ../lib/standard/collection/array.nit:619 */
4688 REGB1
= TAG_Bool(0);
4691 if (UNTAG_Bool(REGB2
)) {
4692 REGB2
= TAG_Bool(1);
4694 REGB1
= CALL_standard___collection___abstract_collection___Collection___is_empty(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4699 stack_frame_head
= fra
.me
.prev
;
4702 static const char LOCATE_standard___collection___array___ArrayMapKeys___is_empty
[] = "array::ArrayMapKeys::(abstract_collection::Collection::is_empty)";
4703 val_t
standard___collection___array___ArrayMapKeys___is_empty(val_t p0
){
4704 struct {struct stack_frame_t me
;} fra
;
4707 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4708 fra
.me
.file
= LOCATE_standard___collection___array
;
4710 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMapKeys___is_empty
;
4711 fra
.me
.has_broke
= 0;
4712 fra
.me
.REG_size
= 1;
4713 fra
.me
.nitni_local_ref_head
= NULL
;
4714 fra
.me
.REG
[0] = NIT_NULL
;
4716 /* ../lib/standard/collection/array.nit:620 */
4717 fra
.me
.REG
[0] = CALL_standard___collection___array___ArrayMapKeys___map(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4718 REGB0
= CALL_standard___collection___abstract_collection___MapRead___is_empty(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4721 stack_frame_head
= fra
.me
.prev
;
4724 static const char LOCATE_standard___collection___array___ArrayMapKeys___length
[] = "array::ArrayMapKeys::(abstract_collection::Collection::length)";
4725 val_t
standard___collection___array___ArrayMapKeys___length(val_t p0
){
4726 struct {struct stack_frame_t me
;} fra
;
4729 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4730 fra
.me
.file
= LOCATE_standard___collection___array
;
4732 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMapKeys___length
;
4733 fra
.me
.has_broke
= 0;
4734 fra
.me
.REG_size
= 1;
4735 fra
.me
.nitni_local_ref_head
= NULL
;
4736 fra
.me
.REG
[0] = NIT_NULL
;
4738 /* ../lib/standard/collection/array.nit:621 */
4739 fra
.me
.REG
[0] = CALL_standard___collection___array___ArrayMapKeys___map(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4740 REGB0
= CALL_standard___collection___abstract_collection___MapRead___length(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4743 stack_frame_head
= fra
.me
.prev
;
4746 static const char LOCATE_standard___collection___array___ArrayMapKeys___iterator
[] = "array::ArrayMapKeys::(abstract_collection::Collection::iterator)";
4747 val_t
standard___collection___array___ArrayMapKeys___iterator(val_t p0
){
4748 struct {struct stack_frame_t me
;} fra
;
4750 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4751 fra
.me
.file
= LOCATE_standard___collection___array
;
4753 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMapKeys___iterator
;
4754 fra
.me
.has_broke
= 0;
4755 fra
.me
.REG_size
= 1;
4756 fra
.me
.nitni_local_ref_head
= NULL
;
4757 fra
.me
.REG
[0] = NIT_NULL
;
4759 /* ../lib/standard/collection/array.nit:622 */
4760 fra
.me
.REG
[0] = CALL_standard___collection___array___ArrayMapKeys___map(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4761 fra
.me
.REG
[0] = CALL_standard___collection___abstract_collection___MapRead___iterator(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4762 fra
.me
.REG
[0] = NEW_MapKeysIterator_standard___collection___abstract_collection___MapKeysIterator___init(fra
.me
.REG
[0]);
4765 stack_frame_head
= fra
.me
.prev
;
4766 return fra
.me
.REG
[0];
4768 static const char LOCATE_standard___collection___array___ArrayMapKeys___clear
[] = "array::ArrayMapKeys::(abstract_collection::RemovableCollection::clear)";
4769 void standard___collection___array___ArrayMapKeys___clear(val_t p0
){
4770 struct {struct stack_frame_t me
;} fra
;
4772 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4773 fra
.me
.file
= LOCATE_standard___collection___array
;
4775 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMapKeys___clear
;
4776 fra
.me
.has_broke
= 0;
4777 fra
.me
.REG_size
= 1;
4778 fra
.me
.nitni_local_ref_head
= NULL
;
4779 fra
.me
.REG
[0] = NIT_NULL
;
4781 /* ../lib/standard/collection/array.nit:623 */
4782 fra
.me
.REG
[0] = CALL_standard___collection___array___ArrayMapKeys___map(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4783 CALL_standard___collection___abstract_collection___Map___clear(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4784 stack_frame_head
= fra
.me
.prev
;
4787 static const char LOCATE_standard___collection___array___ArrayMapKeys___remove
[] = "array::ArrayMapKeys::(abstract_collection::RemovableCollection::remove)";
4788 void standard___collection___array___ArrayMapKeys___remove(val_t p0
, val_t p1
){
4789 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
4794 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4795 fra
.me
.file
= LOCATE_standard___collection___array
;
4797 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMapKeys___remove
;
4798 fra
.me
.has_broke
= 0;
4799 fra
.me
.REG_size
= 3;
4800 fra
.me
.nitni_local_ref_head
= NULL
;
4801 fra
.me
.REG
[0] = NIT_NULL
;
4802 fra
.me
.REG
[1] = NIT_NULL
;
4803 fra
.me
.REG
[2] = NIT_NULL
;
4806 /* ../lib/standard/collection/array.nit:626 */
4807 fra
.me
.REG
[2] = CALL_standard___collection___array___ArrayMapKeys___map(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4808 REGB0
= CALL_standard___collection___array___ArrayMap___index(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
4809 /* ../lib/standard/collection/array.nit:627 */
4811 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
4812 if (UNTAG_Bool(REGB2
)) {
4814 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
4816 /* ../lib/standard/kernel.nit:243 */
4817 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB1
));
4818 /* ../lib/standard/collection/array.nit:627 */
4819 if (UNTAG_Bool(REGB1
)) {
4820 fra
.me
.REG
[0] = CALL_standard___collection___array___ArrayMapKeys___map(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4821 CALL_standard___collection___array___ArrayMap___remove_at_index(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
4823 stack_frame_head
= fra
.me
.prev
;
4826 static const char LOCATE_standard___collection___array___ArrayMapKeys___remove_all
[] = "array::ArrayMapKeys::(abstract_collection::RemovableCollection::remove_all)";
4827 void standard___collection___array___ArrayMapKeys___remove_all(val_t p0
, val_t p1
){
4828 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
4830 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4831 fra
.me
.file
= LOCATE_standard___collection___array
;
4833 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMapKeys___remove_all
;
4834 fra
.me
.has_broke
= 0;
4835 fra
.me
.REG_size
= 2;
4836 fra
.me
.nitni_local_ref_head
= NULL
;
4837 fra
.me
.REG
[0] = NIT_NULL
;
4838 fra
.me
.REG
[1] = NIT_NULL
;
4841 /* ../lib/standard/collection/array.nit:629 */
4842 CALL_standard___collection___abstract_collection___RemovableCollection___remove(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
4843 stack_frame_head
= fra
.me
.prev
;
4846 static const char LOCATE_standard___collection___array___ArrayMapKeys___init
[] = "array::ArrayMapKeys::init";
4847 void standard___collection___array___ArrayMapKeys___init(val_t p0
, val_t p1
, int* init_table
){
4848 int itpos12
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_standard___collection___array___ArrayMapKeys
].i
;
4849 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
4851 if (init_table
[itpos12
]) return;
4852 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4853 fra
.me
.file
= LOCATE_standard___collection___array
;
4855 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMapKeys___init
;
4856 fra
.me
.has_broke
= 0;
4857 fra
.me
.REG_size
= 2;
4858 fra
.me
.nitni_local_ref_head
= NULL
;
4859 fra
.me
.REG
[0] = NIT_NULL
;
4860 fra
.me
.REG
[1] = NIT_NULL
;
4863 ATTR_standard___collection___array___ArrayMapKeys_____atmap(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
4864 stack_frame_head
= fra
.me
.prev
;
4865 init_table
[itpos12
] = 1;
4868 static const char LOCATE_standard___collection___array___ArrayMapValues___map
[] = "array::ArrayMapValues::map";
4869 val_t
standard___collection___array___ArrayMapValues___map(val_t p0
){
4870 struct {struct stack_frame_t me
;} fra
;
4873 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4874 fra
.me
.file
= LOCATE_standard___collection___array
;
4876 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMapValues___map
;
4877 fra
.me
.has_broke
= 0;
4878 fra
.me
.REG_size
= 1;
4879 fra
.me
.nitni_local_ref_head
= NULL
;
4880 fra
.me
.REG
[0] = NIT_NULL
;
4882 /* ../lib/standard/collection/array.nit:634 */
4883 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArrayMapValues_____atmap(fra
.me
.REG
[0])!=NIT_NULL
);
4884 if (UNTAG_Bool(REGB0
)) {
4886 nit_abort("Uninitialized attribute %s", "@map", LOCATE_standard___collection___array
, 634);
4888 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArrayMapValues_____atmap(fra
.me
.REG
[0]);
4889 stack_frame_head
= fra
.me
.prev
;
4890 return fra
.me
.REG
[0];
4892 static const char LOCATE_standard___collection___array___ArrayMapValues___map__eq
[] = "array::ArrayMapValues::map=";
4893 void standard___collection___array___ArrayMapValues___map__eq(val_t p0
, val_t p1
){
4894 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
4896 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4897 fra
.me
.file
= LOCATE_standard___collection___array
;
4899 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMapValues___map__eq
;
4900 fra
.me
.has_broke
= 0;
4901 fra
.me
.REG_size
= 2;
4902 fra
.me
.nitni_local_ref_head
= NULL
;
4903 fra
.me
.REG
[0] = NIT_NULL
;
4904 fra
.me
.REG
[1] = NIT_NULL
;
4907 /* ../lib/standard/collection/array.nit:634 */
4908 ATTR_standard___collection___array___ArrayMapValues_____atmap(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
4909 stack_frame_head
= fra
.me
.prev
;
4912 static const char LOCATE_standard___collection___array___ArrayMapValues___first
[] = "array::ArrayMapValues::(abstract_collection::Collection::first)";
4913 val_t
standard___collection___array___ArrayMapValues___first(val_t p0
){
4914 struct {struct stack_frame_t me
;} fra
;
4917 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4918 fra
.me
.file
= LOCATE_standard___collection___array
;
4920 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMapValues___first
;
4921 fra
.me
.has_broke
= 0;
4922 fra
.me
.REG_size
= 1;
4923 fra
.me
.nitni_local_ref_head
= NULL
;
4924 fra
.me
.REG
[0] = NIT_NULL
;
4926 /* ../lib/standard/collection/array.nit:636 */
4927 fra
.me
.REG
[0] = CALL_standard___collection___array___ArrayMapValues___map(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4928 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
4929 if (UNTAG_Bool(REGB0
)) {
4931 nit_abort("Uninitialized attribute %s", "_items", LOCATE_standard___collection___array
, 636);
4933 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0]);
4934 fra
.me
.REG
[0] = CALL_standard___collection___abstract_collection___Collection___first(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4935 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
4936 if (UNTAG_Bool(REGB0
)) {
4937 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 636);
4939 fra
.me
.REG
[0] = CALL_standard___collection___abstract_collection___Couple___second(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4942 stack_frame_head
= fra
.me
.prev
;
4943 return fra
.me
.REG
[0];
4945 static const char LOCATE_standard___collection___array___ArrayMapValues___is_empty
[] = "array::ArrayMapValues::(abstract_collection::Collection::is_empty)";
4946 val_t
standard___collection___array___ArrayMapValues___is_empty(val_t p0
){
4947 struct {struct stack_frame_t me
;} fra
;
4950 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4951 fra
.me
.file
= LOCATE_standard___collection___array
;
4953 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMapValues___is_empty
;
4954 fra
.me
.has_broke
= 0;
4955 fra
.me
.REG_size
= 1;
4956 fra
.me
.nitni_local_ref_head
= NULL
;
4957 fra
.me
.REG
[0] = NIT_NULL
;
4959 /* ../lib/standard/collection/array.nit:637 */
4960 fra
.me
.REG
[0] = CALL_standard___collection___array___ArrayMapValues___map(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4961 REGB0
= CALL_standard___collection___abstract_collection___MapRead___is_empty(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4964 stack_frame_head
= fra
.me
.prev
;
4967 static const char LOCATE_standard___collection___array___ArrayMapValues___length
[] = "array::ArrayMapValues::(abstract_collection::Collection::length)";
4968 val_t
standard___collection___array___ArrayMapValues___length(val_t p0
){
4969 struct {struct stack_frame_t me
;} fra
;
4972 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4973 fra
.me
.file
= LOCATE_standard___collection___array
;
4975 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMapValues___length
;
4976 fra
.me
.has_broke
= 0;
4977 fra
.me
.REG_size
= 1;
4978 fra
.me
.nitni_local_ref_head
= NULL
;
4979 fra
.me
.REG
[0] = NIT_NULL
;
4981 /* ../lib/standard/collection/array.nit:638 */
4982 fra
.me
.REG
[0] = CALL_standard___collection___array___ArrayMapValues___map(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4983 REGB0
= CALL_standard___collection___abstract_collection___MapRead___length(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4986 stack_frame_head
= fra
.me
.prev
;
4989 static const char LOCATE_standard___collection___array___ArrayMapValues___iterator
[] = "array::ArrayMapValues::(abstract_collection::Collection::iterator)";
4990 val_t
standard___collection___array___ArrayMapValues___iterator(val_t p0
){
4991 struct {struct stack_frame_t me
;} fra
;
4993 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4994 fra
.me
.file
= LOCATE_standard___collection___array
;
4996 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMapValues___iterator
;
4997 fra
.me
.has_broke
= 0;
4998 fra
.me
.REG_size
= 1;
4999 fra
.me
.nitni_local_ref_head
= NULL
;
5000 fra
.me
.REG
[0] = NIT_NULL
;
5002 /* ../lib/standard/collection/array.nit:639 */
5003 fra
.me
.REG
[0] = CALL_standard___collection___array___ArrayMapValues___map(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
5004 fra
.me
.REG
[0] = CALL_standard___collection___abstract_collection___MapRead___iterator(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
5005 fra
.me
.REG
[0] = NEW_MapValuesIterator_standard___collection___abstract_collection___MapValuesIterator___init(fra
.me
.REG
[0]);
5008 stack_frame_head
= fra
.me
.prev
;
5009 return fra
.me
.REG
[0];
5011 static const char LOCATE_standard___collection___array___ArrayMapValues___has
[] = "array::ArrayMapValues::(abstract_collection::Collection::has)";
5012 val_t
standard___collection___array___ArrayMapValues___has(val_t p0
, val_t p1
){
5013 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
5018 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
5019 fra
.me
.file
= LOCATE_standard___collection___array
;
5021 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMapValues___has
;
5022 fra
.me
.has_broke
= 0;
5023 fra
.me
.REG_size
= 4;
5024 fra
.me
.nitni_local_ref_head
= NULL
;
5025 fra
.me
.REG
[0] = NIT_NULL
;
5026 fra
.me
.REG
[1] = NIT_NULL
;
5027 fra
.me
.REG
[2] = NIT_NULL
;
5028 fra
.me
.REG
[3] = NIT_NULL
;
5031 /* ../lib/standard/collection/array.nit:644 */
5032 fra
.me
.REG
[0] = CALL_standard___collection___array___ArrayMapValues___map(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
5033 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
5034 if (UNTAG_Bool(REGB0
)) {
5036 nit_abort("Uninitialized attribute %s", "_items", LOCATE_standard___collection___array
, 644);
5038 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0]);
5039 /* ../lib/standard/collection/array.nit:270 */
5041 /* ../lib/standard/collection/array.nit:271 */
5042 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
5043 if (UNTAG_Bool(REGB1
)) {
5045 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 271);
5047 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
5048 /* ../lib/standard/collection/array.nit:272 */
5049 fra
.me
.REG
[2] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[0]);
5050 /* ../lib/standard/collection/array.nit:273 */
5052 /* ../lib/standard/collection/array.nit:24 */
5053 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
5054 if (UNTAG_Bool(REGB1
)) {
5056 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
5058 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
5059 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
5060 if (UNTAG_Bool(REGB2
)) {
5062 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
5064 /* ../lib/standard/kernel.nit:242 */
5065 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
5066 /* ../lib/standard/collection/array.nit:273 */
5067 if (UNTAG_Bool(REGB1
)) {
5068 /* ../lib/standard/collection/array.nit:274 */
5069 REGB1
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
5070 if (UNTAG_Bool(REGB1
)) {
5071 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 274);
5073 /* ../lib/standard/collection/array.nit:725 */
5074 fra
.me
.REG
[3] = ((Nit_NativeArray
)fra
.me
.REG
[2])->val
[UNTAG_Int(REGB0
)];
5075 /* ../lib/standard/collection/array.nit:644 */
5076 fra
.me
.REG
[3] = CALL_standard___collection___abstract_collection___Couple___second(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
5077 REGB1
= TAG_Bool(IS_EQUAL_NN(fra
.me
.REG
[3],fra
.me
.REG
[1]));
5078 if (UNTAG_Bool(REGB1
)) {
5080 REGB2
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
5081 if (UNTAG_Bool(REGB2
)) {
5082 REGB2
= TAG_Bool(0);
5085 REGB2
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[1]);
5089 if (UNTAG_Bool(REGB1
)) {
5090 REGB1
= TAG_Bool(1);
5093 /* ../lib/standard/collection/array.nit:275 */
5095 /* ../lib/standard/kernel.nit:245 */
5096 REGB2
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB2
));
5097 /* ../lib/standard/collection/array.nit:275 */
5100 /* ../lib/standard/collection/array.nit:273 */
5105 /* ../lib/standard/collection/array.nit:645 */
5106 REGB0
= TAG_Bool(0);
5110 stack_frame_head
= fra
.me
.prev
;
5113 static const char LOCATE_standard___collection___array___ArrayMapValues___has_only
[] = "array::ArrayMapValues::(abstract_collection::Collection::has_only)";
5114 val_t
standard___collection___array___ArrayMapValues___has_only(val_t p0
, val_t p1
){
5115 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
5120 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
5121 fra
.me
.file
= LOCATE_standard___collection___array
;
5123 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMapValues___has_only
;
5124 fra
.me
.has_broke
= 0;
5125 fra
.me
.REG_size
= 4;
5126 fra
.me
.nitni_local_ref_head
= NULL
;
5127 fra
.me
.REG
[0] = NIT_NULL
;
5128 fra
.me
.REG
[1] = NIT_NULL
;
5129 fra
.me
.REG
[2] = NIT_NULL
;
5130 fra
.me
.REG
[3] = NIT_NULL
;
5133 /* ../lib/standard/collection/array.nit:651 */
5134 fra
.me
.REG
[0] = CALL_standard___collection___array___ArrayMapValues___map(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
5135 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
5136 if (UNTAG_Bool(REGB0
)) {
5138 nit_abort("Uninitialized attribute %s", "_items", LOCATE_standard___collection___array
, 651);
5140 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0]);
5141 /* ../lib/standard/collection/array.nit:270 */
5143 /* ../lib/standard/collection/array.nit:271 */
5144 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
5145 if (UNTAG_Bool(REGB1
)) {
5147 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 271);
5149 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
5150 /* ../lib/standard/collection/array.nit:272 */
5151 fra
.me
.REG
[2] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[0]);
5152 /* ../lib/standard/collection/array.nit:273 */
5154 /* ../lib/standard/collection/array.nit:24 */
5155 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
5156 if (UNTAG_Bool(REGB1
)) {
5158 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
5160 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
5161 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
5162 if (UNTAG_Bool(REGB2
)) {
5164 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
5166 /* ../lib/standard/kernel.nit:242 */
5167 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
5168 /* ../lib/standard/collection/array.nit:273 */
5169 if (UNTAG_Bool(REGB1
)) {
5170 /* ../lib/standard/collection/array.nit:274 */
5171 REGB1
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
5172 if (UNTAG_Bool(REGB1
)) {
5173 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 274);
5175 /* ../lib/standard/collection/array.nit:725 */
5176 fra
.me
.REG
[3] = ((Nit_NativeArray
)fra
.me
.REG
[2])->val
[UNTAG_Int(REGB0
)];
5177 /* ../lib/standard/collection/array.nit:651 */
5178 fra
.me
.REG
[3] = CALL_standard___collection___abstract_collection___Couple___second(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
5179 REGB1
= TAG_Bool(IS_EQUAL_NN(fra
.me
.REG
[3],fra
.me
.REG
[1]));
5180 if (UNTAG_Bool(REGB1
)) {
5182 REGB2
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
5183 if (UNTAG_Bool(REGB2
)) {
5184 REGB2
= TAG_Bool(0);
5187 REGB2
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[1]);
5191 REGB1
= TAG_Bool(!UNTAG_Bool(REGB1
));
5192 if (UNTAG_Bool(REGB1
)) {
5193 REGB1
= TAG_Bool(0);
5196 /* ../lib/standard/collection/array.nit:275 */
5198 /* ../lib/standard/kernel.nit:245 */
5199 REGB2
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB2
));
5200 /* ../lib/standard/collection/array.nit:275 */
5203 /* ../lib/standard/collection/array.nit:273 */
5208 /* ../lib/standard/collection/array.nit:652 */
5209 REGB0
= TAG_Bool(1);
5213 stack_frame_head
= fra
.me
.prev
;
5216 static const char LOCATE_standard___collection___array___ArrayMapValues___count
[] = "array::ArrayMapValues::(abstract_collection::Collection::count)";
5217 val_t
standard___collection___array___ArrayMapValues___count(val_t p0
, val_t p1
){
5218 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
5224 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
5225 fra
.me
.file
= LOCATE_standard___collection___array
;
5227 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMapValues___count
;
5228 fra
.me
.has_broke
= 0;
5229 fra
.me
.REG_size
= 4;
5230 fra
.me
.nitni_local_ref_head
= NULL
;
5231 fra
.me
.REG
[0] = NIT_NULL
;
5232 fra
.me
.REG
[1] = NIT_NULL
;
5233 fra
.me
.REG
[2] = NIT_NULL
;
5234 fra
.me
.REG
[3] = NIT_NULL
;
5237 /* ../lib/standard/collection/array.nit:658 */
5239 /* ../lib/standard/collection/array.nit:659 */
5240 fra
.me
.REG
[0] = CALL_standard___collection___array___ArrayMapValues___map(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
5241 REGB1
= TAG_Bool(ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
5242 if (UNTAG_Bool(REGB1
)) {
5244 nit_abort("Uninitialized attribute %s", "_items", LOCATE_standard___collection___array
, 659);
5246 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0]);
5247 /* ../lib/standard/collection/array.nit:270 */
5249 /* ../lib/standard/collection/array.nit:271 */
5250 REGB2
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
5251 if (UNTAG_Bool(REGB2
)) {
5253 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 271);
5255 REGB2
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
5256 /* ../lib/standard/collection/array.nit:272 */
5257 fra
.me
.REG
[2] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[0]);
5258 /* ../lib/standard/collection/array.nit:273 */
5260 /* ../lib/standard/collection/array.nit:24 */
5261 REGB2
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
5262 if (UNTAG_Bool(REGB2
)) {
5264 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
5266 REGB2
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
5267 REGB3
= TAG_Bool(VAL_ISA(REGB2
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1
), VTID_standard___kernel___Comparable___OTHER(REGB1
))) /*cast OTHER*/;
5268 if (UNTAG_Bool(REGB3
)) {
5270 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
5272 /* ../lib/standard/kernel.nit:242 */
5273 REGB2
= TAG_Bool(UNTAG_Int(REGB1
)<UNTAG_Int(REGB2
));
5274 /* ../lib/standard/collection/array.nit:273 */
5275 if (UNTAG_Bool(REGB2
)) {
5276 /* ../lib/standard/collection/array.nit:274 */
5277 REGB2
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
5278 if (UNTAG_Bool(REGB2
)) {
5279 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 274);
5281 /* ../lib/standard/collection/array.nit:725 */
5282 fra
.me
.REG
[3] = ((Nit_NativeArray
)fra
.me
.REG
[2])->val
[UNTAG_Int(REGB1
)];
5283 /* ../lib/standard/collection/array.nit:659 */
5284 fra
.me
.REG
[3] = CALL_standard___collection___abstract_collection___Couple___second(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
5285 REGB2
= TAG_Bool(IS_EQUAL_NN(fra
.me
.REG
[3],fra
.me
.REG
[1]));
5286 if (UNTAG_Bool(REGB2
)) {
5288 REGB3
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
5289 if (UNTAG_Bool(REGB3
)) {
5290 REGB3
= TAG_Bool(0);
5293 REGB3
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[1]);
5297 if (UNTAG_Bool(REGB2
)) {
5299 /* ../lib/standard/kernel.nit:245 */
5300 REGB2
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB2
));
5301 /* ../lib/standard/collection/array.nit:659 */
5304 /* ../lib/standard/collection/array.nit:275 */
5306 /* ../lib/standard/kernel.nit:245 */
5307 REGB2
= TAG_Int(UNTAG_Int(REGB1
)+UNTAG_Int(REGB2
));
5308 /* ../lib/standard/collection/array.nit:275 */
5311 /* ../lib/standard/collection/array.nit:273 */
5316 /* ../lib/standard/collection/array.nit:660 */
5319 stack_frame_head
= fra
.me
.prev
;
5322 static const char LOCATE_standard___collection___array___ArrayMapValues___clear
[] = "array::ArrayMapValues::(abstract_collection::RemovableCollection::clear)";
5323 void standard___collection___array___ArrayMapValues___clear(val_t p0
){
5324 struct {struct stack_frame_t me
;} fra
;
5326 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
5327 fra
.me
.file
= LOCATE_standard___collection___array
;
5329 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMapValues___clear
;
5330 fra
.me
.has_broke
= 0;
5331 fra
.me
.REG_size
= 1;
5332 fra
.me
.nitni_local_ref_head
= NULL
;
5333 fra
.me
.REG
[0] = NIT_NULL
;
5335 /* ../lib/standard/collection/array.nit:663 */
5336 fra
.me
.REG
[0] = CALL_standard___collection___array___ArrayMapValues___map(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
5337 CALL_standard___collection___abstract_collection___Map___clear(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
5338 stack_frame_head
= fra
.me
.prev
;
5341 static const char LOCATE_standard___collection___array___ArrayMapValues___remove
[] = "array::ArrayMapValues::(abstract_collection::RemovableCollection::remove)";
5342 void standard___collection___array___ArrayMapValues___remove(val_t p0
, val_t p1
){
5343 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
5349 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
5350 fra
.me
.file
= LOCATE_standard___collection___array
;
5352 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMapValues___remove
;
5353 fra
.me
.has_broke
= 0;
5354 fra
.me
.REG_size
= 3;
5355 fra
.me
.nitni_local_ref_head
= NULL
;
5356 fra
.me
.REG
[0] = NIT_NULL
;
5357 fra
.me
.REG
[1] = NIT_NULL
;
5358 fra
.me
.REG
[2] = NIT_NULL
;
5361 /* ../lib/standard/collection/array.nit:667 */
5362 fra
.me
.REG
[0] = CALL_standard___collection___array___ArrayMapValues___map(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
5363 /* ../lib/standard/collection/array.nit:668 */
5364 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
5365 if (UNTAG_Bool(REGB0
)) {
5367 nit_abort("Uninitialized attribute %s", "_items", LOCATE_standard___collection___array
, 668);
5369 fra
.me
.REG
[2] = ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0]);
5370 /* ../lib/standard/collection/array.nit:24 */
5371 REGB0
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
5372 if (UNTAG_Bool(REGB0
)) {
5374 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
5376 REGB0
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2]);
5377 /* ../lib/standard/collection/array.nit:668 */
5379 /* ../lib/standard/kernel.nit:247 */
5380 REGB1
= TAG_Int(UNTAG_Int(REGB0
)-UNTAG_Int(REGB1
));
5381 /* ../lib/standard/collection/array.nit:669 */
5384 REGB2
= TAG_Bool(VAL_ISA(REGB0
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1
), VTID_standard___kernel___Comparable___OTHER(REGB1
))) /*cast OTHER*/;
5385 if (UNTAG_Bool(REGB2
)) {
5387 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
5389 /* ../lib/standard/kernel.nit:243 */
5390 REGB0
= TAG_Bool(UNTAG_Int(REGB1
)>=UNTAG_Int(REGB0
));
5391 /* ../lib/standard/collection/array.nit:669 */
5392 if (UNTAG_Bool(REGB0
)) {
5393 /* ../lib/standard/collection/array.nit:670 */
5394 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
5395 if (UNTAG_Bool(REGB0
)) {
5397 nit_abort("Uninitialized attribute %s", "_items", LOCATE_standard___collection___array
, 670);
5399 fra
.me
.REG
[2] = ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0]);
5400 /* ../lib/standard/collection/array.nit:279 */
5402 /* ../lib/standard/collection/array.nit:281 */
5404 REGB3
= TAG_Bool(VAL_ISA(REGB2
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
5405 if (UNTAG_Bool(REGB3
)) {
5407 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
5409 /* ../lib/standard/kernel.nit:243 */
5410 REGB2
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB2
));
5411 /* ../lib/standard/collection/array.nit:281 */
5412 if (UNTAG_Bool(REGB2
)) {
5413 REGB2
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
5414 if (UNTAG_Bool(REGB2
)) {
5416 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 281);
5418 REGB2
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2]);
5419 REGB3
= TAG_Bool(VAL_ISA(REGB2
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
5420 if (UNTAG_Bool(REGB3
)) {
5422 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
5424 /* ../lib/standard/kernel.nit:242 */
5425 REGB2
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB2
));
5427 /* ../lib/standard/collection/array.nit:281 */
5428 REGB3
= TAG_Bool(0);
5431 if (UNTAG_Bool(REGB2
)) {
5433 nit_abort("Assert '%s' failed", "index", LOCATE_standard___collection___array
, 281);
5435 /* ../lib/standard/collection/array.nit:282 */
5436 fra
.me
.REG
[2] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[2]);
5437 REGB2
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
5438 if (UNTAG_Bool(REGB2
)) {
5439 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 282);
5441 /* ../lib/standard/collection/array.nit:725 */
5442 fra
.me
.REG
[2] = ((Nit_NativeArray
)fra
.me
.REG
[2])->val
[UNTAG_Int(REGB0
)];
5443 /* ../lib/standard/collection/array.nit:282 */
5446 /* ../lib/standard/collection/array.nit:670 */
5447 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
5448 if (UNTAG_Bool(REGB0
)) {
5449 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 670);
5451 fra
.me
.REG
[2] = CALL_standard___collection___abstract_collection___Couple___second(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
5452 REGB0
= TAG_Bool(IS_EQUAL_NN(fra
.me
.REG
[2],fra
.me
.REG
[1]));
5453 if (UNTAG_Bool(REGB0
)) {
5455 REGB2
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
5456 if (UNTAG_Bool(REGB2
)) {
5457 REGB2
= TAG_Bool(0);
5460 REGB2
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
5464 if (UNTAG_Bool(REGB0
)) {
5465 /* ../lib/standard/collection/array.nit:671 */
5466 CALL_standard___collection___array___ArrayMap___remove_at_index(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB1
);
5467 /* ../lib/standard/collection/array.nit:672 */
5470 /* ../lib/standard/collection/array.nit:674 */
5472 /* ../lib/standard/kernel.nit:247 */
5473 REGB0
= TAG_Int(UNTAG_Int(REGB1
)-UNTAG_Int(REGB0
));
5474 /* ../lib/standard/collection/array.nit:674 */
5477 /* ../lib/standard/collection/array.nit:669 */
5483 stack_frame_head
= fra
.me
.prev
;
5486 static const char LOCATE_standard___collection___array___ArrayMapValues___remove_all
[] = "array::ArrayMapValues::(abstract_collection::RemovableCollection::remove_all)";
5487 void standard___collection___array___ArrayMapValues___remove_all(val_t p0
, val_t p1
){
5488 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
5494 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
5495 fra
.me
.file
= LOCATE_standard___collection___array
;
5497 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMapValues___remove_all
;
5498 fra
.me
.has_broke
= 0;
5499 fra
.me
.REG_size
= 3;
5500 fra
.me
.nitni_local_ref_head
= NULL
;
5501 fra
.me
.REG
[0] = NIT_NULL
;
5502 fra
.me
.REG
[1] = NIT_NULL
;
5503 fra
.me
.REG
[2] = NIT_NULL
;
5506 /* ../lib/standard/collection/array.nit:680 */
5507 fra
.me
.REG
[0] = CALL_standard___collection___array___ArrayMapValues___map(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
5508 /* ../lib/standard/collection/array.nit:681 */
5509 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
5510 if (UNTAG_Bool(REGB0
)) {
5512 nit_abort("Uninitialized attribute %s", "_items", LOCATE_standard___collection___array
, 681);
5514 fra
.me
.REG
[2] = ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0]);
5515 /* ../lib/standard/collection/array.nit:24 */
5516 REGB0
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
5517 if (UNTAG_Bool(REGB0
)) {
5519 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
5521 REGB0
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2]);
5522 /* ../lib/standard/collection/array.nit:681 */
5524 /* ../lib/standard/kernel.nit:247 */
5525 REGB1
= TAG_Int(UNTAG_Int(REGB0
)-UNTAG_Int(REGB1
));
5526 /* ../lib/standard/collection/array.nit:682 */
5529 REGB2
= TAG_Bool(VAL_ISA(REGB0
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1
), VTID_standard___kernel___Comparable___OTHER(REGB1
))) /*cast OTHER*/;
5530 if (UNTAG_Bool(REGB2
)) {
5532 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
5534 /* ../lib/standard/kernel.nit:243 */
5535 REGB0
= TAG_Bool(UNTAG_Int(REGB1
)>=UNTAG_Int(REGB0
));
5536 /* ../lib/standard/collection/array.nit:682 */
5537 if (UNTAG_Bool(REGB0
)) {
5538 /* ../lib/standard/collection/array.nit:683 */
5539 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
5540 if (UNTAG_Bool(REGB0
)) {
5542 nit_abort("Uninitialized attribute %s", "_items", LOCATE_standard___collection___array
, 683);
5544 fra
.me
.REG
[2] = ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0]);
5545 /* ../lib/standard/collection/array.nit:279 */
5547 /* ../lib/standard/collection/array.nit:281 */
5549 REGB3
= TAG_Bool(VAL_ISA(REGB2
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
5550 if (UNTAG_Bool(REGB3
)) {
5552 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
5554 /* ../lib/standard/kernel.nit:243 */
5555 REGB2
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB2
));
5556 /* ../lib/standard/collection/array.nit:281 */
5557 if (UNTAG_Bool(REGB2
)) {
5558 REGB2
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
5559 if (UNTAG_Bool(REGB2
)) {
5561 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 281);
5563 REGB2
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2]);
5564 REGB3
= TAG_Bool(VAL_ISA(REGB2
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
5565 if (UNTAG_Bool(REGB3
)) {
5567 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
5569 /* ../lib/standard/kernel.nit:242 */
5570 REGB2
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB2
));
5572 /* ../lib/standard/collection/array.nit:281 */
5573 REGB3
= TAG_Bool(0);
5576 if (UNTAG_Bool(REGB2
)) {
5578 nit_abort("Assert '%s' failed", "index", LOCATE_standard___collection___array
, 281);
5580 /* ../lib/standard/collection/array.nit:282 */
5581 fra
.me
.REG
[2] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[2]);
5582 REGB2
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
5583 if (UNTAG_Bool(REGB2
)) {
5584 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 282);
5586 /* ../lib/standard/collection/array.nit:725 */
5587 fra
.me
.REG
[2] = ((Nit_NativeArray
)fra
.me
.REG
[2])->val
[UNTAG_Int(REGB0
)];
5588 /* ../lib/standard/collection/array.nit:282 */
5591 /* ../lib/standard/collection/array.nit:683 */
5592 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
5593 if (UNTAG_Bool(REGB0
)) {
5594 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 683);
5596 fra
.me
.REG
[2] = CALL_standard___collection___abstract_collection___Couple___second(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
5597 REGB0
= TAG_Bool(IS_EQUAL_NN(fra
.me
.REG
[2],fra
.me
.REG
[1]));
5598 if (UNTAG_Bool(REGB0
)) {
5600 REGB2
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
5601 if (UNTAG_Bool(REGB2
)) {
5602 REGB2
= TAG_Bool(0);
5605 REGB2
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
5609 if (UNTAG_Bool(REGB0
)) {
5610 /* ../lib/standard/collection/array.nit:684 */
5611 CALL_standard___collection___array___ArrayMap___remove_at_index(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB1
);
5613 /* ../lib/standard/collection/array.nit:686 */
5615 /* ../lib/standard/kernel.nit:247 */
5616 REGB0
= TAG_Int(UNTAG_Int(REGB1
)-UNTAG_Int(REGB0
));
5617 /* ../lib/standard/collection/array.nit:686 */
5620 /* ../lib/standard/collection/array.nit:682 */
5625 stack_frame_head
= fra
.me
.prev
;
5628 static const char LOCATE_standard___collection___array___ArrayMapValues___init
[] = "array::ArrayMapValues::init";
5629 void standard___collection___array___ArrayMapValues___init(val_t p0
, val_t p1
, int* init_table
){
5630 int itpos13
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_standard___collection___array___ArrayMapValues
].i
;
5631 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
5633 if (init_table
[itpos13
]) return;
5634 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
5635 fra
.me
.file
= LOCATE_standard___collection___array
;
5637 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMapValues___init
;
5638 fra
.me
.has_broke
= 0;
5639 fra
.me
.REG_size
= 2;
5640 fra
.me
.nitni_local_ref_head
= NULL
;
5641 fra
.me
.REG
[0] = NIT_NULL
;
5642 fra
.me
.REG
[1] = NIT_NULL
;
5645 ATTR_standard___collection___array___ArrayMapValues_____atmap(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
5646 stack_frame_head
= fra
.me
.prev
;
5647 init_table
[itpos13
] = 1;
5650 static const char LOCATE_standard___collection___array___Iterator___to_a
[] = "array::Iterator::to_a";
5651 val_t
standard___collection___array___Iterator___to_a(val_t p0
){
5652 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
5655 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
5656 fra
.me
.file
= LOCATE_standard___collection___array
;
5658 fra
.me
.meth
= LOCATE_standard___collection___array___Iterator___to_a
;
5659 fra
.me
.has_broke
= 0;
5660 fra
.me
.REG_size
= 3;
5661 fra
.me
.nitni_local_ref_head
= NULL
;
5662 fra
.me
.REG
[0] = NIT_NULL
;
5663 fra
.me
.REG
[1] = NIT_NULL
;
5664 fra
.me
.REG
[2] = NIT_NULL
;
5666 /* ../lib/standard/collection/array.nit:698 */
5667 fra
.me
.REG
[1] = NEW_Array_standard___collection___array___Array___init();
5668 /* ../lib/standard/collection/array.nit:699 */
5670 REGB0
= CALL_standard___collection___abstract_collection___Iterator___is_ok(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
5671 if (UNTAG_Bool(REGB0
)) {
5672 /* ../lib/standard/collection/array.nit:700 */
5673 fra
.me
.REG
[2] = CALL_standard___collection___abstract_collection___Iterator___item(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
5674 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
5675 /* ../lib/standard/collection/array.nit:701 */
5676 CALL_standard___collection___abstract_collection___Iterator___next(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
5678 /* ../lib/standard/collection/array.nit:699 */
5683 /* ../lib/standard/collection/array.nit:703 */
5686 stack_frame_head
= fra
.me
.prev
;
5687 return fra
.me
.REG
[1];
5689 static const char LOCATE_standard___collection___array___Collection___to_a
[] = "array::Collection::to_a";
5690 val_t
standard___collection___array___Collection___to_a(val_t p0
){
5691 struct {struct stack_frame_t me
;} fra
;
5693 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
5694 fra
.me
.file
= LOCATE_standard___collection___array
;
5696 fra
.me
.meth
= LOCATE_standard___collection___array___Collection___to_a
;
5697 fra
.me
.has_broke
= 0;
5698 fra
.me
.REG_size
= 1;
5699 fra
.me
.nitni_local_ref_head
= NULL
;
5700 fra
.me
.REG
[0] = NIT_NULL
;
5702 /* ../lib/standard/collection/array.nit:711 */
5703 fra
.me
.REG
[0] = CALL_standard___collection___abstract_collection___Collection___iterator(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
5704 fra
.me
.REG
[0] = CALL_standard___collection___array___Iterator___to_a(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
5707 stack_frame_head
= fra
.me
.prev
;
5708 return fra
.me
.REG
[0];
5710 static const char LOCATE_standard___collection___array___ArrayCapable___calloc_array
[] = "array::ArrayCapable::calloc_array";
5711 val_t
standard___collection___array___ArrayCapable___calloc_array(val_t p0
, val_t p1
){
5712 struct {struct stack_frame_t me
;} fra
;
5715 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
5716 fra
.me
.file
= LOCATE_standard___collection___array
;
5718 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayCapable___calloc_array
;
5719 fra
.me
.has_broke
= 0;
5720 fra
.me
.REG_size
= 1;
5721 fra
.me
.nitni_local_ref_head
= NULL
;
5722 fra
.me
.REG
[0] = NIT_NULL
;
5725 /* ../lib/standard/collection/array.nit:719 */
5726 fra
.me
.REG
[0] = NEW_NativeArray(UNTAG_Int(REGB0
), sizeof(val_t
));
5727 stack_frame_head
= fra
.me
.prev
;
5728 return fra
.me
.REG
[0];
5730 static const char LOCATE_standard___collection___array___NativeArray_____bra
[] = "array::NativeArray::[]";
5731 val_t
standard___collection___array___NativeArray_____bra(val_t p0
, val_t p1
){
5732 struct {struct stack_frame_t me
;} fra
;
5735 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
5736 fra
.me
.file
= LOCATE_standard___collection___array
;
5738 fra
.me
.meth
= LOCATE_standard___collection___array___NativeArray_____bra
;
5739 fra
.me
.has_broke
= 0;
5740 fra
.me
.REG_size
= 1;
5741 fra
.me
.nitni_local_ref_head
= NULL
;
5742 fra
.me
.REG
[0] = NIT_NULL
;
5745 /* ../lib/standard/collection/array.nit:725 */
5746 fra
.me
.REG
[0] = ((Nit_NativeArray
)fra
.me
.REG
[0])->val
[UNTAG_Int(REGB0
)];
5747 stack_frame_head
= fra
.me
.prev
;
5748 return fra
.me
.REG
[0];
5750 static const char LOCATE_standard___collection___array___NativeArray_____braeq
[] = "array::NativeArray::[]=";
5751 void standard___collection___array___NativeArray_____braeq(val_t p0
, val_t p1
, val_t p2
){
5752 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
5755 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
5756 fra
.me
.file
= LOCATE_standard___collection___array
;
5758 fra
.me
.meth
= LOCATE_standard___collection___array___NativeArray_____braeq
;
5759 fra
.me
.has_broke
= 0;
5760 fra
.me
.REG_size
= 2;
5761 fra
.me
.nitni_local_ref_head
= NULL
;
5762 fra
.me
.REG
[0] = NIT_NULL
;
5763 fra
.me
.REG
[1] = NIT_NULL
;
5767 /* ../lib/standard/collection/array.nit:726 */
5768 ((Nit_NativeArray
)fra
.me
.REG
[0])->val
[UNTAG_Int(REGB0
)]=fra
.me
.REG
[1];
5769 stack_frame_head
= fra
.me
.prev
;
5772 static const char LOCATE_standard___collection___array___NativeArray___copy_to
[] = "array::NativeArray::copy_to";
5773 void standard___collection___array___NativeArray___copy_to(val_t p0
, val_t p1
, val_t p2
){
5774 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
5777 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
5778 fra
.me
.file
= LOCATE_standard___collection___array
;
5780 fra
.me
.meth
= LOCATE_standard___collection___array___NativeArray___copy_to
;
5781 fra
.me
.has_broke
= 0;
5782 fra
.me
.REG_size
= 2;
5783 fra
.me
.nitni_local_ref_head
= NULL
;
5784 fra
.me
.REG
[0] = NIT_NULL
;
5785 fra
.me
.REG
[1] = NIT_NULL
;
5789 /* ../lib/standard/collection/array.nit:727 */
5790 (void)memcpy(((Nit_NativeArray
)fra
.me
.REG
[1])->val
, ((Nit_NativeArray
)fra
.me
.REG
[0])->val
, UNTAG_Int(REGB0
)*sizeof(val_t
));
5791 stack_frame_head
= fra
.me
.prev
;