1 /* This C file is generated by NIT to compile module file. */
3 void file___Object___printn(val_t p0
, val_t p1
){
4 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
7 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
8 fra
.me
.file
= LOCATE_file
;
10 fra
.me
.meth
= LOCATE_file___Object___printn
;
13 fra
.me
.REG
[0] = NIT_NULL
;
14 fra
.me
.REG
[1] = NIT_NULL
;
17 /* ./../lib/standard//file.nit:25 */
18 REGB0
= TAG_Bool(VAL_ISA(fra
.me
.REG
[1], COLOR_Array
, ID_Array
)) /*cast Array[Object]*/;
19 if (UNTAG_Bool(REGB0
)) {
21 nit_abort("Cast failed", NULL
, LOCATE_file
, 25);
23 /* ./../lib/standard//file.nit:28 */
24 fra
.me
.REG
[0] = CALL_file___Object___stdout(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
25 fra
.me
.REG
[1] = CALL_string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
26 CALL_stream___OStream___write(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
27 stack_frame_head
= fra
.me
.prev
;
30 void file___Object___print(val_t p0
, val_t p1
){
31 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
34 static val_t once_value_1
; /* Once value */
35 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
36 fra
.me
.file
= LOCATE_file
;
38 fra
.me
.meth
= LOCATE_file___Object___print
;
41 fra
.me
.REG
[0] = NIT_NULL
;
42 fra
.me
.REG
[1] = NIT_NULL
;
43 fra
.me
.REG
[2] = NIT_NULL
;
46 /* ./../lib/standard//file.nit:34 */
47 fra
.me
.REG
[2] = CALL_file___Object___stdout(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
48 fra
.me
.REG
[1] = CALL_string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
49 CALL_stream___OStream___write(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
50 /* ./../lib/standard//file.nit:35 */
51 fra
.me
.REG
[0] = CALL_file___Object___stdout(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
53 fra
.me
.REG
[1] = BOX_NativeString("\n");
55 fra
.me
.REG
[1] = NEW_String_string___String___with_native(fra
.me
.REG
[1], REGB0
);
56 once_value_1
= fra
.me
.REG
[1];
57 register_static_object(&once_value_1
);
58 } else fra
.me
.REG
[1] = once_value_1
;
59 fra
.me
.REG
[1] = fra
.me
.REG
[1];
60 CALL_stream___OStream___write(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
61 stack_frame_head
= fra
.me
.prev
;
64 val_t
file___Object___getc(val_t p0
){
65 struct {struct stack_frame_t me
;} fra
;
68 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
69 fra
.me
.file
= LOCATE_file
;
71 fra
.me
.meth
= LOCATE_file___Object___getc
;
74 fra
.me
.REG
[0] = NIT_NULL
;
76 /* ./../lib/standard//file.nit:41 */
77 fra
.me
.REG
[0] = CALL_file___Object___stdin(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
78 REGB0
= CALL_stream___IStream___read_char(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
79 /* ./../lib/standard//kernel.nit:277 */
80 REGB0
= TAG_Char(UNTAG_Int(REGB0
));
81 /* ./../lib/standard//file.nit:41 */
84 stack_frame_head
= fra
.me
.prev
;
87 val_t
file___Object___gets(val_t p0
){
88 struct {struct stack_frame_t me
;} fra
;
90 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
91 fra
.me
.file
= LOCATE_file
;
93 fra
.me
.meth
= LOCATE_file___Object___gets
;
96 fra
.me
.REG
[0] = NIT_NULL
;
98 /* ./../lib/standard//file.nit:47 */
99 fra
.me
.REG
[0] = CALL_file___Object___stdin(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
100 fra
.me
.REG
[0] = CALL_stream___IStream___read_line(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
103 stack_frame_head
= fra
.me
.prev
;
104 return fra
.me
.REG
[0];
106 val_t
file___Object___stdin(val_t p0
){
107 struct {struct stack_frame_t me
;} fra
;
109 static val_t once_value_1
; /* Once value */
110 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
111 fra
.me
.file
= LOCATE_file
;
113 fra
.me
.meth
= LOCATE_file___Object___stdin
;
114 fra
.me
.has_broke
= 0;
116 fra
.me
.REG
[0] = NIT_NULL
;
118 /* ./../lib/standard//file.nit:292 */
120 fra
.me
.REG
[0] = NEW_Stdin_file___Stdin___init();
121 once_value_1
= fra
.me
.REG
[0];
122 register_static_object(&once_value_1
);
123 } else fra
.me
.REG
[0] = once_value_1
;
124 fra
.me
.REG
[0] = fra
.me
.REG
[0];
127 stack_frame_head
= fra
.me
.prev
;
128 return fra
.me
.REG
[0];
130 val_t
file___Object___stdout(val_t p0
){
131 struct {struct stack_frame_t me
;} fra
;
133 static val_t once_value_1
; /* Once value */
134 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
135 fra
.me
.file
= LOCATE_file
;
137 fra
.me
.meth
= LOCATE_file___Object___stdout
;
138 fra
.me
.has_broke
= 0;
140 fra
.me
.REG
[0] = NIT_NULL
;
142 /* ./../lib/standard//file.nit:295 */
144 fra
.me
.REG
[0] = NEW_Stdout_file___Stdout___init();
145 once_value_1
= fra
.me
.REG
[0];
146 register_static_object(&once_value_1
);
147 } else fra
.me
.REG
[0] = once_value_1
;
148 fra
.me
.REG
[0] = fra
.me
.REG
[0];
151 stack_frame_head
= fra
.me
.prev
;
152 return fra
.me
.REG
[0];
154 val_t
file___Object___stderr(val_t p0
){
155 struct {struct stack_frame_t me
;} fra
;
157 static val_t once_value_1
; /* Once value */
158 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
159 fra
.me
.file
= LOCATE_file
;
161 fra
.me
.meth
= LOCATE_file___Object___stderr
;
162 fra
.me
.has_broke
= 0;
164 fra
.me
.REG
[0] = NIT_NULL
;
166 /* ./../lib/standard//file.nit:298 */
168 fra
.me
.REG
[0] = NEW_Stderr_file___Stderr___init();
169 once_value_1
= fra
.me
.REG
[0];
170 register_static_object(&once_value_1
);
171 } else fra
.me
.REG
[0] = once_value_1
;
172 fra
.me
.REG
[0] = fra
.me
.REG
[0];
175 stack_frame_head
= fra
.me
.prev
;
176 return fra
.me
.REG
[0];
178 val_t
file___FStream___path(val_t p0
){
179 struct {struct stack_frame_t me
;} fra
;
181 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
182 fra
.me
.file
= LOCATE_file
;
184 fra
.me
.meth
= LOCATE_file___FStream___path
;
185 fra
.me
.has_broke
= 0;
187 fra
.me
.REG
[0] = NIT_NULL
;
189 /* ./../lib/standard//file.nit:55 */
190 fra
.me
.REG
[0] = ATTR_file___FStream____path(fra
.me
.REG
[0]);
191 stack_frame_head
= fra
.me
.prev
;
192 return fra
.me
.REG
[0];
194 val_t
file___FStream___file_stat(val_t p0
){
195 struct {struct stack_frame_t me
;} fra
;
198 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
199 fra
.me
.file
= LOCATE_file
;
201 fra
.me
.meth
= LOCATE_file___FStream___file_stat
;
202 fra
.me
.has_broke
= 0;
204 fra
.me
.REG
[0] = NIT_NULL
;
206 /* ./../lib/standard//file.nit:62 */
207 fra
.me
.REG
[0] = ATTR_file___FStream____file(fra
.me
.REG
[0]);
208 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
209 if (UNTAG_Bool(REGB0
)) {
210 nit_abort("Reciever is null", NULL
, LOCATE_file
, 62);
212 fra
.me
.REG
[0] = CALL_file___NativeFile___file_stat(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
215 stack_frame_head
= fra
.me
.prev
;
216 return fra
.me
.REG
[0];
218 void file___IFStream___reopen(val_t p0
){
219 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
222 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
223 fra
.me
.file
= LOCATE_file
;
225 fra
.me
.meth
= LOCATE_file___IFStream___reopen
;
226 fra
.me
.has_broke
= 0;
228 fra
.me
.REG
[0] = NIT_NULL
;
229 fra
.me
.REG
[1] = NIT_NULL
;
231 /* ./../lib/standard//file.nit:73 */
232 REGB0
= CALL_stream___IStream___eof(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
233 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
234 if (UNTAG_Bool(REGB0
)) {
235 CALL_stream___IOS___close(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
237 /* ./../lib/standard//file.nit:74 */
238 fra
.me
.REG
[1] = ATTR_file___FStream____path(fra
.me
.REG
[0]);
239 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
240 if (UNTAG_Bool(REGB0
)) {
241 nit_abort("Reciever is null", NULL
, LOCATE_file
, 74);
243 fra
.me
.REG
[1] = CALL_string___String___to_cstring(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
244 fra
.me
.REG
[1] = CALL_file___NativeFileCapable___io_open_read(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
245 ATTR_file___FStream____file(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
246 /* ./../lib/standard//file.nit:75 */
247 REGB0
= TAG_Bool(false);
248 ATTR_file___IFStream____end_reached(fra
.me
.REG
[0]) = REGB0
;
249 /* ./../lib/standard//file.nit:76 */
251 ATTR_stream___BufferedIStream____buffer_pos(fra
.me
.REG
[0]) = REGB0
;
252 /* ./../lib/standard//file.nit:77 */
253 fra
.me
.REG
[0] = ATTR_stream___BufferedIStream____buffer(fra
.me
.REG
[0]);
254 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
255 if (UNTAG_Bool(REGB0
)) {
256 nit_abort("Reciever is null", NULL
, LOCATE_file
, 77);
258 CALL_abstract_collection___RemovableCollection___clear(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
259 stack_frame_head
= fra
.me
.prev
;
262 void file___IFStream___close(val_t p0
){
263 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
266 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
267 fra
.me
.file
= LOCATE_file
;
269 fra
.me
.meth
= LOCATE_file___IFStream___close
;
270 fra
.me
.has_broke
= 0;
272 fra
.me
.REG
[0] = NIT_NULL
;
273 fra
.me
.REG
[1] = NIT_NULL
;
275 /* ./../lib/standard//file.nit:82 */
276 fra
.me
.REG
[1] = ATTR_file___FStream____file(fra
.me
.REG
[0]);
277 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
278 if (UNTAG_Bool(REGB0
)) {
279 nit_abort("Reciever is null", NULL
, LOCATE_file
, 82);
281 REGB0
= CALL_file___NativeFile___io_close(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
282 /* ./../lib/standard//file.nit:83 */
283 REGB0
= TAG_Bool(true);
284 ATTR_file___IFStream____end_reached(fra
.me
.REG
[0]) = REGB0
;
285 stack_frame_head
= fra
.me
.prev
;
288 void file___IFStream___fill_buffer(val_t p0
){
289 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
293 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
294 fra
.me
.file
= LOCATE_file
;
296 fra
.me
.meth
= LOCATE_file___IFStream___fill_buffer
;
297 fra
.me
.has_broke
= 0;
299 fra
.me
.REG
[0] = NIT_NULL
;
300 fra
.me
.REG
[1] = NIT_NULL
;
301 fra
.me
.REG
[2] = NIT_NULL
;
302 fra
.me
.REG
[3] = NIT_NULL
;
304 /* ./../lib/standard//file.nit:89 */
305 fra
.me
.REG
[1] = ATTR_file___FStream____file(fra
.me
.REG
[0]);
306 fra
.me
.REG
[2] = ATTR_stream___BufferedIStream____buffer(fra
.me
.REG
[0]);
307 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
308 if (UNTAG_Bool(REGB0
)) {
309 nit_abort("Reciever is null", NULL
, LOCATE_file
, 89);
311 REGB0
= TAG_Bool(ATTR_string___AbstractString____items(fra
.me
.REG
[2])!=NIT_NULL
);
312 if (UNTAG_Bool(REGB0
)) {
314 nit_abort("Uninitialized attribute %s", "_items", LOCATE_file
, 89);
316 fra
.me
.REG
[2] = ATTR_string___AbstractString____items(fra
.me
.REG
[2]);
317 fra
.me
.REG
[3] = ATTR_stream___BufferedIStream____buffer(fra
.me
.REG
[0]);
318 REGB0
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
319 if (UNTAG_Bool(REGB0
)) {
320 nit_abort("Reciever is null", NULL
, LOCATE_file
, 89);
322 REGB0
= TAG_Bool(ATTR_string___Buffer____capacity(fra
.me
.REG
[3])!=NIT_NULL
);
323 if (UNTAG_Bool(REGB0
)) {
325 nit_abort("Uninitialized attribute %s", "_capacity", LOCATE_file
, 89);
327 REGB0
= ATTR_string___Buffer____capacity(fra
.me
.REG
[3]);
328 REGB1
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
329 if (UNTAG_Bool(REGB1
)) {
330 nit_abort("Reciever is null", NULL
, LOCATE_file
, 89);
332 REGB0
= CALL_file___NativeFile___io_read(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2], REGB0
);
333 /* ./../lib/standard//file.nit:90 */
335 /* ./../lib/standard//kernel.nit:211 */
336 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<=UNTAG_Int(REGB1
));
337 /* ./../lib/standard//file.nit:90 */
338 if (UNTAG_Bool(REGB1
)) {
339 /* ./../lib/standard//file.nit:91 */
340 REGB1
= TAG_Bool(true);
341 ATTR_file___IFStream____end_reached(fra
.me
.REG
[0]) = REGB1
;
342 /* ./../lib/standard//file.nit:92 */
346 /* ./../lib/standard//file.nit:94 */
347 fra
.me
.REG
[2] = ATTR_stream___BufferedIStream____buffer(fra
.me
.REG
[0]);
348 REGB1
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
349 if (UNTAG_Bool(REGB1
)) {
350 nit_abort("Reciever is null", NULL
, LOCATE_file
, 94);
352 ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[2]) = REGB0
;
353 /* ./../lib/standard//file.nit:95 */
355 ATTR_stream___BufferedIStream____buffer_pos(fra
.me
.REG
[0]) = REGB0
;
356 stack_frame_head
= fra
.me
.prev
;
359 val_t
file___IFStream___end_reached(val_t p0
){
360 struct {struct stack_frame_t me
;} fra
;
363 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
364 fra
.me
.file
= LOCATE_file
;
366 fra
.me
.meth
= LOCATE_file___IFStream___end_reached
;
367 fra
.me
.has_broke
= 0;
369 fra
.me
.REG
[0] = NIT_NULL
;
371 /* ./../lib/standard//file.nit:98 */
372 REGB0
= TAG_Bool(ATTR_file___IFStream____end_reached(fra
.me
.REG
[0])!=NIT_NULL
);
373 if (UNTAG_Bool(REGB0
)) {
375 nit_abort("Uninitialized attribute %s", "_end_reached", LOCATE_file
, 98);
377 REGB0
= ATTR_file___IFStream____end_reached(fra
.me
.REG
[0]);
378 stack_frame_head
= fra
.me
.prev
;
381 void file___IFStream___open(val_t p0
, val_t p1
, int* init_table
){
382 int itpos0
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_IFStream
].i
;
383 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
387 if (init_table
[itpos0
]) return;
388 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
389 fra
.me
.file
= LOCATE_file
;
391 fra
.me
.meth
= LOCATE_file___IFStream___open
;
392 fra
.me
.has_broke
= 0;
394 fra
.me
.REG
[0] = NIT_NULL
;
395 fra
.me
.REG
[1] = NIT_NULL
;
398 /* ./../lib/standard//file.nit:104 */
399 ATTR_file___FStream____path(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
400 /* ./../lib/standard//file.nit:105 */
402 CALL_stream___BufferedIStream___prepare_buffer(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
403 /* ./../lib/standard//file.nit:106 */
404 fra
.me
.REG
[1] = ATTR_file___FStream____path(fra
.me
.REG
[0]);
405 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
406 if (UNTAG_Bool(REGB0
)) {
407 nit_abort("Reciever is null", NULL
, LOCATE_file
, 106);
409 fra
.me
.REG
[1] = CALL_string___String___to_cstring(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
410 fra
.me
.REG
[1] = CALL_file___NativeFileCapable___io_open_read(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
411 ATTR_file___FStream____file(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
412 /* ./../lib/standard//file.nit:107 */
413 fra
.me
.REG
[0] = ATTR_file___FStream____file(fra
.me
.REG
[0]);
414 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
415 if (UNTAG_Bool(REGB0
)) {
417 REGB1
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
418 if (UNTAG_Bool(REGB1
)) {
419 REGB1
= TAG_Bool(false);
422 REGB1
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], NIT_NULL
);
426 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
427 if (UNTAG_Bool(REGB0
)) {
429 nit_abort("Assert %s failed", "'cant_open_file'", LOCATE_file
, 107);
431 stack_frame_head
= fra
.me
.prev
;
432 init_table
[itpos0
] = 1;
435 void file___IFStream___init(val_t p0
, int* init_table
){
436 int itpos1
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_IFStream
].i
;
437 struct {struct stack_frame_t me
;} fra
;
439 if (init_table
[itpos1
]) return;
440 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
441 fra
.me
.file
= LOCATE_file
;
443 fra
.me
.meth
= LOCATE_file___IFStream___init
;
444 fra
.me
.has_broke
= 0;
446 fra
.me
.REG
[0] = NIT_NULL
;
448 stack_frame_head
= fra
.me
.prev
;
449 init_table
[itpos1
] = 1;
452 void file___IFStream___without_file(val_t p0
, int* init_table
){
453 int itpos2
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_IFStream
].i
;
454 struct {struct stack_frame_t me
;} fra
;
456 if (init_table
[itpos2
]) return;
457 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
458 fra
.me
.file
= LOCATE_file
;
460 fra
.me
.meth
= LOCATE_file___IFStream___without_file
;
461 fra
.me
.has_broke
= 0;
463 fra
.me
.REG
[0] = NIT_NULL
;
465 stack_frame_head
= fra
.me
.prev
;
466 init_table
[itpos2
] = 1;
469 void file___OFStream___write(val_t p0
, val_t p1
){
470 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
473 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
474 fra
.me
.file
= LOCATE_file
;
476 fra
.me
.meth
= LOCATE_file___OFStream___write
;
477 fra
.me
.has_broke
= 0;
479 fra
.me
.REG
[0] = NIT_NULL
;
480 fra
.me
.REG
[1] = NIT_NULL
;
481 fra
.me
.REG
[2] = NIT_NULL
;
484 /* ./../lib/standard//file.nit:122 */
485 REGB0
= TAG_Bool(ATTR_file___OFStream____writable(fra
.me
.REG
[0])!=NIT_NULL
);
486 if (UNTAG_Bool(REGB0
)) {
488 nit_abort("Uninitialized attribute %s", "_writable", LOCATE_file
, 122);
490 REGB0
= ATTR_file___OFStream____writable(fra
.me
.REG
[0]);
491 if (UNTAG_Bool(REGB0
)) {
493 nit_abort("Assert failed", NULL
, LOCATE_file
, 122);
495 /* ./../lib/standard//file.nit:123 */
496 fra
.me
.REG
[2] = CALL_string___String___to_cstring(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
497 /* ./../lib/standard//collection//array.nit:23 */
498 REGB0
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[1])!=NIT_NULL
);
499 if (UNTAG_Bool(REGB0
)) {
501 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 23);
503 REGB0
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[1]);
504 /* ./../lib/standard//file.nit:123 */
505 CALL_file___OFStream___write_native(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[2], REGB0
);
506 stack_frame_head
= fra
.me
.prev
;
509 val_t
file___OFStream___is_writable(val_t p0
){
510 struct {struct stack_frame_t me
;} fra
;
513 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
514 fra
.me
.file
= LOCATE_file
;
516 fra
.me
.meth
= LOCATE_file___OFStream___is_writable
;
517 fra
.me
.has_broke
= 0;
519 fra
.me
.REG
[0] = NIT_NULL
;
521 /* ./../lib/standard//file.nit:126 */
522 REGB0
= TAG_Bool(ATTR_file___OFStream____writable(fra
.me
.REG
[0])!=NIT_NULL
);
523 if (UNTAG_Bool(REGB0
)) {
525 nit_abort("Uninitialized attribute %s", "_writable", LOCATE_file
, 126);
527 REGB0
= ATTR_file___OFStream____writable(fra
.me
.REG
[0]);
530 stack_frame_head
= fra
.me
.prev
;
533 void file___OFStream___close(val_t p0
){
534 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
537 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
538 fra
.me
.file
= LOCATE_file
;
540 fra
.me
.meth
= LOCATE_file___OFStream___close
;
541 fra
.me
.has_broke
= 0;
543 fra
.me
.REG
[0] = NIT_NULL
;
544 fra
.me
.REG
[1] = NIT_NULL
;
546 /* ./../lib/standard//file.nit:130 */
547 fra
.me
.REG
[1] = ATTR_file___FStream____file(fra
.me
.REG
[0]);
548 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
549 if (UNTAG_Bool(REGB0
)) {
550 nit_abort("Reciever is null", NULL
, LOCATE_file
, 130);
552 REGB0
= CALL_file___NativeFile___io_close(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
553 /* ./../lib/standard//file.nit:131 */
554 REGB0
= TAG_Bool(false);
555 ATTR_file___OFStream____writable(fra
.me
.REG
[0]) = REGB0
;
556 stack_frame_head
= fra
.me
.prev
;
559 void file___OFStream___write_native(val_t p0
, val_t p1
, val_t p2
){
560 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
566 static val_t once_value_1
; /* Once value */
567 static val_t once_value_2
; /* Once value */
568 static val_t once_value_3
; /* Once value */
569 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
570 fra
.me
.file
= LOCATE_file
;
572 fra
.me
.meth
= LOCATE_file___OFStream___write_native
;
573 fra
.me
.has_broke
= 0;
575 fra
.me
.REG
[0] = NIT_NULL
;
576 fra
.me
.REG
[1] = NIT_NULL
;
577 fra
.me
.REG
[2] = NIT_NULL
;
581 /* ./../lib/standard//file.nit:140 */
582 REGB1
= TAG_Bool(ATTR_file___OFStream____writable(fra
.me
.REG
[0])!=NIT_NULL
);
583 if (UNTAG_Bool(REGB1
)) {
585 nit_abort("Uninitialized attribute %s", "_writable", LOCATE_file
, 140);
587 REGB1
= ATTR_file___OFStream____writable(fra
.me
.REG
[0]);
588 if (UNTAG_Bool(REGB1
)) {
590 nit_abort("Assert failed", NULL
, LOCATE_file
, 140);
592 /* ./../lib/standard//file.nit:141 */
593 fra
.me
.REG
[2] = ATTR_file___FStream____file(fra
.me
.REG
[0]);
594 REGB1
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
595 if (UNTAG_Bool(REGB1
)) {
596 nit_abort("Reciever is null", NULL
, LOCATE_file
, 141);
598 REGB1
= CALL_file___NativeFile___io_write(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1], REGB0
);
599 /* ./../lib/standard//file.nit:142 */
600 REGB2
= TAG_Bool(IS_EQUAL_OO(REGB1
,REGB0
));
601 if (UNTAG_Bool(REGB2
)) {
603 /* ./../lib/standard//kernel.nit:207 */
604 REGB3
= TAG_Bool((REGB1
)==(REGB0
));
605 /* ./../lib/standard//file.nit:142 */
608 REGB2
= TAG_Bool(!UNTAG_Bool(REGB2
));
609 if (UNTAG_Bool(REGB2
)) {
610 /* ./../lib/standard//file.nit:144 */
612 fra
.me
.REG
[1] = NEW_Array_array___Array___with_capacity(REGB2
);
614 fra
.me
.REG
[2] = BOX_NativeString("Problem in writing : ");
616 fra
.me
.REG
[2] = NEW_String_string___String___with_native(fra
.me
.REG
[2], REGB2
);
617 once_value_1
= fra
.me
.REG
[2];
618 register_static_object(&once_value_1
);
619 } else fra
.me
.REG
[2] = once_value_1
;
620 fra
.me
.REG
[2] = fra
.me
.REG
[2];
621 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
622 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], REGB1
);
624 fra
.me
.REG
[2] = BOX_NativeString(" ");
626 fra
.me
.REG
[2] = NEW_String_string___String___with_native(fra
.me
.REG
[2], REGB1
);
627 once_value_2
= fra
.me
.REG
[2];
628 register_static_object(&once_value_2
);
629 } else fra
.me
.REG
[2] = once_value_2
;
630 fra
.me
.REG
[2] = fra
.me
.REG
[2];
631 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
632 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], REGB0
);
634 fra
.me
.REG
[2] = BOX_NativeString("\n");
636 fra
.me
.REG
[2] = NEW_String_string___String___with_native(fra
.me
.REG
[2], REGB0
);
637 once_value_3
= fra
.me
.REG
[2];
638 register_static_object(&once_value_3
);
639 } else fra
.me
.REG
[2] = once_value_3
;
640 fra
.me
.REG
[2] = fra
.me
.REG
[2];
641 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
642 CALL_file___Object___printn(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
644 stack_frame_head
= fra
.me
.prev
;
647 void file___OFStream___open(val_t p0
, val_t p1
, int* init_table
){
648 int itpos3
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_OFStream
].i
;
649 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
653 if (init_table
[itpos3
]) return;
654 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
655 fra
.me
.file
= LOCATE_file
;
657 fra
.me
.meth
= LOCATE_file___OFStream___open
;
658 fra
.me
.has_broke
= 0;
660 fra
.me
.REG
[0] = NIT_NULL
;
661 fra
.me
.REG
[1] = NIT_NULL
;
662 fra
.me
.REG
[2] = NIT_NULL
;
665 /* ./../lib/standard//file.nit:151 */
666 fra
.me
.REG
[2] = CALL_string___String___to_cstring(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
667 fra
.me
.REG
[2] = CALL_file___NativeFileCapable___io_open_write(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[2]);
668 ATTR_file___FStream____file(fra
.me
.REG
[0]) = fra
.me
.REG
[2];
669 /* ./../lib/standard//file.nit:152 */
670 fra
.me
.REG
[2] = ATTR_file___FStream____file(fra
.me
.REG
[0]);
671 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
672 if (UNTAG_Bool(REGB0
)) {
674 REGB1
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
675 if (UNTAG_Bool(REGB1
)) {
676 REGB1
= TAG_Bool(false);
679 REGB1
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], NIT_NULL
);
683 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
684 if (UNTAG_Bool(REGB0
)) {
686 nit_abort("Assert %s failed", "'cant_open_file'", LOCATE_file
, 152);
688 /* ./../lib/standard//file.nit:153 */
689 ATTR_file___FStream____path(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
690 /* ./../lib/standard//file.nit:154 */
691 REGB0
= TAG_Bool(true);
692 ATTR_file___OFStream____writable(fra
.me
.REG
[0]) = REGB0
;
693 stack_frame_head
= fra
.me
.prev
;
694 init_table
[itpos3
] = 1;
697 void file___OFStream___init(val_t p0
, int* init_table
){
698 int itpos4
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_OFStream
].i
;
699 struct {struct stack_frame_t me
;} fra
;
701 if (init_table
[itpos4
]) return;
702 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
703 fra
.me
.file
= LOCATE_file
;
705 fra
.me
.meth
= LOCATE_file___OFStream___init
;
706 fra
.me
.has_broke
= 0;
708 fra
.me
.REG
[0] = NIT_NULL
;
710 stack_frame_head
= fra
.me
.prev
;
711 init_table
[itpos4
] = 1;
714 void file___OFStream___without_file(val_t p0
, int* init_table
){
715 int itpos5
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_OFStream
].i
;
716 struct {struct stack_frame_t me
;} fra
;
718 if (init_table
[itpos5
]) return;
719 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
720 fra
.me
.file
= LOCATE_file
;
722 fra
.me
.meth
= LOCATE_file___OFStream___without_file
;
723 fra
.me
.has_broke
= 0;
725 fra
.me
.REG
[0] = NIT_NULL
;
727 stack_frame_head
= fra
.me
.prev
;
728 init_table
[itpos5
] = 1;
731 void file___Stdin___init(val_t p0
, int* init_table
){
732 int itpos6
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_Stdin
].i
;
733 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
736 static val_t once_value_1
; /* Once value */
737 if (init_table
[itpos6
]) return;
738 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
739 fra
.me
.file
= LOCATE_file
;
741 fra
.me
.meth
= LOCATE_file___Stdin___init
;
742 fra
.me
.has_broke
= 0;
744 fra
.me
.REG
[0] = NIT_NULL
;
745 fra
.me
.REG
[1] = NIT_NULL
;
747 /* ./../lib/standard//file.nit:165 */
748 fra
.me
.REG
[1] = fra
.me
.REG
[0];
749 CALL_file___IFStream___init(fra
.me
.REG
[0])(fra
.me
.REG
[0], init_table
);
750 /* ./../lib/standard//file.nit:166 */
751 fra
.me
.REG
[0] = CALL_file___NativeFileCapable___native_stdin(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
752 ATTR_file___FStream____file(fra
.me
.REG
[1]) = fra
.me
.REG
[0];
753 /* ./../lib/standard//file.nit:167 */
755 fra
.me
.REG
[0] = BOX_NativeString("/dev/stdin");
757 fra
.me
.REG
[0] = NEW_String_string___String___with_native(fra
.me
.REG
[0], REGB0
);
758 once_value_1
= fra
.me
.REG
[0];
759 register_static_object(&once_value_1
);
760 } else fra
.me
.REG
[0] = once_value_1
;
761 fra
.me
.REG
[0] = fra
.me
.REG
[0];
762 ATTR_file___FStream____path(fra
.me
.REG
[1]) = fra
.me
.REG
[0];
763 /* ./../lib/standard//file.nit:168 */
765 CALL_stream___BufferedIStream___prepare_buffer(fra
.me
.REG
[1])(fra
.me
.REG
[1], REGB0
);
766 stack_frame_head
= fra
.me
.prev
;
767 init_table
[itpos6
] = 1;
770 void file___Stdout___init(val_t p0
, int* init_table
){
771 int itpos7
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_Stdout
].i
;
772 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
775 static val_t once_value_1
; /* Once value */
776 if (init_table
[itpos7
]) return;
777 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
778 fra
.me
.file
= LOCATE_file
;
780 fra
.me
.meth
= LOCATE_file___Stdout___init
;
781 fra
.me
.has_broke
= 0;
783 fra
.me
.REG
[0] = NIT_NULL
;
784 fra
.me
.REG
[1] = NIT_NULL
;
786 /* ./../lib/standard//file.nit:174 */
787 fra
.me
.REG
[1] = fra
.me
.REG
[0];
788 CALL_file___OFStream___init(fra
.me
.REG
[0])(fra
.me
.REG
[0], init_table
);
789 /* ./../lib/standard//file.nit:175 */
790 fra
.me
.REG
[0] = CALL_file___NativeFileCapable___native_stdout(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
791 ATTR_file___FStream____file(fra
.me
.REG
[1]) = fra
.me
.REG
[0];
792 /* ./../lib/standard//file.nit:176 */
794 fra
.me
.REG
[0] = BOX_NativeString("/dev/stdout");
796 fra
.me
.REG
[0] = NEW_String_string___String___with_native(fra
.me
.REG
[0], REGB0
);
797 once_value_1
= fra
.me
.REG
[0];
798 register_static_object(&once_value_1
);
799 } else fra
.me
.REG
[0] = once_value_1
;
800 fra
.me
.REG
[0] = fra
.me
.REG
[0];
801 ATTR_file___FStream____path(fra
.me
.REG
[1]) = fra
.me
.REG
[0];
802 /* ./../lib/standard//file.nit:177 */
803 REGB0
= TAG_Bool(true);
804 ATTR_file___OFStream____writable(fra
.me
.REG
[1]) = REGB0
;
805 stack_frame_head
= fra
.me
.prev
;
806 init_table
[itpos7
] = 1;
809 void file___Stderr___init(val_t p0
, int* init_table
){
810 int itpos8
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_Stderr
].i
;
811 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
814 static val_t once_value_1
; /* Once value */
815 if (init_table
[itpos8
]) return;
816 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
817 fra
.me
.file
= LOCATE_file
;
819 fra
.me
.meth
= LOCATE_file___Stderr___init
;
820 fra
.me
.has_broke
= 0;
822 fra
.me
.REG
[0] = NIT_NULL
;
823 fra
.me
.REG
[1] = NIT_NULL
;
825 /* ./../lib/standard//file.nit:183 */
826 fra
.me
.REG
[1] = fra
.me
.REG
[0];
827 CALL_file___OFStream___init(fra
.me
.REG
[0])(fra
.me
.REG
[0], init_table
);
828 /* ./../lib/standard//file.nit:184 */
829 fra
.me
.REG
[0] = CALL_file___NativeFileCapable___native_stderr(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
830 ATTR_file___FStream____file(fra
.me
.REG
[1]) = fra
.me
.REG
[0];
831 /* ./../lib/standard//file.nit:185 */
833 fra
.me
.REG
[0] = BOX_NativeString("/dev/stderr");
835 fra
.me
.REG
[0] = NEW_String_string___String___with_native(fra
.me
.REG
[0], REGB0
);
836 once_value_1
= fra
.me
.REG
[0];
837 register_static_object(&once_value_1
);
838 } else fra
.me
.REG
[0] = once_value_1
;
839 fra
.me
.REG
[0] = fra
.me
.REG
[0];
840 ATTR_file___FStream____path(fra
.me
.REG
[1]) = fra
.me
.REG
[0];
841 /* ./../lib/standard//file.nit:186 */
842 REGB0
= TAG_Bool(true);
843 ATTR_file___OFStream____writable(fra
.me
.REG
[1]) = REGB0
;
844 stack_frame_head
= fra
.me
.prev
;
845 init_table
[itpos8
] = 1;
848 val_t
file___String___file_exists(val_t p0
){
849 struct {struct stack_frame_t me
;} fra
;
852 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
853 fra
.me
.file
= LOCATE_file
;
855 fra
.me
.meth
= LOCATE_file___String___file_exists
;
856 fra
.me
.has_broke
= 0;
858 fra
.me
.REG
[0] = NIT_NULL
;
860 /* ./../lib/standard//file.nit:194 */
861 fra
.me
.REG
[0] = CALL_string___String___to_cstring(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
862 REGB0
= CALL_file___NativeString___file_exists(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
865 stack_frame_head
= fra
.me
.prev
;
868 val_t
file___String___file_stat(val_t p0
){
869 struct {struct stack_frame_t me
;} fra
;
871 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
872 fra
.me
.file
= LOCATE_file
;
874 fra
.me
.meth
= LOCATE_file___String___file_stat
;
875 fra
.me
.has_broke
= 0;
877 fra
.me
.REG
[0] = NIT_NULL
;
879 /* ./../lib/standard//file.nit:196 */
880 fra
.me
.REG
[0] = CALL_string___String___to_cstring(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
881 fra
.me
.REG
[0] = CALL_file___NativeString___file_stat(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
884 stack_frame_head
= fra
.me
.prev
;
885 return fra
.me
.REG
[0];
887 val_t
file___String___file_delete(val_t p0
){
888 struct {struct stack_frame_t me
;} fra
;
891 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
892 fra
.me
.file
= LOCATE_file
;
894 fra
.me
.meth
= LOCATE_file___String___file_delete
;
895 fra
.me
.has_broke
= 0;
897 fra
.me
.REG
[0] = NIT_NULL
;
899 /* ./../lib/standard//file.nit:198 */
900 fra
.me
.REG
[0] = CALL_string___String___to_cstring(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
901 REGB0
= CALL_file___NativeString___file_delete(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
904 stack_frame_head
= fra
.me
.prev
;
907 val_t
file___String___strip_extension(val_t p0
, val_t p1
){
908 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
913 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
914 fra
.me
.file
= LOCATE_file
;
916 fra
.me
.meth
= LOCATE_file___String___strip_extension
;
917 fra
.me
.has_broke
= 0;
919 fra
.me
.REG
[0] = NIT_NULL
;
920 fra
.me
.REG
[1] = NIT_NULL
;
923 /* ./../lib/standard//file.nit:202 */
924 REGB0
= CALL_string___AbstractString___has_suffix(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
925 if (UNTAG_Bool(REGB0
)) {
926 /* ./../lib/standard//file.nit:203 */
928 /* ./../lib/standard//collection//array.nit:23 */
929 REGB1
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
930 if (UNTAG_Bool(REGB1
)) {
932 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 23);
934 REGB1
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0]);
935 REGB2
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[1])!=NIT_NULL
);
936 if (UNTAG_Bool(REGB2
)) {
938 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 23);
940 REGB2
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[1]);
941 /* ./../lib/standard//kernel.nit:217 */
942 REGB2
= TAG_Int(UNTAG_Int(REGB1
)-UNTAG_Int(REGB2
));
943 /* ./../lib/standard//file.nit:203 */
944 fra
.me
.REG
[1] = CALL_string___AbstractString___substring(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
, REGB2
);
947 /* ./../lib/standard//file.nit:205 */
948 fra
.me
.REG
[1] = fra
.me
.REG
[0];
951 stack_frame_head
= fra
.me
.prev
;
952 return fra
.me
.REG
[1];
954 val_t
file___String___basename(val_t p0
, val_t p1
){
955 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
960 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
961 fra
.me
.file
= LOCATE_file
;
963 fra
.me
.meth
= LOCATE_file___String___basename
;
964 fra
.me
.has_broke
= 0;
966 fra
.me
.REG
[0] = NIT_NULL
;
967 fra
.me
.REG
[1] = NIT_NULL
;
968 fra
.me
.REG
[2] = NIT_NULL
;
971 /* ./../lib/standard//file.nit:210 */
972 REGB0
= TAG_Char('/');
973 REGB1
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
974 if (UNTAG_Bool(REGB1
)) {
976 nit_abort("Uninitialized attribute %s", "_length", LOCATE_file
, 210);
978 REGB1
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0]);
980 /* ./../lib/standard//kernel.nit:217 */
981 REGB2
= TAG_Int(UNTAG_Int(REGB1
)-UNTAG_Int(REGB2
));
982 /* ./../lib/standard//file.nit:210 */
983 REGB2
= CALL_array___AbstractArrayRead___last_index_of_from(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
, REGB2
);
984 /* ./../lib/standard//file.nit:211 */
985 fra
.me
.REG
[2] = fra
.me
.REG
[0];
986 /* ./../lib/standard//file.nit:212 */
988 /* ./../lib/standard//kernel.nit:213 */
989 REGB0
= TAG_Bool(UNTAG_Int(REGB2
)>=UNTAG_Int(REGB0
));
990 /* ./../lib/standard//file.nit:212 */
991 if (UNTAG_Bool(REGB0
)) {
992 /* ./../lib/standard//file.nit:213 */
994 /* ./../lib/standard//kernel.nit:215 */
995 REGB0
= TAG_Int(UNTAG_Int(REGB2
)+UNTAG_Int(REGB0
));
996 /* ./../lib/standard//file.nit:213 */
997 fra
.me
.REG
[0] = CALL_string___AbstractString___substring_from(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
998 fra
.me
.REG
[2] = fra
.me
.REG
[0];
1000 /* ./../lib/standard//file.nit:215 */
1001 fra
.me
.REG
[1] = CALL_file___String___strip_extension(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
1004 stack_frame_head
= fra
.me
.prev
;
1005 return fra
.me
.REG
[1];
1007 val_t
file___String___dirname(val_t p0
){
1008 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1013 static val_t once_value_2
; /* Once value */
1014 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1015 fra
.me
.file
= LOCATE_file
;
1017 fra
.me
.meth
= LOCATE_file___String___dirname
;
1018 fra
.me
.has_broke
= 0;
1019 fra
.me
.REG_size
= 2;
1020 fra
.me
.REG
[0] = NIT_NULL
;
1021 fra
.me
.REG
[1] = NIT_NULL
;
1023 /* ./../lib/standard//file.nit:220 */
1024 REGB0
= TAG_Char('/');
1025 REGB1
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
1026 if (UNTAG_Bool(REGB1
)) {
1028 nit_abort("Uninitialized attribute %s", "_length", LOCATE_file
, 220);
1030 REGB1
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0]);
1032 /* ./../lib/standard//kernel.nit:217 */
1033 REGB2
= TAG_Int(UNTAG_Int(REGB1
)-UNTAG_Int(REGB2
));
1034 /* ./../lib/standard//file.nit:220 */
1035 REGB2
= CALL_array___AbstractArrayRead___last_index_of_from(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
, REGB2
);
1036 /* ./../lib/standard//file.nit:221 */
1038 /* ./../lib/standard//kernel.nit:213 */
1039 REGB0
= TAG_Bool(UNTAG_Int(REGB2
)>=UNTAG_Int(REGB0
));
1040 /* ./../lib/standard//file.nit:221 */
1041 if (UNTAG_Bool(REGB0
)) {
1042 /* ./../lib/standard//file.nit:222 */
1044 fra
.me
.REG
[0] = CALL_string___AbstractString___substring(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
, REGB2
);
1047 /* ./../lib/standard//file.nit:224 */
1048 if (!once_value_2
) {
1049 fra
.me
.REG
[1] = BOX_NativeString(".");
1051 fra
.me
.REG
[1] = NEW_String_string___String___with_native(fra
.me
.REG
[1], REGB2
);
1052 once_value_2
= fra
.me
.REG
[1];
1053 register_static_object(&once_value_2
);
1054 } else fra
.me
.REG
[1] = once_value_2
;
1055 fra
.me
.REG
[1] = fra
.me
.REG
[1];
1056 fra
.me
.REG
[0] = fra
.me
.REG
[1];
1060 stack_frame_head
= fra
.me
.prev
;
1061 return fra
.me
.REG
[0];
1063 val_t
file___String___file_path(val_t p0
){
1064 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1069 static val_t once_value_2
; /* Once value */
1070 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1071 fra
.me
.file
= LOCATE_file
;
1073 fra
.me
.meth
= LOCATE_file___String___file_path
;
1074 fra
.me
.has_broke
= 0;
1075 fra
.me
.REG_size
= 2;
1076 fra
.me
.REG
[0] = NIT_NULL
;
1077 fra
.me
.REG
[1] = NIT_NULL
;
1079 /* ./../lib/standard//file.nit:230 */
1080 REGB0
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
1081 if (UNTAG_Bool(REGB0
)) {
1083 nit_abort("Uninitialized attribute %s", "_length", LOCATE_file
, 230);
1085 REGB0
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[0]);
1086 /* ./../lib/standard//file.nit:231 */
1087 REGB1
= TAG_Char('/');
1089 /* ./../lib/standard//kernel.nit:217 */
1090 REGB2
= TAG_Int(UNTAG_Int(REGB0
)-UNTAG_Int(REGB2
));
1091 /* ./../lib/standard//file.nit:231 */
1092 REGB2
= CALL_array___AbstractArrayRead___last_index_of_from(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB1
, REGB2
);
1093 /* ./../lib/standard//file.nit:232 */
1095 /* ./../lib/standard//kernel.nit:213 */
1096 REGB1
= TAG_Bool(UNTAG_Int(REGB2
)>=UNTAG_Int(REGB1
));
1097 /* ./../lib/standard//file.nit:232 */
1098 if (UNTAG_Bool(REGB1
)) {
1099 /* ./../lib/standard//file.nit:233 */
1101 fra
.me
.REG
[0] = CALL_string___AbstractString___substring(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB1
, REGB2
);
1104 /* ./../lib/standard//file.nit:235 */
1105 if (!once_value_2
) {
1106 fra
.me
.REG
[1] = BOX_NativeString(".");
1108 fra
.me
.REG
[1] = NEW_String_string___String___with_native(fra
.me
.REG
[1], REGB2
);
1109 once_value_2
= fra
.me
.REG
[1];
1110 register_static_object(&once_value_2
);
1111 } else fra
.me
.REG
[1] = once_value_2
;
1112 fra
.me
.REG
[1] = fra
.me
.REG
[1];
1113 fra
.me
.REG
[0] = fra
.me
.REG
[1];
1116 stack_frame_head
= fra
.me
.prev
;
1117 return fra
.me
.REG
[0];
1119 void file___String___mkdir(val_t p0
){
1120 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
1125 static val_t once_value_1
; /* Once value */
1126 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1127 fra
.me
.file
= LOCATE_file
;
1129 fra
.me
.meth
= LOCATE_file___String___mkdir
;
1130 fra
.me
.has_broke
= 0;
1131 fra
.me
.REG_size
= 4;
1132 fra
.me
.REG
[0] = NIT_NULL
;
1133 fra
.me
.REG
[1] = NIT_NULL
;
1134 fra
.me
.REG
[2] = NIT_NULL
;
1135 fra
.me
.REG
[3] = NIT_NULL
;
1137 /* ./../lib/standard//file.nit:241 */
1138 if (!once_value_1
) {
1139 fra
.me
.REG
[1] = BOX_NativeString("/");
1141 fra
.me
.REG
[1] = NEW_String_string___String___with_native(fra
.me
.REG
[1], REGB0
);
1142 once_value_1
= fra
.me
.REG
[1];
1143 register_static_object(&once_value_1
);
1144 } else fra
.me
.REG
[1] = once_value_1
;
1145 fra
.me
.REG
[1] = fra
.me
.REG
[1];
1146 fra
.me
.REG
[1] = CALL_string_search___String___split_with(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
1147 /* ./../lib/standard//file.nit:242 */
1148 fra
.me
.REG
[0] = NEW_Buffer_string___Buffer___init();
1149 /* ./../lib/standard//file.nit:243 */
1150 REGB0
= CALL_abstract_collection___Collection___is_empty(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1151 if (UNTAG_Bool(REGB0
)) {
1154 /* ./../lib/standard//file.nit:244 */
1156 /* ./../lib/standard//collection//array.nit:243 */
1157 fra
.me
.REG
[2] = fra
.me
.REG
[1];
1158 /* ./../lib/standard//collection//array.nit:245 */
1160 /* ./../lib/standard//kernel.nit:213 */
1161 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB1
));
1162 /* ./../lib/standard//collection//array.nit:245 */
1163 if (UNTAG_Bool(REGB1
)) {
1164 REGB1
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
1165 if (UNTAG_Bool(REGB1
)) {
1167 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 245);
1169 REGB1
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[2]);
1170 /* ./../lib/standard//kernel.nit:212 */
1171 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
1173 /* ./../lib/standard//collection//array.nit:245 */
1174 REGB2
= TAG_Bool(false);
1177 if (UNTAG_Bool(REGB1
)) {
1179 nit_abort("Assert %s failed", "'index'", LOCATE_array
, 245);
1181 /* ./../lib/standard//collection//array.nit:246 */
1182 fra
.me
.REG
[2] = ATTR_array___Array____items(fra
.me
.REG
[2]);
1183 REGB1
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
1184 if (UNTAG_Bool(REGB1
)) {
1185 nit_abort("Reciever is null", NULL
, LOCATE_array
, 246);
1187 /* ./../lib/standard//collection//array.nit:654 */
1188 fra
.me
.REG
[2] = ((Nit_NativeArray
)fra
.me
.REG
[2])->val
[UNTAG_Int(REGB0
)];
1189 /* ./../lib/standard//collection//array.nit:246 */
1192 /* ./../lib/standard//file.nit:244 */
1193 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
1194 if (UNTAG_Bool(REGB0
)) {
1195 nit_abort("Reciever is null", NULL
, LOCATE_file
, 244);
1197 REGB0
= CALL_abstract_collection___Collection___is_empty(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
1198 if (UNTAG_Bool(REGB0
)) {
1199 /* ./../lib/standard//file.nit:246 */
1200 REGB0
= TAG_Char('/');
1201 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
1203 /* ./../lib/standard//collection//array.nit:234 */
1205 /* ./../lib/standard//collection//array.nit:235 */
1206 REGB1
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[1])!=NIT_NULL
);
1207 if (UNTAG_Bool(REGB1
)) {
1209 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 235);
1211 REGB1
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[1]);
1212 /* ./../lib/standard//collection//array.nit:236 */
1213 fra
.me
.REG
[2] = ATTR_array___Array____items(fra
.me
.REG
[1]);
1214 /* ./../lib/standard//collection//array.nit:237 */
1216 /* ./../lib/standard//collection//array.nit:23 */
1217 REGB1
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[1])!=NIT_NULL
);
1218 if (UNTAG_Bool(REGB1
)) {
1220 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 23);
1222 REGB1
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[1]);
1223 /* ./../lib/standard//kernel.nit:212 */
1224 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
1225 /* ./../lib/standard//collection//array.nit:237 */
1226 if (UNTAG_Bool(REGB1
)) {
1227 /* ./../lib/standard//collection//array.nit:238 */
1228 REGB1
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
1229 if (UNTAG_Bool(REGB1
)) {
1230 nit_abort("Reciever is null", NULL
, LOCATE_array
, 238);
1232 /* ./../lib/standard//collection//array.nit:654 */
1233 fra
.me
.REG
[3] = ((Nit_NativeArray
)fra
.me
.REG
[2])->val
[UNTAG_Int(REGB0
)];
1234 /* ./../lib/standard//file.nit:249 */
1235 REGB1
= CALL_abstract_collection___Collection___is_empty(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
1236 if (UNTAG_Bool(REGB1
)) {
1239 /* ./../lib/standard//file.nit:250 */
1240 CALL_abstract_collection___Sequence___append(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[3]);
1241 /* ./../lib/standard//file.nit:251 */
1242 REGB1
= TAG_Char('/');
1243 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB1
);
1244 /* ./../lib/standard//file.nit:252 */
1245 fra
.me
.REG
[3] = CALL_string___Object___to_s(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1246 fra
.me
.REG
[3] = CALL_string___String___to_cstring(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
1247 CALL_file___NativeString___file_mkdir(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
1249 /* ./../lib/standard//collection//array.nit:239 */
1251 /* ./../lib/standard//kernel.nit:215 */
1252 REGB1
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
1253 /* ./../lib/standard//collection//array.nit:239 */
1256 /* ./../lib/standard//collection//array.nit:237 */
1262 stack_frame_head
= fra
.me
.prev
;
1265 val_t
file___NativeString___file_exists(val_t p0
){
1266 struct {struct stack_frame_t me
;} fra
;
1269 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1270 fra
.me
.file
= LOCATE_file
;
1272 fra
.me
.meth
= LOCATE_file___NativeString___file_exists
;
1273 fra
.me
.has_broke
= 0;
1274 fra
.me
.REG_size
= 1;
1275 fra
.me
.REG
[0] = NIT_NULL
;
1277 /* ./../lib/standard//file.nit:258 */
1278 REGB0
= TAG_Bool(string_NativeString_NativeString_file_exists_0(UNBOX_NativeString(fra
.me
.REG
[0])));
1279 stack_frame_head
= fra
.me
.prev
;
1282 val_t
file___NativeString___file_stat(val_t p0
){
1283 struct {struct stack_frame_t me
;} fra
;
1285 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1286 fra
.me
.file
= LOCATE_file
;
1288 fra
.me
.meth
= LOCATE_file___NativeString___file_stat
;
1289 fra
.me
.has_broke
= 0;
1290 fra
.me
.REG_size
= 1;
1291 fra
.me
.REG
[0] = NIT_NULL
;
1293 /* ./../lib/standard//file.nit:259 */
1294 fra
.me
.REG
[0] = BOX_FileStat(string_NativeString_NativeString_file_stat_0(UNBOX_NativeString(fra
.me
.REG
[0])));
1295 stack_frame_head
= fra
.me
.prev
;
1296 return fra
.me
.REG
[0];
1298 val_t
file___NativeString___file_mkdir(val_t p0
){
1299 struct {struct stack_frame_t me
;} fra
;
1302 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1303 fra
.me
.file
= LOCATE_file
;
1305 fra
.me
.meth
= LOCATE_file___NativeString___file_mkdir
;
1306 fra
.me
.has_broke
= 0;
1307 fra
.me
.REG_size
= 1;
1308 fra
.me
.REG
[0] = NIT_NULL
;
1310 /* ./../lib/standard//file.nit:260 */
1311 REGB0
= TAG_Bool(string_NativeString_NativeString_file_mkdir_0(UNBOX_NativeString(fra
.me
.REG
[0])));
1312 stack_frame_head
= fra
.me
.prev
;
1315 val_t
file___NativeString___file_delete(val_t p0
){
1316 struct {struct stack_frame_t me
;} fra
;
1319 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1320 fra
.me
.file
= LOCATE_file
;
1322 fra
.me
.meth
= LOCATE_file___NativeString___file_delete
;
1323 fra
.me
.has_broke
= 0;
1324 fra
.me
.REG_size
= 1;
1325 fra
.me
.REG
[0] = NIT_NULL
;
1327 /* ./../lib/standard//file.nit:261 */
1328 REGB0
= TAG_Bool(string_NativeString_NativeString_file_delete_0(UNBOX_NativeString(fra
.me
.REG
[0])));
1329 stack_frame_head
= fra
.me
.prev
;
1332 val_t
file___FileStat___mode(val_t p0
){
1333 struct {struct stack_frame_t me
;} fra
;
1336 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1337 fra
.me
.file
= LOCATE_file
;
1339 fra
.me
.meth
= LOCATE_file___FileStat___mode
;
1340 fra
.me
.has_broke
= 0;
1341 fra
.me
.REG_size
= 1;
1342 fra
.me
.REG
[0] = NIT_NULL
;
1344 /* ./../lib/standard//file.nit:266 */
1345 REGB0
= TAG_Int(file_FileStat_FileStat_mode_0(UNBOX_FileStat(fra
.me
.REG
[0])));
1346 stack_frame_head
= fra
.me
.prev
;
1349 val_t
file___FileStat___atime(val_t p0
){
1350 struct {struct stack_frame_t me
;} fra
;
1353 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1354 fra
.me
.file
= LOCATE_file
;
1356 fra
.me
.meth
= LOCATE_file___FileStat___atime
;
1357 fra
.me
.has_broke
= 0;
1358 fra
.me
.REG_size
= 1;
1359 fra
.me
.REG
[0] = NIT_NULL
;
1361 /* ./../lib/standard//file.nit:268 */
1362 REGB0
= TAG_Int(file_FileStat_FileStat_atime_0(UNBOX_FileStat(fra
.me
.REG
[0])));
1363 stack_frame_head
= fra
.me
.prev
;
1366 val_t
file___FileStat___ctime(val_t p0
){
1367 struct {struct stack_frame_t me
;} fra
;
1370 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1371 fra
.me
.file
= LOCATE_file
;
1373 fra
.me
.meth
= LOCATE_file___FileStat___ctime
;
1374 fra
.me
.has_broke
= 0;
1375 fra
.me
.REG_size
= 1;
1376 fra
.me
.REG
[0] = NIT_NULL
;
1378 /* ./../lib/standard//file.nit:269 */
1379 REGB0
= TAG_Int(file_FileStat_FileStat_ctime_0(UNBOX_FileStat(fra
.me
.REG
[0])));
1380 stack_frame_head
= fra
.me
.prev
;
1383 val_t
file___FileStat___mtime(val_t p0
){
1384 struct {struct stack_frame_t me
;} fra
;
1387 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1388 fra
.me
.file
= LOCATE_file
;
1390 fra
.me
.meth
= LOCATE_file___FileStat___mtime
;
1391 fra
.me
.has_broke
= 0;
1392 fra
.me
.REG_size
= 1;
1393 fra
.me
.REG
[0] = NIT_NULL
;
1395 /* ./../lib/standard//file.nit:270 */
1396 REGB0
= TAG_Int(file_FileStat_FileStat_mtime_0(UNBOX_FileStat(fra
.me
.REG
[0])));
1397 stack_frame_head
= fra
.me
.prev
;
1400 val_t
file___FileStat___size(val_t p0
){
1401 struct {struct stack_frame_t me
;} fra
;
1404 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1405 fra
.me
.file
= LOCATE_file
;
1407 fra
.me
.meth
= LOCATE_file___FileStat___size
;
1408 fra
.me
.has_broke
= 0;
1409 fra
.me
.REG_size
= 1;
1410 fra
.me
.REG
[0] = NIT_NULL
;
1412 /* ./../lib/standard//file.nit:271 */
1413 REGB0
= TAG_Int(file_FileStat_FileStat_size_0(UNBOX_FileStat(fra
.me
.REG
[0])));
1414 stack_frame_head
= fra
.me
.prev
;
1417 val_t
file___NativeFile___io_read(val_t p0
, val_t p1
, val_t p2
){
1418 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1421 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1422 fra
.me
.file
= LOCATE_file
;
1424 fra
.me
.meth
= LOCATE_file___NativeFile___io_read
;
1425 fra
.me
.has_broke
= 0;
1426 fra
.me
.REG_size
= 2;
1427 fra
.me
.REG
[0] = NIT_NULL
;
1428 fra
.me
.REG
[1] = NIT_NULL
;
1432 /* ./../lib/standard//file.nit:277 */
1433 REGB0
= TAG_Int(file_NativeFile_NativeFile_io_read_2(UNBOX_NativeFile(fra
.me
.REG
[0]), UNBOX_NativeString(fra
.me
.REG
[1]), UNTAG_Int(REGB0
)));
1434 stack_frame_head
= fra
.me
.prev
;
1437 val_t
file___NativeFile___io_write(val_t p0
, val_t p1
, val_t p2
){
1438 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1441 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1442 fra
.me
.file
= LOCATE_file
;
1444 fra
.me
.meth
= LOCATE_file___NativeFile___io_write
;
1445 fra
.me
.has_broke
= 0;
1446 fra
.me
.REG_size
= 2;
1447 fra
.me
.REG
[0] = NIT_NULL
;
1448 fra
.me
.REG
[1] = NIT_NULL
;
1452 /* ./../lib/standard//file.nit:278 */
1453 REGB0
= TAG_Int(file_NativeFile_NativeFile_io_write_2(UNBOX_NativeFile(fra
.me
.REG
[0]), UNBOX_NativeString(fra
.me
.REG
[1]), UNTAG_Int(REGB0
)));
1454 stack_frame_head
= fra
.me
.prev
;
1457 val_t
file___NativeFile___io_close(val_t p0
){
1458 struct {struct stack_frame_t me
;} fra
;
1461 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1462 fra
.me
.file
= LOCATE_file
;
1464 fra
.me
.meth
= LOCATE_file___NativeFile___io_close
;
1465 fra
.me
.has_broke
= 0;
1466 fra
.me
.REG_size
= 1;
1467 fra
.me
.REG
[0] = NIT_NULL
;
1469 /* ./../lib/standard//file.nit:279 */
1470 REGB0
= TAG_Int(file_NativeFile_NativeFile_io_close_0(UNBOX_NativeFile(fra
.me
.REG
[0])));
1471 stack_frame_head
= fra
.me
.prev
;
1474 val_t
file___NativeFile___file_stat(val_t p0
){
1475 struct {struct stack_frame_t me
;} fra
;
1477 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1478 fra
.me
.file
= LOCATE_file
;
1480 fra
.me
.meth
= LOCATE_file___NativeFile___file_stat
;
1481 fra
.me
.has_broke
= 0;
1482 fra
.me
.REG_size
= 1;
1483 fra
.me
.REG
[0] = NIT_NULL
;
1485 /* ./../lib/standard//file.nit:280 */
1486 fra
.me
.REG
[0] = BOX_FileStat(file_NativeFile_NativeFile_file_stat_0(UNBOX_NativeFile(fra
.me
.REG
[0])));
1487 stack_frame_head
= fra
.me
.prev
;
1488 return fra
.me
.REG
[0];
1490 val_t
file___NativeFileCapable___io_open_read(val_t p0
, val_t p1
){
1491 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1493 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1494 fra
.me
.file
= LOCATE_file
;
1496 fra
.me
.meth
= LOCATE_file___NativeFileCapable___io_open_read
;
1497 fra
.me
.has_broke
= 0;
1498 fra
.me
.REG_size
= 2;
1499 fra
.me
.REG
[0] = NIT_NULL
;
1500 fra
.me
.REG
[1] = NIT_NULL
;
1503 /* ./../lib/standard//file.nit:284 */
1504 fra
.me
.REG
[1] = BOX_NativeFile(file_NativeFileCapable_NativeFileCapable_io_open_read_1(fra
.me
.REG
[0], UNBOX_NativeString(fra
.me
.REG
[1])));
1505 stack_frame_head
= fra
.me
.prev
;
1506 return fra
.me
.REG
[1];
1508 val_t
file___NativeFileCapable___io_open_write(val_t p0
, val_t p1
){
1509 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1511 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1512 fra
.me
.file
= LOCATE_file
;
1514 fra
.me
.meth
= LOCATE_file___NativeFileCapable___io_open_write
;
1515 fra
.me
.has_broke
= 0;
1516 fra
.me
.REG_size
= 2;
1517 fra
.me
.REG
[0] = NIT_NULL
;
1518 fra
.me
.REG
[1] = NIT_NULL
;
1521 /* ./../lib/standard//file.nit:285 */
1522 fra
.me
.REG
[1] = BOX_NativeFile(file_NativeFileCapable_NativeFileCapable_io_open_write_1(fra
.me
.REG
[0], UNBOX_NativeString(fra
.me
.REG
[1])));
1523 stack_frame_head
= fra
.me
.prev
;
1524 return fra
.me
.REG
[1];
1526 val_t
file___NativeFileCapable___native_stdin(val_t p0
){
1527 struct {struct stack_frame_t me
;} fra
;
1529 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1530 fra
.me
.file
= LOCATE_file
;
1532 fra
.me
.meth
= LOCATE_file___NativeFileCapable___native_stdin
;
1533 fra
.me
.has_broke
= 0;
1534 fra
.me
.REG_size
= 1;
1535 fra
.me
.REG
[0] = NIT_NULL
;
1537 /* ./../lib/standard//file.nit:286 */
1538 fra
.me
.REG
[0] = BOX_NativeFile(file_NativeFileCapable_NativeFileCapable_native_stdin_0(fra
.me
.REG
[0]));
1539 stack_frame_head
= fra
.me
.prev
;
1540 return fra
.me
.REG
[0];
1542 val_t
file___NativeFileCapable___native_stdout(val_t p0
){
1543 struct {struct stack_frame_t me
;} fra
;
1545 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1546 fra
.me
.file
= LOCATE_file
;
1548 fra
.me
.meth
= LOCATE_file___NativeFileCapable___native_stdout
;
1549 fra
.me
.has_broke
= 0;
1550 fra
.me
.REG_size
= 1;
1551 fra
.me
.REG
[0] = NIT_NULL
;
1553 /* ./../lib/standard//file.nit:287 */
1554 fra
.me
.REG
[0] = BOX_NativeFile(file_NativeFileCapable_NativeFileCapable_native_stdout_0(fra
.me
.REG
[0]));
1555 stack_frame_head
= fra
.me
.prev
;
1556 return fra
.me
.REG
[0];
1558 val_t
file___NativeFileCapable___native_stderr(val_t p0
){
1559 struct {struct stack_frame_t me
;} fra
;
1561 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1562 fra
.me
.file
= LOCATE_file
;
1564 fra
.me
.meth
= LOCATE_file___NativeFileCapable___native_stderr
;
1565 fra
.me
.has_broke
= 0;
1566 fra
.me
.REG_size
= 1;
1567 fra
.me
.REG
[0] = NIT_NULL
;
1569 /* ./../lib/standard//file.nit:288 */
1570 fra
.me
.REG
[0] = BOX_NativeFile(file_NativeFileCapable_NativeFileCapable_native_stderr_0(fra
.me
.REG
[0]));
1571 stack_frame_head
= fra
.me
.prev
;
1572 return fra
.me
.REG
[0];