1 #include "file.sep.0.h"
2 /* method file#Object#printn for (self: Object, Array[Object]) */
3 void file__Object__printn(val
* self
, val
* p0
) {
4 val
* var_objects
/* var objects: Array[Object] */;
5 val
* var
/* : OFStream */;
6 val
* var1
/* : String */;
8 var
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_file__Object__stdout
]))(self
) /* stdout on <self:Object>*/;
9 var1
= ((val
* (*)(val
*))(var_objects
->class->vft
[COLOR_string__Object__to_s
]))(var_objects
) /* to_s on <var_objects:Array[Object]>*/;
10 ((void (*)(val
*, val
*))(var
->class->vft
[COLOR_stream__OStream__write
]))(var
, var1
) /* write on <var:OFStream>*/;
13 /* method file#Object#printn for (self: Object, Array[Object]) */
14 void VIRTUAL_file__Object__printn(val
* self
, val
* p0
) {
15 file__Object__printn(self
, p0
);
18 /* method file#Object#print for (self: Object, Object) */
19 void file__Object__print(val
* self
, val
* p0
) {
20 val
* var_object
/* var object: Object */;
21 val
* var
/* : OFStream */;
22 val
* var1
/* : String */;
23 val
* var2
/* : OFStream */;
25 val
* var3
/* : String */;
26 char* var4
/* : NativeString */;
27 long var5
/* : Int */;
28 val
* var6
/* : String */;
30 var
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_file__Object__stdout
]))(self
) /* stdout on <self:Object>*/;
31 var1
= ((val
* (*)(val
*))(var_object
->class->vft
[COLOR_string__Object__to_s
]))(var_object
) /* to_s on <var_object:Object>*/;
32 ((void (*)(val
*, val
*))(var
->class->vft
[COLOR_stream__OStream__write
]))(var
, var1
) /* write on <var:OFStream>*/;
33 var2
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_file__Object__stdout
]))(self
) /* stdout on <self:Object>*/;
39 var6
= string__NativeString__to_s_with_length(var4
, var5
);
43 ((void (*)(val
*, val
*))(var2
->class->vft
[COLOR_stream__OStream__write
]))(var2
, var3
) /* write on <var2:OFStream>*/;
46 /* method file#Object#print for (self: Object, Object) */
47 void VIRTUAL_file__Object__print(val
* self
, val
* p0
) {
48 file__Object__print(self
, p0
);
51 /* method file#Object#getc for (self: Object): Char */
52 char file__Object__getc(val
* self
) {
53 char var
/* : Char */;
54 val
* var1
/* : Stdin */;
55 long var2
/* : Int */;
56 char var3
/* : Char */;
57 char var5
/* : Char */;
58 var1
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_file__Object__stdin
]))(self
) /* stdin on <self:Object>*/;
59 var2
= ((long (*)(val
*))(var1
->class->vft
[COLOR_stream__IStream__read_char
]))(var1
) /* read_char on <var1:Stdin>*/;
60 { /* Inline kernel#Int#ascii (var2) */
71 /* method file#Object#getc for (self: Object): Char */
72 char VIRTUAL_file__Object__getc(val
* self
) {
73 char var
/* : Char */;
74 char var1
/* : Char */;
75 var1
= file__Object__getc(self
);
80 /* method file#Object#gets for (self: Object): String */
81 val
* file__Object__gets(val
* self
) {
82 val
* var
/* : String */;
83 val
* var1
/* : Stdin */;
84 val
* var2
/* : String */;
85 var1
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_file__Object__stdin
]))(self
) /* stdin on <self:Object>*/;
86 var2
= ((val
* (*)(val
*))(var1
->class->vft
[COLOR_stream__IStream__read_line
]))(var1
) /* read_line on <var1:Stdin>*/;
92 /* method file#Object#gets for (self: Object): String */
93 val
* VIRTUAL_file__Object__gets(val
* self
) {
94 val
* var
/* : String */;
95 val
* var1
/* : String */;
96 var1
= file__Object__gets(self
);
101 /* method file#Object#getcwd for (self: Object): String */
102 val
* file__Object__getcwd(val
* self
) {
103 val
* var
/* : String */;
104 char* var1
/* : NativeString */;
105 val
* var2
/* : String */;
106 var1
= ((char* (*)(val
*))(self
->class->vft
[COLOR_file__Object__file_getcwd
]))(self
) /* file_getcwd on <self:Object>*/;
107 var2
= string__NativeString__to_s(var1
);
113 /* method file#Object#getcwd for (self: Object): String */
114 val
* VIRTUAL_file__Object__getcwd(val
* self
) {
115 val
* var
/* : String */;
116 val
* var1
/* : String */;
117 var1
= file__Object__getcwd(self
);
122 /* method file#Object#file_getcwd for (self: Object): NativeString */
123 char* file__Object__file_getcwd(val
* self
) {
124 char* var
/* : NativeString */;
125 char* var1
/* : NativeString */;
126 var1
= string_NativeString_NativeString_file_getcwd_0(self
);
132 /* method file#Object#file_getcwd for (self: Object): NativeString */
133 char* VIRTUAL_file__Object__file_getcwd(val
* self
) {
134 char* var
/* : NativeString */;
135 char* var1
/* : NativeString */;
136 var1
= file__Object__file_getcwd(self
);
141 /* method file#FStream#path for (self: FStream): nullable String */
142 val
* file__FStream__path(val
* self
) {
143 val
* var
/* : nullable String */;
144 val
* var1
/* : nullable String */;
145 var1
= self
->attrs
[COLOR_file__FStream___path
].val
; /* _path on <self:FStream> */
150 /* method file#FStream#path for (self: Object): nullable String */
151 val
* VIRTUAL_file__FStream__path(val
* self
) {
152 val
* var
/* : nullable String */;
153 val
* var1
/* : nullable String */;
154 var1
= file__FStream__path(self
);
159 /* method file#FStream#file_stat for (self: FStream): FileStat */
160 void* file__FStream__file_stat(val
* self
) {
161 void* var
/* : FileStat */;
162 val
* var1
/* : nullable NativeFile */;
163 void* var2
/* : FileStat */;
164 var1
= self
->attrs
[COLOR_file__FStream___file
].val
; /* _file on <self:FStream> */
166 fprintf(stderr
, "Runtime error: %s", "Reciever is null");
167 fprintf(stderr
, " (%s:%d)\n", "lib/standard/file.nit", 66);
170 var2
= ((void* (*)(val
*))(var1
->class->vft
[COLOR_file__NativeFile__file_stat
]))(var1
) /* file_stat on <var1:nullable NativeFile>*/;
177 /* method file#FStream#file_stat for (self: Object): FileStat */
178 void* VIRTUAL_file__FStream__file_stat(val
* self
) {
179 void* var
/* : FileStat */;
180 void* var1
/* : FileStat */;
181 var1
= file__FStream__file_stat(self
);
186 /* method file#FStream#init for (self: FStream) */
187 void file__FStream__init(val
* self
) {
190 /* method file#FStream#init for (self: Object) */
191 void VIRTUAL_file__FStream__init(val
* self
) {
192 file__FStream__init(self
);
195 /* method file#IFStream#reopen for (self: IFStream) */
196 void file__IFStream__reopen(val
* self
) {
197 short int var
/* : Bool */;
198 short int var1
/* : Bool */;
199 void* var2
/* : NativeFile */;
200 val
* var3
/* : nullable String */;
201 char* var4
/* : NativeString */;
202 void* var5
/* : NativeFile */;
203 val
* var6
/* : nullable NativeFile */;
204 short int var7
/* : Bool */;
205 long var8
/* : Int */;
206 val
* var9
/* : nullable Buffer */;
207 var
= ((short int (*)(val
*))(self
->class->vft
[COLOR_stream__IStream__eof
]))(self
) /* eof on <self:IFStream>*/;
210 ((void (*)(val
*))(self
->class->vft
[COLOR_stream__IOS__close
]))(self
) /* close on <self:IFStream>*/;
213 var2
= NULL
/*special!*/;
214 var3
= self
->attrs
[COLOR_file__FStream___path
].val
; /* _path on <self:IFStream> */
216 fprintf(stderr
, "Runtime error: %s", "Reciever is null");
217 fprintf(stderr
, " (%s:%d)\n", "lib/standard/file.nit", 80);
220 var4
= ((char* (*)(val
*))(var3
->class->vft
[COLOR_string__String__to_cstring
]))(var3
) /* to_cstring on <var3:nullable String>*/;
222 var5
= file__NativeFile__io_open_read(var2
, var4
);
223 var6
= BOX_file__NativeFile(var5
); /* autobox from NativeFile to nullable NativeFile */
224 self
->attrs
[COLOR_file__FStream___file
].val
= var6
; /* _file on <self:IFStream> */
226 self
->attrs
[COLOR_file__IFStream___end_reached
].s
= var7
; /* _end_reached on <self:IFStream> */
228 self
->attrs
[COLOR_stream__BufferedIStream___buffer_pos
].l
= var8
; /* _buffer_pos on <self:IFStream> */
229 var9
= self
->attrs
[COLOR_stream__BufferedIStream___buffer
].val
; /* _buffer on <self:IFStream> */
231 fprintf(stderr
, "Runtime error: %s", "Reciever is null");
232 fprintf(stderr
, " (%s:%d)\n", "lib/standard/file.nit", 83);
235 ((void (*)(val
*))(var9
->class->vft
[COLOR_abstract_collection__RemovableCollection__clear
]))(var9
) /* clear on <var9:nullable Buffer>*/;
239 /* method file#IFStream#reopen for (self: Object) */
240 void VIRTUAL_file__IFStream__reopen(val
* self
) {
241 file__IFStream__reopen(self
);
244 /* method file#IFStream#close for (self: IFStream) */
245 void file__IFStream__close(val
* self
) {
246 val
* var
/* : nullable NativeFile */;
247 long var1
/* : Int */;
248 long var_i
/* var i: Int */;
249 short int var2
/* : Bool */;
250 var
= self
->attrs
[COLOR_file__FStream___file
].val
; /* _file on <self:IFStream> */
252 fprintf(stderr
, "Runtime error: %s", "Reciever is null");
253 fprintf(stderr
, " (%s:%d)\n", "lib/standard/file.nit", 88);
256 var1
= ((long (*)(val
*))(var
->class->vft
[COLOR_file__NativeFile__io_close
]))(var
) /* io_close on <var:nullable NativeFile>*/;
260 self
->attrs
[COLOR_file__IFStream___end_reached
].s
= var2
; /* _end_reached on <self:IFStream> */
263 /* method file#IFStream#close for (self: Object) */
264 void VIRTUAL_file__IFStream__close(val
* self
) {
265 file__IFStream__close(self
);
268 /* method file#IFStream#fill_buffer for (self: IFStream) */
269 void file__IFStream__fill_buffer(val
* self
) {
270 val
* var
/* : nullable NativeFile */;
271 val
* var1
/* : nullable Buffer */;
272 char* var2
/* : NativeString */;
273 val
* var3
/* : nullable Buffer */;
274 long var4
/* : Int */;
275 long var5
/* : Int */;
276 long var_nb
/* var nb: Int */;
277 long var6
/* : Int */;
278 short int var7
/* : Bool */;
279 short int var9
/* : Bool */;
282 const char* var_class_name
;
283 short int var10
/* : Bool */;
284 short int var11
/* : Bool */;
285 long var12
/* : Int */;
286 val
* var13
/* : nullable Buffer */;
287 long var14
/* : Int */;
288 var
= self
->attrs
[COLOR_file__FStream___file
].val
; /* _file on <self:IFStream> */
289 var1
= self
->attrs
[COLOR_stream__BufferedIStream___buffer
].val
; /* _buffer on <self:IFStream> */
291 fprintf(stderr
, "Runtime error: %s", "Reciever is null");
292 fprintf(stderr
, " (%s:%d)\n", "lib/standard/file.nit", 94);
295 var2
= var1
->attrs
[COLOR_string__AbstractString___items
].str
; /* _items on <var1:nullable Buffer> */
296 var3
= self
->attrs
[COLOR_stream__BufferedIStream___buffer
].val
; /* _buffer on <self:IFStream> */
298 fprintf(stderr
, "Runtime error: %s", "Reciever is null");
299 fprintf(stderr
, " (%s:%d)\n", "lib/standard/file.nit", 94);
302 var4
= var3
->attrs
[COLOR_string__Buffer___capacity
].l
; /* _capacity on <var3:nullable Buffer> */
304 fprintf(stderr
, "Runtime error: %s", "Reciever is null");
305 fprintf(stderr
, " (%s:%d)\n", "lib/standard/file.nit", 94);
308 var5
= ((long (*)(val
*, char*, long))(var
->class->vft
[COLOR_file__NativeFile__io_read
]))(var
, var2
, var4
) /* io_read on <var:nullable NativeFile>*/;
312 { /* Inline kernel#Int#<= (var_nb,var6) */
313 /* Covariant cast for argument 0 (i) <var6:Int> isa OTHER */
314 /* <var6:Int> isa OTHER */
315 var9
= 1; /* easy <var6:Int> isa OTHER*/
317 var_class_name
= type_kernel__Int
.name
;
318 fprintf(stderr
, "Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
319 fprintf(stderr
, " (%s:%d)\n", "lib/standard/kernel.nit", 260);
322 var10
= var_nb
<= var6
;
329 self
->attrs
[COLOR_file__IFStream___end_reached
].s
= var11
; /* _end_reached on <self:IFStream> */
334 var13
= self
->attrs
[COLOR_stream__BufferedIStream___buffer
].val
; /* _buffer on <self:IFStream> */
336 fprintf(stderr
, "Runtime error: %s", "Reciever is null");
337 fprintf(stderr
, " (%s:%d)\n", "lib/standard/file.nit", 99);
340 var13
->attrs
[COLOR_array__AbstractArrayRead___length
].l
= var_nb
; /* _length on <var13:nullable Buffer> */
342 self
->attrs
[COLOR_stream__BufferedIStream___buffer_pos
].l
= var14
; /* _buffer_pos on <self:IFStream> */
345 /* method file#IFStream#fill_buffer for (self: Object) */
346 void VIRTUAL_file__IFStream__fill_buffer(val
* self
) {
347 file__IFStream__fill_buffer(self
);
350 /* method file#IFStream#end_reached for (self: IFStream): Bool */
351 short int file__IFStream__end_reached(val
* self
) {
352 short int var
/* : Bool */;
353 short int var1
/* : Bool */;
354 var1
= self
->attrs
[COLOR_file__IFStream___end_reached
].s
; /* _end_reached on <self:IFStream> */
359 /* method file#IFStream#end_reached for (self: Object): Bool */
360 short int VIRTUAL_file__IFStream__end_reached(val
* self
) {
361 short int var
/* : Bool */;
362 short int var1
/* : Bool */;
363 var1
= file__IFStream__end_reached(self
);
368 /* method file#IFStream#open for (self: IFStream, String) */
369 void file__IFStream__open(val
* self
, val
* p0
) {
370 val
* var_path
/* var path: String */;
371 long var
/* : Int */;
372 void* var1
/* : NativeFile */;
373 val
* var2
/* : nullable String */;
374 char* var3
/* : NativeString */;
375 void* var4
/* : NativeFile */;
376 val
* var5
/* : nullable NativeFile */;
377 val
* var6
/* : nullable NativeFile */;
378 val
* var7
/* : null */;
379 short int var8
/* : Bool */;
381 ((void (*)(val
*))(self
->class->vft
[COLOR_file__FStream__init
]))(self
) /* init on <self:IFStream>*/;
382 ((void (*)(val
*))(self
->class->vft
[COLOR_stream__BufferedIStream__init
]))(self
) /* init on <self:IFStream>*/;
383 self
->attrs
[COLOR_file__FStream___path
].val
= var_path
; /* _path on <self:IFStream> */
385 ((void (*)(val
*, long))(self
->class->vft
[COLOR_stream__BufferedIStream__prepare_buffer
]))(self
, var
) /* prepare_buffer on <self:IFStream>*/;
386 var1
= NULL
/*special!*/;
387 var2
= self
->attrs
[COLOR_file__FStream___path
].val
; /* _path on <self:IFStream> */
389 fprintf(stderr
, "Runtime error: %s", "Reciever is null");
390 fprintf(stderr
, " (%s:%d)\n", "lib/standard/file.nit", 111);
393 var3
= ((char* (*)(val
*))(var2
->class->vft
[COLOR_string__String__to_cstring
]))(var2
) /* to_cstring on <var2:nullable String>*/;
395 var4
= file__NativeFile__io_open_read(var1
, var3
);
396 var5
= BOX_file__NativeFile(var4
); /* autobox from NativeFile to nullable NativeFile */
397 self
->attrs
[COLOR_file__FStream___file
].val
= var5
; /* _file on <self:IFStream> */
398 var6
= self
->attrs
[COLOR_file__FStream___file
].val
; /* _file on <self:IFStream> */
401 var8
= 0; /* is null */
403 var8
= 1; /* arg is null and recv is not */
406 fprintf(stderr
, "Runtime error: %s", "Assert \'cant_open_file\' failed");
407 fprintf(stderr
, " (%s:%d)\n", "lib/standard/file.nit", 112);
412 /* method file#IFStream#open for (self: Object, String) */
413 void VIRTUAL_file__IFStream__open(val
* self
, val
* p0
) {
414 file__IFStream__open(self
, p0
);
417 /* method file#IFStream#init for (self: IFStream) */
418 void file__IFStream__init(val
* self
) {
419 ((void (*)(val
*))(self
->class->vft
[COLOR_file__FStream__init
]))(self
) /* init on <self:IFStream>*/;
420 ((void (*)(val
*))(self
->class->vft
[COLOR_stream__BufferedIStream__init
]))(self
) /* init on <self:IFStream>*/;
423 /* method file#IFStream#init for (self: Object) */
424 void VIRTUAL_file__IFStream__init(val
* self
) {
425 file__IFStream__init(self
);
428 /* method file#IFStream#without_file for (self: IFStream) */
429 void file__IFStream__without_file(val
* self
) {
430 ((void (*)(val
*))(self
->class->vft
[COLOR_file__FStream__init
]))(self
) /* init on <self:IFStream>*/;
431 ((void (*)(val
*))(self
->class->vft
[COLOR_stream__BufferedIStream__init
]))(self
) /* init on <self:IFStream>*/;
434 /* method file#IFStream#without_file for (self: Object) */
435 void VIRTUAL_file__IFStream__without_file(val
* self
) {
436 file__IFStream__without_file(self
);
439 /* method file#OFStream#write for (self: OFStream, String) */
440 void file__OFStream__write(val
* self
, val
* p0
) {
441 val
* var_s
/* var s: String */;
442 short int var
/* : Bool */;
443 char* var1
/* : NativeString */;
444 long var2
/* : Int */;
446 var
= self
->attrs
[COLOR_file__OFStream___writable
].s
; /* _writable on <self:OFStream> */
448 fprintf(stderr
, "Runtime error: %s", "Assert failed");
449 fprintf(stderr
, " (%s:%d)\n", "lib/standard/file.nit", 126);
452 var1
= ((char* (*)(val
*))(var_s
->class->vft
[COLOR_string__String__to_cstring
]))(var_s
) /* to_cstring on <var_s:String>*/;
453 var2
= ((long (*)(val
*))(var_s
->class->vft
[COLOR_abstract_collection__Collection__length
]))(var_s
) /* length on <var_s:String>*/;
454 ((void (*)(val
*, char*, long))(self
->class->vft
[COLOR_file__OFStream__write_native
]))(self
, var1
, var2
) /* write_native on <self:OFStream>*/;
457 /* method file#OFStream#write for (self: Object, String) */
458 void VIRTUAL_file__OFStream__write(val
* self
, val
* p0
) {
459 file__OFStream__write(self
, p0
);
462 /* method file#OFStream#is_writable for (self: OFStream): Bool */
463 short int file__OFStream__is_writable(val
* self
) {
464 short int var
/* : Bool */;
465 short int var1
/* : Bool */;
466 var1
= self
->attrs
[COLOR_file__OFStream___writable
].s
; /* _writable on <self:OFStream> */
472 /* method file#OFStream#is_writable for (self: Object): Bool */
473 short int VIRTUAL_file__OFStream__is_writable(val
* self
) {
474 short int var
/* : Bool */;
475 short int var1
/* : Bool */;
476 var1
= file__OFStream__is_writable(self
);
481 /* method file#OFStream#close for (self: OFStream) */
482 void file__OFStream__close(val
* self
) {
483 val
* var
/* : nullable NativeFile */;
484 long var1
/* : Int */;
485 long var_i
/* var i: Int */;
486 short int var2
/* : Bool */;
487 var
= self
->attrs
[COLOR_file__FStream___file
].val
; /* _file on <self:OFStream> */
489 fprintf(stderr
, "Runtime error: %s", "Reciever is null");
490 fprintf(stderr
, " (%s:%d)\n", "lib/standard/file.nit", 134);
493 var1
= ((long (*)(val
*))(var
->class->vft
[COLOR_file__NativeFile__io_close
]))(var
) /* io_close on <var:nullable NativeFile>*/;
497 self
->attrs
[COLOR_file__OFStream___writable
].s
= var2
; /* _writable on <self:OFStream> */
500 /* method file#OFStream#close for (self: Object) */
501 void VIRTUAL_file__OFStream__close(val
* self
) {
502 file__OFStream__close(self
);
505 /* method file#OFStream#write_native for (self: OFStream, NativeString, Int) */
506 void file__OFStream__write_native(val
* self
, char* p0
, long p1
) {
507 char* var_native
/* var native: NativeString */;
508 long var_len
/* var len: Int */;
509 short int var
/* : Bool */;
510 val
* var1
/* : nullable NativeFile */;
511 long var2
/* : Int */;
512 long var_err
/* var err: Int */;
513 short int var3
/* : Bool */;
514 short int var5
/* : Bool */;
515 short int var6
/* : Bool */;
517 val
* var7
/* : String */;
518 char* var8
/* : NativeString */;
519 long var9
/* : Int */;
520 val
* var10
/* : String */;
521 static val
* varonce11
;
522 val
* var12
/* : String */;
523 char* var13
/* : NativeString */;
524 long var14
/* : Int */;
525 val
* var15
/* : String */;
526 static val
* varonce16
;
527 val
* var17
/* : String */;
528 char* var18
/* : NativeString */;
529 long var19
/* : Int */;
530 val
* var20
/* : String */;
531 val
* var21
/* : Array[Object] */;
532 long var22
/* : Int */;
533 val
* var23
/* : NativeArray[Object] */;
534 val
* var24
/* : Object */;
535 val
* var25
/* : Object */;
538 var
= self
->attrs
[COLOR_file__OFStream___writable
].s
; /* _writable on <self:OFStream> */
540 fprintf(stderr
, "Runtime error: %s", "Assert failed");
541 fprintf(stderr
, " (%s:%d)\n", "lib/standard/file.nit", 144);
544 var1
= self
->attrs
[COLOR_file__FStream___file
].val
; /* _file on <self:OFStream> */
546 fprintf(stderr
, "Runtime error: %s", "Reciever is null");
547 fprintf(stderr
, " (%s:%d)\n", "lib/standard/file.nit", 145);
550 var2
= ((long (*)(val
*, char*, long))(var1
->class->vft
[COLOR_file__NativeFile__io_write
]))(var1
, var_native
, var_len
) /* io_write on <var1:nullable NativeFile>*/;
553 { /* Inline kernel#Int#!= (var_err,var_len) */
554 var5
= var_err
== var_len
;
564 var8
= "Problem in writing : ";
566 var10
= string__NativeString__to_s_with_length(var8
, var9
);
575 var15
= string__NativeString__to_s_with_length(var13
, var14
);
584 var20
= string__NativeString__to_s_with_length(var18
, var19
);
588 var21
= NEW_array__Array(&type_array__Arraykernel__Object
);
589 { /* var21 = array_instance Array[Object] */
591 var23
= NEW_array__NativeArray(var22
, &type_array__NativeArraykernel__Object
);
592 ((struct instance_array__NativeArray
*)var23
)->values
[0] = (val
*) var7
;
593 var24
= BOX_kernel__Int(var_err
); /* autobox from Int to Object */
594 ((struct instance_array__NativeArray
*)var23
)->values
[1] = (val
*) var24
;
595 ((struct instance_array__NativeArray
*)var23
)->values
[2] = (val
*) var12
;
596 var25
= BOX_kernel__Int(var_len
); /* autobox from Int to Object */
597 ((struct instance_array__NativeArray
*)var23
)->values
[3] = (val
*) var25
;
598 ((struct instance_array__NativeArray
*)var23
)->values
[4] = (val
*) var17
;
599 ((void (*)(val
*, val
*, long))(var21
->class->vft
[COLOR_array__Array__with_native
]))(var21
, var23
, var22
) /* with_native on <var21:Array[Object]>*/;
600 CHECK_NEW_array__Array(var21
);
602 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_file__Object__printn
]))(self
, var21
) /* printn on <self:OFStream>*/;
607 /* method file#OFStream#write_native for (self: Object, NativeString, Int) */
608 void VIRTUAL_file__OFStream__write_native(val
* self
, char* p0
, long p1
) {
609 file__OFStream__write_native(self
, p0
, p1
);
612 /* method file#OFStream#open for (self: OFStream, String) */
613 void file__OFStream__open(val
* self
, val
* p0
) {
614 val
* var_path
/* var path: String */;
615 void* var
/* : NativeFile */;
616 char* var1
/* : NativeString */;
617 void* var2
/* : NativeFile */;
618 val
* var3
/* : nullable NativeFile */;
619 val
* var4
/* : nullable NativeFile */;
620 val
* var5
/* : null */;
621 short int var6
/* : Bool */;
622 short int var7
/* : Bool */;
624 ((void (*)(val
*))(self
->class->vft
[COLOR_file__FStream__init
]))(self
) /* init on <self:OFStream>*/;
625 var
= NULL
/*special!*/;
626 var1
= ((char* (*)(val
*))(var_path
->class->vft
[COLOR_string__String__to_cstring
]))(var_path
) /* to_cstring on <var_path:String>*/;
627 var2
= file__NativeFile__io_open_write(var
, var1
);
628 var3
= BOX_file__NativeFile(var2
); /* autobox from NativeFile to nullable NativeFile */
629 self
->attrs
[COLOR_file__FStream___file
].val
= var3
; /* _file on <self:OFStream> */
630 var4
= self
->attrs
[COLOR_file__FStream___file
].val
; /* _file on <self:OFStream> */
633 var6
= 0; /* is null */
635 var6
= 1; /* arg is null and recv is not */
638 fprintf(stderr
, "Runtime error: %s", "Assert \'cant_open_file\' failed");
639 fprintf(stderr
, " (%s:%d)\n", "lib/standard/file.nit", 156);
642 self
->attrs
[COLOR_file__FStream___path
].val
= var_path
; /* _path on <self:OFStream> */
644 self
->attrs
[COLOR_file__OFStream___writable
].s
= var7
; /* _writable on <self:OFStream> */
647 /* method file#OFStream#open for (self: Object, String) */
648 void VIRTUAL_file__OFStream__open(val
* self
, val
* p0
) {
649 file__OFStream__open(self
, p0
);
652 /* method file#OFStream#init for (self: OFStream) */
653 void file__OFStream__init(val
* self
) {
654 ((void (*)(val
*))(self
->class->vft
[COLOR_file__FStream__init
]))(self
) /* init on <self:OFStream>*/;
657 /* method file#OFStream#init for (self: Object) */
658 void VIRTUAL_file__OFStream__init(val
* self
) {
659 file__OFStream__init(self
);
662 /* method file#OFStream#without_file for (self: OFStream) */
663 void file__OFStream__without_file(val
* self
) {
664 ((void (*)(val
*))(self
->class->vft
[COLOR_file__FStream__init
]))(self
) /* init on <self:OFStream>*/;
667 /* method file#OFStream#without_file for (self: Object) */
668 void VIRTUAL_file__OFStream__without_file(val
* self
) {
669 file__OFStream__without_file(self
);
672 /* method file#Stdin#init for (self: Stdin) */
673 void file__Stdin__init(val
* self
) {
674 void* var
/* : NativeFile */;
675 void* var1
/* : NativeFile */;
676 val
* var2
/* : nullable NativeFile */;
678 val
* var3
/* : String */;
679 char* var4
/* : NativeString */;
680 long var5
/* : Int */;
681 val
* var6
/* : String */;
682 long var7
/* : Int */;
683 ((void (*)(val
*))(self
->class->vft
[COLOR_file__IFStream__init
]))(self
) /* init on <self:Stdin>*/;
684 var
= NULL
/*special!*/;
685 var1
= file__NativeFile__native_stdin(var
);
686 var2
= BOX_file__NativeFile(var1
); /* autobox from NativeFile to nullable NativeFile */
687 self
->attrs
[COLOR_file__FStream___file
].val
= var2
; /* _file on <self:Stdin> */
693 var6
= string__NativeString__to_s_with_length(var4
, var5
);
697 self
->attrs
[COLOR_file__FStream___path
].val
= var3
; /* _path on <self:Stdin> */
699 ((void (*)(val
*, long))(self
->class->vft
[COLOR_stream__BufferedIStream__prepare_buffer
]))(self
, var7
) /* prepare_buffer on <self:Stdin>*/;
702 /* method file#Stdin#init for (self: Object) */
703 void VIRTUAL_file__Stdin__init(val
* self
) {
704 file__Stdin__init(self
);
707 /* method file#Stdin#poll_in for (self: Stdin): Bool */
708 short int file__Stdin__poll_in(val
* self
) {
709 short int var
/* : Bool */;
710 short int var1
/* : Bool */;
711 var1
= file_stdin_poll_in(self
);
717 /* method file#Stdin#poll_in for (self: Object): Bool */
718 short int VIRTUAL_file__Stdin__poll_in(val
* self
) {
719 short int var
/* : Bool */;
720 short int var1
/* : Bool */;
721 var1
= file__Stdin__poll_in(self
);
726 /* method file#Stdout#init for (self: Stdout) */
727 void file__Stdout__init(val
* self
) {
728 void* var
/* : NativeFile */;
729 void* var1
/* : NativeFile */;
730 val
* var2
/* : nullable NativeFile */;
732 val
* var3
/* : String */;
733 char* var4
/* : NativeString */;
734 long var5
/* : Int */;
735 val
* var6
/* : String */;
736 short int var7
/* : Bool */;
737 ((void (*)(val
*))(self
->class->vft
[COLOR_file__OFStream__init
]))(self
) /* init on <self:Stdout>*/;
738 var
= NULL
/*special!*/;
739 var1
= file__NativeFile__native_stdout(var
);
740 var2
= BOX_file__NativeFile(var1
); /* autobox from NativeFile to nullable NativeFile */
741 self
->attrs
[COLOR_file__FStream___file
].val
= var2
; /* _file on <self:Stdout> */
745 var4
= "/dev/stdout";
747 var6
= string__NativeString__to_s_with_length(var4
, var5
);
751 self
->attrs
[COLOR_file__FStream___path
].val
= var3
; /* _path on <self:Stdout> */
753 self
->attrs
[COLOR_file__OFStream___writable
].s
= var7
; /* _writable on <self:Stdout> */
756 /* method file#Stdout#init for (self: Object) */
757 void VIRTUAL_file__Stdout__init(val
* self
) {
758 file__Stdout__init(self
);
761 /* method file#Stderr#init for (self: Stderr) */
762 void file__Stderr__init(val
* self
) {
763 void* var
/* : NativeFile */;
764 void* var1
/* : NativeFile */;
765 val
* var2
/* : nullable NativeFile */;
767 val
* var3
/* : String */;
768 char* var4
/* : NativeString */;
769 long var5
/* : Int */;
770 val
* var6
/* : String */;
771 short int var7
/* : Bool */;
772 ((void (*)(val
*))(self
->class->vft
[COLOR_file__OFStream__init
]))(self
) /* init on <self:Stderr>*/;
773 var
= NULL
/*special!*/;
774 var1
= file__NativeFile__native_stderr(var
);
775 var2
= BOX_file__NativeFile(var1
); /* autobox from NativeFile to nullable NativeFile */
776 self
->attrs
[COLOR_file__FStream___file
].val
= var2
; /* _file on <self:Stderr> */
780 var4
= "/dev/stderr";
782 var6
= string__NativeString__to_s_with_length(var4
, var5
);
786 self
->attrs
[COLOR_file__FStream___path
].val
= var3
; /* _path on <self:Stderr> */
788 self
->attrs
[COLOR_file__OFStream___writable
].s
= var7
; /* _writable on <self:Stderr> */
791 /* method file#Stderr#init for (self: Object) */
792 void VIRTUAL_file__Stderr__init(val
* self
) {
793 file__Stderr__init(self
);
796 /* method file#String#file_exists for (self: String): Bool */
797 short int file__String__file_exists(val
* self
) {
798 short int var
/* : Bool */;
799 char* var1
/* : NativeString */;
800 short int var2
/* : Bool */;
801 var1
= ((char* (*)(val
*))(self
->class->vft
[COLOR_string__String__to_cstring
]))(self
) /* to_cstring on <self:String>*/;
802 var2
= file__NativeString__file_exists(var1
);
808 /* method file#String#file_exists for (self: Object): Bool */
809 short int VIRTUAL_file__String__file_exists(val
* self
) {
810 short int var
/* : Bool */;
811 short int var1
/* : Bool */;
812 var1
= file__String__file_exists(self
);
817 /* method file#String#file_stat for (self: String): FileStat */
818 void* file__String__file_stat(val
* self
) {
819 void* var
/* : FileStat */;
820 char* var1
/* : NativeString */;
821 void* var2
/* : FileStat */;
822 var1
= ((char* (*)(val
*))(self
->class->vft
[COLOR_string__String__to_cstring
]))(self
) /* to_cstring on <self:String>*/;
823 var2
= file__NativeString__file_stat(var1
);
829 /* method file#String#file_stat for (self: Object): FileStat */
830 void* VIRTUAL_file__String__file_stat(val
* self
) {
831 void* var
/* : FileStat */;
832 void* var1
/* : FileStat */;
833 var1
= file__String__file_stat(self
);
838 /* method file#String#file_lstat for (self: String): FileStat */
839 void* file__String__file_lstat(val
* self
) {
840 void* var
/* : FileStat */;
841 char* var1
/* : NativeString */;
842 void* var2
/* : FileStat */;
843 var1
= ((char* (*)(val
*))(self
->class->vft
[COLOR_string__String__to_cstring
]))(self
) /* to_cstring on <self:String>*/;
844 var2
= file__NativeString__file_lstat(var1
);
850 /* method file#String#file_lstat for (self: Object): FileStat */
851 void* VIRTUAL_file__String__file_lstat(val
* self
) {
852 void* var
/* : FileStat */;
853 void* var1
/* : FileStat */;
854 var1
= file__String__file_lstat(self
);
859 /* method file#String#file_delete for (self: String): Bool */
860 short int file__String__file_delete(val
* self
) {
861 short int var
/* : Bool */;
862 char* var1
/* : NativeString */;
863 short int var2
/* : Bool */;
864 var1
= ((char* (*)(val
*))(self
->class->vft
[COLOR_string__String__to_cstring
]))(self
) /* to_cstring on <self:String>*/;
865 var2
= file__NativeString__file_delete(var1
);
871 /* method file#String#file_delete for (self: Object): Bool */
872 short int VIRTUAL_file__String__file_delete(val
* self
) {
873 short int var
/* : Bool */;
874 short int var1
/* : Bool */;
875 var1
= file__String__file_delete(self
);
880 /* method file#String#strip_extension for (self: String, String): String */
881 val
* file__String__strip_extension(val
* self
, val
* p0
) {
882 val
* var
/* : String */;
883 val
* var_ext
/* var ext: String */;
884 short int var1
/* : Bool */;
885 long var2
/* : Int */;
886 long var3
/* : Int */;
887 long var4
/* : Int */;
888 long var5
/* : Int */;
889 long var7
/* : Int */;
890 val
* var8
/* : String */;
892 var1
= ((short int (*)(val
*, val
*))(self
->class->vft
[COLOR_string__AbstractString__has_suffix
]))(self
, var_ext
) /* has_suffix on <self:String>*/;
895 var3
= ((long (*)(val
*))(self
->class->vft
[COLOR_abstract_collection__Collection__length
]))(self
) /* length on <self:String>*/;
896 var4
= ((long (*)(val
*))(var_ext
->class->vft
[COLOR_abstract_collection__Collection__length
]))(var_ext
) /* length on <var_ext:String>*/;
897 { /* Inline kernel#Int#- (var3,var4) */
903 var8
= ((val
* (*)(val
*, long, long))(self
->class->vft
[COLOR_string__AbstractString__substring
]))(self
, var2
, var5
) /* substring on <self:String>*/;
913 /* method file#String#strip_extension for (self: Object, String): String */
914 val
* VIRTUAL_file__String__strip_extension(val
* self
, val
* p0
) {
915 val
* var
/* : String */;
916 val
* var1
/* : String */;
917 var1
= file__String__strip_extension(self
, p0
);
922 /* method file#String#basename for (self: String, String): String */
923 val
* file__String__basename(val
* self
, val
* p0
) {
924 val
* var
/* : String */;
925 val
* var_ext
/* var ext: String */;
926 char var1
/* : Char */;
927 long var2
/* : Int */;
928 long var3
/* : Int */;
929 long var4
/* : Int */;
930 long var6
/* : Int */;
931 long var7
/* : Int */;
932 val
* var8
/* : nullable Object */;
933 long var_pos
/* var pos: Int */;
934 val
* var_n
/* var n: String */;
935 long var9
/* : Int */;
936 short int var10
/* : Bool */;
937 short int var12
/* : Bool */;
940 const char* var_class_name
;
941 short int var13
/* : Bool */;
942 long var14
/* : Int */;
943 long var15
/* : Int */;
944 long var17
/* : Int */;
945 val
* var18
/* : String */;
946 val
* var19
/* : String */;
949 var2
= self
->attrs
[COLOR_array__AbstractArrayRead___length
].l
; /* _length on <self:String> */
951 { /* Inline kernel#Int#- (var2,var3) */
957 var8
= BOX_kernel__Char(var1
); /* autobox from Char to nullable Object */
958 var7
= ((long (*)(val
*, val
*, long))(self
->class->vft
[COLOR_array__AbstractArrayRead__last_index_of_from
]))(self
, var8
, var4
) /* last_index_of_from on <self:String>*/;
962 { /* Inline kernel#Int#>= (var_pos,var9) */
963 /* Covariant cast for argument 0 (i) <var9:Int> isa OTHER */
964 /* <var9:Int> isa OTHER */
965 var12
= 1; /* easy <var9:Int> isa OTHER*/
967 var_class_name
= type_kernel__Int
.name
;
968 fprintf(stderr
, "Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
969 fprintf(stderr
, " (%s:%d)\n", "lib/standard/kernel.nit", 262);
972 var13
= var_pos
>= var9
;
979 { /* Inline kernel#Int#+ (var_pos,var14) */
980 var17
= var_pos
+ var14
;
985 var18
= ((val
* (*)(val
*, long))(self
->class->vft
[COLOR_string__AbstractString__substring_from
]))(self
, var15
) /* substring_from on <self:String>*/;
989 var19
= ((val
* (*)(val
*, val
*))(var_n
->class->vft
[COLOR_file__String__strip_extension
]))(var_n
, var_ext
) /* strip_extension on <var_n:String>*/;
995 /* method file#String#basename for (self: Object, String): String */
996 val
* VIRTUAL_file__String__basename(val
* self
, val
* p0
) {
997 val
* var
/* : String */;
998 val
* var1
/* : String */;
999 var1
= file__String__basename(self
, p0
);
1004 /* method file#String#dirname for (self: String): String */
1005 val
* file__String__dirname(val
* self
) {
1006 val
* var
/* : String */;
1007 long var1
/* : Int */;
1008 long var2
/* : Int */;
1009 long var3
/* : Int */;
1010 long var5
/* : Int */;
1011 long var_l
/* var l: Int */;
1012 short int var6
/* : Bool */;
1013 long var7
/* : Int */;
1014 short int var8
/* : Bool */;
1015 short int var10
/* : Bool */;
1018 const char* var_class_name
;
1019 short int var11
/* : Bool */;
1020 short int var_
/* var : Bool */;
1021 val
* var12
/* : nullable Object */;
1022 char var13
/* : Char */;
1023 short int var14
/* : Bool */;
1024 short int var16
/* : Bool */;
1025 char var17
/* : Char */;
1026 long var18
/* : Int */;
1027 long var19
/* : Int */;
1028 long var21
/* : Int */;
1029 char var22
/* : Char */;
1030 long var23
/* : Int */;
1031 val
* var24
/* : nullable Object */;
1032 long var_pos
/* var pos: Int */;
1033 long var25
/* : Int */;
1034 short int var26
/* : Bool */;
1035 short int var28
/* : Bool */;
1038 const char* var_class_name31
;
1039 short int var32
/* : Bool */;
1040 long var33
/* : Int */;
1041 val
* var34
/* : String */;
1042 long var35
/* : Int */;
1043 short int var36
/* : Bool */;
1044 short int var38
/* : Bool */;
1045 static val
* varonce
;
1046 val
* var39
/* : String */;
1047 char* var40
/* : NativeString */;
1048 long var41
/* : Int */;
1049 val
* var42
/* : String */;
1050 static val
* varonce43
;
1051 val
* var44
/* : String */;
1052 char* var45
/* : NativeString */;
1053 long var46
/* : Int */;
1054 val
* var47
/* : String */;
1055 var1
= self
->attrs
[COLOR_array__AbstractArrayRead___length
].l
; /* _length on <self:String> */
1057 { /* Inline kernel#Int#- (var1,var2) */
1065 { /* Inline kernel#Int#> (var_l,var7) */
1066 /* Covariant cast for argument 0 (i) <var7:Int> isa OTHER */
1067 /* <var7:Int> isa OTHER */
1068 var10
= 1; /* easy <var7:Int> isa OTHER*/
1070 var_class_name
= type_kernel__Int
.name
;
1071 fprintf(stderr
, "Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
1072 fprintf(stderr
, " (%s:%d)\n", "lib/standard/kernel.nit", 263);
1075 var11
= var_l
> var7
;
1082 var12
= ((val
* (*)(val
*, long))(self
->class->vft
[COLOR_abstract_collection__SequenceRead___91d_93d
]))(self
, var_l
) /* [] on <self:String>*/;
1084 { /* Inline kernel#Char#== (var12,var13) */
1085 var16
= (var12
!= NULL
) && (var12
->class == &class_kernel__Char
);
1087 var17
= ((struct instance_kernel__Char
*)var12
)->value
; /* autounbox from nullable Object to Char */;
1088 var16
= (var17
== var13
);
1092 RET_LABEL15
:(void)0;
1100 { /* Inline kernel#Int#- (var_l,var18) */
1101 var21
= var_l
- var18
;
1104 RET_LABEL20
:(void)0;
1110 var24
= BOX_kernel__Char(var22
); /* autobox from Char to nullable Object */
1111 var23
= ((long (*)(val
*, val
*, long))(self
->class->vft
[COLOR_array__AbstractArrayRead__last_index_of_from
]))(self
, var24
, var_l
) /* last_index_of_from on <self:String>*/;
1114 { /* Inline kernel#Int#> (var_pos,var25) */
1115 /* Covariant cast for argument 0 (i) <var25:Int> isa OTHER */
1116 /* <var25:Int> isa OTHER */
1117 var28
= 1; /* easy <var25:Int> isa OTHER*/
1119 var_class_name31
= type_kernel__Int
.name
;
1120 fprintf(stderr
, "Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name31
);
1121 fprintf(stderr
, " (%s:%d)\n", "lib/standard/kernel.nit", 263);
1124 var32
= var_pos
> var25
;
1127 RET_LABEL27
:(void)0;
1131 var34
= ((val
* (*)(val
*, long, long))(self
->class->vft
[COLOR_string__AbstractString__substring
]))(self
, var33
, var_pos
) /* substring on <self:String>*/;
1136 { /* Inline kernel#Int#== (var_pos,var35) */
1137 var38
= var_pos
== var35
;
1140 RET_LABEL37
:(void)0;
1148 var42
= string__NativeString__to_s_with_length(var40
, var41
);
1160 var47
= string__NativeString__to_s_with_length(var45
, var46
);
1171 /* method file#String#dirname for (self: Object): String */
1172 val
* VIRTUAL_file__String__dirname(val
* self
) {
1173 val
* var
/* : String */;
1174 val
* var1
/* : String */;
1175 var1
= file__String__dirname(self
);
1180 /* method file#String#simplify_path for (self: String): String */
1181 val
* file__String__simplify_path(val
* self
) {
1182 val
* var
/* : String */;
1183 static val
* varonce
;
1184 val
* var1
/* : String */;
1185 char* var2
/* : NativeString */;
1186 long var3
/* : Int */;
1187 val
* var4
/* : String */;
1188 val
* var5
/* : Array[String] */;
1189 val
* var_a
/* var a: Array[String] */;
1190 val
* var6
/* : Array[String] */;
1191 val
* var_a2
/* var a2: Array[String] */;
1192 val
* var7
/* : Iterator[nullable Object] */;
1193 short int var8
/* : Bool */;
1194 val
* var9
/* : nullable Object */;
1195 val
* var_x
/* var x: String */;
1196 static val
* varonce10
;
1197 val
* var11
/* : String */;
1198 char* var12
/* : NativeString */;
1199 long var13
/* : Int */;
1200 val
* var14
/* : String */;
1201 short int var15
/* : Bool */;
1202 short int var16
/* : Bool */;
1203 static val
* varonce17
;
1204 val
* var18
/* : String */;
1205 char* var19
/* : NativeString */;
1206 long var20
/* : Int */;
1207 val
* var21
/* : String */;
1208 short int var22
/* : Bool */;
1209 short int var_
/* var : Bool */;
1210 short int var23
/* : Bool */;
1211 short int var24
/* : Bool */;
1212 short int var25
/* : Bool */;
1213 short int var26
/* : Bool */;
1214 static val
* varonce27
;
1215 val
* var28
/* : String */;
1216 char* var29
/* : NativeString */;
1217 long var30
/* : Int */;
1218 val
* var31
/* : String */;
1219 short int var32
/* : Bool */;
1220 short int var_33
/* var : Bool */;
1221 short int var34
/* : Bool */;
1222 short int var35
/* : Bool */;
1223 short int var_36
/* var : Bool */;
1224 val
* var37
/* : nullable Object */;
1225 static val
* varonce38
;
1226 val
* var39
/* : String */;
1227 char* var40
/* : NativeString */;
1228 long var41
/* : Int */;
1229 val
* var42
/* : String */;
1230 short int var43
/* : Bool */;
1231 val
* var44
/* : nullable Object */;
1232 static val
* varonce45
;
1233 val
* var46
/* : String */;
1234 char* var47
/* : NativeString */;
1235 long var48
/* : Int */;
1236 val
* var49
/* : String */;
1237 val
* var50
/* : String */;
1243 var4
= string__NativeString__to_s_with_length(var2
, var3
);
1247 var5
= ((val
* (*)(val
*, val
*))(self
->class->vft
[COLOR_string_search__String__split_with
]))(self
, var1
) /* split_with on <self:String>*/;
1249 var6
= NEW_array__Array(&type_array__Arraystring__String
);
1250 ((void (*)(val
*))(var6
->class->vft
[COLOR_array__Array__init
]))(var6
) /* init on <var6:Array[String]>*/;
1251 CHECK_NEW_array__Array(var6
);
1253 var7
= ((val
* (*)(val
*))(var_a
->class->vft
[COLOR_abstract_collection__Collection__iterator
]))(var_a
) /* iterator on <var_a:Array[String]>*/;
1255 var8
= ((short int (*)(val
*))(var7
->class->vft
[COLOR_abstract_collection__Iterator__is_ok
]))(var7
) /* is_ok on <var7:Iterator[nullable Object]>*/;
1257 var9
= ((val
* (*)(val
*))(var7
->class->vft
[COLOR_abstract_collection__Iterator__item
]))(var7
) /* item on <var7:Iterator[nullable Object]>*/;
1264 var14
= string__NativeString__to_s_with_length(var12
, var13
);
1268 var15
= ((short int (*)(val
*, val
*))(var_x
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_x
, var11
) /* == on <var_x:String>*/;
1270 goto CONTINUE_label
;
1278 var21
= string__NativeString__to_s_with_length(var19
, var20
);
1282 var22
= ((short int (*)(val
*, val
*))(var_x
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_x
, var18
) /* == on <var_x:String>*/;
1285 var23
= ((short int (*)(val
*))(var_a2
->class->vft
[COLOR_abstract_collection__Collection__is_empty
]))(var_a2
) /* is_empty on <var_a2:Array[String]>*/;
1292 goto CONTINUE_label
;
1300 var31
= string__NativeString__to_s_with_length(var29
, var30
);
1304 var32
= ((short int (*)(val
*, val
*))(var_x
->class->vft
[COLOR_kernel__Object___61d_61d
]))(var_x
, var28
) /* == on <var_x:String>*/;
1307 var34
= ((short int (*)(val
*))(var_a2
->class->vft
[COLOR_abstract_collection__Collection__is_empty
]))(var_a2
) /* is_empty on <var_a2:Array[String]>*/;
1315 var37
= ((val
* (*)(val
*))(var_a2
->class->vft
[COLOR_abstract_collection__SequenceRead__last
]))(var_a2
) /* last on <var_a2:Array[String]>*/;
1321 var42
= string__NativeString__to_s_with_length(var40
, var41
);
1325 var43
= ((short int (*)(val
*, val
*))(var37
->class->vft
[COLOR_kernel__Object___33d_61d
]))(var37
, var39
) /* != on <var37:nullable Object(String)>*/;
1331 var44
= ((val
* (*)(val
*))(var_a2
->class->vft
[COLOR_abstract_collection__Sequence__pop
]))(var_a2
) /* pop on <var_a2:Array[String]>*/;
1333 goto CONTINUE_label
;
1336 ((void (*)(val
*, val
*))(var_a2
->class->vft
[COLOR_abstract_collection__Sequence__push
]))(var_a2
, var_x
) /* push on <var_a2:Array[String]>*/;
1337 CONTINUE_label
: (void)0;
1338 ((void (*)(val
*))(var7
->class->vft
[COLOR_abstract_collection__Iterator__next
]))(var7
) /* next on <var7:Iterator[nullable Object]>*/;
1340 BREAK_label
: (void)0;
1346 var49
= string__NativeString__to_s_with_length(var47
, var48
);
1350 var50
= ((val
* (*)(val
*, val
*))(var_a2
->class->vft
[COLOR_string__Collection__join
]))(var_a2
, var46
) /* join on <var_a2:Array[String]>*/;
1356 /* method file#String#simplify_path for (self: Object): String */
1357 val
* VIRTUAL_file__String__simplify_path(val
* self
) {
1358 val
* var
/* : String */;
1359 val
* var1
/* : String */;
1360 var1
= file__String__simplify_path(self
);
1365 /* method file#String#join_path for (self: String, String): String */
1366 val
* file__String__join_path(val
* self
, val
* p0
) {
1367 val
* var
/* : String */;
1368 val
* var_path
/* var path: String */;
1369 short int var1
/* : Bool */;
1370 short int var2
/* : Bool */;
1371 long var3
/* : Int */;
1372 val
* var4
/* : nullable Object */;
1373 char var5
/* : Char */;
1374 short int var6
/* : Bool */;
1375 short int var8
/* : Bool */;
1376 char var9
/* : Char */;
1377 val
* var10
/* : Array[Object] */;
1378 long var11
/* : Int */;
1379 val
* var_
/* var : Array[Object] */;
1380 static val
* varonce
;
1381 val
* var12
/* : String */;
1382 char* var13
/* : NativeString */;
1383 long var14
/* : Int */;
1384 val
* var15
/* : String */;
1385 static val
* varonce16
;
1386 val
* var17
/* : String */;
1387 char* var18
/* : NativeString */;
1388 long var19
/* : Int */;
1389 val
* var20
/* : String */;
1390 static val
* varonce21
;
1391 val
* var22
/* : String */;
1392 char* var23
/* : NativeString */;
1393 long var24
/* : Int */;
1394 val
* var25
/* : String */;
1395 val
* var26
/* : String */;
1397 var1
= ((short int (*)(val
*))(var_path
->class->vft
[COLOR_abstract_collection__Collection__is_empty
]))(var_path
) /* is_empty on <var_path:String>*/;
1403 var2
= ((short int (*)(val
*))(self
->class->vft
[COLOR_abstract_collection__Collection__is_empty
]))(self
) /* is_empty on <self:String>*/;
1410 var4
= ((val
* (*)(val
*, long))(var_path
->class->vft
[COLOR_abstract_collection__SequenceRead___91d_93d
]))(var_path
, var3
) /* [] on <var_path:String>*/;
1412 { /* Inline kernel#Char#== (var4,var5) */
1413 var8
= (var4
!= NULL
) && (var4
->class == &class_kernel__Char
);
1415 var9
= ((struct instance_kernel__Char
*)var4
)->value
; /* autounbox from nullable Object to Char */;
1416 var8
= (var9
== var5
);
1427 var10
= NEW_array__Array(&type_array__Arraykernel__Object
);
1429 ((void (*)(val
*, long))(var10
->class->vft
[COLOR_array__Array__with_capacity
]))(var10
, var11
) /* with_capacity on <var10:Array[Object]>*/;
1430 CHECK_NEW_array__Array(var10
);
1437 var15
= string__NativeString__to_s_with_length(var13
, var14
);
1441 ((void (*)(val
*, val
*))(var_
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_
, var12
) /* add on <var_:Array[Object]>*/;
1442 ((void (*)(val
*, val
*))(var_
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_
, self
) /* add on <var_:Array[Object]>*/;
1448 var20
= string__NativeString__to_s_with_length(var18
, var19
);
1452 ((void (*)(val
*, val
*))(var_
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_
, var17
) /* add on <var_:Array[Object]>*/;
1453 ((void (*)(val
*, val
*))(var_
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_
, var_path
) /* add on <var_:Array[Object]>*/;
1459 var25
= string__NativeString__to_s_with_length(var23
, var24
);
1463 ((void (*)(val
*, val
*))(var_
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_
, var22
) /* add on <var_:Array[Object]>*/;
1464 var26
= ((val
* (*)(val
*))(var_
->class->vft
[COLOR_string__Object__to_s
]))(var_
) /* to_s on <var_:Array[Object]>*/;
1470 /* method file#String#join_path for (self: Object, String): String */
1471 val
* VIRTUAL_file__String__join_path(val
* self
, val
* p0
) {
1472 val
* var
/* : String */;
1473 val
* var1
/* : String */;
1474 var1
= file__String__join_path(self
, p0
);
1479 /* method file#String#mkdir for (self: String) */
1480 void file__String__mkdir(val
* self
) {
1481 static val
* varonce
;
1482 val
* var
/* : String */;
1483 char* var1
/* : NativeString */;
1484 long var2
/* : Int */;
1485 val
* var3
/* : String */;
1486 val
* var4
/* : Array[String] */;
1487 val
* var_dirs
/* var dirs: Array[String] */;
1488 val
* var5
/* : Buffer */;
1489 val
* var_path
/* var path: Buffer */;
1490 short int var6
/* : Bool */;
1491 long var7
/* : Int */;
1492 val
* var8
/* : nullable Object */;
1493 short int var9
/* : Bool */;
1494 char var10
/* : Char */;
1495 val
* var11
/* : nullable Object */;
1496 val
* var12
/* : Iterator[nullable Object] */;
1497 short int var13
/* : Bool */;
1498 val
* var14
/* : nullable Object */;
1499 val
* var_d
/* var d: String */;
1500 short int var15
/* : Bool */;
1501 char var16
/* : Char */;
1502 val
* var17
/* : nullable Object */;
1503 val
* var18
/* : String */;
1504 char* var19
/* : NativeString */;
1505 short int var20
/* : Bool */;
1511 var3
= string__NativeString__to_s_with_length(var1
, var2
);
1515 var4
= ((val
* (*)(val
*, val
*))(self
->class->vft
[COLOR_string_search__String__split_with
]))(self
, var
) /* split_with on <self:String>*/;
1517 var5
= NEW_string__Buffer(&type_string__Buffer
);
1518 ((void (*)(val
*))(var5
->class->vft
[COLOR_string__Buffer__init
]))(var5
) /* init on <var5:Buffer>*/;
1519 CHECK_NEW_string__Buffer(var5
);
1521 var6
= ((short int (*)(val
*))(var_dirs
->class->vft
[COLOR_abstract_collection__Collection__is_empty
]))(var_dirs
) /* is_empty on <var_dirs:Array[String]>*/;
1527 var8
= ((val
* (*)(val
*, long))(var_dirs
->class->vft
[COLOR_abstract_collection__SequenceRead___91d_93d
]))(var_dirs
, var7
) /* [] on <var_dirs:Array[String]>*/;
1528 var9
= ((short int (*)(val
*))(var8
->class->vft
[COLOR_abstract_collection__Collection__is_empty
]))(var8
) /* is_empty on <var8:nullable Object(String)>*/;
1531 var11
= BOX_kernel__Char(var10
); /* autobox from Char to nullable Object */
1532 ((void (*)(val
*, val
*))(var_path
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_path
, var11
) /* add on <var_path:Buffer>*/;
1535 var12
= ((val
* (*)(val
*))(var_dirs
->class->vft
[COLOR_abstract_collection__Collection__iterator
]))(var_dirs
) /* iterator on <var_dirs:Array[String]>*/;
1537 var13
= ((short int (*)(val
*))(var12
->class->vft
[COLOR_abstract_collection__Iterator__is_ok
]))(var12
) /* is_ok on <var12:Iterator[nullable Object]>*/;
1539 var14
= ((val
* (*)(val
*))(var12
->class->vft
[COLOR_abstract_collection__Iterator__item
]))(var12
) /* item on <var12:Iterator[nullable Object]>*/;
1541 var15
= ((short int (*)(val
*))(var_d
->class->vft
[COLOR_abstract_collection__Collection__is_empty
]))(var_d
) /* is_empty on <var_d:String>*/;
1543 goto CONTINUE_label
;
1546 ((void (*)(val
*, val
*))(var_path
->class->vft
[COLOR_abstract_collection__Sequence__append
]))(var_path
, var_d
) /* append on <var_path:Buffer>*/;
1548 var17
= BOX_kernel__Char(var16
); /* autobox from Char to nullable Object */
1549 ((void (*)(val
*, val
*))(var_path
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_path
, var17
) /* add on <var_path:Buffer>*/;
1550 var18
= ((val
* (*)(val
*))(var_path
->class->vft
[COLOR_string__Object__to_s
]))(var_path
) /* to_s on <var_path:Buffer>*/;
1551 var19
= ((char* (*)(val
*))(var18
->class->vft
[COLOR_string__String__to_cstring
]))(var18
) /* to_cstring on <var18:String>*/;
1552 var20
= file__NativeString__file_mkdir(var19
);
1554 CONTINUE_label
: (void)0;
1555 ((void (*)(val
*))(var12
->class->vft
[COLOR_abstract_collection__Iterator__next
]))(var12
) /* next on <var12:Iterator[nullable Object]>*/;
1557 BREAK_label
: (void)0;
1560 /* method file#String#mkdir for (self: Object) */
1561 void VIRTUAL_file__String__mkdir(val
* self
) {
1562 file__String__mkdir(self
);
1565 /* method file#String#chdir for (self: String) */
1566 void file__String__chdir(val
* self
) {
1567 char* var
/* : NativeString */;
1568 var
= ((char* (*)(val
*))(self
->class->vft
[COLOR_string__String__to_cstring
]))(self
) /* to_cstring on <self:String>*/;
1569 file__NativeString__file_chdir(var
);
1572 /* method file#String#chdir for (self: Object) */
1573 void VIRTUAL_file__String__chdir(val
* self
) {
1574 file__String__chdir(self
);
1577 /* method file#String#file_extension for (self: String): nullable String */
1578 val
* file__String__file_extension(val
* self
) {
1579 val
* var
/* : nullable String */;
1580 char var1
/* : Char */;
1581 long var2
/* : Int */;
1582 val
* var3
/* : nullable Object */;
1583 long var_last_slash
/* var last_slash: Int */;
1584 long var4
/* : Int */;
1585 short int var5
/* : Bool */;
1586 short int var7
/* : Bool */;
1589 const char* var_class_name
;
1590 short int var8
/* : Bool */;
1591 long var9
/* : Int */;
1592 long var10
/* : Int */;
1593 long var12
/* : Int */;
1594 long var13
/* : Int */;
1595 val
* var14
/* : String */;
1596 val
* var15
/* : null */;
1598 var3
= BOX_kernel__Char(var1
); /* autobox from Char to nullable Object */
1599 var2
= ((long (*)(val
*, val
*))(self
->class->vft
[COLOR_array__AbstractArrayRead__last_index_of
]))(self
, var3
) /* last_index_of on <self:String>*/;
1600 var_last_slash
= var2
;
1602 { /* Inline kernel#Int#>= (var_last_slash,var4) */
1603 /* Covariant cast for argument 0 (i) <var4:Int> isa OTHER */
1604 /* <var4:Int> isa OTHER */
1605 var7
= 1; /* easy <var4:Int> isa OTHER*/
1607 var_class_name
= type_kernel__Int
.name
;
1608 fprintf(stderr
, "Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
1609 fprintf(stderr
, " (%s:%d)\n", "lib/standard/kernel.nit", 262);
1612 var8
= var_last_slash
>= var4
;
1619 { /* Inline kernel#Int#+ (var_last_slash,var9) */
1620 var12
= var_last_slash
+ var9
;
1623 RET_LABEL11
:(void)0;
1625 var13
= ((long (*)(val
*))(self
->class->vft
[COLOR_abstract_collection__Collection__length
]))(self
) /* length on <self:String>*/;
1626 var14
= ((val
* (*)(val
*, long, long))(self
->class->vft
[COLOR_string__AbstractString__substring
]))(self
, var10
, var13
) /* substring on <self:String>*/;
1637 /* method file#String#file_extension for (self: Object): nullable String */
1638 val
* VIRTUAL_file__String__file_extension(val
* self
) {
1639 val
* var
/* : nullable String */;
1640 val
* var1
/* : nullable String */;
1641 var1
= file__String__file_extension(self
);
1646 /* method file#String#files for (self: String): Set[String] */
1647 val
* file__String__files(val
* self
) {
1648 val
* var
/* : Set[String] */;
1649 fprintf(stderr
, "NOT YET IMPLEMENTED nitni for file#String#files at lib/standard/file.nit:345,2--346,159\n");
1654 /* method file#String#files for (self: Object): Set[String] */
1655 val
* VIRTUAL_file__String__files(val
* self
) {
1656 val
* var
/* : Set[String] */;
1657 val
* var1
/* : Set[String] */;
1658 var1
= file__String__files(self
);
1663 /* method file#NativeString#file_exists for (self: NativeString): Bool */
1664 short int file__NativeString__file_exists(char* self
) {
1665 short int var
/* : Bool */;
1666 short int var1
/* : Bool */;
1667 var1
= string_NativeString_NativeString_file_exists_0(self
);
1673 /* method file#NativeString#file_exists for (self: Object): Bool */
1674 short int VIRTUAL_file__NativeString__file_exists(val
* self
) {
1675 short int var
/* : Bool */;
1676 short int var1
/* : Bool */;
1677 char* var2
/* : NativeString */;
1678 var2
= ((struct instance_string__NativeString
*)self
)->value
; /* autounbox from Object to NativeString */;
1679 var1
= file__NativeString__file_exists(var2
);
1684 /* method file#NativeString#file_stat for (self: NativeString): FileStat */
1685 void* file__NativeString__file_stat(char* self
) {
1686 void* var
/* : FileStat */;
1687 void* var1
/* : FileStat */;
1688 var1
= string_NativeString_NativeString_file_stat_0(self
);
1694 /* method file#NativeString#file_stat for (self: Object): FileStat */
1695 void* VIRTUAL_file__NativeString__file_stat(val
* self
) {
1696 void* var
/* : FileStat */;
1697 void* var1
/* : FileStat */;
1698 char* var2
/* : NativeString */;
1699 var2
= ((struct instance_string__NativeString
*)self
)->value
; /* autounbox from Object to NativeString */;
1700 var1
= file__NativeString__file_stat(var2
);
1705 /* method file#NativeString#file_lstat for (self: NativeString): FileStat */
1706 void* file__NativeString__file_lstat(char* self
) {
1707 void* var
/* : FileStat */;
1708 fprintf(stderr
, "NOT YET IMPLEMENTED nitni for file#NativeString#file_lstat at lib/standard/file.nit:352,2--359,3\n");
1713 /* method file#NativeString#file_lstat for (self: Object): FileStat */
1714 void* VIRTUAL_file__NativeString__file_lstat(val
* self
) {
1715 void* var
/* : FileStat */;
1716 void* var1
/* : FileStat */;
1717 char* var2
/* : NativeString */;
1718 var2
= ((struct instance_string__NativeString
*)self
)->value
; /* autounbox from Object to NativeString */;
1719 var1
= file__NativeString__file_lstat(var2
);
1724 /* method file#NativeString#file_mkdir for (self: NativeString): Bool */
1725 short int file__NativeString__file_mkdir(char* self
) {
1726 short int var
/* : Bool */;
1727 short int var1
/* : Bool */;
1728 var1
= string_NativeString_NativeString_file_mkdir_0(self
);
1734 /* method file#NativeString#file_mkdir for (self: Object): Bool */
1735 short int VIRTUAL_file__NativeString__file_mkdir(val
* self
) {
1736 short int var
/* : Bool */;
1737 short int var1
/* : Bool */;
1738 char* var2
/* : NativeString */;
1739 var2
= ((struct instance_string__NativeString
*)self
)->value
; /* autounbox from Object to NativeString */;
1740 var1
= file__NativeString__file_mkdir(var2
);
1745 /* method file#NativeString#file_delete for (self: NativeString): Bool */
1746 short int file__NativeString__file_delete(char* self
) {
1747 short int var
/* : Bool */;
1748 short int var1
/* : Bool */;
1749 var1
= string_NativeString_NativeString_file_delete_0(self
);
1755 /* method file#NativeString#file_delete for (self: Object): Bool */
1756 short int VIRTUAL_file__NativeString__file_delete(val
* self
) {
1757 short int var
/* : Bool */;
1758 short int var1
/* : Bool */;
1759 char* var2
/* : NativeString */;
1760 var2
= ((struct instance_string__NativeString
*)self
)->value
; /* autounbox from Object to NativeString */;
1761 var1
= file__NativeString__file_delete(var2
);
1766 /* method file#NativeString#file_chdir for (self: NativeString) */
1767 void file__NativeString__file_chdir(char* self
) {
1768 string_NativeString_NativeString_file_chdir_0(self
);
1771 /* method file#NativeString#file_chdir for (self: Object) */
1772 void VIRTUAL_file__NativeString__file_chdir(val
* self
) {
1773 char* var
/* : NativeString */;
1774 var
= ((struct instance_string__NativeString
*)self
)->value
; /* autounbox from Object to NativeString */;
1775 file__NativeString__file_chdir(var
);
1778 /* method file#FileStat#mode for (self: FileStat): Int */
1779 long file__FileStat__mode(void* self
) {
1780 long var
/* : Int */;
1781 long var1
/* : Int */;
1782 var1
= file_FileStat_FileStat_mode_0(self
);
1788 /* method file#FileStat#mode for (self: Object): Int */
1789 long VIRTUAL_file__FileStat__mode(val
* self
) {
1790 long var
/* : Int */;
1791 long var1
/* : Int */;
1792 void* var2
/* : FileStat */;
1793 var2
= ((struct instance_file__FileStat
*)self
)->value
; /* autounbox from Object to FileStat */;
1794 var1
= file__FileStat__mode(var2
);
1799 /* method file#FileStat#atime for (self: FileStat): Int */
1800 long file__FileStat__atime(void* self
) {
1801 long var
/* : Int */;
1802 long var1
/* : Int */;
1803 var1
= file_FileStat_FileStat_atime_0(self
);
1809 /* method file#FileStat#atime for (self: Object): Int */
1810 long VIRTUAL_file__FileStat__atime(val
* self
) {
1811 long var
/* : Int */;
1812 long var1
/* : Int */;
1813 void* var2
/* : FileStat */;
1814 var2
= ((struct instance_file__FileStat
*)self
)->value
; /* autounbox from Object to FileStat */;
1815 var1
= file__FileStat__atime(var2
);
1820 /* method file#FileStat#ctime for (self: FileStat): Int */
1821 long file__FileStat__ctime(void* self
) {
1822 long var
/* : Int */;
1823 long var1
/* : Int */;
1824 var1
= file_FileStat_FileStat_ctime_0(self
);
1830 /* method file#FileStat#ctime for (self: Object): Int */
1831 long VIRTUAL_file__FileStat__ctime(val
* self
) {
1832 long var
/* : Int */;
1833 long var1
/* : Int */;
1834 void* var2
/* : FileStat */;
1835 var2
= ((struct instance_file__FileStat
*)self
)->value
; /* autounbox from Object to FileStat */;
1836 var1
= file__FileStat__ctime(var2
);
1841 /* method file#FileStat#mtime for (self: FileStat): Int */
1842 long file__FileStat__mtime(void* self
) {
1843 long var
/* : Int */;
1844 long var1
/* : Int */;
1845 var1
= file_FileStat_FileStat_mtime_0(self
);
1851 /* method file#FileStat#mtime for (self: Object): Int */
1852 long VIRTUAL_file__FileStat__mtime(val
* self
) {
1853 long var
/* : Int */;
1854 long var1
/* : Int */;
1855 void* var2
/* : FileStat */;
1856 var2
= ((struct instance_file__FileStat
*)self
)->value
; /* autounbox from Object to FileStat */;
1857 var1
= file__FileStat__mtime(var2
);
1862 /* method file#FileStat#size for (self: FileStat): Int */
1863 long file__FileStat__size(void* self
) {
1864 long var
/* : Int */;
1865 long var1
/* : Int */;
1866 var1
= file_FileStat_FileStat_size_0(self
);
1872 /* method file#FileStat#size for (self: Object): Int */
1873 long VIRTUAL_file__FileStat__size(val
* self
) {
1874 long var
/* : Int */;
1875 long var1
/* : Int */;
1876 void* var2
/* : FileStat */;
1877 var2
= ((struct instance_file__FileStat
*)self
)->value
; /* autounbox from Object to FileStat */;
1878 var1
= file__FileStat__size(var2
);
1883 /* method file#FileStat#is_reg for (self: FileStat): Bool */
1884 short int file__FileStat__is_reg(void* self
) {
1885 short int var
/* : Bool */;
1886 fprintf(stderr
, "NOT YET IMPLEMENTED nitni for file#FileStat#is_reg at lib/standard/file.nit:373,2--54\n");
1891 /* method file#FileStat#is_reg for (self: Object): Bool */
1892 short int VIRTUAL_file__FileStat__is_reg(val
* self
) {
1893 short int var
/* : Bool */;
1894 short int var1
/* : Bool */;
1895 void* var2
/* : FileStat */;
1896 var2
= ((struct instance_file__FileStat
*)self
)->value
; /* autounbox from Object to FileStat */;
1897 var1
= file__FileStat__is_reg(var2
);
1902 /* method file#FileStat#is_dir for (self: FileStat): Bool */
1903 short int file__FileStat__is_dir(void* self
) {
1904 short int var
/* : Bool */;
1905 fprintf(stderr
, "NOT YET IMPLEMENTED nitni for file#FileStat#is_dir at lib/standard/file.nit:374,2--54\n");
1910 /* method file#FileStat#is_dir for (self: Object): Bool */
1911 short int VIRTUAL_file__FileStat__is_dir(val
* self
) {
1912 short int var
/* : Bool */;
1913 short int var1
/* : Bool */;
1914 void* var2
/* : FileStat */;
1915 var2
= ((struct instance_file__FileStat
*)self
)->value
; /* autounbox from Object to FileStat */;
1916 var1
= file__FileStat__is_dir(var2
);
1921 /* method file#FileStat#is_chr for (self: FileStat): Bool */
1922 short int file__FileStat__is_chr(void* self
) {
1923 short int var
/* : Bool */;
1924 fprintf(stderr
, "NOT YET IMPLEMENTED nitni for file#FileStat#is_chr at lib/standard/file.nit:375,2--54\n");
1929 /* method file#FileStat#is_chr for (self: Object): Bool */
1930 short int VIRTUAL_file__FileStat__is_chr(val
* self
) {
1931 short int var
/* : Bool */;
1932 short int var1
/* : Bool */;
1933 void* var2
/* : FileStat */;
1934 var2
= ((struct instance_file__FileStat
*)self
)->value
; /* autounbox from Object to FileStat */;
1935 var1
= file__FileStat__is_chr(var2
);
1940 /* method file#FileStat#is_blk for (self: FileStat): Bool */
1941 short int file__FileStat__is_blk(void* self
) {
1942 short int var
/* : Bool */;
1943 fprintf(stderr
, "NOT YET IMPLEMENTED nitni for file#FileStat#is_blk at lib/standard/file.nit:376,2--54\n");
1948 /* method file#FileStat#is_blk for (self: Object): Bool */
1949 short int VIRTUAL_file__FileStat__is_blk(val
* self
) {
1950 short int var
/* : Bool */;
1951 short int var1
/* : Bool */;
1952 void* var2
/* : FileStat */;
1953 var2
= ((struct instance_file__FileStat
*)self
)->value
; /* autounbox from Object to FileStat */;
1954 var1
= file__FileStat__is_blk(var2
);
1959 /* method file#FileStat#is_fifo for (self: FileStat): Bool */
1960 short int file__FileStat__is_fifo(void* self
) {
1961 short int var
/* : Bool */;
1962 fprintf(stderr
, "NOT YET IMPLEMENTED nitni for file#FileStat#is_fifo at lib/standard/file.nit:377,2--56\n");
1967 /* method file#FileStat#is_fifo for (self: Object): Bool */
1968 short int VIRTUAL_file__FileStat__is_fifo(val
* self
) {
1969 short int var
/* : Bool */;
1970 short int var1
/* : Bool */;
1971 void* var2
/* : FileStat */;
1972 var2
= ((struct instance_file__FileStat
*)self
)->value
; /* autounbox from Object to FileStat */;
1973 var1
= file__FileStat__is_fifo(var2
);
1978 /* method file#FileStat#is_lnk for (self: FileStat): Bool */
1979 short int file__FileStat__is_lnk(void* self
) {
1980 short int var
/* : Bool */;
1981 fprintf(stderr
, "NOT YET IMPLEMENTED nitni for file#FileStat#is_lnk at lib/standard/file.nit:378,2--54\n");
1986 /* method file#FileStat#is_lnk for (self: Object): Bool */
1987 short int VIRTUAL_file__FileStat__is_lnk(val
* self
) {
1988 short int var
/* : Bool */;
1989 short int var1
/* : Bool */;
1990 void* var2
/* : FileStat */;
1991 var2
= ((struct instance_file__FileStat
*)self
)->value
; /* autounbox from Object to FileStat */;
1992 var1
= file__FileStat__is_lnk(var2
);
1997 /* method file#FileStat#is_sock for (self: FileStat): Bool */
1998 short int file__FileStat__is_sock(void* self
) {
1999 short int var
/* : Bool */;
2000 fprintf(stderr
, "NOT YET IMPLEMENTED nitni for file#FileStat#is_sock at lib/standard/file.nit:379,2--56\n");
2005 /* method file#FileStat#is_sock for (self: Object): Bool */
2006 short int VIRTUAL_file__FileStat__is_sock(val
* self
) {
2007 short int var
/* : Bool */;
2008 short int var1
/* : Bool */;
2009 void* var2
/* : FileStat */;
2010 var2
= ((struct instance_file__FileStat
*)self
)->value
; /* autounbox from Object to FileStat */;
2011 var1
= file__FileStat__is_sock(var2
);
2016 /* method file#NativeFile#io_read for (self: NativeFile, NativeString, Int): Int */
2017 long file__NativeFile__io_read(void* self
, char* p0
, long p1
) {
2018 long var
/* : Int */;
2019 long var1
/* : Int */;
2020 var1
= file_NativeFile_NativeFile_io_read_2(self
, p0
, p1
);
2026 /* method file#NativeFile#io_read for (self: Object, NativeString, Int): Int */
2027 long VIRTUAL_file__NativeFile__io_read(val
* self
, char* p0
, long p1
) {
2028 long var
/* : Int */;
2029 long var1
/* : Int */;
2030 void* var2
/* : NativeFile */;
2031 var2
= ((struct instance_file__NativeFile
*)self
)->value
; /* autounbox from Object to NativeFile */;
2032 var1
= file__NativeFile__io_read(var2
, p0
, p1
);
2037 /* method file#NativeFile#io_write for (self: NativeFile, NativeString, Int): Int */
2038 long file__NativeFile__io_write(void* self
, char* p0
, long p1
) {
2039 long var
/* : Int */;
2040 long var1
/* : Int */;
2041 var1
= file_NativeFile_NativeFile_io_write_2(self
, p0
, p1
);
2047 /* method file#NativeFile#io_write for (self: Object, NativeString, Int): Int */
2048 long VIRTUAL_file__NativeFile__io_write(val
* self
, char* p0
, long p1
) {
2049 long var
/* : Int */;
2050 long var1
/* : Int */;
2051 void* var2
/* : NativeFile */;
2052 var2
= ((struct instance_file__NativeFile
*)self
)->value
; /* autounbox from Object to NativeFile */;
2053 var1
= file__NativeFile__io_write(var2
, p0
, p1
);
2058 /* method file#NativeFile#io_close for (self: NativeFile): Int */
2059 long file__NativeFile__io_close(void* self
) {
2060 long var
/* : Int */;
2061 long var1
/* : Int */;
2062 var1
= file_NativeFile_NativeFile_io_close_0(self
);
2068 /* method file#NativeFile#io_close for (self: Object): Int */
2069 long VIRTUAL_file__NativeFile__io_close(val
* self
) {
2070 long var
/* : Int */;
2071 long var1
/* : Int */;
2072 void* var2
/* : NativeFile */;
2073 var2
= ((struct instance_file__NativeFile
*)self
)->value
; /* autounbox from Object to NativeFile */;
2074 var1
= file__NativeFile__io_close(var2
);
2079 /* method file#NativeFile#file_stat for (self: NativeFile): FileStat */
2080 void* file__NativeFile__file_stat(void* self
) {
2081 void* var
/* : FileStat */;
2082 void* var1
/* : FileStat */;
2083 var1
= file_NativeFile_NativeFile_file_stat_0(self
);
2089 /* method file#NativeFile#file_stat for (self: Object): FileStat */
2090 void* VIRTUAL_file__NativeFile__file_stat(val
* self
) {
2091 void* var
/* : FileStat */;
2092 void* var1
/* : FileStat */;
2093 void* var2
/* : NativeFile */;
2094 var2
= ((struct instance_file__NativeFile
*)self
)->value
; /* autounbox from Object to NativeFile */;
2095 var1
= file__NativeFile__file_stat(var2
);
2100 /* method file#NativeFile#io_open_read for (self: NativeFile, NativeString): NativeFile */
2101 void* file__NativeFile__io_open_read(void* self
, char* p0
) {
2102 void* var
/* : NativeFile */;
2103 void* var1
/* : NativeFile */;
2104 var1
= file_NativeFileCapable_NativeFileCapable_io_open_read_1(p0
);
2110 /* method file#NativeFile#io_open_read for (self: Object, NativeString): NativeFile */
2111 void* VIRTUAL_file__NativeFile__io_open_read(val
* self
, char* p0
) {
2112 void* var
/* : NativeFile */;
2113 val
* var1
/* : Object */;
2114 void* var2
/* : NativeFile */;
2115 void* var3
/* : NativeFile */;
2116 var2
= ((struct instance_file__NativeFile
*)self
)->value
; /* autounbox from Object to NativeFile */;
2117 var1
= file__NativeFile__io_open_read(var2
, p0
);
2118 var3
= ((struct instance_file__NativeFile
*)var1
)->value
; /* autounbox from Object to NativeFile */;
2123 /* method file#NativeFile#io_open_write for (self: NativeFile, NativeString): NativeFile */
2124 void* file__NativeFile__io_open_write(void* self
, char* p0
) {
2125 void* var
/* : NativeFile */;
2126 void* var1
/* : NativeFile */;
2127 var1
= file_NativeFileCapable_NativeFileCapable_io_open_write_1(p0
);
2133 /* method file#NativeFile#io_open_write for (self: Object, NativeString): NativeFile */
2134 void* VIRTUAL_file__NativeFile__io_open_write(val
* self
, char* p0
) {
2135 void* var
/* : NativeFile */;
2136 val
* var1
/* : Object */;
2137 void* var2
/* : NativeFile */;
2138 void* var3
/* : NativeFile */;
2139 var2
= ((struct instance_file__NativeFile
*)self
)->value
; /* autounbox from Object to NativeFile */;
2140 var1
= file__NativeFile__io_open_write(var2
, p0
);
2141 var3
= ((struct instance_file__NativeFile
*)var1
)->value
; /* autounbox from Object to NativeFile */;
2146 /* method file#NativeFile#native_stdin for (self: NativeFile): NativeFile */
2147 void* file__NativeFile__native_stdin(void* self
) {
2148 void* var
/* : NativeFile */;
2149 void* var1
/* : NativeFile */;
2150 var1
= file_NativeFileCapable_NativeFileCapable_native_stdin_0();
2156 /* method file#NativeFile#native_stdin for (self: Object): NativeFile */
2157 void* VIRTUAL_file__NativeFile__native_stdin(val
* self
) {
2158 void* var
/* : NativeFile */;
2159 val
* var1
/* : Object */;
2160 void* var2
/* : NativeFile */;
2161 void* var3
/* : NativeFile */;
2162 var2
= ((struct instance_file__NativeFile
*)self
)->value
; /* autounbox from Object to NativeFile */;
2163 var1
= file__NativeFile__native_stdin(var2
);
2164 var3
= ((struct instance_file__NativeFile
*)var1
)->value
; /* autounbox from Object to NativeFile */;
2169 /* method file#NativeFile#native_stdout for (self: NativeFile): NativeFile */
2170 void* file__NativeFile__native_stdout(void* self
) {
2171 void* var
/* : NativeFile */;
2172 void* var1
/* : NativeFile */;
2173 var1
= file_NativeFileCapable_NativeFileCapable_native_stdout_0();
2179 /* method file#NativeFile#native_stdout for (self: Object): NativeFile */
2180 void* VIRTUAL_file__NativeFile__native_stdout(val
* self
) {
2181 void* var
/* : NativeFile */;
2182 val
* var1
/* : Object */;
2183 void* var2
/* : NativeFile */;
2184 void* var3
/* : NativeFile */;
2185 var2
= ((struct instance_file__NativeFile
*)self
)->value
; /* autounbox from Object to NativeFile */;
2186 var1
= file__NativeFile__native_stdout(var2
);
2187 var3
= ((struct instance_file__NativeFile
*)var1
)->value
; /* autounbox from Object to NativeFile */;
2192 /* method file#NativeFile#native_stderr for (self: NativeFile): NativeFile */
2193 void* file__NativeFile__native_stderr(void* self
) {
2194 void* var
/* : NativeFile */;
2195 void* var1
/* : NativeFile */;
2196 var1
= file_NativeFileCapable_NativeFileCapable_native_stderr_0();
2202 /* method file#NativeFile#native_stderr for (self: Object): NativeFile */
2203 void* VIRTUAL_file__NativeFile__native_stderr(val
* self
) {
2204 void* var
/* : NativeFile */;
2205 val
* var1
/* : Object */;
2206 void* var2
/* : NativeFile */;
2207 void* var3
/* : NativeFile */;
2208 var2
= ((struct instance_file__NativeFile
*)self
)->value
; /* autounbox from Object to NativeFile */;
2209 var1
= file__NativeFile__native_stderr(var2
);
2210 var3
= ((struct instance_file__NativeFile
*)var1
)->value
; /* autounbox from Object to NativeFile */;
2215 /* method file#Object#stdin for (self: Object): Stdin */
2216 val
* file__Object__stdin(val
* self
) {
2217 val
* var
/* : Stdin */;
2218 static val
* varonce
;
2219 static int varonce_guard
;
2220 val
* var1
/* : Stdin */;
2221 val
* var2
/* : Stdin */;
2222 if (varonce_guard
) {
2225 var2
= NEW_file__Stdin(&type_file__Stdin
);
2226 ((void (*)(val
*))(var2
->class->vft
[COLOR_file__Stdin__init
]))(var2
) /* init on <var2:Stdin>*/;
2227 CHECK_NEW_file__Stdin(var2
);
2237 /* method file#Object#stdin for (self: Object): Stdin */
2238 val
* VIRTUAL_file__Object__stdin(val
* self
) {
2239 val
* var
/* : Stdin */;
2240 val
* var1
/* : Stdin */;
2241 var1
= file__Object__stdin(self
);
2246 /* method file#Object#stdout for (self: Object): OFStream */
2247 val
* file__Object__stdout(val
* self
) {
2248 val
* var
/* : OFStream */;
2249 static val
* varonce
;
2250 static int varonce_guard
;
2251 val
* var1
/* : Stdout */;
2252 val
* var2
/* : Stdout */;
2253 if (varonce_guard
) {
2256 var2
= NEW_file__Stdout(&type_file__Stdout
);
2257 ((void (*)(val
*))(var2
->class->vft
[COLOR_file__Stdout__init
]))(var2
) /* init on <var2:Stdout>*/;
2258 CHECK_NEW_file__Stdout(var2
);
2268 /* method file#Object#stdout for (self: Object): OFStream */
2269 val
* VIRTUAL_file__Object__stdout(val
* self
) {
2270 val
* var
/* : OFStream */;
2271 val
* var1
/* : OFStream */;
2272 var1
= file__Object__stdout(self
);
2277 /* method file#Object#stderr for (self: Object): OFStream */
2278 val
* file__Object__stderr(val
* self
) {
2279 val
* var
/* : OFStream */;
2280 static val
* varonce
;
2281 static int varonce_guard
;
2282 val
* var1
/* : Stderr */;
2283 val
* var2
/* : Stderr */;
2284 if (varonce_guard
) {
2287 var2
= NEW_file__Stderr(&type_file__Stderr
);
2288 ((void (*)(val
*))(var2
->class->vft
[COLOR_file__Stderr__init
]))(var2
) /* init on <var2:Stderr>*/;
2289 CHECK_NEW_file__Stderr(var2
);
2299 /* method file#Object#stderr for (self: Object): OFStream */
2300 val
* VIRTUAL_file__Object__stderr(val
* self
) {
2301 val
* var
/* : OFStream */;
2302 val
* var1
/* : OFStream */;
2303 var1
= file__Object__stderr(self
);