1 /* This C file is generated by NIT to compile module standard___collection___array. */
2 #include "standard___collection___array._sep.h"
3 val_t
standard___collection___array___AbstractArrayRead___length(val_t p0
){
4 struct {struct stack_frame_t me
;} fra
;
7 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
8 fra
.me
.file
= LOCATE_standard___collection___array
;
10 fra
.me
.meth
= LOCATE_standard___collection___array___AbstractArrayRead___length
;
13 fra
.me
.REG
[0] = NIT_NULL
;
15 /* ./../lib/standard//collection//array.nit:24 */
16 REGB0
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
17 if (UNTAG_Bool(REGB0
)) {
19 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
21 REGB0
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
22 stack_frame_head
= fra
.me
.prev
;
25 val_t
standard___collection___array___AbstractArrayRead___is_empty(val_t p0
){
26 struct {struct stack_frame_t me
;} fra
;
31 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
32 fra
.me
.file
= LOCATE_standard___collection___array
;
34 fra
.me
.meth
= LOCATE_standard___collection___array___AbstractArrayRead___is_empty
;
37 fra
.me
.REG
[0] = NIT_NULL
;
39 /* ./../lib/standard//collection//array.nit:26 */
40 REGB0
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
41 if (UNTAG_Bool(REGB0
)) {
43 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 26);
45 REGB0
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
47 REGB2
= TAG_Bool(IS_EQUAL_OO(REGB0
,REGB1
));
48 if (UNTAG_Bool(REGB2
)) {
50 /* ./../lib/standard//kernel.nit:227 */
51 REGB1
= TAG_Bool((REGB0
)==(REGB1
));
52 /* ./../lib/standard//collection//array.nit:26 */
57 stack_frame_head
= fra
.me
.prev
;
60 val_t
standard___collection___array___AbstractArrayRead___has(val_t p0
, val_t p1
){
61 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
67 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
68 fra
.me
.file
= LOCATE_standard___collection___array
;
70 fra
.me
.meth
= LOCATE_standard___collection___array___AbstractArrayRead___has
;
73 fra
.me
.REG
[0] = NIT_NULL
;
74 fra
.me
.REG
[1] = NIT_NULL
;
75 fra
.me
.REG
[2] = NIT_NULL
;
78 /* ./../lib/standard//collection//array.nit:30 */
80 /* ./../lib/standard//collection//array.nit:24 */
81 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
82 if (UNTAG_Bool(REGB1
)) {
84 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
86 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
87 /* ./../lib/standard//collection//array.nit:32 */
89 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
90 if (UNTAG_Bool(REGB2
)) {
92 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
94 /* ./../lib/standard//kernel.nit:232 */
95 REGB2
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
96 /* ./../lib/standard//collection//array.nit:32 */
97 if (UNTAG_Bool(REGB2
)) {
98 /* ./../lib/standard//collection//array.nit:33 */
99 fra
.me
.REG
[2] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
100 REGB2
= TAG_Bool(IS_EQUAL_NN(fra
.me
.REG
[2],fra
.me
.REG
[1]));
101 if (UNTAG_Bool(REGB2
)) {
103 REGB3
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
104 if (UNTAG_Bool(REGB3
)) {
105 REGB3
= TAG_Bool(false);
108 REGB3
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
112 if (UNTAG_Bool(REGB2
)) {
113 REGB2
= TAG_Bool(true);
116 /* ./../lib/standard//collection//array.nit:34 */
118 /* ./../lib/standard//kernel.nit:235 */
119 REGB3
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB3
));
120 /* ./../lib/standard//collection//array.nit:34 */
123 /* ./../lib/standard//collection//array.nit:32 */
128 /* ./../lib/standard//collection//array.nit:36 */
129 REGB0
= TAG_Bool(false);
133 stack_frame_head
= fra
.me
.prev
;
136 val_t
standard___collection___array___AbstractArrayRead___has_only(val_t p0
, val_t p1
){
137 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
143 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
144 fra
.me
.file
= LOCATE_standard___collection___array
;
146 fra
.me
.meth
= LOCATE_standard___collection___array___AbstractArrayRead___has_only
;
147 fra
.me
.has_broke
= 0;
149 fra
.me
.REG
[0] = NIT_NULL
;
150 fra
.me
.REG
[1] = NIT_NULL
;
151 fra
.me
.REG
[2] = NIT_NULL
;
154 /* ./../lib/standard//collection//array.nit:41 */
156 /* ./../lib/standard//collection//array.nit:24 */
157 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
158 if (UNTAG_Bool(REGB1
)) {
160 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
162 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
163 /* ./../lib/standard//collection//array.nit:43 */
165 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
166 if (UNTAG_Bool(REGB2
)) {
168 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
170 /* ./../lib/standard//kernel.nit:232 */
171 REGB2
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
172 /* ./../lib/standard//collection//array.nit:43 */
173 if (UNTAG_Bool(REGB2
)) {
174 /* ./../lib/standard//collection//array.nit:44 */
175 fra
.me
.REG
[2] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
176 REGB2
= TAG_Bool(IS_EQUAL_NN(fra
.me
.REG
[2],fra
.me
.REG
[1]));
177 if (UNTAG_Bool(REGB2
)) {
179 REGB3
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
180 if (UNTAG_Bool(REGB3
)) {
181 REGB3
= TAG_Bool(false);
184 REGB3
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
188 REGB2
= TAG_Bool(!UNTAG_Bool(REGB2
));
189 if (UNTAG_Bool(REGB2
)) {
190 REGB2
= TAG_Bool(false);
193 /* ./../lib/standard//collection//array.nit:45 */
195 /* ./../lib/standard//kernel.nit:235 */
196 REGB3
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB3
));
197 /* ./../lib/standard//collection//array.nit:45 */
200 /* ./../lib/standard//collection//array.nit:43 */
205 /* ./../lib/standard//collection//array.nit:47 */
206 REGB0
= TAG_Bool(true);
210 stack_frame_head
= fra
.me
.prev
;
213 val_t
standard___collection___array___AbstractArrayRead___count(val_t p0
, val_t p1
){
214 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
221 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
222 fra
.me
.file
= LOCATE_standard___collection___array
;
224 fra
.me
.meth
= LOCATE_standard___collection___array___AbstractArrayRead___count
;
225 fra
.me
.has_broke
= 0;
227 fra
.me
.REG
[0] = NIT_NULL
;
228 fra
.me
.REG
[1] = NIT_NULL
;
229 fra
.me
.REG
[2] = NIT_NULL
;
232 /* ./../lib/standard//collection//array.nit:52 */
234 /* ./../lib/standard//collection//array.nit:53 */
236 /* ./../lib/standard//collection//array.nit:24 */
237 REGB2
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
238 if (UNTAG_Bool(REGB2
)) {
240 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
242 REGB2
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
243 /* ./../lib/standard//collection//array.nit:55 */
245 REGB3
= TAG_Bool(VAL_ISA(REGB2
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1
), VTID_standard___kernel___Comparable___OTHER(REGB1
))) /*cast OTHER*/;
246 if (UNTAG_Bool(REGB3
)) {
248 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
250 /* ./../lib/standard//kernel.nit:232 */
251 REGB3
= TAG_Bool(UNTAG_Int(REGB1
)<UNTAG_Int(REGB2
));
252 /* ./../lib/standard//collection//array.nit:55 */
253 if (UNTAG_Bool(REGB3
)) {
254 /* ./../lib/standard//collection//array.nit:56 */
255 fra
.me
.REG
[2] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB1
);
256 REGB3
= TAG_Bool(IS_EQUAL_NN(fra
.me
.REG
[2],fra
.me
.REG
[1]));
257 if (UNTAG_Bool(REGB3
)) {
259 REGB4
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
260 if (UNTAG_Bool(REGB4
)) {
261 REGB4
= TAG_Bool(false);
264 REGB4
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
268 if (UNTAG_Bool(REGB3
)) {
270 /* ./../lib/standard//kernel.nit:235 */
271 REGB3
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB3
));
272 /* ./../lib/standard//collection//array.nit:56 */
275 /* ./../lib/standard//collection//array.nit:57 */
277 /* ./../lib/standard//kernel.nit:235 */
278 REGB3
= TAG_Int(UNTAG_Int(REGB1
)+UNTAG_Int(REGB3
));
279 /* ./../lib/standard//collection//array.nit:57 */
282 /* ./../lib/standard//collection//array.nit:55 */
287 /* ./../lib/standard//collection//array.nit:59 */
290 stack_frame_head
= fra
.me
.prev
;
293 val_t
standard___collection___array___AbstractArrayRead___index_of(val_t p0
, val_t p1
){
294 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
297 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
298 fra
.me
.file
= LOCATE_standard___collection___array
;
300 fra
.me
.meth
= LOCATE_standard___collection___array___AbstractArrayRead___index_of
;
301 fra
.me
.has_broke
= 0;
303 fra
.me
.REG
[0] = NIT_NULL
;
304 fra
.me
.REG
[1] = NIT_NULL
;
307 /* ./../lib/standard//collection//array.nit:62 */
309 REGB0
= CALL_standard___collection___array___AbstractArrayRead___index_of_from(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], REGB0
);
312 stack_frame_head
= fra
.me
.prev
;
315 val_t
standard___collection___array___AbstractArrayRead___last_index_of(val_t p0
, val_t p1
){
316 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
320 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
321 fra
.me
.file
= LOCATE_standard___collection___array
;
323 fra
.me
.meth
= LOCATE_standard___collection___array___AbstractArrayRead___last_index_of
;
324 fra
.me
.has_broke
= 0;
326 fra
.me
.REG
[0] = NIT_NULL
;
327 fra
.me
.REG
[1] = NIT_NULL
;
330 /* ./../lib/standard//collection//array.nit:24 */
331 REGB0
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
332 if (UNTAG_Bool(REGB0
)) {
334 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
336 REGB0
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
337 /* ./../lib/standard//collection//array.nit:66 */
339 /* ./../lib/standard//kernel.nit:237 */
340 REGB1
= TAG_Int(UNTAG_Int(REGB0
)-UNTAG_Int(REGB1
));
341 /* ./../lib/standard//collection//array.nit:66 */
342 REGB1
= CALL_standard___collection___array___AbstractArrayRead___last_index_of_from(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], REGB1
);
345 stack_frame_head
= fra
.me
.prev
;
348 val_t
standard___collection___array___AbstractArrayRead___index_of_from(val_t p0
, val_t p1
, val_t p2
){
349 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
355 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
356 fra
.me
.file
= LOCATE_standard___collection___array
;
358 fra
.me
.meth
= LOCATE_standard___collection___array___AbstractArrayRead___index_of_from
;
359 fra
.me
.has_broke
= 0;
361 fra
.me
.REG
[0] = NIT_NULL
;
362 fra
.me
.REG
[1] = NIT_NULL
;
363 fra
.me
.REG
[2] = NIT_NULL
;
367 /* ./../lib/standard//collection//array.nit:24 */
368 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
369 if (UNTAG_Bool(REGB1
)) {
371 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
373 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
374 /* ./../lib/standard//collection//array.nit:74 */
376 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
377 if (UNTAG_Bool(REGB2
)) {
379 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
381 /* ./../lib/standard//kernel.nit:232 */
382 REGB2
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
383 /* ./../lib/standard//collection//array.nit:74 */
384 if (UNTAG_Bool(REGB2
)) {
385 /* ./../lib/standard//collection//array.nit:75 */
386 fra
.me
.REG
[2] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
387 REGB2
= TAG_Bool(IS_EQUAL_NN(fra
.me
.REG
[2],fra
.me
.REG
[1]));
388 if (UNTAG_Bool(REGB2
)) {
390 REGB3
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
391 if (UNTAG_Bool(REGB3
)) {
392 REGB3
= TAG_Bool(false);
395 REGB3
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
399 if (UNTAG_Bool(REGB2
)) {
400 /* ./../lib/standard//collection//array.nit:76 */
404 /* ./../lib/standard//collection//array.nit:78 */
406 /* ./../lib/standard//kernel.nit:235 */
407 REGB3
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB3
));
408 /* ./../lib/standard//collection//array.nit:78 */
411 /* ./../lib/standard//collection//array.nit:74 */
416 /* ./../lib/standard//collection//array.nit:80 */
418 /* ./../lib/standard//kernel.nit:236 */
419 REGB0
= TAG_Int(-UNTAG_Int(REGB0
));
420 /* ./../lib/standard//collection//array.nit:80 */
424 stack_frame_head
= fra
.me
.prev
;
427 val_t
standard___collection___array___AbstractArrayRead___last_index_of_from(val_t p0
, val_t p1
, val_t p2
){
428 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
433 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
434 fra
.me
.file
= LOCATE_standard___collection___array
;
436 fra
.me
.meth
= LOCATE_standard___collection___array___AbstractArrayRead___last_index_of_from
;
437 fra
.me
.has_broke
= 0;
439 fra
.me
.REG
[0] = NIT_NULL
;
440 fra
.me
.REG
[1] = NIT_NULL
;
441 fra
.me
.REG
[2] = NIT_NULL
;
445 /* ./../lib/standard//collection//array.nit:88 */
448 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
449 if (UNTAG_Bool(REGB2
)) {
451 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
453 /* ./../lib/standard//kernel.nit:233 */
454 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB1
));
455 /* ./../lib/standard//collection//array.nit:88 */
456 if (UNTAG_Bool(REGB1
)) {
457 /* ./../lib/standard//collection//array.nit:89 */
458 fra
.me
.REG
[2] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
459 REGB1
= TAG_Bool(IS_EQUAL_NN(fra
.me
.REG
[2],fra
.me
.REG
[1]));
460 if (UNTAG_Bool(REGB1
)) {
462 REGB2
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
463 if (UNTAG_Bool(REGB2
)) {
464 REGB2
= TAG_Bool(false);
467 REGB2
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
471 if (UNTAG_Bool(REGB1
)) {
472 /* ./../lib/standard//collection//array.nit:90 */
476 /* ./../lib/standard//collection//array.nit:92 */
478 /* ./../lib/standard//kernel.nit:237 */
479 REGB2
= TAG_Int(UNTAG_Int(REGB0
)-UNTAG_Int(REGB2
));
480 /* ./../lib/standard//collection//array.nit:92 */
484 /* ./../lib/standard//collection//array.nit:88 */
489 /* ./../lib/standard//collection//array.nit:95 */
491 /* ./../lib/standard//kernel.nit:236 */
492 REGB0
= TAG_Int(-UNTAG_Int(REGB0
));
493 /* ./../lib/standard//collection//array.nit:95 */
497 stack_frame_head
= fra
.me
.prev
;
500 val_t
standard___collection___array___AbstractArrayRead___reversed(val_t p0
){
501 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
506 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
507 fra
.me
.file
= LOCATE_standard___collection___array
;
509 fra
.me
.meth
= LOCATE_standard___collection___array___AbstractArrayRead___reversed
;
510 fra
.me
.has_broke
= 0;
512 fra
.me
.REG
[0] = NIT_NULL
;
513 fra
.me
.REG
[1] = NIT_NULL
;
514 fra
.me
.REG
[2] = NIT_NULL
;
516 /* ./../lib/standard//collection//array.nit:103 */
517 REGB0
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
518 if (UNTAG_Bool(REGB0
)) {
520 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 103);
522 REGB0
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
523 /* ./../lib/standard//collection//array.nit:104 */
524 fra
.me
.REG
[1] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
525 /* ./../lib/standard//collection//array.nit:105 */
528 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
529 if (UNTAG_Bool(REGB2
)) {
531 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
533 /* ./../lib/standard//kernel.nit:234 */
534 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>UNTAG_Int(REGB1
));
535 /* ./../lib/standard//collection//array.nit:105 */
536 if (UNTAG_Bool(REGB1
)) {
537 /* ./../lib/standard//collection//array.nit:106 */
539 /* ./../lib/standard//kernel.nit:237 */
540 REGB1
= TAG_Int(UNTAG_Int(REGB0
)-UNTAG_Int(REGB1
));
541 /* ./../lib/standard//collection//array.nit:106 */
543 /* ./../lib/standard//collection//array.nit:107 */
544 fra
.me
.REG
[2] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
545 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
547 /* ./../lib/standard//collection//array.nit:105 */
552 /* ./../lib/standard//collection//array.nit:109 */
555 stack_frame_head
= fra
.me
.prev
;
556 return fra
.me
.REG
[1];
558 void standard___collection___array___AbstractArrayRead___copy_to(val_t p0
, val_t p1
, val_t p2
, val_t p3
, val_t p4
){
559 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
566 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
567 fra
.me
.file
= LOCATE_standard___collection___array
;
569 fra
.me
.meth
= LOCATE_standard___collection___array___AbstractArrayRead___copy_to
;
570 fra
.me
.has_broke
= 0;
572 fra
.me
.REG
[0] = NIT_NULL
;
573 fra
.me
.REG
[1] = NIT_NULL
;
574 fra
.me
.REG
[2] = NIT_NULL
;
580 /* ./../lib/standard//collection//array.nit:122 */
583 REGB4
= TAG_Bool(VAL_ISA(REGB3
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1
), VTID_standard___kernel___Comparable___OTHER(REGB1
))) /*cast OTHER*/;
584 if (UNTAG_Bool(REGB4
)) {
586 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
588 /* ./../lib/standard//kernel.nit:234 */
589 REGB3
= TAG_Bool(UNTAG_Int(REGB1
)>UNTAG_Int(REGB3
));
590 /* ./../lib/standard//collection//array.nit:122 */
591 if (UNTAG_Bool(REGB3
)) {
592 /* ./../lib/standard//collection//array.nit:123 */
594 /* ./../lib/standard//kernel.nit:237 */
595 REGB3
= TAG_Int(UNTAG_Int(REGB1
)-UNTAG_Int(REGB3
));
596 /* ./../lib/standard//collection//array.nit:123 */
598 /* ./../lib/standard//kernel.nit:235 */
599 REGB3
= TAG_Int(UNTAG_Int(REGB2
)+UNTAG_Int(REGB1
));
600 REGB4
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
601 /* ./../lib/standard//collection//array.nit:124 */
602 fra
.me
.REG
[2] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB4
);
603 CALL_standard___collection___abstract_collection___Sequence_____braeq(fra
.me
.REG
[1])(fra
.me
.REG
[1], REGB3
, fra
.me
.REG
[2]);
605 /* ./../lib/standard//collection//array.nit:122 */
610 stack_frame_head
= fra
.me
.prev
;
613 void standard___collection___array___AbstractArrayRead___output(val_t p0
){
614 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
620 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
621 fra
.me
.file
= LOCATE_standard___collection___array
;
623 fra
.me
.meth
= LOCATE_standard___collection___array___AbstractArrayRead___output
;
624 fra
.me
.has_broke
= 0;
626 fra
.me
.REG
[0] = NIT_NULL
;
627 fra
.me
.REG
[1] = NIT_NULL
;
629 /* ./../lib/standard//collection//array.nit:130 */
631 /* ./../lib/standard//collection//array.nit:24 */
632 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
633 if (UNTAG_Bool(REGB1
)) {
635 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
637 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
638 /* ./../lib/standard//collection//array.nit:132 */
640 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
641 if (UNTAG_Bool(REGB2
)) {
643 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
645 /* ./../lib/standard//kernel.nit:232 */
646 REGB2
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
647 /* ./../lib/standard//collection//array.nit:132 */
648 if (UNTAG_Bool(REGB2
)) {
649 /* ./../lib/standard//collection//array.nit:133 */
650 fra
.me
.REG
[1] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
651 /* ./../lib/standard//collection//array.nit:134 */
652 REGB2
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
653 if (UNTAG_Bool(REGB2
)) {
655 REGB3
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
656 if (UNTAG_Bool(REGB3
)) {
657 REGB3
= TAG_Bool(false);
660 REGB3
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[1])(fra
.me
.REG
[1], NIT_NULL
);
664 REGB2
= TAG_Bool(!UNTAG_Bool(REGB2
));
665 if (UNTAG_Bool(REGB2
)) {
666 REGB2
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
667 if (UNTAG_Bool(REGB2
)) {
668 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 134);
670 CALL_standard___kernel___Object___output(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
672 /* ./../lib/standard//collection//array.nit:135 */
674 /* ./../lib/standard//kernel.nit:235 */
675 REGB2
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB2
));
676 /* ./../lib/standard//collection//array.nit:135 */
679 /* ./../lib/standard//collection//array.nit:132 */
684 stack_frame_head
= fra
.me
.prev
;
687 val_t
standard___collection___array___AbstractArrayRead___iterator(val_t p0
){
688 struct {struct stack_frame_t me
;} fra
;
690 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
691 fra
.me
.file
= LOCATE_standard___collection___array
;
693 fra
.me
.meth
= LOCATE_standard___collection___array___AbstractArrayRead___iterator
;
694 fra
.me
.has_broke
= 0;
696 fra
.me
.REG
[0] = NIT_NULL
;
698 /* ./../lib/standard//collection//array.nit:139 */
699 fra
.me
.REG
[0] = NEW_ArrayIterator_standard___collection___array___ArrayIterator___init(fra
.me
.REG
[0]);
702 stack_frame_head
= fra
.me
.prev
;
703 return fra
.me
.REG
[0];
705 val_t
standard___collection___array___AbstractArrayRead_____eqeq(val_t p0
, val_t p1
){
706 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
713 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
714 fra
.me
.file
= LOCATE_standard___collection___array
;
716 fra
.me
.meth
= LOCATE_standard___collection___array___AbstractArrayRead_____eqeq
;
717 fra
.me
.has_broke
= 0;
719 fra
.me
.REG
[0] = NIT_NULL
;
720 fra
.me
.REG
[1] = NIT_NULL
;
721 fra
.me
.REG
[2] = NIT_NULL
;
722 fra
.me
.REG
[3] = NIT_NULL
;
725 /* ./../lib/standard//collection//array.nit:144 */
726 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[E]*/;
727 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
728 if (UNTAG_Bool(REGB0
)) {
729 REGB0
= TAG_Bool(true);
731 REGB1
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
734 if (UNTAG_Bool(REGB0
)) {
735 REGB0
= TAG_Bool(false);
738 /* ./../lib/standard//collection//array.nit:24 */
739 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
740 if (UNTAG_Bool(REGB1
)) {
742 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
744 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
745 /* ./../lib/standard//collection//array.nit:146 */
746 REGB2
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
747 if (UNTAG_Bool(REGB2
)) {
748 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 146);
750 /* ./../lib/standard//collection//array.nit:24 */
751 REGB2
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[1])!=NIT_NULL
);
752 if (UNTAG_Bool(REGB2
)) {
754 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
756 REGB2
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[1]);
757 /* ./../lib/standard//collection//array.nit:146 */
758 REGB3
= TAG_Bool(IS_EQUAL_OO(REGB2
,REGB1
));
759 if (UNTAG_Bool(REGB3
)) {
761 /* ./../lib/standard//kernel.nit:227 */
762 REGB2
= TAG_Bool((REGB2
)==(REGB1
));
763 /* ./../lib/standard//collection//array.nit:146 */
766 REGB3
= TAG_Bool(!UNTAG_Bool(REGB3
));
767 if (UNTAG_Bool(REGB3
)) {
768 REGB3
= TAG_Bool(false);
772 /* ./../lib/standard//collection//array.nit:147 */
774 /* ./../lib/standard//collection//array.nit:148 */
776 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB3
), VTID_standard___kernel___Comparable___OTHER(REGB3
))) /*cast OTHER*/;
777 if (UNTAG_Bool(REGB2
)) {
779 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
781 /* ./../lib/standard//kernel.nit:232 */
782 REGB2
= TAG_Bool(UNTAG_Int(REGB3
)<UNTAG_Int(REGB1
));
783 /* ./../lib/standard//collection//array.nit:148 */
784 if (UNTAG_Bool(REGB2
)) {
785 /* ./../lib/standard//collection//array.nit:149 */
786 fra
.me
.REG
[2] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB3
);
787 REGB2
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
788 if (UNTAG_Bool(REGB2
)) {
789 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 149);
791 fra
.me
.REG
[3] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra
.me
.REG
[1])(fra
.me
.REG
[1], REGB3
);
792 REGB2
= TAG_Bool(IS_EQUAL_NN(fra
.me
.REG
[2],fra
.me
.REG
[3]));
793 if (UNTAG_Bool(REGB2
)) {
795 REGB4
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
796 if (UNTAG_Bool(REGB4
)) {
797 REGB4
= TAG_Bool(false);
800 REGB4
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
804 REGB2
= TAG_Bool(!UNTAG_Bool(REGB2
));
805 if (UNTAG_Bool(REGB2
)) {
806 REGB2
= TAG_Bool(false);
810 /* ./../lib/standard//collection//array.nit:150 */
812 /* ./../lib/standard//kernel.nit:235 */
813 REGB2
= TAG_Int(UNTAG_Int(REGB3
)+UNTAG_Int(REGB2
));
814 /* ./../lib/standard//collection//array.nit:150 */
817 /* ./../lib/standard//collection//array.nit:148 */
822 /* ./../lib/standard//collection//array.nit:152 */
823 REGB3
= TAG_Bool(true);
827 stack_frame_head
= fra
.me
.prev
;
830 void standard___collection___array___AbstractArrayRead___init(val_t p0
, int* init_table
){
831 int itpos0
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_standard___collection___array___AbstractArrayRead
].i
;
832 struct {struct stack_frame_t me
;} fra
;
834 if (init_table
[itpos0
]) return;
835 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
836 fra
.me
.file
= LOCATE_standard___collection___array
;
838 fra
.me
.meth
= LOCATE_standard___collection___array___AbstractArrayRead___init
;
839 fra
.me
.has_broke
= 0;
841 stack_frame_head
= fra
.me
.prev
;
842 init_table
[itpos0
] = 1;
845 void standard___collection___array___AbstractArray___enlarge(val_t p0
, val_t p1
){
846 struct {struct stack_frame_t me
;} fra
;
848 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
849 fra
.me
.file
= LOCATE_standard___collection___array
;
851 fra
.me
.meth
= LOCATE_standard___collection___array___AbstractArray___enlarge
;
852 fra
.me
.has_broke
= 0;
854 /* ./../lib/standard//collection//array.nit:161 */
855 nit_abort("Deferred method called", NULL
, LOCATE_standard___collection___array
, 161);
856 stack_frame_head
= fra
.me
.prev
;
859 void standard___collection___array___AbstractArray___push(val_t p0
, val_t p1
){
860 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
862 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
863 fra
.me
.file
= LOCATE_standard___collection___array
;
865 fra
.me
.meth
= LOCATE_standard___collection___array___AbstractArray___push
;
866 fra
.me
.has_broke
= 0;
868 fra
.me
.REG
[0] = NIT_NULL
;
869 fra
.me
.REG
[1] = NIT_NULL
;
872 /* ./../lib/standard//collection//array.nit:166 */
873 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
874 stack_frame_head
= fra
.me
.prev
;
877 val_t
standard___collection___array___AbstractArray___pop(val_t p0
){
878 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
882 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
883 fra
.me
.file
= LOCATE_standard___collection___array
;
885 fra
.me
.meth
= LOCATE_standard___collection___array___AbstractArray___pop
;
886 fra
.me
.has_broke
= 0;
888 fra
.me
.REG
[0] = NIT_NULL
;
889 fra
.me
.REG
[1] = NIT_NULL
;
891 /* ./../lib/standard//collection//array.nit:170 */
892 REGB0
= CALL_standard___collection___abstract_collection___Collection___is_empty(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
893 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
894 if (UNTAG_Bool(REGB0
)) {
896 nit_abort("Assert %s failed", "'not_empty'", LOCATE_standard___collection___array
, 170);
898 /* ./../lib/standard//collection//array.nit:171 */
899 fra
.me
.REG
[1] = CALL_standard___collection___abstract_collection___SequenceRead___last(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
900 /* ./../lib/standard//collection//array.nit:172 */
901 REGB0
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
903 /* ./../lib/standard//kernel.nit:237 */
904 REGB1
= TAG_Int(UNTAG_Int(REGB0
)-UNTAG_Int(REGB1
));
905 /* ./../lib/standard//collection//array.nit:172 */
906 ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]) = REGB1
;
907 /* ./../lib/standard//collection//array.nit:173 */
910 stack_frame_head
= fra
.me
.prev
;
911 return fra
.me
.REG
[1];
913 val_t
standard___collection___array___AbstractArray___shift(val_t p0
){
914 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
919 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
920 fra
.me
.file
= LOCATE_standard___collection___array
;
922 fra
.me
.meth
= LOCATE_standard___collection___array___AbstractArray___shift
;
923 fra
.me
.has_broke
= 0;
925 fra
.me
.REG
[0] = NIT_NULL
;
926 fra
.me
.REG
[1] = NIT_NULL
;
927 fra
.me
.REG
[2] = NIT_NULL
;
929 /* ./../lib/standard//collection//array.nit:178 */
930 REGB0
= CALL_standard___collection___abstract_collection___Collection___is_empty(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
931 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
932 if (UNTAG_Bool(REGB0
)) {
934 nit_abort("Assert %s failed", "'not_empty'", LOCATE_standard___collection___array
, 178);
936 /* ./../lib/standard//collection//array.nit:179 */
937 fra
.me
.REG
[1] = CALL_standard___collection___abstract_collection___Collection___first(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
938 /* ./../lib/standard//collection//array.nit:180 */
940 /* ./../lib/standard//collection//array.nit:24 */
941 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
942 if (UNTAG_Bool(REGB1
)) {
944 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
946 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
947 /* ./../lib/standard//collection//array.nit:182 */
949 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
950 if (UNTAG_Bool(REGB2
)) {
952 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
954 /* ./../lib/standard//kernel.nit:232 */
955 REGB2
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
956 /* ./../lib/standard//collection//array.nit:182 */
957 if (UNTAG_Bool(REGB2
)) {
958 /* ./../lib/standard//collection//array.nit:183 */
960 /* ./../lib/standard//kernel.nit:237 */
961 REGB2
= TAG_Int(UNTAG_Int(REGB0
)-UNTAG_Int(REGB2
));
962 /* ./../lib/standard//collection//array.nit:183 */
963 fra
.me
.REG
[2] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
964 CALL_standard___collection___abstract_collection___Sequence_____braeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB2
, fra
.me
.REG
[2]);
965 /* ./../lib/standard//collection//array.nit:184 */
967 /* ./../lib/standard//kernel.nit:235 */
968 REGB2
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB2
));
969 /* ./../lib/standard//collection//array.nit:184 */
972 /* ./../lib/standard//collection//array.nit:182 */
977 /* ./../lib/standard//collection//array.nit:186 */
979 /* ./../lib/standard//kernel.nit:237 */
980 REGB0
= TAG_Int(UNTAG_Int(REGB1
)-UNTAG_Int(REGB0
));
981 /* ./../lib/standard//collection//array.nit:186 */
982 ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]) = REGB0
;
983 /* ./../lib/standard//collection//array.nit:187 */
986 stack_frame_head
= fra
.me
.prev
;
987 return fra
.me
.REG
[1];
989 void standard___collection___array___AbstractArray___unshift(val_t p0
, val_t p1
){
990 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
995 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
996 fra
.me
.file
= LOCATE_standard___collection___array
;
998 fra
.me
.meth
= LOCATE_standard___collection___array___AbstractArray___unshift
;
999 fra
.me
.has_broke
= 0;
1000 fra
.me
.REG_size
= 3;
1001 fra
.me
.REG
[0] = NIT_NULL
;
1002 fra
.me
.REG
[1] = NIT_NULL
;
1003 fra
.me
.REG
[2] = NIT_NULL
;
1006 /* ./../lib/standard//collection//array.nit:24 */
1007 REGB0
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
1008 if (UNTAG_Bool(REGB0
)) {
1010 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
1012 REGB0
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
1013 /* ./../lib/standard//collection//array.nit:192 */
1015 /* ./../lib/standard//kernel.nit:237 */
1016 REGB1
= TAG_Int(UNTAG_Int(REGB0
)-UNTAG_Int(REGB1
));
1017 /* ./../lib/standard//collection//array.nit:193 */
1020 REGB2
= TAG_Bool(VAL_ISA(REGB0
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1
), VTID_standard___kernel___Comparable___OTHER(REGB1
))) /*cast OTHER*/;
1021 if (UNTAG_Bool(REGB2
)) {
1023 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1025 /* ./../lib/standard//kernel.nit:234 */
1026 REGB0
= TAG_Bool(UNTAG_Int(REGB1
)>UNTAG_Int(REGB0
));
1027 /* ./../lib/standard//collection//array.nit:193 */
1028 if (UNTAG_Bool(REGB0
)) {
1029 /* ./../lib/standard//collection//array.nit:194 */
1031 /* ./../lib/standard//kernel.nit:235 */
1032 REGB0
= TAG_Int(UNTAG_Int(REGB1
)+UNTAG_Int(REGB0
));
1033 /* ./../lib/standard//collection//array.nit:194 */
1034 fra
.me
.REG
[2] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB1
);
1035 CALL_standard___collection___abstract_collection___Sequence_____braeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
, fra
.me
.REG
[2]);
1036 /* ./../lib/standard//collection//array.nit:195 */
1038 /* ./../lib/standard//kernel.nit:237 */
1039 REGB0
= TAG_Int(UNTAG_Int(REGB1
)-UNTAG_Int(REGB0
));
1040 /* ./../lib/standard//collection//array.nit:195 */
1043 /* ./../lib/standard//collection//array.nit:193 */
1048 /* ./../lib/standard//collection//array.nit:197 */
1050 CALL_standard___collection___abstract_collection___Sequence_____braeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB1
, fra
.me
.REG
[1]);
1051 stack_frame_head
= fra
.me
.prev
;
1054 void standard___collection___array___AbstractArray___insert(val_t p0
, val_t p1
, val_t p2
){
1055 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1060 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1061 fra
.me
.file
= LOCATE_standard___collection___array
;
1063 fra
.me
.meth
= LOCATE_standard___collection___array___AbstractArray___insert
;
1064 fra
.me
.has_broke
= 0;
1065 fra
.me
.REG_size
= 2;
1066 fra
.me
.REG
[0] = NIT_NULL
;
1067 fra
.me
.REG
[1] = NIT_NULL
;
1071 /* ./../lib/standard//collection//array.nit:24 */
1072 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
1073 if (UNTAG_Bool(REGB1
)) {
1075 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
1077 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
1078 /* ./../lib/standard//collection//array.nit:207 */
1080 /* ./../lib/standard//kernel.nit:235 */
1081 REGB2
= TAG_Int(UNTAG_Int(REGB1
)+UNTAG_Int(REGB2
));
1082 /* ./../lib/standard//collection//array.nit:207 */
1083 CALL_standard___collection___array___AbstractArray___enlarge(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB2
);
1084 /* ./../lib/standard//collection//array.nit:24 */
1085 REGB2
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
1086 if (UNTAG_Bool(REGB2
)) {
1088 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
1090 REGB2
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
1091 /* ./../lib/standard//kernel.nit:237 */
1092 REGB2
= TAG_Int(UNTAG_Int(REGB2
)-UNTAG_Int(REGB0
));
1093 /* ./../lib/standard//collection//array.nit:208 */
1095 /* ./../lib/standard//kernel.nit:235 */
1096 REGB1
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
1097 /* ./../lib/standard//collection//array.nit:208 */
1098 CALL_standard___collection___array___AbstractArrayRead___copy_to(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
, REGB2
, fra
.me
.REG
[0], REGB1
);
1099 /* ./../lib/standard//collection//array.nit:209 */
1100 CALL_standard___collection___abstract_collection___Sequence_____braeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
, fra
.me
.REG
[1]);
1101 stack_frame_head
= fra
.me
.prev
;
1104 void standard___collection___array___AbstractArray___add(val_t p0
, val_t p1
){
1105 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1108 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1109 fra
.me
.file
= LOCATE_standard___collection___array
;
1111 fra
.me
.meth
= LOCATE_standard___collection___array___AbstractArray___add
;
1112 fra
.me
.has_broke
= 0;
1113 fra
.me
.REG_size
= 2;
1114 fra
.me
.REG
[0] = NIT_NULL
;
1115 fra
.me
.REG
[1] = NIT_NULL
;
1118 /* ./../lib/standard//collection//array.nit:24 */
1119 REGB0
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
1120 if (UNTAG_Bool(REGB0
)) {
1122 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
1124 REGB0
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
1125 /* ./../lib/standard//collection//array.nit:212 */
1126 CALL_standard___collection___abstract_collection___Sequence_____braeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
, fra
.me
.REG
[1]);
1127 stack_frame_head
= fra
.me
.prev
;
1130 void standard___collection___array___AbstractArray___clear(val_t p0
){
1131 struct {struct stack_frame_t me
;} fra
;
1134 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1135 fra
.me
.file
= LOCATE_standard___collection___array
;
1137 fra
.me
.meth
= LOCATE_standard___collection___array___AbstractArray___clear
;
1138 fra
.me
.has_broke
= 0;
1139 fra
.me
.REG_size
= 1;
1140 fra
.me
.REG
[0] = NIT_NULL
;
1142 /* ./../lib/standard//collection//array.nit:214 */
1144 ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]) = REGB0
;
1145 stack_frame_head
= fra
.me
.prev
;
1148 void standard___collection___array___AbstractArray___remove(val_t p0
, val_t p1
){
1149 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1152 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1153 fra
.me
.file
= LOCATE_standard___collection___array
;
1155 fra
.me
.meth
= LOCATE_standard___collection___array___AbstractArray___remove
;
1156 fra
.me
.has_broke
= 0;
1157 fra
.me
.REG_size
= 2;
1158 fra
.me
.REG
[0] = NIT_NULL
;
1159 fra
.me
.REG
[1] = NIT_NULL
;
1162 /* ./../lib/standard//collection//array.nit:216 */
1163 REGB0
= CALL_standard___collection___abstract_collection___SequenceRead___index_of(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
1164 CALL_standard___collection___abstract_collection___Sequence___remove_at(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
1165 stack_frame_head
= fra
.me
.prev
;
1168 void standard___collection___array___AbstractArray___remove_all(val_t p0
, val_t p1
){
1169 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1174 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1175 fra
.me
.file
= LOCATE_standard___collection___array
;
1177 fra
.me
.meth
= LOCATE_standard___collection___array___AbstractArray___remove_all
;
1178 fra
.me
.has_broke
= 0;
1179 fra
.me
.REG_size
= 2;
1180 fra
.me
.REG
[0] = NIT_NULL
;
1181 fra
.me
.REG
[1] = NIT_NULL
;
1184 /* ./../lib/standard//collection//array.nit:220 */
1185 REGB0
= CALL_standard___collection___abstract_collection___SequenceRead___index_of(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
1186 /* ./../lib/standard//collection//array.nit:221 */
1189 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
1190 if (UNTAG_Bool(REGB2
)) {
1192 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1194 /* ./../lib/standard//kernel.nit:233 */
1195 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB1
));
1196 /* ./../lib/standard//collection//array.nit:221 */
1197 if (UNTAG_Bool(REGB1
)) {
1198 /* ./../lib/standard//collection//array.nit:222 */
1199 CALL_standard___collection___abstract_collection___Sequence___remove_at(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
1200 /* ./../lib/standard//collection//array.nit:223 */
1201 REGB1
= CALL_standard___collection___array___AbstractArrayRead___index_of_from(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], REGB0
);
1204 /* ./../lib/standard//collection//array.nit:221 */
1209 stack_frame_head
= fra
.me
.prev
;
1212 void standard___collection___array___AbstractArray___remove_at(val_t p0
, val_t p1
){
1213 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1219 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1220 fra
.me
.file
= LOCATE_standard___collection___array
;
1222 fra
.me
.meth
= LOCATE_standard___collection___array___AbstractArray___remove_at
;
1223 fra
.me
.has_broke
= 0;
1224 fra
.me
.REG_size
= 2;
1225 fra
.me
.REG
[0] = NIT_NULL
;
1226 fra
.me
.REG
[1] = NIT_NULL
;
1229 /* ./../lib/standard//collection//array.nit:24 */
1230 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
1231 if (UNTAG_Bool(REGB1
)) {
1233 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
1235 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
1236 /* ./../lib/standard//collection//array.nit:230 */
1238 REGB3
= TAG_Bool(VAL_ISA(REGB2
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
1239 if (UNTAG_Bool(REGB3
)) {
1241 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1243 /* ./../lib/standard//kernel.nit:233 */
1244 REGB2
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB2
));
1245 /* ./../lib/standard//collection//array.nit:230 */
1246 if (UNTAG_Bool(REGB2
)) {
1247 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
1248 if (UNTAG_Bool(REGB2
)) {
1250 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1252 /* ./../lib/standard//kernel.nit:232 */
1253 REGB2
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
1255 /* ./../lib/standard//collection//array.nit:230 */
1256 REGB3
= TAG_Bool(false);
1259 if (UNTAG_Bool(REGB2
)) {
1260 /* ./../lib/standard//collection//array.nit:231 */
1262 /* ./../lib/standard//kernel.nit:235 */
1263 REGB2
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB2
));
1264 /* ./../lib/standard//collection//array.nit:232 */
1266 REGB0
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB2
), VTID_standard___kernel___Comparable___OTHER(REGB2
))) /*cast OTHER*/;
1267 if (UNTAG_Bool(REGB0
)) {
1269 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1271 /* ./../lib/standard//kernel.nit:232 */
1272 REGB0
= TAG_Bool(UNTAG_Int(REGB2
)<UNTAG_Int(REGB1
));
1273 /* ./../lib/standard//collection//array.nit:232 */
1274 if (UNTAG_Bool(REGB0
)) {
1275 /* ./../lib/standard//collection//array.nit:233 */
1277 /* ./../lib/standard//kernel.nit:237 */
1278 REGB0
= TAG_Int(UNTAG_Int(REGB2
)-UNTAG_Int(REGB0
));
1279 /* ./../lib/standard//collection//array.nit:233 */
1280 fra
.me
.REG
[1] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB2
);
1281 CALL_standard___collection___abstract_collection___Sequence_____braeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
, fra
.me
.REG
[1]);
1282 /* ./../lib/standard//collection//array.nit:234 */
1284 /* ./../lib/standard//kernel.nit:235 */
1285 REGB0
= TAG_Int(UNTAG_Int(REGB2
)+UNTAG_Int(REGB0
));
1286 /* ./../lib/standard//collection//array.nit:234 */
1289 /* ./../lib/standard//collection//array.nit:232 */
1294 /* ./../lib/standard//collection//array.nit:236 */
1296 /* ./../lib/standard//kernel.nit:237 */
1297 REGB2
= TAG_Int(UNTAG_Int(REGB1
)-UNTAG_Int(REGB2
));
1298 /* ./../lib/standard//collection//array.nit:236 */
1299 ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]) = REGB2
;
1301 stack_frame_head
= fra
.me
.prev
;
1304 void standard___collection___array___AbstractArray___swap_at(val_t p0
, val_t p1
, val_t p2
){
1305 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1309 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1310 fra
.me
.file
= LOCATE_standard___collection___array
;
1312 fra
.me
.meth
= LOCATE_standard___collection___array___AbstractArray___swap_at
;
1313 fra
.me
.has_broke
= 0;
1314 fra
.me
.REG_size
= 2;
1315 fra
.me
.REG
[0] = NIT_NULL
;
1316 fra
.me
.REG
[1] = NIT_NULL
;
1320 /* ./../lib/standard//collection//array.nit:247 */
1321 fra
.me
.REG
[1] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
1322 /* ./../lib/standard//collection//array.nit:248 */
1323 CALL_standard___collection___abstract_collection___Sequence_____braeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
, REGB1
);
1324 /* ./../lib/standard//collection//array.nit:249 */
1325 CALL_standard___collection___abstract_collection___Sequence_____braeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB1
, fra
.me
.REG
[1]);
1326 stack_frame_head
= fra
.me
.prev
;
1329 void standard___collection___array___Array___iterate(val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
){
1330 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
1336 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1337 fra
.me
.file
= LOCATE_standard___collection___array
;
1339 fra
.me
.meth
= LOCATE_standard___collection___array___Array___iterate
;
1340 fra
.me
.has_broke
= 0;
1341 fra
.me
.REG_size
= 3;
1342 fra
.me
.REG
[0] = NIT_NULL
;
1343 fra
.me
.REG
[1] = NIT_NULL
;
1344 fra
.me
.REG
[2] = NIT_NULL
;
1345 fra
.me
.closure_ctx
= closctx_param
;
1346 fra
.me
.closure_funs
= CREG
;
1348 CREG
[0] = clos_fun0
;
1349 /* ./../lib/standard//collection//array.nit:269 */
1351 /* ./../lib/standard//collection//array.nit:270 */
1352 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
1353 if (UNTAG_Bool(REGB1
)) {
1355 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 270);
1357 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
1358 /* ./../lib/standard//collection//array.nit:271 */
1359 fra
.me
.REG
[1] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[0]);
1360 /* ./../lib/standard//collection//array.nit:272 */
1362 /* ./../lib/standard//collection//array.nit:24 */
1363 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
1364 if (UNTAG_Bool(REGB1
)) {
1366 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
1368 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
1369 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
1370 if (UNTAG_Bool(REGB2
)) {
1372 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1374 /* ./../lib/standard//kernel.nit:232 */
1375 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
1376 /* ./../lib/standard//collection//array.nit:272 */
1377 if (UNTAG_Bool(REGB1
)) {
1378 /* ./../lib/standard//collection//array.nit:273 */
1379 REGB1
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
1380 if (UNTAG_Bool(REGB1
)) {
1381 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 273);
1383 /* ./../lib/standard//collection//array.nit:718 */
1384 fra
.me
.REG
[2] = ((Nit_NativeArray
)fra
.me
.REG
[1])->val
[UNTAG_Int(REGB0
)];
1385 /* ./../lib/standard//collection//array.nit:273 */
1386 ((void (*)(struct stack_frame_t
*, val_t
))(CREG
[0]))(closctx_param
, fra
.me
.REG
[2]);
1387 if (closctx_param
->has_broke
) {
1390 /* ./../lib/standard//collection//array.nit:274 */
1392 /* ./../lib/standard//kernel.nit:235 */
1393 REGB1
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
1394 /* ./../lib/standard//collection//array.nit:274 */
1397 /* ./../lib/standard//collection//array.nit:272 */
1403 stack_frame_head
= fra
.me
.prev
;
1406 val_t
standard___collection___array___Array_____bra(val_t p0
, val_t p1
){
1407 struct {struct stack_frame_t me
;} fra
;
1412 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1413 fra
.me
.file
= LOCATE_standard___collection___array
;
1415 fra
.me
.meth
= LOCATE_standard___collection___array___Array_____bra
;
1416 fra
.me
.has_broke
= 0;
1417 fra
.me
.REG_size
= 1;
1418 fra
.me
.REG
[0] = NIT_NULL
;
1421 /* ./../lib/standard//collection//array.nit:280 */
1423 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
1424 if (UNTAG_Bool(REGB2
)) {
1426 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1428 /* ./../lib/standard//kernel.nit:233 */
1429 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB1
));
1430 /* ./../lib/standard//collection//array.nit:280 */
1431 if (UNTAG_Bool(REGB1
)) {
1432 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
1433 if (UNTAG_Bool(REGB1
)) {
1435 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 280);
1437 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
1438 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
1439 if (UNTAG_Bool(REGB2
)) {
1441 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1443 /* ./../lib/standard//kernel.nit:232 */
1444 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
1446 /* ./../lib/standard//collection//array.nit:280 */
1447 REGB2
= TAG_Bool(false);
1450 if (UNTAG_Bool(REGB1
)) {
1452 nit_abort("Assert %s failed", "'index'", LOCATE_standard___collection___array
, 280);
1454 /* ./../lib/standard//collection//array.nit:281 */
1455 fra
.me
.REG
[0] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[0]);
1456 REGB1
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
1457 if (UNTAG_Bool(REGB1
)) {
1458 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 281);
1460 /* ./../lib/standard//collection//array.nit:718 */
1461 fra
.me
.REG
[0] = ((Nit_NativeArray
)fra
.me
.REG
[0])->val
[UNTAG_Int(REGB0
)];
1462 /* ./../lib/standard//collection//array.nit:281 */
1465 stack_frame_head
= fra
.me
.prev
;
1466 return fra
.me
.REG
[0];
1468 void standard___collection___array___Array_____braeq(val_t p0
, val_t p1
, val_t p2
){
1469 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1474 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1475 fra
.me
.file
= LOCATE_standard___collection___array
;
1477 fra
.me
.meth
= LOCATE_standard___collection___array___Array_____braeq
;
1478 fra
.me
.has_broke
= 0;
1479 fra
.me
.REG_size
= 2;
1480 fra
.me
.REG
[0] = NIT_NULL
;
1481 fra
.me
.REG
[1] = NIT_NULL
;
1485 /* ./../lib/standard//collection//array.nit:286 */
1487 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
1488 if (UNTAG_Bool(REGB2
)) {
1490 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1492 /* ./../lib/standard//kernel.nit:233 */
1493 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB1
));
1494 /* ./../lib/standard//collection//array.nit:286 */
1495 if (UNTAG_Bool(REGB1
)) {
1496 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
1497 if (UNTAG_Bool(REGB1
)) {
1499 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 286);
1501 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
1503 /* ./../lib/standard//kernel.nit:235 */
1504 REGB2
= TAG_Int(UNTAG_Int(REGB1
)+UNTAG_Int(REGB2
));
1505 REGB1
= TAG_Bool(VAL_ISA(REGB2
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
1506 if (UNTAG_Bool(REGB1
)) {
1508 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1510 /* ./../lib/standard//kernel.nit:232 */
1511 REGB2
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB2
));
1513 /* ./../lib/standard//collection//array.nit:286 */
1514 REGB1
= TAG_Bool(false);
1517 if (UNTAG_Bool(REGB2
)) {
1519 nit_abort("Assert %s failed", "'index'", LOCATE_standard___collection___array
, 286);
1521 /* ./../lib/standard//collection//array.nit:287 */
1522 REGB2
= TAG_Bool(ATTR_standard___collection___array___Array____capacity(fra
.me
.REG
[0])!=NIT_NULL
);
1523 if (UNTAG_Bool(REGB2
)) {
1525 nit_abort("Uninitialized attribute %s", "_capacity", LOCATE_standard___collection___array
, 287);
1527 REGB2
= ATTR_standard___collection___array___Array____capacity(fra
.me
.REG
[0]);
1528 REGB1
= TAG_Bool(VAL_ISA(REGB0
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB2
), VTID_standard___kernel___Comparable___OTHER(REGB2
))) /*cast OTHER*/;
1529 if (UNTAG_Bool(REGB1
)) {
1531 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1533 /* ./../lib/standard//kernel.nit:231 */
1534 REGB2
= TAG_Bool(UNTAG_Int(REGB2
)<=UNTAG_Int(REGB0
));
1535 /* ./../lib/standard//collection//array.nit:287 */
1536 if (UNTAG_Bool(REGB2
)) {
1537 /* ./../lib/standard//collection//array.nit:288 */
1539 /* ./../lib/standard//kernel.nit:235 */
1540 REGB2
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB2
));
1541 /* ./../lib/standard//collection//array.nit:288 */
1542 CALL_standard___collection___array___AbstractArray___enlarge(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB2
);
1544 /* ./../lib/standard//collection//array.nit:290 */
1545 REGB2
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
1546 if (UNTAG_Bool(REGB2
)) {
1548 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 290);
1550 REGB2
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
1551 REGB1
= TAG_Bool(VAL_ISA(REGB0
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB2
), VTID_standard___kernel___Comparable___OTHER(REGB2
))) /*cast OTHER*/;
1552 if (UNTAG_Bool(REGB1
)) {
1554 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1556 /* ./../lib/standard//kernel.nit:231 */
1557 REGB2
= TAG_Bool(UNTAG_Int(REGB2
)<=UNTAG_Int(REGB0
));
1558 /* ./../lib/standard//collection//array.nit:290 */
1559 if (UNTAG_Bool(REGB2
)) {
1560 /* ./../lib/standard//collection//array.nit:291 */
1562 /* ./../lib/standard//kernel.nit:235 */
1563 REGB2
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB2
));
1564 /* ./../lib/standard//collection//array.nit:291 */
1565 ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]) = REGB2
;
1567 /* ./../lib/standard//collection//array.nit:293 */
1568 fra
.me
.REG
[0] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[0]);
1569 REGB2
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
1570 if (UNTAG_Bool(REGB2
)) {
1571 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 293);
1573 /* ./../lib/standard//collection//array.nit:719 */
1574 ((Nit_NativeArray
)fra
.me
.REG
[0])->val
[UNTAG_Int(REGB0
)]=fra
.me
.REG
[1];
1575 stack_frame_head
= fra
.me
.prev
;
1578 void standard___collection___array___Array___add(val_t p0
, val_t p1
){
1579 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1584 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1585 fra
.me
.file
= LOCATE_standard___collection___array
;
1587 fra
.me
.meth
= LOCATE_standard___collection___array___Array___add
;
1588 fra
.me
.has_broke
= 0;
1589 fra
.me
.REG_size
= 2;
1590 fra
.me
.REG
[0] = NIT_NULL
;
1591 fra
.me
.REG
[1] = NIT_NULL
;
1594 /* ./../lib/standard//collection//array.nit:298 */
1595 REGB0
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
1596 if (UNTAG_Bool(REGB0
)) {
1598 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 298);
1600 REGB0
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
1601 /* ./../lib/standard//collection//array.nit:299 */
1602 REGB1
= TAG_Bool(ATTR_standard___collection___array___Array____capacity(fra
.me
.REG
[0])!=NIT_NULL
);
1603 if (UNTAG_Bool(REGB1
)) {
1605 nit_abort("Uninitialized attribute %s", "_capacity", LOCATE_standard___collection___array
, 299);
1607 REGB1
= ATTR_standard___collection___array___Array____capacity(fra
.me
.REG
[0]);
1608 REGB2
= TAG_Bool(VAL_ISA(REGB0
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1
), VTID_standard___kernel___Comparable___OTHER(REGB1
))) /*cast OTHER*/;
1609 if (UNTAG_Bool(REGB2
)) {
1611 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1613 /* ./../lib/standard//kernel.nit:231 */
1614 REGB1
= TAG_Bool(UNTAG_Int(REGB1
)<=UNTAG_Int(REGB0
));
1615 /* ./../lib/standard//collection//array.nit:299 */
1616 if (UNTAG_Bool(REGB1
)) {
1617 /* ./../lib/standard//collection//array.nit:300 */
1619 /* ./../lib/standard//kernel.nit:235 */
1620 REGB1
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
1621 /* ./../lib/standard//collection//array.nit:300 */
1622 CALL_standard___collection___array___AbstractArray___enlarge(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB1
);
1624 /* ./../lib/standard//collection//array.nit:302 */
1626 /* ./../lib/standard//kernel.nit:235 */
1627 REGB1
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
1628 /* ./../lib/standard//collection//array.nit:302 */
1629 ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]) = REGB1
;
1630 /* ./../lib/standard//collection//array.nit:303 */
1631 fra
.me
.REG
[0] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[0]);
1632 REGB1
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
1633 if (UNTAG_Bool(REGB1
)) {
1634 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 303);
1636 /* ./../lib/standard//collection//array.nit:719 */
1637 ((Nit_NativeArray
)fra
.me
.REG
[0])->val
[UNTAG_Int(REGB0
)]=fra
.me
.REG
[1];
1638 stack_frame_head
= fra
.me
.prev
;
1641 void standard___collection___array___Array___enlarge(val_t p0
, val_t p1
){
1642 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
1648 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1649 fra
.me
.file
= LOCATE_standard___collection___array
;
1651 fra
.me
.meth
= LOCATE_standard___collection___array___Array___enlarge
;
1652 fra
.me
.has_broke
= 0;
1653 fra
.me
.REG_size
= 3;
1654 fra
.me
.REG
[0] = NIT_NULL
;
1655 fra
.me
.REG
[1] = NIT_NULL
;
1656 fra
.me
.REG
[2] = NIT_NULL
;
1659 /* ./../lib/standard//collection//array.nit:308 */
1660 REGB1
= TAG_Bool(ATTR_standard___collection___array___Array____capacity(fra
.me
.REG
[0])!=NIT_NULL
);
1661 if (UNTAG_Bool(REGB1
)) {
1663 nit_abort("Uninitialized attribute %s", "_capacity", LOCATE_standard___collection___array
, 308);
1665 REGB1
= ATTR_standard___collection___array___Array____capacity(fra
.me
.REG
[0]);
1666 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
1667 if (UNTAG_Bool(REGB2
)) {
1669 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1671 /* ./../lib/standard//kernel.nit:231 */
1672 REGB2
= TAG_Bool(UNTAG_Int(REGB0
)<=UNTAG_Int(REGB1
));
1673 /* ./../lib/standard//collection//array.nit:309 */
1674 if (UNTAG_Bool(REGB2
)) {
1677 /* ./../lib/standard//collection//array.nit:310 */
1679 REGB2
= TAG_Bool(VAL_ISA(REGB0
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1
), VTID_standard___kernel___Comparable___OTHER(REGB1
))) /*cast OTHER*/;
1680 if (UNTAG_Bool(REGB2
)) {
1682 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1684 /* ./../lib/standard//kernel.nit:231 */
1685 REGB2
= TAG_Bool(UNTAG_Int(REGB1
)<=UNTAG_Int(REGB0
));
1686 /* ./../lib/standard//collection//array.nit:310 */
1687 if (UNTAG_Bool(REGB2
)) {
1689 /* ./../lib/standard//kernel.nit:238 */
1690 REGB2
= TAG_Int(UNTAG_Int(REGB1
)*UNTAG_Int(REGB2
));
1691 /* ./../lib/standard//collection//array.nit:310 */
1693 /* ./../lib/standard//kernel.nit:235 */
1694 REGB3
= TAG_Int(UNTAG_Int(REGB2
)+UNTAG_Int(REGB3
));
1695 /* ./../lib/standard//collection//array.nit:310 */
1702 /* ./../lib/standard//collection//array.nit:712 */
1703 fra
.me
.REG
[1] = NEW_NativeArray(UNTAG_Int(REGB1
), sizeof(val_t
));
1704 /* ./../lib/standard//collection//array.nit:312 */
1705 REGB0
= TAG_Bool(ATTR_standard___collection___array___Array____capacity(fra
.me
.REG
[0])!=NIT_NULL
);
1706 if (UNTAG_Bool(REGB0
)) {
1708 nit_abort("Uninitialized attribute %s", "_capacity", LOCATE_standard___collection___array
, 312);
1710 REGB0
= ATTR_standard___collection___array___Array____capacity(fra
.me
.REG
[0]);
1712 REGB2
= TAG_Bool(VAL_ISA(REGB3
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
1713 if (UNTAG_Bool(REGB2
)) {
1715 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1717 /* ./../lib/standard//kernel.nit:234 */
1718 REGB3
= TAG_Bool(UNTAG_Int(REGB0
)>UNTAG_Int(REGB3
));
1719 /* ./../lib/standard//collection//array.nit:312 */
1720 if (UNTAG_Bool(REGB3
)) {
1721 fra
.me
.REG
[2] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[0]);
1722 REGB3
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
1723 if (UNTAG_Bool(REGB3
)) {
1725 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 312);
1727 REGB3
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
1728 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
1729 if (UNTAG_Bool(REGB0
)) {
1730 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 312);
1732 /* ./../lib/standard//collection//array.nit:720 */
1733 (void)memcpy(((Nit_NativeArray
)fra
.me
.REG
[1])->val
, ((Nit_NativeArray
)fra
.me
.REG
[2])->val
, UNTAG_Int(REGB3
)*sizeof(val_t
));
1735 /* ./../lib/standard//collection//array.nit:313 */
1736 ATTR_standard___collection___array___Array____items(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
1737 /* ./../lib/standard//collection//array.nit:314 */
1738 ATTR_standard___collection___array___Array____capacity(fra
.me
.REG
[0]) = REGB1
;
1740 stack_frame_head
= fra
.me
.prev
;
1743 void standard___collection___array___Array___init(val_t p0
, int* init_table
){
1744 int itpos1
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_standard___collection___array___Array
].i
;
1745 struct {struct stack_frame_t me
;} fra
;
1748 if (init_table
[itpos1
]) return;
1749 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1750 fra
.me
.file
= LOCATE_standard___collection___array
;
1752 fra
.me
.meth
= LOCATE_standard___collection___array___Array___init
;
1753 fra
.me
.has_broke
= 0;
1754 fra
.me
.REG_size
= 1;
1755 fra
.me
.REG
[0] = NIT_NULL
;
1757 /* ./../lib/standard//collection//array.nit:320 */
1759 ATTR_standard___collection___array___Array____capacity(fra
.me
.REG
[0]) = REGB0
;
1760 /* ./../lib/standard//collection//array.nit:321 */
1762 ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]) = REGB0
;
1763 stack_frame_head
= fra
.me
.prev
;
1764 init_table
[itpos1
] = 1;
1767 void standard___collection___array___Array___with_items(val_t p0
, val_t p1
, int* init_table
){
1768 int itpos2
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_standard___collection___array___Array
].i
;
1769 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
1772 if (init_table
[itpos2
]) return;
1773 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1774 fra
.me
.file
= LOCATE_standard___collection___array
;
1776 fra
.me
.meth
= LOCATE_standard___collection___array___Array___with_items
;
1777 fra
.me
.has_broke
= 0;
1778 fra
.me
.REG_size
= 3;
1779 fra
.me
.REG
[0] = NIT_NULL
;
1780 fra
.me
.REG
[1] = NIT_NULL
;
1781 fra
.me
.REG
[2] = NIT_NULL
;
1784 /* ./../lib/standard//collection//array.nit:324 */
1785 fra
.me
.REG
[2] = fra
.me
.REG
[0];
1786 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]*/;
1787 if (UNTAG_Bool(REGB0
)) {
1789 nit_abort("Cast failed", NULL
, LOCATE_standard___collection___array
, 324);
1791 /* ./../lib/standard//collection//array.nit:327 */
1792 fra
.me
.REG
[0] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[1]);
1793 ATTR_standard___collection___array___Array____items(fra
.me
.REG
[2]) = fra
.me
.REG
[0];
1794 /* ./../lib/standard//collection//array.nit:328 */
1795 REGB0
= TAG_Bool(ATTR_standard___collection___array___Array____capacity(fra
.me
.REG
[1])!=NIT_NULL
);
1796 if (UNTAG_Bool(REGB0
)) {
1798 nit_abort("Uninitialized attribute %s", "_capacity", LOCATE_standard___collection___array
, 328);
1800 REGB0
= ATTR_standard___collection___array___Array____capacity(fra
.me
.REG
[1]);
1801 ATTR_standard___collection___array___Array____capacity(fra
.me
.REG
[2]) = REGB0
;
1802 /* ./../lib/standard//collection//array.nit:24 */
1803 REGB0
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[1])!=NIT_NULL
);
1804 if (UNTAG_Bool(REGB0
)) {
1806 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
1808 REGB0
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[1]);
1809 /* ./../lib/standard//collection//array.nit:329 */
1810 ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2]) = REGB0
;
1811 stack_frame_head
= fra
.me
.prev
;
1812 init_table
[itpos2
] = 1;
1815 void standard___collection___array___Array___with_capacity(val_t p0
, val_t p1
, int* init_table
){
1816 int itpos3
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_standard___collection___array___Array
].i
;
1817 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1822 if (init_table
[itpos3
]) return;
1823 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1824 fra
.me
.file
= LOCATE_standard___collection___array
;
1826 fra
.me
.meth
= LOCATE_standard___collection___array___Array___with_capacity
;
1827 fra
.me
.has_broke
= 0;
1828 fra
.me
.REG_size
= 2;
1829 fra
.me
.REG
[0] = NIT_NULL
;
1830 fra
.me
.REG
[1] = NIT_NULL
;
1833 /* ./../lib/standard//collection//array.nit:335 */
1835 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
1836 if (UNTAG_Bool(REGB2
)) {
1838 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1840 /* ./../lib/standard//kernel.nit:233 */
1841 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB1
));
1842 /* ./../lib/standard//collection//array.nit:335 */
1843 if (UNTAG_Bool(REGB1
)) {
1845 nit_abort("Assert %s failed", "'positive'", LOCATE_standard___collection___array
, 335);
1847 /* ./../lib/standard//collection//array.nit:712 */
1848 fra
.me
.REG
[1] = NEW_NativeArray(UNTAG_Int(REGB0
), sizeof(val_t
));
1849 /* ./../lib/standard//collection//array.nit:336 */
1850 ATTR_standard___collection___array___Array____items(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
1851 /* ./../lib/standard//collection//array.nit:337 */
1852 ATTR_standard___collection___array___Array____capacity(fra
.me
.REG
[0]) = REGB0
;
1853 /* ./../lib/standard//collection//array.nit:338 */
1855 ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]) = REGB0
;
1856 stack_frame_head
= fra
.me
.prev
;
1857 init_table
[itpos3
] = 1;
1860 void standard___collection___array___Array___filled_with(val_t p0
, val_t p1
, val_t p2
, int* init_table
){
1861 int itpos4
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_standard___collection___array___Array
].i
;
1862 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
1867 if (init_table
[itpos4
]) return;
1868 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1869 fra
.me
.file
= LOCATE_standard___collection___array
;
1871 fra
.me
.meth
= LOCATE_standard___collection___array___Array___filled_with
;
1872 fra
.me
.has_broke
= 0;
1873 fra
.me
.REG_size
= 3;
1874 fra
.me
.REG
[0] = NIT_NULL
;
1875 fra
.me
.REG
[1] = NIT_NULL
;
1876 fra
.me
.REG
[2] = NIT_NULL
;
1880 /* ./../lib/standard//collection//array.nit:344 */
1882 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
1883 if (UNTAG_Bool(REGB2
)) {
1885 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1887 /* ./../lib/standard//kernel.nit:233 */
1888 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB1
));
1889 /* ./../lib/standard//collection//array.nit:344 */
1890 if (UNTAG_Bool(REGB1
)) {
1892 nit_abort("Assert %s failed", "'positive'", LOCATE_standard___collection___array
, 344);
1894 /* ./../lib/standard//collection//array.nit:712 */
1895 fra
.me
.REG
[2] = NEW_NativeArray(UNTAG_Int(REGB0
), sizeof(val_t
));
1896 /* ./../lib/standard//collection//array.nit:345 */
1897 ATTR_standard___collection___array___Array____items(fra
.me
.REG
[0]) = fra
.me
.REG
[2];
1898 /* ./../lib/standard//collection//array.nit:346 */
1899 ATTR_standard___collection___array___Array____capacity(fra
.me
.REG
[0]) = REGB0
;
1900 /* ./../lib/standard//collection//array.nit:347 */
1901 ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]) = REGB0
;
1902 /* ./../lib/standard//collection//array.nit:348 */
1904 /* ./../lib/standard//collection//array.nit:349 */
1906 REGB2
= TAG_Bool(VAL_ISA(REGB0
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1
), VTID_standard___kernel___Comparable___OTHER(REGB1
))) /*cast OTHER*/;
1907 if (UNTAG_Bool(REGB2
)) {
1909 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1911 /* ./../lib/standard//kernel.nit:232 */
1912 REGB2
= TAG_Bool(UNTAG_Int(REGB1
)<UNTAG_Int(REGB0
));
1913 /* ./../lib/standard//collection//array.nit:349 */
1914 if (UNTAG_Bool(REGB2
)) {
1915 /* ./../lib/standard//collection//array.nit:350 */
1916 CALL_standard___collection___abstract_collection___Sequence_____braeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB1
, fra
.me
.REG
[1]);
1917 /* ./../lib/standard//collection//array.nit:351 */
1919 /* ./../lib/standard//kernel.nit:235 */
1920 REGB2
= TAG_Int(UNTAG_Int(REGB1
)+UNTAG_Int(REGB2
));
1921 /* ./../lib/standard//collection//array.nit:351 */
1924 /* ./../lib/standard//collection//array.nit:349 */
1929 stack_frame_head
= fra
.me
.prev
;
1930 init_table
[itpos4
] = 1;
1933 void standard___collection___array___Array___with_native(val_t p0
, val_t p1
, val_t p2
, int* init_table
){
1934 int itpos5
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_standard___collection___array___Array
].i
;
1935 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1940 if (init_table
[itpos5
]) return;
1941 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1942 fra
.me
.file
= LOCATE_standard___collection___array
;
1944 fra
.me
.meth
= LOCATE_standard___collection___array___Array___with_native
;
1945 fra
.me
.has_broke
= 0;
1946 fra
.me
.REG_size
= 2;
1947 fra
.me
.REG
[0] = NIT_NULL
;
1948 fra
.me
.REG
[1] = NIT_NULL
;
1952 /* ./../lib/standard//collection//array.nit:358 */
1954 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
1955 if (UNTAG_Bool(REGB2
)) {
1957 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1959 /* ./../lib/standard//kernel.nit:233 */
1960 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB1
));
1961 /* ./../lib/standard//collection//array.nit:358 */
1962 if (UNTAG_Bool(REGB1
)) {
1964 nit_abort("Assert %s failed", "'positive'", LOCATE_standard___collection___array
, 358);
1966 /* ./../lib/standard//collection//array.nit:359 */
1967 ATTR_standard___collection___array___Array____items(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
1968 /* ./../lib/standard//collection//array.nit:360 */
1969 ATTR_standard___collection___array___Array____capacity(fra
.me
.REG
[0]) = REGB0
;
1970 /* ./../lib/standard//collection//array.nit:361 */
1971 ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]) = REGB0
;
1972 stack_frame_head
= fra
.me
.prev
;
1973 init_table
[itpos5
] = 1;
1976 val_t
standard___collection___array___Array___intern_items(val_t p0
){
1977 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1980 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1981 fra
.me
.file
= LOCATE_standard___collection___array
;
1983 fra
.me
.meth
= LOCATE_standard___collection___array___Array___intern_items
;
1984 fra
.me
.has_broke
= 0;
1985 fra
.me
.REG_size
= 2;
1986 fra
.me
.REG
[0] = NIT_NULL
;
1987 fra
.me
.REG
[1] = NIT_NULL
;
1989 /* ./../lib/standard//collection//array.nit:367 */
1990 fra
.me
.REG
[1] = fra
.me
.REG
[0];
1991 /* ./../lib/standard//collection//array.nit:369 */
1992 fra
.me
.REG
[1] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[1]);
1993 REGB0
= TAG_Bool(fra
.me
.REG
[1]!=NIT_NULL
);
1994 if (UNTAG_Bool(REGB0
)) {
1996 nit_abort("Cast failed", NULL
, LOCATE_standard___collection___array
, 369);
2000 stack_frame_head
= fra
.me
.prev
;
2001 return fra
.me
.REG
[1];
2003 void standard___collection___array___Array___sort(val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
){
2004 struct {struct stack_frame_t me
;} fra
;
2010 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2011 fra
.me
.file
= LOCATE_standard___collection___array
;
2013 fra
.me
.meth
= LOCATE_standard___collection___array___Array___sort
;
2014 fra
.me
.has_broke
= 0;
2015 fra
.me
.REG_size
= 1;
2016 fra
.me
.REG
[0] = NIT_NULL
;
2017 fra
.me
.closure_ctx
= closctx_param
;
2018 fra
.me
.closure_funs
= CREG
;
2020 CREG
[0] = clos_fun0
;
2021 /* ./../lib/standard//collection//array.nit:378 */
2023 /* ./../lib/standard//collection//array.nit:24 */
2024 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
2025 if (UNTAG_Bool(REGB1
)) {
2027 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
2029 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
2030 /* ./../lib/standard//collection//array.nit:378 */
2032 /* ./../lib/standard//kernel.nit:237 */
2033 REGB2
= TAG_Int(UNTAG_Int(REGB1
)-UNTAG_Int(REGB2
));
2034 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
));
2035 switch ((&(fra
.me
))->has_broke
) {
2037 case 1: (&(fra
.me
))->has_broke
= 0; goto label3
;
2040 stack_frame_head
= fra
.me
.prev
;
2043 val_t
OC_standard___collection___array___Array___sort_1(struct stack_frame_t
*closctx
, val_t p0
, val_t p1
){
2044 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
2047 /* ./../lib/standard//collection//array.nit:378 */
2048 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2049 fra
.me
.file
= LOCATE_standard___collection___array
;
2051 fra
.me
.meth
= LOCATE_standard___collection___array___Array___sort
;
2052 fra
.me
.has_broke
= 0;
2053 fra
.me
.REG_size
= 2;
2054 fra
.me
.REG
[0] = NIT_NULL
;
2055 fra
.me
.REG
[1] = NIT_NULL
;
2058 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]);
2059 if (closctx
->closure_ctx
->has_broke
) {
2060 closctx
->has_broke
= 1;
2065 stack_frame_head
= fra
.me
.prev
;
2068 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
){
2069 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
2079 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2080 fra
.me
.file
= LOCATE_standard___collection___array
;
2082 fra
.me
.meth
= LOCATE_standard___collection___array___Array___sub_sort
;
2083 fra
.me
.has_broke
= 0;
2084 fra
.me
.REG_size
= 4;
2085 fra
.me
.REG
[0] = NIT_NULL
;
2086 fra
.me
.REG
[1] = NIT_NULL
;
2087 fra
.me
.REG
[2] = NIT_NULL
;
2088 fra
.me
.REG
[3] = NIT_NULL
;
2089 fra
.me
.closure_ctx
= closctx_param
;
2090 fra
.me
.closure_funs
= CREG
;
2094 CREG
[0] = clos_fun0
;
2095 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
2096 if (UNTAG_Bool(REGB2
)) {
2098 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2100 /* ./../lib/standard//kernel.nit:233 */
2101 REGB2
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB1
));
2102 /* ./../lib/standard//collection//array.nit:385 */
2103 if (UNTAG_Bool(REGB2
)) {
2104 /* ./../lib/standard//collection//array.nit:386 */
2107 /* ./../lib/standard//collection//array.nit:387 */
2109 /* ./../lib/standard//kernel.nit:235 */
2110 REGB2
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB2
));
2111 REGB3
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB2
), VTID_standard___kernel___Comparable___OTHER(REGB2
))) /*cast OTHER*/;
2112 if (UNTAG_Bool(REGB3
)) {
2114 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2116 /* ./../lib/standard//kernel.nit:232 */
2117 REGB2
= TAG_Bool(UNTAG_Int(REGB2
)<UNTAG_Int(REGB1
));
2118 /* ./../lib/standard//collection//array.nit:387 */
2119 if (UNTAG_Bool(REGB2
)) {
2120 /* ./../lib/standard//collection//array.nit:278 */
2121 fra
.me
.REG
[1] = fra
.me
.REG
[0];
2123 /* ./../lib/standard//collection//array.nit:280 */
2125 REGB4
= TAG_Bool(VAL_ISA(REGB3
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB2
), VTID_standard___kernel___Comparable___OTHER(REGB2
))) /*cast OTHER*/;
2126 if (UNTAG_Bool(REGB4
)) {
2128 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2130 /* ./../lib/standard//kernel.nit:233 */
2131 REGB3
= TAG_Bool(UNTAG_Int(REGB2
)>=UNTAG_Int(REGB3
));
2132 /* ./../lib/standard//collection//array.nit:280 */
2133 if (UNTAG_Bool(REGB3
)) {
2134 REGB3
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[1])!=NIT_NULL
);
2135 if (UNTAG_Bool(REGB3
)) {
2137 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 280);
2139 REGB3
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[1]);
2140 REGB4
= TAG_Bool(VAL_ISA(REGB3
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB2
), VTID_standard___kernel___Comparable___OTHER(REGB2
))) /*cast OTHER*/;
2141 if (UNTAG_Bool(REGB4
)) {
2143 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2145 /* ./../lib/standard//kernel.nit:232 */
2146 REGB3
= TAG_Bool(UNTAG_Int(REGB2
)<UNTAG_Int(REGB3
));
2148 /* ./../lib/standard//collection//array.nit:280 */
2149 REGB4
= TAG_Bool(false);
2152 if (UNTAG_Bool(REGB3
)) {
2154 nit_abort("Assert %s failed", "'index'", LOCATE_standard___collection___array
, 280);
2156 /* ./../lib/standard//collection//array.nit:281 */
2157 fra
.me
.REG
[1] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[1]);
2158 REGB3
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
2159 if (UNTAG_Bool(REGB3
)) {
2160 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 281);
2162 /* ./../lib/standard//collection//array.nit:718 */
2163 fra
.me
.REG
[1] = ((Nit_NativeArray
)fra
.me
.REG
[1])->val
[UNTAG_Int(REGB2
)];
2164 /* ./../lib/standard//collection//array.nit:281 */
2167 /* ./../lib/standard//collection//array.nit:389 */
2169 /* ./../lib/standard//collection//array.nit:390 */
2171 /* ./../lib/standard//collection//array.nit:391 */
2173 REGB4
= TAG_Bool(VAL_ISA(REGB2
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB3
), VTID_standard___kernel___Comparable___OTHER(REGB3
))) /*cast OTHER*/;
2174 if (UNTAG_Bool(REGB4
)) {
2176 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2178 /* ./../lib/standard//kernel.nit:234 */
2179 REGB4
= TAG_Bool(UNTAG_Int(REGB3
)>UNTAG_Int(REGB2
));
2180 /* ./../lib/standard//collection//array.nit:391 */
2181 if (UNTAG_Bool(REGB4
)) {
2182 /* ./../lib/standard//collection//array.nit:392 */
2184 REGB4
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB2
), VTID_standard___kernel___Comparable___OTHER(REGB2
))) /*cast OTHER*/;
2185 if (UNTAG_Bool(REGB4
)) {
2187 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2189 /* ./../lib/standard//kernel.nit:231 */
2190 REGB4
= TAG_Bool(UNTAG_Int(REGB2
)<=UNTAG_Int(REGB1
));
2191 /* ./../lib/standard//collection//array.nit:392 */
2192 if (UNTAG_Bool(REGB4
)) {
2193 /* ./../lib/standard//collection//array.nit:278 */
2194 fra
.me
.REG
[2] = fra
.me
.REG
[0];
2196 /* ./../lib/standard//collection//array.nit:280 */
2198 REGB6
= TAG_Bool(VAL_ISA(REGB5
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB4
), VTID_standard___kernel___Comparable___OTHER(REGB4
))) /*cast OTHER*/;
2199 if (UNTAG_Bool(REGB6
)) {
2201 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2203 /* ./../lib/standard//kernel.nit:233 */
2204 REGB5
= TAG_Bool(UNTAG_Int(REGB4
)>=UNTAG_Int(REGB5
));
2205 /* ./../lib/standard//collection//array.nit:280 */
2206 if (UNTAG_Bool(REGB5
)) {
2207 REGB5
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
2208 if (UNTAG_Bool(REGB5
)) {
2210 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 280);
2212 REGB5
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2]);
2213 REGB6
= TAG_Bool(VAL_ISA(REGB5
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB4
), VTID_standard___kernel___Comparable___OTHER(REGB4
))) /*cast OTHER*/;
2214 if (UNTAG_Bool(REGB6
)) {
2216 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2218 /* ./../lib/standard//kernel.nit:232 */
2219 REGB5
= TAG_Bool(UNTAG_Int(REGB4
)<UNTAG_Int(REGB5
));
2221 /* ./../lib/standard//collection//array.nit:280 */
2222 REGB6
= TAG_Bool(false);
2225 if (UNTAG_Bool(REGB5
)) {
2227 nit_abort("Assert %s failed", "'index'", LOCATE_standard___collection___array
, 280);
2229 /* ./../lib/standard//collection//array.nit:281 */
2230 fra
.me
.REG
[2] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[2]);
2231 REGB5
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
2232 if (UNTAG_Bool(REGB5
)) {
2233 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 281);
2235 /* ./../lib/standard//collection//array.nit:718 */
2236 fra
.me
.REG
[2] = ((Nit_NativeArray
)fra
.me
.REG
[2])->val
[UNTAG_Int(REGB4
)];
2237 /* ./../lib/standard//collection//array.nit:281 */
2240 /* ./../lib/standard//collection//array.nit:392 */
2241 REGB4
= ((val_t (*)(struct stack_frame_t
*, val_t
, val_t
))(CREG
[0]))(closctx_param
, fra
.me
.REG
[2], fra
.me
.REG
[1]);
2242 if (closctx_param
->has_broke
) {
2246 REGB6
= TAG_Bool(VAL_ISA(REGB5
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB4
), VTID_standard___kernel___Comparable___OTHER(REGB4
))) /*cast OTHER*/;
2247 if (UNTAG_Bool(REGB6
)) {
2249 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2251 /* ./../lib/standard//kernel.nit:231 */
2252 REGB5
= TAG_Bool(UNTAG_Int(REGB4
)<=UNTAG_Int(REGB5
));
2254 /* ./../lib/standard//collection//array.nit:392 */
2255 REGB4
= TAG_Bool(false);
2258 if (UNTAG_Bool(REGB5
)) {
2260 /* ./../lib/standard//kernel.nit:235 */
2261 REGB5
= TAG_Int(UNTAG_Int(REGB2
)+UNTAG_Int(REGB5
));
2262 /* ./../lib/standard//collection//array.nit:392 */
2269 /* ./../lib/standard//collection//array.nit:393 */
2271 REGB5
= TAG_Bool(VAL_ISA(REGB2
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB3
), VTID_standard___kernel___Comparable___OTHER(REGB3
))) /*cast OTHER*/;
2272 if (UNTAG_Bool(REGB5
)) {
2274 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2276 /* ./../lib/standard//kernel.nit:234 */
2277 REGB5
= TAG_Bool(UNTAG_Int(REGB3
)>UNTAG_Int(REGB2
));
2278 /* ./../lib/standard//collection//array.nit:393 */
2279 if (UNTAG_Bool(REGB5
)) {
2280 /* ./../lib/standard//collection//array.nit:278 */
2281 fra
.me
.REG
[2] = fra
.me
.REG
[0];
2283 /* ./../lib/standard//collection//array.nit:280 */
2285 REGB6
= TAG_Bool(VAL_ISA(REGB4
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB5
), VTID_standard___kernel___Comparable___OTHER(REGB5
))) /*cast OTHER*/;
2286 if (UNTAG_Bool(REGB6
)) {
2288 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2290 /* ./../lib/standard//kernel.nit:233 */
2291 REGB4
= TAG_Bool(UNTAG_Int(REGB5
)>=UNTAG_Int(REGB4
));
2292 /* ./../lib/standard//collection//array.nit:280 */
2293 if (UNTAG_Bool(REGB4
)) {
2294 REGB4
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
2295 if (UNTAG_Bool(REGB4
)) {
2297 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 280);
2299 REGB4
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2]);
2300 REGB6
= TAG_Bool(VAL_ISA(REGB4
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB5
), VTID_standard___kernel___Comparable___OTHER(REGB5
))) /*cast OTHER*/;
2301 if (UNTAG_Bool(REGB6
)) {
2303 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2305 /* ./../lib/standard//kernel.nit:232 */
2306 REGB4
= TAG_Bool(UNTAG_Int(REGB5
)<UNTAG_Int(REGB4
));
2308 /* ./../lib/standard//collection//array.nit:280 */
2309 REGB6
= TAG_Bool(false);
2312 if (UNTAG_Bool(REGB4
)) {
2314 nit_abort("Assert %s failed", "'index'", LOCATE_standard___collection___array
, 280);
2316 /* ./../lib/standard//collection//array.nit:281 */
2317 fra
.me
.REG
[2] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[2]);
2318 REGB4
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
2319 if (UNTAG_Bool(REGB4
)) {
2320 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 281);
2322 /* ./../lib/standard//collection//array.nit:718 */
2323 fra
.me
.REG
[2] = ((Nit_NativeArray
)fra
.me
.REG
[2])->val
[UNTAG_Int(REGB5
)];
2324 /* ./../lib/standard//collection//array.nit:281 */
2327 /* ./../lib/standard//collection//array.nit:393 */
2328 REGB5
= ((val_t (*)(struct stack_frame_t
*, val_t
, val_t
))(CREG
[0]))(closctx_param
, fra
.me
.REG
[2], fra
.me
.REG
[1]);
2329 if (closctx_param
->has_broke
) {
2333 REGB6
= TAG_Bool(VAL_ISA(REGB4
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB5
), VTID_standard___kernel___Comparable___OTHER(REGB5
))) /*cast OTHER*/;
2334 if (UNTAG_Bool(REGB6
)) {
2336 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2338 /* ./../lib/standard//kernel.nit:233 */
2339 REGB4
= TAG_Bool(UNTAG_Int(REGB5
)>=UNTAG_Int(REGB4
));
2341 /* ./../lib/standard//collection//array.nit:393 */
2342 REGB5
= TAG_Bool(false);
2345 if (UNTAG_Bool(REGB4
)) {
2347 /* ./../lib/standard//kernel.nit:237 */
2348 REGB4
= TAG_Int(UNTAG_Int(REGB3
)-UNTAG_Int(REGB4
));
2349 /* ./../lib/standard//collection//array.nit:393 */
2356 REGB4
= TAG_Bool(VAL_ISA(REGB2
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB3
), VTID_standard___kernel___Comparable___OTHER(REGB3
))) /*cast OTHER*/;
2357 if (UNTAG_Bool(REGB4
)) {
2359 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2361 /* ./../lib/standard//kernel.nit:234 */
2362 REGB4
= TAG_Bool(UNTAG_Int(REGB3
)>UNTAG_Int(REGB2
));
2363 /* ./../lib/standard//collection//array.nit:394 */
2364 if (UNTAG_Bool(REGB4
)) {
2365 /* ./../lib/standard//collection//array.nit:278 */
2366 fra
.me
.REG
[2] = fra
.me
.REG
[0];
2368 /* ./../lib/standard//collection//array.nit:280 */
2370 REGB6
= TAG_Bool(VAL_ISA(REGB5
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB4
), VTID_standard___kernel___Comparable___OTHER(REGB4
))) /*cast OTHER*/;
2371 if (UNTAG_Bool(REGB6
)) {
2373 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2375 /* ./../lib/standard//kernel.nit:233 */
2376 REGB5
= TAG_Bool(UNTAG_Int(REGB4
)>=UNTAG_Int(REGB5
));
2377 /* ./../lib/standard//collection//array.nit:280 */
2378 if (UNTAG_Bool(REGB5
)) {
2379 REGB5
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
2380 if (UNTAG_Bool(REGB5
)) {
2382 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 280);
2384 REGB5
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2]);
2385 REGB6
= TAG_Bool(VAL_ISA(REGB5
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB4
), VTID_standard___kernel___Comparable___OTHER(REGB4
))) /*cast OTHER*/;
2386 if (UNTAG_Bool(REGB6
)) {
2388 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2390 /* ./../lib/standard//kernel.nit:232 */
2391 REGB5
= TAG_Bool(UNTAG_Int(REGB4
)<UNTAG_Int(REGB5
));
2393 /* ./../lib/standard//collection//array.nit:280 */
2394 REGB6
= TAG_Bool(false);
2397 if (UNTAG_Bool(REGB5
)) {
2399 nit_abort("Assert %s failed", "'index'", LOCATE_standard___collection___array
, 280);
2401 /* ./../lib/standard//collection//array.nit:281 */
2402 fra
.me
.REG
[2] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[2]);
2403 REGB5
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
2404 if (UNTAG_Bool(REGB5
)) {
2405 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 281);
2407 /* ./../lib/standard//collection//array.nit:718 */
2408 fra
.me
.REG
[2] = ((Nit_NativeArray
)fra
.me
.REG
[2])->val
[UNTAG_Int(REGB4
)];
2409 /* ./../lib/standard//collection//array.nit:281 */
2412 /* ./../lib/standard//collection//array.nit:278 */
2413 fra
.me
.REG
[3] = fra
.me
.REG
[0];
2415 /* ./../lib/standard//collection//array.nit:280 */
2417 REGB6
= TAG_Bool(VAL_ISA(REGB5
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB4
), VTID_standard___kernel___Comparable___OTHER(REGB4
))) /*cast OTHER*/;
2418 if (UNTAG_Bool(REGB6
)) {
2420 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2422 /* ./../lib/standard//kernel.nit:233 */
2423 REGB5
= TAG_Bool(UNTAG_Int(REGB4
)>=UNTAG_Int(REGB5
));
2424 /* ./../lib/standard//collection//array.nit:280 */
2425 if (UNTAG_Bool(REGB5
)) {
2426 REGB5
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[3])!=NIT_NULL
);
2427 if (UNTAG_Bool(REGB5
)) {
2429 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 280);
2431 REGB5
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[3]);
2432 REGB6
= TAG_Bool(VAL_ISA(REGB5
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB4
), VTID_standard___kernel___Comparable___OTHER(REGB4
))) /*cast OTHER*/;
2433 if (UNTAG_Bool(REGB6
)) {
2435 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2437 /* ./../lib/standard//kernel.nit:232 */
2438 REGB5
= TAG_Bool(UNTAG_Int(REGB4
)<UNTAG_Int(REGB5
));
2440 /* ./../lib/standard//collection//array.nit:280 */
2441 REGB6
= TAG_Bool(false);
2444 if (UNTAG_Bool(REGB5
)) {
2446 nit_abort("Assert %s failed", "'index'", LOCATE_standard___collection___array
, 280);
2448 /* ./../lib/standard//collection//array.nit:281 */
2449 fra
.me
.REG
[3] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[3]);
2450 REGB5
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
2451 if (UNTAG_Bool(REGB5
)) {
2452 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 281);
2454 /* ./../lib/standard//collection//array.nit:718 */
2455 fra
.me
.REG
[3] = ((Nit_NativeArray
)fra
.me
.REG
[3])->val
[UNTAG_Int(REGB4
)];
2456 /* ./../lib/standard//collection//array.nit:281 */
2459 /* ./../lib/standard//collection//array.nit:396 */
2460 CALL_standard___collection___abstract_collection___Sequence_____braeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB2
, fra
.me
.REG
[3]);
2461 /* ./../lib/standard//collection//array.nit:397 */
2462 CALL_standard___collection___abstract_collection___Sequence_____braeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB3
, fra
.me
.REG
[2]);
2465 /* ./../lib/standard//collection//array.nit:391 */
2470 /* ./../lib/standard//collection//array.nit:400 */
2472 /* ./../lib/standard//kernel.nit:237 */
2473 REGB3
= TAG_Int(UNTAG_Int(REGB2
)-UNTAG_Int(REGB3
));
2474 /* ./../lib/standard//collection//array.nit:278 */
2475 fra
.me
.REG
[2] = fra
.me
.REG
[0];
2476 /* ./../lib/standard//collection//array.nit:280 */
2478 REGB5
= TAG_Bool(VAL_ISA(REGB4
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB3
), VTID_standard___kernel___Comparable___OTHER(REGB3
))) /*cast OTHER*/;
2479 if (UNTAG_Bool(REGB5
)) {
2481 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2483 /* ./../lib/standard//kernel.nit:233 */
2484 REGB4
= TAG_Bool(UNTAG_Int(REGB3
)>=UNTAG_Int(REGB4
));
2485 /* ./../lib/standard//collection//array.nit:280 */
2486 if (UNTAG_Bool(REGB4
)) {
2487 REGB4
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
2488 if (UNTAG_Bool(REGB4
)) {
2490 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 280);
2492 REGB4
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2]);
2493 REGB5
= TAG_Bool(VAL_ISA(REGB4
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB3
), VTID_standard___kernel___Comparable___OTHER(REGB3
))) /*cast OTHER*/;
2494 if (UNTAG_Bool(REGB5
)) {
2496 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2498 /* ./../lib/standard//kernel.nit:232 */
2499 REGB4
= TAG_Bool(UNTAG_Int(REGB3
)<UNTAG_Int(REGB4
));
2501 /* ./../lib/standard//collection//array.nit:280 */
2502 REGB5
= TAG_Bool(false);
2505 if (UNTAG_Bool(REGB4
)) {
2507 nit_abort("Assert %s failed", "'index'", LOCATE_standard___collection___array
, 280);
2509 /* ./../lib/standard//collection//array.nit:281 */
2510 fra
.me
.REG
[2] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[2]);
2511 REGB4
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
2512 if (UNTAG_Bool(REGB4
)) {
2513 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 281);
2515 /* ./../lib/standard//collection//array.nit:718 */
2516 fra
.me
.REG
[2] = ((Nit_NativeArray
)fra
.me
.REG
[2])->val
[UNTAG_Int(REGB3
)];
2517 /* ./../lib/standard//collection//array.nit:281 */
2520 /* ./../lib/standard//collection//array.nit:400 */
2521 CALL_standard___collection___abstract_collection___Sequence_____braeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
, fra
.me
.REG
[2]);
2522 /* ./../lib/standard//collection//array.nit:401 */
2524 /* ./../lib/standard//kernel.nit:237 */
2525 REGB3
= TAG_Int(UNTAG_Int(REGB2
)-UNTAG_Int(REGB3
));
2526 /* ./../lib/standard//collection//array.nit:401 */
2527 CALL_standard___collection___abstract_collection___Sequence_____braeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB3
, fra
.me
.REG
[1]);
2528 /* ./../lib/standard//collection//array.nit:402 */
2530 /* ./../lib/standard//kernel.nit:237 */
2531 REGB3
= TAG_Int(UNTAG_Int(REGB2
)-UNTAG_Int(REGB3
));
2532 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
));
2533 switch ((&(fra
.me
))->has_broke
) {
2535 case 1: (&(fra
.me
))->has_broke
= 0; goto label1
;
2537 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
));
2538 switch ((&(fra
.me
))->has_broke
) {
2540 case 1: (&(fra
.me
))->has_broke
= 0; goto label1
;
2543 /* ./../lib/standard//collection//array.nit:406 */
2545 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
2546 if (UNTAG_Bool(REGB2
)) {
2548 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2550 /* ./../lib/standard//kernel.nit:232 */
2551 REGB2
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
2552 /* ./../lib/standard//collection//array.nit:406 */
2553 if (UNTAG_Bool(REGB2
)) {
2554 /* ./../lib/standard//collection//array.nit:407 */
2556 /* ./../lib/standard//collection//array.nit:278 */
2557 fra
.me
.REG
[1] = fra
.me
.REG
[0];
2559 /* ./../lib/standard//collection//array.nit:280 */
2561 REGB5
= TAG_Bool(VAL_ISA(REGB4
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB3
), VTID_standard___kernel___Comparable___OTHER(REGB3
))) /*cast OTHER*/;
2562 if (UNTAG_Bool(REGB5
)) {
2564 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2566 /* ./../lib/standard//kernel.nit:233 */
2567 REGB4
= TAG_Bool(UNTAG_Int(REGB3
)>=UNTAG_Int(REGB4
));
2568 /* ./../lib/standard//collection//array.nit:280 */
2569 if (UNTAG_Bool(REGB4
)) {
2570 REGB4
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[1])!=NIT_NULL
);
2571 if (UNTAG_Bool(REGB4
)) {
2573 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 280);
2575 REGB4
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[1]);
2576 REGB5
= TAG_Bool(VAL_ISA(REGB4
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB3
), VTID_standard___kernel___Comparable___OTHER(REGB3
))) /*cast OTHER*/;
2577 if (UNTAG_Bool(REGB5
)) {
2579 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2581 /* ./../lib/standard//kernel.nit:232 */
2582 REGB4
= TAG_Bool(UNTAG_Int(REGB3
)<UNTAG_Int(REGB4
));
2584 /* ./../lib/standard//collection//array.nit:280 */
2585 REGB5
= TAG_Bool(false);
2588 if (UNTAG_Bool(REGB4
)) {
2590 nit_abort("Assert %s failed", "'index'", LOCATE_standard___collection___array
, 280);
2592 /* ./../lib/standard//collection//array.nit:281 */
2593 fra
.me
.REG
[1] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[1]);
2594 REGB4
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
2595 if (UNTAG_Bool(REGB4
)) {
2596 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 281);
2598 /* ./../lib/standard//collection//array.nit:718 */
2599 fra
.me
.REG
[1] = ((Nit_NativeArray
)fra
.me
.REG
[1])->val
[UNTAG_Int(REGB3
)];
2600 /* ./../lib/standard//collection//array.nit:281 */
2603 /* ./../lib/standard//collection//array.nit:409 */
2605 /* ./../lib/standard//collection//array.nit:410 */
2607 REGB4
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB3
), VTID_standard___kernel___Comparable___OTHER(REGB3
))) /*cast OTHER*/;
2608 if (UNTAG_Bool(REGB4
)) {
2610 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2612 /* ./../lib/standard//kernel.nit:231 */
2613 REGB4
= TAG_Bool(UNTAG_Int(REGB3
)<=UNTAG_Int(REGB1
));
2614 /* ./../lib/standard//collection//array.nit:410 */
2615 if (UNTAG_Bool(REGB4
)) {
2616 /* ./../lib/standard//collection//array.nit:278 */
2617 fra
.me
.REG
[2] = fra
.me
.REG
[0];
2619 /* ./../lib/standard//collection//array.nit:280 */
2621 REGB6
= TAG_Bool(VAL_ISA(REGB5
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB4
), VTID_standard___kernel___Comparable___OTHER(REGB4
))) /*cast OTHER*/;
2622 if (UNTAG_Bool(REGB6
)) {
2624 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2626 /* ./../lib/standard//kernel.nit:233 */
2627 REGB5
= TAG_Bool(UNTAG_Int(REGB4
)>=UNTAG_Int(REGB5
));
2628 /* ./../lib/standard//collection//array.nit:280 */
2629 if (UNTAG_Bool(REGB5
)) {
2630 REGB5
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
2631 if (UNTAG_Bool(REGB5
)) {
2633 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 280);
2635 REGB5
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2]);
2636 REGB6
= TAG_Bool(VAL_ISA(REGB5
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB4
), VTID_standard___kernel___Comparable___OTHER(REGB4
))) /*cast OTHER*/;
2637 if (UNTAG_Bool(REGB6
)) {
2639 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2641 /* ./../lib/standard//kernel.nit:232 */
2642 REGB5
= TAG_Bool(UNTAG_Int(REGB4
)<UNTAG_Int(REGB5
));
2644 /* ./../lib/standard//collection//array.nit:280 */
2645 REGB6
= TAG_Bool(false);
2648 if (UNTAG_Bool(REGB5
)) {
2650 nit_abort("Assert %s failed", "'index'", LOCATE_standard___collection___array
, 280);
2652 /* ./../lib/standard//collection//array.nit:281 */
2653 fra
.me
.REG
[2] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[2]);
2654 REGB5
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
2655 if (UNTAG_Bool(REGB5
)) {
2656 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 281);
2658 /* ./../lib/standard//collection//array.nit:718 */
2659 fra
.me
.REG
[2] = ((Nit_NativeArray
)fra
.me
.REG
[2])->val
[UNTAG_Int(REGB4
)];
2660 /* ./../lib/standard//collection//array.nit:281 */
2663 /* ./../lib/standard//collection//array.nit:411 */
2664 REGB4
= ((val_t (*)(struct stack_frame_t
*, val_t
, val_t
))(CREG
[0]))(closctx_param
, fra
.me
.REG
[1], fra
.me
.REG
[2]);
2665 if (closctx_param
->has_broke
) {
2669 REGB6
= TAG_Bool(VAL_ISA(REGB5
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB4
), VTID_standard___kernel___Comparable___OTHER(REGB4
))) /*cast OTHER*/;
2670 if (UNTAG_Bool(REGB6
)) {
2672 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2674 /* ./../lib/standard//kernel.nit:234 */
2675 REGB5
= TAG_Bool(UNTAG_Int(REGB4
)>UNTAG_Int(REGB5
));
2676 /* ./../lib/standard//collection//array.nit:411 */
2677 if (UNTAG_Bool(REGB5
)) {
2678 /* ./../lib/standard//collection//array.nit:412 */
2680 /* ./../lib/standard//collection//array.nit:278 */
2681 fra
.me
.REG
[2] = fra
.me
.REG
[0];
2683 /* ./../lib/standard//collection//array.nit:280 */
2685 REGB6
= TAG_Bool(VAL_ISA(REGB4
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB5
), VTID_standard___kernel___Comparable___OTHER(REGB5
))) /*cast OTHER*/;
2686 if (UNTAG_Bool(REGB6
)) {
2688 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2690 /* ./../lib/standard//kernel.nit:233 */
2691 REGB4
= TAG_Bool(UNTAG_Int(REGB5
)>=UNTAG_Int(REGB4
));
2692 /* ./../lib/standard//collection//array.nit:280 */
2693 if (UNTAG_Bool(REGB4
)) {
2694 REGB4
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
2695 if (UNTAG_Bool(REGB4
)) {
2697 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 280);
2699 REGB4
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2]);
2700 REGB6
= TAG_Bool(VAL_ISA(REGB4
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB5
), VTID_standard___kernel___Comparable___OTHER(REGB5
))) /*cast OTHER*/;
2701 if (UNTAG_Bool(REGB6
)) {
2703 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2705 /* ./../lib/standard//kernel.nit:232 */
2706 REGB4
= TAG_Bool(UNTAG_Int(REGB5
)<UNTAG_Int(REGB4
));
2708 /* ./../lib/standard//collection//array.nit:280 */
2709 REGB6
= TAG_Bool(false);
2712 if (UNTAG_Bool(REGB4
)) {
2714 nit_abort("Assert %s failed", "'index'", LOCATE_standard___collection___array
, 280);
2716 /* ./../lib/standard//collection//array.nit:281 */
2717 fra
.me
.REG
[2] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[2]);
2718 REGB4
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
2719 if (UNTAG_Bool(REGB4
)) {
2720 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 281);
2722 /* ./../lib/standard//collection//array.nit:718 */
2723 fra
.me
.REG
[2] = ((Nit_NativeArray
)fra
.me
.REG
[2])->val
[UNTAG_Int(REGB5
)];
2724 /* ./../lib/standard//collection//array.nit:281 */
2727 /* ./../lib/standard//collection//array.nit:413 */
2728 fra
.me
.REG
[1] = fra
.me
.REG
[2];
2730 /* ./../lib/standard//collection//array.nit:415 */
2732 /* ./../lib/standard//kernel.nit:235 */
2733 REGB5
= TAG_Int(UNTAG_Int(REGB3
)+UNTAG_Int(REGB5
));
2734 /* ./../lib/standard//collection//array.nit:415 */
2737 /* ./../lib/standard//collection//array.nit:410 */
2742 /* ./../lib/standard//collection//array.nit:417 */
2743 REGB3
= TAG_Bool(IS_EQUAL_OO(REGB2
,REGB0
));
2744 if (UNTAG_Bool(REGB3
)) {
2746 /* ./../lib/standard//kernel.nit:227 */
2747 REGB5
= TAG_Bool((REGB2
)==(REGB0
));
2748 /* ./../lib/standard//collection//array.nit:417 */
2751 REGB3
= TAG_Bool(!UNTAG_Bool(REGB3
));
2752 if (UNTAG_Bool(REGB3
)) {
2753 /* ./../lib/standard//collection//array.nit:278 */
2754 fra
.me
.REG
[2] = fra
.me
.REG
[0];
2756 /* ./../lib/standard//collection//array.nit:280 */
2758 REGB4
= TAG_Bool(VAL_ISA(REGB5
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB3
), VTID_standard___kernel___Comparable___OTHER(REGB3
))) /*cast OTHER*/;
2759 if (UNTAG_Bool(REGB4
)) {
2761 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2763 /* ./../lib/standard//kernel.nit:233 */
2764 REGB5
= TAG_Bool(UNTAG_Int(REGB3
)>=UNTAG_Int(REGB5
));
2765 /* ./../lib/standard//collection//array.nit:280 */
2766 if (UNTAG_Bool(REGB5
)) {
2767 REGB5
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
2768 if (UNTAG_Bool(REGB5
)) {
2770 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 280);
2772 REGB5
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2]);
2773 REGB4
= TAG_Bool(VAL_ISA(REGB5
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB3
), VTID_standard___kernel___Comparable___OTHER(REGB3
))) /*cast OTHER*/;
2774 if (UNTAG_Bool(REGB4
)) {
2776 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2778 /* ./../lib/standard//kernel.nit:232 */
2779 REGB5
= TAG_Bool(UNTAG_Int(REGB3
)<UNTAG_Int(REGB5
));
2781 /* ./../lib/standard//collection//array.nit:280 */
2782 REGB4
= TAG_Bool(false);
2785 if (UNTAG_Bool(REGB5
)) {
2787 nit_abort("Assert %s failed", "'index'", LOCATE_standard___collection___array
, 280);
2789 /* ./../lib/standard//collection//array.nit:281 */
2790 fra
.me
.REG
[2] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[2]);
2791 REGB5
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
2792 if (UNTAG_Bool(REGB5
)) {
2793 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 281);
2795 /* ./../lib/standard//collection//array.nit:718 */
2796 fra
.me
.REG
[2] = ((Nit_NativeArray
)fra
.me
.REG
[2])->val
[UNTAG_Int(REGB3
)];
2797 /* ./../lib/standard//collection//array.nit:281 */
2800 /* ./../lib/standard//collection//array.nit:418 */
2801 CALL_standard___collection___abstract_collection___Sequence_____braeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB2
, fra
.me
.REG
[2]);
2802 /* ./../lib/standard//collection//array.nit:419 */
2803 CALL_standard___collection___abstract_collection___Sequence_____braeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
, fra
.me
.REG
[1]);
2805 /* ./../lib/standard//collection//array.nit:421 */
2807 /* ./../lib/standard//kernel.nit:235 */
2808 REGB2
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB2
));
2809 /* ./../lib/standard//collection//array.nit:421 */
2812 /* ./../lib/standard//collection//array.nit:406 */
2820 stack_frame_head
= fra
.me
.prev
;
2823 val_t
OC_standard___collection___array___Array___sub_sort_11(struct stack_frame_t
*closctx
, val_t p0
, val_t p1
){
2824 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
2827 /* ./../lib/standard//collection//array.nit:402 */
2828 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2829 fra
.me
.file
= LOCATE_standard___collection___array
;
2831 fra
.me
.meth
= LOCATE_standard___collection___array___Array___sub_sort
;
2832 fra
.me
.has_broke
= 0;
2833 fra
.me
.REG_size
= 2;
2834 fra
.me
.REG
[0] = NIT_NULL
;
2835 fra
.me
.REG
[1] = NIT_NULL
;
2838 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]);
2839 if (closctx
->closure_ctx
->has_broke
) {
2840 closctx
->has_broke
= 1;
2845 stack_frame_head
= fra
.me
.prev
;
2848 val_t
OC_standard___collection___array___Array___sub_sort_13(struct stack_frame_t
*closctx
, val_t p0
, val_t p1
){
2849 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
2852 /* ./../lib/standard//collection//array.nit:403 */
2853 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2854 fra
.me
.file
= LOCATE_standard___collection___array
;
2856 fra
.me
.meth
= LOCATE_standard___collection___array___Array___sub_sort
;
2857 fra
.me
.has_broke
= 0;
2858 fra
.me
.REG_size
= 2;
2859 fra
.me
.REG
[0] = NIT_NULL
;
2860 fra
.me
.REG
[1] = NIT_NULL
;
2863 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]);
2864 if (closctx
->closure_ctx
->has_broke
) {
2865 closctx
->has_broke
= 1;
2870 stack_frame_head
= fra
.me
.prev
;
2873 val_t
standard___collection___array___ArrayIterator___item(val_t p0
){
2874 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
2877 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2878 fra
.me
.file
= LOCATE_standard___collection___array
;
2880 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayIterator___item
;
2881 fra
.me
.has_broke
= 0;
2882 fra
.me
.REG_size
= 2;
2883 fra
.me
.REG
[0] = NIT_NULL
;
2884 fra
.me
.REG
[1] = NIT_NULL
;
2886 /* ./../lib/standard//collection//array.nit:431 */
2887 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArrayIterator____array(fra
.me
.REG
[0])!=NIT_NULL
);
2888 if (UNTAG_Bool(REGB0
)) {
2890 nit_abort("Uninitialized attribute %s", "_array", LOCATE_standard___collection___array
, 431);
2892 fra
.me
.REG
[1] = ATTR_standard___collection___array___ArrayIterator____array(fra
.me
.REG
[0]);
2893 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArrayIterator____index(fra
.me
.REG
[0])!=NIT_NULL
);
2894 if (UNTAG_Bool(REGB0
)) {
2896 nit_abort("Uninitialized attribute %s", "_index", LOCATE_standard___collection___array
, 431);
2898 REGB0
= ATTR_standard___collection___array___ArrayIterator____index(fra
.me
.REG
[0]);
2899 fra
.me
.REG
[1] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra
.me
.REG
[1])(fra
.me
.REG
[1], REGB0
);
2902 stack_frame_head
= fra
.me
.prev
;
2903 return fra
.me
.REG
[1];
2905 val_t
standard___collection___array___ArrayIterator___is_ok(val_t p0
){
2906 struct {struct stack_frame_t me
;} fra
;
2911 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2912 fra
.me
.file
= LOCATE_standard___collection___array
;
2914 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayIterator___is_ok
;
2915 fra
.me
.has_broke
= 0;
2916 fra
.me
.REG_size
= 1;
2917 fra
.me
.REG
[0] = NIT_NULL
;
2919 /* ./../lib/standard//collection//array.nit:435 */
2920 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArrayIterator____index(fra
.me
.REG
[0])!=NIT_NULL
);
2921 if (UNTAG_Bool(REGB0
)) {
2923 nit_abort("Uninitialized attribute %s", "_index", LOCATE_standard___collection___array
, 435);
2925 REGB0
= ATTR_standard___collection___array___ArrayIterator____index(fra
.me
.REG
[0]);
2926 REGB1
= TAG_Bool(ATTR_standard___collection___array___ArrayIterator____array(fra
.me
.REG
[0])!=NIT_NULL
);
2927 if (UNTAG_Bool(REGB1
)) {
2929 nit_abort("Uninitialized attribute %s", "_array", LOCATE_standard___collection___array
, 435);
2931 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArrayIterator____array(fra
.me
.REG
[0]);
2932 /* ./../lib/standard//collection//array.nit:24 */
2933 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
2934 if (UNTAG_Bool(REGB1
)) {
2936 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
2938 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
2939 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
2940 if (UNTAG_Bool(REGB2
)) {
2942 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
2944 /* ./../lib/standard//kernel.nit:232 */
2945 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
2946 /* ./../lib/standard//collection//array.nit:435 */
2949 stack_frame_head
= fra
.me
.prev
;
2952 void standard___collection___array___ArrayIterator___next(val_t p0
){
2953 struct {struct stack_frame_t me
;} fra
;
2957 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2958 fra
.me
.file
= LOCATE_standard___collection___array
;
2960 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayIterator___next
;
2961 fra
.me
.has_broke
= 0;
2962 fra
.me
.REG_size
= 1;
2963 fra
.me
.REG
[0] = NIT_NULL
;
2965 /* ./../lib/standard//collection//array.nit:437 */
2966 REGB0
= ATTR_standard___collection___array___ArrayIterator____index(fra
.me
.REG
[0]);
2968 /* ./../lib/standard//kernel.nit:235 */
2969 REGB1
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
2970 /* ./../lib/standard//collection//array.nit:437 */
2971 ATTR_standard___collection___array___ArrayIterator____index(fra
.me
.REG
[0]) = REGB1
;
2972 stack_frame_head
= fra
.me
.prev
;
2975 void standard___collection___array___ArrayIterator___init(val_t p0
, val_t p1
, int* init_table
){
2976 int itpos6
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_standard___collection___array___ArrayIterator
].i
;
2977 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
2980 if (init_table
[itpos6
]) return;
2981 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2982 fra
.me
.file
= LOCATE_standard___collection___array
;
2984 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayIterator___init
;
2985 fra
.me
.has_broke
= 0;
2986 fra
.me
.REG_size
= 2;
2987 fra
.me
.REG
[0] = NIT_NULL
;
2988 fra
.me
.REG
[1] = NIT_NULL
;
2991 /* ./../lib/standard//collection//array.nit:441 */
2992 ATTR_standard___collection___array___ArrayIterator____array(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
2993 /* ./../lib/standard//collection//array.nit:442 */
2995 ATTR_standard___collection___array___ArrayIterator____index(fra
.me
.REG
[0]) = REGB0
;
2996 stack_frame_head
= fra
.me
.prev
;
2997 init_table
[itpos6
] = 1;
3000 val_t
standard___collection___array___ArrayIterator___index(val_t p0
){
3001 struct {struct stack_frame_t me
;} fra
;
3004 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3005 fra
.me
.file
= LOCATE_standard___collection___array
;
3007 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayIterator___index
;
3008 fra
.me
.has_broke
= 0;
3009 fra
.me
.REG_size
= 1;
3010 fra
.me
.REG
[0] = NIT_NULL
;
3012 /* ./../lib/standard//collection//array.nit:445 */
3013 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArrayIterator____index(fra
.me
.REG
[0])!=NIT_NULL
);
3014 if (UNTAG_Bool(REGB0
)) {
3016 nit_abort("Uninitialized attribute %s", "_index", LOCATE_standard___collection___array
, 445);
3018 REGB0
= ATTR_standard___collection___array___ArrayIterator____index(fra
.me
.REG
[0]);
3019 stack_frame_head
= fra
.me
.prev
;
3022 val_t
standard___collection___array___ArraySet___has(val_t p0
, val_t p1
){
3023 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} 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___ArraySet___has
;
3030 fra
.me
.has_broke
= 0;
3031 fra
.me
.REG_size
= 2;
3032 fra
.me
.REG
[0] = NIT_NULL
;
3033 fra
.me
.REG
[1] = NIT_NULL
;
3036 /* ./../lib/standard//collection//array.nit:458 */
3037 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArraySet____array(fra
.me
.REG
[0])!=NIT_NULL
);
3038 if (UNTAG_Bool(REGB0
)) {
3040 nit_abort("Uninitialized attribute %s", "_array", LOCATE_standard___collection___array
, 458);
3042 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArraySet____array(fra
.me
.REG
[0]);
3043 REGB0
= CALL_standard___collection___abstract_collection___Collection___has(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
3046 stack_frame_head
= fra
.me
.prev
;
3049 void standard___collection___array___ArraySet___add(val_t p0
, val_t p1
){
3050 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
3053 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3054 fra
.me
.file
= LOCATE_standard___collection___array
;
3056 fra
.me
.meth
= LOCATE_standard___collection___array___ArraySet___add
;
3057 fra
.me
.has_broke
= 0;
3058 fra
.me
.REG_size
= 3;
3059 fra
.me
.REG
[0] = NIT_NULL
;
3060 fra
.me
.REG
[1] = NIT_NULL
;
3061 fra
.me
.REG
[2] = NIT_NULL
;
3064 /* ./../lib/standard//collection//array.nit:460 */
3065 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArraySet____array(fra
.me
.REG
[0])!=NIT_NULL
);
3066 if (UNTAG_Bool(REGB0
)) {
3068 nit_abort("Uninitialized attribute %s", "_array", LOCATE_standard___collection___array
, 460);
3070 fra
.me
.REG
[2] = ATTR_standard___collection___array___ArraySet____array(fra
.me
.REG
[0]);
3071 REGB0
= CALL_standard___collection___abstract_collection___Collection___has(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
3072 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
3073 if (UNTAG_Bool(REGB0
)) {
3074 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArraySet____array(fra
.me
.REG
[0])!=NIT_NULL
);
3075 if (UNTAG_Bool(REGB0
)) {
3077 nit_abort("Uninitialized attribute %s", "_array", LOCATE_standard___collection___array
, 460);
3079 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArraySet____array(fra
.me
.REG
[0]);
3080 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
3082 stack_frame_head
= fra
.me
.prev
;
3085 val_t
standard___collection___array___ArraySet___is_empty(val_t p0
){
3086 struct {struct stack_frame_t me
;} fra
;
3089 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3090 fra
.me
.file
= LOCATE_standard___collection___array
;
3092 fra
.me
.meth
= LOCATE_standard___collection___array___ArraySet___is_empty
;
3093 fra
.me
.has_broke
= 0;
3094 fra
.me
.REG_size
= 1;
3095 fra
.me
.REG
[0] = NIT_NULL
;
3097 /* ./../lib/standard//collection//array.nit:462 */
3098 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArraySet____array(fra
.me
.REG
[0])!=NIT_NULL
);
3099 if (UNTAG_Bool(REGB0
)) {
3101 nit_abort("Uninitialized attribute %s", "_array", LOCATE_standard___collection___array
, 462);
3103 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArraySet____array(fra
.me
.REG
[0]);
3104 REGB0
= CALL_standard___collection___abstract_collection___Collection___is_empty(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3107 stack_frame_head
= fra
.me
.prev
;
3110 val_t
standard___collection___array___ArraySet___length(val_t p0
){
3111 struct {struct stack_frame_t me
;} fra
;
3114 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3115 fra
.me
.file
= LOCATE_standard___collection___array
;
3117 fra
.me
.meth
= LOCATE_standard___collection___array___ArraySet___length
;
3118 fra
.me
.has_broke
= 0;
3119 fra
.me
.REG_size
= 1;
3120 fra
.me
.REG
[0] = NIT_NULL
;
3122 /* ./../lib/standard//collection//array.nit:464 */
3123 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArraySet____array(fra
.me
.REG
[0])!=NIT_NULL
);
3124 if (UNTAG_Bool(REGB0
)) {
3126 nit_abort("Uninitialized attribute %s", "_array", LOCATE_standard___collection___array
, 464);
3128 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArraySet____array(fra
.me
.REG
[0]);
3129 /* ./../lib/standard//collection//array.nit:24 */
3130 REGB0
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
3131 if (UNTAG_Bool(REGB0
)) {
3133 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
3135 REGB0
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
3136 /* ./../lib/standard//collection//array.nit:464 */
3139 stack_frame_head
= fra
.me
.prev
;
3142 val_t
standard___collection___array___ArraySet___first(val_t p0
){
3143 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
3148 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3149 fra
.me
.file
= LOCATE_standard___collection___array
;
3151 fra
.me
.meth
= LOCATE_standard___collection___array___ArraySet___first
;
3152 fra
.me
.has_broke
= 0;
3153 fra
.me
.REG_size
= 2;
3154 fra
.me
.REG
[0] = NIT_NULL
;
3155 fra
.me
.REG
[1] = NIT_NULL
;
3157 /* ./../lib/standard//collection//array.nit:468 */
3158 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArraySet____array(fra
.me
.REG
[0])!=NIT_NULL
);
3159 if (UNTAG_Bool(REGB0
)) {
3161 nit_abort("Uninitialized attribute %s", "_array", LOCATE_standard___collection___array
, 468);
3163 fra
.me
.REG
[1] = ATTR_standard___collection___array___ArraySet____array(fra
.me
.REG
[0]);
3164 /* ./../lib/standard//collection//array.nit:24 */
3165 REGB0
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[1])!=NIT_NULL
);
3166 if (UNTAG_Bool(REGB0
)) {
3168 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
3170 REGB0
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[1]);
3171 /* ./../lib/standard//collection//array.nit:468 */
3173 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
3174 if (UNTAG_Bool(REGB2
)) {
3176 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
3178 /* ./../lib/standard//kernel.nit:234 */
3179 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>UNTAG_Int(REGB1
));
3180 /* ./../lib/standard//collection//array.nit:468 */
3181 if (UNTAG_Bool(REGB1
)) {
3183 nit_abort("Assert failed", NULL
, LOCATE_standard___collection___array
, 468);
3185 /* ./../lib/standard//collection//array.nit:469 */
3186 REGB1
= TAG_Bool(ATTR_standard___collection___array___ArraySet____array(fra
.me
.REG
[0])!=NIT_NULL
);
3187 if (UNTAG_Bool(REGB1
)) {
3189 nit_abort("Uninitialized attribute %s", "_array", LOCATE_standard___collection___array
, 469);
3191 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArraySet____array(fra
.me
.REG
[0]);
3192 fra
.me
.REG
[0] = CALL_standard___collection___abstract_collection___Collection___first(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3195 stack_frame_head
= fra
.me
.prev
;
3196 return fra
.me
.REG
[0];
3198 void standard___collection___array___ArraySet___remove(val_t p0
, val_t p1
){
3199 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
3204 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3205 fra
.me
.file
= LOCATE_standard___collection___array
;
3207 fra
.me
.meth
= LOCATE_standard___collection___array___ArraySet___remove
;
3208 fra
.me
.has_broke
= 0;
3209 fra
.me
.REG_size
= 3;
3210 fra
.me
.REG
[0] = NIT_NULL
;
3211 fra
.me
.REG
[1] = NIT_NULL
;
3212 fra
.me
.REG
[2] = NIT_NULL
;
3215 /* ./../lib/standard//collection//array.nit:474 */
3216 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArraySet____array(fra
.me
.REG
[0])!=NIT_NULL
);
3217 if (UNTAG_Bool(REGB0
)) {
3219 nit_abort("Uninitialized attribute %s", "_array", LOCATE_standard___collection___array
, 474);
3221 fra
.me
.REG
[2] = ATTR_standard___collection___array___ArraySet____array(fra
.me
.REG
[0]);
3222 REGB0
= CALL_standard___collection___abstract_collection___SequenceRead___index_of(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
3223 /* ./../lib/standard//collection//array.nit:475 */
3225 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
3226 if (UNTAG_Bool(REGB2
)) {
3228 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
3230 /* ./../lib/standard//kernel.nit:233 */
3231 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB1
));
3232 /* ./../lib/standard//collection//array.nit:475 */
3233 if (UNTAG_Bool(REGB1
)) {
3234 CALL_standard___collection___array___ArraySet___remove_at(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
3236 stack_frame_head
= fra
.me
.prev
;
3239 void standard___collection___array___ArraySet___remove_all(val_t p0
, val_t p1
){
3240 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
3242 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3243 fra
.me
.file
= LOCATE_standard___collection___array
;
3245 fra
.me
.meth
= LOCATE_standard___collection___array___ArraySet___remove_all
;
3246 fra
.me
.has_broke
= 0;
3247 fra
.me
.REG_size
= 2;
3248 fra
.me
.REG
[0] = NIT_NULL
;
3249 fra
.me
.REG
[1] = NIT_NULL
;
3252 /* ./../lib/standard//collection//array.nit:478 */
3253 CALL_standard___collection___abstract_collection___RemovableCollection___remove(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
3254 stack_frame_head
= fra
.me
.prev
;
3257 void standard___collection___array___ArraySet___clear(val_t p0
){
3258 struct {struct stack_frame_t me
;} fra
;
3261 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3262 fra
.me
.file
= LOCATE_standard___collection___array
;
3264 fra
.me
.meth
= LOCATE_standard___collection___array___ArraySet___clear
;
3265 fra
.me
.has_broke
= 0;
3266 fra
.me
.REG_size
= 1;
3267 fra
.me
.REG
[0] = NIT_NULL
;
3269 /* ./../lib/standard//collection//array.nit:480 */
3270 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArraySet____array(fra
.me
.REG
[0])!=NIT_NULL
);
3271 if (UNTAG_Bool(REGB0
)) {
3273 nit_abort("Uninitialized attribute %s", "_array", LOCATE_standard___collection___array
, 480);
3275 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArraySet____array(fra
.me
.REG
[0]);
3276 CALL_standard___collection___abstract_collection___RemovableCollection___clear(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3277 stack_frame_head
= fra
.me
.prev
;
3280 val_t
standard___collection___array___ArraySet___iterator(val_t p0
){
3281 struct {struct stack_frame_t me
;} fra
;
3284 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3285 fra
.me
.file
= LOCATE_standard___collection___array
;
3287 fra
.me
.meth
= LOCATE_standard___collection___array___ArraySet___iterator
;
3288 fra
.me
.has_broke
= 0;
3289 fra
.me
.REG_size
= 1;
3290 fra
.me
.REG
[0] = NIT_NULL
;
3292 /* ./../lib/standard//collection//array.nit:482 */
3293 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArraySet____array(fra
.me
.REG
[0])!=NIT_NULL
);
3294 if (UNTAG_Bool(REGB0
)) {
3296 nit_abort("Uninitialized attribute %s", "_array", LOCATE_standard___collection___array
, 482);
3298 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArraySet____array(fra
.me
.REG
[0]);
3299 fra
.me
.REG
[0] = CALL_standard___collection___abstract_collection___Collection___iterator(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3300 fra
.me
.REG
[0] = NEW_ArraySetIterator_standard___collection___array___ArraySetIterator___init(fra
.me
.REG
[0]);
3303 stack_frame_head
= fra
.me
.prev
;
3304 return fra
.me
.REG
[0];
3306 void standard___collection___array___ArraySet___enlarge(val_t p0
, val_t p1
){
3307 struct {struct stack_frame_t me
;} fra
;
3311 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3312 fra
.me
.file
= LOCATE_standard___collection___array
;
3314 fra
.me
.meth
= LOCATE_standard___collection___array___ArraySet___enlarge
;
3315 fra
.me
.has_broke
= 0;
3316 fra
.me
.REG_size
= 1;
3317 fra
.me
.REG
[0] = NIT_NULL
;
3320 /* ./../lib/standard//collection//array.nit:485 */
3321 REGB1
= TAG_Bool(ATTR_standard___collection___array___ArraySet____array(fra
.me
.REG
[0])!=NIT_NULL
);
3322 if (UNTAG_Bool(REGB1
)) {
3324 nit_abort("Uninitialized attribute %s", "_array", LOCATE_standard___collection___array
, 485);
3326 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArraySet____array(fra
.me
.REG
[0]);
3327 CALL_standard___collection___array___AbstractArray___enlarge(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
3328 stack_frame_head
= fra
.me
.prev
;
3331 void standard___collection___array___ArraySet___remove_at(val_t p0
, val_t p1
){
3332 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
3336 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3337 fra
.me
.file
= LOCATE_standard___collection___array
;
3339 fra
.me
.meth
= LOCATE_standard___collection___array___ArraySet___remove_at
;
3340 fra
.me
.has_broke
= 0;
3341 fra
.me
.REG_size
= 3;
3342 fra
.me
.REG
[0] = NIT_NULL
;
3343 fra
.me
.REG
[1] = NIT_NULL
;
3344 fra
.me
.REG
[2] = NIT_NULL
;
3347 /* ./../lib/standard//collection//array.nit:489 */
3348 REGB1
= TAG_Bool(ATTR_standard___collection___array___ArraySet____array(fra
.me
.REG
[0])!=NIT_NULL
);
3349 if (UNTAG_Bool(REGB1
)) {
3351 nit_abort("Uninitialized attribute %s", "_array", LOCATE_standard___collection___array
, 489);
3353 fra
.me
.REG
[1] = ATTR_standard___collection___array___ArraySet____array(fra
.me
.REG
[0]);
3354 REGB1
= TAG_Bool(ATTR_standard___collection___array___ArraySet____array(fra
.me
.REG
[0])!=NIT_NULL
);
3355 if (UNTAG_Bool(REGB1
)) {
3357 nit_abort("Uninitialized attribute %s", "_array", LOCATE_standard___collection___array
, 489);
3359 fra
.me
.REG
[2] = ATTR_standard___collection___array___ArraySet____array(fra
.me
.REG
[0]);
3360 fra
.me
.REG
[2] = CALL_standard___collection___abstract_collection___SequenceRead___last(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
3361 CALL_standard___collection___abstract_collection___Sequence_____braeq(fra
.me
.REG
[1])(fra
.me
.REG
[1], REGB0
, fra
.me
.REG
[2]);
3362 /* ./../lib/standard//collection//array.nit:490 */
3363 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArraySet____array(fra
.me
.REG
[0])!=NIT_NULL
);
3364 if (UNTAG_Bool(REGB0
)) {
3366 nit_abort("Uninitialized attribute %s", "_array", LOCATE_standard___collection___array
, 490);
3368 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArraySet____array(fra
.me
.REG
[0]);
3369 CALL_standard___collection___abstract_collection___Sequence___pop(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3370 stack_frame_head
= fra
.me
.prev
;
3373 void standard___collection___array___ArraySet___init(val_t p0
, int* init_table
){
3374 int itpos7
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_standard___collection___array___ArraySet
].i
;
3375 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
3377 if (init_table
[itpos7
]) return;
3378 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3379 fra
.me
.file
= LOCATE_standard___collection___array
;
3381 fra
.me
.meth
= LOCATE_standard___collection___array___ArraySet___init
;
3382 fra
.me
.has_broke
= 0;
3383 fra
.me
.REG_size
= 2;
3384 fra
.me
.REG
[0] = NIT_NULL
;
3385 fra
.me
.REG
[1] = NIT_NULL
;
3387 /* ./../lib/standard//collection//array.nit:494 */
3388 fra
.me
.REG
[1] = NEW_Array_standard___collection___array___Array___init();
3389 ATTR_standard___collection___array___ArraySet____array(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
3390 stack_frame_head
= fra
.me
.prev
;
3391 init_table
[itpos7
] = 1;
3394 void standard___collection___array___ArraySet___with_capacity(val_t p0
, val_t p1
, int* init_table
){
3395 int itpos8
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_standard___collection___array___ArraySet
].i
;
3396 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
3399 if (init_table
[itpos8
]) return;
3400 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3401 fra
.me
.file
= LOCATE_standard___collection___array
;
3403 fra
.me
.meth
= LOCATE_standard___collection___array___ArraySet___with_capacity
;
3404 fra
.me
.has_broke
= 0;
3405 fra
.me
.REG_size
= 2;
3406 fra
.me
.REG
[0] = NIT_NULL
;
3407 fra
.me
.REG
[1] = NIT_NULL
;
3410 /* ./../lib/standard//collection//array.nit:497 */
3411 fra
.me
.REG
[1] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
3412 ATTR_standard___collection___array___ArraySet____array(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
3413 stack_frame_head
= fra
.me
.prev
;
3414 init_table
[itpos8
] = 1;
3417 val_t
standard___collection___array___ArraySetIterator___is_ok(val_t p0
){
3418 struct {struct stack_frame_t me
;} fra
;
3421 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3422 fra
.me
.file
= LOCATE_standard___collection___array
;
3424 fra
.me
.meth
= LOCATE_standard___collection___array___ArraySetIterator___is_ok
;
3425 fra
.me
.has_broke
= 0;
3426 fra
.me
.REG_size
= 1;
3427 fra
.me
.REG
[0] = NIT_NULL
;
3429 /* ./../lib/standard//collection//array.nit:504 */
3430 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArraySetIterator____iter(fra
.me
.REG
[0])!=NIT_NULL
);
3431 if (UNTAG_Bool(REGB0
)) {
3433 nit_abort("Uninitialized attribute %s", "_iter", LOCATE_standard___collection___array
, 504);
3435 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArraySetIterator____iter(fra
.me
.REG
[0]);
3436 REGB0
= CALL_standard___collection___abstract_collection___Iterator___is_ok(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3439 stack_frame_head
= fra
.me
.prev
;
3442 void standard___collection___array___ArraySetIterator___next(val_t p0
){
3443 struct {struct stack_frame_t me
;} fra
;
3446 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3447 fra
.me
.file
= LOCATE_standard___collection___array
;
3449 fra
.me
.meth
= LOCATE_standard___collection___array___ArraySetIterator___next
;
3450 fra
.me
.has_broke
= 0;
3451 fra
.me
.REG_size
= 1;
3452 fra
.me
.REG
[0] = NIT_NULL
;
3454 /* ./../lib/standard//collection//array.nit:506 */
3455 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArraySetIterator____iter(fra
.me
.REG
[0])!=NIT_NULL
);
3456 if (UNTAG_Bool(REGB0
)) {
3458 nit_abort("Uninitialized attribute %s", "_iter", LOCATE_standard___collection___array
, 506);
3460 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArraySetIterator____iter(fra
.me
.REG
[0]);
3461 CALL_standard___collection___abstract_collection___Iterator___next(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3462 stack_frame_head
= fra
.me
.prev
;
3465 val_t
standard___collection___array___ArraySetIterator___item(val_t p0
){
3466 struct {struct stack_frame_t me
;} fra
;
3469 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3470 fra
.me
.file
= LOCATE_standard___collection___array
;
3472 fra
.me
.meth
= LOCATE_standard___collection___array___ArraySetIterator___item
;
3473 fra
.me
.has_broke
= 0;
3474 fra
.me
.REG_size
= 1;
3475 fra
.me
.REG
[0] = NIT_NULL
;
3477 /* ./../lib/standard//collection//array.nit:508 */
3478 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArraySetIterator____iter(fra
.me
.REG
[0])!=NIT_NULL
);
3479 if (UNTAG_Bool(REGB0
)) {
3481 nit_abort("Uninitialized attribute %s", "_iter", LOCATE_standard___collection___array
, 508);
3483 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArraySetIterator____iter(fra
.me
.REG
[0]);
3484 fra
.me
.REG
[0] = CALL_standard___collection___abstract_collection___Iterator___item(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3487 stack_frame_head
= fra
.me
.prev
;
3488 return fra
.me
.REG
[0];
3490 void standard___collection___array___ArraySetIterator___init(val_t p0
, val_t p1
, int* init_table
){
3491 int itpos9
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_standard___collection___array___ArraySetIterator
].i
;
3492 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
3494 if (init_table
[itpos9
]) return;
3495 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3496 fra
.me
.file
= LOCATE_standard___collection___array
;
3498 fra
.me
.meth
= LOCATE_standard___collection___array___ArraySetIterator___init
;
3499 fra
.me
.has_broke
= 0;
3500 fra
.me
.REG_size
= 2;
3501 fra
.me
.REG
[0] = NIT_NULL
;
3502 fra
.me
.REG
[1] = NIT_NULL
;
3505 /* ./../lib/standard//collection//array.nit:510 */
3506 ATTR_standard___collection___array___ArraySetIterator____iter(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
3507 stack_frame_head
= fra
.me
.prev
;
3508 init_table
[itpos9
] = 1;
3511 val_t
standard___collection___array___ArrayMap_____bra(val_t p0
, val_t p1
){
3512 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
3517 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3518 fra
.me
.file
= LOCATE_standard___collection___array
;
3520 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMap_____bra
;
3521 fra
.me
.has_broke
= 0;
3522 fra
.me
.REG_size
= 2;
3523 fra
.me
.REG
[0] = NIT_NULL
;
3524 fra
.me
.REG
[1] = NIT_NULL
;
3527 /* ./../lib/standard//collection//array.nit:523 */
3528 REGB0
= CALL_standard___collection___array___ArrayMap___index(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
3529 /* ./../lib/standard//collection//array.nit:524 */
3531 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
3532 if (UNTAG_Bool(REGB2
)) {
3534 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
3536 /* ./../lib/standard//kernel.nit:233 */
3537 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB1
));
3538 /* ./../lib/standard//collection//array.nit:524 */
3539 if (UNTAG_Bool(REGB1
)) {
3540 /* ./../lib/standard//collection//array.nit:525 */
3541 REGB1
= TAG_Bool(ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
3542 if (UNTAG_Bool(REGB1
)) {
3544 nit_abort("Uninitialized attribute %s", "_items", LOCATE_standard___collection___array
, 525);
3546 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0]);
3547 /* ./../lib/standard//collection//array.nit:280 */
3549 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
3550 if (UNTAG_Bool(REGB2
)) {
3552 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
3554 /* ./../lib/standard//kernel.nit:233 */
3555 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB1
));
3556 /* ./../lib/standard//collection//array.nit:280 */
3557 if (UNTAG_Bool(REGB1
)) {
3558 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
3559 if (UNTAG_Bool(REGB1
)) {
3561 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 280);
3563 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
3564 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
3565 if (UNTAG_Bool(REGB2
)) {
3567 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
3569 /* ./../lib/standard//kernel.nit:232 */
3570 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
3572 /* ./../lib/standard//collection//array.nit:280 */
3573 REGB2
= TAG_Bool(false);
3576 if (UNTAG_Bool(REGB1
)) {
3578 nit_abort("Assert %s failed", "'index'", LOCATE_standard___collection___array
, 280);
3580 /* ./../lib/standard//collection//array.nit:281 */
3581 fra
.me
.REG
[0] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[0]);
3582 REGB1
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
3583 if (UNTAG_Bool(REGB1
)) {
3584 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 281);
3586 /* ./../lib/standard//collection//array.nit:718 */
3587 fra
.me
.REG
[0] = ((Nit_NativeArray
)fra
.me
.REG
[0])->val
[UNTAG_Int(REGB0
)];
3588 /* ./../lib/standard//collection//array.nit:281 */
3591 /* ./../lib/standard//collection//array.nit:525 */
3592 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
3593 if (UNTAG_Bool(REGB0
)) {
3594 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 525);
3596 fra
.me
.REG
[0] = CALL_standard___collection___abstract_collection___Couple___second(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3599 /* ./../lib/standard//collection//array.nit:527 */
3600 nit_abort("Aborted", NULL
, LOCATE_standard___collection___array
, 527);
3603 stack_frame_head
= fra
.me
.prev
;
3604 return fra
.me
.REG
[0];
3606 void standard___collection___array___ArrayMap_____braeq(val_t p0
, val_t p1
, val_t p2
){
3607 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
3612 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3613 fra
.me
.file
= LOCATE_standard___collection___array
;
3615 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMap_____braeq
;
3616 fra
.me
.has_broke
= 0;
3617 fra
.me
.REG_size
= 4;
3618 fra
.me
.REG
[0] = NIT_NULL
;
3619 fra
.me
.REG
[1] = NIT_NULL
;
3620 fra
.me
.REG
[2] = NIT_NULL
;
3621 fra
.me
.REG
[3] = NIT_NULL
;
3625 /* ./../lib/standard//collection//array.nit:534 */
3626 REGB0
= CALL_standard___collection___array___ArrayMap___index(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
3627 /* ./../lib/standard//collection//array.nit:535 */
3629 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
3630 if (UNTAG_Bool(REGB2
)) {
3632 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
3634 /* ./../lib/standard//kernel.nit:233 */
3635 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB1
));
3636 /* ./../lib/standard//collection//array.nit:535 */
3637 if (UNTAG_Bool(REGB1
)) {
3638 /* ./../lib/standard//collection//array.nit:536 */
3639 REGB1
= TAG_Bool(ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
3640 if (UNTAG_Bool(REGB1
)) {
3642 nit_abort("Uninitialized attribute %s", "_items", LOCATE_standard___collection___array
, 536);
3644 fra
.me
.REG
[3] = ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0]);
3645 /* ./../lib/standard//collection//array.nit:280 */
3647 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
3648 if (UNTAG_Bool(REGB2
)) {
3650 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
3652 /* ./../lib/standard//kernel.nit:233 */
3653 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB1
));
3654 /* ./../lib/standard//collection//array.nit:280 */
3655 if (UNTAG_Bool(REGB1
)) {
3656 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[3])!=NIT_NULL
);
3657 if (UNTAG_Bool(REGB1
)) {
3659 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 280);
3661 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[3]);
3662 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
3663 if (UNTAG_Bool(REGB2
)) {
3665 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
3667 /* ./../lib/standard//kernel.nit:232 */
3668 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
3670 /* ./../lib/standard//collection//array.nit:280 */
3671 REGB2
= TAG_Bool(false);
3674 if (UNTAG_Bool(REGB1
)) {
3676 nit_abort("Assert %s failed", "'index'", LOCATE_standard___collection___array
, 280);
3678 /* ./../lib/standard//collection//array.nit:281 */
3679 fra
.me
.REG
[3] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[3]);
3680 REGB1
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
3681 if (UNTAG_Bool(REGB1
)) {
3682 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 281);
3684 /* ./../lib/standard//collection//array.nit:718 */
3685 fra
.me
.REG
[3] = ((Nit_NativeArray
)fra
.me
.REG
[3])->val
[UNTAG_Int(REGB0
)];
3686 /* ./../lib/standard//collection//array.nit:281 */
3689 /* ./../lib/standard//collection//array.nit:536 */
3690 REGB0
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
3691 if (UNTAG_Bool(REGB0
)) {
3692 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 536);
3694 CALL_standard___collection___abstract_collection___Couple___second__eq(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[2]);
3696 /* ./../lib/standard//collection//array.nit:538 */
3697 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
3698 if (UNTAG_Bool(REGB0
)) {
3700 nit_abort("Uninitialized attribute %s", "_items", LOCATE_standard___collection___array
, 538);
3702 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0]);
3703 fra
.me
.REG
[2] = NEW_Couple_standard___collection___abstract_collection___Couple___init(fra
.me
.REG
[1], fra
.me
.REG
[2]);
3704 CALL_standard___collection___abstract_collection___Sequence___push(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[2]);
3706 stack_frame_head
= fra
.me
.prev
;
3709 val_t
standard___collection___array___ArrayMap___keys(val_t p0
){
3710 struct {struct stack_frame_t me
;} fra
;
3713 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3714 fra
.me
.file
= LOCATE_standard___collection___array
;
3716 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMap___keys
;
3717 fra
.me
.has_broke
= 0;
3718 fra
.me
.REG_size
= 1;
3719 fra
.me
.REG
[0] = NIT_NULL
;
3721 /* ./../lib/standard//collection//array.nit:542 */
3722 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArrayMap_____atkeys(fra
.me
.REG
[0])!=NIT_NULL
);
3723 if (UNTAG_Bool(REGB0
)) {
3725 nit_abort("Uninitialized attribute %s", "@keys", LOCATE_standard___collection___array
, 542);
3727 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArrayMap_____atkeys(fra
.me
.REG
[0]);
3728 stack_frame_head
= fra
.me
.prev
;
3729 return fra
.me
.REG
[0];
3731 void standard___collection___array___ArrayMap___keys__eq(val_t p0
, val_t p1
){
3732 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
3734 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3735 fra
.me
.file
= LOCATE_standard___collection___array
;
3737 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMap___keys__eq
;
3738 fra
.me
.has_broke
= 0;
3739 fra
.me
.REG_size
= 2;
3740 fra
.me
.REG
[0] = NIT_NULL
;
3741 fra
.me
.REG
[1] = NIT_NULL
;
3744 /* ./../lib/standard//collection//array.nit:542 */
3745 ATTR_standard___collection___array___ArrayMap_____atkeys(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
3746 stack_frame_head
= fra
.me
.prev
;
3749 val_t
standard___collection___array___ArrayMap___values(val_t p0
){
3750 struct {struct stack_frame_t me
;} fra
;
3753 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3754 fra
.me
.file
= LOCATE_standard___collection___array
;
3756 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMap___values
;
3757 fra
.me
.has_broke
= 0;
3758 fra
.me
.REG_size
= 1;
3759 fra
.me
.REG
[0] = NIT_NULL
;
3761 /* ./../lib/standard//collection//array.nit:543 */
3762 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArrayMap_____atvalues(fra
.me
.REG
[0])!=NIT_NULL
);
3763 if (UNTAG_Bool(REGB0
)) {
3765 nit_abort("Uninitialized attribute %s", "@values", LOCATE_standard___collection___array
, 543);
3767 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArrayMap_____atvalues(fra
.me
.REG
[0]);
3768 stack_frame_head
= fra
.me
.prev
;
3769 return fra
.me
.REG
[0];
3771 void standard___collection___array___ArrayMap___values__eq(val_t p0
, val_t p1
){
3772 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
3774 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3775 fra
.me
.file
= LOCATE_standard___collection___array
;
3777 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMap___values__eq
;
3778 fra
.me
.has_broke
= 0;
3779 fra
.me
.REG_size
= 2;
3780 fra
.me
.REG
[0] = NIT_NULL
;
3781 fra
.me
.REG
[1] = NIT_NULL
;
3784 /* ./../lib/standard//collection//array.nit:543 */
3785 ATTR_standard___collection___array___ArrayMap_____atvalues(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
3786 stack_frame_head
= fra
.me
.prev
;
3789 val_t
standard___collection___array___ArrayMap___length(val_t p0
){
3790 struct {struct stack_frame_t me
;} fra
;
3793 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3794 fra
.me
.file
= LOCATE_standard___collection___array
;
3796 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMap___length
;
3797 fra
.me
.has_broke
= 0;
3798 fra
.me
.REG_size
= 1;
3799 fra
.me
.REG
[0] = NIT_NULL
;
3801 /* ./../lib/standard//collection//array.nit:546 */
3802 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
3803 if (UNTAG_Bool(REGB0
)) {
3805 nit_abort("Uninitialized attribute %s", "_items", LOCATE_standard___collection___array
, 546);
3807 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0]);
3808 /* ./../lib/standard//collection//array.nit:24 */
3809 REGB0
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
3810 if (UNTAG_Bool(REGB0
)) {
3812 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
3814 REGB0
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
3815 /* ./../lib/standard//collection//array.nit:546 */
3818 stack_frame_head
= fra
.me
.prev
;
3821 val_t
standard___collection___array___ArrayMap___iterator(val_t p0
){
3822 struct {struct stack_frame_t me
;} fra
;
3825 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3826 fra
.me
.file
= LOCATE_standard___collection___array
;
3828 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMap___iterator
;
3829 fra
.me
.has_broke
= 0;
3830 fra
.me
.REG_size
= 1;
3831 fra
.me
.REG
[0] = NIT_NULL
;
3833 /* ./../lib/standard//collection//array.nit:548 */
3834 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
3835 if (UNTAG_Bool(REGB0
)) {
3837 nit_abort("Uninitialized attribute %s", "_items", LOCATE_standard___collection___array
, 548);
3839 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0]);
3840 fra
.me
.REG
[0] = CALL_standard___collection___abstract_collection___Collection___iterator(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3841 fra
.me
.REG
[0] = NEW_CoupleMapIterator_standard___collection___abstract_collection___CoupleMapIterator___init(fra
.me
.REG
[0]);
3844 stack_frame_head
= fra
.me
.prev
;
3845 return fra
.me
.REG
[0];
3847 val_t
standard___collection___array___ArrayMap___is_empty(val_t p0
){
3848 struct {struct stack_frame_t me
;} fra
;
3851 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3852 fra
.me
.file
= LOCATE_standard___collection___array
;
3854 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMap___is_empty
;
3855 fra
.me
.has_broke
= 0;
3856 fra
.me
.REG_size
= 1;
3857 fra
.me
.REG
[0] = NIT_NULL
;
3859 /* ./../lib/standard//collection//array.nit:550 */
3860 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
3861 if (UNTAG_Bool(REGB0
)) {
3863 nit_abort("Uninitialized attribute %s", "_items", LOCATE_standard___collection___array
, 550);
3865 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0]);
3866 REGB0
= CALL_standard___collection___abstract_collection___Collection___is_empty(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3869 stack_frame_head
= fra
.me
.prev
;
3872 void standard___collection___array___ArrayMap___clear(val_t p0
){
3873 struct {struct stack_frame_t me
;} fra
;
3876 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3877 fra
.me
.file
= LOCATE_standard___collection___array
;
3879 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMap___clear
;
3880 fra
.me
.has_broke
= 0;
3881 fra
.me
.REG_size
= 1;
3882 fra
.me
.REG
[0] = NIT_NULL
;
3884 /* ./../lib/standard//collection//array.nit:552 */
3885 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
3886 if (UNTAG_Bool(REGB0
)) {
3888 nit_abort("Uninitialized attribute %s", "_items", LOCATE_standard___collection___array
, 552);
3890 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0]);
3891 CALL_standard___collection___abstract_collection___RemovableCollection___clear(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3892 stack_frame_head
= fra
.me
.prev
;
3895 void standard___collection___array___ArrayMap___enlarge(val_t p0
, val_t p1
){
3896 struct {struct stack_frame_t me
;} fra
;
3900 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3901 fra
.me
.file
= LOCATE_standard___collection___array
;
3903 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMap___enlarge
;
3904 fra
.me
.has_broke
= 0;
3905 fra
.me
.REG_size
= 1;
3906 fra
.me
.REG
[0] = NIT_NULL
;
3909 /* ./../lib/standard//collection//array.nit:555 */
3910 REGB1
= TAG_Bool(ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
3911 if (UNTAG_Bool(REGB1
)) {
3913 nit_abort("Uninitialized attribute %s", "_items", LOCATE_standard___collection___array
, 555);
3915 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0]);
3916 CALL_standard___collection___array___AbstractArray___enlarge(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
3917 stack_frame_head
= fra
.me
.prev
;
3920 val_t
standard___collection___array___ArrayMap___couple_at(val_t p0
, val_t p1
){
3921 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
3926 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3927 fra
.me
.file
= LOCATE_standard___collection___array
;
3929 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMap___couple_at
;
3930 fra
.me
.has_broke
= 0;
3931 fra
.me
.REG_size
= 2;
3932 fra
.me
.REG
[0] = NIT_NULL
;
3933 fra
.me
.REG
[1] = NIT_NULL
;
3936 /* ./../lib/standard//collection//array.nit:559 */
3937 REGB0
= CALL_standard___collection___array___ArrayMap___index(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
3938 /* ./../lib/standard//collection//array.nit:560 */
3940 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
3941 if (UNTAG_Bool(REGB2
)) {
3943 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
3945 /* ./../lib/standard//kernel.nit:233 */
3946 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB1
));
3947 /* ./../lib/standard//collection//array.nit:560 */
3948 if (UNTAG_Bool(REGB1
)) {
3949 /* ./../lib/standard//collection//array.nit:561 */
3950 REGB1
= TAG_Bool(ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
3951 if (UNTAG_Bool(REGB1
)) {
3953 nit_abort("Uninitialized attribute %s", "_items", LOCATE_standard___collection___array
, 561);
3955 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0]);
3956 /* ./../lib/standard//collection//array.nit:280 */
3958 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
3959 if (UNTAG_Bool(REGB2
)) {
3961 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
3963 /* ./../lib/standard//kernel.nit:233 */
3964 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB1
));
3965 /* ./../lib/standard//collection//array.nit:280 */
3966 if (UNTAG_Bool(REGB1
)) {
3967 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
3968 if (UNTAG_Bool(REGB1
)) {
3970 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 280);
3972 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
3973 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
3974 if (UNTAG_Bool(REGB2
)) {
3976 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
3978 /* ./../lib/standard//kernel.nit:232 */
3979 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
3981 /* ./../lib/standard//collection//array.nit:280 */
3982 REGB2
= TAG_Bool(false);
3985 if (UNTAG_Bool(REGB1
)) {
3987 nit_abort("Assert %s failed", "'index'", LOCATE_standard___collection___array
, 280);
3989 /* ./../lib/standard//collection//array.nit:281 */
3990 fra
.me
.REG
[0] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[0]);
3991 REGB1
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
3992 if (UNTAG_Bool(REGB1
)) {
3993 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 281);
3995 /* ./../lib/standard//collection//array.nit:718 */
3996 fra
.me
.REG
[0] = ((Nit_NativeArray
)fra
.me
.REG
[0])->val
[UNTAG_Int(REGB0
)];
3997 /* ./../lib/standard//collection//array.nit:281 */
4000 /* ./../lib/standard//collection//array.nit:561 */
4003 /* ./../lib/standard//collection//array.nit:563 */
4004 fra
.me
.REG
[0] = NIT_NULL
;
4008 stack_frame_head
= fra
.me
.prev
;
4009 return fra
.me
.REG
[0];
4011 void standard___collection___array___ArrayMap___remove_at_index(val_t p0
, val_t p1
){
4012 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
4016 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4017 fra
.me
.file
= LOCATE_standard___collection___array
;
4019 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMap___remove_at_index
;
4020 fra
.me
.has_broke
= 0;
4021 fra
.me
.REG_size
= 3;
4022 fra
.me
.REG
[0] = NIT_NULL
;
4023 fra
.me
.REG
[1] = NIT_NULL
;
4024 fra
.me
.REG
[2] = NIT_NULL
;
4027 /* ./../lib/standard//collection//array.nit:573 */
4028 REGB1
= TAG_Bool(ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
4029 if (UNTAG_Bool(REGB1
)) {
4031 nit_abort("Uninitialized attribute %s", "_items", LOCATE_standard___collection___array
, 573);
4033 fra
.me
.REG
[1] = ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0]);
4034 REGB1
= TAG_Bool(ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
4035 if (UNTAG_Bool(REGB1
)) {
4037 nit_abort("Uninitialized attribute %s", "_items", LOCATE_standard___collection___array
, 573);
4039 fra
.me
.REG
[2] = ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0]);
4040 fra
.me
.REG
[2] = CALL_standard___collection___abstract_collection___SequenceRead___last(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
4041 CALL_standard___collection___abstract_collection___Sequence_____braeq(fra
.me
.REG
[1])(fra
.me
.REG
[1], REGB0
, fra
.me
.REG
[2]);
4042 /* ./../lib/standard//collection//array.nit:574 */
4043 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
4044 if (UNTAG_Bool(REGB0
)) {
4046 nit_abort("Uninitialized attribute %s", "_items", LOCATE_standard___collection___array
, 574);
4048 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0]);
4049 CALL_standard___collection___abstract_collection___Sequence___pop(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4050 stack_frame_head
= fra
.me
.prev
;
4053 val_t
standard___collection___array___ArrayMap___index(val_t p0
, val_t p1
){
4054 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
4061 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4062 fra
.me
.file
= LOCATE_standard___collection___array
;
4064 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMap___index
;
4065 fra
.me
.has_broke
= 0;
4066 fra
.me
.REG_size
= 3;
4067 fra
.me
.REG
[0] = NIT_NULL
;
4068 fra
.me
.REG
[1] = NIT_NULL
;
4069 fra
.me
.REG
[2] = NIT_NULL
;
4072 /* ./../lib/standard//collection//array.nit:584 */
4073 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArrayMap____last_index(fra
.me
.REG
[0])!=NIT_NULL
);
4074 if (UNTAG_Bool(REGB0
)) {
4076 nit_abort("Uninitialized attribute %s", "_last_index", LOCATE_standard___collection___array
, 584);
4078 REGB0
= ATTR_standard___collection___array___ArrayMap____last_index(fra
.me
.REG
[0]);
4079 /* ./../lib/standard//collection//array.nit:585 */
4080 REGB1
= TAG_Bool(ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
4081 if (UNTAG_Bool(REGB1
)) {
4083 nit_abort("Uninitialized attribute %s", "_items", LOCATE_standard___collection___array
, 585);
4085 fra
.me
.REG
[2] = ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0]);
4086 /* ./../lib/standard//collection//array.nit:24 */
4087 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
4088 if (UNTAG_Bool(REGB1
)) {
4090 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
4092 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2]);
4093 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
4094 if (UNTAG_Bool(REGB2
)) {
4096 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
4098 /* ./../lib/standard//kernel.nit:232 */
4099 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
4100 /* ./../lib/standard//collection//array.nit:585 */
4101 if (UNTAG_Bool(REGB1
)) {
4102 REGB1
= TAG_Bool(ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
4103 if (UNTAG_Bool(REGB1
)) {
4105 nit_abort("Uninitialized attribute %s", "_items", LOCATE_standard___collection___array
, 585);
4107 fra
.me
.REG
[2] = ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0]);
4108 /* ./../lib/standard//collection//array.nit:278 */
4110 /* ./../lib/standard//collection//array.nit:280 */
4112 REGB3
= TAG_Bool(VAL_ISA(REGB2
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1
), VTID_standard___kernel___Comparable___OTHER(REGB1
))) /*cast OTHER*/;
4113 if (UNTAG_Bool(REGB3
)) {
4115 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
4117 /* ./../lib/standard//kernel.nit:233 */
4118 REGB2
= TAG_Bool(UNTAG_Int(REGB1
)>=UNTAG_Int(REGB2
));
4119 /* ./../lib/standard//collection//array.nit:280 */
4120 if (UNTAG_Bool(REGB2
)) {
4121 REGB2
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
4122 if (UNTAG_Bool(REGB2
)) {
4124 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 280);
4126 REGB2
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2]);
4127 REGB3
= TAG_Bool(VAL_ISA(REGB2
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1
), VTID_standard___kernel___Comparable___OTHER(REGB1
))) /*cast OTHER*/;
4128 if (UNTAG_Bool(REGB3
)) {
4130 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
4132 /* ./../lib/standard//kernel.nit:232 */
4133 REGB2
= TAG_Bool(UNTAG_Int(REGB1
)<UNTAG_Int(REGB2
));
4135 /* ./../lib/standard//collection//array.nit:280 */
4136 REGB3
= TAG_Bool(false);
4139 if (UNTAG_Bool(REGB2
)) {
4141 nit_abort("Assert %s failed", "'index'", LOCATE_standard___collection___array
, 280);
4143 /* ./../lib/standard//collection//array.nit:281 */
4144 fra
.me
.REG
[2] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[2]);
4145 REGB2
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
4146 if (UNTAG_Bool(REGB2
)) {
4147 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 281);
4149 /* ./../lib/standard//collection//array.nit:718 */
4150 fra
.me
.REG
[2] = ((Nit_NativeArray
)fra
.me
.REG
[2])->val
[UNTAG_Int(REGB1
)];
4151 /* ./../lib/standard//collection//array.nit:281 */
4154 /* ./../lib/standard//collection//array.nit:585 */
4155 REGB1
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
4156 if (UNTAG_Bool(REGB1
)) {
4157 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 585);
4159 fra
.me
.REG
[2] = CALL_standard___collection___abstract_collection___Couple___first(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
4160 REGB1
= TAG_Bool(IS_EQUAL_ON(fra
.me
.REG
[1],fra
.me
.REG
[2]));
4161 if (UNTAG_Bool(REGB1
)) {
4163 REGB2
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
4164 if (UNTAG_Bool(REGB2
)) {
4165 REGB2
= TAG_Bool(false);
4168 REGB2
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
4173 REGB2
= TAG_Bool(false);
4176 if (UNTAG_Bool(REGB1
)) {
4179 /* ./../lib/standard//collection//array.nit:587 */
4181 /* ./../lib/standard//collection//array.nit:588 */
4183 REGB2
= TAG_Bool(ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
4184 if (UNTAG_Bool(REGB2
)) {
4186 nit_abort("Uninitialized attribute %s", "_items", LOCATE_standard___collection___array
, 588);
4188 fra
.me
.REG
[2] = ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0]);
4189 /* ./../lib/standard//collection//array.nit:24 */
4190 REGB2
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
4191 if (UNTAG_Bool(REGB2
)) {
4193 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
4195 REGB2
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2]);
4196 REGB3
= TAG_Bool(VAL_ISA(REGB2
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1
), VTID_standard___kernel___Comparable___OTHER(REGB1
))) /*cast OTHER*/;
4197 if (UNTAG_Bool(REGB3
)) {
4199 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
4201 /* ./../lib/standard//kernel.nit:232 */
4202 REGB2
= TAG_Bool(UNTAG_Int(REGB1
)<UNTAG_Int(REGB2
));
4203 /* ./../lib/standard//collection//array.nit:588 */
4204 if (UNTAG_Bool(REGB2
)) {
4205 /* ./../lib/standard//collection//array.nit:589 */
4206 REGB2
= TAG_Bool(ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
4207 if (UNTAG_Bool(REGB2
)) {
4209 nit_abort("Uninitialized attribute %s", "_items", LOCATE_standard___collection___array
, 589);
4211 fra
.me
.REG
[2] = ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0]);
4212 /* ./../lib/standard//collection//array.nit:278 */
4214 /* ./../lib/standard//collection//array.nit:280 */
4216 REGB4
= TAG_Bool(VAL_ISA(REGB3
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB2
), VTID_standard___kernel___Comparable___OTHER(REGB2
))) /*cast OTHER*/;
4217 if (UNTAG_Bool(REGB4
)) {
4219 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
4221 /* ./../lib/standard//kernel.nit:233 */
4222 REGB3
= TAG_Bool(UNTAG_Int(REGB2
)>=UNTAG_Int(REGB3
));
4223 /* ./../lib/standard//collection//array.nit:280 */
4224 if (UNTAG_Bool(REGB3
)) {
4225 REGB3
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
4226 if (UNTAG_Bool(REGB3
)) {
4228 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 280);
4230 REGB3
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2]);
4231 REGB4
= TAG_Bool(VAL_ISA(REGB3
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB2
), VTID_standard___kernel___Comparable___OTHER(REGB2
))) /*cast OTHER*/;
4232 if (UNTAG_Bool(REGB4
)) {
4234 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
4236 /* ./../lib/standard//kernel.nit:232 */
4237 REGB3
= TAG_Bool(UNTAG_Int(REGB2
)<UNTAG_Int(REGB3
));
4239 /* ./../lib/standard//collection//array.nit:280 */
4240 REGB4
= TAG_Bool(false);
4243 if (UNTAG_Bool(REGB3
)) {
4245 nit_abort("Assert %s failed", "'index'", LOCATE_standard___collection___array
, 280);
4247 /* ./../lib/standard//collection//array.nit:281 */
4248 fra
.me
.REG
[2] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[2]);
4249 REGB3
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
4250 if (UNTAG_Bool(REGB3
)) {
4251 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 281);
4253 /* ./../lib/standard//collection//array.nit:718 */
4254 fra
.me
.REG
[2] = ((Nit_NativeArray
)fra
.me
.REG
[2])->val
[UNTAG_Int(REGB2
)];
4255 /* ./../lib/standard//collection//array.nit:281 */
4258 /* ./../lib/standard//collection//array.nit:589 */
4259 REGB2
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
4260 if (UNTAG_Bool(REGB2
)) {
4261 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 589);
4263 fra
.me
.REG
[2] = CALL_standard___collection___abstract_collection___Couple___first(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
4264 REGB2
= TAG_Bool(IS_EQUAL_ON(fra
.me
.REG
[1],fra
.me
.REG
[2]));
4265 if (UNTAG_Bool(REGB2
)) {
4267 REGB3
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
4268 if (UNTAG_Bool(REGB3
)) {
4269 REGB3
= TAG_Bool(false);
4272 REGB3
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
4276 if (UNTAG_Bool(REGB2
)) {
4277 /* ./../lib/standard//collection//array.nit:590 */
4278 ATTR_standard___collection___array___ArrayMap____last_index(fra
.me
.REG
[0]) = REGB1
;
4279 /* ./../lib/standard//collection//array.nit:591 */
4283 /* ./../lib/standard//collection//array.nit:593 */
4285 /* ./../lib/standard//kernel.nit:235 */
4286 REGB2
= TAG_Int(UNTAG_Int(REGB1
)+UNTAG_Int(REGB2
));
4287 /* ./../lib/standard//collection//array.nit:593 */
4290 /* ./../lib/standard//collection//array.nit:588 */
4295 /* ./../lib/standard//collection//array.nit:595 */
4297 /* ./../lib/standard//kernel.nit:236 */
4298 REGB1
= TAG_Int(-UNTAG_Int(REGB1
));
4299 /* ./../lib/standard//collection//array.nit:595 */
4303 stack_frame_head
= fra
.me
.prev
;
4306 void standard___collection___array___ArrayMap___init(val_t p0
, int* init_table
){
4307 int itpos10
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_standard___collection___array___ArrayMap
].i
;
4308 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
4310 if (init_table
[itpos10
]) return;
4311 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4312 fra
.me
.file
= LOCATE_standard___collection___array
;
4314 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMap___init
;
4315 fra
.me
.has_broke
= 0;
4316 fra
.me
.REG_size
= 2;
4317 fra
.me
.REG
[0] = NIT_NULL
;
4318 fra
.me
.REG
[1] = NIT_NULL
;
4320 /* ./../lib/standard//collection//array.nit:601 */
4321 fra
.me
.REG
[1] = NEW_Array_standard___collection___array___Array___init();
4322 ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
4323 stack_frame_head
= fra
.me
.prev
;
4324 init_table
[itpos10
] = 1;
4327 val_t
standard___collection___array___ArrayMapKeys___map(val_t p0
){
4328 struct {struct stack_frame_t me
;} fra
;
4331 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4332 fra
.me
.file
= LOCATE_standard___collection___array
;
4334 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMapKeys___map
;
4335 fra
.me
.has_broke
= 0;
4336 fra
.me
.REG_size
= 1;
4337 fra
.me
.REG
[0] = NIT_NULL
;
4339 /* ./../lib/standard//collection//array.nit:607 */
4340 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArrayMapKeys_____atmap(fra
.me
.REG
[0])!=NIT_NULL
);
4341 if (UNTAG_Bool(REGB0
)) {
4343 nit_abort("Uninitialized attribute %s", "@map", LOCATE_standard___collection___array
, 607);
4345 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArrayMapKeys_____atmap(fra
.me
.REG
[0]);
4346 stack_frame_head
= fra
.me
.prev
;
4347 return fra
.me
.REG
[0];
4349 void standard___collection___array___ArrayMapKeys___map__eq(val_t p0
, val_t p1
){
4350 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
4352 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4353 fra
.me
.file
= LOCATE_standard___collection___array
;
4355 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMapKeys___map__eq
;
4356 fra
.me
.has_broke
= 0;
4357 fra
.me
.REG_size
= 2;
4358 fra
.me
.REG
[0] = NIT_NULL
;
4359 fra
.me
.REG
[1] = NIT_NULL
;
4362 /* ./../lib/standard//collection//array.nit:607 */
4363 ATTR_standard___collection___array___ArrayMapKeys_____atmap(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
4364 stack_frame_head
= fra
.me
.prev
;
4367 val_t
standard___collection___array___ArrayMapKeys___count(val_t p0
, val_t p1
){
4368 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
4372 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4373 fra
.me
.file
= LOCATE_standard___collection___array
;
4375 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMapKeys___count
;
4376 fra
.me
.has_broke
= 0;
4377 fra
.me
.REG_size
= 2;
4378 fra
.me
.REG
[0] = NIT_NULL
;
4379 fra
.me
.REG
[1] = NIT_NULL
;
4382 /* ./../lib/standard//collection//array.nit:609 */
4383 REGB0
= CALL_standard___collection___abstract_collection___Collection___has(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
4384 if (UNTAG_Bool(REGB0
)) {
4393 stack_frame_head
= fra
.me
.prev
;
4396 val_t
standard___collection___array___ArrayMapKeys___first(val_t p0
){
4397 struct {struct stack_frame_t me
;} fra
;
4400 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4401 fra
.me
.file
= LOCATE_standard___collection___array
;
4403 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMapKeys___first
;
4404 fra
.me
.has_broke
= 0;
4405 fra
.me
.REG_size
= 1;
4406 fra
.me
.REG
[0] = NIT_NULL
;
4408 /* ./../lib/standard//collection//array.nit:610 */
4409 fra
.me
.REG
[0] = CALL_standard___collection___array___ArrayMapKeys___map(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4410 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
4411 if (UNTAG_Bool(REGB0
)) {
4413 nit_abort("Uninitialized attribute %s", "_items", LOCATE_standard___collection___array
, 610);
4415 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0]);
4416 fra
.me
.REG
[0] = CALL_standard___collection___abstract_collection___Collection___first(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4417 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
4418 if (UNTAG_Bool(REGB0
)) {
4419 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 610);
4421 fra
.me
.REG
[0] = CALL_standard___collection___abstract_collection___Couple___first(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4424 stack_frame_head
= fra
.me
.prev
;
4425 return fra
.me
.REG
[0];
4427 val_t
standard___collection___array___ArrayMapKeys___has(val_t p0
, val_t p1
){
4428 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
4433 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4434 fra
.me
.file
= LOCATE_standard___collection___array
;
4436 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMapKeys___has
;
4437 fra
.me
.has_broke
= 0;
4438 fra
.me
.REG_size
= 2;
4439 fra
.me
.REG
[0] = NIT_NULL
;
4440 fra
.me
.REG
[1] = NIT_NULL
;
4443 /* ./../lib/standard//collection//array.nit:611 */
4444 fra
.me
.REG
[0] = CALL_standard___collection___array___ArrayMapKeys___map(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4445 REGB0
= CALL_standard___collection___array___ArrayMap___index(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
4447 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
4448 if (UNTAG_Bool(REGB2
)) {
4450 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
4452 /* ./../lib/standard//kernel.nit:233 */
4453 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB1
));
4454 /* ./../lib/standard//collection//array.nit:611 */
4457 stack_frame_head
= fra
.me
.prev
;
4460 val_t
standard___collection___array___ArrayMapKeys___has_only(val_t p0
, val_t p1
){
4461 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
4466 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4467 fra
.me
.file
= LOCATE_standard___collection___array
;
4469 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMapKeys___has_only
;
4470 fra
.me
.has_broke
= 0;
4471 fra
.me
.REG_size
= 2;
4472 fra
.me
.REG
[0] = NIT_NULL
;
4473 fra
.me
.REG
[1] = NIT_NULL
;
4476 /* ./../lib/standard//collection//array.nit:612 */
4477 REGB0
= CALL_standard___collection___abstract_collection___Collection___has(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
4478 if (UNTAG_Bool(REGB0
)) {
4479 REGB0
= CALL_standard___collection___abstract_collection___Collection___length(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4481 REGB2
= TAG_Bool(IS_EQUAL_OO(REGB0
,REGB1
));
4482 if (UNTAG_Bool(REGB2
)) {
4484 /* ./../lib/standard//kernel.nit:227 */
4485 REGB1
= TAG_Bool((REGB0
)==(REGB1
));
4486 /* ./../lib/standard//collection//array.nit:612 */
4490 REGB1
= TAG_Bool(false);
4493 if (UNTAG_Bool(REGB2
)) {
4494 REGB2
= TAG_Bool(true);
4496 REGB1
= CALL_standard___collection___abstract_collection___Collection___is_empty(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4501 stack_frame_head
= fra
.me
.prev
;
4504 val_t
standard___collection___array___ArrayMapKeys___is_empty(val_t p0
){
4505 struct {struct stack_frame_t me
;} fra
;
4508 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4509 fra
.me
.file
= LOCATE_standard___collection___array
;
4511 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMapKeys___is_empty
;
4512 fra
.me
.has_broke
= 0;
4513 fra
.me
.REG_size
= 1;
4514 fra
.me
.REG
[0] = NIT_NULL
;
4516 /* ./../lib/standard//collection//array.nit:613 */
4517 fra
.me
.REG
[0] = CALL_standard___collection___array___ArrayMapKeys___map(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4518 REGB0
= CALL_standard___collection___abstract_collection___MapRead___is_empty(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4521 stack_frame_head
= fra
.me
.prev
;
4524 val_t
standard___collection___array___ArrayMapKeys___length(val_t p0
){
4525 struct {struct stack_frame_t me
;} fra
;
4528 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4529 fra
.me
.file
= LOCATE_standard___collection___array
;
4531 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMapKeys___length
;
4532 fra
.me
.has_broke
= 0;
4533 fra
.me
.REG_size
= 1;
4534 fra
.me
.REG
[0] = NIT_NULL
;
4536 /* ./../lib/standard//collection//array.nit:614 */
4537 fra
.me
.REG
[0] = CALL_standard___collection___array___ArrayMapKeys___map(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4538 REGB0
= CALL_standard___collection___abstract_collection___MapRead___length(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4541 stack_frame_head
= fra
.me
.prev
;
4544 val_t
standard___collection___array___ArrayMapKeys___iterator(val_t p0
){
4545 struct {struct stack_frame_t me
;} fra
;
4547 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4548 fra
.me
.file
= LOCATE_standard___collection___array
;
4550 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMapKeys___iterator
;
4551 fra
.me
.has_broke
= 0;
4552 fra
.me
.REG_size
= 1;
4553 fra
.me
.REG
[0] = NIT_NULL
;
4555 /* ./../lib/standard//collection//array.nit:615 */
4556 fra
.me
.REG
[0] = CALL_standard___collection___array___ArrayMapKeys___map(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4557 fra
.me
.REG
[0] = CALL_standard___collection___abstract_collection___MapRead___iterator(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4558 fra
.me
.REG
[0] = NEW_MapKeysIterator_standard___collection___abstract_collection___MapKeysIterator___init(fra
.me
.REG
[0]);
4561 stack_frame_head
= fra
.me
.prev
;
4562 return fra
.me
.REG
[0];
4564 void standard___collection___array___ArrayMapKeys___clear(val_t p0
){
4565 struct {struct stack_frame_t me
;} fra
;
4567 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4568 fra
.me
.file
= LOCATE_standard___collection___array
;
4570 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMapKeys___clear
;
4571 fra
.me
.has_broke
= 0;
4572 fra
.me
.REG_size
= 1;
4573 fra
.me
.REG
[0] = NIT_NULL
;
4575 /* ./../lib/standard//collection//array.nit:616 */
4576 fra
.me
.REG
[0] = CALL_standard___collection___array___ArrayMapKeys___map(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4577 CALL_standard___collection___abstract_collection___Map___clear(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4578 stack_frame_head
= fra
.me
.prev
;
4581 void standard___collection___array___ArrayMapKeys___remove(val_t p0
, val_t p1
){
4582 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
4587 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4588 fra
.me
.file
= LOCATE_standard___collection___array
;
4590 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMapKeys___remove
;
4591 fra
.me
.has_broke
= 0;
4592 fra
.me
.REG_size
= 3;
4593 fra
.me
.REG
[0] = NIT_NULL
;
4594 fra
.me
.REG
[1] = NIT_NULL
;
4595 fra
.me
.REG
[2] = NIT_NULL
;
4598 /* ./../lib/standard//collection//array.nit:619 */
4599 fra
.me
.REG
[2] = CALL_standard___collection___array___ArrayMapKeys___map(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4600 REGB0
= CALL_standard___collection___array___ArrayMap___index(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
4601 /* ./../lib/standard//collection//array.nit:620 */
4603 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
4604 if (UNTAG_Bool(REGB2
)) {
4606 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
4608 /* ./../lib/standard//kernel.nit:233 */
4609 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB1
));
4610 /* ./../lib/standard//collection//array.nit:620 */
4611 if (UNTAG_Bool(REGB1
)) {
4612 fra
.me
.REG
[0] = CALL_standard___collection___array___ArrayMapKeys___map(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4613 CALL_standard___collection___array___ArrayMap___remove_at_index(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
4615 stack_frame_head
= fra
.me
.prev
;
4618 void standard___collection___array___ArrayMapKeys___remove_all(val_t p0
, val_t p1
){
4619 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
4621 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4622 fra
.me
.file
= LOCATE_standard___collection___array
;
4624 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMapKeys___remove_all
;
4625 fra
.me
.has_broke
= 0;
4626 fra
.me
.REG_size
= 2;
4627 fra
.me
.REG
[0] = NIT_NULL
;
4628 fra
.me
.REG
[1] = NIT_NULL
;
4631 /* ./../lib/standard//collection//array.nit:622 */
4632 CALL_standard___collection___abstract_collection___RemovableCollection___remove(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
4633 stack_frame_head
= fra
.me
.prev
;
4636 void standard___collection___array___ArrayMapKeys___init(val_t p0
, val_t p1
, int* init_table
){
4637 int itpos11
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_standard___collection___array___ArrayMapKeys
].i
;
4638 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
4640 if (init_table
[itpos11
]) return;
4641 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4642 fra
.me
.file
= LOCATE_standard___collection___array
;
4644 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMapKeys___init
;
4645 fra
.me
.has_broke
= 0;
4646 fra
.me
.REG_size
= 2;
4647 fra
.me
.REG
[0] = NIT_NULL
;
4648 fra
.me
.REG
[1] = NIT_NULL
;
4651 ATTR_standard___collection___array___ArrayMapKeys_____atmap(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
4652 stack_frame_head
= fra
.me
.prev
;
4653 init_table
[itpos11
] = 1;
4656 val_t
standard___collection___array___ArrayMapValues___map(val_t p0
){
4657 struct {struct stack_frame_t me
;} fra
;
4660 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4661 fra
.me
.file
= LOCATE_standard___collection___array
;
4663 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMapValues___map
;
4664 fra
.me
.has_broke
= 0;
4665 fra
.me
.REG_size
= 1;
4666 fra
.me
.REG
[0] = NIT_NULL
;
4668 /* ./../lib/standard//collection//array.nit:627 */
4669 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArrayMapValues_____atmap(fra
.me
.REG
[0])!=NIT_NULL
);
4670 if (UNTAG_Bool(REGB0
)) {
4672 nit_abort("Uninitialized attribute %s", "@map", LOCATE_standard___collection___array
, 627);
4674 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArrayMapValues_____atmap(fra
.me
.REG
[0]);
4675 stack_frame_head
= fra
.me
.prev
;
4676 return fra
.me
.REG
[0];
4678 void standard___collection___array___ArrayMapValues___map__eq(val_t p0
, val_t p1
){
4679 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
4681 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4682 fra
.me
.file
= LOCATE_standard___collection___array
;
4684 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMapValues___map__eq
;
4685 fra
.me
.has_broke
= 0;
4686 fra
.me
.REG_size
= 2;
4687 fra
.me
.REG
[0] = NIT_NULL
;
4688 fra
.me
.REG
[1] = NIT_NULL
;
4691 /* ./../lib/standard//collection//array.nit:627 */
4692 ATTR_standard___collection___array___ArrayMapValues_____atmap(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
4693 stack_frame_head
= fra
.me
.prev
;
4696 val_t
standard___collection___array___ArrayMapValues___first(val_t p0
){
4697 struct {struct stack_frame_t me
;} fra
;
4700 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4701 fra
.me
.file
= LOCATE_standard___collection___array
;
4703 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMapValues___first
;
4704 fra
.me
.has_broke
= 0;
4705 fra
.me
.REG_size
= 1;
4706 fra
.me
.REG
[0] = NIT_NULL
;
4708 /* ./../lib/standard//collection//array.nit:629 */
4709 fra
.me
.REG
[0] = CALL_standard___collection___array___ArrayMapValues___map(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4710 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
4711 if (UNTAG_Bool(REGB0
)) {
4713 nit_abort("Uninitialized attribute %s", "_items", LOCATE_standard___collection___array
, 629);
4715 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0]);
4716 fra
.me
.REG
[0] = CALL_standard___collection___abstract_collection___Collection___first(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4717 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
4718 if (UNTAG_Bool(REGB0
)) {
4719 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 629);
4721 fra
.me
.REG
[0] = CALL_standard___collection___abstract_collection___Couple___first(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4724 stack_frame_head
= fra
.me
.prev
;
4725 return fra
.me
.REG
[0];
4727 val_t
standard___collection___array___ArrayMapValues___is_empty(val_t p0
){
4728 struct {struct stack_frame_t me
;} fra
;
4731 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4732 fra
.me
.file
= LOCATE_standard___collection___array
;
4734 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMapValues___is_empty
;
4735 fra
.me
.has_broke
= 0;
4736 fra
.me
.REG_size
= 1;
4737 fra
.me
.REG
[0] = NIT_NULL
;
4739 /* ./../lib/standard//collection//array.nit:630 */
4740 fra
.me
.REG
[0] = CALL_standard___collection___array___ArrayMapValues___map(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4741 REGB0
= CALL_standard___collection___abstract_collection___MapRead___is_empty(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4744 stack_frame_head
= fra
.me
.prev
;
4747 val_t
standard___collection___array___ArrayMapValues___length(val_t p0
){
4748 struct {struct stack_frame_t me
;} fra
;
4751 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4752 fra
.me
.file
= LOCATE_standard___collection___array
;
4754 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMapValues___length
;
4755 fra
.me
.has_broke
= 0;
4756 fra
.me
.REG_size
= 1;
4757 fra
.me
.REG
[0] = NIT_NULL
;
4759 /* ./../lib/standard//collection//array.nit:631 */
4760 fra
.me
.REG
[0] = CALL_standard___collection___array___ArrayMapValues___map(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4761 REGB0
= CALL_standard___collection___abstract_collection___MapRead___length(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4764 stack_frame_head
= fra
.me
.prev
;
4767 val_t
standard___collection___array___ArrayMapValues___iterator(val_t p0
){
4768 struct {struct stack_frame_t me
;} fra
;
4770 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4771 fra
.me
.file
= LOCATE_standard___collection___array
;
4773 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMapValues___iterator
;
4774 fra
.me
.has_broke
= 0;
4775 fra
.me
.REG_size
= 1;
4776 fra
.me
.REG
[0] = NIT_NULL
;
4778 /* ./../lib/standard//collection//array.nit:632 */
4779 fra
.me
.REG
[0] = CALL_standard___collection___array___ArrayMapValues___map(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4780 fra
.me
.REG
[0] = CALL_standard___collection___abstract_collection___MapRead___iterator(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4781 fra
.me
.REG
[0] = NEW_MapValuesIterator_standard___collection___abstract_collection___MapValuesIterator___init(fra
.me
.REG
[0]);
4784 stack_frame_head
= fra
.me
.prev
;
4785 return fra
.me
.REG
[0];
4787 val_t
standard___collection___array___ArrayMapValues___has(val_t p0
, val_t p1
){
4788 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
4793 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4794 fra
.me
.file
= LOCATE_standard___collection___array
;
4796 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMapValues___has
;
4797 fra
.me
.has_broke
= 0;
4798 fra
.me
.REG_size
= 4;
4799 fra
.me
.REG
[0] = NIT_NULL
;
4800 fra
.me
.REG
[1] = NIT_NULL
;
4801 fra
.me
.REG
[2] = NIT_NULL
;
4802 fra
.me
.REG
[3] = NIT_NULL
;
4805 /* ./../lib/standard//collection//array.nit:637 */
4806 fra
.me
.REG
[0] = CALL_standard___collection___array___ArrayMapValues___map(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4807 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
4808 if (UNTAG_Bool(REGB0
)) {
4810 nit_abort("Uninitialized attribute %s", "_items", LOCATE_standard___collection___array
, 637);
4812 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0]);
4813 /* ./../lib/standard//collection//array.nit:269 */
4815 /* ./../lib/standard//collection//array.nit:270 */
4816 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
4817 if (UNTAG_Bool(REGB1
)) {
4819 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 270);
4821 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
4822 /* ./../lib/standard//collection//array.nit:271 */
4823 fra
.me
.REG
[2] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[0]);
4824 /* ./../lib/standard//collection//array.nit:272 */
4826 /* ./../lib/standard//collection//array.nit:24 */
4827 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
4828 if (UNTAG_Bool(REGB1
)) {
4830 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
4832 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
4833 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
4834 if (UNTAG_Bool(REGB2
)) {
4836 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
4838 /* ./../lib/standard//kernel.nit:232 */
4839 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
4840 /* ./../lib/standard//collection//array.nit:272 */
4841 if (UNTAG_Bool(REGB1
)) {
4842 /* ./../lib/standard//collection//array.nit:273 */
4843 REGB1
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
4844 if (UNTAG_Bool(REGB1
)) {
4845 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 273);
4847 /* ./../lib/standard//collection//array.nit:718 */
4848 fra
.me
.REG
[3] = ((Nit_NativeArray
)fra
.me
.REG
[2])->val
[UNTAG_Int(REGB0
)];
4849 /* ./../lib/standard//collection//array.nit:637 */
4850 fra
.me
.REG
[3] = CALL_standard___collection___abstract_collection___Couple___second(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
4851 REGB1
= TAG_Bool(IS_EQUAL_ON(fra
.me
.REG
[1],fra
.me
.REG
[3]));
4852 if (UNTAG_Bool(REGB1
)) {
4854 REGB2
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
4855 if (UNTAG_Bool(REGB2
)) {
4856 REGB2
= TAG_Bool(false);
4859 REGB2
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[1]);
4863 if (UNTAG_Bool(REGB1
)) {
4864 REGB1
= TAG_Bool(true);
4867 /* ./../lib/standard//collection//array.nit:274 */
4869 /* ./../lib/standard//kernel.nit:235 */
4870 REGB2
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB2
));
4871 /* ./../lib/standard//collection//array.nit:274 */
4874 /* ./../lib/standard//collection//array.nit:272 */
4879 /* ./../lib/standard//collection//array.nit:638 */
4880 REGB0
= TAG_Bool(false);
4884 stack_frame_head
= fra
.me
.prev
;
4887 val_t
standard___collection___array___ArrayMapValues___has_only(val_t p0
, val_t p1
){
4888 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
4893 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4894 fra
.me
.file
= LOCATE_standard___collection___array
;
4896 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMapValues___has_only
;
4897 fra
.me
.has_broke
= 0;
4898 fra
.me
.REG_size
= 4;
4899 fra
.me
.REG
[0] = NIT_NULL
;
4900 fra
.me
.REG
[1] = NIT_NULL
;
4901 fra
.me
.REG
[2] = NIT_NULL
;
4902 fra
.me
.REG
[3] = NIT_NULL
;
4905 /* ./../lib/standard//collection//array.nit:644 */
4906 fra
.me
.REG
[0] = CALL_standard___collection___array___ArrayMapValues___map(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4907 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
4908 if (UNTAG_Bool(REGB0
)) {
4910 nit_abort("Uninitialized attribute %s", "_items", LOCATE_standard___collection___array
, 644);
4912 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0]);
4913 /* ./../lib/standard//collection//array.nit:269 */
4915 /* ./../lib/standard//collection//array.nit:270 */
4916 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
4917 if (UNTAG_Bool(REGB1
)) {
4919 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 270);
4921 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
4922 /* ./../lib/standard//collection//array.nit:271 */
4923 fra
.me
.REG
[2] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[0]);
4924 /* ./../lib/standard//collection//array.nit:272 */
4926 /* ./../lib/standard//collection//array.nit:24 */
4927 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
4928 if (UNTAG_Bool(REGB1
)) {
4930 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
4932 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
4933 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
4934 if (UNTAG_Bool(REGB2
)) {
4936 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
4938 /* ./../lib/standard//kernel.nit:232 */
4939 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
4940 /* ./../lib/standard//collection//array.nit:272 */
4941 if (UNTAG_Bool(REGB1
)) {
4942 /* ./../lib/standard//collection//array.nit:273 */
4943 REGB1
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
4944 if (UNTAG_Bool(REGB1
)) {
4945 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 273);
4947 /* ./../lib/standard//collection//array.nit:718 */
4948 fra
.me
.REG
[3] = ((Nit_NativeArray
)fra
.me
.REG
[2])->val
[UNTAG_Int(REGB0
)];
4949 /* ./../lib/standard//collection//array.nit:644 */
4950 fra
.me
.REG
[3] = CALL_standard___collection___abstract_collection___Couple___second(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
4951 REGB1
= TAG_Bool(IS_EQUAL_ON(fra
.me
.REG
[1],fra
.me
.REG
[3]));
4952 if (UNTAG_Bool(REGB1
)) {
4954 REGB2
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
4955 if (UNTAG_Bool(REGB2
)) {
4956 REGB2
= TAG_Bool(false);
4959 REGB2
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[1]);
4963 REGB1
= TAG_Bool(!UNTAG_Bool(REGB1
));
4964 if (UNTAG_Bool(REGB1
)) {
4965 REGB1
= TAG_Bool(false);
4968 /* ./../lib/standard//collection//array.nit:274 */
4970 /* ./../lib/standard//kernel.nit:235 */
4971 REGB2
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB2
));
4972 /* ./../lib/standard//collection//array.nit:274 */
4975 /* ./../lib/standard//collection//array.nit:272 */
4980 /* ./../lib/standard//collection//array.nit:645 */
4981 REGB0
= TAG_Bool(true);
4985 stack_frame_head
= fra
.me
.prev
;
4988 val_t
standard___collection___array___ArrayMapValues___count(val_t p0
, val_t p1
){
4989 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
4995 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4996 fra
.me
.file
= LOCATE_standard___collection___array
;
4998 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMapValues___count
;
4999 fra
.me
.has_broke
= 0;
5000 fra
.me
.REG_size
= 4;
5001 fra
.me
.REG
[0] = NIT_NULL
;
5002 fra
.me
.REG
[1] = NIT_NULL
;
5003 fra
.me
.REG
[2] = NIT_NULL
;
5004 fra
.me
.REG
[3] = NIT_NULL
;
5007 /* ./../lib/standard//collection//array.nit:651 */
5009 /* ./../lib/standard//collection//array.nit:652 */
5010 fra
.me
.REG
[0] = CALL_standard___collection___array___ArrayMapValues___map(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
5011 REGB1
= TAG_Bool(ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
5012 if (UNTAG_Bool(REGB1
)) {
5014 nit_abort("Uninitialized attribute %s", "_items", LOCATE_standard___collection___array
, 652);
5016 fra
.me
.REG
[0] = ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0]);
5017 /* ./../lib/standard//collection//array.nit:269 */
5019 /* ./../lib/standard//collection//array.nit:270 */
5020 REGB2
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
5021 if (UNTAG_Bool(REGB2
)) {
5023 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 270);
5025 REGB2
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
5026 /* ./../lib/standard//collection//array.nit:271 */
5027 fra
.me
.REG
[2] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[0]);
5028 /* ./../lib/standard//collection//array.nit:272 */
5030 /* ./../lib/standard//collection//array.nit:24 */
5031 REGB2
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
5032 if (UNTAG_Bool(REGB2
)) {
5034 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
5036 REGB2
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
5037 REGB3
= TAG_Bool(VAL_ISA(REGB2
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1
), VTID_standard___kernel___Comparable___OTHER(REGB1
))) /*cast OTHER*/;
5038 if (UNTAG_Bool(REGB3
)) {
5040 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
5042 /* ./../lib/standard//kernel.nit:232 */
5043 REGB2
= TAG_Bool(UNTAG_Int(REGB1
)<UNTAG_Int(REGB2
));
5044 /* ./../lib/standard//collection//array.nit:272 */
5045 if (UNTAG_Bool(REGB2
)) {
5046 /* ./../lib/standard//collection//array.nit:273 */
5047 REGB2
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
5048 if (UNTAG_Bool(REGB2
)) {
5049 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 273);
5051 /* ./../lib/standard//collection//array.nit:718 */
5052 fra
.me
.REG
[3] = ((Nit_NativeArray
)fra
.me
.REG
[2])->val
[UNTAG_Int(REGB1
)];
5053 /* ./../lib/standard//collection//array.nit:652 */
5054 fra
.me
.REG
[3] = CALL_standard___collection___abstract_collection___Couple___second(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
5055 REGB2
= TAG_Bool(IS_EQUAL_ON(fra
.me
.REG
[1],fra
.me
.REG
[3]));
5056 if (UNTAG_Bool(REGB2
)) {
5058 REGB3
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
5059 if (UNTAG_Bool(REGB3
)) {
5060 REGB3
= TAG_Bool(false);
5063 REGB3
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[1]);
5067 if (UNTAG_Bool(REGB2
)) {
5069 /* ./../lib/standard//kernel.nit:235 */
5070 REGB2
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB2
));
5071 /* ./../lib/standard//collection//array.nit:652 */
5074 /* ./../lib/standard//collection//array.nit:274 */
5076 /* ./../lib/standard//kernel.nit:235 */
5077 REGB2
= TAG_Int(UNTAG_Int(REGB1
)+UNTAG_Int(REGB2
));
5078 /* ./../lib/standard//collection//array.nit:274 */
5081 /* ./../lib/standard//collection//array.nit:272 */
5086 /* ./../lib/standard//collection//array.nit:653 */
5089 stack_frame_head
= fra
.me
.prev
;
5092 void standard___collection___array___ArrayMapValues___clear(val_t p0
){
5093 struct {struct stack_frame_t me
;} fra
;
5095 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
5096 fra
.me
.file
= LOCATE_standard___collection___array
;
5098 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMapValues___clear
;
5099 fra
.me
.has_broke
= 0;
5100 fra
.me
.REG_size
= 1;
5101 fra
.me
.REG
[0] = NIT_NULL
;
5103 /* ./../lib/standard//collection//array.nit:656 */
5104 fra
.me
.REG
[0] = CALL_standard___collection___array___ArrayMapValues___map(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
5105 CALL_standard___collection___abstract_collection___Map___clear(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
5106 stack_frame_head
= fra
.me
.prev
;
5109 void standard___collection___array___ArrayMapValues___remove(val_t p0
, val_t p1
){
5110 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
5116 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
5117 fra
.me
.file
= LOCATE_standard___collection___array
;
5119 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMapValues___remove
;
5120 fra
.me
.has_broke
= 0;
5121 fra
.me
.REG_size
= 3;
5122 fra
.me
.REG
[0] = NIT_NULL
;
5123 fra
.me
.REG
[1] = NIT_NULL
;
5124 fra
.me
.REG
[2] = NIT_NULL
;
5127 /* ./../lib/standard//collection//array.nit:660 */
5128 fra
.me
.REG
[0] = CALL_standard___collection___array___ArrayMapValues___map(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
5129 /* ./../lib/standard//collection//array.nit:661 */
5130 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
5131 if (UNTAG_Bool(REGB0
)) {
5133 nit_abort("Uninitialized attribute %s", "_items", LOCATE_standard___collection___array
, 661);
5135 fra
.me
.REG
[2] = ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0]);
5136 /* ./../lib/standard//collection//array.nit:24 */
5137 REGB0
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
5138 if (UNTAG_Bool(REGB0
)) {
5140 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
5142 REGB0
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2]);
5143 /* ./../lib/standard//collection//array.nit:661 */
5145 /* ./../lib/standard//kernel.nit:237 */
5146 REGB1
= TAG_Int(UNTAG_Int(REGB0
)-UNTAG_Int(REGB1
));
5147 /* ./../lib/standard//collection//array.nit:662 */
5150 REGB2
= TAG_Bool(VAL_ISA(REGB0
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1
), VTID_standard___kernel___Comparable___OTHER(REGB1
))) /*cast OTHER*/;
5151 if (UNTAG_Bool(REGB2
)) {
5153 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
5155 /* ./../lib/standard//kernel.nit:233 */
5156 REGB0
= TAG_Bool(UNTAG_Int(REGB1
)>=UNTAG_Int(REGB0
));
5157 /* ./../lib/standard//collection//array.nit:662 */
5158 if (UNTAG_Bool(REGB0
)) {
5159 /* ./../lib/standard//collection//array.nit:663 */
5160 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
5161 if (UNTAG_Bool(REGB0
)) {
5163 nit_abort("Uninitialized attribute %s", "_items", LOCATE_standard___collection___array
, 663);
5165 fra
.me
.REG
[2] = ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0]);
5166 /* ./../lib/standard//collection//array.nit:278 */
5168 /* ./../lib/standard//collection//array.nit:280 */
5170 REGB3
= TAG_Bool(VAL_ISA(REGB2
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
5171 if (UNTAG_Bool(REGB3
)) {
5173 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
5175 /* ./../lib/standard//kernel.nit:233 */
5176 REGB2
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB2
));
5177 /* ./../lib/standard//collection//array.nit:280 */
5178 if (UNTAG_Bool(REGB2
)) {
5179 REGB2
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
5180 if (UNTAG_Bool(REGB2
)) {
5182 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 280);
5184 REGB2
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2]);
5185 REGB3
= TAG_Bool(VAL_ISA(REGB2
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
5186 if (UNTAG_Bool(REGB3
)) {
5188 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
5190 /* ./../lib/standard//kernel.nit:232 */
5191 REGB2
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB2
));
5193 /* ./../lib/standard//collection//array.nit:280 */
5194 REGB3
= TAG_Bool(false);
5197 if (UNTAG_Bool(REGB2
)) {
5199 nit_abort("Assert %s failed", "'index'", LOCATE_standard___collection___array
, 280);
5201 /* ./../lib/standard//collection//array.nit:281 */
5202 fra
.me
.REG
[2] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[2]);
5203 REGB2
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
5204 if (UNTAG_Bool(REGB2
)) {
5205 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 281);
5207 /* ./../lib/standard//collection//array.nit:718 */
5208 fra
.me
.REG
[2] = ((Nit_NativeArray
)fra
.me
.REG
[2])->val
[UNTAG_Int(REGB0
)];
5209 /* ./../lib/standard//collection//array.nit:281 */
5212 /* ./../lib/standard//collection//array.nit:663 */
5213 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
5214 if (UNTAG_Bool(REGB0
)) {
5215 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 663);
5217 fra
.me
.REG
[2] = CALL_standard___collection___abstract_collection___Couple___second(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
5218 REGB0
= TAG_Bool(IS_EQUAL_ON(fra
.me
.REG
[1],fra
.me
.REG
[2]));
5219 if (UNTAG_Bool(REGB0
)) {
5221 REGB2
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
5222 if (UNTAG_Bool(REGB2
)) {
5223 REGB2
= TAG_Bool(false);
5226 REGB2
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
5230 if (UNTAG_Bool(REGB0
)) {
5231 /* ./../lib/standard//collection//array.nit:664 */
5232 CALL_standard___collection___array___ArrayMap___remove_at_index(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB1
);
5233 /* ./../lib/standard//collection//array.nit:665 */
5236 /* ./../lib/standard//collection//array.nit:667 */
5238 /* ./../lib/standard//kernel.nit:237 */
5239 REGB0
= TAG_Int(UNTAG_Int(REGB1
)-UNTAG_Int(REGB0
));
5240 /* ./../lib/standard//collection//array.nit:667 */
5243 /* ./../lib/standard//collection//array.nit:662 */
5249 stack_frame_head
= fra
.me
.prev
;
5252 void standard___collection___array___ArrayMapValues___remove_all(val_t p0
, val_t p1
){
5253 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
5259 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
5260 fra
.me
.file
= LOCATE_standard___collection___array
;
5262 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMapValues___remove_all
;
5263 fra
.me
.has_broke
= 0;
5264 fra
.me
.REG_size
= 3;
5265 fra
.me
.REG
[0] = NIT_NULL
;
5266 fra
.me
.REG
[1] = NIT_NULL
;
5267 fra
.me
.REG
[2] = NIT_NULL
;
5270 /* ./../lib/standard//collection//array.nit:673 */
5271 fra
.me
.REG
[0] = CALL_standard___collection___array___ArrayMapValues___map(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
5272 /* ./../lib/standard//collection//array.nit:674 */
5273 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
5274 if (UNTAG_Bool(REGB0
)) {
5276 nit_abort("Uninitialized attribute %s", "_items", LOCATE_standard___collection___array
, 674);
5278 fra
.me
.REG
[2] = ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0]);
5279 /* ./../lib/standard//collection//array.nit:24 */
5280 REGB0
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
5281 if (UNTAG_Bool(REGB0
)) {
5283 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
5285 REGB0
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2]);
5286 /* ./../lib/standard//collection//array.nit:674 */
5288 /* ./../lib/standard//kernel.nit:237 */
5289 REGB1
= TAG_Int(UNTAG_Int(REGB0
)-UNTAG_Int(REGB1
));
5290 /* ./../lib/standard//collection//array.nit:675 */
5293 REGB2
= TAG_Bool(VAL_ISA(REGB0
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1
), VTID_standard___kernel___Comparable___OTHER(REGB1
))) /*cast OTHER*/;
5294 if (UNTAG_Bool(REGB2
)) {
5296 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
5298 /* ./../lib/standard//kernel.nit:233 */
5299 REGB0
= TAG_Bool(UNTAG_Int(REGB1
)>=UNTAG_Int(REGB0
));
5300 /* ./../lib/standard//collection//array.nit:675 */
5301 if (UNTAG_Bool(REGB0
)) {
5302 /* ./../lib/standard//collection//array.nit:676 */
5303 REGB0
= TAG_Bool(ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
5304 if (UNTAG_Bool(REGB0
)) {
5306 nit_abort("Uninitialized attribute %s", "_items", LOCATE_standard___collection___array
, 676);
5308 fra
.me
.REG
[2] = ATTR_standard___collection___array___ArrayMap____items(fra
.me
.REG
[0]);
5309 /* ./../lib/standard//collection//array.nit:278 */
5311 /* ./../lib/standard//collection//array.nit:280 */
5313 REGB3
= TAG_Bool(VAL_ISA(REGB2
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
5314 if (UNTAG_Bool(REGB3
)) {
5316 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
5318 /* ./../lib/standard//kernel.nit:233 */
5319 REGB2
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB2
));
5320 /* ./../lib/standard//collection//array.nit:280 */
5321 if (UNTAG_Bool(REGB2
)) {
5322 REGB2
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
5323 if (UNTAG_Bool(REGB2
)) {
5325 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 280);
5327 REGB2
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2]);
5328 REGB3
= TAG_Bool(VAL_ISA(REGB2
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
5329 if (UNTAG_Bool(REGB3
)) {
5331 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
5333 /* ./../lib/standard//kernel.nit:232 */
5334 REGB2
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB2
));
5336 /* ./../lib/standard//collection//array.nit:280 */
5337 REGB3
= TAG_Bool(false);
5340 if (UNTAG_Bool(REGB2
)) {
5342 nit_abort("Assert %s failed", "'index'", LOCATE_standard___collection___array
, 280);
5344 /* ./../lib/standard//collection//array.nit:281 */
5345 fra
.me
.REG
[2] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[2]);
5346 REGB2
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
5347 if (UNTAG_Bool(REGB2
)) {
5348 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 281);
5350 /* ./../lib/standard//collection//array.nit:718 */
5351 fra
.me
.REG
[2] = ((Nit_NativeArray
)fra
.me
.REG
[2])->val
[UNTAG_Int(REGB0
)];
5352 /* ./../lib/standard//collection//array.nit:281 */
5355 /* ./../lib/standard//collection//array.nit:676 */
5356 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
5357 if (UNTAG_Bool(REGB0
)) {
5358 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 676);
5360 fra
.me
.REG
[2] = CALL_standard___collection___abstract_collection___Couple___second(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
5361 REGB0
= TAG_Bool(IS_EQUAL_ON(fra
.me
.REG
[1],fra
.me
.REG
[2]));
5362 if (UNTAG_Bool(REGB0
)) {
5364 REGB2
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
5365 if (UNTAG_Bool(REGB2
)) {
5366 REGB2
= TAG_Bool(false);
5369 REGB2
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
5373 if (UNTAG_Bool(REGB0
)) {
5374 /* ./../lib/standard//collection//array.nit:677 */
5375 CALL_standard___collection___array___ArrayMap___remove_at_index(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB1
);
5377 /* ./../lib/standard//collection//array.nit:679 */
5379 /* ./../lib/standard//kernel.nit:237 */
5380 REGB0
= TAG_Int(UNTAG_Int(REGB1
)-UNTAG_Int(REGB0
));
5381 /* ./../lib/standard//collection//array.nit:679 */
5384 /* ./../lib/standard//collection//array.nit:675 */
5389 stack_frame_head
= fra
.me
.prev
;
5392 void standard___collection___array___ArrayMapValues___init(val_t p0
, val_t p1
, int* init_table
){
5393 int itpos12
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_standard___collection___array___ArrayMapValues
].i
;
5394 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
5396 if (init_table
[itpos12
]) return;
5397 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
5398 fra
.me
.file
= LOCATE_standard___collection___array
;
5400 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayMapValues___init
;
5401 fra
.me
.has_broke
= 0;
5402 fra
.me
.REG_size
= 2;
5403 fra
.me
.REG
[0] = NIT_NULL
;
5404 fra
.me
.REG
[1] = NIT_NULL
;
5407 ATTR_standard___collection___array___ArrayMapValues_____atmap(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
5408 stack_frame_head
= fra
.me
.prev
;
5409 init_table
[itpos12
] = 1;
5412 val_t
standard___collection___array___Iterator___to_a(val_t p0
){
5413 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
5416 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
5417 fra
.me
.file
= LOCATE_standard___collection___array
;
5419 fra
.me
.meth
= LOCATE_standard___collection___array___Iterator___to_a
;
5420 fra
.me
.has_broke
= 0;
5421 fra
.me
.REG_size
= 3;
5422 fra
.me
.REG
[0] = NIT_NULL
;
5423 fra
.me
.REG
[1] = NIT_NULL
;
5424 fra
.me
.REG
[2] = NIT_NULL
;
5426 /* ./../lib/standard//collection//array.nit:691 */
5427 fra
.me
.REG
[1] = NEW_Array_standard___collection___array___Array___init();
5428 /* ./../lib/standard//collection//array.nit:692 */
5430 REGB0
= CALL_standard___collection___abstract_collection___Iterator___is_ok(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
5431 if (UNTAG_Bool(REGB0
)) {
5432 /* ./../lib/standard//collection//array.nit:693 */
5433 fra
.me
.REG
[2] = CALL_standard___collection___abstract_collection___Iterator___item(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
5434 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
5435 /* ./../lib/standard//collection//array.nit:694 */
5436 CALL_standard___collection___abstract_collection___Iterator___next(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
5438 /* ./../lib/standard//collection//array.nit:692 */
5443 /* ./../lib/standard//collection//array.nit:696 */
5446 stack_frame_head
= fra
.me
.prev
;
5447 return fra
.me
.REG
[1];
5449 val_t
standard___collection___array___Collection___to_a(val_t p0
){
5450 struct {struct stack_frame_t me
;} fra
;
5452 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
5453 fra
.me
.file
= LOCATE_standard___collection___array
;
5455 fra
.me
.meth
= LOCATE_standard___collection___array___Collection___to_a
;
5456 fra
.me
.has_broke
= 0;
5457 fra
.me
.REG_size
= 1;
5458 fra
.me
.REG
[0] = NIT_NULL
;
5460 /* ./../lib/standard//collection//array.nit:704 */
5461 fra
.me
.REG
[0] = CALL_standard___collection___abstract_collection___Collection___iterator(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
5462 fra
.me
.REG
[0] = CALL_standard___collection___array___Iterator___to_a(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
5465 stack_frame_head
= fra
.me
.prev
;
5466 return fra
.me
.REG
[0];
5468 val_t
standard___collection___array___ArrayCapable___calloc_array(val_t p0
, val_t p1
){
5469 struct {struct stack_frame_t me
;} fra
;
5472 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
5473 fra
.me
.file
= LOCATE_standard___collection___array
;
5475 fra
.me
.meth
= LOCATE_standard___collection___array___ArrayCapable___calloc_array
;
5476 fra
.me
.has_broke
= 0;
5477 fra
.me
.REG_size
= 1;
5478 fra
.me
.REG
[0] = NIT_NULL
;
5481 /* ./../lib/standard//collection//array.nit:712 */
5482 fra
.me
.REG
[0] = NEW_NativeArray(UNTAG_Int(REGB0
), sizeof(val_t
));
5483 stack_frame_head
= fra
.me
.prev
;
5484 return fra
.me
.REG
[0];
5486 val_t
standard___collection___array___NativeArray_____bra(val_t p0
, val_t p1
){
5487 struct {struct stack_frame_t me
;} fra
;
5490 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
5491 fra
.me
.file
= LOCATE_standard___collection___array
;
5493 fra
.me
.meth
= LOCATE_standard___collection___array___NativeArray_____bra
;
5494 fra
.me
.has_broke
= 0;
5495 fra
.me
.REG_size
= 1;
5496 fra
.me
.REG
[0] = NIT_NULL
;
5499 /* ./../lib/standard//collection//array.nit:718 */
5500 fra
.me
.REG
[0] = ((Nit_NativeArray
)fra
.me
.REG
[0])->val
[UNTAG_Int(REGB0
)];
5501 stack_frame_head
= fra
.me
.prev
;
5502 return fra
.me
.REG
[0];
5504 void standard___collection___array___NativeArray_____braeq(val_t p0
, val_t p1
, val_t p2
){
5505 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
5508 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
5509 fra
.me
.file
= LOCATE_standard___collection___array
;
5511 fra
.me
.meth
= LOCATE_standard___collection___array___NativeArray_____braeq
;
5512 fra
.me
.has_broke
= 0;
5513 fra
.me
.REG_size
= 2;
5514 fra
.me
.REG
[0] = NIT_NULL
;
5515 fra
.me
.REG
[1] = NIT_NULL
;
5519 /* ./../lib/standard//collection//array.nit:719 */
5520 ((Nit_NativeArray
)fra
.me
.REG
[0])->val
[UNTAG_Int(REGB0
)]=fra
.me
.REG
[1];
5521 stack_frame_head
= fra
.me
.prev
;
5524 void standard___collection___array___NativeArray___copy_to(val_t p0
, val_t p1
, val_t p2
){
5525 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
5528 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
5529 fra
.me
.file
= LOCATE_standard___collection___array
;
5531 fra
.me
.meth
= LOCATE_standard___collection___array___NativeArray___copy_to
;
5532 fra
.me
.has_broke
= 0;
5533 fra
.me
.REG_size
= 2;
5534 fra
.me
.REG
[0] = NIT_NULL
;
5535 fra
.me
.REG
[1] = NIT_NULL
;
5539 /* ./../lib/standard//collection//array.nit:720 */
5540 (void)memcpy(((Nit_NativeArray
)fra
.me
.REG
[1])->val
, ((Nit_NativeArray
)fra
.me
.REG
[0])->val
, UNTAG_Int(REGB0
)*sizeof(val_t
));
5541 stack_frame_head
= fra
.me
.prev
;