1 /* This C file is generated by NIT to compile module array. */
2 #include "array._sep.h"
3 val_t
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_array
;
10 fra
.me
.meth
= LOCATE_array___AbstractArrayRead___length
;
13 fra
.me
.REG
[0] = NIT_NULL
;
15 /* ./../lib/standard//collection//array.nit:23 */
16 REGB0
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
17 if (UNTAG_Bool(REGB0
)) {
19 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 23);
21 REGB0
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0]);
22 stack_frame_head
= fra
.me
.prev
;
25 val_t
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_array
;
34 fra
.me
.meth
= LOCATE_array___AbstractArrayRead___is_empty
;
37 fra
.me
.REG
[0] = NIT_NULL
;
39 /* ./../lib/standard//collection//array.nit:26 */
40 REGB0
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
41 if (UNTAG_Bool(REGB0
)) {
43 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 26);
45 REGB0
= ATTR_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:207 */
51 REGB1
= TAG_Bool((REGB0
)==(REGB1
));
52 /* ./../lib/standard//collection//array.nit:26 */
57 stack_frame_head
= fra
.me
.prev
;
60 val_t
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_array
;
70 fra
.me
.meth
= LOCATE_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:23 */
81 REGB1
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
82 if (UNTAG_Bool(REGB1
)) {
84 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 23);
86 REGB1
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0]);
87 /* ./../lib/standard//collection//array.nit:32 */
89 /* ./../lib/standard//kernel.nit:212 */
90 REGB2
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
91 /* ./../lib/standard//collection//array.nit:32 */
92 if (UNTAG_Bool(REGB2
)) {
93 /* ./../lib/standard//collection//array.nit:33 */
94 fra
.me
.REG
[2] = CALL_abstract_collection___MapRead_____bra(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
95 REGB2
= TAG_Bool(IS_EQUAL_NN(fra
.me
.REG
[2],fra
.me
.REG
[1]));
96 if (UNTAG_Bool(REGB2
)) {
98 REGB3
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
99 if (UNTAG_Bool(REGB3
)) {
100 REGB3
= TAG_Bool(false);
103 REGB3
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
107 if (UNTAG_Bool(REGB2
)) {
108 REGB2
= TAG_Bool(true);
111 /* ./../lib/standard//collection//array.nit:34 */
113 /* ./../lib/standard//kernel.nit:215 */
114 REGB3
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB3
));
115 /* ./../lib/standard//collection//array.nit:34 */
118 /* ./../lib/standard//collection//array.nit:32 */
123 /* ./../lib/standard//collection//array.nit:36 */
124 REGB0
= TAG_Bool(false);
128 stack_frame_head
= fra
.me
.prev
;
131 val_t
array___AbstractArrayRead___has_only(val_t p0
, val_t p1
){
132 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
138 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
139 fra
.me
.file
= LOCATE_array
;
141 fra
.me
.meth
= LOCATE_array___AbstractArrayRead___has_only
;
142 fra
.me
.has_broke
= 0;
144 fra
.me
.REG
[0] = NIT_NULL
;
145 fra
.me
.REG
[1] = NIT_NULL
;
146 fra
.me
.REG
[2] = NIT_NULL
;
149 /* ./../lib/standard//collection//array.nit:41 */
151 /* ./../lib/standard//collection//array.nit:23 */
152 REGB1
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
153 if (UNTAG_Bool(REGB1
)) {
155 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 23);
157 REGB1
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0]);
158 /* ./../lib/standard//collection//array.nit:43 */
160 /* ./../lib/standard//kernel.nit:212 */
161 REGB2
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
162 /* ./../lib/standard//collection//array.nit:43 */
163 if (UNTAG_Bool(REGB2
)) {
164 /* ./../lib/standard//collection//array.nit:44 */
165 fra
.me
.REG
[2] = CALL_abstract_collection___MapRead_____bra(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
166 REGB2
= TAG_Bool(IS_EQUAL_NN(fra
.me
.REG
[2],fra
.me
.REG
[1]));
167 if (UNTAG_Bool(REGB2
)) {
169 REGB3
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
170 if (UNTAG_Bool(REGB3
)) {
171 REGB3
= TAG_Bool(false);
174 REGB3
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
178 REGB2
= TAG_Bool(!UNTAG_Bool(REGB2
));
179 if (UNTAG_Bool(REGB2
)) {
180 REGB2
= TAG_Bool(false);
183 /* ./../lib/standard//collection//array.nit:45 */
185 /* ./../lib/standard//kernel.nit:215 */
186 REGB3
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB3
));
187 /* ./../lib/standard//collection//array.nit:45 */
190 /* ./../lib/standard//collection//array.nit:43 */
195 /* ./../lib/standard//collection//array.nit:47 */
196 REGB0
= TAG_Bool(true);
200 stack_frame_head
= fra
.me
.prev
;
203 val_t
array___AbstractArrayRead___has_key(val_t p0
, val_t p1
){
204 struct {struct stack_frame_t me
;} fra
;
208 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
209 fra
.me
.file
= LOCATE_array
;
211 fra
.me
.meth
= LOCATE_array___AbstractArrayRead___has_key
;
212 fra
.me
.has_broke
= 0;
214 fra
.me
.REG
[0] = NIT_NULL
;
217 /* ./../lib/standard//collection//array.nit:50 */
219 /* ./../lib/standard//kernel.nit:213 */
220 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB1
));
221 /* ./../lib/standard//collection//array.nit:50 */
222 if (UNTAG_Bool(REGB1
)) {
223 /* ./../lib/standard//collection//array.nit:23 */
224 REGB1
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
225 if (UNTAG_Bool(REGB1
)) {
227 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 23);
229 REGB1
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0]);
230 /* ./../lib/standard//kernel.nit:212 */
231 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
233 /* ./../lib/standard//collection//array.nit:50 */
234 REGB0
= TAG_Bool(false);
239 stack_frame_head
= fra
.me
.prev
;
242 val_t
array___AbstractArrayRead___count(val_t p0
, val_t p1
){
243 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
250 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
251 fra
.me
.file
= LOCATE_array
;
253 fra
.me
.meth
= LOCATE_array___AbstractArrayRead___count
;
254 fra
.me
.has_broke
= 0;
256 fra
.me
.REG
[0] = NIT_NULL
;
257 fra
.me
.REG
[1] = NIT_NULL
;
258 fra
.me
.REG
[2] = NIT_NULL
;
261 /* ./../lib/standard//collection//array.nit:54 */
263 /* ./../lib/standard//collection//array.nit:55 */
265 /* ./../lib/standard//collection//array.nit:23 */
266 REGB2
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
267 if (UNTAG_Bool(REGB2
)) {
269 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 23);
271 REGB2
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0]);
272 /* ./../lib/standard//collection//array.nit:57 */
274 /* ./../lib/standard//kernel.nit:212 */
275 REGB3
= TAG_Bool(UNTAG_Int(REGB1
)<UNTAG_Int(REGB2
));
276 /* ./../lib/standard//collection//array.nit:57 */
277 if (UNTAG_Bool(REGB3
)) {
278 /* ./../lib/standard//collection//array.nit:58 */
279 fra
.me
.REG
[2] = CALL_abstract_collection___MapRead_____bra(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB1
);
280 REGB3
= TAG_Bool(IS_EQUAL_NN(fra
.me
.REG
[2],fra
.me
.REG
[1]));
281 if (UNTAG_Bool(REGB3
)) {
283 REGB4
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
284 if (UNTAG_Bool(REGB4
)) {
285 REGB4
= TAG_Bool(false);
288 REGB4
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
292 if (UNTAG_Bool(REGB3
)) {
294 /* ./../lib/standard//kernel.nit:215 */
295 REGB3
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB3
));
296 /* ./../lib/standard//collection//array.nit:58 */
299 /* ./../lib/standard//collection//array.nit:59 */
301 /* ./../lib/standard//kernel.nit:215 */
302 REGB3
= TAG_Int(UNTAG_Int(REGB1
)+UNTAG_Int(REGB3
));
303 /* ./../lib/standard//collection//array.nit:59 */
306 /* ./../lib/standard//collection//array.nit:57 */
311 /* ./../lib/standard//collection//array.nit:61 */
314 stack_frame_head
= fra
.me
.prev
;
317 val_t
array___AbstractArrayRead___index_of(val_t p0
, val_t p1
){
318 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
321 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
322 fra
.me
.file
= LOCATE_array
;
324 fra
.me
.meth
= LOCATE_array___AbstractArrayRead___index_of
;
325 fra
.me
.has_broke
= 0;
327 fra
.me
.REG
[0] = NIT_NULL
;
328 fra
.me
.REG
[1] = NIT_NULL
;
331 /* ./../lib/standard//collection//array.nit:64 */
333 REGB0
= CALL_array___AbstractArrayRead___index_of_from(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], REGB0
);
336 stack_frame_head
= fra
.me
.prev
;
339 val_t
array___AbstractArrayRead___last_index_of(val_t p0
, val_t p1
){
340 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
344 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
345 fra
.me
.file
= LOCATE_array
;
347 fra
.me
.meth
= LOCATE_array___AbstractArrayRead___last_index_of
;
348 fra
.me
.has_broke
= 0;
350 fra
.me
.REG
[0] = NIT_NULL
;
351 fra
.me
.REG
[1] = NIT_NULL
;
354 /* ./../lib/standard//collection//array.nit:23 */
355 REGB0
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
356 if (UNTAG_Bool(REGB0
)) {
358 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 23);
360 REGB0
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0]);
361 /* ./../lib/standard//collection//array.nit:66 */
363 /* ./../lib/standard//kernel.nit:217 */
364 REGB1
= TAG_Int(UNTAG_Int(REGB0
)-UNTAG_Int(REGB1
));
365 /* ./../lib/standard//collection//array.nit:66 */
366 REGB1
= CALL_array___AbstractArrayRead___last_index_of_from(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], REGB1
);
369 stack_frame_head
= fra
.me
.prev
;
372 val_t
array___AbstractArrayRead___index_of_from(val_t p0
, val_t p1
, val_t p2
){
373 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
379 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
380 fra
.me
.file
= LOCATE_array
;
382 fra
.me
.meth
= LOCATE_array___AbstractArrayRead___index_of_from
;
383 fra
.me
.has_broke
= 0;
385 fra
.me
.REG
[0] = NIT_NULL
;
386 fra
.me
.REG
[1] = NIT_NULL
;
387 fra
.me
.REG
[2] = NIT_NULL
;
391 /* ./../lib/standard//collection//array.nit:23 */
392 REGB1
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
393 if (UNTAG_Bool(REGB1
)) {
395 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 23);
397 REGB1
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0]);
398 /* ./../lib/standard//collection//array.nit:72 */
400 /* ./../lib/standard//kernel.nit:212 */
401 REGB2
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
402 /* ./../lib/standard//collection//array.nit:72 */
403 if (UNTAG_Bool(REGB2
)) {
404 /* ./../lib/standard//collection//array.nit:73 */
405 fra
.me
.REG
[2] = CALL_abstract_collection___MapRead_____bra(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
406 REGB2
= TAG_Bool(IS_EQUAL_NN(fra
.me
.REG
[2],fra
.me
.REG
[1]));
407 if (UNTAG_Bool(REGB2
)) {
409 REGB3
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
410 if (UNTAG_Bool(REGB3
)) {
411 REGB3
= TAG_Bool(false);
414 REGB3
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
418 if (UNTAG_Bool(REGB2
)) {
419 /* ./../lib/standard//collection//array.nit:74 */
423 /* ./../lib/standard//collection//array.nit:76 */
425 /* ./../lib/standard//kernel.nit:215 */
426 REGB3
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB3
));
427 /* ./../lib/standard//collection//array.nit:76 */
430 /* ./../lib/standard//collection//array.nit:72 */
435 /* ./../lib/standard//collection//array.nit:78 */
437 /* ./../lib/standard//kernel.nit:216 */
438 REGB0
= TAG_Int(-UNTAG_Int(REGB0
));
439 /* ./../lib/standard//collection//array.nit:78 */
443 stack_frame_head
= fra
.me
.prev
;
446 val_t
array___AbstractArrayRead___last_index_of_from(val_t p0
, val_t p1
, val_t p2
){
447 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
452 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
453 fra
.me
.file
= LOCATE_array
;
455 fra
.me
.meth
= LOCATE_array___AbstractArrayRead___last_index_of_from
;
456 fra
.me
.has_broke
= 0;
458 fra
.me
.REG
[0] = NIT_NULL
;
459 fra
.me
.REG
[1] = NIT_NULL
;
460 fra
.me
.REG
[2] = NIT_NULL
;
464 /* ./../lib/standard//collection//array.nit:84 */
467 /* ./../lib/standard//kernel.nit:213 */
468 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB1
));
469 /* ./../lib/standard//collection//array.nit:84 */
470 if (UNTAG_Bool(REGB1
)) {
471 /* ./../lib/standard//collection//array.nit:85 */
472 fra
.me
.REG
[2] = CALL_abstract_collection___MapRead_____bra(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
473 REGB1
= TAG_Bool(IS_EQUAL_NN(fra
.me
.REG
[2],fra
.me
.REG
[1]));
474 if (UNTAG_Bool(REGB1
)) {
476 REGB2
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
477 if (UNTAG_Bool(REGB2
)) {
478 REGB2
= TAG_Bool(false);
481 REGB2
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
485 if (UNTAG_Bool(REGB1
)) {
486 /* ./../lib/standard//collection//array.nit:86 */
490 /* ./../lib/standard//collection//array.nit:88 */
492 /* ./../lib/standard//kernel.nit:217 */
493 REGB2
= TAG_Int(UNTAG_Int(REGB0
)-UNTAG_Int(REGB2
));
494 /* ./../lib/standard//collection//array.nit:88 */
498 /* ./../lib/standard//collection//array.nit:84 */
503 /* ./../lib/standard//collection//array.nit:91 */
505 /* ./../lib/standard//kernel.nit:216 */
506 REGB0
= TAG_Int(-UNTAG_Int(REGB0
));
507 /* ./../lib/standard//collection//array.nit:91 */
511 stack_frame_head
= fra
.me
.prev
;
514 val_t
array___AbstractArrayRead___reversed(val_t p0
){
515 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
519 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
520 fra
.me
.file
= LOCATE_array
;
522 fra
.me
.meth
= LOCATE_array___AbstractArrayRead___reversed
;
523 fra
.me
.has_broke
= 0;
525 fra
.me
.REG
[0] = NIT_NULL
;
526 fra
.me
.REG
[1] = NIT_NULL
;
527 fra
.me
.REG
[2] = NIT_NULL
;
529 /* ./../lib/standard//collection//array.nit:96 */
530 REGB0
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
531 if (UNTAG_Bool(REGB0
)) {
533 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 96);
535 REGB0
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0]);
536 /* ./../lib/standard//collection//array.nit:97 */
537 fra
.me
.REG
[1] = NEW_Array_array___Array___with_capacity(REGB0
);
538 /* ./../lib/standard//collection//array.nit:98 */
541 /* ./../lib/standard//kernel.nit:214 */
542 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>UNTAG_Int(REGB1
));
543 /* ./../lib/standard//collection//array.nit:98 */
544 if (UNTAG_Bool(REGB1
)) {
545 /* ./../lib/standard//collection//array.nit:99 */
547 /* ./../lib/standard//kernel.nit:217 */
548 REGB1
= TAG_Int(UNTAG_Int(REGB0
)-UNTAG_Int(REGB1
));
549 /* ./../lib/standard//collection//array.nit:99 */
551 /* ./../lib/standard//collection//array.nit:100 */
552 fra
.me
.REG
[2] = CALL_abstract_collection___MapRead_____bra(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
553 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
555 /* ./../lib/standard//collection//array.nit:98 */
560 /* ./../lib/standard//collection//array.nit:102 */
563 stack_frame_head
= fra
.me
.prev
;
564 return fra
.me
.REG
[1];
566 void array___AbstractArrayRead___copy_to(val_t p0
, val_t p1
, val_t p2
, val_t p3
, val_t p4
){
567 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
574 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
575 fra
.me
.file
= LOCATE_array
;
577 fra
.me
.meth
= LOCATE_array___AbstractArrayRead___copy_to
;
578 fra
.me
.has_broke
= 0;
580 fra
.me
.REG
[0] = NIT_NULL
;
581 fra
.me
.REG
[1] = NIT_NULL
;
582 fra
.me
.REG
[2] = NIT_NULL
;
588 /* ./../lib/standard//collection//array.nit:109 */
591 /* ./../lib/standard//kernel.nit:214 */
592 REGB3
= TAG_Bool(UNTAG_Int(REGB1
)>UNTAG_Int(REGB3
));
593 /* ./../lib/standard//collection//array.nit:109 */
594 if (UNTAG_Bool(REGB3
)) {
595 /* ./../lib/standard//collection//array.nit:110 */
597 /* ./../lib/standard//kernel.nit:217 */
598 REGB3
= TAG_Int(UNTAG_Int(REGB1
)-UNTAG_Int(REGB3
));
599 /* ./../lib/standard//collection//array.nit:110 */
601 /* ./../lib/standard//kernel.nit:215 */
602 REGB3
= TAG_Int(UNTAG_Int(REGB2
)+UNTAG_Int(REGB1
));
603 REGB4
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
604 /* ./../lib/standard//collection//array.nit:111 */
605 fra
.me
.REG
[2] = CALL_abstract_collection___MapRead_____bra(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB4
);
606 CALL_abstract_collection___Map_____braeq(fra
.me
.REG
[1])(fra
.me
.REG
[1], REGB3
, fra
.me
.REG
[2]);
608 /* ./../lib/standard//collection//array.nit:109 */
613 stack_frame_head
= fra
.me
.prev
;
616 void array___AbstractArrayRead___output(val_t p0
){
617 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
623 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
624 fra
.me
.file
= LOCATE_array
;
626 fra
.me
.meth
= LOCATE_array___AbstractArrayRead___output
;
627 fra
.me
.has_broke
= 0;
629 fra
.me
.REG
[0] = NIT_NULL
;
630 fra
.me
.REG
[1] = NIT_NULL
;
632 /* ./../lib/standard//collection//array.nit:117 */
634 /* ./../lib/standard//collection//array.nit:23 */
635 REGB1
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
636 if (UNTAG_Bool(REGB1
)) {
638 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 23);
640 REGB1
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0]);
641 /* ./../lib/standard//collection//array.nit:119 */
643 /* ./../lib/standard//kernel.nit:212 */
644 REGB2
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
645 /* ./../lib/standard//collection//array.nit:119 */
646 if (UNTAG_Bool(REGB2
)) {
647 /* ./../lib/standard//collection//array.nit:120 */
648 fra
.me
.REG
[1] = CALL_abstract_collection___MapRead_____bra(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
649 /* ./../lib/standard//collection//array.nit:121 */
650 REGB2
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
651 if (UNTAG_Bool(REGB2
)) {
653 REGB3
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
654 if (UNTAG_Bool(REGB3
)) {
655 REGB3
= TAG_Bool(false);
658 REGB3
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[1])(fra
.me
.REG
[1], NIT_NULL
);
662 REGB2
= TAG_Bool(!UNTAG_Bool(REGB2
));
663 if (UNTAG_Bool(REGB2
)) {
664 REGB2
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
665 if (UNTAG_Bool(REGB2
)) {
666 nit_abort("Reciever is null", NULL
, LOCATE_array
, 121);
668 CALL_kernel___Object___output(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
670 /* ./../lib/standard//collection//array.nit:122 */
672 /* ./../lib/standard//kernel.nit:215 */
673 REGB2
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB2
));
674 /* ./../lib/standard//collection//array.nit:122 */
677 /* ./../lib/standard//collection//array.nit:119 */
682 stack_frame_head
= fra
.me
.prev
;
685 val_t
array___AbstractArrayRead___iterator(val_t p0
){
686 struct {struct stack_frame_t me
;} fra
;
688 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
689 fra
.me
.file
= LOCATE_array
;
691 fra
.me
.meth
= LOCATE_array___AbstractArrayRead___iterator
;
692 fra
.me
.has_broke
= 0;
694 fra
.me
.REG
[0] = NIT_NULL
;
696 /* ./../lib/standard//collection//array.nit:126 */
697 fra
.me
.REG
[0] = NEW_ArrayIterator_array___ArrayIterator___init(fra
.me
.REG
[0]);
700 stack_frame_head
= fra
.me
.prev
;
701 return fra
.me
.REG
[0];
703 val_t
array___AbstractArrayRead_____eqeq(val_t p0
, val_t p1
){
704 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
711 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
712 fra
.me
.file
= LOCATE_array
;
714 fra
.me
.meth
= LOCATE_array___AbstractArrayRead_____eqeq
;
715 fra
.me
.has_broke
= 0;
717 fra
.me
.REG
[0] = NIT_NULL
;
718 fra
.me
.REG
[1] = NIT_NULL
;
719 fra
.me
.REG
[2] = NIT_NULL
;
720 fra
.me
.REG
[3] = NIT_NULL
;
723 /* ./../lib/standard//collection//array.nit:131 */
724 REGB0
= TAG_Bool((fra
.me
.REG
[1]!=NIT_NULL
) && VAL_ISA(fra
.me
.REG
[1], COLOR_AbstractArray
, ID_AbstractArray
)) /*cast AbstractArray[E]*/;
725 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
726 if (UNTAG_Bool(REGB0
)) {
727 REGB0
= TAG_Bool(true);
729 REGB1
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
732 if (UNTAG_Bool(REGB0
)) {
733 REGB0
= TAG_Bool(false);
736 /* ./../lib/standard//collection//array.nit:23 */
737 REGB1
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
738 if (UNTAG_Bool(REGB1
)) {
740 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 23);
742 REGB1
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0]);
743 /* ./../lib/standard//collection//array.nit:133 */
744 REGB2
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
745 if (UNTAG_Bool(REGB2
)) {
746 nit_abort("Reciever is null", NULL
, LOCATE_array
, 133);
748 /* ./../lib/standard//collection//array.nit:23 */
749 REGB2
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[1])!=NIT_NULL
);
750 if (UNTAG_Bool(REGB2
)) {
752 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 23);
754 REGB2
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[1]);
755 /* ./../lib/standard//collection//array.nit:133 */
756 REGB3
= TAG_Bool(IS_EQUAL_OO(REGB2
,REGB1
));
757 if (UNTAG_Bool(REGB3
)) {
759 /* ./../lib/standard//kernel.nit:207 */
760 REGB2
= TAG_Bool((REGB2
)==(REGB1
));
761 /* ./../lib/standard//collection//array.nit:133 */
764 REGB3
= TAG_Bool(!UNTAG_Bool(REGB3
));
765 if (UNTAG_Bool(REGB3
)) {
766 REGB3
= TAG_Bool(false);
770 /* ./../lib/standard//collection//array.nit:134 */
772 /* ./../lib/standard//collection//array.nit:135 */
774 /* ./../lib/standard//kernel.nit:212 */
775 REGB2
= TAG_Bool(UNTAG_Int(REGB3
)<UNTAG_Int(REGB1
));
776 /* ./../lib/standard//collection//array.nit:135 */
777 if (UNTAG_Bool(REGB2
)) {
778 /* ./../lib/standard//collection//array.nit:136 */
779 fra
.me
.REG
[2] = CALL_abstract_collection___MapRead_____bra(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB3
);
780 REGB2
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
781 if (UNTAG_Bool(REGB2
)) {
782 nit_abort("Reciever is null", NULL
, LOCATE_array
, 136);
784 fra
.me
.REG
[3] = CALL_abstract_collection___MapRead_____bra(fra
.me
.REG
[1])(fra
.me
.REG
[1], REGB3
);
785 REGB2
= TAG_Bool(IS_EQUAL_NN(fra
.me
.REG
[2],fra
.me
.REG
[3]));
786 if (UNTAG_Bool(REGB2
)) {
788 REGB4
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
789 if (UNTAG_Bool(REGB4
)) {
790 REGB4
= TAG_Bool(false);
793 REGB4
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
797 REGB2
= TAG_Bool(!UNTAG_Bool(REGB2
));
798 if (UNTAG_Bool(REGB2
)) {
799 REGB2
= TAG_Bool(false);
803 /* ./../lib/standard//collection//array.nit:137 */
805 /* ./../lib/standard//kernel.nit:215 */
806 REGB2
= TAG_Int(UNTAG_Int(REGB3
)+UNTAG_Int(REGB2
));
807 /* ./../lib/standard//collection//array.nit:137 */
810 /* ./../lib/standard//collection//array.nit:135 */
815 /* ./../lib/standard//collection//array.nit:139 */
816 REGB3
= TAG_Bool(true);
820 stack_frame_head
= fra
.me
.prev
;
823 void array___AbstractArrayRead___init(val_t p0
, int* init_table
){
824 int itpos0
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_AbstractArrayRead
].i
;
825 struct {struct stack_frame_t me
;} fra
;
827 if (init_table
[itpos0
]) return;
828 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
829 fra
.me
.file
= LOCATE_array
;
831 fra
.me
.meth
= LOCATE_array___AbstractArrayRead___init
;
832 fra
.me
.has_broke
= 0;
834 stack_frame_head
= fra
.me
.prev
;
835 init_table
[itpos0
] = 1;
838 void array___AbstractArray___enlarge(val_t p0
, val_t p1
){
839 struct {struct stack_frame_t me
;} fra
;
841 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
842 fra
.me
.file
= LOCATE_array
;
844 fra
.me
.meth
= LOCATE_array___AbstractArray___enlarge
;
845 fra
.me
.has_broke
= 0;
847 /* ./../lib/standard//collection//array.nit:147 */
848 nit_abort("Deferred method called", NULL
, LOCATE_array
, 147);
849 stack_frame_head
= fra
.me
.prev
;
852 void array___AbstractArray___push(val_t p0
, val_t p1
){
853 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
855 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
856 fra
.me
.file
= LOCATE_array
;
858 fra
.me
.meth
= LOCATE_array___AbstractArray___push
;
859 fra
.me
.has_broke
= 0;
861 fra
.me
.REG
[0] = NIT_NULL
;
862 fra
.me
.REG
[1] = NIT_NULL
;
865 /* ./../lib/standard//collection//array.nit:149 */
866 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
867 stack_frame_head
= fra
.me
.prev
;
870 val_t
array___AbstractArray___pop(val_t p0
){
871 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
875 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
876 fra
.me
.file
= LOCATE_array
;
878 fra
.me
.meth
= LOCATE_array___AbstractArray___pop
;
879 fra
.me
.has_broke
= 0;
881 fra
.me
.REG
[0] = NIT_NULL
;
882 fra
.me
.REG
[1] = NIT_NULL
;
884 /* ./../lib/standard//collection//array.nit:153 */
885 REGB0
= CALL_abstract_collection___Collection___is_empty(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
886 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
887 if (UNTAG_Bool(REGB0
)) {
889 nit_abort("Assert %s failed", "'not_empty'", LOCATE_array
, 153);
891 /* ./../lib/standard//collection//array.nit:154 */
892 fra
.me
.REG
[1] = CALL_abstract_collection___SequenceRead___last(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
893 /* ./../lib/standard//collection//array.nit:155 */
894 REGB0
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0]);
896 /* ./../lib/standard//kernel.nit:217 */
897 REGB1
= TAG_Int(UNTAG_Int(REGB0
)-UNTAG_Int(REGB1
));
898 /* ./../lib/standard//collection//array.nit:155 */
899 ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0]) = REGB1
;
900 /* ./../lib/standard//collection//array.nit:156 */
903 stack_frame_head
= fra
.me
.prev
;
904 return fra
.me
.REG
[1];
906 val_t
array___AbstractArray___shift(val_t p0
){
907 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
912 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
913 fra
.me
.file
= LOCATE_array
;
915 fra
.me
.meth
= LOCATE_array___AbstractArray___shift
;
916 fra
.me
.has_broke
= 0;
918 fra
.me
.REG
[0] = NIT_NULL
;
919 fra
.me
.REG
[1] = NIT_NULL
;
920 fra
.me
.REG
[2] = NIT_NULL
;
922 /* ./../lib/standard//collection//array.nit:161 */
923 REGB0
= CALL_abstract_collection___Collection___is_empty(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
924 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
925 if (UNTAG_Bool(REGB0
)) {
927 nit_abort("Assert %s failed", "'not_empty'", LOCATE_array
, 161);
929 /* ./../lib/standard//collection//array.nit:162 */
930 fra
.me
.REG
[1] = CALL_abstract_collection___Collection___first(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
931 /* ./../lib/standard//collection//array.nit:163 */
933 /* ./../lib/standard//collection//array.nit:23 */
934 REGB1
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
935 if (UNTAG_Bool(REGB1
)) {
937 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 23);
939 REGB1
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0]);
940 /* ./../lib/standard//collection//array.nit:165 */
942 /* ./../lib/standard//kernel.nit:212 */
943 REGB2
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
944 /* ./../lib/standard//collection//array.nit:165 */
945 if (UNTAG_Bool(REGB2
)) {
946 /* ./../lib/standard//collection//array.nit:166 */
948 /* ./../lib/standard//kernel.nit:217 */
949 REGB2
= TAG_Int(UNTAG_Int(REGB0
)-UNTAG_Int(REGB2
));
950 /* ./../lib/standard//collection//array.nit:166 */
951 fra
.me
.REG
[2] = CALL_abstract_collection___MapRead_____bra(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
952 CALL_abstract_collection___Map_____braeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB2
, fra
.me
.REG
[2]);
953 /* ./../lib/standard//collection//array.nit:167 */
955 /* ./../lib/standard//kernel.nit:215 */
956 REGB2
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB2
));
957 /* ./../lib/standard//collection//array.nit:167 */
960 /* ./../lib/standard//collection//array.nit:165 */
965 /* ./../lib/standard//collection//array.nit:169 */
967 /* ./../lib/standard//kernel.nit:217 */
968 REGB0
= TAG_Int(UNTAG_Int(REGB1
)-UNTAG_Int(REGB0
));
969 /* ./../lib/standard//collection//array.nit:169 */
970 ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0]) = REGB0
;
971 /* ./../lib/standard//collection//array.nit:170 */
974 stack_frame_head
= fra
.me
.prev
;
975 return fra
.me
.REG
[1];
977 void array___AbstractArray___unshift(val_t p0
, val_t p1
){
978 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
982 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
983 fra
.me
.file
= LOCATE_array
;
985 fra
.me
.meth
= LOCATE_array___AbstractArray___unshift
;
986 fra
.me
.has_broke
= 0;
988 fra
.me
.REG
[0] = NIT_NULL
;
989 fra
.me
.REG
[1] = NIT_NULL
;
990 fra
.me
.REG
[2] = NIT_NULL
;
993 /* ./../lib/standard//collection//array.nit:23 */
994 REGB0
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
995 if (UNTAG_Bool(REGB0
)) {
997 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 23);
999 REGB0
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0]);
1000 /* ./../lib/standard//collection//array.nit:175 */
1002 /* ./../lib/standard//kernel.nit:217 */
1003 REGB1
= TAG_Int(UNTAG_Int(REGB0
)-UNTAG_Int(REGB1
));
1004 /* ./../lib/standard//collection//array.nit:176 */
1007 /* ./../lib/standard//kernel.nit:214 */
1008 REGB0
= TAG_Bool(UNTAG_Int(REGB1
)>UNTAG_Int(REGB0
));
1009 /* ./../lib/standard//collection//array.nit:176 */
1010 if (UNTAG_Bool(REGB0
)) {
1011 /* ./../lib/standard//collection//array.nit:177 */
1013 /* ./../lib/standard//kernel.nit:215 */
1014 REGB0
= TAG_Int(UNTAG_Int(REGB1
)+UNTAG_Int(REGB0
));
1015 /* ./../lib/standard//collection//array.nit:177 */
1016 fra
.me
.REG
[2] = CALL_abstract_collection___MapRead_____bra(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB1
);
1017 CALL_abstract_collection___Map_____braeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
, fra
.me
.REG
[2]);
1018 /* ./../lib/standard//collection//array.nit:178 */
1020 /* ./../lib/standard//kernel.nit:217 */
1021 REGB0
= TAG_Int(UNTAG_Int(REGB1
)-UNTAG_Int(REGB0
));
1022 /* ./../lib/standard//collection//array.nit:178 */
1025 /* ./../lib/standard//collection//array.nit:176 */
1030 /* ./../lib/standard//collection//array.nit:180 */
1032 CALL_abstract_collection___Map_____braeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB1
, fra
.me
.REG
[1]);
1033 stack_frame_head
= fra
.me
.prev
;
1036 void array___AbstractArray___insert(val_t p0
, val_t p1
, val_t p2
){
1037 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1042 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1043 fra
.me
.file
= LOCATE_array
;
1045 fra
.me
.meth
= LOCATE_array___AbstractArray___insert
;
1046 fra
.me
.has_broke
= 0;
1047 fra
.me
.REG_size
= 2;
1048 fra
.me
.REG
[0] = NIT_NULL
;
1049 fra
.me
.REG
[1] = NIT_NULL
;
1053 /* ./../lib/standard//collection//array.nit:23 */
1054 REGB1
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
1055 if (UNTAG_Bool(REGB1
)) {
1057 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 23);
1059 REGB1
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0]);
1060 /* ./../lib/standard//collection//array.nit:185 */
1062 /* ./../lib/standard//kernel.nit:215 */
1063 REGB2
= TAG_Int(UNTAG_Int(REGB1
)+UNTAG_Int(REGB2
));
1064 /* ./../lib/standard//collection//array.nit:185 */
1065 CALL_array___AbstractArray___enlarge(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB2
);
1066 /* ./../lib/standard//collection//array.nit:23 */
1067 REGB2
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
1068 if (UNTAG_Bool(REGB2
)) {
1070 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 23);
1072 REGB2
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0]);
1073 /* ./../lib/standard//kernel.nit:217 */
1074 REGB2
= TAG_Int(UNTAG_Int(REGB2
)-UNTAG_Int(REGB0
));
1075 /* ./../lib/standard//collection//array.nit:186 */
1077 /* ./../lib/standard//kernel.nit:215 */
1078 REGB1
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
1079 /* ./../lib/standard//collection//array.nit:186 */
1080 CALL_array___AbstractArrayRead___copy_to(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
, REGB2
, fra
.me
.REG
[0], REGB1
);
1081 /* ./../lib/standard//collection//array.nit:187 */
1082 CALL_abstract_collection___Map_____braeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
, fra
.me
.REG
[1]);
1083 stack_frame_head
= fra
.me
.prev
;
1086 void array___AbstractArray___add(val_t p0
, val_t p1
){
1087 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1090 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1091 fra
.me
.file
= LOCATE_array
;
1093 fra
.me
.meth
= LOCATE_array___AbstractArray___add
;
1094 fra
.me
.has_broke
= 0;
1095 fra
.me
.REG_size
= 2;
1096 fra
.me
.REG
[0] = NIT_NULL
;
1097 fra
.me
.REG
[1] = NIT_NULL
;
1100 /* ./../lib/standard//collection//array.nit:23 */
1101 REGB0
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
1102 if (UNTAG_Bool(REGB0
)) {
1104 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 23);
1106 REGB0
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0]);
1107 /* ./../lib/standard//collection//array.nit:190 */
1108 CALL_abstract_collection___Map_____braeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
, fra
.me
.REG
[1]);
1109 stack_frame_head
= fra
.me
.prev
;
1112 void array___AbstractArray___clear(val_t p0
){
1113 struct {struct stack_frame_t me
;} fra
;
1116 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1117 fra
.me
.file
= LOCATE_array
;
1119 fra
.me
.meth
= LOCATE_array___AbstractArray___clear
;
1120 fra
.me
.has_broke
= 0;
1121 fra
.me
.REG_size
= 1;
1122 fra
.me
.REG
[0] = NIT_NULL
;
1124 /* ./../lib/standard//collection//array.nit:192 */
1126 ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0]) = REGB0
;
1127 stack_frame_head
= fra
.me
.prev
;
1130 void array___AbstractArray___remove(val_t p0
, val_t p1
){
1131 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1134 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1135 fra
.me
.file
= LOCATE_array
;
1137 fra
.me
.meth
= LOCATE_array___AbstractArray___remove
;
1138 fra
.me
.has_broke
= 0;
1139 fra
.me
.REG_size
= 2;
1140 fra
.me
.REG
[0] = NIT_NULL
;
1141 fra
.me
.REG
[1] = NIT_NULL
;
1144 /* ./../lib/standard//collection//array.nit:194 */
1145 REGB0
= CALL_abstract_collection___SequenceRead___index_of(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
1146 CALL_abstract_collection___Map___remove_at(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
1147 stack_frame_head
= fra
.me
.prev
;
1150 void array___AbstractArray___remove_all(val_t p0
, val_t p1
){
1151 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1155 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1156 fra
.me
.file
= LOCATE_array
;
1158 fra
.me
.meth
= LOCATE_array___AbstractArray___remove_all
;
1159 fra
.me
.has_broke
= 0;
1160 fra
.me
.REG_size
= 2;
1161 fra
.me
.REG
[0] = NIT_NULL
;
1162 fra
.me
.REG
[1] = NIT_NULL
;
1165 /* ./../lib/standard//collection//array.nit:198 */
1166 REGB0
= CALL_abstract_collection___SequenceRead___index_of(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
1167 /* ./../lib/standard//collection//array.nit:199 */
1170 /* ./../lib/standard//kernel.nit:213 */
1171 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB1
));
1172 /* ./../lib/standard//collection//array.nit:199 */
1173 if (UNTAG_Bool(REGB1
)) {
1174 /* ./../lib/standard//collection//array.nit:200 */
1175 CALL_abstract_collection___Map___remove_at(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
1176 /* ./../lib/standard//collection//array.nit:201 */
1177 REGB1
= CALL_array___AbstractArrayRead___index_of_from(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], REGB0
);
1180 /* ./../lib/standard//collection//array.nit:199 */
1185 stack_frame_head
= fra
.me
.prev
;
1188 void array___AbstractArray___remove_at(val_t p0
, val_t p1
){
1189 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1195 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1196 fra
.me
.file
= LOCATE_array
;
1198 fra
.me
.meth
= LOCATE_array___AbstractArray___remove_at
;
1199 fra
.me
.has_broke
= 0;
1200 fra
.me
.REG_size
= 2;
1201 fra
.me
.REG
[0] = NIT_NULL
;
1202 fra
.me
.REG
[1] = NIT_NULL
;
1205 /* ./../lib/standard//collection//array.nit:23 */
1206 REGB1
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
1207 if (UNTAG_Bool(REGB1
)) {
1209 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 23);
1211 REGB1
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0]);
1212 /* ./../lib/standard//collection//array.nit:208 */
1214 /* ./../lib/standard//kernel.nit:213 */
1215 REGB2
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB2
));
1216 /* ./../lib/standard//collection//array.nit:208 */
1217 if (UNTAG_Bool(REGB2
)) {
1218 /* ./../lib/standard//kernel.nit:212 */
1219 REGB2
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
1221 /* ./../lib/standard//collection//array.nit:208 */
1222 REGB3
= TAG_Bool(false);
1225 if (UNTAG_Bool(REGB2
)) {
1226 /* ./../lib/standard//collection//array.nit:209 */
1228 /* ./../lib/standard//kernel.nit:215 */
1229 REGB2
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB2
));
1230 /* ./../lib/standard//collection//array.nit:210 */
1232 /* ./../lib/standard//kernel.nit:212 */
1233 REGB0
= TAG_Bool(UNTAG_Int(REGB2
)<UNTAG_Int(REGB1
));
1234 /* ./../lib/standard//collection//array.nit:210 */
1235 if (UNTAG_Bool(REGB0
)) {
1236 /* ./../lib/standard//collection//array.nit:211 */
1238 /* ./../lib/standard//kernel.nit:217 */
1239 REGB0
= TAG_Int(UNTAG_Int(REGB2
)-UNTAG_Int(REGB0
));
1240 /* ./../lib/standard//collection//array.nit:211 */
1241 fra
.me
.REG
[1] = CALL_abstract_collection___MapRead_____bra(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB2
);
1242 CALL_abstract_collection___Map_____braeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
, fra
.me
.REG
[1]);
1243 /* ./../lib/standard//collection//array.nit:212 */
1245 /* ./../lib/standard//kernel.nit:215 */
1246 REGB0
= TAG_Int(UNTAG_Int(REGB2
)+UNTAG_Int(REGB0
));
1247 /* ./../lib/standard//collection//array.nit:212 */
1250 /* ./../lib/standard//collection//array.nit:210 */
1255 /* ./../lib/standard//collection//array.nit:214 */
1257 /* ./../lib/standard//kernel.nit:217 */
1258 REGB2
= TAG_Int(UNTAG_Int(REGB1
)-UNTAG_Int(REGB2
));
1259 /* ./../lib/standard//collection//array.nit:214 */
1260 ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0]) = REGB2
;
1262 stack_frame_head
= fra
.me
.prev
;
1265 void array___Array___iterate(val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
){
1266 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
1271 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1272 fra
.me
.file
= LOCATE_array
;
1274 fra
.me
.meth
= LOCATE_array___Array___iterate
;
1275 fra
.me
.has_broke
= 0;
1276 fra
.me
.REG_size
= 3;
1277 fra
.me
.REG
[0] = NIT_NULL
;
1278 fra
.me
.REG
[1] = NIT_NULL
;
1279 fra
.me
.REG
[2] = NIT_NULL
;
1280 fra
.me
.closure_ctx
= closctx_param
;
1281 fra
.me
.closure_funs
= CREG
;
1283 CREG
[0] = clos_fun0
;
1284 /* ./../lib/standard//collection//array.nit:234 */
1286 /* ./../lib/standard//collection//array.nit:235 */
1287 REGB1
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
1288 if (UNTAG_Bool(REGB1
)) {
1290 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 235);
1292 REGB1
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0]);
1293 /* ./../lib/standard//collection//array.nit:236 */
1294 fra
.me
.REG
[1] = ATTR_array___Array____items(fra
.me
.REG
[0]);
1295 /* ./../lib/standard//collection//array.nit:237 */
1297 /* ./../lib/standard//collection//array.nit:23 */
1298 REGB1
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
1299 if (UNTAG_Bool(REGB1
)) {
1301 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 23);
1303 REGB1
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0]);
1304 /* ./../lib/standard//kernel.nit:212 */
1305 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
1306 /* ./../lib/standard//collection//array.nit:237 */
1307 if (UNTAG_Bool(REGB1
)) {
1308 /* ./../lib/standard//collection//array.nit:238 */
1309 REGB1
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
1310 if (UNTAG_Bool(REGB1
)) {
1311 nit_abort("Reciever is null", NULL
, LOCATE_array
, 238);
1313 /* ./../lib/standard//collection//array.nit:654 */
1314 fra
.me
.REG
[2] = ((Nit_NativeArray
)fra
.me
.REG
[1])->val
[UNTAG_Int(REGB0
)];
1315 /* ./../lib/standard//collection//array.nit:238 */
1316 ((void (*)(struct stack_frame_t
*, val_t
))(CREG
[0]))(closctx_param
, fra
.me
.REG
[2]);
1317 if (closctx_param
->has_broke
) {
1320 /* ./../lib/standard//collection//array.nit:239 */
1322 /* ./../lib/standard//kernel.nit:215 */
1323 REGB1
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
1324 /* ./../lib/standard//collection//array.nit:239 */
1327 /* ./../lib/standard//collection//array.nit:237 */
1333 stack_frame_head
= fra
.me
.prev
;
1336 val_t
array___Array_____bra(val_t p0
, val_t p1
){
1337 struct {struct stack_frame_t me
;} fra
;
1342 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1343 fra
.me
.file
= LOCATE_array
;
1345 fra
.me
.meth
= LOCATE_array___Array_____bra
;
1346 fra
.me
.has_broke
= 0;
1347 fra
.me
.REG_size
= 1;
1348 fra
.me
.REG
[0] = NIT_NULL
;
1351 /* ./../lib/standard//collection//array.nit:245 */
1353 /* ./../lib/standard//kernel.nit:213 */
1354 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB1
));
1355 /* ./../lib/standard//collection//array.nit:245 */
1356 if (UNTAG_Bool(REGB1
)) {
1357 REGB1
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
1358 if (UNTAG_Bool(REGB1
)) {
1360 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 245);
1362 REGB1
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0]);
1363 /* ./../lib/standard//kernel.nit:212 */
1364 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
1366 /* ./../lib/standard//collection//array.nit:245 */
1367 REGB2
= TAG_Bool(false);
1370 if (UNTAG_Bool(REGB1
)) {
1372 nit_abort("Assert %s failed", "'index'", LOCATE_array
, 245);
1374 /* ./../lib/standard//collection//array.nit:246 */
1375 fra
.me
.REG
[0] = ATTR_array___Array____items(fra
.me
.REG
[0]);
1376 REGB1
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
1377 if (UNTAG_Bool(REGB1
)) {
1378 nit_abort("Reciever is null", NULL
, LOCATE_array
, 246);
1380 /* ./../lib/standard//collection//array.nit:654 */
1381 fra
.me
.REG
[0] = ((Nit_NativeArray
)fra
.me
.REG
[0])->val
[UNTAG_Int(REGB0
)];
1382 /* ./../lib/standard//collection//array.nit:246 */
1385 stack_frame_head
= fra
.me
.prev
;
1386 return fra
.me
.REG
[0];
1388 void array___Array_____braeq(val_t p0
, val_t p1
, val_t p2
){
1389 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1394 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1395 fra
.me
.file
= LOCATE_array
;
1397 fra
.me
.meth
= LOCATE_array___Array_____braeq
;
1398 fra
.me
.has_broke
= 0;
1399 fra
.me
.REG_size
= 2;
1400 fra
.me
.REG
[0] = NIT_NULL
;
1401 fra
.me
.REG
[1] = NIT_NULL
;
1405 /* ./../lib/standard//collection//array.nit:251 */
1407 /* ./../lib/standard//kernel.nit:213 */
1408 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB1
));
1409 /* ./../lib/standard//collection//array.nit:251 */
1410 if (UNTAG_Bool(REGB1
)) {
1411 REGB1
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
1412 if (UNTAG_Bool(REGB1
)) {
1414 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 251);
1416 REGB1
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0]);
1418 /* ./../lib/standard//kernel.nit:215 */
1419 REGB2
= TAG_Int(UNTAG_Int(REGB1
)+UNTAG_Int(REGB2
));
1420 /* ./../lib/standard//kernel.nit:212 */
1421 REGB2
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB2
));
1423 /* ./../lib/standard//collection//array.nit:251 */
1424 REGB1
= TAG_Bool(false);
1427 if (UNTAG_Bool(REGB2
)) {
1429 nit_abort("Assert %s failed", "'index'", LOCATE_array
, 251);
1431 /* ./../lib/standard//collection//array.nit:252 */
1432 REGB2
= TAG_Bool(ATTR_array___Array____capacity(fra
.me
.REG
[0])!=NIT_NULL
);
1433 if (UNTAG_Bool(REGB2
)) {
1435 nit_abort("Uninitialized attribute %s", "_capacity", LOCATE_array
, 252);
1437 REGB2
= ATTR_array___Array____capacity(fra
.me
.REG
[0]);
1438 /* ./../lib/standard//kernel.nit:211 */
1439 REGB2
= TAG_Bool(UNTAG_Int(REGB2
)<=UNTAG_Int(REGB0
));
1440 /* ./../lib/standard//collection//array.nit:252 */
1441 if (UNTAG_Bool(REGB2
)) {
1442 /* ./../lib/standard//collection//array.nit:253 */
1444 /* ./../lib/standard//kernel.nit:215 */
1445 REGB2
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB2
));
1446 /* ./../lib/standard//collection//array.nit:253 */
1447 CALL_array___AbstractArray___enlarge(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB2
);
1449 /* ./../lib/standard//collection//array.nit:255 */
1450 REGB2
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
1451 if (UNTAG_Bool(REGB2
)) {
1453 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 255);
1455 REGB2
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0]);
1456 /* ./../lib/standard//kernel.nit:211 */
1457 REGB2
= TAG_Bool(UNTAG_Int(REGB2
)<=UNTAG_Int(REGB0
));
1458 /* ./../lib/standard//collection//array.nit:255 */
1459 if (UNTAG_Bool(REGB2
)) {
1460 /* ./../lib/standard//collection//array.nit:256 */
1462 /* ./../lib/standard//kernel.nit:215 */
1463 REGB2
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB2
));
1464 /* ./../lib/standard//collection//array.nit:256 */
1465 ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0]) = REGB2
;
1467 /* ./../lib/standard//collection//array.nit:258 */
1468 fra
.me
.REG
[0] = ATTR_array___Array____items(fra
.me
.REG
[0]);
1469 REGB2
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
1470 if (UNTAG_Bool(REGB2
)) {
1471 nit_abort("Reciever is null", NULL
, LOCATE_array
, 258);
1473 /* ./../lib/standard//collection//array.nit:655 */
1474 ((Nit_NativeArray
)fra
.me
.REG
[0])->val
[UNTAG_Int(REGB0
)]=fra
.me
.REG
[1];
1475 stack_frame_head
= fra
.me
.prev
;
1478 void array___Array___add(val_t p0
, val_t p1
){
1479 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1483 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1484 fra
.me
.file
= LOCATE_array
;
1486 fra
.me
.meth
= LOCATE_array___Array___add
;
1487 fra
.me
.has_broke
= 0;
1488 fra
.me
.REG_size
= 2;
1489 fra
.me
.REG
[0] = NIT_NULL
;
1490 fra
.me
.REG
[1] = NIT_NULL
;
1493 /* ./../lib/standard//collection//array.nit:263 */
1494 REGB0
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
1495 if (UNTAG_Bool(REGB0
)) {
1497 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 263);
1499 REGB0
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0]);
1500 /* ./../lib/standard//collection//array.nit:264 */
1501 REGB1
= TAG_Bool(ATTR_array___Array____capacity(fra
.me
.REG
[0])!=NIT_NULL
);
1502 if (UNTAG_Bool(REGB1
)) {
1504 nit_abort("Uninitialized attribute %s", "_capacity", LOCATE_array
, 264);
1506 REGB1
= ATTR_array___Array____capacity(fra
.me
.REG
[0]);
1507 /* ./../lib/standard//kernel.nit:211 */
1508 REGB1
= TAG_Bool(UNTAG_Int(REGB1
)<=UNTAG_Int(REGB0
));
1509 /* ./../lib/standard//collection//array.nit:264 */
1510 if (UNTAG_Bool(REGB1
)) {
1511 /* ./../lib/standard//collection//array.nit:265 */
1513 /* ./../lib/standard//kernel.nit:215 */
1514 REGB1
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
1515 /* ./../lib/standard//collection//array.nit:265 */
1516 CALL_array___AbstractArray___enlarge(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB1
);
1518 /* ./../lib/standard//collection//array.nit:267 */
1520 /* ./../lib/standard//kernel.nit:215 */
1521 REGB1
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
1522 /* ./../lib/standard//collection//array.nit:267 */
1523 ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0]) = REGB1
;
1524 /* ./../lib/standard//collection//array.nit:268 */
1525 fra
.me
.REG
[0] = ATTR_array___Array____items(fra
.me
.REG
[0]);
1526 REGB1
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
1527 if (UNTAG_Bool(REGB1
)) {
1528 nit_abort("Reciever is null", NULL
, LOCATE_array
, 268);
1530 /* ./../lib/standard//collection//array.nit:655 */
1531 ((Nit_NativeArray
)fra
.me
.REG
[0])->val
[UNTAG_Int(REGB0
)]=fra
.me
.REG
[1];
1532 stack_frame_head
= fra
.me
.prev
;
1535 void array___Array___enlarge(val_t p0
, val_t p1
){
1536 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
1542 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1543 fra
.me
.file
= LOCATE_array
;
1545 fra
.me
.meth
= LOCATE_array___Array___enlarge
;
1546 fra
.me
.has_broke
= 0;
1547 fra
.me
.REG_size
= 3;
1548 fra
.me
.REG
[0] = NIT_NULL
;
1549 fra
.me
.REG
[1] = NIT_NULL
;
1550 fra
.me
.REG
[2] = NIT_NULL
;
1553 /* ./../lib/standard//collection//array.nit:273 */
1554 REGB1
= TAG_Bool(ATTR_array___Array____capacity(fra
.me
.REG
[0])!=NIT_NULL
);
1555 if (UNTAG_Bool(REGB1
)) {
1557 nit_abort("Uninitialized attribute %s", "_capacity", LOCATE_array
, 273);
1559 REGB1
= ATTR_array___Array____capacity(fra
.me
.REG
[0]);
1560 /* ./../lib/standard//kernel.nit:211 */
1561 REGB2
= TAG_Bool(UNTAG_Int(REGB0
)<=UNTAG_Int(REGB1
));
1562 /* ./../lib/standard//collection//array.nit:274 */
1563 if (UNTAG_Bool(REGB2
)) {
1566 /* ./../lib/standard//collection//array.nit:275 */
1568 /* ./../lib/standard//kernel.nit:211 */
1569 REGB2
= TAG_Bool(UNTAG_Int(REGB1
)<=UNTAG_Int(REGB0
));
1570 /* ./../lib/standard//collection//array.nit:275 */
1571 if (UNTAG_Bool(REGB2
)) {
1573 /* ./../lib/standard//kernel.nit:218 */
1574 REGB2
= TAG_Int(UNTAG_Int(REGB1
)*UNTAG_Int(REGB2
));
1575 /* ./../lib/standard//collection//array.nit:275 */
1577 /* ./../lib/standard//kernel.nit:215 */
1578 REGB3
= TAG_Int(UNTAG_Int(REGB2
)+UNTAG_Int(REGB3
));
1579 /* ./../lib/standard//collection//array.nit:275 */
1586 /* ./../lib/standard//collection//array.nit:648 */
1587 fra
.me
.REG
[1] = NEW_NativeArray(UNTAG_Int(REGB1
), sizeof(val_t
));
1588 /* ./../lib/standard//collection//array.nit:277 */
1589 REGB0
= TAG_Bool(ATTR_array___Array____capacity(fra
.me
.REG
[0])!=NIT_NULL
);
1590 if (UNTAG_Bool(REGB0
)) {
1592 nit_abort("Uninitialized attribute %s", "_capacity", LOCATE_array
, 277);
1594 REGB0
= ATTR_array___Array____capacity(fra
.me
.REG
[0]);
1596 /* ./../lib/standard//kernel.nit:214 */
1597 REGB3
= TAG_Bool(UNTAG_Int(REGB0
)>UNTAG_Int(REGB3
));
1598 /* ./../lib/standard//collection//array.nit:277 */
1599 if (UNTAG_Bool(REGB3
)) {
1600 fra
.me
.REG
[2] = ATTR_array___Array____items(fra
.me
.REG
[0]);
1601 REGB3
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
1602 if (UNTAG_Bool(REGB3
)) {
1604 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 277);
1606 REGB3
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0]);
1607 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
1608 if (UNTAG_Bool(REGB0
)) {
1609 nit_abort("Reciever is null", NULL
, LOCATE_array
, 277);
1611 /* ./../lib/standard//collection//array.nit:656 */
1612 (void)memcpy(((Nit_NativeArray
)fra
.me
.REG
[1])->val
, ((Nit_NativeArray
)fra
.me
.REG
[2])->val
, UNTAG_Int(REGB3
)*sizeof(val_t
));
1614 /* ./../lib/standard//collection//array.nit:278 */
1615 ATTR_array___Array____items(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
1616 /* ./../lib/standard//collection//array.nit:279 */
1617 ATTR_array___Array____capacity(fra
.me
.REG
[0]) = REGB1
;
1619 stack_frame_head
= fra
.me
.prev
;
1622 void array___Array___init(val_t p0
, int* init_table
){
1623 int itpos1
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_Array
].i
;
1624 struct {struct stack_frame_t me
;} fra
;
1627 if (init_table
[itpos1
]) return;
1628 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1629 fra
.me
.file
= LOCATE_array
;
1631 fra
.me
.meth
= LOCATE_array___Array___init
;
1632 fra
.me
.has_broke
= 0;
1633 fra
.me
.REG_size
= 1;
1634 fra
.me
.REG
[0] = NIT_NULL
;
1636 /* ./../lib/standard//collection//array.nit:285 */
1638 ATTR_array___Array____capacity(fra
.me
.REG
[0]) = REGB0
;
1639 /* ./../lib/standard//collection//array.nit:286 */
1641 ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0]) = REGB0
;
1642 stack_frame_head
= fra
.me
.prev
;
1643 init_table
[itpos1
] = 1;
1646 void array___Array___with_items(val_t p0
, val_t p1
, int* init_table
){
1647 int itpos2
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_Array
].i
;
1648 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
1651 if (init_table
[itpos2
]) return;
1652 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1653 fra
.me
.file
= LOCATE_array
;
1655 fra
.me
.meth
= LOCATE_array___Array___with_items
;
1656 fra
.me
.has_broke
= 0;
1657 fra
.me
.REG_size
= 3;
1658 fra
.me
.REG
[0] = NIT_NULL
;
1659 fra
.me
.REG
[1] = NIT_NULL
;
1660 fra
.me
.REG
[2] = NIT_NULL
;
1663 /* ./../lib/standard//collection//array.nit:289 */
1664 REGB0
= TAG_Bool((fra
.me
.REG
[1]!=NIT_NULL
) && VAL_ISA(fra
.me
.REG
[1], COLOR_Array
, ID_Array
)) /*cast Array[E]*/;
1665 if (UNTAG_Bool(REGB0
)) {
1667 nit_abort("Cast failed", NULL
, LOCATE_array
, 289);
1669 /* ./../lib/standard//collection//array.nit:292 */
1670 fra
.me
.REG
[2] = ATTR_array___Array____items(fra
.me
.REG
[1]);
1671 ATTR_array___Array____items(fra
.me
.REG
[0]) = fra
.me
.REG
[2];
1672 /* ./../lib/standard//collection//array.nit:293 */
1673 REGB0
= TAG_Bool(ATTR_array___Array____capacity(fra
.me
.REG
[1])!=NIT_NULL
);
1674 if (UNTAG_Bool(REGB0
)) {
1676 nit_abort("Uninitialized attribute %s", "_capacity", LOCATE_array
, 293);
1678 REGB0
= ATTR_array___Array____capacity(fra
.me
.REG
[1]);
1679 ATTR_array___Array____capacity(fra
.me
.REG
[0]) = REGB0
;
1680 /* ./../lib/standard//collection//array.nit:23 */
1681 REGB0
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[1])!=NIT_NULL
);
1682 if (UNTAG_Bool(REGB0
)) {
1684 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 23);
1686 REGB0
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[1]);
1687 /* ./../lib/standard//collection//array.nit:294 */
1688 ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0]) = REGB0
;
1689 stack_frame_head
= fra
.me
.prev
;
1690 init_table
[itpos2
] = 1;
1693 void array___Array___with_capacity(val_t p0
, val_t p1
, int* init_table
){
1694 int itpos3
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_Array
].i
;
1695 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1699 if (init_table
[itpos3
]) return;
1700 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1701 fra
.me
.file
= LOCATE_array
;
1703 fra
.me
.meth
= LOCATE_array___Array___with_capacity
;
1704 fra
.me
.has_broke
= 0;
1705 fra
.me
.REG_size
= 2;
1706 fra
.me
.REG
[0] = NIT_NULL
;
1707 fra
.me
.REG
[1] = NIT_NULL
;
1710 /* ./../lib/standard//collection//array.nit:300 */
1712 /* ./../lib/standard//kernel.nit:213 */
1713 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB1
));
1714 /* ./../lib/standard//collection//array.nit:300 */
1715 if (UNTAG_Bool(REGB1
)) {
1717 nit_abort("Assert %s failed", "'positive'", LOCATE_array
, 300);
1719 /* ./../lib/standard//collection//array.nit:648 */
1720 fra
.me
.REG
[1] = NEW_NativeArray(UNTAG_Int(REGB0
), sizeof(val_t
));
1721 /* ./../lib/standard//collection//array.nit:301 */
1722 ATTR_array___Array____items(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
1723 /* ./../lib/standard//collection//array.nit:302 */
1724 ATTR_array___Array____capacity(fra
.me
.REG
[0]) = REGB0
;
1725 /* ./../lib/standard//collection//array.nit:303 */
1727 ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0]) = REGB0
;
1728 stack_frame_head
= fra
.me
.prev
;
1729 init_table
[itpos3
] = 1;
1732 void array___Array___filled_with(val_t p0
, val_t p1
, val_t p2
, int* init_table
){
1733 int itpos4
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_Array
].i
;
1734 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
1739 if (init_table
[itpos4
]) return;
1740 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1741 fra
.me
.file
= LOCATE_array
;
1743 fra
.me
.meth
= LOCATE_array___Array___filled_with
;
1744 fra
.me
.has_broke
= 0;
1745 fra
.me
.REG_size
= 3;
1746 fra
.me
.REG
[0] = NIT_NULL
;
1747 fra
.me
.REG
[1] = NIT_NULL
;
1748 fra
.me
.REG
[2] = NIT_NULL
;
1752 /* ./../lib/standard//collection//array.nit:309 */
1754 /* ./../lib/standard//kernel.nit:213 */
1755 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB1
));
1756 /* ./../lib/standard//collection//array.nit:309 */
1757 if (UNTAG_Bool(REGB1
)) {
1759 nit_abort("Assert %s failed", "'positive'", LOCATE_array
, 309);
1761 /* ./../lib/standard//collection//array.nit:648 */
1762 fra
.me
.REG
[2] = NEW_NativeArray(UNTAG_Int(REGB0
), sizeof(val_t
));
1763 /* ./../lib/standard//collection//array.nit:310 */
1764 ATTR_array___Array____items(fra
.me
.REG
[0]) = fra
.me
.REG
[2];
1765 /* ./../lib/standard//collection//array.nit:311 */
1766 ATTR_array___Array____capacity(fra
.me
.REG
[0]) = REGB0
;
1767 /* ./../lib/standard//collection//array.nit:312 */
1768 ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0]) = REGB0
;
1769 /* ./../lib/standard//collection//array.nit:313 */
1771 /* ./../lib/standard//collection//array.nit:314 */
1773 /* ./../lib/standard//kernel.nit:212 */
1774 REGB2
= TAG_Bool(UNTAG_Int(REGB1
)<UNTAG_Int(REGB0
));
1775 /* ./../lib/standard//collection//array.nit:314 */
1776 if (UNTAG_Bool(REGB2
)) {
1777 /* ./../lib/standard//collection//array.nit:315 */
1778 CALL_abstract_collection___Map_____braeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB1
, fra
.me
.REG
[1]);
1779 /* ./../lib/standard//collection//array.nit:316 */
1781 /* ./../lib/standard//kernel.nit:215 */
1782 REGB2
= TAG_Int(UNTAG_Int(REGB1
)+UNTAG_Int(REGB2
));
1783 /* ./../lib/standard//collection//array.nit:316 */
1786 /* ./../lib/standard//collection//array.nit:314 */
1791 stack_frame_head
= fra
.me
.prev
;
1792 init_table
[itpos4
] = 1;
1795 void array___Array___with_native(val_t p0
, val_t p1
, val_t p2
, int* init_table
){
1796 int itpos5
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_Array
].i
;
1797 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1801 if (init_table
[itpos5
]) return;
1802 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1803 fra
.me
.file
= LOCATE_array
;
1805 fra
.me
.meth
= LOCATE_array___Array___with_native
;
1806 fra
.me
.has_broke
= 0;
1807 fra
.me
.REG_size
= 2;
1808 fra
.me
.REG
[0] = NIT_NULL
;
1809 fra
.me
.REG
[1] = NIT_NULL
;
1813 /* ./../lib/standard//collection//array.nit:323 */
1815 /* ./../lib/standard//kernel.nit:213 */
1816 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB1
));
1817 /* ./../lib/standard//collection//array.nit:323 */
1818 if (UNTAG_Bool(REGB1
)) {
1820 nit_abort("Assert %s failed", "'positive'", LOCATE_array
, 323);
1822 /* ./../lib/standard//collection//array.nit:324 */
1823 ATTR_array___Array____items(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
1824 /* ./../lib/standard//collection//array.nit:325 */
1825 ATTR_array___Array____capacity(fra
.me
.REG
[0]) = REGB0
;
1826 /* ./../lib/standard//collection//array.nit:326 */
1827 ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0]) = REGB0
;
1828 stack_frame_head
= fra
.me
.prev
;
1829 init_table
[itpos5
] = 1;
1832 val_t
array___Array___intern_items(val_t p0
){
1833 struct {struct stack_frame_t me
;} fra
;
1836 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1837 fra
.me
.file
= LOCATE_array
;
1839 fra
.me
.meth
= LOCATE_array___Array___intern_items
;
1840 fra
.me
.has_broke
= 0;
1841 fra
.me
.REG_size
= 1;
1842 fra
.me
.REG
[0] = NIT_NULL
;
1844 /* ./../lib/standard//collection//array.nit:334 */
1845 fra
.me
.REG
[0] = ATTR_array___Array____items(fra
.me
.REG
[0]);
1846 REGB0
= TAG_Bool(fra
.me
.REG
[0]!=NIT_NULL
);
1847 if (UNTAG_Bool(REGB0
)) {
1849 nit_abort("Cast failed", NULL
, LOCATE_array
, 334);
1853 stack_frame_head
= fra
.me
.prev
;
1854 return fra
.me
.REG
[0];
1856 void array___Array___sort(val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
){
1857 struct {struct stack_frame_t me
;} fra
;
1863 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1864 fra
.me
.file
= LOCATE_array
;
1866 fra
.me
.meth
= LOCATE_array___Array___sort
;
1867 fra
.me
.has_broke
= 0;
1868 fra
.me
.REG_size
= 1;
1869 fra
.me
.REG
[0] = NIT_NULL
;
1870 fra
.me
.closure_ctx
= closctx_param
;
1871 fra
.me
.closure_funs
= CREG
;
1873 CREG
[0] = clos_fun0
;
1874 /* ./../lib/standard//collection//array.nit:343 */
1876 /* ./../lib/standard//collection//array.nit:23 */
1877 REGB1
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
1878 if (UNTAG_Bool(REGB1
)) {
1880 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 23);
1882 REGB1
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0]);
1883 /* ./../lib/standard//collection//array.nit:343 */
1885 /* ./../lib/standard//kernel.nit:217 */
1886 REGB2
= TAG_Int(UNTAG_Int(REGB1
)-UNTAG_Int(REGB2
));
1887 CALL_array___Array___sub_sort(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
, REGB2
, (&(fra
.me
)), ((fun_t
)OC_array___Array___sort_1
));
1888 switch ((&(fra
.me
))->has_broke
) {
1890 case 1: (&(fra
.me
))->has_broke
= 0; goto label3
;
1893 stack_frame_head
= fra
.me
.prev
;
1896 val_t
OC_array___Array___sort_1(struct stack_frame_t
*closctx
, val_t p0
, val_t p1
){
1897 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1900 /* ./../lib/standard//collection//array.nit:343 */
1901 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1902 fra
.me
.file
= LOCATE_array
;
1904 fra
.me
.meth
= LOCATE_array___Array___sort
;
1905 fra
.me
.has_broke
= 0;
1906 fra
.me
.REG_size
= 2;
1907 fra
.me
.REG
[0] = NIT_NULL
;
1908 fra
.me
.REG
[1] = NIT_NULL
;
1911 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]);
1912 if (closctx
->closure_ctx
->has_broke
) {
1913 closctx
->has_broke
= 1;
1918 stack_frame_head
= fra
.me
.prev
;
1921 void array___Array___sub_sort(val_t p0
, val_t p1
, val_t p2
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
){
1922 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
1932 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1933 fra
.me
.file
= LOCATE_array
;
1935 fra
.me
.meth
= LOCATE_array___Array___sub_sort
;
1936 fra
.me
.has_broke
= 0;
1937 fra
.me
.REG_size
= 4;
1938 fra
.me
.REG
[0] = NIT_NULL
;
1939 fra
.me
.REG
[1] = NIT_NULL
;
1940 fra
.me
.REG
[2] = NIT_NULL
;
1941 fra
.me
.REG
[3] = NIT_NULL
;
1942 fra
.me
.closure_ctx
= closctx_param
;
1943 fra
.me
.closure_funs
= CREG
;
1947 CREG
[0] = clos_fun0
;
1948 /* ./../lib/standard//kernel.nit:213 */
1949 REGB2
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB1
));
1950 /* ./../lib/standard//collection//array.nit:350 */
1951 if (UNTAG_Bool(REGB2
)) {
1952 /* ./../lib/standard//collection//array.nit:351 */
1955 /* ./../lib/standard//collection//array.nit:352 */
1957 /* ./../lib/standard//kernel.nit:215 */
1958 REGB2
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB2
));
1959 /* ./../lib/standard//kernel.nit:212 */
1960 REGB2
= TAG_Bool(UNTAG_Int(REGB2
)<UNTAG_Int(REGB1
));
1961 /* ./../lib/standard//collection//array.nit:352 */
1962 if (UNTAG_Bool(REGB2
)) {
1963 /* ./../lib/standard//collection//array.nit:243 */
1964 fra
.me
.REG
[1] = fra
.me
.REG
[0];
1966 /* ./../lib/standard//collection//array.nit:245 */
1968 /* ./../lib/standard//kernel.nit:213 */
1969 REGB3
= TAG_Bool(UNTAG_Int(REGB2
)>=UNTAG_Int(REGB3
));
1970 /* ./../lib/standard//collection//array.nit:245 */
1971 if (UNTAG_Bool(REGB3
)) {
1972 REGB3
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[1])!=NIT_NULL
);
1973 if (UNTAG_Bool(REGB3
)) {
1975 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 245);
1977 REGB3
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[1]);
1978 /* ./../lib/standard//kernel.nit:212 */
1979 REGB3
= TAG_Bool(UNTAG_Int(REGB2
)<UNTAG_Int(REGB3
));
1981 /* ./../lib/standard//collection//array.nit:245 */
1982 REGB4
= TAG_Bool(false);
1985 if (UNTAG_Bool(REGB3
)) {
1987 nit_abort("Assert %s failed", "'index'", LOCATE_array
, 245);
1989 /* ./../lib/standard//collection//array.nit:246 */
1990 fra
.me
.REG
[1] = ATTR_array___Array____items(fra
.me
.REG
[1]);
1991 REGB3
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
1992 if (UNTAG_Bool(REGB3
)) {
1993 nit_abort("Reciever is null", NULL
, LOCATE_array
, 246);
1995 /* ./../lib/standard//collection//array.nit:654 */
1996 fra
.me
.REG
[1] = ((Nit_NativeArray
)fra
.me
.REG
[1])->val
[UNTAG_Int(REGB2
)];
1997 /* ./../lib/standard//collection//array.nit:246 */
2000 /* ./../lib/standard//collection//array.nit:354 */
2002 /* ./../lib/standard//collection//array.nit:355 */
2004 /* ./../lib/standard//collection//array.nit:356 */
2006 /* ./../lib/standard//kernel.nit:214 */
2007 REGB4
= TAG_Bool(UNTAG_Int(REGB3
)>UNTAG_Int(REGB2
));
2008 /* ./../lib/standard//collection//array.nit:356 */
2009 if (UNTAG_Bool(REGB4
)) {
2010 /* ./../lib/standard//collection//array.nit:357 */
2012 /* ./../lib/standard//kernel.nit:211 */
2013 REGB4
= TAG_Bool(UNTAG_Int(REGB2
)<=UNTAG_Int(REGB1
));
2014 /* ./../lib/standard//collection//array.nit:357 */
2015 if (UNTAG_Bool(REGB4
)) {
2016 /* ./../lib/standard//collection//array.nit:243 */
2017 fra
.me
.REG
[2] = fra
.me
.REG
[0];
2019 /* ./../lib/standard//collection//array.nit:245 */
2021 /* ./../lib/standard//kernel.nit:213 */
2022 REGB5
= TAG_Bool(UNTAG_Int(REGB4
)>=UNTAG_Int(REGB5
));
2023 /* ./../lib/standard//collection//array.nit:245 */
2024 if (UNTAG_Bool(REGB5
)) {
2025 REGB5
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
2026 if (UNTAG_Bool(REGB5
)) {
2028 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 245);
2030 REGB5
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[2]);
2031 /* ./../lib/standard//kernel.nit:212 */
2032 REGB5
= TAG_Bool(UNTAG_Int(REGB4
)<UNTAG_Int(REGB5
));
2034 /* ./../lib/standard//collection//array.nit:245 */
2035 REGB6
= TAG_Bool(false);
2038 if (UNTAG_Bool(REGB5
)) {
2040 nit_abort("Assert %s failed", "'index'", LOCATE_array
, 245);
2042 /* ./../lib/standard//collection//array.nit:246 */
2043 fra
.me
.REG
[2] = ATTR_array___Array____items(fra
.me
.REG
[2]);
2044 REGB5
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
2045 if (UNTAG_Bool(REGB5
)) {
2046 nit_abort("Reciever is null", NULL
, LOCATE_array
, 246);
2048 /* ./../lib/standard//collection//array.nit:654 */
2049 fra
.me
.REG
[2] = ((Nit_NativeArray
)fra
.me
.REG
[2])->val
[UNTAG_Int(REGB4
)];
2050 /* ./../lib/standard//collection//array.nit:246 */
2053 /* ./../lib/standard//collection//array.nit:357 */
2054 REGB4
= ((val_t (*)(struct stack_frame_t
*, val_t
, val_t
))(CREG
[0]))(closctx_param
, fra
.me
.REG
[2], fra
.me
.REG
[1]);
2055 if (closctx_param
->has_broke
) {
2059 /* ./../lib/standard//kernel.nit:211 */
2060 REGB5
= TAG_Bool(UNTAG_Int(REGB4
)<=UNTAG_Int(REGB5
));
2062 /* ./../lib/standard//collection//array.nit:357 */
2063 REGB4
= TAG_Bool(false);
2066 if (UNTAG_Bool(REGB5
)) {
2068 /* ./../lib/standard//kernel.nit:215 */
2069 REGB5
= TAG_Int(UNTAG_Int(REGB2
)+UNTAG_Int(REGB5
));
2070 /* ./../lib/standard//collection//array.nit:357 */
2077 /* ./../lib/standard//collection//array.nit:358 */
2079 /* ./../lib/standard//kernel.nit:214 */
2080 REGB5
= TAG_Bool(UNTAG_Int(REGB3
)>UNTAG_Int(REGB2
));
2081 /* ./../lib/standard//collection//array.nit:358 */
2082 if (UNTAG_Bool(REGB5
)) {
2083 /* ./../lib/standard//collection//array.nit:243 */
2084 fra
.me
.REG
[2] = fra
.me
.REG
[0];
2086 /* ./../lib/standard//collection//array.nit:245 */
2088 /* ./../lib/standard//kernel.nit:213 */
2089 REGB4
= TAG_Bool(UNTAG_Int(REGB5
)>=UNTAG_Int(REGB4
));
2090 /* ./../lib/standard//collection//array.nit:245 */
2091 if (UNTAG_Bool(REGB4
)) {
2092 REGB4
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
2093 if (UNTAG_Bool(REGB4
)) {
2095 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 245);
2097 REGB4
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[2]);
2098 /* ./../lib/standard//kernel.nit:212 */
2099 REGB4
= TAG_Bool(UNTAG_Int(REGB5
)<UNTAG_Int(REGB4
));
2101 /* ./../lib/standard//collection//array.nit:245 */
2102 REGB6
= TAG_Bool(false);
2105 if (UNTAG_Bool(REGB4
)) {
2107 nit_abort("Assert %s failed", "'index'", LOCATE_array
, 245);
2109 /* ./../lib/standard//collection//array.nit:246 */
2110 fra
.me
.REG
[2] = ATTR_array___Array____items(fra
.me
.REG
[2]);
2111 REGB4
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
2112 if (UNTAG_Bool(REGB4
)) {
2113 nit_abort("Reciever is null", NULL
, LOCATE_array
, 246);
2115 /* ./../lib/standard//collection//array.nit:654 */
2116 fra
.me
.REG
[2] = ((Nit_NativeArray
)fra
.me
.REG
[2])->val
[UNTAG_Int(REGB5
)];
2117 /* ./../lib/standard//collection//array.nit:246 */
2120 /* ./../lib/standard//collection//array.nit:358 */
2121 REGB5
= ((val_t (*)(struct stack_frame_t
*, val_t
, val_t
))(CREG
[0]))(closctx_param
, fra
.me
.REG
[2], fra
.me
.REG
[1]);
2122 if (closctx_param
->has_broke
) {
2126 /* ./../lib/standard//kernel.nit:213 */
2127 REGB4
= TAG_Bool(UNTAG_Int(REGB5
)>=UNTAG_Int(REGB4
));
2129 /* ./../lib/standard//collection//array.nit:358 */
2130 REGB5
= TAG_Bool(false);
2133 if (UNTAG_Bool(REGB4
)) {
2135 /* ./../lib/standard//kernel.nit:217 */
2136 REGB4
= TAG_Int(UNTAG_Int(REGB3
)-UNTAG_Int(REGB4
));
2137 /* ./../lib/standard//collection//array.nit:358 */
2144 /* ./../lib/standard//kernel.nit:214 */
2145 REGB4
= TAG_Bool(UNTAG_Int(REGB3
)>UNTAG_Int(REGB2
));
2146 /* ./../lib/standard//collection//array.nit:359 */
2147 if (UNTAG_Bool(REGB4
)) {
2148 /* ./../lib/standard//collection//array.nit:243 */
2149 fra
.me
.REG
[2] = fra
.me
.REG
[0];
2151 /* ./../lib/standard//collection//array.nit:245 */
2153 /* ./../lib/standard//kernel.nit:213 */
2154 REGB5
= TAG_Bool(UNTAG_Int(REGB4
)>=UNTAG_Int(REGB5
));
2155 /* ./../lib/standard//collection//array.nit:245 */
2156 if (UNTAG_Bool(REGB5
)) {
2157 REGB5
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
2158 if (UNTAG_Bool(REGB5
)) {
2160 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 245);
2162 REGB5
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[2]);
2163 /* ./../lib/standard//kernel.nit:212 */
2164 REGB5
= TAG_Bool(UNTAG_Int(REGB4
)<UNTAG_Int(REGB5
));
2166 /* ./../lib/standard//collection//array.nit:245 */
2167 REGB6
= TAG_Bool(false);
2170 if (UNTAG_Bool(REGB5
)) {
2172 nit_abort("Assert %s failed", "'index'", LOCATE_array
, 245);
2174 /* ./../lib/standard//collection//array.nit:246 */
2175 fra
.me
.REG
[2] = ATTR_array___Array____items(fra
.me
.REG
[2]);
2176 REGB5
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
2177 if (UNTAG_Bool(REGB5
)) {
2178 nit_abort("Reciever is null", NULL
, LOCATE_array
, 246);
2180 /* ./../lib/standard//collection//array.nit:654 */
2181 fra
.me
.REG
[2] = ((Nit_NativeArray
)fra
.me
.REG
[2])->val
[UNTAG_Int(REGB4
)];
2182 /* ./../lib/standard//collection//array.nit:246 */
2185 /* ./../lib/standard//collection//array.nit:243 */
2186 fra
.me
.REG
[3] = fra
.me
.REG
[0];
2188 /* ./../lib/standard//collection//array.nit:245 */
2190 /* ./../lib/standard//kernel.nit:213 */
2191 REGB5
= TAG_Bool(UNTAG_Int(REGB4
)>=UNTAG_Int(REGB5
));
2192 /* ./../lib/standard//collection//array.nit:245 */
2193 if (UNTAG_Bool(REGB5
)) {
2194 REGB5
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[3])!=NIT_NULL
);
2195 if (UNTAG_Bool(REGB5
)) {
2197 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 245);
2199 REGB5
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[3]);
2200 /* ./../lib/standard//kernel.nit:212 */
2201 REGB5
= TAG_Bool(UNTAG_Int(REGB4
)<UNTAG_Int(REGB5
));
2203 /* ./../lib/standard//collection//array.nit:245 */
2204 REGB6
= TAG_Bool(false);
2207 if (UNTAG_Bool(REGB5
)) {
2209 nit_abort("Assert %s failed", "'index'", LOCATE_array
, 245);
2211 /* ./../lib/standard//collection//array.nit:246 */
2212 fra
.me
.REG
[3] = ATTR_array___Array____items(fra
.me
.REG
[3]);
2213 REGB5
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
2214 if (UNTAG_Bool(REGB5
)) {
2215 nit_abort("Reciever is null", NULL
, LOCATE_array
, 246);
2217 /* ./../lib/standard//collection//array.nit:654 */
2218 fra
.me
.REG
[3] = ((Nit_NativeArray
)fra
.me
.REG
[3])->val
[UNTAG_Int(REGB4
)];
2219 /* ./../lib/standard//collection//array.nit:246 */
2222 /* ./../lib/standard//collection//array.nit:361 */
2223 CALL_abstract_collection___Map_____braeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB2
, fra
.me
.REG
[3]);
2224 /* ./../lib/standard//collection//array.nit:362 */
2225 CALL_abstract_collection___Map_____braeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB3
, fra
.me
.REG
[2]);
2228 /* ./../lib/standard//collection//array.nit:356 */
2233 /* ./../lib/standard//collection//array.nit:365 */
2235 /* ./../lib/standard//kernel.nit:217 */
2236 REGB3
= TAG_Int(UNTAG_Int(REGB2
)-UNTAG_Int(REGB3
));
2237 /* ./../lib/standard//collection//array.nit:243 */
2238 fra
.me
.REG
[2] = fra
.me
.REG
[0];
2239 /* ./../lib/standard//collection//array.nit:245 */
2241 /* ./../lib/standard//kernel.nit:213 */
2242 REGB4
= TAG_Bool(UNTAG_Int(REGB3
)>=UNTAG_Int(REGB4
));
2243 /* ./../lib/standard//collection//array.nit:245 */
2244 if (UNTAG_Bool(REGB4
)) {
2245 REGB4
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
2246 if (UNTAG_Bool(REGB4
)) {
2248 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 245);
2250 REGB4
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[2]);
2251 /* ./../lib/standard//kernel.nit:212 */
2252 REGB4
= TAG_Bool(UNTAG_Int(REGB3
)<UNTAG_Int(REGB4
));
2254 /* ./../lib/standard//collection//array.nit:245 */
2255 REGB5
= TAG_Bool(false);
2258 if (UNTAG_Bool(REGB4
)) {
2260 nit_abort("Assert %s failed", "'index'", LOCATE_array
, 245);
2262 /* ./../lib/standard//collection//array.nit:246 */
2263 fra
.me
.REG
[2] = ATTR_array___Array____items(fra
.me
.REG
[2]);
2264 REGB4
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
2265 if (UNTAG_Bool(REGB4
)) {
2266 nit_abort("Reciever is null", NULL
, LOCATE_array
, 246);
2268 /* ./../lib/standard//collection//array.nit:654 */
2269 fra
.me
.REG
[2] = ((Nit_NativeArray
)fra
.me
.REG
[2])->val
[UNTAG_Int(REGB3
)];
2270 /* ./../lib/standard//collection//array.nit:246 */
2273 /* ./../lib/standard//collection//array.nit:365 */
2274 CALL_abstract_collection___Map_____braeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
, fra
.me
.REG
[2]);
2275 /* ./../lib/standard//collection//array.nit:366 */
2277 /* ./../lib/standard//kernel.nit:217 */
2278 REGB3
= TAG_Int(UNTAG_Int(REGB2
)-UNTAG_Int(REGB3
));
2279 /* ./../lib/standard//collection//array.nit:366 */
2280 CALL_abstract_collection___Map_____braeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB3
, fra
.me
.REG
[1]);
2281 /* ./../lib/standard//collection//array.nit:367 */
2283 /* ./../lib/standard//kernel.nit:217 */
2284 REGB3
= TAG_Int(UNTAG_Int(REGB2
)-UNTAG_Int(REGB3
));
2285 CALL_array___Array___sub_sort(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
, REGB3
, (&(fra
.me
)), ((fun_t
)OC_array___Array___sub_sort_11
));
2286 switch ((&(fra
.me
))->has_broke
) {
2288 case 1: (&(fra
.me
))->has_broke
= 0; goto label1
;
2290 CALL_array___Array___sub_sort(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB2
, REGB1
, (&(fra
.me
)), ((fun_t
)OC_array___Array___sub_sort_13
));
2291 switch ((&(fra
.me
))->has_broke
) {
2293 case 1: (&(fra
.me
))->has_broke
= 0; goto label1
;
2296 /* ./../lib/standard//collection//array.nit:371 */
2298 /* ./../lib/standard//kernel.nit:212 */
2299 REGB2
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
2300 /* ./../lib/standard//collection//array.nit:371 */
2301 if (UNTAG_Bool(REGB2
)) {
2302 /* ./../lib/standard//collection//array.nit:372 */
2304 /* ./../lib/standard//collection//array.nit:243 */
2305 fra
.me
.REG
[1] = fra
.me
.REG
[0];
2307 /* ./../lib/standard//collection//array.nit:245 */
2309 /* ./../lib/standard//kernel.nit:213 */
2310 REGB4
= TAG_Bool(UNTAG_Int(REGB3
)>=UNTAG_Int(REGB4
));
2311 /* ./../lib/standard//collection//array.nit:245 */
2312 if (UNTAG_Bool(REGB4
)) {
2313 REGB4
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[1])!=NIT_NULL
);
2314 if (UNTAG_Bool(REGB4
)) {
2316 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 245);
2318 REGB4
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[1]);
2319 /* ./../lib/standard//kernel.nit:212 */
2320 REGB4
= TAG_Bool(UNTAG_Int(REGB3
)<UNTAG_Int(REGB4
));
2322 /* ./../lib/standard//collection//array.nit:245 */
2323 REGB5
= TAG_Bool(false);
2326 if (UNTAG_Bool(REGB4
)) {
2328 nit_abort("Assert %s failed", "'index'", LOCATE_array
, 245);
2330 /* ./../lib/standard//collection//array.nit:246 */
2331 fra
.me
.REG
[1] = ATTR_array___Array____items(fra
.me
.REG
[1]);
2332 REGB4
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
2333 if (UNTAG_Bool(REGB4
)) {
2334 nit_abort("Reciever is null", NULL
, LOCATE_array
, 246);
2336 /* ./../lib/standard//collection//array.nit:654 */
2337 fra
.me
.REG
[1] = ((Nit_NativeArray
)fra
.me
.REG
[1])->val
[UNTAG_Int(REGB3
)];
2338 /* ./../lib/standard//collection//array.nit:246 */
2341 /* ./../lib/standard//collection//array.nit:374 */
2343 /* ./../lib/standard//collection//array.nit:375 */
2345 /* ./../lib/standard//kernel.nit:211 */
2346 REGB4
= TAG_Bool(UNTAG_Int(REGB3
)<=UNTAG_Int(REGB1
));
2347 /* ./../lib/standard//collection//array.nit:375 */
2348 if (UNTAG_Bool(REGB4
)) {
2349 /* ./../lib/standard//collection//array.nit:243 */
2350 fra
.me
.REG
[2] = fra
.me
.REG
[0];
2352 /* ./../lib/standard//collection//array.nit:245 */
2354 /* ./../lib/standard//kernel.nit:213 */
2355 REGB5
= TAG_Bool(UNTAG_Int(REGB4
)>=UNTAG_Int(REGB5
));
2356 /* ./../lib/standard//collection//array.nit:245 */
2357 if (UNTAG_Bool(REGB5
)) {
2358 REGB5
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
2359 if (UNTAG_Bool(REGB5
)) {
2361 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 245);
2363 REGB5
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[2]);
2364 /* ./../lib/standard//kernel.nit:212 */
2365 REGB5
= TAG_Bool(UNTAG_Int(REGB4
)<UNTAG_Int(REGB5
));
2367 /* ./../lib/standard//collection//array.nit:245 */
2368 REGB6
= TAG_Bool(false);
2371 if (UNTAG_Bool(REGB5
)) {
2373 nit_abort("Assert %s failed", "'index'", LOCATE_array
, 245);
2375 /* ./../lib/standard//collection//array.nit:246 */
2376 fra
.me
.REG
[2] = ATTR_array___Array____items(fra
.me
.REG
[2]);
2377 REGB5
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
2378 if (UNTAG_Bool(REGB5
)) {
2379 nit_abort("Reciever is null", NULL
, LOCATE_array
, 246);
2381 /* ./../lib/standard//collection//array.nit:654 */
2382 fra
.me
.REG
[2] = ((Nit_NativeArray
)fra
.me
.REG
[2])->val
[UNTAG_Int(REGB4
)];
2383 /* ./../lib/standard//collection//array.nit:246 */
2386 /* ./../lib/standard//collection//array.nit:376 */
2387 REGB4
= ((val_t (*)(struct stack_frame_t
*, val_t
, val_t
))(CREG
[0]))(closctx_param
, fra
.me
.REG
[1], fra
.me
.REG
[2]);
2388 if (closctx_param
->has_broke
) {
2392 /* ./../lib/standard//kernel.nit:214 */
2393 REGB5
= TAG_Bool(UNTAG_Int(REGB4
)>UNTAG_Int(REGB5
));
2394 /* ./../lib/standard//collection//array.nit:376 */
2395 if (UNTAG_Bool(REGB5
)) {
2396 /* ./../lib/standard//collection//array.nit:377 */
2398 /* ./../lib/standard//collection//array.nit:243 */
2399 fra
.me
.REG
[2] = fra
.me
.REG
[0];
2401 /* ./../lib/standard//collection//array.nit:245 */
2403 /* ./../lib/standard//kernel.nit:213 */
2404 REGB4
= TAG_Bool(UNTAG_Int(REGB5
)>=UNTAG_Int(REGB4
));
2405 /* ./../lib/standard//collection//array.nit:245 */
2406 if (UNTAG_Bool(REGB4
)) {
2407 REGB4
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
2408 if (UNTAG_Bool(REGB4
)) {
2410 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 245);
2412 REGB4
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[2]);
2413 /* ./../lib/standard//kernel.nit:212 */
2414 REGB4
= TAG_Bool(UNTAG_Int(REGB5
)<UNTAG_Int(REGB4
));
2416 /* ./../lib/standard//collection//array.nit:245 */
2417 REGB6
= TAG_Bool(false);
2420 if (UNTAG_Bool(REGB4
)) {
2422 nit_abort("Assert %s failed", "'index'", LOCATE_array
, 245);
2424 /* ./../lib/standard//collection//array.nit:246 */
2425 fra
.me
.REG
[2] = ATTR_array___Array____items(fra
.me
.REG
[2]);
2426 REGB4
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
2427 if (UNTAG_Bool(REGB4
)) {
2428 nit_abort("Reciever is null", NULL
, LOCATE_array
, 246);
2430 /* ./../lib/standard//collection//array.nit:654 */
2431 fra
.me
.REG
[2] = ((Nit_NativeArray
)fra
.me
.REG
[2])->val
[UNTAG_Int(REGB5
)];
2432 /* ./../lib/standard//collection//array.nit:246 */
2435 /* ./../lib/standard//collection//array.nit:378 */
2436 fra
.me
.REG
[1] = fra
.me
.REG
[2];
2438 /* ./../lib/standard//collection//array.nit:380 */
2440 /* ./../lib/standard//kernel.nit:215 */
2441 REGB5
= TAG_Int(UNTAG_Int(REGB3
)+UNTAG_Int(REGB5
));
2442 /* ./../lib/standard//collection//array.nit:380 */
2445 /* ./../lib/standard//collection//array.nit:375 */
2450 /* ./../lib/standard//collection//array.nit:382 */
2451 REGB3
= TAG_Bool(IS_EQUAL_OO(REGB2
,REGB0
));
2452 if (UNTAG_Bool(REGB3
)) {
2454 /* ./../lib/standard//kernel.nit:207 */
2455 REGB5
= TAG_Bool((REGB2
)==(REGB0
));
2456 /* ./../lib/standard//collection//array.nit:382 */
2459 REGB3
= TAG_Bool(!UNTAG_Bool(REGB3
));
2460 if (UNTAG_Bool(REGB3
)) {
2461 /* ./../lib/standard//collection//array.nit:243 */
2462 fra
.me
.REG
[2] = fra
.me
.REG
[0];
2464 /* ./../lib/standard//collection//array.nit:245 */
2466 /* ./../lib/standard//kernel.nit:213 */
2467 REGB5
= TAG_Bool(UNTAG_Int(REGB3
)>=UNTAG_Int(REGB5
));
2468 /* ./../lib/standard//collection//array.nit:245 */
2469 if (UNTAG_Bool(REGB5
)) {
2470 REGB5
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
2471 if (UNTAG_Bool(REGB5
)) {
2473 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 245);
2475 REGB5
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[2]);
2476 /* ./../lib/standard//kernel.nit:212 */
2477 REGB5
= TAG_Bool(UNTAG_Int(REGB3
)<UNTAG_Int(REGB5
));
2479 /* ./../lib/standard//collection//array.nit:245 */
2480 REGB4
= TAG_Bool(false);
2483 if (UNTAG_Bool(REGB5
)) {
2485 nit_abort("Assert %s failed", "'index'", LOCATE_array
, 245);
2487 /* ./../lib/standard//collection//array.nit:246 */
2488 fra
.me
.REG
[2] = ATTR_array___Array____items(fra
.me
.REG
[2]);
2489 REGB5
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
2490 if (UNTAG_Bool(REGB5
)) {
2491 nit_abort("Reciever is null", NULL
, LOCATE_array
, 246);
2493 /* ./../lib/standard//collection//array.nit:654 */
2494 fra
.me
.REG
[2] = ((Nit_NativeArray
)fra
.me
.REG
[2])->val
[UNTAG_Int(REGB3
)];
2495 /* ./../lib/standard//collection//array.nit:246 */
2498 /* ./../lib/standard//collection//array.nit:383 */
2499 CALL_abstract_collection___Map_____braeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB2
, fra
.me
.REG
[2]);
2500 /* ./../lib/standard//collection//array.nit:384 */
2501 CALL_abstract_collection___Map_____braeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
, fra
.me
.REG
[1]);
2503 /* ./../lib/standard//collection//array.nit:386 */
2505 /* ./../lib/standard//kernel.nit:215 */
2506 REGB2
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB2
));
2507 /* ./../lib/standard//collection//array.nit:386 */
2510 /* ./../lib/standard//collection//array.nit:371 */
2518 stack_frame_head
= fra
.me
.prev
;
2521 val_t
OC_array___Array___sub_sort_11(struct stack_frame_t
*closctx
, val_t p0
, val_t p1
){
2522 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
2525 /* ./../lib/standard//collection//array.nit:367 */
2526 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2527 fra
.me
.file
= LOCATE_array
;
2529 fra
.me
.meth
= LOCATE_array___Array___sub_sort
;
2530 fra
.me
.has_broke
= 0;
2531 fra
.me
.REG_size
= 2;
2532 fra
.me
.REG
[0] = NIT_NULL
;
2533 fra
.me
.REG
[1] = NIT_NULL
;
2536 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]);
2537 if (closctx
->closure_ctx
->has_broke
) {
2538 closctx
->has_broke
= 1;
2543 stack_frame_head
= fra
.me
.prev
;
2546 val_t
OC_array___Array___sub_sort_13(struct stack_frame_t
*closctx
, val_t p0
, val_t p1
){
2547 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
2550 /* ./../lib/standard//collection//array.nit:368 */
2551 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2552 fra
.me
.file
= LOCATE_array
;
2554 fra
.me
.meth
= LOCATE_array___Array___sub_sort
;
2555 fra
.me
.has_broke
= 0;
2556 fra
.me
.REG_size
= 2;
2557 fra
.me
.REG
[0] = NIT_NULL
;
2558 fra
.me
.REG
[1] = NIT_NULL
;
2561 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]);
2562 if (closctx
->closure_ctx
->has_broke
) {
2563 closctx
->has_broke
= 1;
2568 stack_frame_head
= fra
.me
.prev
;
2571 val_t
array___ArrayIterator___item(val_t p0
){
2572 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
2575 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2576 fra
.me
.file
= LOCATE_array
;
2578 fra
.me
.meth
= LOCATE_array___ArrayIterator___item
;
2579 fra
.me
.has_broke
= 0;
2580 fra
.me
.REG_size
= 2;
2581 fra
.me
.REG
[0] = NIT_NULL
;
2582 fra
.me
.REG
[1] = NIT_NULL
;
2584 /* ./../lib/standard//collection//array.nit:395 */
2585 REGB0
= TAG_Bool(ATTR_array___ArrayIterator____array(fra
.me
.REG
[0])!=NIT_NULL
);
2586 if (UNTAG_Bool(REGB0
)) {
2588 nit_abort("Uninitialized attribute %s", "_array", LOCATE_array
, 395);
2590 fra
.me
.REG
[1] = ATTR_array___ArrayIterator____array(fra
.me
.REG
[0]);
2591 REGB0
= TAG_Bool(ATTR_array___ArrayIterator____index(fra
.me
.REG
[0])!=NIT_NULL
);
2592 if (UNTAG_Bool(REGB0
)) {
2594 nit_abort("Uninitialized attribute %s", "_index", LOCATE_array
, 395);
2596 REGB0
= ATTR_array___ArrayIterator____index(fra
.me
.REG
[0]);
2597 fra
.me
.REG
[1] = CALL_abstract_collection___MapRead_____bra(fra
.me
.REG
[1])(fra
.me
.REG
[1], REGB0
);
2600 stack_frame_head
= fra
.me
.prev
;
2601 return fra
.me
.REG
[1];
2603 val_t
array___ArrayIterator___is_ok(val_t p0
){
2604 struct {struct stack_frame_t me
;} fra
;
2608 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2609 fra
.me
.file
= LOCATE_array
;
2611 fra
.me
.meth
= LOCATE_array___ArrayIterator___is_ok
;
2612 fra
.me
.has_broke
= 0;
2613 fra
.me
.REG_size
= 1;
2614 fra
.me
.REG
[0] = NIT_NULL
;
2616 /* ./../lib/standard//collection//array.nit:399 */
2617 REGB0
= TAG_Bool(ATTR_array___ArrayIterator____index(fra
.me
.REG
[0])!=NIT_NULL
);
2618 if (UNTAG_Bool(REGB0
)) {
2620 nit_abort("Uninitialized attribute %s", "_index", LOCATE_array
, 399);
2622 REGB0
= ATTR_array___ArrayIterator____index(fra
.me
.REG
[0]);
2623 REGB1
= TAG_Bool(ATTR_array___ArrayIterator____array(fra
.me
.REG
[0])!=NIT_NULL
);
2624 if (UNTAG_Bool(REGB1
)) {
2626 nit_abort("Uninitialized attribute %s", "_array", LOCATE_array
, 399);
2628 fra
.me
.REG
[0] = ATTR_array___ArrayIterator____array(fra
.me
.REG
[0]);
2629 /* ./../lib/standard//collection//array.nit:23 */
2630 REGB1
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
2631 if (UNTAG_Bool(REGB1
)) {
2633 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 23);
2635 REGB1
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0]);
2636 /* ./../lib/standard//kernel.nit:212 */
2637 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
2638 /* ./../lib/standard//collection//array.nit:399 */
2641 stack_frame_head
= fra
.me
.prev
;
2644 void array___ArrayIterator___next(val_t p0
){
2645 struct {struct stack_frame_t me
;} fra
;
2649 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2650 fra
.me
.file
= LOCATE_array
;
2652 fra
.me
.meth
= LOCATE_array___ArrayIterator___next
;
2653 fra
.me
.has_broke
= 0;
2654 fra
.me
.REG_size
= 1;
2655 fra
.me
.REG
[0] = NIT_NULL
;
2657 /* ./../lib/standard//collection//array.nit:401 */
2658 REGB0
= ATTR_array___ArrayIterator____index(fra
.me
.REG
[0]);
2660 /* ./../lib/standard//kernel.nit:215 */
2661 REGB1
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
2662 /* ./../lib/standard//collection//array.nit:401 */
2663 ATTR_array___ArrayIterator____index(fra
.me
.REG
[0]) = REGB1
;
2664 stack_frame_head
= fra
.me
.prev
;
2667 void array___ArrayIterator___init(val_t p0
, val_t p1
, int* init_table
){
2668 int itpos6
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_ArrayIterator
].i
;
2669 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
2672 if (init_table
[itpos6
]) return;
2673 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2674 fra
.me
.file
= LOCATE_array
;
2676 fra
.me
.meth
= LOCATE_array___ArrayIterator___init
;
2677 fra
.me
.has_broke
= 0;
2678 fra
.me
.REG_size
= 2;
2679 fra
.me
.REG
[0] = NIT_NULL
;
2680 fra
.me
.REG
[1] = NIT_NULL
;
2683 /* ./../lib/standard//collection//array.nit:405 */
2684 ATTR_array___ArrayIterator____array(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
2685 /* ./../lib/standard//collection//array.nit:406 */
2687 ATTR_array___ArrayIterator____index(fra
.me
.REG
[0]) = REGB0
;
2688 stack_frame_head
= fra
.me
.prev
;
2689 init_table
[itpos6
] = 1;
2692 val_t
array___ArrayIterator___index(val_t p0
){
2693 struct {struct stack_frame_t me
;} fra
;
2696 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2697 fra
.me
.file
= LOCATE_array
;
2699 fra
.me
.meth
= LOCATE_array___ArrayIterator___index
;
2700 fra
.me
.has_broke
= 0;
2701 fra
.me
.REG_size
= 1;
2702 fra
.me
.REG
[0] = NIT_NULL
;
2704 /* ./../lib/standard//collection//array.nit:409 */
2705 REGB0
= TAG_Bool(ATTR_array___ArrayIterator____index(fra
.me
.REG
[0])!=NIT_NULL
);
2706 if (UNTAG_Bool(REGB0
)) {
2708 nit_abort("Uninitialized attribute %s", "_index", LOCATE_array
, 409);
2710 REGB0
= ATTR_array___ArrayIterator____index(fra
.me
.REG
[0]);
2711 stack_frame_head
= fra
.me
.prev
;
2714 val_t
array___ArraySet___has(val_t p0
, val_t p1
){
2715 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
2718 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2719 fra
.me
.file
= LOCATE_array
;
2721 fra
.me
.meth
= LOCATE_array___ArraySet___has
;
2722 fra
.me
.has_broke
= 0;
2723 fra
.me
.REG_size
= 2;
2724 fra
.me
.REG
[0] = NIT_NULL
;
2725 fra
.me
.REG
[1] = NIT_NULL
;
2728 /* ./../lib/standard//collection//array.nit:421 */
2729 REGB0
= TAG_Bool(ATTR_array___ArraySet____array(fra
.me
.REG
[0])!=NIT_NULL
);
2730 if (UNTAG_Bool(REGB0
)) {
2732 nit_abort("Uninitialized attribute %s", "_array", LOCATE_array
, 421);
2734 fra
.me
.REG
[0] = ATTR_array___ArraySet____array(fra
.me
.REG
[0]);
2735 REGB0
= CALL_abstract_collection___Collection___has(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
2738 stack_frame_head
= fra
.me
.prev
;
2741 void array___ArraySet___add(val_t p0
, val_t p1
){
2742 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
2745 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2746 fra
.me
.file
= LOCATE_array
;
2748 fra
.me
.meth
= LOCATE_array___ArraySet___add
;
2749 fra
.me
.has_broke
= 0;
2750 fra
.me
.REG_size
= 3;
2751 fra
.me
.REG
[0] = NIT_NULL
;
2752 fra
.me
.REG
[1] = NIT_NULL
;
2753 fra
.me
.REG
[2] = NIT_NULL
;
2756 /* ./../lib/standard//collection//array.nit:423 */
2757 REGB0
= TAG_Bool(ATTR_array___ArraySet____array(fra
.me
.REG
[0])!=NIT_NULL
);
2758 if (UNTAG_Bool(REGB0
)) {
2760 nit_abort("Uninitialized attribute %s", "_array", LOCATE_array
, 423);
2762 fra
.me
.REG
[2] = ATTR_array___ArraySet____array(fra
.me
.REG
[0]);
2763 REGB0
= CALL_abstract_collection___Collection___has(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
2764 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
2765 if (UNTAG_Bool(REGB0
)) {
2766 REGB0
= TAG_Bool(ATTR_array___ArraySet____array(fra
.me
.REG
[0])!=NIT_NULL
);
2767 if (UNTAG_Bool(REGB0
)) {
2769 nit_abort("Uninitialized attribute %s", "_array", LOCATE_array
, 423);
2771 fra
.me
.REG
[0] = ATTR_array___ArraySet____array(fra
.me
.REG
[0]);
2772 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
2774 stack_frame_head
= fra
.me
.prev
;
2777 val_t
array___ArraySet___is_empty(val_t p0
){
2778 struct {struct stack_frame_t me
;} fra
;
2781 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2782 fra
.me
.file
= LOCATE_array
;
2784 fra
.me
.meth
= LOCATE_array___ArraySet___is_empty
;
2785 fra
.me
.has_broke
= 0;
2786 fra
.me
.REG_size
= 1;
2787 fra
.me
.REG
[0] = NIT_NULL
;
2789 /* ./../lib/standard//collection//array.nit:425 */
2790 REGB0
= TAG_Bool(ATTR_array___ArraySet____array(fra
.me
.REG
[0])!=NIT_NULL
);
2791 if (UNTAG_Bool(REGB0
)) {
2793 nit_abort("Uninitialized attribute %s", "_array", LOCATE_array
, 425);
2795 fra
.me
.REG
[0] = ATTR_array___ArraySet____array(fra
.me
.REG
[0]);
2796 REGB0
= CALL_abstract_collection___Collection___is_empty(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2799 stack_frame_head
= fra
.me
.prev
;
2802 val_t
array___ArraySet___length(val_t p0
){
2803 struct {struct stack_frame_t me
;} fra
;
2806 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2807 fra
.me
.file
= LOCATE_array
;
2809 fra
.me
.meth
= LOCATE_array___ArraySet___length
;
2810 fra
.me
.has_broke
= 0;
2811 fra
.me
.REG_size
= 1;
2812 fra
.me
.REG
[0] = NIT_NULL
;
2814 /* ./../lib/standard//collection//array.nit:427 */
2815 REGB0
= TAG_Bool(ATTR_array___ArraySet____array(fra
.me
.REG
[0])!=NIT_NULL
);
2816 if (UNTAG_Bool(REGB0
)) {
2818 nit_abort("Uninitialized attribute %s", "_array", LOCATE_array
, 427);
2820 fra
.me
.REG
[0] = ATTR_array___ArraySet____array(fra
.me
.REG
[0]);
2821 /* ./../lib/standard//collection//array.nit:23 */
2822 REGB0
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
2823 if (UNTAG_Bool(REGB0
)) {
2825 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 23);
2827 REGB0
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0]);
2828 /* ./../lib/standard//collection//array.nit:427 */
2831 stack_frame_head
= fra
.me
.prev
;
2834 val_t
array___ArraySet___first(val_t p0
){
2835 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
2839 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2840 fra
.me
.file
= LOCATE_array
;
2842 fra
.me
.meth
= LOCATE_array___ArraySet___first
;
2843 fra
.me
.has_broke
= 0;
2844 fra
.me
.REG_size
= 2;
2845 fra
.me
.REG
[0] = NIT_NULL
;
2846 fra
.me
.REG
[1] = NIT_NULL
;
2848 /* ./../lib/standard//collection//array.nit:431 */
2849 REGB0
= TAG_Bool(ATTR_array___ArraySet____array(fra
.me
.REG
[0])!=NIT_NULL
);
2850 if (UNTAG_Bool(REGB0
)) {
2852 nit_abort("Uninitialized attribute %s", "_array", LOCATE_array
, 431);
2854 fra
.me
.REG
[1] = ATTR_array___ArraySet____array(fra
.me
.REG
[0]);
2855 /* ./../lib/standard//collection//array.nit:23 */
2856 REGB0
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[1])!=NIT_NULL
);
2857 if (UNTAG_Bool(REGB0
)) {
2859 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 23);
2861 REGB0
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[1]);
2862 /* ./../lib/standard//collection//array.nit:431 */
2864 /* ./../lib/standard//kernel.nit:214 */
2865 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>UNTAG_Int(REGB1
));
2866 /* ./../lib/standard//collection//array.nit:431 */
2867 if (UNTAG_Bool(REGB1
)) {
2869 nit_abort("Assert failed", NULL
, LOCATE_array
, 431);
2871 /* ./../lib/standard//collection//array.nit:432 */
2872 REGB1
= TAG_Bool(ATTR_array___ArraySet____array(fra
.me
.REG
[0])!=NIT_NULL
);
2873 if (UNTAG_Bool(REGB1
)) {
2875 nit_abort("Uninitialized attribute %s", "_array", LOCATE_array
, 432);
2877 fra
.me
.REG
[0] = ATTR_array___ArraySet____array(fra
.me
.REG
[0]);
2878 fra
.me
.REG
[0] = CALL_abstract_collection___Collection___first(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2881 stack_frame_head
= fra
.me
.prev
;
2882 return fra
.me
.REG
[0];
2884 void array___ArraySet___remove(val_t p0
, val_t p1
){
2885 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
2889 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2890 fra
.me
.file
= LOCATE_array
;
2892 fra
.me
.meth
= LOCATE_array___ArraySet___remove
;
2893 fra
.me
.has_broke
= 0;
2894 fra
.me
.REG_size
= 3;
2895 fra
.me
.REG
[0] = NIT_NULL
;
2896 fra
.me
.REG
[1] = NIT_NULL
;
2897 fra
.me
.REG
[2] = NIT_NULL
;
2900 /* ./../lib/standard//collection//array.nit:437 */
2901 REGB0
= TAG_Bool(ATTR_array___ArraySet____array(fra
.me
.REG
[0])!=NIT_NULL
);
2902 if (UNTAG_Bool(REGB0
)) {
2904 nit_abort("Uninitialized attribute %s", "_array", LOCATE_array
, 437);
2906 fra
.me
.REG
[2] = ATTR_array___ArraySet____array(fra
.me
.REG
[0]);
2907 REGB0
= CALL_abstract_collection___SequenceRead___index_of(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
2908 /* ./../lib/standard//collection//array.nit:438 */
2910 /* ./../lib/standard//kernel.nit:213 */
2911 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB1
));
2912 /* ./../lib/standard//collection//array.nit:438 */
2913 if (UNTAG_Bool(REGB1
)) {
2914 CALL_array___ArraySet___remove_at(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
2916 stack_frame_head
= fra
.me
.prev
;
2919 void array___ArraySet___remove_all(val_t p0
, val_t p1
){
2920 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
2922 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2923 fra
.me
.file
= LOCATE_array
;
2925 fra
.me
.meth
= LOCATE_array___ArraySet___remove_all
;
2926 fra
.me
.has_broke
= 0;
2927 fra
.me
.REG_size
= 2;
2928 fra
.me
.REG
[0] = NIT_NULL
;
2929 fra
.me
.REG
[1] = NIT_NULL
;
2932 /* ./../lib/standard//collection//array.nit:441 */
2933 CALL_abstract_collection___RemovableCollection___remove(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
2934 stack_frame_head
= fra
.me
.prev
;
2937 void array___ArraySet___clear(val_t p0
){
2938 struct {struct stack_frame_t me
;} fra
;
2941 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2942 fra
.me
.file
= LOCATE_array
;
2944 fra
.me
.meth
= LOCATE_array___ArraySet___clear
;
2945 fra
.me
.has_broke
= 0;
2946 fra
.me
.REG_size
= 1;
2947 fra
.me
.REG
[0] = NIT_NULL
;
2949 /* ./../lib/standard//collection//array.nit:443 */
2950 REGB0
= TAG_Bool(ATTR_array___ArraySet____array(fra
.me
.REG
[0])!=NIT_NULL
);
2951 if (UNTAG_Bool(REGB0
)) {
2953 nit_abort("Uninitialized attribute %s", "_array", LOCATE_array
, 443);
2955 fra
.me
.REG
[0] = ATTR_array___ArraySet____array(fra
.me
.REG
[0]);
2956 CALL_abstract_collection___RemovableCollection___clear(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2957 stack_frame_head
= fra
.me
.prev
;
2960 val_t
array___ArraySet___iterator(val_t p0
){
2961 struct {struct stack_frame_t me
;} fra
;
2964 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2965 fra
.me
.file
= LOCATE_array
;
2967 fra
.me
.meth
= LOCATE_array___ArraySet___iterator
;
2968 fra
.me
.has_broke
= 0;
2969 fra
.me
.REG_size
= 1;
2970 fra
.me
.REG
[0] = NIT_NULL
;
2972 /* ./../lib/standard//collection//array.nit:445 */
2973 REGB0
= TAG_Bool(ATTR_array___ArraySet____array(fra
.me
.REG
[0])!=NIT_NULL
);
2974 if (UNTAG_Bool(REGB0
)) {
2976 nit_abort("Uninitialized attribute %s", "_array", LOCATE_array
, 445);
2978 fra
.me
.REG
[0] = ATTR_array___ArraySet____array(fra
.me
.REG
[0]);
2979 fra
.me
.REG
[0] = CALL_abstract_collection___Collection___iterator(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2980 fra
.me
.REG
[0] = NEW_ArraySetIterator_array___ArraySetIterator___init(fra
.me
.REG
[0]);
2983 stack_frame_head
= fra
.me
.prev
;
2984 return fra
.me
.REG
[0];
2986 void array___ArraySet___enlarge(val_t p0
, val_t p1
){
2987 struct {struct stack_frame_t me
;} fra
;
2991 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2992 fra
.me
.file
= LOCATE_array
;
2994 fra
.me
.meth
= LOCATE_array___ArraySet___enlarge
;
2995 fra
.me
.has_broke
= 0;
2996 fra
.me
.REG_size
= 1;
2997 fra
.me
.REG
[0] = NIT_NULL
;
3000 /* ./../lib/standard//collection//array.nit:448 */
3001 REGB1
= TAG_Bool(ATTR_array___ArraySet____array(fra
.me
.REG
[0])!=NIT_NULL
);
3002 if (UNTAG_Bool(REGB1
)) {
3004 nit_abort("Uninitialized attribute %s", "_array", LOCATE_array
, 448);
3006 fra
.me
.REG
[0] = ATTR_array___ArraySet____array(fra
.me
.REG
[0]);
3007 CALL_array___AbstractArray___enlarge(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
3008 stack_frame_head
= fra
.me
.prev
;
3011 void array___ArraySet___remove_at(val_t p0
, val_t p1
){
3012 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
3016 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3017 fra
.me
.file
= LOCATE_array
;
3019 fra
.me
.meth
= LOCATE_array___ArraySet___remove_at
;
3020 fra
.me
.has_broke
= 0;
3021 fra
.me
.REG_size
= 3;
3022 fra
.me
.REG
[0] = NIT_NULL
;
3023 fra
.me
.REG
[1] = NIT_NULL
;
3024 fra
.me
.REG
[2] = NIT_NULL
;
3027 /* ./../lib/standard//collection//array.nit:452 */
3028 REGB1
= TAG_Bool(ATTR_array___ArraySet____array(fra
.me
.REG
[0])!=NIT_NULL
);
3029 if (UNTAG_Bool(REGB1
)) {
3031 nit_abort("Uninitialized attribute %s", "_array", LOCATE_array
, 452);
3033 fra
.me
.REG
[1] = ATTR_array___ArraySet____array(fra
.me
.REG
[0]);
3034 REGB1
= TAG_Bool(ATTR_array___ArraySet____array(fra
.me
.REG
[0])!=NIT_NULL
);
3035 if (UNTAG_Bool(REGB1
)) {
3037 nit_abort("Uninitialized attribute %s", "_array", LOCATE_array
, 452);
3039 fra
.me
.REG
[2] = ATTR_array___ArraySet____array(fra
.me
.REG
[0]);
3040 fra
.me
.REG
[2] = CALL_abstract_collection___SequenceRead___last(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
3041 CALL_abstract_collection___Map_____braeq(fra
.me
.REG
[1])(fra
.me
.REG
[1], REGB0
, fra
.me
.REG
[2]);
3042 /* ./../lib/standard//collection//array.nit:453 */
3043 REGB0
= TAG_Bool(ATTR_array___ArraySet____array(fra
.me
.REG
[0])!=NIT_NULL
);
3044 if (UNTAG_Bool(REGB0
)) {
3046 nit_abort("Uninitialized attribute %s", "_array", LOCATE_array
, 453);
3048 fra
.me
.REG
[0] = ATTR_array___ArraySet____array(fra
.me
.REG
[0]);
3049 CALL_abstract_collection___Sequence___pop(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3050 stack_frame_head
= fra
.me
.prev
;
3053 void array___ArraySet___init(val_t p0
, int* init_table
){
3054 int itpos7
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_ArraySet
].i
;
3055 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
3057 if (init_table
[itpos7
]) return;
3058 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3059 fra
.me
.file
= LOCATE_array
;
3061 fra
.me
.meth
= LOCATE_array___ArraySet___init
;
3062 fra
.me
.has_broke
= 0;
3063 fra
.me
.REG_size
= 2;
3064 fra
.me
.REG
[0] = NIT_NULL
;
3065 fra
.me
.REG
[1] = NIT_NULL
;
3067 /* ./../lib/standard//collection//array.nit:457 */
3068 fra
.me
.REG
[1] = NEW_Array_array___Array___init();
3069 ATTR_array___ArraySet____array(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
3070 stack_frame_head
= fra
.me
.prev
;
3071 init_table
[itpos7
] = 1;
3074 void array___ArraySet___with_capacity(val_t p0
, val_t p1
, int* init_table
){
3075 int itpos8
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_ArraySet
].i
;
3076 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
3079 if (init_table
[itpos8
]) return;
3080 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3081 fra
.me
.file
= LOCATE_array
;
3083 fra
.me
.meth
= LOCATE_array___ArraySet___with_capacity
;
3084 fra
.me
.has_broke
= 0;
3085 fra
.me
.REG_size
= 2;
3086 fra
.me
.REG
[0] = NIT_NULL
;
3087 fra
.me
.REG
[1] = NIT_NULL
;
3090 /* ./../lib/standard//collection//array.nit:460 */
3091 fra
.me
.REG
[1] = NEW_Array_array___Array___with_capacity(REGB0
);
3092 ATTR_array___ArraySet____array(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
3093 stack_frame_head
= fra
.me
.prev
;
3094 init_table
[itpos8
] = 1;
3097 val_t
array___ArraySetIterator___is_ok(val_t p0
){
3098 struct {struct stack_frame_t me
;} fra
;
3101 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3102 fra
.me
.file
= LOCATE_array
;
3104 fra
.me
.meth
= LOCATE_array___ArraySetIterator___is_ok
;
3105 fra
.me
.has_broke
= 0;
3106 fra
.me
.REG_size
= 1;
3107 fra
.me
.REG
[0] = NIT_NULL
;
3109 /* ./../lib/standard//collection//array.nit:467 */
3110 REGB0
= TAG_Bool(ATTR_array___ArraySetIterator____iter(fra
.me
.REG
[0])!=NIT_NULL
);
3111 if (UNTAG_Bool(REGB0
)) {
3113 nit_abort("Uninitialized attribute %s", "_iter", LOCATE_array
, 467);
3115 fra
.me
.REG
[0] = ATTR_array___ArraySetIterator____iter(fra
.me
.REG
[0]);
3116 REGB0
= CALL_abstract_collection___Iterator___is_ok(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3119 stack_frame_head
= fra
.me
.prev
;
3122 void array___ArraySetIterator___next(val_t p0
){
3123 struct {struct stack_frame_t me
;} fra
;
3126 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3127 fra
.me
.file
= LOCATE_array
;
3129 fra
.me
.meth
= LOCATE_array___ArraySetIterator___next
;
3130 fra
.me
.has_broke
= 0;
3131 fra
.me
.REG_size
= 1;
3132 fra
.me
.REG
[0] = NIT_NULL
;
3134 /* ./../lib/standard//collection//array.nit:469 */
3135 REGB0
= TAG_Bool(ATTR_array___ArraySetIterator____iter(fra
.me
.REG
[0])!=NIT_NULL
);
3136 if (UNTAG_Bool(REGB0
)) {
3138 nit_abort("Uninitialized attribute %s", "_iter", LOCATE_array
, 469);
3140 fra
.me
.REG
[0] = ATTR_array___ArraySetIterator____iter(fra
.me
.REG
[0]);
3141 CALL_abstract_collection___Iterator___next(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3142 stack_frame_head
= fra
.me
.prev
;
3145 val_t
array___ArraySetIterator___item(val_t p0
){
3146 struct {struct stack_frame_t me
;} fra
;
3149 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3150 fra
.me
.file
= LOCATE_array
;
3152 fra
.me
.meth
= LOCATE_array___ArraySetIterator___item
;
3153 fra
.me
.has_broke
= 0;
3154 fra
.me
.REG_size
= 1;
3155 fra
.me
.REG
[0] = NIT_NULL
;
3157 /* ./../lib/standard//collection//array.nit:471 */
3158 REGB0
= TAG_Bool(ATTR_array___ArraySetIterator____iter(fra
.me
.REG
[0])!=NIT_NULL
);
3159 if (UNTAG_Bool(REGB0
)) {
3161 nit_abort("Uninitialized attribute %s", "_iter", LOCATE_array
, 471);
3163 fra
.me
.REG
[0] = ATTR_array___ArraySetIterator____iter(fra
.me
.REG
[0]);
3164 fra
.me
.REG
[0] = CALL_abstract_collection___Iterator___item(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3167 stack_frame_head
= fra
.me
.prev
;
3168 return fra
.me
.REG
[0];
3170 void array___ArraySetIterator___init(val_t p0
, val_t p1
, int* init_table
){
3171 int itpos9
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_ArraySetIterator
].i
;
3172 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
3174 if (init_table
[itpos9
]) return;
3175 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3176 fra
.me
.file
= LOCATE_array
;
3178 fra
.me
.meth
= LOCATE_array___ArraySetIterator___init
;
3179 fra
.me
.has_broke
= 0;
3180 fra
.me
.REG_size
= 2;
3181 fra
.me
.REG
[0] = NIT_NULL
;
3182 fra
.me
.REG
[1] = NIT_NULL
;
3185 /* ./../lib/standard//collection//array.nit:473 */
3186 ATTR_array___ArraySetIterator____iter(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
3187 stack_frame_head
= fra
.me
.prev
;
3188 init_table
[itpos9
] = 1;
3191 val_t
array___ArrayMap_____bra(val_t p0
, val_t p1
){
3192 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
3197 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3198 fra
.me
.file
= LOCATE_array
;
3200 fra
.me
.meth
= LOCATE_array___ArrayMap_____bra
;
3201 fra
.me
.has_broke
= 0;
3202 fra
.me
.REG_size
= 2;
3203 fra
.me
.REG
[0] = NIT_NULL
;
3204 fra
.me
.REG
[1] = NIT_NULL
;
3207 /* ./../lib/standard//collection//array.nit:486 */
3208 REGB0
= CALL_array___ArrayMap___index(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
3209 /* ./../lib/standard//collection//array.nit:487 */
3211 /* ./../lib/standard//kernel.nit:213 */
3212 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB1
));
3213 /* ./../lib/standard//collection//array.nit:487 */
3214 if (UNTAG_Bool(REGB1
)) {
3215 /* ./../lib/standard//collection//array.nit:488 */
3216 REGB1
= TAG_Bool(ATTR_array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
3217 if (UNTAG_Bool(REGB1
)) {
3219 nit_abort("Uninitialized attribute %s", "_items", LOCATE_array
, 488);
3221 fra
.me
.REG
[0] = ATTR_array___ArrayMap____items(fra
.me
.REG
[0]);
3222 /* ./../lib/standard//collection//array.nit:245 */
3224 /* ./../lib/standard//kernel.nit:213 */
3225 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB1
));
3226 /* ./../lib/standard//collection//array.nit:245 */
3227 if (UNTAG_Bool(REGB1
)) {
3228 REGB1
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
3229 if (UNTAG_Bool(REGB1
)) {
3231 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 245);
3233 REGB1
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0]);
3234 /* ./../lib/standard//kernel.nit:212 */
3235 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
3237 /* ./../lib/standard//collection//array.nit:245 */
3238 REGB2
= TAG_Bool(false);
3241 if (UNTAG_Bool(REGB1
)) {
3243 nit_abort("Assert %s failed", "'index'", LOCATE_array
, 245);
3245 /* ./../lib/standard//collection//array.nit:246 */
3246 fra
.me
.REG
[0] = ATTR_array___Array____items(fra
.me
.REG
[0]);
3247 REGB1
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
3248 if (UNTAG_Bool(REGB1
)) {
3249 nit_abort("Reciever is null", NULL
, LOCATE_array
, 246);
3251 /* ./../lib/standard//collection//array.nit:654 */
3252 fra
.me
.REG
[0] = ((Nit_NativeArray
)fra
.me
.REG
[0])->val
[UNTAG_Int(REGB0
)];
3253 /* ./../lib/standard//collection//array.nit:246 */
3256 /* ./../lib/standard//collection//array.nit:488 */
3257 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
3258 if (UNTAG_Bool(REGB0
)) {
3259 nit_abort("Reciever is null", NULL
, LOCATE_array
, 488);
3261 fra
.me
.REG
[0] = CALL_abstract_collection___Couple___second(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3264 /* ./../lib/standard//collection//array.nit:490 */
3265 nit_abort("Aborted", NULL
, LOCATE_array
, 490);
3268 stack_frame_head
= fra
.me
.prev
;
3269 return fra
.me
.REG
[0];
3271 void array___ArrayMap_____braeq(val_t p0
, val_t p1
, val_t p2
){
3272 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
3277 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3278 fra
.me
.file
= LOCATE_array
;
3280 fra
.me
.meth
= LOCATE_array___ArrayMap_____braeq
;
3281 fra
.me
.has_broke
= 0;
3282 fra
.me
.REG_size
= 4;
3283 fra
.me
.REG
[0] = NIT_NULL
;
3284 fra
.me
.REG
[1] = NIT_NULL
;
3285 fra
.me
.REG
[2] = NIT_NULL
;
3286 fra
.me
.REG
[3] = NIT_NULL
;
3290 /* ./../lib/standard//collection//array.nit:497 */
3291 REGB0
= CALL_array___ArrayMap___index(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
3292 /* ./../lib/standard//collection//array.nit:498 */
3294 /* ./../lib/standard//kernel.nit:213 */
3295 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB1
));
3296 /* ./../lib/standard//collection//array.nit:498 */
3297 if (UNTAG_Bool(REGB1
)) {
3298 /* ./../lib/standard//collection//array.nit:499 */
3299 REGB1
= TAG_Bool(ATTR_array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
3300 if (UNTAG_Bool(REGB1
)) {
3302 nit_abort("Uninitialized attribute %s", "_items", LOCATE_array
, 499);
3304 fra
.me
.REG
[3] = ATTR_array___ArrayMap____items(fra
.me
.REG
[0]);
3305 /* ./../lib/standard//collection//array.nit:245 */
3307 /* ./../lib/standard//kernel.nit:213 */
3308 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB1
));
3309 /* ./../lib/standard//collection//array.nit:245 */
3310 if (UNTAG_Bool(REGB1
)) {
3311 REGB1
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[3])!=NIT_NULL
);
3312 if (UNTAG_Bool(REGB1
)) {
3314 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 245);
3316 REGB1
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[3]);
3317 /* ./../lib/standard//kernel.nit:212 */
3318 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
3320 /* ./../lib/standard//collection//array.nit:245 */
3321 REGB2
= TAG_Bool(false);
3324 if (UNTAG_Bool(REGB1
)) {
3326 nit_abort("Assert %s failed", "'index'", LOCATE_array
, 245);
3328 /* ./../lib/standard//collection//array.nit:246 */
3329 fra
.me
.REG
[3] = ATTR_array___Array____items(fra
.me
.REG
[3]);
3330 REGB1
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
3331 if (UNTAG_Bool(REGB1
)) {
3332 nit_abort("Reciever is null", NULL
, LOCATE_array
, 246);
3334 /* ./../lib/standard//collection//array.nit:654 */
3335 fra
.me
.REG
[3] = ((Nit_NativeArray
)fra
.me
.REG
[3])->val
[UNTAG_Int(REGB0
)];
3336 /* ./../lib/standard//collection//array.nit:246 */
3339 /* ./../lib/standard//collection//array.nit:499 */
3340 REGB0
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
3341 if (UNTAG_Bool(REGB0
)) {
3342 nit_abort("Reciever is null", NULL
, LOCATE_array
, 499);
3344 CALL_abstract_collection___Couple___second__eq(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[2]);
3346 /* ./../lib/standard//collection//array.nit:501 */
3347 REGB0
= TAG_Bool(ATTR_array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
3348 if (UNTAG_Bool(REGB0
)) {
3350 nit_abort("Uninitialized attribute %s", "_items", LOCATE_array
, 501);
3352 fra
.me
.REG
[0] = ATTR_array___ArrayMap____items(fra
.me
.REG
[0]);
3353 fra
.me
.REG
[2] = NEW_Couple_abstract_collection___Couple___init(fra
.me
.REG
[1], fra
.me
.REG
[2]);
3354 CALL_abstract_collection___Sequence___push(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[2]);
3356 stack_frame_head
= fra
.me
.prev
;
3359 val_t
array___ArrayMap___has_key(val_t p0
, val_t p1
){
3360 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
3364 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3365 fra
.me
.file
= LOCATE_array
;
3367 fra
.me
.meth
= LOCATE_array___ArrayMap___has_key
;
3368 fra
.me
.has_broke
= 0;
3369 fra
.me
.REG_size
= 2;
3370 fra
.me
.REG
[0] = NIT_NULL
;
3371 fra
.me
.REG
[1] = NIT_NULL
;
3374 /* ./../lib/standard//collection//array.nit:506 */
3375 REGB0
= CALL_array___ArrayMap___index(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
3377 /* ./../lib/standard//kernel.nit:213 */
3378 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB1
));
3379 /* ./../lib/standard//collection//array.nit:506 */
3382 stack_frame_head
= fra
.me
.prev
;
3385 val_t
array___ArrayMap___has(val_t p0
, val_t p1
){
3386 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
3391 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3392 fra
.me
.file
= LOCATE_array
;
3394 fra
.me
.meth
= LOCATE_array___ArrayMap___has
;
3395 fra
.me
.has_broke
= 0;
3396 fra
.me
.REG_size
= 4;
3397 fra
.me
.REG
[0] = NIT_NULL
;
3398 fra
.me
.REG
[1] = NIT_NULL
;
3399 fra
.me
.REG
[2] = NIT_NULL
;
3400 fra
.me
.REG
[3] = NIT_NULL
;
3403 /* ./../lib/standard//collection//array.nit:511 */
3404 REGB0
= TAG_Bool(ATTR_array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
3405 if (UNTAG_Bool(REGB0
)) {
3407 nit_abort("Uninitialized attribute %s", "_items", LOCATE_array
, 511);
3409 fra
.me
.REG
[0] = ATTR_array___ArrayMap____items(fra
.me
.REG
[0]);
3410 /* ./../lib/standard//collection//array.nit:234 */
3412 /* ./../lib/standard//collection//array.nit:235 */
3413 REGB1
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
3414 if (UNTAG_Bool(REGB1
)) {
3416 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 235);
3418 REGB1
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0]);
3419 /* ./../lib/standard//collection//array.nit:236 */
3420 fra
.me
.REG
[2] = ATTR_array___Array____items(fra
.me
.REG
[0]);
3421 /* ./../lib/standard//collection//array.nit:237 */
3423 /* ./../lib/standard//collection//array.nit:23 */
3424 REGB1
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
3425 if (UNTAG_Bool(REGB1
)) {
3427 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 23);
3429 REGB1
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0]);
3430 /* ./../lib/standard//kernel.nit:212 */
3431 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
3432 /* ./../lib/standard//collection//array.nit:237 */
3433 if (UNTAG_Bool(REGB1
)) {
3434 /* ./../lib/standard//collection//array.nit:238 */
3435 REGB1
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
3436 if (UNTAG_Bool(REGB1
)) {
3437 nit_abort("Reciever is null", NULL
, LOCATE_array
, 238);
3439 /* ./../lib/standard//collection//array.nit:654 */
3440 fra
.me
.REG
[3] = ((Nit_NativeArray
)fra
.me
.REG
[2])->val
[UNTAG_Int(REGB0
)];
3441 /* ./../lib/standard//collection//array.nit:511 */
3442 fra
.me
.REG
[3] = CALL_abstract_collection___Couple___second(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
3443 REGB1
= TAG_Bool(IS_EQUAL_NN(fra
.me
.REG
[3],fra
.me
.REG
[1]));
3444 if (UNTAG_Bool(REGB1
)) {
3446 REGB2
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
3447 if (UNTAG_Bool(REGB2
)) {
3448 REGB2
= TAG_Bool(false);
3451 REGB2
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[1]);
3455 if (UNTAG_Bool(REGB1
)) {
3456 REGB1
= TAG_Bool(true);
3459 /* ./../lib/standard//collection//array.nit:239 */
3461 /* ./../lib/standard//kernel.nit:215 */
3462 REGB2
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB2
));
3463 /* ./../lib/standard//collection//array.nit:239 */
3466 /* ./../lib/standard//collection//array.nit:237 */
3471 /* ./../lib/standard//collection//array.nit:512 */
3472 REGB0
= TAG_Bool(false);
3476 stack_frame_head
= fra
.me
.prev
;
3479 val_t
array___ArrayMap___has_only(val_t p0
, val_t p1
){
3480 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
3485 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3486 fra
.me
.file
= LOCATE_array
;
3488 fra
.me
.meth
= LOCATE_array___ArrayMap___has_only
;
3489 fra
.me
.has_broke
= 0;
3490 fra
.me
.REG_size
= 4;
3491 fra
.me
.REG
[0] = NIT_NULL
;
3492 fra
.me
.REG
[1] = NIT_NULL
;
3493 fra
.me
.REG
[2] = NIT_NULL
;
3494 fra
.me
.REG
[3] = NIT_NULL
;
3497 /* ./../lib/standard//collection//array.nit:518 */
3498 REGB0
= TAG_Bool(ATTR_array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
3499 if (UNTAG_Bool(REGB0
)) {
3501 nit_abort("Uninitialized attribute %s", "_items", LOCATE_array
, 518);
3503 fra
.me
.REG
[0] = ATTR_array___ArrayMap____items(fra
.me
.REG
[0]);
3504 /* ./../lib/standard//collection//array.nit:234 */
3506 /* ./../lib/standard//collection//array.nit:235 */
3507 REGB1
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
3508 if (UNTAG_Bool(REGB1
)) {
3510 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 235);
3512 REGB1
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0]);
3513 /* ./../lib/standard//collection//array.nit:236 */
3514 fra
.me
.REG
[2] = ATTR_array___Array____items(fra
.me
.REG
[0]);
3515 /* ./../lib/standard//collection//array.nit:237 */
3517 /* ./../lib/standard//collection//array.nit:23 */
3518 REGB1
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
3519 if (UNTAG_Bool(REGB1
)) {
3521 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 23);
3523 REGB1
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0]);
3524 /* ./../lib/standard//kernel.nit:212 */
3525 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
3526 /* ./../lib/standard//collection//array.nit:237 */
3527 if (UNTAG_Bool(REGB1
)) {
3528 /* ./../lib/standard//collection//array.nit:238 */
3529 REGB1
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
3530 if (UNTAG_Bool(REGB1
)) {
3531 nit_abort("Reciever is null", NULL
, LOCATE_array
, 238);
3533 /* ./../lib/standard//collection//array.nit:654 */
3534 fra
.me
.REG
[3] = ((Nit_NativeArray
)fra
.me
.REG
[2])->val
[UNTAG_Int(REGB0
)];
3535 /* ./../lib/standard//collection//array.nit:518 */
3536 fra
.me
.REG
[3] = CALL_abstract_collection___Couple___second(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
3537 REGB1
= TAG_Bool(IS_EQUAL_NN(fra
.me
.REG
[3],fra
.me
.REG
[1]));
3538 if (UNTAG_Bool(REGB1
)) {
3540 REGB2
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
3541 if (UNTAG_Bool(REGB2
)) {
3542 REGB2
= TAG_Bool(false);
3545 REGB2
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[1]);
3549 REGB1
= TAG_Bool(!UNTAG_Bool(REGB1
));
3550 if (UNTAG_Bool(REGB1
)) {
3551 REGB1
= TAG_Bool(false);
3554 /* ./../lib/standard//collection//array.nit:239 */
3556 /* ./../lib/standard//kernel.nit:215 */
3557 REGB2
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB2
));
3558 /* ./../lib/standard//collection//array.nit:239 */
3561 /* ./../lib/standard//collection//array.nit:237 */
3566 /* ./../lib/standard//collection//array.nit:519 */
3567 REGB0
= TAG_Bool(true);
3571 stack_frame_head
= fra
.me
.prev
;
3574 val_t
array___ArrayMap___length(val_t p0
){
3575 struct {struct stack_frame_t me
;} fra
;
3578 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3579 fra
.me
.file
= LOCATE_array
;
3581 fra
.me
.meth
= LOCATE_array___ArrayMap___length
;
3582 fra
.me
.has_broke
= 0;
3583 fra
.me
.REG_size
= 1;
3584 fra
.me
.REG
[0] = NIT_NULL
;
3586 /* ./../lib/standard//collection//array.nit:523 */
3587 REGB0
= TAG_Bool(ATTR_array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
3588 if (UNTAG_Bool(REGB0
)) {
3590 nit_abort("Uninitialized attribute %s", "_items", LOCATE_array
, 523);
3592 fra
.me
.REG
[0] = ATTR_array___ArrayMap____items(fra
.me
.REG
[0]);
3593 /* ./../lib/standard//collection//array.nit:23 */
3594 REGB0
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
3595 if (UNTAG_Bool(REGB0
)) {
3597 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 23);
3599 REGB0
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0]);
3600 /* ./../lib/standard//collection//array.nit:523 */
3603 stack_frame_head
= fra
.me
.prev
;
3606 val_t
array___ArrayMap___first(val_t p0
){
3607 struct {struct stack_frame_t me
;} fra
;
3610 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3611 fra
.me
.file
= LOCATE_array
;
3613 fra
.me
.meth
= LOCATE_array___ArrayMap___first
;
3614 fra
.me
.has_broke
= 0;
3615 fra
.me
.REG_size
= 1;
3616 fra
.me
.REG
[0] = NIT_NULL
;
3618 /* ./../lib/standard//collection//array.nit:525 */
3619 REGB0
= TAG_Bool(ATTR_array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
3620 if (UNTAG_Bool(REGB0
)) {
3622 nit_abort("Uninitialized attribute %s", "_items", LOCATE_array
, 525);
3624 fra
.me
.REG
[0] = ATTR_array___ArrayMap____items(fra
.me
.REG
[0]);
3625 fra
.me
.REG
[0] = CALL_abstract_collection___Collection___first(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3626 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
3627 if (UNTAG_Bool(REGB0
)) {
3628 nit_abort("Reciever is null", NULL
, LOCATE_array
, 525);
3630 fra
.me
.REG
[0] = CALL_abstract_collection___Couple___second(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3633 stack_frame_head
= fra
.me
.prev
;
3634 return fra
.me
.REG
[0];
3636 val_t
array___ArrayMap___count(val_t p0
, val_t p1
){
3637 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
3643 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3644 fra
.me
.file
= LOCATE_array
;
3646 fra
.me
.meth
= LOCATE_array___ArrayMap___count
;
3647 fra
.me
.has_broke
= 0;
3648 fra
.me
.REG_size
= 4;
3649 fra
.me
.REG
[0] = NIT_NULL
;
3650 fra
.me
.REG
[1] = NIT_NULL
;
3651 fra
.me
.REG
[2] = NIT_NULL
;
3652 fra
.me
.REG
[3] = NIT_NULL
;
3655 /* ./../lib/standard//collection//array.nit:530 */
3657 /* ./../lib/standard//collection//array.nit:531 */
3658 REGB1
= TAG_Bool(ATTR_array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
3659 if (UNTAG_Bool(REGB1
)) {
3661 nit_abort("Uninitialized attribute %s", "_items", LOCATE_array
, 531);
3663 fra
.me
.REG
[0] = ATTR_array___ArrayMap____items(fra
.me
.REG
[0]);
3664 /* ./../lib/standard//collection//array.nit:234 */
3666 /* ./../lib/standard//collection//array.nit:235 */
3667 REGB2
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
3668 if (UNTAG_Bool(REGB2
)) {
3670 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 235);
3672 REGB2
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0]);
3673 /* ./../lib/standard//collection//array.nit:236 */
3674 fra
.me
.REG
[2] = ATTR_array___Array____items(fra
.me
.REG
[0]);
3675 /* ./../lib/standard//collection//array.nit:237 */
3677 /* ./../lib/standard//collection//array.nit:23 */
3678 REGB2
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
3679 if (UNTAG_Bool(REGB2
)) {
3681 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 23);
3683 REGB2
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0]);
3684 /* ./../lib/standard//kernel.nit:212 */
3685 REGB2
= TAG_Bool(UNTAG_Int(REGB1
)<UNTAG_Int(REGB2
));
3686 /* ./../lib/standard//collection//array.nit:237 */
3687 if (UNTAG_Bool(REGB2
)) {
3688 /* ./../lib/standard//collection//array.nit:238 */
3689 REGB2
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
3690 if (UNTAG_Bool(REGB2
)) {
3691 nit_abort("Reciever is null", NULL
, LOCATE_array
, 238);
3693 /* ./../lib/standard//collection//array.nit:654 */
3694 fra
.me
.REG
[3] = ((Nit_NativeArray
)fra
.me
.REG
[2])->val
[UNTAG_Int(REGB1
)];
3695 /* ./../lib/standard//collection//array.nit:531 */
3696 fra
.me
.REG
[3] = CALL_abstract_collection___Couple___second(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
3697 REGB2
= TAG_Bool(IS_EQUAL_NN(fra
.me
.REG
[3],fra
.me
.REG
[1]));
3698 if (UNTAG_Bool(REGB2
)) {
3700 REGB3
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
3701 if (UNTAG_Bool(REGB3
)) {
3702 REGB3
= TAG_Bool(false);
3705 REGB3
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[1]);
3709 if (UNTAG_Bool(REGB2
)) {
3711 /* ./../lib/standard//kernel.nit:215 */
3712 REGB2
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB2
));
3713 /* ./../lib/standard//collection//array.nit:531 */
3716 /* ./../lib/standard//collection//array.nit:239 */
3718 /* ./../lib/standard//kernel.nit:215 */
3719 REGB2
= TAG_Int(UNTAG_Int(REGB1
)+UNTAG_Int(REGB2
));
3720 /* ./../lib/standard//collection//array.nit:239 */
3723 /* ./../lib/standard//collection//array.nit:237 */
3728 /* ./../lib/standard//collection//array.nit:532 */
3731 stack_frame_head
= fra
.me
.prev
;
3734 val_t
array___ArrayMap___iterator(val_t p0
){
3735 struct {struct stack_frame_t me
;} fra
;
3738 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3739 fra
.me
.file
= LOCATE_array
;
3741 fra
.me
.meth
= LOCATE_array___ArrayMap___iterator
;
3742 fra
.me
.has_broke
= 0;
3743 fra
.me
.REG_size
= 1;
3744 fra
.me
.REG
[0] = NIT_NULL
;
3746 /* ./../lib/standard//collection//array.nit:535 */
3747 REGB0
= TAG_Bool(ATTR_array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
3748 if (UNTAG_Bool(REGB0
)) {
3750 nit_abort("Uninitialized attribute %s", "_items", LOCATE_array
, 535);
3752 fra
.me
.REG
[0] = ATTR_array___ArrayMap____items(fra
.me
.REG
[0]);
3753 fra
.me
.REG
[0] = CALL_abstract_collection___Collection___iterator(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3754 fra
.me
.REG
[0] = NEW_CoupleMapIterator_abstract_collection___CoupleMapIterator___init(fra
.me
.REG
[0]);
3757 stack_frame_head
= fra
.me
.prev
;
3758 return fra
.me
.REG
[0];
3760 val_t
array___ArrayMap___is_empty(val_t p0
){
3761 struct {struct stack_frame_t me
;} fra
;
3764 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3765 fra
.me
.file
= LOCATE_array
;
3767 fra
.me
.meth
= LOCATE_array___ArrayMap___is_empty
;
3768 fra
.me
.has_broke
= 0;
3769 fra
.me
.REG_size
= 1;
3770 fra
.me
.REG
[0] = NIT_NULL
;
3772 /* ./../lib/standard//collection//array.nit:537 */
3773 REGB0
= TAG_Bool(ATTR_array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
3774 if (UNTAG_Bool(REGB0
)) {
3776 nit_abort("Uninitialized attribute %s", "_items", LOCATE_array
, 537);
3778 fra
.me
.REG
[0] = ATTR_array___ArrayMap____items(fra
.me
.REG
[0]);
3779 REGB0
= CALL_abstract_collection___Collection___is_empty(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3782 stack_frame_head
= fra
.me
.prev
;
3785 void array___ArrayMap___remove(val_t p0
, val_t p1
){
3786 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
3792 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3793 fra
.me
.file
= LOCATE_array
;
3795 fra
.me
.meth
= LOCATE_array___ArrayMap___remove
;
3796 fra
.me
.has_broke
= 0;
3797 fra
.me
.REG_size
= 3;
3798 fra
.me
.REG
[0] = NIT_NULL
;
3799 fra
.me
.REG
[1] = NIT_NULL
;
3800 fra
.me
.REG
[2] = NIT_NULL
;
3803 /* ./../lib/standard//collection//array.nit:541 */
3804 REGB0
= TAG_Bool(ATTR_array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
3805 if (UNTAG_Bool(REGB0
)) {
3807 nit_abort("Uninitialized attribute %s", "_items", LOCATE_array
, 541);
3809 fra
.me
.REG
[2] = ATTR_array___ArrayMap____items(fra
.me
.REG
[0]);
3810 /* ./../lib/standard//collection//array.nit:23 */
3811 REGB0
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
3812 if (UNTAG_Bool(REGB0
)) {
3814 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 23);
3816 REGB0
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[2]);
3817 /* ./../lib/standard//collection//array.nit:541 */
3819 /* ./../lib/standard//kernel.nit:217 */
3820 REGB1
= TAG_Int(UNTAG_Int(REGB0
)-UNTAG_Int(REGB1
));
3821 /* ./../lib/standard//collection//array.nit:542 */
3824 /* ./../lib/standard//kernel.nit:213 */
3825 REGB0
= TAG_Bool(UNTAG_Int(REGB1
)>=UNTAG_Int(REGB0
));
3826 /* ./../lib/standard//collection//array.nit:542 */
3827 if (UNTAG_Bool(REGB0
)) {
3828 /* ./../lib/standard//collection//array.nit:543 */
3829 REGB0
= TAG_Bool(ATTR_array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
3830 if (UNTAG_Bool(REGB0
)) {
3832 nit_abort("Uninitialized attribute %s", "_items", LOCATE_array
, 543);
3834 fra
.me
.REG
[2] = ATTR_array___ArrayMap____items(fra
.me
.REG
[0]);
3835 /* ./../lib/standard//collection//array.nit:243 */
3837 /* ./../lib/standard//collection//array.nit:245 */
3839 /* ./../lib/standard//kernel.nit:213 */
3840 REGB2
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB2
));
3841 /* ./../lib/standard//collection//array.nit:245 */
3842 if (UNTAG_Bool(REGB2
)) {
3843 REGB2
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
3844 if (UNTAG_Bool(REGB2
)) {
3846 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 245);
3848 REGB2
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[2]);
3849 /* ./../lib/standard//kernel.nit:212 */
3850 REGB2
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB2
));
3852 /* ./../lib/standard//collection//array.nit:245 */
3853 REGB3
= TAG_Bool(false);
3856 if (UNTAG_Bool(REGB2
)) {
3858 nit_abort("Assert %s failed", "'index'", LOCATE_array
, 245);
3860 /* ./../lib/standard//collection//array.nit:246 */
3861 fra
.me
.REG
[2] = ATTR_array___Array____items(fra
.me
.REG
[2]);
3862 REGB2
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
3863 if (UNTAG_Bool(REGB2
)) {
3864 nit_abort("Reciever is null", NULL
, LOCATE_array
, 246);
3866 /* ./../lib/standard//collection//array.nit:654 */
3867 fra
.me
.REG
[2] = ((Nit_NativeArray
)fra
.me
.REG
[2])->val
[UNTAG_Int(REGB0
)];
3868 /* ./../lib/standard//collection//array.nit:246 */
3871 /* ./../lib/standard//collection//array.nit:543 */
3872 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
3873 if (UNTAG_Bool(REGB0
)) {
3874 nit_abort("Reciever is null", NULL
, LOCATE_array
, 543);
3876 fra
.me
.REG
[2] = CALL_abstract_collection___Couple___second(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
3877 REGB0
= TAG_Bool(IS_EQUAL_NN(fra
.me
.REG
[2],fra
.me
.REG
[1]));
3878 if (UNTAG_Bool(REGB0
)) {
3880 REGB2
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
3881 if (UNTAG_Bool(REGB2
)) {
3882 REGB2
= TAG_Bool(false);
3885 REGB2
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
3889 if (UNTAG_Bool(REGB0
)) {
3890 /* ./../lib/standard//collection//array.nit:544 */
3891 CALL_array___ArrayMap___remove_at_index(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB1
);
3892 /* ./../lib/standard//collection//array.nit:545 */
3895 /* ./../lib/standard//collection//array.nit:547 */
3897 /* ./../lib/standard//kernel.nit:217 */
3898 REGB0
= TAG_Int(UNTAG_Int(REGB1
)-UNTAG_Int(REGB0
));
3899 /* ./../lib/standard//collection//array.nit:547 */
3902 /* ./../lib/standard//collection//array.nit:542 */
3908 stack_frame_head
= fra
.me
.prev
;
3911 void array___ArrayMap___remove_all(val_t p0
, val_t p1
){
3912 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
3918 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3919 fra
.me
.file
= LOCATE_array
;
3921 fra
.me
.meth
= LOCATE_array___ArrayMap___remove_all
;
3922 fra
.me
.has_broke
= 0;
3923 fra
.me
.REG_size
= 3;
3924 fra
.me
.REG
[0] = NIT_NULL
;
3925 fra
.me
.REG
[1] = NIT_NULL
;
3926 fra
.me
.REG
[2] = NIT_NULL
;
3929 /* ./../lib/standard//collection//array.nit:553 */
3930 REGB0
= TAG_Bool(ATTR_array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
3931 if (UNTAG_Bool(REGB0
)) {
3933 nit_abort("Uninitialized attribute %s", "_items", LOCATE_array
, 553);
3935 fra
.me
.REG
[2] = ATTR_array___ArrayMap____items(fra
.me
.REG
[0]);
3936 /* ./../lib/standard//collection//array.nit:23 */
3937 REGB0
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
3938 if (UNTAG_Bool(REGB0
)) {
3940 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 23);
3942 REGB0
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[2]);
3943 /* ./../lib/standard//collection//array.nit:553 */
3945 /* ./../lib/standard//kernel.nit:217 */
3946 REGB1
= TAG_Int(UNTAG_Int(REGB0
)-UNTAG_Int(REGB1
));
3947 /* ./../lib/standard//collection//array.nit:554 */
3950 /* ./../lib/standard//kernel.nit:213 */
3951 REGB0
= TAG_Bool(UNTAG_Int(REGB1
)>=UNTAG_Int(REGB0
));
3952 /* ./../lib/standard//collection//array.nit:554 */
3953 if (UNTAG_Bool(REGB0
)) {
3954 /* ./../lib/standard//collection//array.nit:555 */
3955 REGB0
= TAG_Bool(ATTR_array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
3956 if (UNTAG_Bool(REGB0
)) {
3958 nit_abort("Uninitialized attribute %s", "_items", LOCATE_array
, 555);
3960 fra
.me
.REG
[2] = ATTR_array___ArrayMap____items(fra
.me
.REG
[0]);
3961 /* ./../lib/standard//collection//array.nit:243 */
3963 /* ./../lib/standard//collection//array.nit:245 */
3965 /* ./../lib/standard//kernel.nit:213 */
3966 REGB2
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB2
));
3967 /* ./../lib/standard//collection//array.nit:245 */
3968 if (UNTAG_Bool(REGB2
)) {
3969 REGB2
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
3970 if (UNTAG_Bool(REGB2
)) {
3972 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 245);
3974 REGB2
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[2]);
3975 /* ./../lib/standard//kernel.nit:212 */
3976 REGB2
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB2
));
3978 /* ./../lib/standard//collection//array.nit:245 */
3979 REGB3
= TAG_Bool(false);
3982 if (UNTAG_Bool(REGB2
)) {
3984 nit_abort("Assert %s failed", "'index'", LOCATE_array
, 245);
3986 /* ./../lib/standard//collection//array.nit:246 */
3987 fra
.me
.REG
[2] = ATTR_array___Array____items(fra
.me
.REG
[2]);
3988 REGB2
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
3989 if (UNTAG_Bool(REGB2
)) {
3990 nit_abort("Reciever is null", NULL
, LOCATE_array
, 246);
3992 /* ./../lib/standard//collection//array.nit:654 */
3993 fra
.me
.REG
[2] = ((Nit_NativeArray
)fra
.me
.REG
[2])->val
[UNTAG_Int(REGB0
)];
3994 /* ./../lib/standard//collection//array.nit:246 */
3997 /* ./../lib/standard//collection//array.nit:555 */
3998 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
3999 if (UNTAG_Bool(REGB0
)) {
4000 nit_abort("Reciever is null", NULL
, LOCATE_array
, 555);
4002 fra
.me
.REG
[2] = CALL_abstract_collection___Couple___second(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
4003 REGB0
= TAG_Bool(IS_EQUAL_NN(fra
.me
.REG
[2],fra
.me
.REG
[1]));
4004 if (UNTAG_Bool(REGB0
)) {
4006 REGB2
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
4007 if (UNTAG_Bool(REGB2
)) {
4008 REGB2
= TAG_Bool(false);
4011 REGB2
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
4015 if (UNTAG_Bool(REGB0
)) {
4016 /* ./../lib/standard//collection//array.nit:556 */
4017 CALL_array___ArrayMap___remove_at_index(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB1
);
4019 /* ./../lib/standard//collection//array.nit:558 */
4021 /* ./../lib/standard//kernel.nit:217 */
4022 REGB0
= TAG_Int(UNTAG_Int(REGB1
)-UNTAG_Int(REGB0
));
4023 /* ./../lib/standard//collection//array.nit:558 */
4026 /* ./../lib/standard//collection//array.nit:554 */
4031 stack_frame_head
= fra
.me
.prev
;
4034 void array___ArrayMap___remove_at(val_t p0
, val_t p1
){
4035 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
4039 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4040 fra
.me
.file
= LOCATE_array
;
4042 fra
.me
.meth
= LOCATE_array___ArrayMap___remove_at
;
4043 fra
.me
.has_broke
= 0;
4044 fra
.me
.REG_size
= 2;
4045 fra
.me
.REG
[0] = NIT_NULL
;
4046 fra
.me
.REG
[1] = NIT_NULL
;
4049 /* ./../lib/standard//collection//array.nit:564 */
4050 REGB0
= CALL_array___ArrayMap___index(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
4051 /* ./../lib/standard//collection//array.nit:565 */
4053 /* ./../lib/standard//kernel.nit:213 */
4054 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB1
));
4055 /* ./../lib/standard//collection//array.nit:565 */
4056 if (UNTAG_Bool(REGB1
)) {
4057 CALL_array___ArrayMap___remove_at_index(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
4059 stack_frame_head
= fra
.me
.prev
;
4062 void array___ArrayMap___clear(val_t p0
){
4063 struct {struct stack_frame_t me
;} fra
;
4066 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4067 fra
.me
.file
= LOCATE_array
;
4069 fra
.me
.meth
= LOCATE_array___ArrayMap___clear
;
4070 fra
.me
.has_broke
= 0;
4071 fra
.me
.REG_size
= 1;
4072 fra
.me
.REG
[0] = NIT_NULL
;
4074 /* ./../lib/standard//collection//array.nit:568 */
4075 REGB0
= TAG_Bool(ATTR_array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
4076 if (UNTAG_Bool(REGB0
)) {
4078 nit_abort("Uninitialized attribute %s", "_items", LOCATE_array
, 568);
4080 fra
.me
.REG
[0] = ATTR_array___ArrayMap____items(fra
.me
.REG
[0]);
4081 CALL_abstract_collection___RemovableCollection___clear(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4082 stack_frame_head
= fra
.me
.prev
;
4085 void array___ArrayMap___enlarge(val_t p0
, val_t p1
){
4086 struct {struct stack_frame_t me
;} fra
;
4090 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4091 fra
.me
.file
= LOCATE_array
;
4093 fra
.me
.meth
= LOCATE_array___ArrayMap___enlarge
;
4094 fra
.me
.has_broke
= 0;
4095 fra
.me
.REG_size
= 1;
4096 fra
.me
.REG
[0] = NIT_NULL
;
4099 /* ./../lib/standard//collection//array.nit:571 */
4100 REGB1
= TAG_Bool(ATTR_array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
4101 if (UNTAG_Bool(REGB1
)) {
4103 nit_abort("Uninitialized attribute %s", "_items", LOCATE_array
, 571);
4105 fra
.me
.REG
[0] = ATTR_array___ArrayMap____items(fra
.me
.REG
[0]);
4106 CALL_array___AbstractArray___enlarge(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
4107 stack_frame_head
= fra
.me
.prev
;
4110 val_t
array___ArrayMap___couple_at(val_t p0
, val_t p1
){
4111 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
4116 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4117 fra
.me
.file
= LOCATE_array
;
4119 fra
.me
.meth
= LOCATE_array___ArrayMap___couple_at
;
4120 fra
.me
.has_broke
= 0;
4121 fra
.me
.REG_size
= 2;
4122 fra
.me
.REG
[0] = NIT_NULL
;
4123 fra
.me
.REG
[1] = NIT_NULL
;
4126 /* ./../lib/standard//collection//array.nit:575 */
4127 REGB0
= CALL_array___ArrayMap___index(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
4128 /* ./../lib/standard//collection//array.nit:576 */
4130 /* ./../lib/standard//kernel.nit:213 */
4131 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB1
));
4132 /* ./../lib/standard//collection//array.nit:576 */
4133 if (UNTAG_Bool(REGB1
)) {
4134 /* ./../lib/standard//collection//array.nit:577 */
4135 REGB1
= TAG_Bool(ATTR_array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
4136 if (UNTAG_Bool(REGB1
)) {
4138 nit_abort("Uninitialized attribute %s", "_items", LOCATE_array
, 577);
4140 fra
.me
.REG
[0] = ATTR_array___ArrayMap____items(fra
.me
.REG
[0]);
4141 /* ./../lib/standard//collection//array.nit:245 */
4143 /* ./../lib/standard//kernel.nit:213 */
4144 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB1
));
4145 /* ./../lib/standard//collection//array.nit:245 */
4146 if (UNTAG_Bool(REGB1
)) {
4147 REGB1
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
4148 if (UNTAG_Bool(REGB1
)) {
4150 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 245);
4152 REGB1
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0]);
4153 /* ./../lib/standard//kernel.nit:212 */
4154 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
4156 /* ./../lib/standard//collection//array.nit:245 */
4157 REGB2
= TAG_Bool(false);
4160 if (UNTAG_Bool(REGB1
)) {
4162 nit_abort("Assert %s failed", "'index'", LOCATE_array
, 245);
4164 /* ./../lib/standard//collection//array.nit:246 */
4165 fra
.me
.REG
[0] = ATTR_array___Array____items(fra
.me
.REG
[0]);
4166 REGB1
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
4167 if (UNTAG_Bool(REGB1
)) {
4168 nit_abort("Reciever is null", NULL
, LOCATE_array
, 246);
4170 /* ./../lib/standard//collection//array.nit:654 */
4171 fra
.me
.REG
[0] = ((Nit_NativeArray
)fra
.me
.REG
[0])->val
[UNTAG_Int(REGB0
)];
4172 /* ./../lib/standard//collection//array.nit:246 */
4175 /* ./../lib/standard//collection//array.nit:577 */
4178 /* ./../lib/standard//collection//array.nit:579 */
4179 fra
.me
.REG
[0] = NIT_NULL
;
4183 stack_frame_head
= fra
.me
.prev
;
4184 return fra
.me
.REG
[0];
4186 void array___ArrayMap___remove_at_index(val_t p0
, val_t p1
){
4187 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
4191 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4192 fra
.me
.file
= LOCATE_array
;
4194 fra
.me
.meth
= LOCATE_array___ArrayMap___remove_at_index
;
4195 fra
.me
.has_broke
= 0;
4196 fra
.me
.REG_size
= 3;
4197 fra
.me
.REG
[0] = NIT_NULL
;
4198 fra
.me
.REG
[1] = NIT_NULL
;
4199 fra
.me
.REG
[2] = NIT_NULL
;
4202 /* ./../lib/standard//collection//array.nit:589 */
4203 REGB1
= TAG_Bool(ATTR_array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
4204 if (UNTAG_Bool(REGB1
)) {
4206 nit_abort("Uninitialized attribute %s", "_items", LOCATE_array
, 589);
4208 fra
.me
.REG
[1] = ATTR_array___ArrayMap____items(fra
.me
.REG
[0]);
4209 REGB1
= TAG_Bool(ATTR_array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
4210 if (UNTAG_Bool(REGB1
)) {
4212 nit_abort("Uninitialized attribute %s", "_items", LOCATE_array
, 589);
4214 fra
.me
.REG
[2] = ATTR_array___ArrayMap____items(fra
.me
.REG
[0]);
4215 fra
.me
.REG
[2] = CALL_abstract_collection___SequenceRead___last(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
4216 CALL_abstract_collection___Map_____braeq(fra
.me
.REG
[1])(fra
.me
.REG
[1], REGB0
, fra
.me
.REG
[2]);
4217 /* ./../lib/standard//collection//array.nit:590 */
4218 REGB0
= TAG_Bool(ATTR_array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
4219 if (UNTAG_Bool(REGB0
)) {
4221 nit_abort("Uninitialized attribute %s", "_items", LOCATE_array
, 590);
4223 fra
.me
.REG
[0] = ATTR_array___ArrayMap____items(fra
.me
.REG
[0]);
4224 CALL_abstract_collection___Sequence___pop(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4225 stack_frame_head
= fra
.me
.prev
;
4228 val_t
array___ArrayMap___index(val_t p0
, val_t p1
){
4229 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
4236 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4237 fra
.me
.file
= LOCATE_array
;
4239 fra
.me
.meth
= LOCATE_array___ArrayMap___index
;
4240 fra
.me
.has_broke
= 0;
4241 fra
.me
.REG_size
= 3;
4242 fra
.me
.REG
[0] = NIT_NULL
;
4243 fra
.me
.REG
[1] = NIT_NULL
;
4244 fra
.me
.REG
[2] = NIT_NULL
;
4247 /* ./../lib/standard//collection//array.nit:600 */
4248 REGB0
= TAG_Bool(ATTR_array___ArrayMap____last_index(fra
.me
.REG
[0])!=NIT_NULL
);
4249 if (UNTAG_Bool(REGB0
)) {
4251 nit_abort("Uninitialized attribute %s", "_last_index", LOCATE_array
, 600);
4253 REGB0
= ATTR_array___ArrayMap____last_index(fra
.me
.REG
[0]);
4254 /* ./../lib/standard//collection//array.nit:601 */
4255 REGB1
= TAG_Bool(ATTR_array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
4256 if (UNTAG_Bool(REGB1
)) {
4258 nit_abort("Uninitialized attribute %s", "_items", LOCATE_array
, 601);
4260 fra
.me
.REG
[2] = ATTR_array___ArrayMap____items(fra
.me
.REG
[0]);
4261 /* ./../lib/standard//collection//array.nit:23 */
4262 REGB1
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
4263 if (UNTAG_Bool(REGB1
)) {
4265 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 23);
4267 REGB1
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[2]);
4268 /* ./../lib/standard//kernel.nit:212 */
4269 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
4270 /* ./../lib/standard//collection//array.nit:601 */
4271 if (UNTAG_Bool(REGB1
)) {
4272 REGB1
= TAG_Bool(ATTR_array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
4273 if (UNTAG_Bool(REGB1
)) {
4275 nit_abort("Uninitialized attribute %s", "_items", LOCATE_array
, 601);
4277 fra
.me
.REG
[2] = ATTR_array___ArrayMap____items(fra
.me
.REG
[0]);
4278 /* ./../lib/standard//collection//array.nit:243 */
4280 /* ./../lib/standard//collection//array.nit:245 */
4282 /* ./../lib/standard//kernel.nit:213 */
4283 REGB2
= TAG_Bool(UNTAG_Int(REGB1
)>=UNTAG_Int(REGB2
));
4284 /* ./../lib/standard//collection//array.nit:245 */
4285 if (UNTAG_Bool(REGB2
)) {
4286 REGB2
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
4287 if (UNTAG_Bool(REGB2
)) {
4289 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 245);
4291 REGB2
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[2]);
4292 /* ./../lib/standard//kernel.nit:212 */
4293 REGB2
= TAG_Bool(UNTAG_Int(REGB1
)<UNTAG_Int(REGB2
));
4295 /* ./../lib/standard//collection//array.nit:245 */
4296 REGB3
= TAG_Bool(false);
4299 if (UNTAG_Bool(REGB2
)) {
4301 nit_abort("Assert %s failed", "'index'", LOCATE_array
, 245);
4303 /* ./../lib/standard//collection//array.nit:246 */
4304 fra
.me
.REG
[2] = ATTR_array___Array____items(fra
.me
.REG
[2]);
4305 REGB2
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
4306 if (UNTAG_Bool(REGB2
)) {
4307 nit_abort("Reciever is null", NULL
, LOCATE_array
, 246);
4309 /* ./../lib/standard//collection//array.nit:654 */
4310 fra
.me
.REG
[2] = ((Nit_NativeArray
)fra
.me
.REG
[2])->val
[UNTAG_Int(REGB1
)];
4311 /* ./../lib/standard//collection//array.nit:246 */
4314 /* ./../lib/standard//collection//array.nit:601 */
4315 REGB1
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
4316 if (UNTAG_Bool(REGB1
)) {
4317 nit_abort("Reciever is null", NULL
, LOCATE_array
, 601);
4319 fra
.me
.REG
[2] = CALL_abstract_collection___Couple___first(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
4320 REGB1
= TAG_Bool(IS_EQUAL_ON(fra
.me
.REG
[1],fra
.me
.REG
[2]));
4321 if (UNTAG_Bool(REGB1
)) {
4323 REGB2
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
4324 if (UNTAG_Bool(REGB2
)) {
4325 REGB2
= TAG_Bool(false);
4328 REGB2
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
4333 REGB2
= TAG_Bool(false);
4336 if (UNTAG_Bool(REGB1
)) {
4339 /* ./../lib/standard//collection//array.nit:603 */
4341 /* ./../lib/standard//collection//array.nit:604 */
4343 REGB2
= TAG_Bool(ATTR_array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
4344 if (UNTAG_Bool(REGB2
)) {
4346 nit_abort("Uninitialized attribute %s", "_items", LOCATE_array
, 604);
4348 fra
.me
.REG
[2] = ATTR_array___ArrayMap____items(fra
.me
.REG
[0]);
4349 /* ./../lib/standard//collection//array.nit:23 */
4350 REGB2
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
4351 if (UNTAG_Bool(REGB2
)) {
4353 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 23);
4355 REGB2
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[2]);
4356 /* ./../lib/standard//kernel.nit:212 */
4357 REGB2
= TAG_Bool(UNTAG_Int(REGB1
)<UNTAG_Int(REGB2
));
4358 /* ./../lib/standard//collection//array.nit:604 */
4359 if (UNTAG_Bool(REGB2
)) {
4360 /* ./../lib/standard//collection//array.nit:605 */
4361 REGB2
= TAG_Bool(ATTR_array___ArrayMap____items(fra
.me
.REG
[0])!=NIT_NULL
);
4362 if (UNTAG_Bool(REGB2
)) {
4364 nit_abort("Uninitialized attribute %s", "_items", LOCATE_array
, 605);
4366 fra
.me
.REG
[2] = ATTR_array___ArrayMap____items(fra
.me
.REG
[0]);
4367 /* ./../lib/standard//collection//array.nit:243 */
4369 /* ./../lib/standard//collection//array.nit:245 */
4371 /* ./../lib/standard//kernel.nit:213 */
4372 REGB3
= TAG_Bool(UNTAG_Int(REGB2
)>=UNTAG_Int(REGB3
));
4373 /* ./../lib/standard//collection//array.nit:245 */
4374 if (UNTAG_Bool(REGB3
)) {
4375 REGB3
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
4376 if (UNTAG_Bool(REGB3
)) {
4378 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 245);
4380 REGB3
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[2]);
4381 /* ./../lib/standard//kernel.nit:212 */
4382 REGB3
= TAG_Bool(UNTAG_Int(REGB2
)<UNTAG_Int(REGB3
));
4384 /* ./../lib/standard//collection//array.nit:245 */
4385 REGB4
= TAG_Bool(false);
4388 if (UNTAG_Bool(REGB3
)) {
4390 nit_abort("Assert %s failed", "'index'", LOCATE_array
, 245);
4392 /* ./../lib/standard//collection//array.nit:246 */
4393 fra
.me
.REG
[2] = ATTR_array___Array____items(fra
.me
.REG
[2]);
4394 REGB3
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
4395 if (UNTAG_Bool(REGB3
)) {
4396 nit_abort("Reciever is null", NULL
, LOCATE_array
, 246);
4398 /* ./../lib/standard//collection//array.nit:654 */
4399 fra
.me
.REG
[2] = ((Nit_NativeArray
)fra
.me
.REG
[2])->val
[UNTAG_Int(REGB2
)];
4400 /* ./../lib/standard//collection//array.nit:246 */
4403 /* ./../lib/standard//collection//array.nit:605 */
4404 REGB2
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
4405 if (UNTAG_Bool(REGB2
)) {
4406 nit_abort("Reciever is null", NULL
, LOCATE_array
, 605);
4408 fra
.me
.REG
[2] = CALL_abstract_collection___Couple___first(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
4409 REGB2
= TAG_Bool(IS_EQUAL_ON(fra
.me
.REG
[1],fra
.me
.REG
[2]));
4410 if (UNTAG_Bool(REGB2
)) {
4412 REGB3
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
4413 if (UNTAG_Bool(REGB3
)) {
4414 REGB3
= TAG_Bool(false);
4417 REGB3
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
4421 if (UNTAG_Bool(REGB2
)) {
4422 /* ./../lib/standard//collection//array.nit:606 */
4423 ATTR_array___ArrayMap____last_index(fra
.me
.REG
[0]) = REGB1
;
4424 /* ./../lib/standard//collection//array.nit:607 */
4428 /* ./../lib/standard//collection//array.nit:609 */
4430 /* ./../lib/standard//kernel.nit:215 */
4431 REGB2
= TAG_Int(UNTAG_Int(REGB1
)+UNTAG_Int(REGB2
));
4432 /* ./../lib/standard//collection//array.nit:609 */
4435 /* ./../lib/standard//collection//array.nit:604 */
4440 /* ./../lib/standard//collection//array.nit:611 */
4442 /* ./../lib/standard//kernel.nit:216 */
4443 REGB1
= TAG_Int(-UNTAG_Int(REGB1
));
4444 /* ./../lib/standard//collection//array.nit:611 */
4448 stack_frame_head
= fra
.me
.prev
;
4451 void array___ArrayMap___init(val_t p0
, int* init_table
){
4452 int itpos10
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_ArrayMap
].i
;
4453 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
4455 if (init_table
[itpos10
]) return;
4456 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4457 fra
.me
.file
= LOCATE_array
;
4459 fra
.me
.meth
= LOCATE_array___ArrayMap___init
;
4460 fra
.me
.has_broke
= 0;
4461 fra
.me
.REG_size
= 2;
4462 fra
.me
.REG
[0] = NIT_NULL
;
4463 fra
.me
.REG
[1] = NIT_NULL
;
4465 /* ./../lib/standard//collection//array.nit:617 */
4466 fra
.me
.REG
[1] = NEW_Array_array___Array___init();
4467 ATTR_array___ArrayMap____items(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
4468 stack_frame_head
= fra
.me
.prev
;
4469 init_table
[itpos10
] = 1;
4472 val_t
array___Iterator___to_a(val_t p0
){
4473 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
4476 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4477 fra
.me
.file
= LOCATE_array
;
4479 fra
.me
.meth
= LOCATE_array___Iterator___to_a
;
4480 fra
.me
.has_broke
= 0;
4481 fra
.me
.REG_size
= 3;
4482 fra
.me
.REG
[0] = NIT_NULL
;
4483 fra
.me
.REG
[1] = NIT_NULL
;
4484 fra
.me
.REG
[2] = NIT_NULL
;
4486 /* ./../lib/standard//collection//array.nit:627 */
4487 fra
.me
.REG
[1] = NEW_Array_array___Array___init();
4488 /* ./../lib/standard//collection//array.nit:628 */
4490 REGB0
= CALL_abstract_collection___Iterator___is_ok(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4491 if (UNTAG_Bool(REGB0
)) {
4492 /* ./../lib/standard//collection//array.nit:629 */
4493 fra
.me
.REG
[2] = CALL_abstract_collection___Iterator___item(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4494 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
4495 /* ./../lib/standard//collection//array.nit:630 */
4496 CALL_abstract_collection___Iterator___next(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4498 /* ./../lib/standard//collection//array.nit:628 */
4503 /* ./../lib/standard//collection//array.nit:632 */
4506 stack_frame_head
= fra
.me
.prev
;
4507 return fra
.me
.REG
[1];
4509 val_t
array___Collection___to_a(val_t p0
){
4510 struct {struct stack_frame_t me
;} fra
;
4512 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4513 fra
.me
.file
= LOCATE_array
;
4515 fra
.me
.meth
= LOCATE_array___Collection___to_a
;
4516 fra
.me
.has_broke
= 0;
4517 fra
.me
.REG_size
= 1;
4518 fra
.me
.REG
[0] = NIT_NULL
;
4520 /* ./../lib/standard//collection//array.nit:640 */
4521 fra
.me
.REG
[0] = CALL_abstract_collection___Collection___iterator(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4522 fra
.me
.REG
[0] = CALL_array___Iterator___to_a(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4525 stack_frame_head
= fra
.me
.prev
;
4526 return fra
.me
.REG
[0];
4528 val_t
array___ArrayCapable___calloc_array(val_t p0
, val_t p1
){
4529 struct {struct stack_frame_t me
;} fra
;
4532 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4533 fra
.me
.file
= LOCATE_array
;
4535 fra
.me
.meth
= LOCATE_array___ArrayCapable___calloc_array
;
4536 fra
.me
.has_broke
= 0;
4537 fra
.me
.REG_size
= 1;
4538 fra
.me
.REG
[0] = NIT_NULL
;
4541 /* ./../lib/standard//collection//array.nit:648 */
4542 fra
.me
.REG
[0] = NEW_NativeArray(UNTAG_Int(REGB0
), sizeof(val_t
));
4543 stack_frame_head
= fra
.me
.prev
;
4544 return fra
.me
.REG
[0];
4546 val_t
array___NativeArray_____bra(val_t p0
, val_t p1
){
4547 struct {struct stack_frame_t me
;} fra
;
4550 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4551 fra
.me
.file
= LOCATE_array
;
4553 fra
.me
.meth
= LOCATE_array___NativeArray_____bra
;
4554 fra
.me
.has_broke
= 0;
4555 fra
.me
.REG_size
= 1;
4556 fra
.me
.REG
[0] = NIT_NULL
;
4559 /* ./../lib/standard//collection//array.nit:654 */
4560 fra
.me
.REG
[0] = ((Nit_NativeArray
)fra
.me
.REG
[0])->val
[UNTAG_Int(REGB0
)];
4561 stack_frame_head
= fra
.me
.prev
;
4562 return fra
.me
.REG
[0];
4564 void array___NativeArray_____braeq(val_t p0
, val_t p1
, val_t p2
){
4565 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
4568 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4569 fra
.me
.file
= LOCATE_array
;
4571 fra
.me
.meth
= LOCATE_array___NativeArray_____braeq
;
4572 fra
.me
.has_broke
= 0;
4573 fra
.me
.REG_size
= 2;
4574 fra
.me
.REG
[0] = NIT_NULL
;
4575 fra
.me
.REG
[1] = NIT_NULL
;
4579 /* ./../lib/standard//collection//array.nit:655 */
4580 ((Nit_NativeArray
)fra
.me
.REG
[0])->val
[UNTAG_Int(REGB0
)]=fra
.me
.REG
[1];
4581 stack_frame_head
= fra
.me
.prev
;
4584 void array___NativeArray___copy_to(val_t p0
, val_t p1
, val_t p2
){
4585 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
4588 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4589 fra
.me
.file
= LOCATE_array
;
4591 fra
.me
.meth
= LOCATE_array___NativeArray___copy_to
;
4592 fra
.me
.has_broke
= 0;
4593 fra
.me
.REG_size
= 2;
4594 fra
.me
.REG
[0] = NIT_NULL
;
4595 fra
.me
.REG
[1] = NIT_NULL
;
4599 /* ./../lib/standard//collection//array.nit:656 */
4600 (void)memcpy(((Nit_NativeArray
)fra
.me
.REG
[1])->val
, ((Nit_NativeArray
)fra
.me
.REG
[0])->val
, UNTAG_Int(REGB0
)*sizeof(val_t
));
4601 stack_frame_head
= fra
.me
.prev
;