NOTICE: Update author list and years
[nit.git] / c_src / core__bytes.sep.1.c
1 #include "core__bytes.sep.0.h"
2 /* method bytes#Bytes#items for (self: Bytes): NativeString */
3 char* core___core__Bytes___items(val* self) {
4 char* var /* : NativeString */;
5 char* var1 /* : NativeString */;
6 var1 = self->attrs[COLOR_core__bytes__Bytes___items].str; /* _items on <self:Bytes> */
7 var = var1;
8 RET_LABEL:;
9 return var;
10 }
11 /* method bytes#Bytes#items= for (self: Bytes, NativeString) */
12 void core___core__Bytes___items_61d(val* self, char* p0) {
13 self->attrs[COLOR_core__bytes__Bytes___items].str = p0; /* _items on <self:Bytes> */
14 RET_LABEL:;
15 }
16 /* method bytes#Bytes#length for (self: Bytes): Int */
17 long core___core__Bytes___core__abstract_collection__Collection__length(val* self) {
18 long var /* : Int */;
19 long var1 /* : Int */;
20 var1 = self->attrs[COLOR_core__bytes__Bytes___length].l; /* _length on <self:Bytes> */
21 var = var1;
22 RET_LABEL:;
23 return var;
24 }
25 /* method bytes#Bytes#length= for (self: Bytes, Int) */
26 void core___core__Bytes___core__array__AbstractArrayRead__length_61d(val* self, long p0) {
27 self->attrs[COLOR_core__bytes__Bytes___length].l = p0; /* _length on <self:Bytes> */
28 RET_LABEL:;
29 }
30 /* method bytes#Bytes#capacity for (self: Bytes): Int */
31 long core___core__Bytes___capacity(val* self) {
32 long var /* : Int */;
33 long var1 /* : Int */;
34 var1 = self->attrs[COLOR_core__bytes__Bytes___capacity].l; /* _capacity on <self:Bytes> */
35 var = var1;
36 RET_LABEL:;
37 return var;
38 }
39 /* method bytes#Bytes#capacity= for (self: Bytes, Int) */
40 void core___core__Bytes___capacity_61d(val* self, long p0) {
41 self->attrs[COLOR_core__bytes__Bytes___capacity].l = p0; /* _capacity on <self:Bytes> */
42 RET_LABEL:;
43 }
44 /* method bytes#Bytes#persisted for (self: Bytes): Bool */
45 short int core___core__Bytes___persisted(val* self) {
46 short int var /* : Bool */;
47 short int var1 /* : Bool */;
48 var1 = self->attrs[COLOR_core__bytes__Bytes___persisted].s; /* _persisted on <self:Bytes> */
49 var = var1;
50 RET_LABEL:;
51 return var;
52 }
53 /* method bytes#Bytes#persisted= for (self: Bytes, Bool) */
54 void core___core__Bytes___persisted_61d(val* self, short int p0) {
55 self->attrs[COLOR_core__bytes__Bytes___persisted].s = p0; /* _persisted on <self:Bytes> */
56 RET_LABEL:;
57 }
58 /* method bytes#Bytes#empty for (self: Bytes) */
59 void core___core__Bytes___empty(val* self) {
60 char* var /* : NativeString */;
61 char* var1 /* : NativeString */;
62 char* var3 /* : NativeString */;
63 char* var_ns /* var ns: NativeString */;
64 var = NULL/*special!*/;
65 {
66 { /* Inline native#NativeString#new (var,0l) on <var:NativeString> */
67 var3 = (char*)nit_alloc(0l);
68 var1 = var3;
69 goto RET_LABEL2;
70 RET_LABEL2:(void)0;
71 }
72 }
73 var_ns = var1;
74 {
75 ((void(*)(val* self, char* p0))(self->class->vft[COLOR_core__bytes__Bytes__items_61d]))(self, var_ns); /* items= on <self:Bytes>*/
76 }
77 {
78 ((void(*)(val* self, long p0))(self->class->vft[COLOR_core__array__AbstractArrayRead__length_61d]))(self, 0l); /* length= on <self:Bytes>*/
79 }
80 {
81 ((void(*)(val* self, long p0))(self->class->vft[COLOR_core__bytes__Bytes__capacity_61d]))(self, 0l); /* capacity= on <self:Bytes>*/
82 }
83 {
84 ((void(*)(val* self))(self->class->vft[COLOR_core__kernel__Object__init]))(self); /* init on <self:Bytes>*/
85 }
86 RET_LABEL:;
87 }
88 /* method bytes#Bytes#with_capacity for (self: Bytes, Int) */
89 void core___core__Bytes___with_capacity(val* self, long p0) {
90 long var_cap /* var cap: Int */;
91 char* var /* : NativeString */;
92 char* var1 /* : NativeString */;
93 char* var3 /* : NativeString */;
94 char* var_ns /* var ns: NativeString */;
95 var_cap = p0;
96 var = NULL/*special!*/;
97 {
98 { /* Inline native#NativeString#new (var,var_cap) on <var:NativeString> */
99 var3 = (char*)nit_alloc(var_cap);
100 var1 = var3;
101 goto RET_LABEL2;
102 RET_LABEL2:(void)0;
103 }
104 }
105 var_ns = var1;
106 {
107 ((void(*)(val* self, char* p0))(self->class->vft[COLOR_core__bytes__Bytes__items_61d]))(self, var_ns); /* items= on <self:Bytes>*/
108 }
109 {
110 ((void(*)(val* self, long p0))(self->class->vft[COLOR_core__array__AbstractArrayRead__length_61d]))(self, 0l); /* length= on <self:Bytes>*/
111 }
112 {
113 ((void(*)(val* self, long p0))(self->class->vft[COLOR_core__bytes__Bytes__capacity_61d]))(self, var_cap); /* capacity= on <self:Bytes>*/
114 }
115 {
116 ((void(*)(val* self))(self->class->vft[COLOR_core__kernel__Object__init]))(self); /* init on <self:Bytes>*/
117 }
118 RET_LABEL:;
119 }
120 /* method bytes#Bytes#is_empty for (self: Bytes): Bool */
121 short int core___core__Bytes___core__abstract_collection__Collection__is_empty(val* self) {
122 short int var /* : Bool */;
123 long var1 /* : Int */;
124 long var3 /* : Int */;
125 short int var4 /* : Bool */;
126 short int var6 /* : Bool */;
127 {
128 { /* Inline bytes#Bytes#length (self) on <self:Bytes> */
129 var3 = self->attrs[COLOR_core__bytes__Bytes___length].l; /* _length on <self:Bytes> */
130 var1 = var3;
131 RET_LABEL2:(void)0;
132 }
133 }
134 {
135 { /* Inline kernel#Int#== (var1,0l) on <var1:Int> */
136 var6 = var1 == 0l;
137 var4 = var6;
138 goto RET_LABEL5;
139 RET_LABEL5:(void)0;
140 }
141 }
142 var = var4;
143 goto RET_LABEL;
144 RET_LABEL:;
145 return var;
146 }
147 /* method bytes#Bytes#[] for (self: Bytes, Int): Byte */
148 unsigned char core___core__Bytes___core__abstract_collection__SequenceRead___91d_93d(val* self, long p0) {
149 unsigned char var /* : Byte */;
150 long var_i /* var i: Int */;
151 short int var1 /* : Bool */;
152 short int var3 /* : Bool */;
153 int cltype;
154 int idtype;
155 const char* var_class_name;
156 short int var4 /* : Bool */;
157 long var5 /* : Int */;
158 long var7 /* : Int */;
159 short int var8 /* : Bool */;
160 short int var10 /* : Bool */;
161 int cltype11;
162 int idtype12;
163 const char* var_class_name13;
164 short int var14 /* : Bool */;
165 char* var15 /* : NativeString */;
166 char* var17 /* : NativeString */;
167 unsigned char var18 /* : Byte */;
168 unsigned char var20 /* : Byte */;
169 var_i = p0;
170 {
171 { /* Inline kernel#Int#>= (var_i,0l) on <var_i:Int> */
172 /* Covariant cast for argument 0 (i) <0l:Int> isa OTHER */
173 /* <0l:Int> isa OTHER */
174 var3 = 1; /* easy <0l:Int> isa OTHER*/
175 if (unlikely(!var3)) {
176 var_class_name = type_core__Int.name;
177 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name);
178 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 729);
179 fatal_exit(1);
180 }
181 var4 = var_i >= 0l;
182 var1 = var4;
183 goto RET_LABEL2;
184 RET_LABEL2:(void)0;
185 }
186 }
187 if (unlikely(!var1)) {
188 PRINT_ERROR("Runtime error: %s", "Assert failed");
189 PRINT_ERROR(" (%s:%d)\n", FILE_core__bytes, 184);
190 fatal_exit(1);
191 }
192 {
193 { /* Inline bytes#Bytes#length (self) on <self:Bytes> */
194 var7 = self->attrs[COLOR_core__bytes__Bytes___length].l; /* _length on <self:Bytes> */
195 var5 = var7;
196 RET_LABEL6:(void)0;
197 }
198 }
199 {
200 { /* Inline kernel#Int#< (var_i,var5) on <var_i:Int> */
201 /* Covariant cast for argument 0 (i) <var5:Int> isa OTHER */
202 /* <var5:Int> isa OTHER */
203 var10 = 1; /* easy <var5:Int> isa OTHER*/
204 if (unlikely(!var10)) {
205 var_class_name13 = type_core__Int.name;
206 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name13);
207 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 728);
208 fatal_exit(1);
209 }
210 var14 = var_i < var5;
211 var8 = var14;
212 goto RET_LABEL9;
213 RET_LABEL9:(void)0;
214 }
215 }
216 if (unlikely(!var8)) {
217 PRINT_ERROR("Runtime error: %s", "Assert failed");
218 PRINT_ERROR(" (%s:%d)\n", FILE_core__bytes, 185);
219 fatal_exit(1);
220 }
221 {
222 { /* Inline bytes#Bytes#items (self) on <self:Bytes> */
223 var17 = self->attrs[COLOR_core__bytes__Bytes___items].str; /* _items on <self:Bytes> */
224 var15 = var17;
225 RET_LABEL16:(void)0;
226 }
227 }
228 {
229 { /* Inline native#NativeString#[] (var15,var_i) on <var15:NativeString> */
230 var20 = (unsigned char)((int)var15[var_i]);
231 var18 = var20;
232 goto RET_LABEL19;
233 RET_LABEL19:(void)0;
234 }
235 }
236 var = var18;
237 goto RET_LABEL;
238 RET_LABEL:;
239 return var;
240 }
241 /* method bytes#Bytes#[] for (self: SequenceRead[nullable Object], Int): nullable Object */
242 val* VIRTUAL_core___core__Bytes___core__abstract_collection__SequenceRead___91d_93d(val* self, long p0) {
243 val* var /* : nullable Object */;
244 unsigned char var1 /* : Byte */;
245 val* var2 /* : nullable Object */;
246 var1 = core___core__Bytes___core__abstract_collection__SequenceRead___91d_93d(self, p0);
247 var2 = BOX_core__Byte(var1); /* autobox from Byte to nullable Object */
248 var = var2;
249 RET_LABEL:;
250 return var;
251 }
252 /* method bytes#Bytes#[]= for (self: Bytes, Int, Byte) */
253 void core___core__Bytes___core__abstract_collection__Sequence___91d_93d_61d(val* self, long p0, unsigned char p1) {
254 short int var /* : Bool */;
255 int cltype;
256 int idtype;
257 const char* var_class_name;
258 long var_i /* var i: Int */;
259 unsigned char var_v /* var v: Byte */;
260 short int var1 /* : Bool */;
261 short int var3 /* : Bool */;
262 short int var4 /* : Bool */;
263 short int var6 /* : Bool */;
264 int cltype7;
265 int idtype8;
266 const char* var_class_name9;
267 short int var10 /* : Bool */;
268 long var11 /* : Int */;
269 long var13 /* : Int */;
270 short int var14 /* : Bool */;
271 short int var16 /* : Bool */;
272 int cltype17;
273 int idtype18;
274 const char* var_class_name19;
275 short int var20 /* : Bool */;
276 long var21 /* : Int */;
277 long var23 /* : Int */;
278 short int var24 /* : Bool */;
279 short int var26 /* : Bool */;
280 char* var27 /* : NativeString */;
281 char* var29 /* : NativeString */;
282 /* Covariant cast for argument 1 (v) <p1:Byte> isa Byte */
283 /* <p1:Byte> isa Byte */
284 var = 1; /* easy <p1:Byte> isa Byte*/
285 if (unlikely(!var)) {
286 var_class_name = type_core__Byte.name;
287 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "Byte", var_class_name);
288 PRINT_ERROR(" (%s:%d)\n", FILE_core__bytes, 268);
289 fatal_exit(1);
290 }
291 var_i = p0;
292 var_v = p1;
293 {
294 { /* Inline bytes#Bytes#persisted (self) on <self:Bytes> */
295 var3 = self->attrs[COLOR_core__bytes__Bytes___persisted].s; /* _persisted on <self:Bytes> */
296 var1 = var3;
297 RET_LABEL2:(void)0;
298 }
299 }
300 if (var1){
301 {
302 core___core__Bytes___regen(self); /* Direct call bytes#Bytes#regen on <self:Bytes>*/
303 }
304 } else {
305 }
306 {
307 { /* Inline kernel#Int#>= (var_i,0l) on <var_i:Int> */
308 /* Covariant cast for argument 0 (i) <0l:Int> isa OTHER */
309 /* <0l:Int> isa OTHER */
310 var6 = 1; /* easy <0l:Int> isa OTHER*/
311 if (unlikely(!var6)) {
312 var_class_name9 = type_core__Int.name;
313 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name9);
314 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 729);
315 fatal_exit(1);
316 }
317 var10 = var_i >= 0l;
318 var4 = var10;
319 goto RET_LABEL5;
320 RET_LABEL5:(void)0;
321 }
322 }
323 if (unlikely(!var4)) {
324 PRINT_ERROR("Runtime error: %s", "Assert failed");
325 PRINT_ERROR(" (%s:%d)\n", FILE_core__bytes, 273);
326 fatal_exit(1);
327 }
328 {
329 { /* Inline bytes#Bytes#length (self) on <self:Bytes> */
330 var13 = self->attrs[COLOR_core__bytes__Bytes___length].l; /* _length on <self:Bytes> */
331 var11 = var13;
332 RET_LABEL12:(void)0;
333 }
334 }
335 {
336 { /* Inline kernel#Int#<= (var_i,var11) on <var_i:Int> */
337 /* Covariant cast for argument 0 (i) <var11:Int> isa OTHER */
338 /* <var11:Int> isa OTHER */
339 var16 = 1; /* easy <var11:Int> isa OTHER*/
340 if (unlikely(!var16)) {
341 var_class_name19 = type_core__Int.name;
342 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name19);
343 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 727);
344 fatal_exit(1);
345 }
346 var20 = var_i <= var11;
347 var14 = var20;
348 goto RET_LABEL15;
349 RET_LABEL15:(void)0;
350 }
351 }
352 if (unlikely(!var14)) {
353 PRINT_ERROR("Runtime error: %s", "Assert failed");
354 PRINT_ERROR(" (%s:%d)\n", FILE_core__bytes, 274);
355 fatal_exit(1);
356 }
357 {
358 { /* Inline bytes#Bytes#length (self) on <self:Bytes> */
359 var23 = self->attrs[COLOR_core__bytes__Bytes___length].l; /* _length on <self:Bytes> */
360 var21 = var23;
361 RET_LABEL22:(void)0;
362 }
363 }
364 {
365 { /* Inline kernel#Int#== (var_i,var21) on <var_i:Int> */
366 var26 = var_i == var21;
367 var24 = var26;
368 goto RET_LABEL25;
369 RET_LABEL25:(void)0;
370 }
371 }
372 if (var24){
373 {
374 core___core__Bytes___core__abstract_collection__SimpleCollection__add(self, var_v); /* Direct call bytes#Bytes#add on <self:Bytes>*/
375 }
376 } else {
377 }
378 {
379 { /* Inline bytes#Bytes#items (self) on <self:Bytes> */
380 var29 = self->attrs[COLOR_core__bytes__Bytes___items].str; /* _items on <self:Bytes> */
381 var27 = var29;
382 RET_LABEL28:(void)0;
383 }
384 }
385 {
386 { /* Inline native#NativeString#[]= (var27,var_i,var_v) on <var27:NativeString> */
387 var27[var_i]=(unsigned char)var_v;
388 RET_LABEL30:(void)0;
389 }
390 }
391 RET_LABEL:;
392 }
393 /* method bytes#Bytes#[]= for (self: Sequence[nullable Object], Int, nullable Object) */
394 void VIRTUAL_core___core__Bytes___core__abstract_collection__Sequence___91d_93d_61d(val* self, long p0, val* p1) {
395 unsigned char var /* : Byte */;
396 var = ((struct instance_core__Byte*)p1)->value; /* autounbox from nullable Object to Byte */;
397 core___core__Bytes___core__abstract_collection__Sequence___91d_93d_61d(self, p0, var); /* Direct call bytes#Bytes#[]= on <self:Sequence[nullable Object](Bytes)>*/
398 RET_LABEL:;
399 }
400 /* method bytes#Bytes#add for (self: Bytes, Byte) */
401 void core___core__Bytes___core__abstract_collection__SimpleCollection__add(val* self, unsigned char p0) {
402 short int var /* : Bool */;
403 int cltype;
404 int idtype;
405 const char* var_class_name;
406 unsigned char var_c /* var c: Byte */;
407 short int var1 /* : Bool */;
408 short int var3 /* : Bool */;
409 long var4 /* : Int */;
410 long var6 /* : Int */;
411 long var7 /* : Int */;
412 long var9 /* : Int */;
413 short int var10 /* : Bool */;
414 short int var12 /* : Bool */;
415 int cltype13;
416 int idtype14;
417 const char* var_class_name15;
418 short int var16 /* : Bool */;
419 long var17 /* : Int */;
420 long var19 /* : Int */;
421 char* var20 /* : NativeString */;
422 char* var22 /* : NativeString */;
423 long var23 /* : Int */;
424 long var25 /* : Int */;
425 val* var_ /* var : Bytes */;
426 long var27 /* : Int */;
427 long var29 /* : Int */;
428 long var30 /* : Int */;
429 short int var32 /* : Bool */;
430 int cltype33;
431 int idtype34;
432 const char* var_class_name35;
433 long var36 /* : Int */;
434 /* Covariant cast for argument 0 (c) <p0:Byte> isa Byte */
435 /* <p0:Byte> isa Byte */
436 var = 1; /* easy <p0:Byte> isa Byte*/
437 if (unlikely(!var)) {
438 var_class_name = type_core__Byte.name;
439 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "Byte", var_class_name);
440 PRINT_ERROR(" (%s:%d)\n", FILE_core__bytes, 279);
441 fatal_exit(1);
442 }
443 var_c = p0;
444 {
445 { /* Inline bytes#Bytes#persisted (self) on <self:Bytes> */
446 var3 = self->attrs[COLOR_core__bytes__Bytes___persisted].s; /* _persisted on <self:Bytes> */
447 var1 = var3;
448 RET_LABEL2:(void)0;
449 }
450 }
451 if (var1){
452 {
453 core___core__Bytes___regen(self); /* Direct call bytes#Bytes#regen on <self:Bytes>*/
454 }
455 } else {
456 }
457 {
458 { /* Inline bytes#Bytes#length (self) on <self:Bytes> */
459 var6 = self->attrs[COLOR_core__bytes__Bytes___length].l; /* _length on <self:Bytes> */
460 var4 = var6;
461 RET_LABEL5:(void)0;
462 }
463 }
464 {
465 { /* Inline bytes#Bytes#capacity (self) on <self:Bytes> */
466 var9 = self->attrs[COLOR_core__bytes__Bytes___capacity].l; /* _capacity on <self:Bytes> */
467 var7 = var9;
468 RET_LABEL8:(void)0;
469 }
470 }
471 {
472 { /* Inline kernel#Int#>= (var4,var7) on <var4:Int> */
473 /* Covariant cast for argument 0 (i) <var7:Int> isa OTHER */
474 /* <var7:Int> isa OTHER */
475 var12 = 1; /* easy <var7:Int> isa OTHER*/
476 if (unlikely(!var12)) {
477 var_class_name15 = type_core__Int.name;
478 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name15);
479 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 729);
480 fatal_exit(1);
481 }
482 var16 = var4 >= var7;
483 var10 = var16;
484 goto RET_LABEL11;
485 RET_LABEL11:(void)0;
486 }
487 }
488 if (var10){
489 {
490 { /* Inline bytes#Bytes#length (self) on <self:Bytes> */
491 var19 = self->attrs[COLOR_core__bytes__Bytes___length].l; /* _length on <self:Bytes> */
492 var17 = var19;
493 RET_LABEL18:(void)0;
494 }
495 }
496 {
497 core___core__Bytes___core__array__AbstractArray__enlarge(self, var17); /* Direct call bytes#Bytes#enlarge on <self:Bytes>*/
498 }
499 } else {
500 }
501 {
502 { /* Inline bytes#Bytes#items (self) on <self:Bytes> */
503 var22 = self->attrs[COLOR_core__bytes__Bytes___items].str; /* _items on <self:Bytes> */
504 var20 = var22;
505 RET_LABEL21:(void)0;
506 }
507 }
508 {
509 { /* Inline bytes#Bytes#length (self) on <self:Bytes> */
510 var25 = self->attrs[COLOR_core__bytes__Bytes___length].l; /* _length on <self:Bytes> */
511 var23 = var25;
512 RET_LABEL24:(void)0;
513 }
514 }
515 {
516 { /* Inline native#NativeString#[]= (var20,var23,var_c) on <var20:NativeString> */
517 var20[var23]=(unsigned char)var_c;
518 RET_LABEL26:(void)0;
519 }
520 }
521 var_ = self;
522 {
523 { /* Inline bytes#Bytes#length (var_) on <var_:Bytes> */
524 var29 = var_->attrs[COLOR_core__bytes__Bytes___length].l; /* _length on <var_:Bytes> */
525 var27 = var29;
526 RET_LABEL28:(void)0;
527 }
528 }
529 {
530 { /* Inline kernel#Int#+ (var27,1l) on <var27:Int> */
531 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
532 /* <1l:Int> isa OTHER */
533 var32 = 1; /* easy <1l:Int> isa OTHER*/
534 if (unlikely(!var32)) {
535 var_class_name35 = type_core__Int.name;
536 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name35);
537 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 731);
538 fatal_exit(1);
539 }
540 var36 = var27 + 1l;
541 var30 = var36;
542 goto RET_LABEL31;
543 RET_LABEL31:(void)0;
544 }
545 }
546 {
547 { /* Inline bytes#Bytes#length= (var_,var30) on <var_:Bytes> */
548 var_->attrs[COLOR_core__bytes__Bytes___length].l = var30; /* _length on <var_:Bytes> */
549 RET_LABEL37:(void)0;
550 }
551 }
552 RET_LABEL:;
553 }
554 /* method bytes#Bytes#add for (self: SimpleCollection[nullable Object], nullable Object) */
555 void VIRTUAL_core___core__Bytes___core__abstract_collection__SimpleCollection__add(val* self, val* p0) {
556 unsigned char var /* : Byte */;
557 var = ((struct instance_core__Byte*)p0)->value; /* autounbox from nullable Object to Byte */;
558 core___core__Bytes___core__abstract_collection__SimpleCollection__add(self, var); /* Direct call bytes#Bytes#add on <self:SimpleCollection[nullable Object](Bytes)>*/
559 RET_LABEL:;
560 }
561 /* method bytes#Bytes#append for (self: Bytes, Collection[Byte]) */
562 void core___core__Bytes___core__abstract_collection__Sequence__append(val* self, val* p0) {
563 short int var /* : Bool */;
564 int cltype;
565 int idtype;
566 const char* var_class_name;
567 val* var_arr /* var arr: Collection[Byte] */;
568 short int var1 /* : Bool */;
569 int cltype2;
570 int idtype3;
571 char* var4 /* : NativeString */;
572 char* var6 /* : NativeString */;
573 long var7 /* : Int */;
574 long var9 /* : Int */;
575 val* var_ /* var : Collection[Byte] */;
576 val* var10 /* : Iterator[nullable Object] */;
577 val* var_11 /* var : Iterator[Byte] */;
578 short int var12 /* : Bool */;
579 val* var13 /* : nullable Object */;
580 unsigned char var14 /* : Byte */;
581 unsigned char var_i /* var i: Byte */;
582 /* Covariant cast for argument 0 (arr) <p0:Collection[Byte]> isa Collection[Byte] */
583 /* <p0:Collection[Byte]> isa Collection[Byte] */
584 var = 1; /* easy <p0:Collection[Byte]> isa Collection[Byte]*/
585 if (unlikely(!var)) {
586 var_class_name = p0 == NULL ? "null" : (((long)p0&3)?type_info[((long)p0&3)]:p0->type)->name;
587 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "Collection[Byte]", var_class_name);
588 PRINT_ERROR(" (%s:%d)\n", FILE_core__bytes, 306);
589 fatal_exit(1);
590 }
591 var_arr = p0;
592 /* <var_arr:Collection[Byte]> isa Bytes */
593 cltype2 = type_core__Bytes.color;
594 idtype3 = type_core__Bytes.id;
595 if(cltype2 >= (((long)var_arr&3)?type_info[((long)var_arr&3)]:var_arr->type)->table_size) {
596 var1 = 0;
597 } else {
598 var1 = (((long)var_arr&3)?type_info[((long)var_arr&3)]:var_arr->type)->type_table[cltype2] == idtype3;
599 }
600 if (var1){
601 {
602 { /* Inline bytes#Bytes#items (var_arr) on <var_arr:Collection[Byte](Bytes)> */
603 var6 = var_arr->attrs[COLOR_core__bytes__Bytes___items].str; /* _items on <var_arr:Collection[Byte](Bytes)> */
604 var4 = var6;
605 RET_LABEL5:(void)0;
606 }
607 }
608 {
609 { /* Inline bytes#Bytes#length (var_arr) on <var_arr:Collection[Byte](Bytes)> */
610 var9 = var_arr->attrs[COLOR_core__bytes__Bytes___length].l; /* _length on <var_arr:Collection[Byte](Bytes)> */
611 var7 = var9;
612 RET_LABEL8:(void)0;
613 }
614 }
615 {
616 core___core__Bytes___append_ns(self, var4, var7); /* Direct call bytes#Bytes#append_ns on <self:Bytes>*/
617 }
618 } else {
619 var_ = var_arr;
620 {
621 var10 = ((val*(*)(val* self))((((long)var_&3)?class_info[((long)var_&3)]:var_->class)->vft[COLOR_core__abstract_collection__Collection__iterator]))(var_); /* iterator on <var_:Collection[Byte]>*/
622 }
623 var_11 = var10;
624 for(;;) {
625 {
626 var12 = ((short int(*)(val* self))((((long)var_11&3)?class_info[((long)var_11&3)]:var_11->class)->vft[COLOR_core__abstract_collection__Iterator__is_ok]))(var_11); /* is_ok on <var_11:Iterator[Byte]>*/
627 }
628 if (var12){
629 } else {
630 goto BREAK_label;
631 }
632 {
633 var13 = ((val*(*)(val* self))((((long)var_11&3)?class_info[((long)var_11&3)]:var_11->class)->vft[COLOR_core__abstract_collection__Iterator__item]))(var_11); /* item on <var_11:Iterator[Byte]>*/
634 }
635 var14 = ((struct instance_core__Byte*)var13)->value; /* autounbox from nullable Object to Byte */;
636 var_i = var14;
637 {
638 core___core__Bytes___core__abstract_collection__SimpleCollection__add(self, var_i); /* Direct call bytes#Bytes#add on <self:Bytes>*/
639 }
640 {
641 ((void(*)(val* self))((((long)var_11&3)?class_info[((long)var_11&3)]:var_11->class)->vft[COLOR_core__abstract_collection__Iterator__next]))(var_11); /* next on <var_11:Iterator[Byte]>*/
642 }
643 }
644 BREAK_label: (void)0;
645 {
646 ((void(*)(val* self))((((long)var_11&3)?class_info[((long)var_11&3)]:var_11->class)->vft[COLOR_core__abstract_collection__Iterator__finish]))(var_11); /* finish on <var_11:Iterator[Byte]>*/
647 }
648 }
649 RET_LABEL:;
650 }
651 /* method bytes#Bytes#pop for (self: Bytes): Byte */
652 unsigned char core___core__Bytes___core__abstract_collection__Sequence__pop(val* self) {
653 unsigned char var /* : Byte */;
654 long var1 /* : Int */;
655 long var3 /* : Int */;
656 short int var4 /* : Bool */;
657 short int var6 /* : Bool */;
658 int cltype;
659 int idtype;
660 const char* var_class_name;
661 short int var7 /* : Bool */;
662 val* var_ /* var : Bytes */;
663 long var8 /* : Int */;
664 long var10 /* : Int */;
665 long var11 /* : Int */;
666 short int var13 /* : Bool */;
667 int cltype14;
668 int idtype15;
669 const char* var_class_name16;
670 long var17 /* : Int */;
671 char* var19 /* : NativeString */;
672 char* var21 /* : NativeString */;
673 long var22 /* : Int */;
674 long var24 /* : Int */;
675 unsigned char var25 /* : Byte */;
676 unsigned char var27 /* : Byte */;
677 {
678 { /* Inline bytes#Bytes#length (self) on <self:Bytes> */
679 var3 = self->attrs[COLOR_core__bytes__Bytes___length].l; /* _length on <self:Bytes> */
680 var1 = var3;
681 RET_LABEL2:(void)0;
682 }
683 }
684 {
685 { /* Inline kernel#Int#>= (var1,1l) on <var1:Int> */
686 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
687 /* <1l:Int> isa OTHER */
688 var6 = 1; /* easy <1l:Int> isa OTHER*/
689 if (unlikely(!var6)) {
690 var_class_name = type_core__Int.name;
691 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name);
692 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 729);
693 fatal_exit(1);
694 }
695 var7 = var1 >= 1l;
696 var4 = var7;
697 goto RET_LABEL5;
698 RET_LABEL5:(void)0;
699 }
700 }
701 if (unlikely(!var4)) {
702 PRINT_ERROR("Runtime error: %s", "Assert failed");
703 PRINT_ERROR(" (%s:%d)\n", FILE_core__bytes, 322);
704 fatal_exit(1);
705 }
706 var_ = self;
707 {
708 { /* Inline bytes#Bytes#length (var_) on <var_:Bytes> */
709 var10 = var_->attrs[COLOR_core__bytes__Bytes___length].l; /* _length on <var_:Bytes> */
710 var8 = var10;
711 RET_LABEL9:(void)0;
712 }
713 }
714 {
715 { /* Inline kernel#Int#- (var8,1l) on <var8:Int> */
716 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
717 /* <1l:Int> isa OTHER */
718 var13 = 1; /* easy <1l:Int> isa OTHER*/
719 if (unlikely(!var13)) {
720 var_class_name16 = type_core__Int.name;
721 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name16);
722 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 734);
723 fatal_exit(1);
724 }
725 var17 = var8 - 1l;
726 var11 = var17;
727 goto RET_LABEL12;
728 RET_LABEL12:(void)0;
729 }
730 }
731 {
732 { /* Inline bytes#Bytes#length= (var_,var11) on <var_:Bytes> */
733 var_->attrs[COLOR_core__bytes__Bytes___length].l = var11; /* _length on <var_:Bytes> */
734 RET_LABEL18:(void)0;
735 }
736 }
737 {
738 { /* Inline bytes#Bytes#items (self) on <self:Bytes> */
739 var21 = self->attrs[COLOR_core__bytes__Bytes___items].str; /* _items on <self:Bytes> */
740 var19 = var21;
741 RET_LABEL20:(void)0;
742 }
743 }
744 {
745 { /* Inline bytes#Bytes#length (self) on <self:Bytes> */
746 var24 = self->attrs[COLOR_core__bytes__Bytes___length].l; /* _length on <self:Bytes> */
747 var22 = var24;
748 RET_LABEL23:(void)0;
749 }
750 }
751 {
752 { /* Inline native#NativeString#[] (var19,var22) on <var19:NativeString> */
753 var27 = (unsigned char)((int)var19[var22]);
754 var25 = var27;
755 goto RET_LABEL26;
756 RET_LABEL26:(void)0;
757 }
758 }
759 var = var25;
760 goto RET_LABEL;
761 RET_LABEL:;
762 return var;
763 }
764 /* method bytes#Bytes#pop for (self: Sequence[nullable Object]): nullable Object */
765 val* VIRTUAL_core___core__Bytes___core__abstract_collection__Sequence__pop(val* self) {
766 val* var /* : nullable Object */;
767 unsigned char var1 /* : Byte */;
768 val* var2 /* : nullable Object */;
769 var1 = core___core__Bytes___core__abstract_collection__Sequence__pop(self);
770 var2 = BOX_core__Byte(var1); /* autobox from Byte to nullable Object */
771 var = var2;
772 RET_LABEL:;
773 return var;
774 }
775 /* method bytes#Bytes#clear for (self: Bytes) */
776 void core___core__Bytes___core__abstract_collection__RemovableCollection__clear(val* self) {
777 {
778 { /* Inline bytes#Bytes#length= (self,0l) on <self:Bytes> */
779 self->attrs[COLOR_core__bytes__Bytes___length].l = 0l; /* _length on <self:Bytes> */
780 RET_LABEL1:(void)0;
781 }
782 }
783 RET_LABEL:;
784 }
785 /* method bytes#Bytes#regen for (self: Bytes) */
786 void core___core__Bytes___regen(val* self) {
787 char* var /* : NativeString */;
788 long var1 /* : Int */;
789 long var3 /* : Int */;
790 char* var4 /* : NativeString */;
791 char* var6 /* : NativeString */;
792 char* var_nns /* var nns: NativeString */;
793 char* var7 /* : NativeString */;
794 char* var9 /* : NativeString */;
795 long var10 /* : Int */;
796 long var12 /* : Int */;
797 var = NULL/*special!*/;
798 {
799 { /* Inline bytes#Bytes#capacity (self) on <self:Bytes> */
800 var3 = self->attrs[COLOR_core__bytes__Bytes___capacity].l; /* _capacity on <self:Bytes> */
801 var1 = var3;
802 RET_LABEL2:(void)0;
803 }
804 }
805 {
806 { /* Inline native#NativeString#new (var,var1) on <var:NativeString> */
807 var6 = (char*)nit_alloc(var1);
808 var4 = var6;
809 goto RET_LABEL5;
810 RET_LABEL5:(void)0;
811 }
812 }
813 var_nns = var4;
814 {
815 { /* Inline bytes#Bytes#items (self) on <self:Bytes> */
816 var9 = self->attrs[COLOR_core__bytes__Bytes___items].str; /* _items on <self:Bytes> */
817 var7 = var9;
818 RET_LABEL8:(void)0;
819 }
820 }
821 {
822 { /* Inline bytes#Bytes#length (self) on <self:Bytes> */
823 var12 = self->attrs[COLOR_core__bytes__Bytes___length].l; /* _length on <self:Bytes> */
824 var10 = var12;
825 RET_LABEL11:(void)0;
826 }
827 }
828 {
829 { /* Inline native#NativeString#copy_to (var7,var_nns,var10,0l,0l) on <var7:NativeString> */
830 memmove(var_nns+0l,var7+0l,var10);
831 RET_LABEL13:(void)0;
832 }
833 }
834 {
835 { /* Inline bytes#Bytes#persisted= (self,0) on <self:Bytes> */
836 self->attrs[COLOR_core__bytes__Bytes___persisted].s = 0; /* _persisted on <self:Bytes> */
837 RET_LABEL14:(void)0;
838 }
839 }
840 RET_LABEL:;
841 }
842 /* method bytes#Bytes#append_ns for (self: Bytes, NativeString, Int) */
843 void core___core__Bytes___append_ns(val* self, char* p0, long p1) {
844 char* var_ns /* var ns: NativeString */;
845 long var_ln /* var ln: Int */;
846 short int var /* : Bool */;
847 short int var2 /* : Bool */;
848 long var3 /* : Int */;
849 long var5 /* : Int */;
850 long var6 /* : Int */;
851 short int var8 /* : Bool */;
852 int cltype;
853 int idtype;
854 const char* var_class_name;
855 long var9 /* : Int */;
856 long var_nlen /* var nlen: Int */;
857 long var10 /* : Int */;
858 long var12 /* : Int */;
859 short int var13 /* : Bool */;
860 short int var15 /* : Bool */;
861 int cltype16;
862 int idtype17;
863 const char* var_class_name18;
864 short int var19 /* : Bool */;
865 char* var20 /* : NativeString */;
866 char* var22 /* : NativeString */;
867 long var23 /* : Int */;
868 long var25 /* : Int */;
869 val* var_ /* var : Bytes */;
870 long var27 /* : Int */;
871 long var29 /* : Int */;
872 long var30 /* : Int */;
873 short int var32 /* : Bool */;
874 int cltype33;
875 int idtype34;
876 const char* var_class_name35;
877 long var36 /* : Int */;
878 var_ns = p0;
879 var_ln = p1;
880 {
881 { /* Inline bytes#Bytes#persisted (self) on <self:Bytes> */
882 var2 = self->attrs[COLOR_core__bytes__Bytes___persisted].s; /* _persisted on <self:Bytes> */
883 var = var2;
884 RET_LABEL1:(void)0;
885 }
886 }
887 if (var){
888 {
889 core___core__Bytes___regen(self); /* Direct call bytes#Bytes#regen on <self:Bytes>*/
890 }
891 } else {
892 }
893 {
894 { /* Inline bytes#Bytes#length (self) on <self:Bytes> */
895 var5 = self->attrs[COLOR_core__bytes__Bytes___length].l; /* _length on <self:Bytes> */
896 var3 = var5;
897 RET_LABEL4:(void)0;
898 }
899 }
900 {
901 { /* Inline kernel#Int#+ (var3,var_ln) on <var3:Int> */
902 /* Covariant cast for argument 0 (i) <var_ln:Int> isa OTHER */
903 /* <var_ln:Int> isa OTHER */
904 var8 = 1; /* easy <var_ln:Int> isa OTHER*/
905 if (unlikely(!var8)) {
906 var_class_name = type_core__Int.name;
907 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name);
908 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 731);
909 fatal_exit(1);
910 }
911 var9 = var3 + var_ln;
912 var6 = var9;
913 goto RET_LABEL7;
914 RET_LABEL7:(void)0;
915 }
916 }
917 var_nlen = var6;
918 {
919 { /* Inline bytes#Bytes#capacity (self) on <self:Bytes> */
920 var12 = self->attrs[COLOR_core__bytes__Bytes___capacity].l; /* _capacity on <self:Bytes> */
921 var10 = var12;
922 RET_LABEL11:(void)0;
923 }
924 }
925 {
926 { /* Inline kernel#Int#> (var_nlen,var10) on <var_nlen:Int> */
927 /* Covariant cast for argument 0 (i) <var10:Int> isa OTHER */
928 /* <var10:Int> isa OTHER */
929 var15 = 1; /* easy <var10:Int> isa OTHER*/
930 if (unlikely(!var15)) {
931 var_class_name18 = type_core__Int.name;
932 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name18);
933 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 730);
934 fatal_exit(1);
935 }
936 var19 = var_nlen > var10;
937 var13 = var19;
938 goto RET_LABEL14;
939 RET_LABEL14:(void)0;
940 }
941 }
942 if (var13){
943 {
944 core___core__Bytes___core__array__AbstractArray__enlarge(self, var_nlen); /* Direct call bytes#Bytes#enlarge on <self:Bytes>*/
945 }
946 } else {
947 }
948 {
949 { /* Inline bytes#Bytes#items (self) on <self:Bytes> */
950 var22 = self->attrs[COLOR_core__bytes__Bytes___items].str; /* _items on <self:Bytes> */
951 var20 = var22;
952 RET_LABEL21:(void)0;
953 }
954 }
955 {
956 { /* Inline bytes#Bytes#length (self) on <self:Bytes> */
957 var25 = self->attrs[COLOR_core__bytes__Bytes___length].l; /* _length on <self:Bytes> */
958 var23 = var25;
959 RET_LABEL24:(void)0;
960 }
961 }
962 {
963 { /* Inline native#NativeString#copy_to (var_ns,var20,var_ln,0l,var23) on <var_ns:NativeString> */
964 memmove(var20+var23,var_ns+0l,var_ln);
965 RET_LABEL26:(void)0;
966 }
967 }
968 var_ = self;
969 {
970 { /* Inline bytes#Bytes#length (var_) on <var_:Bytes> */
971 var29 = var_->attrs[COLOR_core__bytes__Bytes___length].l; /* _length on <var_:Bytes> */
972 var27 = var29;
973 RET_LABEL28:(void)0;
974 }
975 }
976 {
977 { /* Inline kernel#Int#+ (var27,var_ln) on <var27:Int> */
978 /* Covariant cast for argument 0 (i) <var_ln:Int> isa OTHER */
979 /* <var_ln:Int> isa OTHER */
980 var32 = 1; /* easy <var_ln:Int> isa OTHER*/
981 if (unlikely(!var32)) {
982 var_class_name35 = type_core__Int.name;
983 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name35);
984 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 731);
985 fatal_exit(1);
986 }
987 var36 = var27 + var_ln;
988 var30 = var36;
989 goto RET_LABEL31;
990 RET_LABEL31:(void)0;
991 }
992 }
993 {
994 { /* Inline bytes#Bytes#length= (var_,var30) on <var_:Bytes> */
995 var_->attrs[COLOR_core__bytes__Bytes___length].l = var30; /* _length on <var_:Bytes> */
996 RET_LABEL37:(void)0;
997 }
998 }
999 RET_LABEL:;
1000 }
1001 /* method bytes#Bytes#append_ns_from for (self: Bytes, NativeString, Int, Int) */
1002 void core___core__Bytes___append_ns_from(val* self, char* p0, long p1, long p2) {
1003 char* var_ns /* var ns: NativeString */;
1004 long var_ln /* var ln: Int */;
1005 long var_from /* var from: Int */;
1006 short int var /* : Bool */;
1007 short int var2 /* : Bool */;
1008 long var3 /* : Int */;
1009 long var5 /* : Int */;
1010 long var6 /* : Int */;
1011 short int var8 /* : Bool */;
1012 int cltype;
1013 int idtype;
1014 const char* var_class_name;
1015 long var9 /* : Int */;
1016 long var_nlen /* var nlen: Int */;
1017 long var10 /* : Int */;
1018 long var12 /* : Int */;
1019 short int var13 /* : Bool */;
1020 short int var15 /* : Bool */;
1021 int cltype16;
1022 int idtype17;
1023 const char* var_class_name18;
1024 short int var19 /* : Bool */;
1025 char* var20 /* : NativeString */;
1026 char* var22 /* : NativeString */;
1027 long var23 /* : Int */;
1028 long var25 /* : Int */;
1029 val* var_ /* var : Bytes */;
1030 long var27 /* : Int */;
1031 long var29 /* : Int */;
1032 long var30 /* : Int */;
1033 short int var32 /* : Bool */;
1034 int cltype33;
1035 int idtype34;
1036 const char* var_class_name35;
1037 long var36 /* : Int */;
1038 var_ns = p0;
1039 var_ln = p1;
1040 var_from = p2;
1041 {
1042 { /* Inline bytes#Bytes#persisted (self) on <self:Bytes> */
1043 var2 = self->attrs[COLOR_core__bytes__Bytes___persisted].s; /* _persisted on <self:Bytes> */
1044 var = var2;
1045 RET_LABEL1:(void)0;
1046 }
1047 }
1048 if (var){
1049 {
1050 core___core__Bytes___regen(self); /* Direct call bytes#Bytes#regen on <self:Bytes>*/
1051 }
1052 } else {
1053 }
1054 {
1055 { /* Inline bytes#Bytes#length (self) on <self:Bytes> */
1056 var5 = self->attrs[COLOR_core__bytes__Bytes___length].l; /* _length on <self:Bytes> */
1057 var3 = var5;
1058 RET_LABEL4:(void)0;
1059 }
1060 }
1061 {
1062 { /* Inline kernel#Int#+ (var3,var_ln) on <var3:Int> */
1063 /* Covariant cast for argument 0 (i) <var_ln:Int> isa OTHER */
1064 /* <var_ln:Int> isa OTHER */
1065 var8 = 1; /* easy <var_ln:Int> isa OTHER*/
1066 if (unlikely(!var8)) {
1067 var_class_name = type_core__Int.name;
1068 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name);
1069 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 731);
1070 fatal_exit(1);
1071 }
1072 var9 = var3 + var_ln;
1073 var6 = var9;
1074 goto RET_LABEL7;
1075 RET_LABEL7:(void)0;
1076 }
1077 }
1078 var_nlen = var6;
1079 {
1080 { /* Inline bytes#Bytes#capacity (self) on <self:Bytes> */
1081 var12 = self->attrs[COLOR_core__bytes__Bytes___capacity].l; /* _capacity on <self:Bytes> */
1082 var10 = var12;
1083 RET_LABEL11:(void)0;
1084 }
1085 }
1086 {
1087 { /* Inline kernel#Int#> (var_nlen,var10) on <var_nlen:Int> */
1088 /* Covariant cast for argument 0 (i) <var10:Int> isa OTHER */
1089 /* <var10:Int> isa OTHER */
1090 var15 = 1; /* easy <var10:Int> isa OTHER*/
1091 if (unlikely(!var15)) {
1092 var_class_name18 = type_core__Int.name;
1093 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name18);
1094 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 730);
1095 fatal_exit(1);
1096 }
1097 var19 = var_nlen > var10;
1098 var13 = var19;
1099 goto RET_LABEL14;
1100 RET_LABEL14:(void)0;
1101 }
1102 }
1103 if (var13){
1104 {
1105 core___core__Bytes___core__array__AbstractArray__enlarge(self, var_nlen); /* Direct call bytes#Bytes#enlarge on <self:Bytes>*/
1106 }
1107 } else {
1108 }
1109 {
1110 { /* Inline bytes#Bytes#items (self) on <self:Bytes> */
1111 var22 = self->attrs[COLOR_core__bytes__Bytes___items].str; /* _items on <self:Bytes> */
1112 var20 = var22;
1113 RET_LABEL21:(void)0;
1114 }
1115 }
1116 {
1117 { /* Inline bytes#Bytes#length (self) on <self:Bytes> */
1118 var25 = self->attrs[COLOR_core__bytes__Bytes___length].l; /* _length on <self:Bytes> */
1119 var23 = var25;
1120 RET_LABEL24:(void)0;
1121 }
1122 }
1123 {
1124 { /* Inline native#NativeString#copy_to (var_ns,var20,var_ln,var_from,var23) on <var_ns:NativeString> */
1125 memmove(var20+var23,var_ns+var_from,var_ln);
1126 RET_LABEL26:(void)0;
1127 }
1128 }
1129 var_ = self;
1130 {
1131 { /* Inline bytes#Bytes#length (var_) on <var_:Bytes> */
1132 var29 = var_->attrs[COLOR_core__bytes__Bytes___length].l; /* _length on <var_:Bytes> */
1133 var27 = var29;
1134 RET_LABEL28:(void)0;
1135 }
1136 }
1137 {
1138 { /* Inline kernel#Int#+ (var27,var_ln) on <var27:Int> */
1139 /* Covariant cast for argument 0 (i) <var_ln:Int> isa OTHER */
1140 /* <var_ln:Int> isa OTHER */
1141 var32 = 1; /* easy <var_ln:Int> isa OTHER*/
1142 if (unlikely(!var32)) {
1143 var_class_name35 = type_core__Int.name;
1144 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name35);
1145 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 731);
1146 fatal_exit(1);
1147 }
1148 var36 = var27 + var_ln;
1149 var30 = var36;
1150 goto RET_LABEL31;
1151 RET_LABEL31:(void)0;
1152 }
1153 }
1154 {
1155 { /* Inline bytes#Bytes#length= (var_,var30) on <var_:Bytes> */
1156 var_->attrs[COLOR_core__bytes__Bytes___length].l = var30; /* _length on <var_:Bytes> */
1157 RET_LABEL37:(void)0;
1158 }
1159 }
1160 RET_LABEL:;
1161 }
1162 /* method bytes#Bytes#enlarge for (self: Bytes, Int) */
1163 void core___core__Bytes___core__array__AbstractArray__enlarge(val* self, long p0) {
1164 long var_sz /* var sz: Int */;
1165 long var /* : Int */;
1166 long var2 /* : Int */;
1167 short int var3 /* : Bool */;
1168 short int var5 /* : Bool */;
1169 int cltype;
1170 int idtype;
1171 const char* var_class_name;
1172 short int var6 /* : Bool */;
1173 long var8 /* : Int */;
1174 long var10 /* : Int */;
1175 short int var11 /* : Bool */;
1176 short int var13 /* : Bool */;
1177 int cltype14;
1178 int idtype15;
1179 const char* var_class_name16;
1180 short int var17 /* : Bool */;
1181 long var18 /* : Int */;
1182 long var20 /* : Int */;
1183 long var21 /* : Int */;
1184 short int var23 /* : Bool */;
1185 int cltype24;
1186 int idtype25;
1187 const char* var_class_name26;
1188 long var27 /* : Int */;
1189 long var28 /* : Int */;
1190 short int var30 /* : Bool */;
1191 int cltype31;
1192 int idtype32;
1193 const char* var_class_name33;
1194 long var34 /* : Int */;
1195 char* var36 /* : NativeString */;
1196 long var37 /* : Int */;
1197 long var39 /* : Int */;
1198 char* var40 /* : NativeString */;
1199 char* var42 /* : NativeString */;
1200 char* var_ns /* var ns: NativeString */;
1201 char* var43 /* : NativeString */;
1202 char* var45 /* : NativeString */;
1203 long var46 /* : Int */;
1204 long var48 /* : Int */;
1205 var_sz = p0;
1206 {
1207 { /* Inline bytes#Bytes#capacity (self) on <self:Bytes> */
1208 var2 = self->attrs[COLOR_core__bytes__Bytes___capacity].l; /* _capacity on <self:Bytes> */
1209 var = var2;
1210 RET_LABEL1:(void)0;
1211 }
1212 }
1213 {
1214 { /* Inline kernel#Int#>= (var,var_sz) on <var:Int> */
1215 /* Covariant cast for argument 0 (i) <var_sz:Int> isa OTHER */
1216 /* <var_sz:Int> isa OTHER */
1217 var5 = 1; /* easy <var_sz:Int> isa OTHER*/
1218 if (unlikely(!var5)) {
1219 var_class_name = type_core__Int.name;
1220 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name);
1221 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 729);
1222 fatal_exit(1);
1223 }
1224 var6 = var >= var_sz;
1225 var3 = var6;
1226 goto RET_LABEL4;
1227 RET_LABEL4:(void)0;
1228 }
1229 }
1230 if (var3){
1231 goto RET_LABEL;
1232 } else {
1233 }
1234 {
1235 { /* Inline bytes#Bytes#persisted= (self,0) on <self:Bytes> */
1236 self->attrs[COLOR_core__bytes__Bytes___persisted].s = 0; /* _persisted on <self:Bytes> */
1237 RET_LABEL7:(void)0;
1238 }
1239 }
1240 for(;;) {
1241 {
1242 { /* Inline bytes#Bytes#capacity (self) on <self:Bytes> */
1243 var10 = self->attrs[COLOR_core__bytes__Bytes___capacity].l; /* _capacity on <self:Bytes> */
1244 var8 = var10;
1245 RET_LABEL9:(void)0;
1246 }
1247 }
1248 {
1249 { /* Inline kernel#Int#< (var8,var_sz) on <var8:Int> */
1250 /* Covariant cast for argument 0 (i) <var_sz:Int> isa OTHER */
1251 /* <var_sz:Int> isa OTHER */
1252 var13 = 1; /* easy <var_sz:Int> isa OTHER*/
1253 if (unlikely(!var13)) {
1254 var_class_name16 = type_core__Int.name;
1255 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name16);
1256 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 728);
1257 fatal_exit(1);
1258 }
1259 var17 = var8 < var_sz;
1260 var11 = var17;
1261 goto RET_LABEL12;
1262 RET_LABEL12:(void)0;
1263 }
1264 }
1265 if (var11){
1266 {
1267 { /* Inline bytes#Bytes#capacity (self) on <self:Bytes> */
1268 var20 = self->attrs[COLOR_core__bytes__Bytes___capacity].l; /* _capacity on <self:Bytes> */
1269 var18 = var20;
1270 RET_LABEL19:(void)0;
1271 }
1272 }
1273 {
1274 { /* Inline kernel#Int#* (var18,2l) on <var18:Int> */
1275 /* Covariant cast for argument 0 (i) <2l:Int> isa OTHER */
1276 /* <2l:Int> isa OTHER */
1277 var23 = 1; /* easy <2l:Int> isa OTHER*/
1278 if (unlikely(!var23)) {
1279 var_class_name26 = type_core__Int.name;
1280 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name26);
1281 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 735);
1282 fatal_exit(1);
1283 }
1284 var27 = var18 * 2l;
1285 var21 = var27;
1286 goto RET_LABEL22;
1287 RET_LABEL22:(void)0;
1288 }
1289 }
1290 {
1291 { /* Inline kernel#Int#+ (var21,2l) on <var21:Int> */
1292 /* Covariant cast for argument 0 (i) <2l:Int> isa OTHER */
1293 /* <2l:Int> isa OTHER */
1294 var30 = 1; /* easy <2l:Int> isa OTHER*/
1295 if (unlikely(!var30)) {
1296 var_class_name33 = type_core__Int.name;
1297 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name33);
1298 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 731);
1299 fatal_exit(1);
1300 }
1301 var34 = var21 + 2l;
1302 var28 = var34;
1303 goto RET_LABEL29;
1304 RET_LABEL29:(void)0;
1305 }
1306 }
1307 {
1308 { /* Inline bytes#Bytes#capacity= (self,var28) on <self:Bytes> */
1309 self->attrs[COLOR_core__bytes__Bytes___capacity].l = var28; /* _capacity on <self:Bytes> */
1310 RET_LABEL35:(void)0;
1311 }
1312 }
1313 } else {
1314 goto BREAK_label;
1315 }
1316 }
1317 BREAK_label: (void)0;
1318 var36 = NULL/*special!*/;
1319 {
1320 { /* Inline bytes#Bytes#capacity (self) on <self:Bytes> */
1321 var39 = self->attrs[COLOR_core__bytes__Bytes___capacity].l; /* _capacity on <self:Bytes> */
1322 var37 = var39;
1323 RET_LABEL38:(void)0;
1324 }
1325 }
1326 {
1327 { /* Inline native#NativeString#new (var36,var37) on <var36:NativeString> */
1328 var42 = (char*)nit_alloc(var37);
1329 var40 = var42;
1330 goto RET_LABEL41;
1331 RET_LABEL41:(void)0;
1332 }
1333 }
1334 var_ns = var40;
1335 {
1336 { /* Inline bytes#Bytes#items (self) on <self:Bytes> */
1337 var45 = self->attrs[COLOR_core__bytes__Bytes___items].str; /* _items on <self:Bytes> */
1338 var43 = var45;
1339 RET_LABEL44:(void)0;
1340 }
1341 }
1342 {
1343 { /* Inline bytes#Bytes#length (self) on <self:Bytes> */
1344 var48 = self->attrs[COLOR_core__bytes__Bytes___length].l; /* _length on <self:Bytes> */
1345 var46 = var48;
1346 RET_LABEL47:(void)0;
1347 }
1348 }
1349 {
1350 { /* Inline native#NativeString#copy_to (var43,var_ns,var46,0l,0l) on <var43:NativeString> */
1351 memmove(var_ns+0l,var43+0l,var46);
1352 RET_LABEL49:(void)0;
1353 }
1354 }
1355 {
1356 { /* Inline bytes#Bytes#items= (self,var_ns) on <self:Bytes> */
1357 self->attrs[COLOR_core__bytes__Bytes___items].str = var_ns; /* _items on <self:Bytes> */
1358 RET_LABEL50:(void)0;
1359 }
1360 }
1361 RET_LABEL:;
1362 }
1363 /* method bytes#Bytes#to_s for (self: Bytes): String */
1364 val* core___core__Bytes___core__abstract_text__Object__to_s(val* self) {
1365 val* var /* : String */;
1366 val* var_b /* var b: Bytes */;
1367 char* var2 /* : NativeString */;
1368 char* var4 /* : NativeString */;
1369 long var5 /* : Int */;
1370 long var7 /* : Int */;
1371 val* var8 /* : FlatString */;
1372 val* var_r /* var r: FlatString */;
1373 char* var9 /* : NativeString */;
1374 char* var11 /* : NativeString */;
1375 short int var12 /* : Bool */;
1376 val* var_other /* var other: nullable Object */;
1377 val* var14 /* : nullable Object */;
1378 short int var15 /* : Bool */;
1379 short int var16 /* : Bool */;
1380 {
1381 { /* Inline bytes#Bytes#persisted= (self,1) on <self:Bytes> */
1382 self->attrs[COLOR_core__bytes__Bytes___persisted].s = 1; /* _persisted on <self:Bytes> */
1383 RET_LABEL1:(void)0;
1384 }
1385 }
1386 var_b = self;
1387 {
1388 { /* Inline bytes#Bytes#items (var_b) on <var_b:Bytes> */
1389 var4 = var_b->attrs[COLOR_core__bytes__Bytes___items].str; /* _items on <var_b:Bytes> */
1390 var2 = var4;
1391 RET_LABEL3:(void)0;
1392 }
1393 }
1394 {
1395 { /* Inline bytes#Bytes#length (self) on <self:Bytes> */
1396 var7 = self->attrs[COLOR_core__bytes__Bytes___length].l; /* _length on <self:Bytes> */
1397 var5 = var7;
1398 RET_LABEL6:(void)0;
1399 }
1400 }
1401 {
1402 var8 = core__flat___NativeString___to_s_with_length(var2, var5);
1403 }
1404 var_r = var8;
1405 {
1406 { /* Inline bytes#Bytes#items (self) on <self:Bytes> */
1407 var11 = self->attrs[COLOR_core__bytes__Bytes___items].str; /* _items on <self:Bytes> */
1408 var9 = var11;
1409 RET_LABEL10:(void)0;
1410 }
1411 }
1412 {
1413 { /* Inline kernel#Object#!= (var_r,var9) on <var_r:FlatString> */
1414 var14 = BOX_core__NativeString(var9); /* autobox from NativeString to nullable Object */
1415 var_other = var14;
1416 {
1417 var15 = ((short int(*)(val* self, val* p0))(var_r->class->vft[COLOR_core__kernel__Object___61d_61d]))(var_r, var_other); /* == on <var_r:FlatString>*/
1418 }
1419 var16 = !var15;
1420 var12 = var16;
1421 goto RET_LABEL13;
1422 RET_LABEL13:(void)0;
1423 }
1424 }
1425 if (var12){
1426 {
1427 { /* Inline bytes#Bytes#persisted= (self,0) on <self:Bytes> */
1428 self->attrs[COLOR_core__bytes__Bytes___persisted].s = 0; /* _persisted on <self:Bytes> */
1429 RET_LABEL17:(void)0;
1430 }
1431 }
1432 } else {
1433 }
1434 var = var_r;
1435 goto RET_LABEL;
1436 RET_LABEL:;
1437 return var;
1438 }
1439 /* method bytes#Bytes#iterator for (self: Bytes): Iterator[Byte] */
1440 val* core___core__Bytes___core__abstract_collection__Collection__iterator(val* self) {
1441 val* var /* : Iterator[Byte] */;
1442 val* var1 /* : BytesIterator */;
1443 var1 = NEW_core__bytes__BytesIterator(&type_core__bytes__BytesIterator);
1444 {
1445 core__bytes___core__bytes__BytesIterator___with_buffer(var1, self); /* Direct call bytes#BytesIterator#with_buffer on <var1:BytesIterator>*/
1446 }
1447 var = var1;
1448 goto RET_LABEL;
1449 RET_LABEL:;
1450 return var;
1451 }
1452 /* method bytes#Bytes#init for (self: Bytes) */
1453 void core___core__Bytes___core__kernel__Object__init(val* self) {
1454 {
1455 ((void(*)(val* self))(self->class->vft[COLOR_core___core__Bytes___core__kernel__Object__init]))(self); /* init on <self:Bytes>*/
1456 }
1457 RET_LABEL:;
1458 }
1459 /* method bytes#BytesIterator#tgt for (self: BytesIterator): NativeString */
1460 char* core__bytes___core__bytes__BytesIterator___tgt(val* self) {
1461 char* var /* : NativeString */;
1462 char* var1 /* : NativeString */;
1463 var1 = self->attrs[COLOR_core__bytes__BytesIterator___tgt].str; /* _tgt on <self:BytesIterator> */
1464 var = var1;
1465 RET_LABEL:;
1466 return var;
1467 }
1468 /* method bytes#BytesIterator#tgt= for (self: BytesIterator, NativeString) */
1469 void core__bytes___core__bytes__BytesIterator___tgt_61d(val* self, char* p0) {
1470 self->attrs[COLOR_core__bytes__BytesIterator___tgt].str = p0; /* _tgt on <self:BytesIterator> */
1471 RET_LABEL:;
1472 }
1473 /* method bytes#BytesIterator#index for (self: BytesIterator): Int */
1474 long core__bytes___core__bytes__BytesIterator___core__abstract_collection__IndexedIterator__index(val* self) {
1475 long var /* : Int */;
1476 long var1 /* : Int */;
1477 var1 = self->attrs[COLOR_core__bytes__BytesIterator___index].l; /* _index on <self:BytesIterator> */
1478 var = var1;
1479 RET_LABEL:;
1480 return var;
1481 }
1482 /* method bytes#BytesIterator#index= for (self: BytesIterator, Int) */
1483 void core__bytes___core__bytes__BytesIterator___index_61d(val* self, long p0) {
1484 self->attrs[COLOR_core__bytes__BytesIterator___index].l = p0; /* _index on <self:BytesIterator> */
1485 RET_LABEL:;
1486 }
1487 /* method bytes#BytesIterator#max for (self: BytesIterator): Int */
1488 long core__bytes___core__bytes__BytesIterator___max(val* self) {
1489 long var /* : Int */;
1490 long var1 /* : Int */;
1491 var1 = self->attrs[COLOR_core__bytes__BytesIterator___max].l; /* _max on <self:BytesIterator> */
1492 var = var1;
1493 RET_LABEL:;
1494 return var;
1495 }
1496 /* method bytes#BytesIterator#max= for (self: BytesIterator, Int) */
1497 void core__bytes___core__bytes__BytesIterator___max_61d(val* self, long p0) {
1498 self->attrs[COLOR_core__bytes__BytesIterator___max].l = p0; /* _max on <self:BytesIterator> */
1499 RET_LABEL:;
1500 }
1501 /* method bytes#BytesIterator#with_buffer for (self: BytesIterator, Bytes) */
1502 void core__bytes___core__bytes__BytesIterator___with_buffer(val* self, val* p0) {
1503 val* var_b /* var b: Bytes */;
1504 char* var /* : NativeString */;
1505 char* var2 /* : NativeString */;
1506 long var3 /* : Int */;
1507 long var5 /* : Int */;
1508 var_b = p0;
1509 {
1510 { /* Inline bytes#Bytes#items (var_b) on <var_b:Bytes> */
1511 var2 = var_b->attrs[COLOR_core__bytes__Bytes___items].str; /* _items on <var_b:Bytes> */
1512 var = var2;
1513 RET_LABEL1:(void)0;
1514 }
1515 }
1516 {
1517 { /* Inline bytes#Bytes#length (var_b) on <var_b:Bytes> */
1518 var5 = var_b->attrs[COLOR_core__bytes__Bytes___length].l; /* _length on <var_b:Bytes> */
1519 var3 = var5;
1520 RET_LABEL4:(void)0;
1521 }
1522 }
1523 {
1524 ((void(*)(val* self, char* p0))(self->class->vft[COLOR_core__bytes__BytesIterator__tgt_61d]))(self, var); /* tgt= on <self:BytesIterator>*/
1525 }
1526 {
1527 ((void(*)(val* self, long p0))(self->class->vft[COLOR_core__bytes__BytesIterator__index_61d]))(self, 0l); /* index= on <self:BytesIterator>*/
1528 }
1529 {
1530 ((void(*)(val* self, long p0))(self->class->vft[COLOR_core__bytes__BytesIterator__max_61d]))(self, var3); /* max= on <self:BytesIterator>*/
1531 }
1532 {
1533 ((void(*)(val* self))(self->class->vft[COLOR_core__kernel__Object__init]))(self); /* init on <self:BytesIterator>*/
1534 }
1535 RET_LABEL:;
1536 }
1537 /* method bytes#BytesIterator#is_ok for (self: BytesIterator): Bool */
1538 short int core__bytes___core__bytes__BytesIterator___core__abstract_collection__Iterator__is_ok(val* self) {
1539 short int var /* : Bool */;
1540 long var1 /* : Int */;
1541 long var3 /* : Int */;
1542 long var4 /* : Int */;
1543 long var6 /* : Int */;
1544 short int var7 /* : Bool */;
1545 short int var9 /* : Bool */;
1546 int cltype;
1547 int idtype;
1548 const char* var_class_name;
1549 short int var10 /* : Bool */;
1550 {
1551 { /* Inline bytes#BytesIterator#index (self) on <self:BytesIterator> */
1552 var3 = self->attrs[COLOR_core__bytes__BytesIterator___index].l; /* _index on <self:BytesIterator> */
1553 var1 = var3;
1554 RET_LABEL2:(void)0;
1555 }
1556 }
1557 {
1558 { /* Inline bytes#BytesIterator#max (self) on <self:BytesIterator> */
1559 var6 = self->attrs[COLOR_core__bytes__BytesIterator___max].l; /* _max on <self:BytesIterator> */
1560 var4 = var6;
1561 RET_LABEL5:(void)0;
1562 }
1563 }
1564 {
1565 { /* Inline kernel#Int#< (var1,var4) on <var1:Int> */
1566 /* Covariant cast for argument 0 (i) <var4:Int> isa OTHER */
1567 /* <var4:Int> isa OTHER */
1568 var9 = 1; /* easy <var4:Int> isa OTHER*/
1569 if (unlikely(!var9)) {
1570 var_class_name = type_core__Int.name;
1571 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name);
1572 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 728);
1573 fatal_exit(1);
1574 }
1575 var10 = var1 < var4;
1576 var7 = var10;
1577 goto RET_LABEL8;
1578 RET_LABEL8:(void)0;
1579 }
1580 }
1581 var = var7;
1582 goto RET_LABEL;
1583 RET_LABEL:;
1584 return var;
1585 }
1586 /* method bytes#BytesIterator#next for (self: BytesIterator) */
1587 void core__bytes___core__bytes__BytesIterator___core__abstract_collection__Iterator__next(val* self) {
1588 val* var_ /* var : BytesIterator */;
1589 long var /* : Int */;
1590 long var2 /* : Int */;
1591 long var3 /* : Int */;
1592 short int var5 /* : Bool */;
1593 int cltype;
1594 int idtype;
1595 const char* var_class_name;
1596 long var6 /* : Int */;
1597 var_ = self;
1598 {
1599 { /* Inline bytes#BytesIterator#index (var_) on <var_:BytesIterator> */
1600 var2 = var_->attrs[COLOR_core__bytes__BytesIterator___index].l; /* _index on <var_:BytesIterator> */
1601 var = var2;
1602 RET_LABEL1:(void)0;
1603 }
1604 }
1605 {
1606 { /* Inline kernel#Int#+ (var,1l) on <var:Int> */
1607 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
1608 /* <1l:Int> isa OTHER */
1609 var5 = 1; /* easy <1l:Int> isa OTHER*/
1610 if (unlikely(!var5)) {
1611 var_class_name = type_core__Int.name;
1612 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name);
1613 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 731);
1614 fatal_exit(1);
1615 }
1616 var6 = var + 1l;
1617 var3 = var6;
1618 goto RET_LABEL4;
1619 RET_LABEL4:(void)0;
1620 }
1621 }
1622 {
1623 { /* Inline bytes#BytesIterator#index= (var_,var3) on <var_:BytesIterator> */
1624 var_->attrs[COLOR_core__bytes__BytesIterator___index].l = var3; /* _index on <var_:BytesIterator> */
1625 RET_LABEL7:(void)0;
1626 }
1627 }
1628 RET_LABEL:;
1629 }
1630 /* method bytes#BytesIterator#item for (self: BytesIterator): Byte */
1631 unsigned char core__bytes___core__bytes__BytesIterator___core__abstract_collection__Iterator__item(val* self) {
1632 unsigned char var /* : Byte */;
1633 char* var1 /* : NativeString */;
1634 char* var3 /* : NativeString */;
1635 long var4 /* : Int */;
1636 long var6 /* : Int */;
1637 unsigned char var7 /* : Byte */;
1638 unsigned char var9 /* : Byte */;
1639 {
1640 { /* Inline bytes#BytesIterator#tgt (self) on <self:BytesIterator> */
1641 var3 = self->attrs[COLOR_core__bytes__BytesIterator___tgt].str; /* _tgt on <self:BytesIterator> */
1642 var1 = var3;
1643 RET_LABEL2:(void)0;
1644 }
1645 }
1646 {
1647 { /* Inline bytes#BytesIterator#index (self) on <self:BytesIterator> */
1648 var6 = self->attrs[COLOR_core__bytes__BytesIterator___index].l; /* _index on <self:BytesIterator> */
1649 var4 = var6;
1650 RET_LABEL5:(void)0;
1651 }
1652 }
1653 {
1654 { /* Inline native#NativeString#[] (var1,var4) on <var1:NativeString> */
1655 var9 = (unsigned char)((int)var1[var4]);
1656 var7 = var9;
1657 goto RET_LABEL8;
1658 RET_LABEL8:(void)0;
1659 }
1660 }
1661 var = var7;
1662 goto RET_LABEL;
1663 RET_LABEL:;
1664 return var;
1665 }
1666 /* method bytes#BytesIterator#item for (self: Iterator[nullable Object]): nullable Object */
1667 val* VIRTUAL_core__bytes___core__bytes__BytesIterator___core__abstract_collection__Iterator__item(val* self) {
1668 val* var /* : nullable Object */;
1669 unsigned char var1 /* : Byte */;
1670 val* var2 /* : nullable Object */;
1671 var1 = core__bytes___core__bytes__BytesIterator___core__abstract_collection__Iterator__item(self);
1672 var2 = BOX_core__Byte(var1); /* autobox from Byte to nullable Object */
1673 var = var2;
1674 RET_LABEL:;
1675 return var;
1676 }
1677 /* method bytes#BytesIterator#init for (self: BytesIterator) */
1678 void core__bytes___core__bytes__BytesIterator___core__kernel__Object__init(val* self) {
1679 {
1680 ((void(*)(val* self))(self->class->vft[COLOR_core__bytes___core__bytes__BytesIterator___core__kernel__Object__init]))(self); /* init on <self:BytesIterator>*/
1681 }
1682 RET_LABEL:;
1683 }