1 #include "standard__abstract_collection.sep.0.h"
2 /* method abstract_collection#Collection#is_empty for (self: Collection[nullable Object]): Bool */
3 short int standard___standard__Collection___is_empty(val
* self
) {
4 short int var
/* : Bool */;
6 short int var2
/* : Bool */;
7 short int var4
/* : Bool */;
9 var1
= ((long(*)(val
* self
))((((long)self
&3)?class_info
[((long)self
&3)]:self
->class)->vft
[COLOR_standard__abstract_collection__Collection__length
]))(self
); /* length on <self:Collection[nullable Object]>*/
12 { /* Inline kernel#Int#== (var1,0l) on <var1:Int> */
24 /* method abstract_collection#Collection#not_empty for (self: Collection[nullable Object]): Bool */
25 short int standard___standard__Collection___not_empty(val
* self
) {
26 short int var
/* : Bool */;
27 short int var1
/* : Bool */;
28 short int var2
/* : Bool */;
30 var1
= ((short int(*)(val
* self
))((((long)self
&3)?class_info
[((long)self
&3)]:self
->class)->vft
[COLOR_standard__abstract_collection__Collection__is_empty
]))(self
); /* is_empty on <self:Collection[nullable Object]>*/
38 /* method abstract_collection#Collection#length for (self: Collection[nullable Object]): Int */
39 long standard___standard__Collection___length(val
* self
) {
41 long var_nb
/* var nb: Int */;
42 val
* var_
/* var : Collection[nullable Object] */;
43 val
* var1
/* : Iterator[nullable Object] */;
44 val
* var_2
/* var : Iterator[nullable Object] */;
45 short int var3
/* : Bool */;
46 val
* var4
/* : nullable Object */;
47 val
* var_i
/* var i: nullable Object */;
48 long var5
/* : Int */;
49 short int var7
/* : Bool */;
52 const char* var_class_name
;
53 long var8
/* : Int */;
57 var1
= ((val
*(*)(val
* self
))((((long)var_
&3)?class_info
[((long)var_
&3)]:var_
->class)->vft
[COLOR_standard__abstract_collection__Collection__iterator
]))(var_
); /* iterator on <var_:Collection[nullable Object]>*/
62 var3
= ((short int(*)(val
* self
))((((long)var_2
&3)?class_info
[((long)var_2
&3)]:var_2
->class)->vft
[COLOR_standard__abstract_collection__Iterator__is_ok
]))(var_2
); /* is_ok on <var_2:Iterator[nullable Object]>*/
66 var4
= ((val
*(*)(val
* self
))((((long)var_2
&3)?class_info
[((long)var_2
&3)]:var_2
->class)->vft
[COLOR_standard__abstract_collection__Iterator__item
]))(var_2
); /* item on <var_2:Iterator[nullable Object]>*/
70 { /* Inline kernel#Int#+ (var_nb,1l) on <var_nb:Int> */
71 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
72 /* <1l:Int> isa OTHER */
73 var7
= 1; /* easy <1l:Int> isa OTHER*/
74 if (unlikely(!var7
)) {
75 var_class_name
= type_standard__Int
.name
;
76 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
77 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 537);
88 ((void(*)(val
* self
))((((long)var_2
&3)?class_info
[((long)var_2
&3)]:var_2
->class)->vft
[COLOR_standard__abstract_collection__Iterator__next
]))(var_2
); /* next on <var_2:Iterator[nullable Object]>*/
96 ((void(*)(val
* self
))((((long)var_2
&3)?class_info
[((long)var_2
&3)]:var_2
->class)->vft
[COLOR_standard__abstract_collection__Iterator__finish
]))(var_2
); /* finish on <var_2:Iterator[nullable Object]>*/
103 /* method abstract_collection#Collection#has for (self: Collection[nullable Object], nullable Object): Bool */
104 short int standard___standard__Collection___has(val
* self
, val
* p0
) {
105 short int var
/* : Bool */;
106 val
* var_item
/* var item: nullable Object */;
107 val
* var_
/* var : Collection[nullable Object] */;
108 val
* var1
/* : Iterator[nullable Object] */;
109 val
* var_2
/* var : Iterator[nullable Object] */;
110 short int var3
/* : Bool */;
111 val
* var4
/* : nullable Object */;
112 val
* var_i
/* var i: nullable Object */;
113 short int var5
/* : Bool */;
114 short int var6
/* : Bool */;
118 var1
= ((val
*(*)(val
* self
))((((long)var_
&3)?class_info
[((long)var_
&3)]:var_
->class)->vft
[COLOR_standard__abstract_collection__Collection__iterator
]))(var_
); /* iterator on <var_:Collection[nullable Object]>*/
123 var3
= ((short int(*)(val
* self
))((((long)var_2
&3)?class_info
[((long)var_2
&3)]:var_2
->class)->vft
[COLOR_standard__abstract_collection__Iterator__is_ok
]))(var_2
); /* is_ok on <var_2:Iterator[nullable Object]>*/
127 var4
= ((val
*(*)(val
* self
))((((long)var_2
&3)?class_info
[((long)var_2
&3)]:var_2
->class)->vft
[COLOR_standard__abstract_collection__Iterator__item
]))(var_2
); /* item on <var_2:Iterator[nullable Object]>*/
131 var5
= (var_item
== NULL
);
133 var6
= ((short int(*)(val
* self
, val
* p0
))((((long)var_i
&3)?class_info
[((long)var_i
&3)]:var_i
->class)->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_i
, var_item
); /* == on <var_i:nullable Object>*/
142 ((void(*)(val
* self
))((((long)var_2
&3)?class_info
[((long)var_2
&3)]:var_2
->class)->vft
[COLOR_standard__abstract_collection__Iterator__next
]))(var_2
); /* next on <var_2:Iterator[nullable Object]>*/
148 BREAK_label
: (void)0;
150 ((void(*)(val
* self
))((((long)var_2
&3)?class_info
[((long)var_2
&3)]:var_2
->class)->vft
[COLOR_standard__abstract_collection__Iterator__finish
]))(var_2
); /* finish on <var_2:Iterator[nullable Object]>*/
157 /* method abstract_collection#Collection#first for (self: Collection[nullable Object]): nullable Object */
158 val
* standard___standard__Collection___first(val
* self
) {
159 val
* var
/* : nullable Object */;
160 long var1
/* : Int */;
161 short int var2
/* : Bool */;
162 short int var4
/* : Bool */;
165 const char* var_class_name
;
166 short int var5
/* : Bool */;
167 val
* var6
/* : Iterator[nullable Object] */;
168 val
* var7
/* : nullable Object */;
170 var1
= ((long(*)(val
* self
))((((long)self
&3)?class_info
[((long)self
&3)]:self
->class)->vft
[COLOR_standard__abstract_collection__Collection__length
]))(self
); /* length on <self:Collection[nullable Object]>*/
173 { /* Inline kernel#Int#> (var1,0l) on <var1:Int> */
174 /* Covariant cast for argument 0 (i) <0l:Int> isa OTHER */
175 /* <0l:Int> isa OTHER */
176 var4
= 1; /* easy <0l:Int> isa OTHER*/
177 if (unlikely(!var4
)) {
178 var_class_name
= type_standard__Int
.name
;
179 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
180 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 536);
189 if (unlikely(!var2
)) {
190 PRINT_ERROR("Runtime error: %s", "Assert failed");
191 PRINT_ERROR(" (%s:%d)\n", FILE_standard__abstract_collection
, 134);
195 var6
= ((val
*(*)(val
* self
))((((long)self
&3)?class_info
[((long)self
&3)]:self
->class)->vft
[COLOR_standard__abstract_collection__Collection__iterator
]))(self
); /* iterator on <self:Collection[nullable Object]>*/
198 var7
= ((val
*(*)(val
* self
))((((long)var6
&3)?class_info
[((long)var6
&3)]:var6
->class)->vft
[COLOR_standard__abstract_collection__Iterator__item
]))(var6
); /* item on <var6:Iterator[nullable Object]>*/
205 /* method abstract_collection#Collection#has_all for (self: Collection[nullable Object], Collection[nullable Object]): Bool */
206 short int standard___standard__Collection___has_all(val
* self
, val
* p0
) {
207 short int var
/* : Bool */;
208 val
* var_other
/* var other: Collection[nullable Object] */;
209 val
* var_
/* var : Collection[nullable Object] */;
210 val
* var1
/* : Iterator[nullable Object] */;
211 val
* var_2
/* var : Iterator[nullable Object] */;
212 short int var3
/* : Bool */;
213 val
* var4
/* : nullable Object */;
214 val
* var_x
/* var x: nullable Object */;
215 short int var5
/* : Bool */;
216 short int var6
/* : Bool */;
220 var1
= ((val
*(*)(val
* self
))((((long)var_
&3)?class_info
[((long)var_
&3)]:var_
->class)->vft
[COLOR_standard__abstract_collection__Collection__iterator
]))(var_
); /* iterator on <var_:Collection[nullable Object]>*/
225 var3
= ((short int(*)(val
* self
))((((long)var_2
&3)?class_info
[((long)var_2
&3)]:var_2
->class)->vft
[COLOR_standard__abstract_collection__Iterator__is_ok
]))(var_2
); /* is_ok on <var_2:Iterator[nullable Object]>*/
229 var4
= ((val
*(*)(val
* self
))((((long)var_2
&3)?class_info
[((long)var_2
&3)]:var_2
->class)->vft
[COLOR_standard__abstract_collection__Iterator__item
]))(var_2
); /* item on <var_2:Iterator[nullable Object]>*/
233 var5
= ((short int(*)(val
* self
, val
* p0
))((((long)self
&3)?class_info
[((long)self
&3)]:self
->class)->vft
[COLOR_standard__abstract_collection__Collection__has
]))(self
, var_x
); /* has on <self:Collection[nullable Object]>*/
242 ((void(*)(val
* self
))((((long)var_2
&3)?class_info
[((long)var_2
&3)]:var_2
->class)->vft
[COLOR_standard__abstract_collection__Iterator__next
]))(var_2
); /* next on <var_2:Iterator[nullable Object]>*/
248 BREAK_label
: (void)0;
250 ((void(*)(val
* self
))((((long)var_2
&3)?class_info
[((long)var_2
&3)]:var_2
->class)->vft
[COLOR_standard__abstract_collection__Iterator__finish
]))(var_2
); /* finish on <var_2:Iterator[nullable Object]>*/
257 /* method abstract_collection#Iterator#iterator for (self: Iterator[nullable Object]): Iterator[nullable Object] */
258 val
* standard___standard__Iterator___iterator(val
* self
) {
259 val
* var
/* : Iterator[nullable Object] */;
265 /* method abstract_collection#Iterator#finish for (self: Iterator[nullable Object]) */
266 void standard___standard__Iterator___finish(val
* self
) {
269 /* method abstract_collection#Container#first for (self: Container[nullable Object]): nullable Object */
270 val
* standard___standard__Container___Collection__first(val
* self
) {
271 val
* var
/* : nullable Object */;
272 val
* var1
/* : nullable Object */;
273 val
* var3
/* : nullable Object */;
275 { /* Inline abstract_collection#Container#item (self) on <self:Container[nullable Object]> */
276 var3
= self
->attrs
[COLOR_standard__abstract_collection__Container___item
].val
; /* _item on <self:Container[nullable Object]> */
286 /* method abstract_collection#Container#is_empty for (self: Container[nullable Object]): Bool */
287 short int standard___standard__Container___Collection__is_empty(val
* self
) {
288 short int var
/* : Bool */;
294 /* method abstract_collection#Container#length for (self: Container[nullable Object]): Int */
295 long standard___standard__Container___Collection__length(val
* self
) {
296 long var
/* : Int */;
302 /* method abstract_collection#Container#has for (self: Container[nullable Object], nullable Object): Bool */
303 short int standard___standard__Container___Collection__has(val
* self
, val
* p0
) {
304 short int var
/* : Bool */;
305 val
* var_an_item
/* var an_item: nullable Object */;
306 val
* var1
/* : nullable Object */;
307 val
* var3
/* : nullable Object */;
308 short int var4
/* : Bool */;
309 short int var5
/* : Bool */;
312 { /* Inline abstract_collection#Container#item (self) on <self:Container[nullable Object]> */
313 var3
= self
->attrs
[COLOR_standard__abstract_collection__Container___item
].val
; /* _item on <self:Container[nullable Object]> */
319 var4
= (var_an_item
== NULL
);
321 var5
= ((short int(*)(val
* self
, val
* p0
))((((long)var1
&3)?class_info
[((long)var1
&3)]:var1
->class)->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var1
, var_an_item
); /* == on <var1:nullable Object>*/
329 /* method abstract_collection#Container#iterator for (self: Container[nullable Object]): Iterator[nullable Object] */
330 val
* standard___standard__Container___Collection__iterator(val
* self
) {
331 val
* var
/* : Iterator[nullable Object] */;
332 val
* var1
/* : ContainerIterator[nullable Object] */;
333 var1
= NEW_standard__abstract_collection__ContainerIterator(self
->type
->resolution_table
->types
[COLOR_standard__abstract_collection__ContainerIterator__standard__Container___35dE
]);
335 ((void(*)(val
* self
, val
* p0
))(var1
->class->vft
[COLOR_standard__abstract_collection__ContainerIterator__container_61d
]))(var1
, self
); /* container= on <var1:ContainerIterator[nullable Object]>*/
338 ((void(*)(val
* self
))(var1
->class->vft
[COLOR_standard__kernel__Object__init
]))(var1
); /* init on <var1:ContainerIterator[nullable Object]>*/
345 /* method abstract_collection#Container#item for (self: Container[nullable Object]): nullable Object */
346 val
* standard___standard__Container___item(val
* self
) {
347 val
* var
/* : nullable Object */;
348 val
* var1
/* : nullable Object */;
349 var1
= self
->attrs
[COLOR_standard__abstract_collection__Container___item
].val
; /* _item on <self:Container[nullable Object]> */
354 /* method abstract_collection#Container#item= for (self: Container[nullable Object], nullable Object) */
355 void standard___standard__Container___item_61d(val
* self
, val
* p0
) {
356 short int var
/* : Bool */;
359 const struct type
* type_struct
;
360 short int is_nullable
;
361 const char* var_class_name
;
362 /* Covariant cast for argument 0 (item) <p0:nullable Object> isa E */
363 /* <p0:nullable Object> isa E */
364 type_struct
= self
->type
->resolution_table
->types
[COLOR_standard__Container___35dE
];
365 cltype
= type_struct
->color
;
366 idtype
= type_struct
->id
;
367 is_nullable
= type_struct
->is_nullable
;
371 if(cltype
>= (((long)p0
&3)?type_info
[((long)p0
&3)]:p0
->type
)->table_size
) {
374 var
= (((long)p0
&3)?type_info
[((long)p0
&3)]:p0
->type
)->type_table
[cltype
] == idtype
;
377 if (unlikely(!var
)) {
378 var_class_name
= p0
== NULL ?
"null" : (((long)p0
&3)?type_info
[((long)p0
&3)]:p0
->type
)->name
;
379 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "E", var_class_name
);
380 PRINT_ERROR(" (%s:%d)\n", FILE_standard__abstract_collection
, 309);
383 self
->attrs
[COLOR_standard__abstract_collection__Container___item
].val
= p0
; /* _item on <self:Container[nullable Object]> */
386 /* method abstract_collection#Container#init for (self: Container[nullable Object]) */
387 void standard___standard__Container___standard__kernel__Object__init(val
* self
) {
389 ((void(*)(val
* self
))(self
->class->vft
[COLOR_standard___standard__Container___standard__kernel__Object__init
]))(self
); /* init on <self:Container[nullable Object]>*/
393 /* method abstract_collection#ContainerIterator#item for (self: ContainerIterator[nullable Object]): nullable Object */
394 val
* standard__abstract_collection___standard__abstract_collection__ContainerIterator___Iterator__item(val
* self
) {
395 val
* var
/* : nullable Object */;
396 val
* var1
/* : Container[nullable Object] */;
397 val
* var2
/* : nullable Object */;
398 val
* var4
/* : nullable Object */;
399 var1
= self
->attrs
[COLOR_standard__abstract_collection__ContainerIterator___container
].val
; /* _container on <self:ContainerIterator[nullable Object]> */
400 if (unlikely(var1
== NULL
)) {
401 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _container");
402 PRINT_ERROR(" (%s:%d)\n", FILE_standard__abstract_collection
, 316);
406 { /* Inline abstract_collection#Container#item (var1) on <var1:Container[nullable Object]> */
407 var4
= var1
->attrs
[COLOR_standard__abstract_collection__Container___item
].val
; /* _item on <var1:Container[nullable Object]> */
417 /* method abstract_collection#ContainerIterator#next for (self: ContainerIterator[nullable Object]) */
418 void standard__abstract_collection___standard__abstract_collection__ContainerIterator___Iterator__next(val
* self
) {
420 { /* Inline abstract_collection#ContainerIterator#is_ok= (self,0) on <self:ContainerIterator[nullable Object]> */
421 self
->attrs
[COLOR_standard__abstract_collection__ContainerIterator___is_ok
].s
= 0; /* _is_ok on <self:ContainerIterator[nullable Object]> */
427 /* method abstract_collection#ContainerIterator#is_ok for (self: ContainerIterator[nullable Object]): Bool */
428 short int standard__abstract_collection___standard__abstract_collection__ContainerIterator___Iterator__is_ok(val
* self
) {
429 short int var
/* : Bool */;
430 short int var1
/* : Bool */;
431 var1
= self
->attrs
[COLOR_standard__abstract_collection__ContainerIterator___is_ok
].s
; /* _is_ok on <self:ContainerIterator[nullable Object]> */
436 /* method abstract_collection#ContainerIterator#is_ok= for (self: ContainerIterator[nullable Object], Bool) */
437 void standard__abstract_collection___standard__abstract_collection__ContainerIterator___is_ok_61d(val
* self
, short int p0
) {
438 self
->attrs
[COLOR_standard__abstract_collection__ContainerIterator___is_ok
].s
= p0
; /* _is_ok on <self:ContainerIterator[nullable Object]> */
441 /* method abstract_collection#ContainerIterator#container= for (self: ContainerIterator[nullable Object], Container[nullable Object]) */
442 void standard__abstract_collection___standard__abstract_collection__ContainerIterator___container_61d(val
* self
, val
* p0
) {
443 short int var
/* : Bool */;
446 const struct type
* type_struct
;
447 const char* var_class_name
;
448 /* Covariant cast for argument 0 (container) <p0:Container[nullable Object]> isa Container[E] */
449 /* <p0:Container[nullable Object]> isa Container[E] */
450 type_struct
= self
->type
->resolution_table
->types
[COLOR_standard__Container__standard__abstract_collection__ContainerIterator___35dE
];
451 cltype
= type_struct
->color
;
452 idtype
= type_struct
->id
;
453 if(cltype
>= p0
->type
->table_size
) {
456 var
= p0
->type
->type_table
[cltype
] == idtype
;
458 if (unlikely(!var
)) {
459 var_class_name
= p0
== NULL ?
"null" : p0
->type
->name
;
460 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "Container[E]", var_class_name
);
461 PRINT_ERROR(" (%s:%d)\n", FILE_standard__abstract_collection
, 322);
464 self
->attrs
[COLOR_standard__abstract_collection__ContainerIterator___container
].val
= p0
; /* _container on <self:ContainerIterator[nullable Object]> */
467 /* method abstract_collection#ContainerIterator#init for (self: ContainerIterator[nullable Object]) */
468 void standard__abstract_collection___standard__abstract_collection__ContainerIterator___standard__kernel__Object__init(val
* self
) {
470 ((void(*)(val
* self
))(self
->class->vft
[COLOR_standard__abstract_collection___standard__abstract_collection__ContainerIterator___standard__kernel__Object__init
]))(self
); /* init on <self:ContainerIterator[nullable Object]>*/
474 /* method abstract_collection#RemovableCollection#clear for (self: RemovableCollection[nullable Object]) */
475 void standard___standard__RemovableCollection___clear(val
* self
) {
476 const char* var_class_name
;
477 var_class_name
= self
== NULL ?
"null" : (((long)self
&3)?type_info
[((long)self
&3)]:self
->type
)->name
;
478 PRINT_ERROR("Runtime error: Abstract method `%s` called on `%s`", "clear", var_class_name
);
479 PRINT_ERROR(" (%s:%d)\n", FILE_standard__abstract_collection
, 329);
483 /* method abstract_collection#RemovableCollection#remove for (self: RemovableCollection[nullable Object], nullable Object) */
484 void standard___standard__RemovableCollection___remove(val
* self
, val
* p0
) {
485 const char* var_class_name
;
486 var_class_name
= self
== NULL ?
"null" : (((long)self
&3)?type_info
[((long)self
&3)]:self
->type
)->name
;
487 PRINT_ERROR("Runtime error: Abstract method `%s` called on `%s`", "remove", var_class_name
);
488 PRINT_ERROR(" (%s:%d)\n", FILE_standard__abstract_collection
, 338);
492 /* method abstract_collection#SimpleCollection#add_all for (self: SimpleCollection[nullable Object], Collection[nullable Object]) */
493 void standard___standard__SimpleCollection___add_all(val
* self
, val
* p0
) {
494 short int var
/* : Bool */;
497 const struct type
* type_struct
;
498 const char* var_class_name
;
499 val
* var_coll
/* var coll: Collection[nullable Object] */;
500 val
* var_
/* var : Collection[nullable Object] */;
501 val
* var1
/* : Iterator[nullable Object] */;
502 val
* var_2
/* var : Iterator[nullable Object] */;
503 short int var3
/* : Bool */;
504 val
* var4
/* : nullable Object */;
505 val
* var_i
/* var i: nullable Object */;
506 /* Covariant cast for argument 0 (coll) <p0:Collection[nullable Object]> isa Collection[E] */
507 /* <p0:Collection[nullable Object]> isa Collection[E] */
508 type_struct
= (((long)self
&3)?type_info
[((long)self
&3)]:self
->type
)->resolution_table
->types
[COLOR_standard__Collection__standard__SimpleCollection___35dE
];
509 cltype
= type_struct
->color
;
510 idtype
= type_struct
->id
;
511 if(cltype
>= (((long)p0
&3)?type_info
[((long)p0
&3)]:p0
->type
)->table_size
) {
514 var
= (((long)p0
&3)?type_info
[((long)p0
&3)]:p0
->type
)->type_table
[cltype
] == idtype
;
516 if (unlikely(!var
)) {
517 var_class_name
= p0
== NULL ?
"null" : (((long)p0
&3)?type_info
[((long)p0
&3)]:p0
->type
)->name
;
518 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "Collection[E]", var_class_name
);
519 PRINT_ERROR(" (%s:%d)\n", FILE_standard__abstract_collection
, 367);
525 var1
= ((val
*(*)(val
* self
))((((long)var_
&3)?class_info
[((long)var_
&3)]:var_
->class)->vft
[COLOR_standard__abstract_collection__Collection__iterator
]))(var_
); /* iterator on <var_:Collection[nullable Object]>*/
530 var3
= ((short int(*)(val
* self
))((((long)var_2
&3)?class_info
[((long)var_2
&3)]:var_2
->class)->vft
[COLOR_standard__abstract_collection__Iterator__is_ok
]))(var_2
); /* is_ok on <var_2:Iterator[nullable Object]>*/
534 var4
= ((val
*(*)(val
* self
))((((long)var_2
&3)?class_info
[((long)var_2
&3)]:var_2
->class)->vft
[COLOR_standard__abstract_collection__Iterator__item
]))(var_2
); /* item on <var_2:Iterator[nullable Object]>*/
538 ((void(*)(val
* self
, val
* p0
))((((long)self
&3)?class_info
[((long)self
&3)]:self
->class)->vft
[COLOR_standard__abstract_collection__SimpleCollection__add
]))(self
, var_i
); /* add on <self:SimpleCollection[nullable Object]>*/
541 ((void(*)(val
* self
))((((long)var_2
&3)?class_info
[((long)var_2
&3)]:var_2
->class)->vft
[COLOR_standard__abstract_collection__Iterator__next
]))(var_2
); /* next on <var_2:Iterator[nullable Object]>*/
547 BREAK_label
: (void)0;
549 ((void(*)(val
* self
))((((long)var_2
&3)?class_info
[((long)var_2
&3)]:var_2
->class)->vft
[COLOR_standard__abstract_collection__Iterator__finish
]))(var_2
); /* finish on <var_2:Iterator[nullable Object]>*/
553 /* method abstract_collection#Set#== for (self: Set[nullable Object], nullable Object): Bool */
554 short int standard___standard__Set___standard__kernel__Object___61d_61d(val
* self
, val
* p0
) {
555 short int var
/* : Bool */;
556 val
* var_other
/* var other: nullable Object */;
557 short int var1
/* : Bool */;
560 short int var2
/* : Bool */;
561 long var3
/* : Int */;
562 long var4
/* : Int */;
563 short int var5
/* : Bool */;
564 short int var7
/* : Bool */;
565 short int var8
/* : Bool */;
566 short int var9
/* : Bool */;
568 /* <var_other:nullable Object> isa Set[nullable Object] */
569 cltype
= type_standard__Set__nullable__standard__Object
.color
;
570 idtype
= type_standard__Set__nullable__standard__Object
.id
;
571 if(var_other
== NULL
) {
574 if(cltype
>= (((long)var_other
&3)?type_info
[((long)var_other
&3)]:var_other
->type
)->table_size
) {
577 var1
= (((long)var_other
&3)?type_info
[((long)var_other
&3)]:var_other
->type
)->type_table
[cltype
] == idtype
;
587 var3
= ((long(*)(val
* self
))((((long)var_other
&3)?class_info
[((long)var_other
&3)]:var_other
->class)->vft
[COLOR_standard__abstract_collection__Collection__length
]))(var_other
); /* length on <var_other:nullable Object(Set[nullable Object])>*/
590 var4
= ((long(*)(val
* self
))((((long)self
&3)?class_info
[((long)self
&3)]:self
->class)->vft
[COLOR_standard__abstract_collection__Collection__length
]))(self
); /* length on <self:Set[nullable Object]>*/
593 { /* Inline kernel#Int#!= (var3,var4) on <var3:Int> */
607 var9
= standard___standard__Collection___has_all(self
, var_other
);
614 /* method abstract_collection#Set#hash for (self: Set[nullable Object]): Int */
615 long standard___standard__Set___standard__kernel__Object__hash(val
* self
) {
616 long var
/* : Int */;
617 long var1
/* : Int */;
618 long var2
/* : Int */;
619 short int var4
/* : Bool */;
622 const char* var_class_name
;
623 long var5
/* : Int */;
624 long var_res
/* var res: Int */;
625 val
* var_
/* var : Set[nullable Object] */;
626 val
* var6
/* : Iterator[nullable Object] */;
627 val
* var_7
/* var : Iterator[nullable Object] */;
628 short int var8
/* : Bool */;
629 val
* var9
/* : nullable Object */;
630 val
* var_e
/* var e: nullable Object */;
631 long var10
/* : Int */;
632 long var11
/* : Int */;
633 short int var13
/* : Bool */;
636 const char* var_class_name16
;
637 long var17
/* : Int */;
639 var1
= ((long(*)(val
* self
))((((long)self
&3)?class_info
[((long)self
&3)]:self
->class)->vft
[COLOR_standard__abstract_collection__Collection__length
]))(self
); /* length on <self:Set[nullable Object]>*/
642 { /* Inline kernel#Int#+ (23l,var1) on <23l:Int> */
643 /* Covariant cast for argument 0 (i) <var1:Int> isa OTHER */
644 /* <var1:Int> isa OTHER */
645 var4
= 1; /* easy <var1:Int> isa OTHER*/
646 if (unlikely(!var4
)) {
647 var_class_name
= type_standard__Int
.name
;
648 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
649 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 537);
661 var6
= ((val
*(*)(val
* self
))((((long)var_
&3)?class_info
[((long)var_
&3)]:var_
->class)->vft
[COLOR_standard__abstract_collection__Collection__iterator
]))(var_
); /* iterator on <var_:Set[nullable Object]>*/
666 var8
= ((short int(*)(val
* self
))((((long)var_7
&3)?class_info
[((long)var_7
&3)]:var_7
->class)->vft
[COLOR_standard__abstract_collection__Iterator__is_ok
]))(var_7
); /* is_ok on <var_7:Iterator[nullable Object]>*/
670 var9
= ((val
*(*)(val
* self
))((((long)var_7
&3)?class_info
[((long)var_7
&3)]:var_7
->class)->vft
[COLOR_standard__abstract_collection__Iterator__item
]))(var_7
); /* item on <var_7:Iterator[nullable Object]>*/
674 PRINT_ERROR("Runtime error: %s", "Receiver is null");
675 PRINT_ERROR(" (%s:%d)\n", FILE_standard__abstract_collection
, 428);
678 var10
= ((long(*)(val
* self
))((((long)var_e
&3)?class_info
[((long)var_e
&3)]:var_e
->class)->vft
[COLOR_standard__kernel__Object__hash
]))(var_e
); /* hash on <var_e:nullable Object>*/
681 { /* Inline kernel#Int#+ (var_res,var10) on <var_res:Int> */
682 /* Covariant cast for argument 0 (i) <var10:Int> isa OTHER */
683 /* <var10:Int> isa OTHER */
684 var13
= 1; /* easy <var10:Int> isa OTHER*/
685 if (unlikely(!var13
)) {
686 var_class_name16
= type_standard__Int
.name
;
687 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name16
);
688 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 537);
691 var17
= var_res
+ var10
;
699 ((void(*)(val
* self
))((((long)var_7
&3)?class_info
[((long)var_7
&3)]:var_7
->class)->vft
[COLOR_standard__abstract_collection__Iterator__next
]))(var_7
); /* next on <var_7:Iterator[nullable Object]>*/
705 BREAK_label
: (void)0;
707 ((void(*)(val
* self
))((((long)var_7
&3)?class_info
[((long)var_7
&3)]:var_7
->class)->vft
[COLOR_standard__abstract_collection__Iterator__finish
]))(var_7
); /* finish on <var_7:Iterator[nullable Object]>*/
714 /* method abstract_collection#MapRead#get_or_null for (self: MapRead[nullable Object, nullable Object], nullable Object): nullable Object */
715 val
* standard___standard__MapRead___get_or_null(val
* self
, val
* p0
) {
716 val
* var
/* : nullable Object */;
717 val
* var_key
/* var key: nullable Object */;
718 short int var1
/* : Bool */;
719 val
* var2
/* : nullable Object */;
722 var1
= ((short int(*)(val
* self
, val
* p0
))((((long)self
&3)?class_info
[((long)self
&3)]:self
->class)->vft
[COLOR_standard__abstract_collection__MapRead__has_key
]))(self
, var_key
); /* has_key on <self:MapRead[nullable Object, nullable Object]>*/
726 var2
= ((val
*(*)(val
* self
, val
* p0
))((((long)self
&3)?class_info
[((long)self
&3)]:self
->class)->vft
[COLOR_standard__abstract_collection__MapRead___91d_93d
]))(self
, var_key
); /* [] on <self:MapRead[nullable Object, nullable Object]>*/
737 /* method abstract_collection#MapRead#provide_default_value for (self: MapRead[nullable Object, nullable Object], nullable Object): nullable Object */
738 val
* standard___standard__MapRead___provide_default_value(val
* self
, val
* p0
) {
739 val
* var
/* : nullable Object */;
740 val
* var_key
/* var key: nullable Object */;
742 PRINT_ERROR("Runtime error: %s", "Aborted");
743 PRINT_ERROR(" (%s:%d)\n", FILE_standard__abstract_collection
, 552);
748 /* method abstract_collection#MapRead#== for (self: MapRead[nullable Object, nullable Object], nullable Object): Bool */
749 short int standard___standard__MapRead___standard__kernel__Object___61d_61d(val
* self
, val
* p0
) {
750 short int var
/* : Bool */;
751 val
* var_other
/* var other: nullable Object */;
752 short int var1
/* : Bool */;
755 short int var2
/* : Bool */;
756 long var3
/* : Int */;
757 long var4
/* : Int */;
758 short int var5
/* : Bool */;
759 short int var7
/* : Bool */;
760 short int var8
/* : Bool */;
761 val
* var_
/* var : MapRead[nullable Object, nullable Object] */;
762 val
* var9
/* : MapIterator[nullable Object, nullable Object] */;
763 val
* var_10
/* var : MapIterator[nullable Object, nullable Object] */;
764 short int var11
/* : Bool */;
765 val
* var12
/* : nullable Object */;
766 val
* var_k
/* var k: nullable Object */;
767 val
* var13
/* : nullable Object */;
768 val
* var_v
/* var v: nullable Object */;
769 short int var14
/* : Bool */;
770 short int var15
/* : Bool */;
771 val
* var16
/* : nullable Object */;
772 short int var17
/* : Bool */;
773 short int var18
/* : Bool */;
775 /* <var_other:nullable Object> isa MapRead[nullable Object, nullable Object] */
776 cltype
= type_standard__MapRead__nullable__standard__Object__nullable__standard__Object
.color
;
777 idtype
= type_standard__MapRead__nullable__standard__Object__nullable__standard__Object
.id
;
778 if(var_other
== NULL
) {
781 if(cltype
>= (((long)var_other
&3)?type_info
[((long)var_other
&3)]:var_other
->type
)->table_size
) {
784 var1
= (((long)var_other
&3)?type_info
[((long)var_other
&3)]:var_other
->type
)->type_table
[cltype
] == idtype
;
794 var3
= ((long(*)(val
* self
))((((long)var_other
&3)?class_info
[((long)var_other
&3)]:var_other
->class)->vft
[COLOR_standard__abstract_collection__MapRead__length
]))(var_other
); /* length on <var_other:nullable Object(MapRead[nullable Object, nullable Object])>*/
797 var4
= ((long(*)(val
* self
))((((long)self
&3)?class_info
[((long)self
&3)]:self
->class)->vft
[COLOR_standard__abstract_collection__MapRead__length
]))(self
); /* length on <self:MapRead[nullable Object, nullable Object]>*/
800 { /* Inline kernel#Int#!= (var3,var4) on <var3:Int> */
815 var9
= ((val
*(*)(val
* self
))((((long)var_
&3)?class_info
[((long)var_
&3)]:var_
->class)->vft
[COLOR_standard__abstract_collection__MapRead__iterator
]))(var_
); /* iterator on <var_:MapRead[nullable Object, nullable Object]>*/
820 var11
= ((short int(*)(val
* self
))((((long)var_10
&3)?class_info
[((long)var_10
&3)]:var_10
->class)->vft
[COLOR_standard__abstract_collection__MapIterator__is_ok
]))(var_10
); /* is_ok on <var_10:MapIterator[nullable Object, nullable Object]>*/
824 var12
= ((val
*(*)(val
* self
))((((long)var_10
&3)?class_info
[((long)var_10
&3)]:var_10
->class)->vft
[COLOR_standard__abstract_collection__MapIterator__key
]))(var_10
); /* key on <var_10:MapIterator[nullable Object, nullable Object]>*/
828 var13
= ((val
*(*)(val
* self
))((((long)var_10
&3)?class_info
[((long)var_10
&3)]:var_10
->class)->vft
[COLOR_standard__abstract_collection__MapIterator__item
]))(var_10
); /* item on <var_10:MapIterator[nullable Object, nullable Object]>*/
832 var14
= ((short int(*)(val
* self
, val
* p0
))((((long)var_other
&3)?class_info
[((long)var_other
&3)]:var_other
->class)->vft
[COLOR_standard__abstract_collection__MapRead__has_key
]))(var_other
, var_k
); /* has_key on <var_other:nullable Object(MapRead[nullable Object, nullable Object])>*/
841 var16
= ((val
*(*)(val
* self
, val
* p0
))((((long)var_other
&3)?class_info
[((long)var_other
&3)]:var_other
->class)->vft
[COLOR_standard__abstract_collection__MapRead___91d_93d
]))(var_other
, var_k
); /* [] on <var_other:nullable Object(MapRead[nullable Object, nullable Object])>*/
844 var17
= (var_v
!= NULL
);
846 var18
= ((short int(*)(val
* self
, val
* p0
))((((long)var16
&3)?class_info
[((long)var16
&3)]:var16
->class)->vft
[COLOR_standard__kernel__Object___33d_61d
]))(var16
, var_v
); /* != on <var16:nullable Object>*/
855 ((void(*)(val
* self
))((((long)var_10
&3)?class_info
[((long)var_10
&3)]:var_10
->class)->vft
[COLOR_standard__abstract_collection__MapIterator__next
]))(var_10
); /* next on <var_10:MapIterator[nullable Object, nullable Object]>*/
861 BREAK_label
: (void)0;
863 { /* Inline abstract_collection#MapIterator#finish (var_10) on <var_10:MapIterator[nullable Object, nullable Object]> */
872 /* method abstract_collection#MapRead#hash for (self: MapRead[nullable Object, nullable Object]): Int */
873 long standard___standard__MapRead___standard__kernel__Object__hash(val
* self
) {
874 long var
/* : Int */;
875 long var1
/* : Int */;
876 long var_res
/* var res: Int */;
877 val
* var_
/* var : MapRead[nullable Object, nullable Object] */;
878 val
* var2
/* : MapIterator[nullable Object, nullable Object] */;
879 val
* var_3
/* var : MapIterator[nullable Object, nullable Object] */;
880 short int var4
/* : Bool */;
881 val
* var5
/* : nullable Object */;
882 val
* var_k
/* var k: nullable Object */;
883 val
* var6
/* : nullable Object */;
884 val
* var_v
/* var v: nullable Object */;
885 short int var7
/* : Bool */;
886 short int var8
/* : Bool */;
887 long var9
/* : Int */;
888 long var10
/* : Int */;
889 short int var12
/* : Bool */;
892 const char* var_class_name
;
893 long var13
/* : Int */;
894 long var14
/* : Int */;
895 short int var16
/* : Bool */;
898 const char* var_class_name19
;
899 long var20
/* : Int */;
900 short int var21
/* : Bool */;
901 short int var22
/* : Bool */;
902 long var23
/* : Int */;
903 long var24
/* : Int */;
904 short int var26
/* : Bool */;
907 const char* var_class_name29
;
908 long var30
/* : Int */;
909 long var31
/* : Int */;
910 short int var33
/* : Bool */;
913 const char* var_class_name36
;
914 long var37
/* : Int */;
916 var1
= ((long(*)(val
* self
))((((long)self
&3)?class_info
[((long)self
&3)]:self
->class)->vft
[COLOR_standard__abstract_collection__MapRead__length
]))(self
); /* length on <self:MapRead[nullable Object, nullable Object]>*/
921 var2
= ((val
*(*)(val
* self
))((((long)var_
&3)?class_info
[((long)var_
&3)]:var_
->class)->vft
[COLOR_standard__abstract_collection__MapRead__iterator
]))(var_
); /* iterator on <var_:MapRead[nullable Object, nullable Object]>*/
926 var4
= ((short int(*)(val
* self
))((((long)var_3
&3)?class_info
[((long)var_3
&3)]:var_3
->class)->vft
[COLOR_standard__abstract_collection__MapIterator__is_ok
]))(var_3
); /* is_ok on <var_3:MapIterator[nullable Object, nullable Object]>*/
930 var5
= ((val
*(*)(val
* self
))((((long)var_3
&3)?class_info
[((long)var_3
&3)]:var_3
->class)->vft
[COLOR_standard__abstract_collection__MapIterator__key
]))(var_3
); /* key on <var_3:MapIterator[nullable Object, nullable Object]>*/
934 var6
= ((val
*(*)(val
* self
))((((long)var_3
&3)?class_info
[((long)var_3
&3)]:var_3
->class)->vft
[COLOR_standard__abstract_collection__MapIterator__item
]))(var_3
); /* item on <var_3:MapIterator[nullable Object, nullable Object]>*/
938 var7
= 0; /* is null */
940 var7
= 1; /* arg is null and recv is not */
943 var8
= ((short int(*)(val
* self
, val
* p0
))((((long)var_k
&3)?class_info
[((long)var_k
&3)]:var_k
->class)->vft
[COLOR_standard__kernel__Object___33d_61d
]))(var_k
, ((val
*)NULL
)); /* != on <var_k:nullable Object>*/
948 var9
= ((long(*)(val
* self
))((((long)var_k
&3)?class_info
[((long)var_k
&3)]:var_k
->class)->vft
[COLOR_standard__kernel__Object__hash
]))(var_k
); /* hash on <var_k:nullable Object(Object)>*/
951 { /* Inline kernel#Int#* (var9,7l) on <var9:Int> */
952 /* Covariant cast for argument 0 (i) <7l:Int> isa OTHER */
953 /* <7l:Int> isa OTHER */
954 var12
= 1; /* easy <7l:Int> isa OTHER*/
955 if (unlikely(!var12
)) {
956 var_class_name
= type_standard__Int
.name
;
957 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
958 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 541);
968 { /* Inline kernel#Int#+ (var_res,var10) on <var_res:Int> */
969 /* Covariant cast for argument 0 (i) <var10:Int> isa OTHER */
970 /* <var10:Int> isa OTHER */
971 var16
= 1; /* easy <var10:Int> isa OTHER*/
972 if (unlikely(!var16
)) {
973 var_class_name19
= type_standard__Int
.name
;
974 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name19
);
975 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 537);
978 var20
= var_res
+ var10
;
988 var21
= 0; /* is null */
990 var21
= 1; /* arg is null and recv is not */
993 var22
= ((short int(*)(val
* self
, val
* p0
))((((long)var_v
&3)?class_info
[((long)var_v
&3)]:var_v
->class)->vft
[COLOR_standard__kernel__Object___33d_61d
]))(var_v
, ((val
*)NULL
)); /* != on <var_v:nullable Object>*/
998 var23
= ((long(*)(val
* self
))((((long)var_v
&3)?class_info
[((long)var_v
&3)]:var_v
->class)->vft
[COLOR_standard__kernel__Object__hash
]))(var_v
); /* hash on <var_v:nullable Object(Object)>*/
1001 { /* Inline kernel#Int#* (var23,11l) on <var23:Int> */
1002 /* Covariant cast for argument 0 (i) <11l:Int> isa OTHER */
1003 /* <11l:Int> isa OTHER */
1004 var26
= 1; /* easy <11l:Int> isa OTHER*/
1005 if (unlikely(!var26
)) {
1006 var_class_name29
= type_standard__Int
.name
;
1007 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name29
);
1008 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 541);
1011 var30
= var23
* 11l;
1014 RET_LABEL25
:(void)0;
1018 { /* Inline kernel#Int#+ (var_res,var24) on <var_res:Int> */
1019 /* Covariant cast for argument 0 (i) <var24:Int> isa OTHER */
1020 /* <var24:Int> isa OTHER */
1021 var33
= 1; /* easy <var24:Int> isa OTHER*/
1022 if (unlikely(!var33
)) {
1023 var_class_name36
= type_standard__Int
.name
;
1024 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name36
);
1025 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 537);
1028 var37
= var_res
+ var24
;
1031 RET_LABEL32
:(void)0;
1038 ((void(*)(val
* self
))((((long)var_3
&3)?class_info
[((long)var_3
&3)]:var_3
->class)->vft
[COLOR_standard__abstract_collection__MapIterator__next
]))(var_3
); /* next on <var_3:MapIterator[nullable Object, nullable Object]>*/
1044 BREAK_label
: (void)0;
1046 { /* Inline abstract_collection#MapIterator#finish (var_3) on <var_3:MapIterator[nullable Object, nullable Object]> */
1047 RET_LABEL38
:(void)0;
1055 /* method abstract_collection#MapIterator#finish for (self: MapIterator[nullable Object, nullable Object]) */
1056 void standard___standard__MapIterator___finish(val
* self
) {
1059 /* method abstract_collection#MapKeysIterator#original_iterator for (self: MapKeysIterator[nullable Object, nullable Object]): MapIterator[nullable Object, nullable Object] */
1060 val
* standard___standard__MapKeysIterator___original_iterator(val
* self
) {
1061 val
* var
/* : MapIterator[nullable Object, nullable Object] */;
1062 val
* var1
/* : MapIterator[nullable Object, nullable Object] */;
1063 var1
= self
->attrs
[COLOR_standard__abstract_collection__MapKeysIterator___original_iterator
].val
; /* _original_iterator on <self:MapKeysIterator[nullable Object, nullable Object]> */
1064 if (unlikely(var1
== NULL
)) {
1065 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _original_iterator");
1066 PRINT_ERROR(" (%s:%d)\n", FILE_standard__abstract_collection
, 715);
1073 /* method abstract_collection#MapKeysIterator#original_iterator= for (self: MapKeysIterator[nullable Object, nullable Object], MapIterator[nullable Object, nullable Object]) */
1074 void standard___standard__MapKeysIterator___original_iterator_61d(val
* self
, val
* p0
) {
1075 short int var
/* : Bool */;
1078 const struct type
* type_struct
;
1079 const char* var_class_name
;
1080 /* Covariant cast for argument 0 (original_iterator) <p0:MapIterator[nullable Object, nullable Object]> isa MapIterator[K, V] */
1081 /* <p0:MapIterator[nullable Object, nullable Object]> isa MapIterator[K, V] */
1082 type_struct
= self
->type
->resolution_table
->types
[COLOR_standard__MapIterator__standard__MapKeysIterator___35dK__standard__MapKeysIterator___35dV
];
1083 cltype
= type_struct
->color
;
1084 idtype
= type_struct
->id
;
1085 if(cltype
>= (((long)p0
&3)?type_info
[((long)p0
&3)]:p0
->type
)->table_size
) {
1088 var
= (((long)p0
&3)?type_info
[((long)p0
&3)]:p0
->type
)->type_table
[cltype
] == idtype
;
1090 if (unlikely(!var
)) {
1091 var_class_name
= p0
== NULL ?
"null" : (((long)p0
&3)?type_info
[((long)p0
&3)]:p0
->type
)->name
;
1092 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "MapIterator[K, V]", var_class_name
);
1093 PRINT_ERROR(" (%s:%d)\n", FILE_standard__abstract_collection
, 715);
1096 self
->attrs
[COLOR_standard__abstract_collection__MapKeysIterator___original_iterator
].val
= p0
; /* _original_iterator on <self:MapKeysIterator[nullable Object, nullable Object]> */
1099 /* method abstract_collection#MapKeysIterator#is_ok for (self: MapKeysIterator[nullable Object, nullable Object]): Bool */
1100 short int standard___standard__MapKeysIterator___Iterator__is_ok(val
* self
) {
1101 short int var
/* : Bool */;
1102 val
* var1
/* : MapIterator[nullable Object, nullable Object] */;
1103 val
* var3
/* : MapIterator[nullable Object, nullable Object] */;
1104 short int var4
/* : Bool */;
1106 { /* Inline abstract_collection#MapKeysIterator#original_iterator (self) on <self:MapKeysIterator[nullable Object, nullable Object]> */
1107 var3
= self
->attrs
[COLOR_standard__abstract_collection__MapKeysIterator___original_iterator
].val
; /* _original_iterator on <self:MapKeysIterator[nullable Object, nullable Object]> */
1108 if (unlikely(var3
== NULL
)) {
1109 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _original_iterator");
1110 PRINT_ERROR(" (%s:%d)\n", FILE_standard__abstract_collection
, 715);
1118 var4
= ((short int(*)(val
* self
))((((long)var1
&3)?class_info
[((long)var1
&3)]:var1
->class)->vft
[COLOR_standard__abstract_collection__MapIterator__is_ok
]))(var1
); /* is_ok on <var1:MapIterator[nullable Object, nullable Object]>*/
1125 /* method abstract_collection#MapKeysIterator#next for (self: MapKeysIterator[nullable Object, nullable Object]) */
1126 void standard___standard__MapKeysIterator___Iterator__next(val
* self
) {
1127 val
* var
/* : MapIterator[nullable Object, nullable Object] */;
1128 val
* var2
/* : MapIterator[nullable Object, nullable Object] */;
1130 { /* Inline abstract_collection#MapKeysIterator#original_iterator (self) on <self:MapKeysIterator[nullable Object, nullable Object]> */
1131 var2
= self
->attrs
[COLOR_standard__abstract_collection__MapKeysIterator___original_iterator
].val
; /* _original_iterator on <self:MapKeysIterator[nullable Object, nullable Object]> */
1132 if (unlikely(var2
== NULL
)) {
1133 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _original_iterator");
1134 PRINT_ERROR(" (%s:%d)\n", FILE_standard__abstract_collection
, 715);
1142 ((void(*)(val
* self
))((((long)var
&3)?class_info
[((long)var
&3)]:var
->class)->vft
[COLOR_standard__abstract_collection__MapIterator__next
]))(var
); /* next on <var:MapIterator[nullable Object, nullable Object]>*/
1146 /* method abstract_collection#MapKeysIterator#item for (self: MapKeysIterator[nullable Object, nullable Object]): nullable Object */
1147 val
* standard___standard__MapKeysIterator___Iterator__item(val
* self
) {
1148 val
* var
/* : nullable Object */;
1149 val
* var1
/* : MapIterator[nullable Object, nullable Object] */;
1150 val
* var3
/* : MapIterator[nullable Object, nullable Object] */;
1151 val
* var4
/* : nullable Object */;
1153 { /* Inline abstract_collection#MapKeysIterator#original_iterator (self) on <self:MapKeysIterator[nullable Object, nullable Object]> */
1154 var3
= self
->attrs
[COLOR_standard__abstract_collection__MapKeysIterator___original_iterator
].val
; /* _original_iterator on <self:MapKeysIterator[nullable Object, nullable Object]> */
1155 if (unlikely(var3
== NULL
)) {
1156 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _original_iterator");
1157 PRINT_ERROR(" (%s:%d)\n", FILE_standard__abstract_collection
, 715);
1165 var4
= ((val
*(*)(val
* self
))((((long)var1
&3)?class_info
[((long)var1
&3)]:var1
->class)->vft
[COLOR_standard__abstract_collection__MapIterator__key
]))(var1
); /* key on <var1:MapIterator[nullable Object, nullable Object]>*/
1172 /* method abstract_collection#MapKeysIterator#init for (self: MapKeysIterator[nullable Object, nullable Object]) */
1173 void standard___standard__MapKeysIterator___standard__kernel__Object__init(val
* self
) {
1175 ((void(*)(val
* self
))(self
->class->vft
[COLOR_standard___standard__MapKeysIterator___standard__kernel__Object__init
]))(self
); /* init on <self:MapKeysIterator[nullable Object, nullable Object]>*/
1179 /* method abstract_collection#MapValuesIterator#original_iterator for (self: MapValuesIterator[nullable Object, nullable Object]): MapIterator[nullable Object, nullable Object] */
1180 val
* standard___standard__MapValuesIterator___original_iterator(val
* self
) {
1181 val
* var
/* : MapIterator[nullable Object, nullable Object] */;
1182 val
* var1
/* : MapIterator[nullable Object, nullable Object] */;
1183 var1
= self
->attrs
[COLOR_standard__abstract_collection__MapValuesIterator___original_iterator
].val
; /* _original_iterator on <self:MapValuesIterator[nullable Object, nullable Object]> */
1184 if (unlikely(var1
== NULL
)) {
1185 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _original_iterator");
1186 PRINT_ERROR(" (%s:%d)\n", FILE_standard__abstract_collection
, 726);
1193 /* method abstract_collection#MapValuesIterator#original_iterator= for (self: MapValuesIterator[nullable Object, nullable Object], MapIterator[nullable Object, nullable Object]) */
1194 void standard___standard__MapValuesIterator___original_iterator_61d(val
* self
, val
* p0
) {
1195 short int var
/* : Bool */;
1198 const struct type
* type_struct
;
1199 const char* var_class_name
;
1200 /* Covariant cast for argument 0 (original_iterator) <p0:MapIterator[nullable Object, nullable Object]> isa MapIterator[K, V] */
1201 /* <p0:MapIterator[nullable Object, nullable Object]> isa MapIterator[K, V] */
1202 type_struct
= self
->type
->resolution_table
->types
[COLOR_standard__MapIterator__standard__MapValuesIterator___35dK__standard__MapValuesIterator___35dV
];
1203 cltype
= type_struct
->color
;
1204 idtype
= type_struct
->id
;
1205 if(cltype
>= (((long)p0
&3)?type_info
[((long)p0
&3)]:p0
->type
)->table_size
) {
1208 var
= (((long)p0
&3)?type_info
[((long)p0
&3)]:p0
->type
)->type_table
[cltype
] == idtype
;
1210 if (unlikely(!var
)) {
1211 var_class_name
= p0
== NULL ?
"null" : (((long)p0
&3)?type_info
[((long)p0
&3)]:p0
->type
)->name
;
1212 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "MapIterator[K, V]", var_class_name
);
1213 PRINT_ERROR(" (%s:%d)\n", FILE_standard__abstract_collection
, 726);
1216 self
->attrs
[COLOR_standard__abstract_collection__MapValuesIterator___original_iterator
].val
= p0
; /* _original_iterator on <self:MapValuesIterator[nullable Object, nullable Object]> */
1219 /* method abstract_collection#MapValuesIterator#is_ok for (self: MapValuesIterator[nullable Object, nullable Object]): Bool */
1220 short int standard___standard__MapValuesIterator___Iterator__is_ok(val
* self
) {
1221 short int var
/* : Bool */;
1222 val
* var1
/* : MapIterator[nullable Object, nullable Object] */;
1223 val
* var3
/* : MapIterator[nullable Object, nullable Object] */;
1224 short int var4
/* : Bool */;
1226 { /* Inline abstract_collection#MapValuesIterator#original_iterator (self) on <self:MapValuesIterator[nullable Object, nullable Object]> */
1227 var3
= self
->attrs
[COLOR_standard__abstract_collection__MapValuesIterator___original_iterator
].val
; /* _original_iterator on <self:MapValuesIterator[nullable Object, nullable Object]> */
1228 if (unlikely(var3
== NULL
)) {
1229 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _original_iterator");
1230 PRINT_ERROR(" (%s:%d)\n", FILE_standard__abstract_collection
, 726);
1238 var4
= ((short int(*)(val
* self
))((((long)var1
&3)?class_info
[((long)var1
&3)]:var1
->class)->vft
[COLOR_standard__abstract_collection__MapIterator__is_ok
]))(var1
); /* is_ok on <var1:MapIterator[nullable Object, nullable Object]>*/
1245 /* method abstract_collection#MapValuesIterator#next for (self: MapValuesIterator[nullable Object, nullable Object]) */
1246 void standard___standard__MapValuesIterator___Iterator__next(val
* self
) {
1247 val
* var
/* : MapIterator[nullable Object, nullable Object] */;
1248 val
* var2
/* : MapIterator[nullable Object, nullable Object] */;
1250 { /* Inline abstract_collection#MapValuesIterator#original_iterator (self) on <self:MapValuesIterator[nullable Object, nullable Object]> */
1251 var2
= self
->attrs
[COLOR_standard__abstract_collection__MapValuesIterator___original_iterator
].val
; /* _original_iterator on <self:MapValuesIterator[nullable Object, nullable Object]> */
1252 if (unlikely(var2
== NULL
)) {
1253 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _original_iterator");
1254 PRINT_ERROR(" (%s:%d)\n", FILE_standard__abstract_collection
, 726);
1262 ((void(*)(val
* self
))((((long)var
&3)?class_info
[((long)var
&3)]:var
->class)->vft
[COLOR_standard__abstract_collection__MapIterator__next
]))(var
); /* next on <var:MapIterator[nullable Object, nullable Object]>*/
1266 /* method abstract_collection#MapValuesIterator#item for (self: MapValuesIterator[nullable Object, nullable Object]): nullable Object */
1267 val
* standard___standard__MapValuesIterator___Iterator__item(val
* self
) {
1268 val
* var
/* : nullable Object */;
1269 val
* var1
/* : MapIterator[nullable Object, nullable Object] */;
1270 val
* var3
/* : MapIterator[nullable Object, nullable Object] */;
1271 val
* var4
/* : nullable Object */;
1273 { /* Inline abstract_collection#MapValuesIterator#original_iterator (self) on <self:MapValuesIterator[nullable Object, nullable Object]> */
1274 var3
= self
->attrs
[COLOR_standard__abstract_collection__MapValuesIterator___original_iterator
].val
; /* _original_iterator on <self:MapValuesIterator[nullable Object, nullable Object]> */
1275 if (unlikely(var3
== NULL
)) {
1276 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _original_iterator");
1277 PRINT_ERROR(" (%s:%d)\n", FILE_standard__abstract_collection
, 726);
1285 var4
= ((val
*(*)(val
* self
))((((long)var1
&3)?class_info
[((long)var1
&3)]:var1
->class)->vft
[COLOR_standard__abstract_collection__MapIterator__item
]))(var1
); /* item on <var1:MapIterator[nullable Object, nullable Object]>*/
1292 /* method abstract_collection#MapValuesIterator#init for (self: MapValuesIterator[nullable Object, nullable Object]) */
1293 void standard___standard__MapValuesIterator___standard__kernel__Object__init(val
* self
) {
1295 ((void(*)(val
* self
))(self
->class->vft
[COLOR_standard___standard__MapValuesIterator___standard__kernel__Object__init
]))(self
); /* init on <self:MapValuesIterator[nullable Object, nullable Object]>*/
1299 /* method abstract_collection#SequenceRead#first for (self: SequenceRead[nullable Object]): nullable Object */
1300 val
* standard___standard__SequenceRead___Collection__first(val
* self
) {
1301 val
* var
/* : nullable Object */;
1302 short int var1
/* : Bool */;
1303 short int var2
/* : Bool */;
1304 val
* var3
/* : nullable Object */;
1306 var1
= ((short int(*)(val
* self
))((((long)self
&3)?class_info
[((long)self
&3)]:self
->class)->vft
[COLOR_standard__abstract_collection__Collection__is_empty
]))(self
); /* is_empty on <self:SequenceRead[nullable Object]>*/
1309 if (unlikely(!var2
)) {
1310 PRINT_ERROR("Runtime error: %s", "Assert \'not_empty\' failed");
1311 PRINT_ERROR(" (%s:%d)\n", FILE_standard__abstract_collection
, 751);
1315 var3
= ((val
*(*)(val
* self
, long p0
))((((long)self
&3)?class_info
[((long)self
&3)]:self
->class)->vft
[COLOR_standard__abstract_collection__SequenceRead___91d_93d
]))(self
, 0l); /* [] on <self:SequenceRead[nullable Object]>*/
1322 /* method abstract_collection#SequenceRead#last for (self: SequenceRead[nullable Object]): nullable Object */
1323 val
* standard___standard__SequenceRead___last(val
* self
) {
1324 val
* var
/* : nullable Object */;
1325 short int var1
/* : Bool */;
1326 short int var2
/* : Bool */;
1327 long var3
/* : Int */;
1328 long var4
/* : Int */;
1329 short int var6
/* : Bool */;
1332 const char* var_class_name
;
1333 long var7
/* : Int */;
1334 val
* var8
/* : nullable Object */;
1336 var1
= ((short int(*)(val
* self
))((((long)self
&3)?class_info
[((long)self
&3)]:self
->class)->vft
[COLOR_standard__abstract_collection__Collection__is_empty
]))(self
); /* is_empty on <self:SequenceRead[nullable Object]>*/
1339 if (unlikely(!var2
)) {
1340 PRINT_ERROR("Runtime error: %s", "Assert \'not_empty\' failed");
1341 PRINT_ERROR(" (%s:%d)\n", FILE_standard__abstract_collection
, 776);
1345 var3
= ((long(*)(val
* self
))((((long)self
&3)?class_info
[((long)self
&3)]:self
->class)->vft
[COLOR_standard__abstract_collection__Collection__length
]))(self
); /* length on <self:SequenceRead[nullable Object]>*/
1348 { /* Inline kernel#Int#- (var3,1l) on <var3:Int> */
1349 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
1350 /* <1l:Int> isa OTHER */
1351 var6
= 1; /* easy <1l:Int> isa OTHER*/
1352 if (unlikely(!var6
)) {
1353 var_class_name
= type_standard__Int
.name
;
1354 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
1355 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 540);
1365 var8
= ((val
*(*)(val
* self
, long p0
))((((long)self
&3)?class_info
[((long)self
&3)]:self
->class)->vft
[COLOR_standard__abstract_collection__SequenceRead___91d_93d
]))(self
, var4
); /* [] on <self:SequenceRead[nullable Object]>*/
1372 /* method abstract_collection#SequenceRead#index_of for (self: SequenceRead[nullable Object], nullable Object): Int */
1373 long standard___standard__SequenceRead___index_of(val
* self
, val
* p0
) {
1374 long var
/* : Int */;
1375 val
* var_item
/* var item: nullable Object */;
1376 long var1
/* : Int */;
1379 var1
= ((long(*)(val
* self
, val
* p0
, long p1
))((((long)self
&3)?class_info
[((long)self
&3)]:self
->class)->vft
[COLOR_standard__abstract_collection__SequenceRead__index_of_from
]))(self
, var_item
, 0l); /* index_of_from on <self:SequenceRead[nullable Object]>*/
1386 /* method abstract_collection#SequenceRead#last_index_of for (self: SequenceRead[nullable Object], nullable Object): Int */
1387 long standard___standard__SequenceRead___last_index_of(val
* self
, val
* p0
) {
1388 long var
/* : Int */;
1389 val
* var_item
/* var item: nullable Object */;
1390 long var1
/* : Int */;
1391 long var2
/* : Int */;
1392 short int var4
/* : Bool */;
1395 const char* var_class_name
;
1396 long var5
/* : Int */;
1397 long var6
/* : Int */;
1400 var1
= ((long(*)(val
* self
))((((long)self
&3)?class_info
[((long)self
&3)]:self
->class)->vft
[COLOR_standard__abstract_collection__Collection__length
]))(self
); /* length on <self:SequenceRead[nullable Object]>*/
1403 { /* Inline kernel#Int#- (var1,1l) on <var1:Int> */
1404 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
1405 /* <1l:Int> isa OTHER */
1406 var4
= 1; /* easy <1l:Int> isa OTHER*/
1407 if (unlikely(!var4
)) {
1408 var_class_name
= type_standard__Int
.name
;
1409 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
1410 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 540);
1420 var6
= ((long(*)(val
* self
, val
* p0
, long p1
))((((long)self
&3)?class_info
[((long)self
&3)]:self
->class)->vft
[COLOR_standard__abstract_collection__SequenceRead__last_index_of_from
]))(self
, var_item
, var2
); /* last_index_of_from on <self:SequenceRead[nullable Object]>*/
1427 /* method abstract_collection#SequenceRead#index_of_from for (self: SequenceRead[nullable Object], nullable Object, Int): Int */
1428 long standard___standard__SequenceRead___index_of_from(val
* self
, val
* p0
, long p1
) {
1429 long var
/* : Int */;
1430 val
* var_item
/* var item: nullable Object */;
1431 long var_pos
/* var pos: Int */;
1432 long var_p
/* var p: Int */;
1433 val
* var1
/* : Iterator[nullable Object] */;
1434 val
* var_i
/* var i: IndexedIterator[nullable Object] */;
1435 short int var2
/* : Bool */;
1436 short int var3
/* : Bool */;
1437 short int var4
/* : Bool */;
1438 short int var6
/* : Bool */;
1441 const char* var_class_name
;
1442 short int var7
/* : Bool */;
1443 short int var_
/* var : Bool */;
1444 val
* var8
/* : nullable Object */;
1445 short int var9
/* : Bool */;
1446 short int var10
/* : Bool */;
1447 long var11
/* : Int */;
1448 long var12
/* : Int */;
1449 short int var14
/* : Bool */;
1452 const char* var_class_name17
;
1453 long var18
/* : Int */;
1454 long var19
/* : Int */;
1455 long var21
/* : Int */;
1460 var1
= ((val
*(*)(val
* self
))((((long)self
&3)?class_info
[((long)self
&3)]:self
->class)->vft
[COLOR_standard__abstract_collection__Collection__iterator
]))(self
); /* iterator on <self:SequenceRead[nullable Object]>*/
1465 var2
= ((short int(*)(val
* self
))((((long)var_i
&3)?class_info
[((long)var_i
&3)]:var_i
->class)->vft
[COLOR_standard__abstract_collection__Iterator__is_ok
]))(var_i
); /* is_ok on <var_i:IndexedIterator[nullable Object]>*/
1469 { /* Inline kernel#Int#>= (var_p,var_pos) on <var_p:Int> */
1470 /* Covariant cast for argument 0 (i) <var_pos:Int> isa OTHER */
1471 /* <var_pos:Int> isa OTHER */
1472 var6
= 1; /* easy <var_pos:Int> isa OTHER*/
1473 if (unlikely(!var6
)) {
1474 var_class_name
= type_standard__Int
.name
;
1475 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
1476 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 535);
1479 var7
= var_p
>= var_pos
;
1488 var8
= ((val
*(*)(val
* self
))((((long)var_i
&3)?class_info
[((long)var_i
&3)]:var_i
->class)->vft
[COLOR_standard__abstract_collection__Iterator__item
]))(var_i
); /* item on <var_i:IndexedIterator[nullable Object]>*/
1491 var9
= (var_item
== NULL
);
1493 var10
= ((short int(*)(val
* self
, val
* p0
))((((long)var8
&3)?class_info
[((long)var8
&3)]:var8
->class)->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var8
, var_item
); /* == on <var8:nullable Object>*/
1502 var11
= ((long(*)(val
* self
))((((long)var_i
&3)?class_info
[((long)var_i
&3)]:var_i
->class)->vft
[COLOR_standard__abstract_collection__IndexedIterator__index
]))(var_i
); /* index on <var_i:IndexedIterator[nullable Object]>*/
1509 ((void(*)(val
* self
))((((long)var_i
&3)?class_info
[((long)var_i
&3)]:var_i
->class)->vft
[COLOR_standard__abstract_collection__Iterator__next
]))(var_i
); /* next on <var_i:IndexedIterator[nullable Object]>*/
1512 { /* Inline kernel#Int#+ (var_p,1l) on <var_p:Int> */
1513 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
1514 /* <1l:Int> isa OTHER */
1515 var14
= 1; /* easy <1l:Int> isa OTHER*/
1516 if (unlikely(!var14
)) {
1517 var_class_name17
= type_standard__Int
.name
;
1518 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name17
);
1519 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 537);
1525 RET_LABEL13
:(void)0;
1533 BREAK_label
: (void)0;
1535 { /* Inline kernel#Int#unary - (1l) on <1l:Int> */
1539 RET_LABEL20
:(void)0;
1547 /* method abstract_collection#SequenceRead#last_index_of_from for (self: SequenceRead[nullable Object], nullable Object, Int): Int */
1548 long standard___standard__SequenceRead___last_index_of_from(val
* self
, val
* p0
, long p1
) {
1549 long var
/* : Int */;
1550 val
* var_item
/* var item: nullable Object */;
1551 long var_pos
/* var pos: Int */;
1552 long var1
/* : Int */;
1553 long var3
/* : Int */;
1554 long var_res
/* var res: Int */;
1555 long var_p
/* var p: Int */;
1556 val
* var4
/* : Iterator[nullable Object] */;
1557 val
* var_i
/* var i: IndexedIterator[nullable Object] */;
1558 short int var5
/* : Bool */;
1559 short int var6
/* : Bool */;
1560 short int var8
/* : Bool */;
1563 const char* var_class_name
;
1564 short int var9
/* : Bool */;
1565 val
* var10
/* : nullable Object */;
1566 short int var11
/* : Bool */;
1567 short int var12
/* : Bool */;
1568 long var13
/* : Int */;
1569 short int var15
/* : Bool */;
1572 const char* var_class_name18
;
1573 long var19
/* : Int */;
1577 { /* Inline kernel#Int#unary - (1l) on <1l:Int> */
1587 var4
= ((val
*(*)(val
* self
))((((long)self
&3)?class_info
[((long)self
&3)]:self
->class)->vft
[COLOR_standard__abstract_collection__Collection__iterator
]))(self
); /* iterator on <self:SequenceRead[nullable Object]>*/
1592 var5
= ((short int(*)(val
* self
))((((long)var_i
&3)?class_info
[((long)var_i
&3)]:var_i
->class)->vft
[COLOR_standard__abstract_collection__Iterator__is_ok
]))(var_i
); /* is_ok on <var_i:IndexedIterator[nullable Object]>*/
1596 { /* Inline kernel#Int#> (var_p,var_pos) on <var_p:Int> */
1597 /* Covariant cast for argument 0 (i) <var_pos:Int> isa OTHER */
1598 /* <var_pos:Int> isa OTHER */
1599 var8
= 1; /* easy <var_pos:Int> isa OTHER*/
1600 if (unlikely(!var8
)) {
1601 var_class_name
= type_standard__Int
.name
;
1602 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
1603 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 536);
1606 var9
= var_p
> var_pos
;
1617 var10
= ((val
*(*)(val
* self
))((((long)var_i
&3)?class_info
[((long)var_i
&3)]:var_i
->class)->vft
[COLOR_standard__abstract_collection__Iterator__item
]))(var_i
); /* item on <var_i:IndexedIterator[nullable Object]>*/
1619 if (var10
== NULL
) {
1620 var11
= (var_item
== NULL
);
1622 var12
= ((short int(*)(val
* self
, val
* p0
))((((long)var10
&3)?class_info
[((long)var10
&3)]:var10
->class)->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var10
, var_item
); /* == on <var10:nullable Object>*/
1630 ((void(*)(val
* self
))((((long)var_i
&3)?class_info
[((long)var_i
&3)]:var_i
->class)->vft
[COLOR_standard__abstract_collection__Iterator__next
]))(var_i
); /* next on <var_i:IndexedIterator[nullable Object]>*/
1633 { /* Inline kernel#Int#+ (var_p,1l) on <var_p:Int> */
1634 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
1635 /* <1l:Int> isa OTHER */
1636 var15
= 1; /* easy <1l:Int> isa OTHER*/
1637 if (unlikely(!var15
)) {
1638 var_class_name18
= type_standard__Int
.name
;
1639 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name18
);
1640 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 537);
1646 RET_LABEL14
:(void)0;
1654 BREAK_label
: (void)0;
1660 /* method abstract_collection#SequenceRead#== for (self: SequenceRead[nullable Object], nullable Object): Bool */
1661 short int standard___standard__SequenceRead___standard__kernel__Object___61d_61d(val
* self
, val
* p0
) {
1662 short int var
/* : Bool */;
1663 val
* var_o
/* var o: nullable Object */;
1664 short int var1
/* : Bool */;
1667 short int var2
/* : Bool */;
1668 long var3
/* : Int */;
1669 long var_l
/* var l: Int */;
1670 long var4
/* : Int */;
1671 short int var5
/* : Bool */;
1672 short int var7
/* : Bool */;
1673 short int var8
/* : Bool */;
1674 long var_i
/* var i: Int */;
1675 short int var9
/* : Bool */;
1676 short int var11
/* : Bool */;
1679 const char* var_class_name
;
1680 short int var14
/* : Bool */;
1681 val
* var15
/* : nullable Object */;
1682 val
* var16
/* : nullable Object */;
1683 short int var17
/* : Bool */;
1684 short int var18
/* : Bool */;
1685 long var19
/* : Int */;
1686 short int var21
/* : Bool */;
1689 const char* var_class_name24
;
1690 long var25
/* : Int */;
1692 /* <var_o:nullable Object> isa SequenceRead[nullable Object] */
1693 cltype
= type_standard__SequenceRead__nullable__standard__Object
.color
;
1694 idtype
= type_standard__SequenceRead__nullable__standard__Object
.id
;
1698 if(cltype
>= (((long)var_o
&3)?type_info
[((long)var_o
&3)]:var_o
->type
)->table_size
) {
1701 var1
= (((long)var_o
&3)?type_info
[((long)var_o
&3)]:var_o
->type
)->type_table
[cltype
] == idtype
;
1711 var3
= ((long(*)(val
* self
))((((long)self
&3)?class_info
[((long)self
&3)]:self
->class)->vft
[COLOR_standard__abstract_collection__Collection__length
]))(self
); /* length on <self:SequenceRead[nullable Object]>*/
1715 var4
= ((long(*)(val
* self
))((((long)var_o
&3)?class_info
[((long)var_o
&3)]:var_o
->class)->vft
[COLOR_standard__abstract_collection__Collection__length
]))(var_o
); /* length on <var_o:nullable Object(SequenceRead[nullable Object])>*/
1718 { /* Inline kernel#Int#!= (var4,var_l) on <var4:Int> */
1719 var7
= var4
== var_l
;
1734 { /* Inline kernel#Int#< (var_i,var_l) on <var_i:Int> */
1735 /* Covariant cast for argument 0 (i) <var_l:Int> isa OTHER */
1736 /* <var_l:Int> isa OTHER */
1737 var11
= 1; /* easy <var_l:Int> isa OTHER*/
1738 if (unlikely(!var11
)) {
1739 var_class_name
= type_standard__Int
.name
;
1740 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
1741 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 534);
1744 var14
= var_i
< var_l
;
1747 RET_LABEL10
:(void)0;
1752 var15
= ((val
*(*)(val
* self
, long p0
))((((long)self
&3)?class_info
[((long)self
&3)]:self
->class)->vft
[COLOR_standard__abstract_collection__SequenceRead___91d_93d
]))(self
, var_i
); /* [] on <self:SequenceRead[nullable Object]>*/
1755 var16
= ((val
*(*)(val
* self
, long p0
))((((long)var_o
&3)?class_info
[((long)var_o
&3)]:var_o
->class)->vft
[COLOR_standard__abstract_collection__SequenceRead___91d_93d
]))(var_o
, var_i
); /* [] on <var_o:nullable Object(SequenceRead[nullable Object])>*/
1757 if (var15
== NULL
) {
1758 var17
= (var16
!= NULL
);
1760 var18
= ((short int(*)(val
* self
, val
* p0
))((((long)var15
&3)?class_info
[((long)var15
&3)]:var15
->class)->vft
[COLOR_standard__kernel__Object___33d_61d
]))(var15
, var16
); /* != on <var15:nullable Object>*/
1769 { /* Inline kernel#Int#+ (var_i,1l) on <var_i:Int> */
1770 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
1771 /* <1l:Int> isa OTHER */
1772 var21
= 1; /* easy <1l:Int> isa OTHER*/
1773 if (unlikely(!var21
)) {
1774 var_class_name24
= type_standard__Int
.name
;
1775 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name24
);
1776 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 537);
1782 RET_LABEL20
:(void)0;
1790 BREAK_label
: (void)0;
1796 /* method abstract_collection#SequenceRead#hash for (self: SequenceRead[nullable Object]): Int */
1797 long standard___standard__SequenceRead___standard__kernel__Object__hash(val
* self
) {
1798 long var
/* : Int */;
1799 long var1
/* : Int */;
1800 long var2
/* : Int */;
1801 short int var4
/* : Bool */;
1804 const char* var_class_name
;
1805 long var5
/* : Int */;
1806 long var_res
/* var res: Int */;
1807 val
* var_
/* var : SequenceRead[nullable Object] */;
1808 val
* var6
/* : Iterator[nullable Object] */;
1809 val
* var_7
/* var : IndexedIterator[nullable Object] */;
1810 short int var8
/* : Bool */;
1811 val
* var9
/* : nullable Object */;
1812 val
* var_e
/* var e: nullable Object */;
1813 long var10
/* : Int */;
1814 short int var12
/* : Bool */;
1817 const char* var_class_name15
;
1818 long var16
/* : Int */;
1819 long var17
/* : Int */;
1820 short int var19
/* : Bool */;
1823 const char* var_class_name22
;
1824 long var23
/* : Int */;
1825 short int var24
/* : Bool */;
1826 short int var25
/* : Bool */;
1827 long var26
/* : Int */;
1828 long var27
/* : Int */;
1829 short int var29
/* : Bool */;
1832 const char* var_class_name32
;
1833 long var33
/* : Int */;
1835 var1
= ((long(*)(val
* self
))((((long)self
&3)?class_info
[((long)self
&3)]:self
->class)->vft
[COLOR_standard__abstract_collection__Collection__length
]))(self
); /* length on <self:SequenceRead[nullable Object]>*/
1838 { /* Inline kernel#Int#+ (17l,var1) on <17l:Int> */
1839 /* Covariant cast for argument 0 (i) <var1:Int> isa OTHER */
1840 /* <var1:Int> isa OTHER */
1841 var4
= 1; /* easy <var1:Int> isa OTHER*/
1842 if (unlikely(!var4
)) {
1843 var_class_name
= type_standard__Int
.name
;
1844 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
1845 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 537);
1857 var6
= ((val
*(*)(val
* self
))((((long)var_
&3)?class_info
[((long)var_
&3)]:var_
->class)->vft
[COLOR_standard__abstract_collection__Collection__iterator
]))(var_
); /* iterator on <var_:SequenceRead[nullable Object]>*/
1862 var8
= ((short int(*)(val
* self
))((((long)var_7
&3)?class_info
[((long)var_7
&3)]:var_7
->class)->vft
[COLOR_standard__abstract_collection__Iterator__is_ok
]))(var_7
); /* is_ok on <var_7:IndexedIterator[nullable Object]>*/
1866 var9
= ((val
*(*)(val
* self
))((((long)var_7
&3)?class_info
[((long)var_7
&3)]:var_7
->class)->vft
[COLOR_standard__abstract_collection__Iterator__item
]))(var_7
); /* item on <var_7:IndexedIterator[nullable Object]>*/
1870 { /* Inline kernel#Int#* (var_res,3l) on <var_res:Int> */
1871 /* Covariant cast for argument 0 (i) <3l:Int> isa OTHER */
1872 /* <3l:Int> isa OTHER */
1873 var12
= 1; /* easy <3l:Int> isa OTHER*/
1874 if (unlikely(!var12
)) {
1875 var_class_name15
= type_standard__Int
.name
;
1876 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name15
);
1877 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 541);
1880 var16
= var_res
* 3l;
1883 RET_LABEL11
:(void)0;
1887 { /* Inline kernel#Int#/ (var10,2l) on <var10:Int> */
1888 /* Covariant cast for argument 0 (i) <2l:Int> isa OTHER */
1889 /* <2l:Int> isa OTHER */
1890 var19
= 1; /* easy <2l:Int> isa OTHER*/
1891 if (unlikely(!var19
)) {
1892 var_class_name22
= type_standard__Int
.name
;
1893 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name22
);
1894 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 542);
1900 RET_LABEL18
:(void)0;
1904 if (var_e
== NULL
) {
1905 var24
= 0; /* is null */
1907 var24
= 1; /* arg is null and recv is not */
1910 var25
= ((short int(*)(val
* self
, val
* p0
))((((long)var_e
&3)?class_info
[((long)var_e
&3)]:var_e
->class)->vft
[COLOR_standard__kernel__Object___33d_61d
]))(var_e
, ((val
*)NULL
)); /* != on <var_e:nullable Object>*/
1915 var26
= ((long(*)(val
* self
))((((long)var_e
&3)?class_info
[((long)var_e
&3)]:var_e
->class)->vft
[COLOR_standard__kernel__Object__hash
]))(var_e
); /* hash on <var_e:nullable Object(Object)>*/
1918 { /* Inline kernel#Int#+ (var_res,var26) on <var_res:Int> */
1919 /* Covariant cast for argument 0 (i) <var26:Int> isa OTHER */
1920 /* <var26:Int> isa OTHER */
1921 var29
= 1; /* easy <var26:Int> isa OTHER*/
1922 if (unlikely(!var29
)) {
1923 var_class_name32
= type_standard__Int
.name
;
1924 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name32
);
1925 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 537);
1928 var33
= var_res
+ var26
;
1931 RET_LABEL28
:(void)0;
1938 ((void(*)(val
* self
))((((long)var_7
&3)?class_info
[((long)var_7
&3)]:var_7
->class)->vft
[COLOR_standard__abstract_collection__Iterator__next
]))(var_7
); /* next on <var_7:IndexedIterator[nullable Object]>*/
1944 BREAK_label
: (void)0;
1946 ((void(*)(val
* self
))((((long)var_7
&3)?class_info
[((long)var_7
&3)]:var_7
->class)->vft
[COLOR_standard__abstract_collection__Iterator__finish
]))(var_7
); /* finish on <var_7:IndexedIterator[nullable Object]>*/
1953 /* method abstract_collection#SequenceRead#iterator_from for (self: SequenceRead[nullable Object], Int): IndexedIterator[nullable Object] */
1954 val
* standard___standard__SequenceRead___iterator_from(val
* self
, long p0
) {
1955 val
* var
/* : IndexedIterator[nullable Object] */;
1956 long var_pos
/* var pos: Int */;
1957 val
* var1
/* : Iterator[nullable Object] */;
1958 val
* var_res
/* var res: IndexedIterator[nullable Object] */;
1959 short int var2
/* : Bool */;
1960 short int var3
/* : Bool */;
1961 short int var5
/* : Bool */;
1964 const char* var_class_name
;
1965 short int var6
/* : Bool */;
1966 short int var_
/* var : Bool */;
1967 short int var7
/* : Bool */;
1968 long var8
/* : Int */;
1969 short int var10
/* : Bool */;
1972 const char* var_class_name13
;
1973 long var14
/* : Int */;
1976 var1
= ((val
*(*)(val
* self
))((((long)self
&3)?class_info
[((long)self
&3)]:self
->class)->vft
[COLOR_standard__abstract_collection__Collection__iterator
]))(self
); /* iterator on <self:SequenceRead[nullable Object]>*/
1981 { /* Inline kernel#Int#> (var_pos,0l) on <var_pos:Int> */
1982 /* Covariant cast for argument 0 (i) <0l:Int> isa OTHER */
1983 /* <0l:Int> isa OTHER */
1984 var5
= 1; /* easy <0l:Int> isa OTHER*/
1985 if (unlikely(!var5
)) {
1986 var_class_name
= type_standard__Int
.name
;
1987 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
1988 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 536);
1991 var6
= var_pos
> 0l;
2000 var7
= ((short int(*)(val
* self
))((((long)var_res
&3)?class_info
[((long)var_res
&3)]:var_res
->class)->vft
[COLOR_standard__abstract_collection__Iterator__is_ok
]))(var_res
); /* is_ok on <var_res:IndexedIterator[nullable Object]>*/
2008 ((void(*)(val
* self
))((((long)var_res
&3)?class_info
[((long)var_res
&3)]:var_res
->class)->vft
[COLOR_standard__abstract_collection__Iterator__next
]))(var_res
); /* next on <var_res:IndexedIterator[nullable Object]>*/
2011 { /* Inline kernel#Int#- (var_pos,1l) on <var_pos:Int> */
2012 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
2013 /* <1l:Int> isa OTHER */
2014 var10
= 1; /* easy <1l:Int> isa OTHER*/
2015 if (unlikely(!var10
)) {
2016 var_class_name13
= type_standard__Int
.name
;
2017 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name13
);
2018 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 540);
2021 var14
= var_pos
- 1l;
2032 BREAK_label
: (void)0;
2038 /* method abstract_collection#Sequence#first= for (self: Sequence[nullable Object], nullable Object) */
2039 void standard___standard__Sequence___first_61d(val
* self
, val
* p0
) {
2040 short int var
/* : Bool */;
2043 const struct type
* type_struct
;
2044 short int is_nullable
;
2045 const char* var_class_name
;
2046 val
* var_item
/* var item: nullable Object */;
2047 /* Covariant cast for argument 0 (item) <p0:nullable Object> isa E */
2048 /* <p0:nullable Object> isa E */
2049 type_struct
= (((long)self
&3)?type_info
[((long)self
&3)]:self
->type
)->resolution_table
->types
[COLOR_standard__Sequence___35dE
];
2050 cltype
= type_struct
->color
;
2051 idtype
= type_struct
->id
;
2052 is_nullable
= type_struct
->is_nullable
;
2056 if(cltype
>= (((long)p0
&3)?type_info
[((long)p0
&3)]:p0
->type
)->table_size
) {
2059 var
= (((long)p0
&3)?type_info
[((long)p0
&3)]:p0
->type
)->type_table
[cltype
] == idtype
;
2062 if (unlikely(!var
)) {
2063 var_class_name
= p0
== NULL ?
"null" : (((long)p0
&3)?type_info
[((long)p0
&3)]:p0
->type
)->name
;
2064 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "E", var_class_name
);
2065 PRINT_ERROR(" (%s:%d)\n", FILE_standard__abstract_collection
, 918);
2070 ((void(*)(val
* self
, long p0
, val
* p1
))((((long)self
&3)?class_info
[((long)self
&3)]:self
->class)->vft
[COLOR_standard__abstract_collection__Sequence___91d_93d_61d
]))(self
, 0l, var_item
); /* []= on <self:Sequence[nullable Object]>*/
2074 /* method abstract_collection#Sequence#add for (self: Sequence[nullable Object], nullable Object) */
2075 void standard___standard__Sequence___SimpleCollection__add(val
* self
, val
* p0
) {
2076 short int var
/* : Bool */;
2079 const struct type
* type_struct
;
2080 short int is_nullable
;
2081 const char* var_class_name
;
2082 val
* var_e
/* var e: nullable Object */;
2083 /* Covariant cast for argument 0 (e) <p0:nullable Object> isa E */
2084 /* <p0:nullable Object> isa E */
2085 type_struct
= (((long)self
&3)?type_info
[((long)self
&3)]:self
->type
)->resolution_table
->types
[COLOR_standard__Sequence___35dE
];
2086 cltype
= type_struct
->color
;
2087 idtype
= type_struct
->id
;
2088 is_nullable
= type_struct
->is_nullable
;
2092 if(cltype
>= (((long)p0
&3)?type_info
[((long)p0
&3)]:p0
->type
)->table_size
) {
2095 var
= (((long)p0
&3)?type_info
[((long)p0
&3)]:p0
->type
)->type_table
[cltype
] == idtype
;
2098 if (unlikely(!var
)) {
2099 var_class_name
= p0
== NULL ?
"null" : (((long)p0
&3)?type_info
[((long)p0
&3)]:p0
->type
)->name
;
2100 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "E", var_class_name
);
2101 PRINT_ERROR(" (%s:%d)\n", FILE_standard__abstract_collection
, 949);
2106 ((void(*)(val
* self
, val
* p0
))((((long)self
&3)?class_info
[((long)self
&3)]:self
->class)->vft
[COLOR_standard__abstract_collection__Sequence__push
]))(self
, var_e
); /* push on <self:Sequence[nullable Object]>*/
2110 /* method abstract_collection#Sequence#append for (self: Sequence[nullable Object], Collection[nullable Object]) */
2111 void standard___standard__Sequence___append(val
* self
, val
* p0
) {
2112 short int var
/* : Bool */;
2115 const struct type
* type_struct
;
2116 const char* var_class_name
;
2117 val
* var_coll
/* var coll: Collection[nullable Object] */;
2118 /* Covariant cast for argument 0 (coll) <p0:Collection[nullable Object]> isa Collection[E] */
2119 /* <p0:Collection[nullable Object]> isa Collection[E] */
2120 type_struct
= (((long)self
&3)?type_info
[((long)self
&3)]:self
->type
)->resolution_table
->types
[COLOR_standard__Collection__standard__Sequence___35dE
];
2121 cltype
= type_struct
->color
;
2122 idtype
= type_struct
->id
;
2123 if(cltype
>= (((long)p0
&3)?type_info
[((long)p0
&3)]:p0
->type
)->table_size
) {
2126 var
= (((long)p0
&3)?type_info
[((long)p0
&3)]:p0
->type
)->type_table
[cltype
] == idtype
;
2128 if (unlikely(!var
)) {
2129 var_class_name
= p0
== NULL ?
"null" : (((long)p0
&3)?type_info
[((long)p0
&3)]:p0
->type
)->name
;
2130 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "Collection[E]", var_class_name
);
2131 PRINT_ERROR(" (%s:%d)\n", FILE_standard__abstract_collection
, 960);
2136 ((void(*)(val
* self
, val
* p0
))((((long)self
&3)?class_info
[((long)self
&3)]:self
->class)->vft
[COLOR_standard__abstract_collection__SimpleCollection__add_all
]))(self
, var_coll
); /* add_all on <self:Sequence[nullable Object]>*/
2140 /* method abstract_collection#Sequence#pop for (self: Sequence[nullable Object]): nullable Object */
2141 val
* standard___standard__Sequence___pop(val
* self
) {
2142 val
* var
/* : nullable Object */;
2143 const char* var_class_name
;
2144 var_class_name
= self
== NULL ?
"null" : (((long)self
&3)?type_info
[((long)self
&3)]:self
->type
)->name
;
2145 PRINT_ERROR("Runtime error: Abstract method `%s` called on `%s`", "pop", var_class_name
);
2146 PRINT_ERROR(" (%s:%d)\n", FILE_standard__abstract_collection
, 969);
2151 /* method abstract_collection#Sequence#unshift for (self: Sequence[nullable Object], nullable Object) */
2152 void standard___standard__Sequence___unshift(val
* self
, val
* p0
) {
2153 const char* var_class_name
;
2154 var_class_name
= self
== NULL ?
"null" : (((long)self
&3)?type_info
[((long)self
&3)]:self
->type
)->name
;
2155 PRINT_ERROR("Runtime error: Abstract method `%s` called on `%s`", "unshift", var_class_name
);
2156 PRINT_ERROR(" (%s:%d)\n", FILE_standard__abstract_collection
, 979);
2160 /* method abstract_collection#Sequence#prepend for (self: Sequence[nullable Object], Collection[nullable Object]) */
2161 void standard___standard__Sequence___prepend(val
* self
, val
* p0
) {
2162 short int var
/* : Bool */;
2165 const struct type
* type_struct
;
2166 const char* var_class_name
;
2167 val
* var_coll
/* var coll: Collection[nullable Object] */;
2168 /* Covariant cast for argument 0 (coll) <p0:Collection[nullable Object]> isa Collection[E] */
2169 /* <p0:Collection[nullable Object]> isa Collection[E] */
2170 type_struct
= (((long)self
&3)?type_info
[((long)self
&3)]:self
->type
)->resolution_table
->types
[COLOR_standard__Collection__standard__Sequence___35dE
];
2171 cltype
= type_struct
->color
;
2172 idtype
= type_struct
->id
;
2173 if(cltype
>= (((long)p0
&3)?type_info
[((long)p0
&3)]:p0
->type
)->table_size
) {
2176 var
= (((long)p0
&3)?type_info
[((long)p0
&3)]:p0
->type
)->type_table
[cltype
] == idtype
;
2178 if (unlikely(!var
)) {
2179 var_class_name
= p0
== NULL ?
"null" : (((long)p0
&3)?type_info
[((long)p0
&3)]:p0
->type
)->name
;
2180 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "Collection[E]", var_class_name
);
2181 PRINT_ERROR(" (%s:%d)\n", FILE_standard__abstract_collection
, 987);
2186 ((void(*)(val
* self
, val
* p0
, long p1
))((((long)self
&3)?class_info
[((long)self
&3)]:self
->class)->vft
[COLOR_standard__abstract_collection__Sequence__insert_all
]))(self
, var_coll
, 0l); /* insert_all on <self:Sequence[nullable Object]>*/
2190 /* method abstract_collection#Sequence#shift for (self: Sequence[nullable Object]): nullable Object */
2191 val
* standard___standard__Sequence___shift(val
* self
) {
2192 val
* var
/* : nullable Object */;
2193 const char* var_class_name
;
2194 var_class_name
= self
== NULL ?
"null" : (((long)self
&3)?type_info
[((long)self
&3)]:self
->type
)->name
;
2195 PRINT_ERROR("Runtime error: Abstract method `%s` called on `%s`", "shift", var_class_name
);
2196 PRINT_ERROR(" (%s:%d)\n", FILE_standard__abstract_collection
, 996);
2201 /* method abstract_collection#Sequence#insert for (self: Sequence[nullable Object], nullable Object, Int) */
2202 void standard___standard__Sequence___insert(val
* self
, val
* p0
, long p1
) {
2203 const char* var_class_name
;
2204 var_class_name
= self
== NULL ?
"null" : (((long)self
&3)?type_info
[((long)self
&3)]:self
->type
)->name
;
2205 PRINT_ERROR("Runtime error: Abstract method `%s` called on `%s`", "insert", var_class_name
);
2206 PRINT_ERROR(" (%s:%d)\n", FILE_standard__abstract_collection
, 1022);
2210 /* method abstract_collection#Sequence#insert_all for (self: Sequence[nullable Object], Collection[nullable Object], Int) */
2211 void standard___standard__Sequence___insert_all(val
* self
, val
* p0
, long p1
) {
2212 short int var
/* : Bool */;
2215 const struct type
* type_struct
;
2216 const char* var_class_name
;
2217 val
* var_coll
/* var coll: Collection[nullable Object] */;
2218 long var_index
/* var index: Int */;
2219 short int var1
/* : Bool */;
2220 short int var2
/* : Bool */;
2221 short int var4
/* : Bool */;
2224 const char* var_class_name7
;
2225 short int var8
/* : Bool */;
2226 short int var_
/* var : Bool */;
2227 long var9
/* : Int */;
2228 short int var10
/* : Bool */;
2229 short int var12
/* : Bool */;
2232 const char* var_class_name15
;
2233 short int var16
/* : Bool */;
2234 long var17
/* : Int */;
2235 short int var18
/* : Bool */;
2236 short int var20
/* : Bool */;
2237 val
* var_21
/* var : Collection[nullable Object] */;
2238 val
* var22
/* : Iterator[nullable Object] */;
2239 val
* var_23
/* var : Iterator[nullable Object] */;
2240 short int var24
/* : Bool */;
2241 val
* var25
/* : nullable Object */;
2242 val
* var_c
/* var c: nullable Object */;
2243 long var26
/* : Int */;
2244 short int var28
/* : Bool */;
2247 const char* var_class_name31
;
2248 long var32
/* : Int */;
2249 /* Covariant cast for argument 0 (coll) <p0:Collection[nullable Object]> isa Collection[E] */
2250 /* <p0:Collection[nullable Object]> isa Collection[E] */
2251 type_struct
= (((long)self
&3)?type_info
[((long)self
&3)]:self
->type
)->resolution_table
->types
[COLOR_standard__Collection__standard__Sequence___35dE
];
2252 cltype
= type_struct
->color
;
2253 idtype
= type_struct
->id
;
2254 if(cltype
>= (((long)p0
&3)?type_info
[((long)p0
&3)]:p0
->type
)->table_size
) {
2257 var
= (((long)p0
&3)?type_info
[((long)p0
&3)]:p0
->type
)->type_table
[cltype
] == idtype
;
2259 if (unlikely(!var
)) {
2260 var_class_name
= p0
== NULL ?
"null" : (((long)p0
&3)?type_info
[((long)p0
&3)]:p0
->type
)->name
;
2261 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "Collection[E]", var_class_name
);
2262 PRINT_ERROR(" (%s:%d)\n", FILE_standard__abstract_collection
, 1032);
2268 { /* Inline kernel#Int#>= (var_index,0l) on <var_index:Int> */
2269 /* Covariant cast for argument 0 (i) <0l:Int> isa OTHER */
2270 /* <0l:Int> isa OTHER */
2271 var4
= 1; /* easy <0l:Int> isa OTHER*/
2272 if (unlikely(!var4
)) {
2273 var_class_name7
= type_standard__Int
.name
;
2274 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name7
);
2275 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 535);
2278 var8
= var_index
>= 0l;
2287 var9
= ((long(*)(val
* self
))((((long)self
&3)?class_info
[((long)self
&3)]:self
->class)->vft
[COLOR_standard__abstract_collection__Collection__length
]))(self
); /* length on <self:Sequence[nullable Object]>*/
2290 { /* Inline kernel#Int#< (var_index,var9) on <var_index:Int> */
2291 /* Covariant cast for argument 0 (i) <var9:Int> isa OTHER */
2292 /* <var9:Int> isa OTHER */
2293 var12
= 1; /* easy <var9:Int> isa OTHER*/
2294 if (unlikely(!var12
)) {
2295 var_class_name15
= type_standard__Int
.name
;
2296 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name15
);
2297 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 534);
2300 var16
= var_index
< var9
;
2303 RET_LABEL11
:(void)0;
2310 if (unlikely(!var1
)) {
2311 PRINT_ERROR("Runtime error: %s", "Assert failed");
2312 PRINT_ERROR(" (%s:%d)\n", FILE_standard__abstract_collection
, 1042);
2316 var17
= ((long(*)(val
* self
))((((long)self
&3)?class_info
[((long)self
&3)]:self
->class)->vft
[COLOR_standard__abstract_collection__Collection__length
]))(self
); /* length on <self:Sequence[nullable Object]>*/
2319 { /* Inline kernel#Int#== (var_index,var17) on <var_index:Int> */
2320 var20
= var_index
== var17
;
2323 RET_LABEL19
:(void)0;
2328 ((void(*)(val
* self
, val
* p0
))((((long)self
&3)?class_info
[((long)self
&3)]:self
->class)->vft
[COLOR_standard__abstract_collection__SimpleCollection__add_all
]))(self
, var_coll
); /* add_all on <self:Sequence[nullable Object]>*/
2334 var22
= ((val
*(*)(val
* self
))((((long)var_21
&3)?class_info
[((long)var_21
&3)]:var_21
->class)->vft
[COLOR_standard__abstract_collection__Collection__iterator
]))(var_21
); /* iterator on <var_21:Collection[nullable Object]>*/
2339 var24
= ((short int(*)(val
* self
))((((long)var_23
&3)?class_info
[((long)var_23
&3)]:var_23
->class)->vft
[COLOR_standard__abstract_collection__Iterator__is_ok
]))(var_23
); /* is_ok on <var_23:Iterator[nullable Object]>*/
2343 var25
= ((val
*(*)(val
* self
))((((long)var_23
&3)?class_info
[((long)var_23
&3)]:var_23
->class)->vft
[COLOR_standard__abstract_collection__Iterator__item
]))(var_23
); /* item on <var_23:Iterator[nullable Object]>*/
2347 ((void(*)(val
* self
, val
* p0
, long p1
))((((long)self
&3)?class_info
[((long)self
&3)]:self
->class)->vft
[COLOR_standard__abstract_collection__Sequence__insert
]))(self
, var_c
, var_index
); /* insert on <self:Sequence[nullable Object]>*/
2350 { /* Inline kernel#Int#+ (var_index,1l) on <var_index:Int> */
2351 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
2352 /* <1l:Int> isa OTHER */
2353 var28
= 1; /* easy <1l:Int> isa OTHER*/
2354 if (unlikely(!var28
)) {
2355 var_class_name31
= type_standard__Int
.name
;
2356 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name31
);
2357 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 537);
2360 var32
= var_index
+ 1l;
2363 RET_LABEL27
:(void)0;
2368 ((void(*)(val
* self
))((((long)var_23
&3)?class_info
[((long)var_23
&3)]:var_23
->class)->vft
[COLOR_standard__abstract_collection__Iterator__next
]))(var_23
); /* next on <var_23:Iterator[nullable Object]>*/
2374 BREAK_label
: (void)0;
2376 ((void(*)(val
* self
))((((long)var_23
&3)?class_info
[((long)var_23
&3)]:var_23
->class)->vft
[COLOR_standard__abstract_collection__Iterator__finish
]))(var_23
); /* finish on <var_23:Iterator[nullable Object]>*/
2380 /* method abstract_collection#Sequence#remove_at for (self: Sequence[nullable Object], Int) */
2381 void standard___standard__Sequence___remove_at(val
* self
, long p0
) {
2382 const char* var_class_name
;
2383 var_class_name
= self
== NULL ?
"null" : (((long)self
&3)?type_info
[((long)self
&3)]:self
->type
)->name
;
2384 PRINT_ERROR("Runtime error: Abstract method `%s` called on `%s`", "remove_at", var_class_name
);
2385 PRINT_ERROR(" (%s:%d)\n", FILE_standard__abstract_collection
, 1052);
2389 /* method abstract_collection#CoupleMap#iterator for (self: CoupleMap[nullable Object, nullable Object]): MapIterator[nullable Object, nullable Object] */
2390 val
* standard___standard__CoupleMap___MapRead__iterator(val
* self
) {
2391 val
* var
/* : MapIterator[nullable Object, nullable Object] */;
2392 val
* var1
/* : CoupleMapIterator[nullable Object, nullable Object] */;
2393 val
* var2
/* : Iterator[Couple[nullable Object, nullable Object]] */;
2394 var1
= NEW_standard__abstract_collection__CoupleMapIterator((((long)self
&3)?type_info
[((long)self
&3)]:self
->type
)->resolution_table
->types
[COLOR_standard__abstract_collection__CoupleMapIterator__standard__CoupleMap___35dK__standard__CoupleMap___35dV
]);
2396 var2
= standard___standard__ArrayMap___standard__abstract_collection__CoupleMap__couple_iterator(self
);
2399 ((void(*)(val
* self
, val
* p0
))(var1
->class->vft
[COLOR_standard__abstract_collection__CoupleMapIterator__iter_61d
]))(var1
, var2
); /* iter= on <var1:CoupleMapIterator[nullable Object, nullable Object]>*/
2402 ((void(*)(val
* self
))(var1
->class->vft
[COLOR_standard__kernel__Object__init
]))(var1
); /* init on <var1:CoupleMapIterator[nullable Object, nullable Object]>*/
2409 /* method abstract_collection#CoupleMap#has_key for (self: CoupleMap[nullable Object, nullable Object], nullable Object): Bool */
2410 short int standard___standard__CoupleMap___MapRead__has_key(val
* self
, val
* p0
) {
2411 short int var
/* : Bool */;
2412 val
* var_key
/* var key: nullable Object */;
2413 val
* var1
/* : nullable Couple[nullable Object, nullable Object] */;
2414 short int var2
/* : Bool */;
2415 short int var3
/* : Bool */;
2416 val
* var_other
/* var other: nullable Object */;
2417 short int var5
/* : Bool */;
2418 short int var6
/* : Bool */;
2421 var1
= standard___standard__ArrayMap___standard__abstract_collection__CoupleMap__couple_at(self
, var_key
);
2424 var2
= 0; /* is null */
2426 var2
= 1; /* arg is null and recv is not */
2429 { /* Inline kernel#Object#!= (var1,((val*)NULL)) on <var1:nullable Couple[nullable Object, nullable Object]> */
2430 var_other
= ((val
*)NULL
);
2432 var5
= ((short int(*)(val
* self
, val
* p0
))(var1
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var1
, var_other
); /* == on <var1:nullable Couple[nullable Object, nullable Object](Couple[nullable Object, nullable Object])>*/
2446 /* method abstract_collection#CoupleMapIterator#item for (self: CoupleMapIterator[nullable Object, nullable Object]): nullable Object */
2447 val
* standard__abstract_collection___standard__abstract_collection__CoupleMapIterator___MapIterator__item(val
* self
) {
2448 val
* var
/* : nullable Object */;
2449 val
* var1
/* : Iterator[Couple[nullable Object, nullable Object]] */;
2450 val
* var2
/* : nullable Object */;
2451 val
* var3
/* : nullable Object */;
2452 val
* var5
/* : nullable Object */;
2453 var1
= self
->attrs
[COLOR_standard__abstract_collection__CoupleMapIterator___iter
].val
; /* _iter on <self:CoupleMapIterator[nullable Object, nullable Object]> */
2454 if (unlikely(var1
== NULL
)) {
2455 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _iter");
2456 PRINT_ERROR(" (%s:%d)\n", FILE_standard__abstract_collection
, 1102);
2460 var2
= ((val
*(*)(val
* self
))((((long)var1
&3)?class_info
[((long)var1
&3)]:var1
->class)->vft
[COLOR_standard__abstract_collection__Iterator__item
]))(var1
); /* item on <var1:Iterator[Couple[nullable Object, nullable Object]]>*/
2463 { /* Inline abstract_collection#Couple#second (var2) on <var2:nullable Object(Couple[nullable Object, nullable Object])> */
2464 var5
= var2
->attrs
[COLOR_standard__abstract_collection__Couple___second
].val
; /* _second on <var2:nullable Object(Couple[nullable Object, nullable Object])> */
2474 /* method abstract_collection#CoupleMapIterator#key for (self: CoupleMapIterator[nullable Object, nullable Object]): nullable Object */
2475 val
* standard__abstract_collection___standard__abstract_collection__CoupleMapIterator___MapIterator__key(val
* self
) {
2476 val
* var
/* : nullable Object */;
2477 val
* var1
/* : Iterator[Couple[nullable Object, nullable Object]] */;
2478 val
* var2
/* : nullable Object */;
2479 val
* var3
/* : nullable Object */;
2480 val
* var5
/* : nullable Object */;
2481 var1
= self
->attrs
[COLOR_standard__abstract_collection__CoupleMapIterator___iter
].val
; /* _iter on <self:CoupleMapIterator[nullable Object, nullable Object]> */
2482 if (unlikely(var1
== NULL
)) {
2483 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _iter");
2484 PRINT_ERROR(" (%s:%d)\n", FILE_standard__abstract_collection
, 1106);
2488 var2
= ((val
*(*)(val
* self
))((((long)var1
&3)?class_info
[((long)var1
&3)]:var1
->class)->vft
[COLOR_standard__abstract_collection__Iterator__item
]))(var1
); /* item on <var1:Iterator[Couple[nullable Object, nullable Object]]>*/
2491 { /* Inline abstract_collection#Couple#first (var2) on <var2:nullable Object(Couple[nullable Object, nullable Object])> */
2492 var5
= var2
->attrs
[COLOR_standard__abstract_collection__Couple___first
].val
; /* _first on <var2:nullable Object(Couple[nullable Object, nullable Object])> */
2502 /* method abstract_collection#CoupleMapIterator#is_ok for (self: CoupleMapIterator[nullable Object, nullable Object]): Bool */
2503 short int standard__abstract_collection___standard__abstract_collection__CoupleMapIterator___MapIterator__is_ok(val
* self
) {
2504 short int var
/* : Bool */;
2505 val
* var1
/* : Iterator[Couple[nullable Object, nullable Object]] */;
2506 short int var2
/* : Bool */;
2507 var1
= self
->attrs
[COLOR_standard__abstract_collection__CoupleMapIterator___iter
].val
; /* _iter on <self:CoupleMapIterator[nullable Object, nullable Object]> */
2508 if (unlikely(var1
== NULL
)) {
2509 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _iter");
2510 PRINT_ERROR(" (%s:%d)\n", FILE_standard__abstract_collection
, 1108);
2514 var2
= ((short int(*)(val
* self
))((((long)var1
&3)?class_info
[((long)var1
&3)]:var1
->class)->vft
[COLOR_standard__abstract_collection__Iterator__is_ok
]))(var1
); /* is_ok on <var1:Iterator[Couple[nullable Object, nullable Object]]>*/
2521 /* method abstract_collection#CoupleMapIterator#next for (self: CoupleMapIterator[nullable Object, nullable Object]) */
2522 void standard__abstract_collection___standard__abstract_collection__CoupleMapIterator___MapIterator__next(val
* self
) {
2523 val
* var
/* : Iterator[Couple[nullable Object, nullable Object]] */;
2524 var
= self
->attrs
[COLOR_standard__abstract_collection__CoupleMapIterator___iter
].val
; /* _iter on <self:CoupleMapIterator[nullable Object, nullable Object]> */
2525 if (unlikely(var
== NULL
)) {
2526 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _iter");
2527 PRINT_ERROR(" (%s:%d)\n", FILE_standard__abstract_collection
, 1112);
2531 ((void(*)(val
* self
))((((long)var
&3)?class_info
[((long)var
&3)]:var
->class)->vft
[COLOR_standard__abstract_collection__Iterator__next
]))(var
); /* next on <var:Iterator[Couple[nullable Object, nullable Object]]>*/
2535 /* method abstract_collection#CoupleMapIterator#iter= for (self: CoupleMapIterator[nullable Object, nullable Object], Iterator[Couple[nullable Object, nullable Object]]) */
2536 void standard__abstract_collection___standard__abstract_collection__CoupleMapIterator___iter_61d(val
* self
, val
* p0
) {
2537 short int var
/* : Bool */;
2540 const struct type
* type_struct
;
2541 const char* var_class_name
;
2542 /* Covariant cast for argument 0 (iter) <p0:Iterator[Couple[nullable Object, nullable Object]]> isa Iterator[Couple[K, V]] */
2543 /* <p0:Iterator[Couple[nullable Object, nullable Object]]> isa Iterator[Couple[K, V]] */
2544 type_struct
= self
->type
->resolution_table
->types
[COLOR_standard__Iterator__standard__Couple__standard__abstract_collection__CoupleMapIterator___35dK__standard__abstract_collection__CoupleMapIterator___35dV
];
2545 cltype
= type_struct
->color
;
2546 idtype
= type_struct
->id
;
2547 if(cltype
>= (((long)p0
&3)?type_info
[((long)p0
&3)]:p0
->type
)->table_size
) {
2550 var
= (((long)p0
&3)?type_info
[((long)p0
&3)]:p0
->type
)->type_table
[cltype
] == idtype
;
2552 if (unlikely(!var
)) {
2553 var_class_name
= p0
== NULL ?
"null" : (((long)p0
&3)?type_info
[((long)p0
&3)]:p0
->type
)->name
;
2554 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "Iterator[Couple[K, V]]", var_class_name
);
2555 PRINT_ERROR(" (%s:%d)\n", FILE_standard__abstract_collection
, 1115);
2558 self
->attrs
[COLOR_standard__abstract_collection__CoupleMapIterator___iter
].val
= p0
; /* _iter on <self:CoupleMapIterator[nullable Object, nullable Object]> */
2561 /* method abstract_collection#CoupleMapIterator#init for (self: CoupleMapIterator[nullable Object, nullable Object]) */
2562 void standard__abstract_collection___standard__abstract_collection__CoupleMapIterator___standard__kernel__Object__init(val
* self
) {
2564 ((void(*)(val
* self
))(self
->class->vft
[COLOR_standard__abstract_collection___standard__abstract_collection__CoupleMapIterator___standard__kernel__Object__init
]))(self
); /* init on <self:CoupleMapIterator[nullable Object, nullable Object]>*/
2568 /* method abstract_collection#Couple#first for (self: Couple[nullable Object, nullable Object]): nullable Object */
2569 val
* standard___standard__Couple___first(val
* self
) {
2570 val
* var
/* : nullable Object */;
2571 val
* var1
/* : nullable Object */;
2572 var1
= self
->attrs
[COLOR_standard__abstract_collection__Couple___first
].val
; /* _first on <self:Couple[nullable Object, nullable Object]> */
2577 /* method abstract_collection#Couple#first= for (self: Couple[nullable Object, nullable Object], nullable Object) */
2578 void standard___standard__Couple___first_61d(val
* self
, val
* p0
) {
2579 short int var
/* : Bool */;
2582 const struct type
* type_struct
;
2583 short int is_nullable
;
2584 const char* var_class_name
;
2585 /* Covariant cast for argument 0 (first) <p0:nullable Object> isa F */
2586 /* <p0:nullable Object> isa F */
2587 type_struct
= self
->type
->resolution_table
->types
[COLOR_standard__Couple___35dF
];
2588 cltype
= type_struct
->color
;
2589 idtype
= type_struct
->id
;
2590 is_nullable
= type_struct
->is_nullable
;
2594 if(cltype
>= (((long)p0
&3)?type_info
[((long)p0
&3)]:p0
->type
)->table_size
) {
2597 var
= (((long)p0
&3)?type_info
[((long)p0
&3)]:p0
->type
)->type_table
[cltype
] == idtype
;
2600 if (unlikely(!var
)) {
2601 var_class_name
= p0
== NULL ?
"null" : (((long)p0
&3)?type_info
[((long)p0
&3)]:p0
->type
)->name
;
2602 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "F", var_class_name
);
2603 PRINT_ERROR(" (%s:%d)\n", FILE_standard__abstract_collection
, 1123);
2606 self
->attrs
[COLOR_standard__abstract_collection__Couple___first
].val
= p0
; /* _first on <self:Couple[nullable Object, nullable Object]> */
2609 /* method abstract_collection#Couple#second for (self: Couple[nullable Object, nullable Object]): nullable Object */
2610 val
* standard___standard__Couple___second(val
* self
) {
2611 val
* var
/* : nullable Object */;
2612 val
* var1
/* : nullable Object */;
2613 var1
= self
->attrs
[COLOR_standard__abstract_collection__Couple___second
].val
; /* _second on <self:Couple[nullable Object, nullable Object]> */
2618 /* method abstract_collection#Couple#second= for (self: Couple[nullable Object, nullable Object], nullable Object) */
2619 void standard___standard__Couple___second_61d(val
* self
, val
* p0
) {
2620 short int var
/* : Bool */;
2623 const struct type
* type_struct
;
2624 short int is_nullable
;
2625 const char* var_class_name
;
2626 /* Covariant cast for argument 0 (second) <p0:nullable Object> isa S */
2627 /* <p0:nullable Object> isa S */
2628 type_struct
= self
->type
->resolution_table
->types
[COLOR_standard__Couple___35dS
];
2629 cltype
= type_struct
->color
;
2630 idtype
= type_struct
->id
;
2631 is_nullable
= type_struct
->is_nullable
;
2635 if(cltype
>= (((long)p0
&3)?type_info
[((long)p0
&3)]:p0
->type
)->table_size
) {
2638 var
= (((long)p0
&3)?type_info
[((long)p0
&3)]:p0
->type
)->type_table
[cltype
] == idtype
;
2641 if (unlikely(!var
)) {
2642 var_class_name
= p0
== NULL ?
"null" : (((long)p0
&3)?type_info
[((long)p0
&3)]:p0
->type
)->name
;
2643 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "S", var_class_name
);
2644 PRINT_ERROR(" (%s:%d)\n", FILE_standard__abstract_collection
, 1126);
2647 self
->attrs
[COLOR_standard__abstract_collection__Couple___second
].val
= p0
; /* _second on <self:Couple[nullable Object, nullable Object]> */
2650 /* method abstract_collection#Couple#init for (self: Couple[nullable Object, nullable Object]) */
2651 void standard___standard__Couple___standard__kernel__Object__init(val
* self
) {
2653 ((void(*)(val
* self
))(self
->class->vft
[COLOR_standard___standard__Couple___standard__kernel__Object__init
]))(self
); /* init on <self:Couple[nullable Object, nullable Object]>*/