1 /* This C file is generated by NIT to compile module file. */
3 void file___Object___printn(val_t self
, val_t param0
) {
4 struct trace_t trace
= {NULL
, NULL
, 25, LOCATE_file___Object___printn
};
6 void **closurevariable
= NULL
;
7 trace
.prev
= tracehead
; tracehead
= &trace
;
8 trace
.file
= LOCATE_file
;
10 /* check if p<Array[Object] with p:Object */
11 if (( param0
!=NIT_NULL
) && !VAL_ISA( param0
, COLOR_Array
, ID_Array
)) { fprintf(stderr
, "Cast failled"); fprintf(stderr
, " in %s (%s:%d)\n", LOCATE_file___Object___printn
, LOCATE_file
, 26); nit_exit(1); } /*cast Array[Object]*/;
13 variable
[3] = variable
[0];
14 variable
[3] = CALL_file___Object___stdout(variable
[3])(variable
[3]) /*Object::stdout*/;
15 variable
[4] = CALL_string___Object___to_s( variable
[1] /*objects*/)( variable
[1] /*objects*/) /*Collection::to_s*/;
16 CALL_stream___OStream___write(variable
[3])(variable
[3], variable
[4]) /*OFStream::write*/;
17 return_label0
: while(false);
18 tracehead
= trace
.prev
;
21 void file___Object___print(val_t self
, val_t param0
) {
22 struct trace_t trace
= {NULL
, NULL
, 31, LOCATE_file___Object___print
};
24 void **closurevariable
= NULL
;
25 trace
.prev
= tracehead
; tracehead
= &trace
;
26 trace
.file
= LOCATE_file
;
29 variable
[3] = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable
[1] /*object*/ == NIT_NULL
/*null*/) || (( variable
[1] /*object*/ != NIT_NULL
) && ((CALL_kernel___Object_____eqeq( variable
[1] /*object*/)==kernel___Object_____eqeq
)?
(IS_EQUAL_NN( variable
[1] /*object*/, NIT_NULL
/*null*/)):(UNTAG_Bool(CALL_kernel___Object_____eqeq( variable
[1] /*object*/)( variable
[1] /*object*/, NIT_NULL
/*null*/) /*Object::==*/)))))));
30 if (UNTAG_Bool(variable
[3])) { /*if*/
31 variable
[3] = variable
[0];
32 variable
[3] = CALL_file___Object___stdout(variable
[3])(variable
[3]) /*Object::stdout*/;
33 variable
[4] = CALL_string___Object___to_s( variable
[1] /*object*/)( variable
[1] /*object*/) /*Object::to_s*/;
34 CALL_stream___OStream___write(variable
[3])(variable
[3], variable
[4]) /*OFStream::write*/;
36 variable
[3] = variable
[0];
37 variable
[3] = CALL_file___Object___stdout(variable
[3])(variable
[3]) /*Object::stdout*/;
38 variable
[4] = NEW_String_string___String___with_native(BOX_NativeString("\n"), TAG_Int(1)); /*new String*/
39 CALL_stream___OStream___write(variable
[3])(variable
[3], variable
[4]) /*OFStream::write*/;
40 return_label1
: while(false);
41 tracehead
= trace
.prev
;
44 val_t
file___Object___getc(val_t self
) {
45 struct trace_t trace
= {NULL
, NULL
, 40, LOCATE_file___Object___getc
};
47 void **closurevariable
= NULL
;
48 trace
.prev
= tracehead
; tracehead
= &trace
;
49 trace
.file
= LOCATE_file
;
51 variable
[2] = variable
[0];
52 variable
[2] = CALL_file___Object___stdin(variable
[2])(variable
[2]) /*Object::stdin*/;
53 variable
[2] = CALL_stream___IStream___read_char(variable
[2])(variable
[2]) /*BufferedIStream::read_char*/;
54 variable
[2] = TAG_Char(UNTAG_Int(variable
[2]));
55 variable
[1] = variable
[2];
57 return_label2
: while(false);
58 tracehead
= trace
.prev
;
61 val_t
file___Object___gets(val_t self
) {
62 struct trace_t trace
= {NULL
, NULL
, 46, LOCATE_file___Object___gets
};
64 void **closurevariable
= NULL
;
65 trace
.prev
= tracehead
; tracehead
= &trace
;
66 trace
.file
= LOCATE_file
;
68 variable
[2] = variable
[0];
69 variable
[2] = CALL_file___Object___stdin(variable
[2])(variable
[2]) /*Object::stdin*/;
70 variable
[2] = CALL_stream___IStream___read_line(variable
[2])(variable
[2]) /*IStream::read_line*/;
71 variable
[1] = variable
[2];
73 return_label3
: while(false);
74 tracehead
= trace
.prev
;
77 val_t
file___Object___stdin(val_t self
) {
78 struct trace_t trace
= {NULL
, NULL
, 294, LOCATE_file___Object___stdin
};
79 static val_t once_value_5
; static int once_bool_5
; /* Once value for variable[2]*/
81 void **closurevariable
= NULL
;
82 trace
.prev
= tracehead
; tracehead
= &trace
;
83 trace
.file
= LOCATE_file
;
85 if (once_bool_5
) variable
[2] = once_value_5
;
87 variable
[2] = NEW_Stdin_file___Stdin___init(); /*new Stdin*/
88 once_value_5
= variable
[2];
91 variable
[1] = variable
[2];
93 return_label4
: while(false);
94 tracehead
= trace
.prev
;
97 val_t
file___Object___stdout(val_t self
) {
98 struct trace_t trace
= {NULL
, NULL
, 297, LOCATE_file___Object___stdout
};
99 static val_t once_value_7
; static int once_bool_7
; /* Once value for variable[2]*/
101 void **closurevariable
= NULL
;
102 trace
.prev
= tracehead
; tracehead
= &trace
;
103 trace
.file
= LOCATE_file
;
105 if (once_bool_7
) variable
[2] = once_value_7
;
107 variable
[2] = NEW_Stdout_file___Stdout___init(); /*new Stdout*/
108 once_value_7
= variable
[2];
111 variable
[1] = variable
[2];
113 return_label6
: while(false);
114 tracehead
= trace
.prev
;
117 val_t
file___Object___stderr(val_t self
) {
118 struct trace_t trace
= {NULL
, NULL
, 300, LOCATE_file___Object___stderr
};
119 static val_t once_value_9
; static int once_bool_9
; /* Once value for variable[2]*/
121 void **closurevariable
= NULL
;
122 trace
.prev
= tracehead
; tracehead
= &trace
;
123 trace
.file
= LOCATE_file
;
125 if (once_bool_9
) variable
[2] = once_value_9
;
127 variable
[2] = NEW_Stderr_file___Stderr___init(); /*new Stderr*/
128 once_value_9
= variable
[2];
131 variable
[1] = variable
[2];
133 return_label8
: while(false);
134 tracehead
= trace
.prev
;
137 val_t
file___FStream___path(val_t self
) {
138 struct trace_t trace
= {NULL
, NULL
, 58, LOCATE_file___FStream___path
};
139 val_t
*variable
= NULL
;
140 void **closurevariable
= NULL
;
141 trace
.prev
= tracehead
; tracehead
= &trace
;
142 trace
.file
= LOCATE_file
;
143 tracehead
= trace
.prev
;
144 return ATTR_file___FStream____path( self
) /*FStream::_path*/;
146 val_t
file___FStream___file_stat(val_t self
) {
147 struct trace_t trace
= {NULL
, NULL
, 64, LOCATE_file___FStream___file_stat
};
149 void **closurevariable
= NULL
;
150 trace
.prev
= tracehead
; tracehead
= &trace
;
151 trace
.file
= LOCATE_file
;
153 variable
[2] = variable
[0];
154 variable
[2] = ATTR_file___FStream____file(variable
[2]) /*FStream::_file*/;
155 variable
[2] = CALL_file___NativeFile___file_stat(variable
[2])(variable
[2]) /*NativeFile::file_stat*/;
156 variable
[1] = variable
[2];
158 return_label10
: while(false);
159 tracehead
= trace
.prev
;
162 void file___IFStream___close(val_t self
) {
163 struct trace_t trace
= {NULL
, NULL
, 83, LOCATE_file___IFStream___close
};
165 void **closurevariable
= NULL
;
166 trace
.prev
= tracehead
; tracehead
= &trace
;
167 trace
.file
= LOCATE_file
;
169 variable
[3] = variable
[0];
170 variable
[3] = ATTR_file___FStream____file(variable
[3]) /*FStream::_file*/;
171 variable
[3] = CALL_file___NativeFile___io_close(variable
[3])(variable
[3]) /*NativeFile::io_close*/;
172 variable
[2] = variable
[3];
173 variable
[3] = variable
[0];
174 ATTR_file___IFStream____end_reached(variable
[3]) /*IFStream::_end_reached*/ = TAG_Bool(true);
175 return_label11
: while(false);
176 tracehead
= trace
.prev
;
179 void file___IFStream___fill_buffer(val_t self
) {
180 struct trace_t trace
= {NULL
, NULL
, 89, LOCATE_file___IFStream___fill_buffer
};
182 void **closurevariable
= NULL
;
183 trace
.prev
= tracehead
; tracehead
= &trace
;
184 trace
.file
= LOCATE_file
;
186 variable
[3] = variable
[0];
187 variable
[3] = ATTR_file___FStream____file(variable
[3]) /*FStream::_file*/;
188 variable
[4] = variable
[0];
189 variable
[4] = ATTR_stream___BufferedIStream____buffer(variable
[4]) /*BufferedIStream::_buffer*/;
190 variable
[4] = ATTR_string___String____items(variable
[4]) /*String::_items*/;
191 variable
[5] = variable
[0];
192 variable
[5] = ATTR_stream___BufferedIStream____buffer(variable
[5]) /*BufferedIStream::_buffer*/;
193 variable
[5] = ATTR_string___String____capacity(variable
[5]) /*String::_capacity*/;
194 variable
[3] = CALL_file___NativeFile___io_read(variable
[3])(variable
[3], variable
[4], variable
[5]) /*NativeFile::io_read*/;
195 variable
[2] = variable
[3];
196 variable
[3] = TAG_Bool(UNTAG_Int( variable
[2] /*nb*/)<=UNTAG_Int( TAG_Int(0)));
197 if (UNTAG_Bool(variable
[3])) { /*if*/
198 variable
[3] = variable
[0];
199 ATTR_file___IFStream____end_reached(variable
[3]) /*IFStream::_end_reached*/ = TAG_Bool(true);
200 variable
[2] = TAG_Int(0) /*nb=*/;
202 variable
[3] = variable
[0];
203 variable
[3] = ATTR_stream___BufferedIStream____buffer(variable
[3]) /*BufferedIStream::_buffer*/;
204 ATTR_array___AbstractArray____length(variable
[3]) /*AbstractArray::_length*/ = variable
[2] /*nb*/;
205 variable
[3] = variable
[0];
206 ATTR_stream___BufferedIStream____buffer_pos(variable
[3]) /*BufferedIStream::_buffer_pos*/ = TAG_Int(0);
207 return_label12
: while(false);
208 tracehead
= trace
.prev
;
211 val_t
file___IFStream___end_reached(val_t self
) {
212 struct trace_t trace
= {NULL
, NULL
, 101, LOCATE_file___IFStream___end_reached
};
213 val_t
*variable
= NULL
;
214 void **closurevariable
= NULL
;
215 trace
.prev
= tracehead
; tracehead
= &trace
;
216 trace
.file
= LOCATE_file
;
217 tracehead
= trace
.prev
;
218 return ATTR_file___IFStream____end_reached( self
) /*IFStream::_end_reached*/;
220 void file___IFStream___reopen(val_t self
) {
221 struct trace_t trace
= {NULL
, NULL
, 74, LOCATE_file___IFStream___reopen
};
223 void **closurevariable
= NULL
;
224 trace
.prev
= tracehead
; tracehead
= &trace
;
225 trace
.file
= LOCATE_file
;
227 variable
[2] = variable
[0];
228 variable
[2] = CALL_stream___IStream___eof(variable
[2])(variable
[2]) /*BufferedIStream::eof*/;
229 if (UNTAG_Bool( TAG_Bool(!UNTAG_Bool(variable
[2])))) { /*if*/
230 variable
[2] = variable
[0];
231 CALL_stream___IOS___close(variable
[2])(variable
[2]) /*IFStream::close*/;
233 variable
[2] = variable
[0];
234 variable
[3] = variable
[0];
235 variable
[4] = variable
[0];
236 variable
[4] = ATTR_file___FStream____path(variable
[4]) /*FStream::_path*/;
237 variable
[4] = CALL_string___String___to_cstring(variable
[4])(variable
[4]) /*String::to_cstring*/;
238 variable
[3] = CALL_file___NativeFileCapable___io_open_read(variable
[3])(variable
[3], variable
[4]) /*NativeFileCapable::io_open_read*/;
239 ATTR_file___FStream____file(variable
[2]) /*FStream::_file*/ = variable
[3];
240 variable
[2] = variable
[0];
241 ATTR_file___IFStream____end_reached(variable
[2]) /*IFStream::_end_reached*/ = TAG_Bool(false);
242 variable
[2] = variable
[0];
243 ATTR_stream___BufferedIStream____buffer_pos(variable
[2]) /*BufferedIStream::_buffer_pos*/ = TAG_Int(0);
244 variable
[2] = variable
[0];
245 variable
[2] = ATTR_stream___BufferedIStream____buffer(variable
[2]) /*BufferedIStream::_buffer*/;
246 CALL_abstract_collection___RemovableCollection___clear(variable
[2])(variable
[2]) /*AbstractArray::clear*/;
247 return_label13
: while(false);
248 tracehead
= trace
.prev
;
251 void file___IFStream___open(val_t self
, val_t param0
, int* init_table
) {
252 struct trace_t trace
= {NULL
, NULL
, 104, LOCATE_file___IFStream___open
};
254 void **closurevariable
= NULL
;
255 trace
.prev
= tracehead
; tracehead
= &trace
;
256 trace
.file
= LOCATE_file
;
258 variable
[1] = param0
;
259 if (init_table
[VAL2OBJ(variable
[0])->vft
[INIT_TABLE_POS_IFStream
].i
]) return;
260 variable
[3] = variable
[0];
261 ATTR_file___FStream____path(variable
[3]) /*FStream::_path*/ = variable
[1] /*path*/;
262 variable
[3] = variable
[0];
263 CALL_stream___BufferedIStream___prepare_buffer(variable
[3])(variable
[3], TAG_Int(10)) /*BufferedIStream::prepare_buffer*/;
264 variable
[3] = variable
[0];
265 variable
[4] = variable
[0];
266 variable
[5] = variable
[0];
267 variable
[5] = ATTR_file___FStream____path(variable
[5]) /*FStream::_path*/;
268 variable
[5] = CALL_string___String___to_cstring(variable
[5])(variable
[5]) /*String::to_cstring*/;
269 variable
[4] = CALL_file___NativeFileCapable___io_open_read(variable
[4])(variable
[4], variable
[5]) /*NativeFileCapable::io_open_read*/;
270 ATTR_file___FStream____file(variable
[3]) /*FStream::_file*/ = variable
[4];
271 variable
[3] = variable
[0];
272 variable
[3] = ATTR_file___FStream____file(variable
[3]) /*FStream::_file*/;
273 variable
[3] = TAG_Bool(!UNTAG_Bool(TAG_Bool((variable
[3] == NIT_NULL
/*null*/) || ((variable
[3] != NIT_NULL
) && ((CALL_kernel___Object_____eqeq(variable
[3])==kernel___Object_____eqeq
)?
(IS_EQUAL_NN(variable
[3], NIT_NULL
/*null*/)):(UNTAG_Bool(CALL_kernel___Object_____eqeq(variable
[3])(variable
[3], NIT_NULL
/*null*/) /*Object::==*/)))))));
274 if (!UNTAG_Bool(variable
[3])) { fprintf(stderr
, "Assert%s failed", " 'cant_open_file' "); fprintf(stderr
, " in %s (%s:%d)\n", LOCATE_file___IFStream___open
, LOCATE_file
, 110); nit_exit(1);}
275 return_label14
: while(false);
276 init_table
[VAL2OBJ(variable
[0])->vft
[INIT_TABLE_POS_IFStream
].i
] = 1;
277 tracehead
= trace
.prev
;
280 void file___IFStream___init(val_t self
, int* init_table
) {
281 struct trace_t trace
= {NULL
, NULL
, 113, LOCATE_file___IFStream___init
};
283 void **closurevariable
= NULL
;
284 trace
.prev
= tracehead
; tracehead
= &trace
;
285 trace
.file
= LOCATE_file
;
287 if (init_table
[VAL2OBJ(variable
[0])->vft
[INIT_TABLE_POS_IFStream
].i
]) return;
288 return_label15
: while(false);
289 init_table
[VAL2OBJ(variable
[0])->vft
[INIT_TABLE_POS_IFStream
].i
] = 1;
290 tracehead
= trace
.prev
;
293 void file___IFStream___without_file(val_t self
, int* init_table
) {
294 struct trace_t trace
= {NULL
, NULL
, 114, LOCATE_file___IFStream___without_file
};
296 void **closurevariable
= NULL
;
297 trace
.prev
= tracehead
; tracehead
= &trace
;
298 trace
.file
= LOCATE_file
;
300 if (init_table
[VAL2OBJ(variable
[0])->vft
[INIT_TABLE_POS_IFStream
].i
]) return;
301 return_label16
: while(false);
302 init_table
[VAL2OBJ(variable
[0])->vft
[INIT_TABLE_POS_IFStream
].i
] = 1;
303 tracehead
= trace
.prev
;
306 void file___OFStream___close(val_t self
) {
307 struct trace_t trace
= {NULL
, NULL
, 131, LOCATE_file___OFStream___close
};
309 void **closurevariable
= NULL
;
310 trace
.prev
= tracehead
; tracehead
= &trace
;
311 trace
.file
= LOCATE_file
;
313 variable
[3] = variable
[0];
314 variable
[3] = ATTR_file___FStream____file(variable
[3]) /*FStream::_file*/;
315 variable
[3] = CALL_file___NativeFile___io_close(variable
[3])(variable
[3]) /*NativeFile::io_close*/;
316 variable
[2] = variable
[3];
317 variable
[3] = variable
[0];
318 ATTR_file___OFStream____writable(variable
[3]) /*OFStream::_writable*/ = TAG_Bool(false);
319 return_label17
: while(false);
320 tracehead
= trace
.prev
;
323 void file___OFStream___write(val_t self
, val_t param0
) {
324 struct trace_t trace
= {NULL
, NULL
, 122, LOCATE_file___OFStream___write
};
326 void **closurevariable
= NULL
;
327 trace
.prev
= tracehead
; tracehead
= &trace
;
328 trace
.file
= LOCATE_file
;
330 variable
[1] = param0
;
331 variable
[3] = variable
[0];
332 variable
[3] = ATTR_file___OFStream____writable(variable
[3]) /*OFStream::_writable*/;
333 if (!UNTAG_Bool(variable
[3])) { fprintf(stderr
, "Assert%s failed", ""); fprintf(stderr
, " in %s (%s:%d)\n", LOCATE_file___OFStream___write
, LOCATE_file
, 125); nit_exit(1);}
334 variable
[3] = variable
[0];
335 variable
[4] = CALL_string___String___to_cstring( variable
[1] /*s*/)( variable
[1] /*s*/) /*String::to_cstring*/;
336 variable
[5] = CALL_abstract_collection___Collection___length( variable
[1] /*s*/)( variable
[1] /*s*/) /*AbstractArray::length*/;
337 CALL_file___OFStream___write_native(variable
[3])(variable
[3], variable
[4], variable
[5]) /*OFStream::write_native*/;
338 return_label18
: while(false);
339 tracehead
= trace
.prev
;
342 val_t
file___OFStream___is_writable(val_t self
) {
343 struct trace_t trace
= {NULL
, NULL
, 129, LOCATE_file___OFStream___is_writable
};
345 void **closurevariable
= NULL
;
346 trace
.prev
= tracehead
; tracehead
= &trace
;
347 trace
.file
= LOCATE_file
;
349 variable
[2] = variable
[0];
350 variable
[2] = ATTR_file___OFStream____writable(variable
[2]) /*OFStream::_writable*/;
351 variable
[1] = variable
[2];
353 return_label19
: while(false);
354 tracehead
= trace
.prev
;
357 void file___OFStream___write_native(val_t self
, val_t param0
, val_t param1
) {
358 struct trace_t trace
= {NULL
, NULL
, 140, LOCATE_file___OFStream___write_native
};
360 void **closurevariable
= NULL
;
361 trace
.prev
= tracehead
; tracehead
= &trace
;
362 trace
.file
= LOCATE_file
;
364 variable
[1] = param0
;
365 variable
[2] = param1
;
366 variable
[4] = variable
[0];
367 variable
[4] = ATTR_file___OFStream____writable(variable
[4]) /*OFStream::_writable*/;
368 if (!UNTAG_Bool(variable
[4])) { fprintf(stderr
, "Assert%s failed", ""); fprintf(stderr
, " in %s (%s:%d)\n", LOCATE_file___OFStream___write_native
, LOCATE_file
, 143); nit_exit(1);}
369 variable
[5] = variable
[0];
370 variable
[5] = ATTR_file___FStream____file(variable
[5]) /*FStream::_file*/;
371 variable
[5] = CALL_file___NativeFile___io_write(variable
[5])(variable
[5], variable
[1] /*native*/, variable
[2] /*len*/) /*NativeFile::io_write*/;
372 variable
[4] = variable
[5];
373 variable
[5] = TAG_Bool(( variable
[4] /*err*/)!=( variable
[2] /*len*/));
374 if (UNTAG_Bool(variable
[5])) { /*if*/
375 variable
[5] = variable
[0];
376 variable
[6] = NEW_Array_array___Array___with_capacity(TAG_Int(5)); /*new Array[Object]*/
377 variable
[7] = NEW_String_string___String___with_native(BOX_NativeString("Problem in writing : "), TAG_Int(21)); /*new String*/
378 CALL_abstract_collection___SimpleCollection___add(variable
[6])(variable
[6], variable
[7]) /*AbstractArray::add*/;
379 CALL_abstract_collection___SimpleCollection___add(variable
[6])(variable
[6], variable
[4] /*err*/) /*AbstractArray::add*/;
380 variable
[8] = NEW_String_string___String___with_native(BOX_NativeString(" "), TAG_Int(1)); /*new String*/
381 CALL_abstract_collection___SimpleCollection___add(variable
[6])(variable
[6], variable
[8]) /*AbstractArray::add*/;
382 CALL_abstract_collection___SimpleCollection___add(variable
[6])(variable
[6], variable
[2] /*len*/) /*AbstractArray::add*/;
383 variable
[9] = NEW_String_string___String___with_native(BOX_NativeString("\n"), TAG_Int(1)); /*new String*/
384 CALL_abstract_collection___SimpleCollection___add(variable
[6])(variable
[6], variable
[9]) /*AbstractArray::add*/;
385 CALL_file___Object___printn(variable
[5])(variable
[5], variable
[6]) /*Object::printn*/;
387 return_label20
: while(false);
388 tracehead
= trace
.prev
;
391 void file___OFStream___open(val_t self
, val_t param0
, int* init_table
) {
392 struct trace_t trace
= {NULL
, NULL
, 151, LOCATE_file___OFStream___open
};
394 void **closurevariable
= NULL
;
395 trace
.prev
= tracehead
; tracehead
= &trace
;
396 trace
.file
= LOCATE_file
;
398 variable
[1] = param0
;
399 if (init_table
[VAL2OBJ(variable
[0])->vft
[INIT_TABLE_POS_OFStream
].i
]) return;
400 variable
[3] = variable
[0];
401 variable
[4] = variable
[0];
402 variable
[5] = CALL_string___String___to_cstring( variable
[1] /*path*/)( variable
[1] /*path*/) /*String::to_cstring*/;
403 variable
[4] = CALL_file___NativeFileCapable___io_open_write(variable
[4])(variable
[4], variable
[5]) /*NativeFileCapable::io_open_write*/;
404 ATTR_file___FStream____file(variable
[3]) /*FStream::_file*/ = variable
[4];
405 variable
[3] = variable
[0];
406 variable
[3] = ATTR_file___FStream____file(variable
[3]) /*FStream::_file*/;
407 variable
[3] = TAG_Bool(!UNTAG_Bool(TAG_Bool((variable
[3] == NIT_NULL
/*null*/) || ((variable
[3] != NIT_NULL
) && ((CALL_kernel___Object_____eqeq(variable
[3])==kernel___Object_____eqeq
)?
(IS_EQUAL_NN(variable
[3], NIT_NULL
/*null*/)):(UNTAG_Bool(CALL_kernel___Object_____eqeq(variable
[3])(variable
[3], NIT_NULL
/*null*/) /*Object::==*/)))))));
408 if (!UNTAG_Bool(variable
[3])) { fprintf(stderr
, "Assert%s failed", " 'cant_open_file' "); fprintf(stderr
, " in %s (%s:%d)\n", LOCATE_file___OFStream___open
, LOCATE_file
, 155); nit_exit(1);}
409 variable
[3] = variable
[0];
410 ATTR_file___FStream____path(variable
[3]) /*FStream::_path*/ = variable
[1] /*path*/;
411 variable
[3] = variable
[0];
412 ATTR_file___OFStream____writable(variable
[3]) /*OFStream::_writable*/ = TAG_Bool(true);
413 return_label21
: while(false);
414 init_table
[VAL2OBJ(variable
[0])->vft
[INIT_TABLE_POS_OFStream
].i
] = 1;
415 tracehead
= trace
.prev
;
418 void file___OFStream___init(val_t self
, int* init_table
) {
419 struct trace_t trace
= {NULL
, NULL
, 160, LOCATE_file___OFStream___init
};
421 void **closurevariable
= NULL
;
422 trace
.prev
= tracehead
; tracehead
= &trace
;
423 trace
.file
= LOCATE_file
;
425 if (init_table
[VAL2OBJ(variable
[0])->vft
[INIT_TABLE_POS_OFStream
].i
]) return;
426 return_label22
: while(false);
427 init_table
[VAL2OBJ(variable
[0])->vft
[INIT_TABLE_POS_OFStream
].i
] = 1;
428 tracehead
= trace
.prev
;
431 void file___OFStream___without_file(val_t self
, int* init_table
) {
432 struct trace_t trace
= {NULL
, NULL
, 161, LOCATE_file___OFStream___without_file
};
434 void **closurevariable
= NULL
;
435 trace
.prev
= tracehead
; tracehead
= &trace
;
436 trace
.file
= LOCATE_file
;
438 if (init_table
[VAL2OBJ(variable
[0])->vft
[INIT_TABLE_POS_OFStream
].i
]) return;
439 return_label23
: while(false);
440 init_table
[VAL2OBJ(variable
[0])->vft
[INIT_TABLE_POS_OFStream
].i
] = 1;
441 tracehead
= trace
.prev
;
444 void file___Stdin___init(val_t self
, int* init_table
) {
445 struct trace_t trace
= {NULL
, NULL
, 168, LOCATE_file___Stdin___init
};
447 void **closurevariable
= NULL
;
448 trace
.prev
= tracehead
; tracehead
= &trace
;
449 trace
.file
= LOCATE_file
;
451 if (init_table
[VAL2OBJ(variable
[0])->vft
[INIT_TABLE_POS_Stdin
].i
]) return;
452 CALL_file___IFStream___init(variable
[0])(variable
[0], init_table
/*YYY*/) /*IFStream::init*/;
453 variable
[2] = variable
[0];
454 variable
[3] = variable
[0];
455 variable
[3] = CALL_file___NativeFileCapable___native_stdin(variable
[3])(variable
[3]) /*NativeFileCapable::native_stdin*/;
456 ATTR_file___FStream____file(variable
[2]) /*FStream::_file*/ = variable
[3];
457 variable
[2] = variable
[0];
458 variable
[3] = NEW_String_string___String___with_native(BOX_NativeString("/dev/stdin"), TAG_Int(10)); /*new String*/
459 ATTR_file___FStream____path(variable
[2]) /*FStream::_path*/ = variable
[3];
460 variable
[2] = variable
[0];
461 CALL_stream___BufferedIStream___prepare_buffer(variable
[2])(variable
[2], TAG_Int(1)) /*BufferedIStream::prepare_buffer*/;
462 return_label24
: while(false);
463 init_table
[VAL2OBJ(variable
[0])->vft
[INIT_TABLE_POS_Stdin
].i
] = 1;
464 tracehead
= trace
.prev
;
467 void file___Stdout___init(val_t self
, int* init_table
) {
468 struct trace_t trace
= {NULL
, NULL
, 177, LOCATE_file___Stdout___init
};
470 void **closurevariable
= NULL
;
471 trace
.prev
= tracehead
; tracehead
= &trace
;
472 trace
.file
= LOCATE_file
;
474 if (init_table
[VAL2OBJ(variable
[0])->vft
[INIT_TABLE_POS_Stdout
].i
]) return;
475 CALL_file___OFStream___init(variable
[0])(variable
[0], init_table
/*YYY*/) /*OFStream::init*/;
476 variable
[2] = variable
[0];
477 variable
[3] = variable
[0];
478 variable
[3] = CALL_file___NativeFileCapable___native_stdout(variable
[3])(variable
[3]) /*NativeFileCapable::native_stdout*/;
479 ATTR_file___FStream____file(variable
[2]) /*FStream::_file*/ = variable
[3];
480 variable
[2] = variable
[0];
481 variable
[3] = NEW_String_string___String___with_native(BOX_NativeString("/dev/stdout"), TAG_Int(11)); /*new String*/
482 ATTR_file___FStream____path(variable
[2]) /*FStream::_path*/ = variable
[3];
483 variable
[2] = variable
[0];
484 ATTR_file___OFStream____writable(variable
[2]) /*OFStream::_writable*/ = TAG_Bool(true);
485 return_label25
: while(false);
486 init_table
[VAL2OBJ(variable
[0])->vft
[INIT_TABLE_POS_Stdout
].i
] = 1;
487 tracehead
= trace
.prev
;
490 void file___Stderr___init(val_t self
, int* init_table
) {
491 struct trace_t trace
= {NULL
, NULL
, 186, LOCATE_file___Stderr___init
};
493 void **closurevariable
= NULL
;
494 trace
.prev
= tracehead
; tracehead
= &trace
;
495 trace
.file
= LOCATE_file
;
497 if (init_table
[VAL2OBJ(variable
[0])->vft
[INIT_TABLE_POS_Stderr
].i
]) return;
498 CALL_file___OFStream___init(variable
[0])(variable
[0], init_table
/*YYY*/) /*OFStream::init*/;
499 variable
[2] = variable
[0];
500 variable
[3] = variable
[0];
501 variable
[3] = CALL_file___NativeFileCapable___native_stderr(variable
[3])(variable
[3]) /*NativeFileCapable::native_stderr*/;
502 ATTR_file___FStream____file(variable
[2]) /*FStream::_file*/ = variable
[3];
503 variable
[2] = variable
[0];
504 variable
[3] = NEW_String_string___String___with_native(BOX_NativeString("/dev/stderr"), TAG_Int(11)); /*new String*/
505 ATTR_file___FStream____path(variable
[2]) /*FStream::_path*/ = variable
[3];
506 variable
[2] = variable
[0];
507 ATTR_file___OFStream____writable(variable
[2]) /*OFStream::_writable*/ = TAG_Bool(true);
508 return_label26
: while(false);
509 init_table
[VAL2OBJ(variable
[0])->vft
[INIT_TABLE_POS_Stderr
].i
] = 1;
510 tracehead
= trace
.prev
;
513 val_t
file___String___file_exists(val_t self
) {
514 struct trace_t trace
= {NULL
, NULL
, 196, LOCATE_file___String___file_exists
};
516 void **closurevariable
= NULL
;
517 trace
.prev
= tracehead
; tracehead
= &trace
;
518 trace
.file
= LOCATE_file
;
520 variable
[2] = variable
[0];
521 variable
[2] = CALL_string___String___to_cstring(variable
[2])(variable
[2]) /*String::to_cstring*/;
522 variable
[2] = CALL_file___NativeString___file_exists(variable
[2])(variable
[2]) /*NativeString::file_exists*/;
523 variable
[1] = variable
[2];
525 return_label27
: while(false);
526 tracehead
= trace
.prev
;
529 val_t
file___String___file_stat(val_t self
) {
530 struct trace_t trace
= {NULL
, NULL
, 199, LOCATE_file___String___file_stat
};
532 void **closurevariable
= NULL
;
533 trace
.prev
= tracehead
; tracehead
= &trace
;
534 trace
.file
= LOCATE_file
;
536 variable
[2] = variable
[0];
537 variable
[2] = CALL_string___String___to_cstring(variable
[2])(variable
[2]) /*String::to_cstring*/;
538 variable
[2] = CALL_file___NativeString___file_stat(variable
[2])(variable
[2]) /*NativeString::file_stat*/;
539 variable
[1] = variable
[2];
541 return_label28
: while(false);
542 tracehead
= trace
.prev
;
545 val_t
file___String___file_delete(val_t self
) {
546 struct trace_t trace
= {NULL
, NULL
, 201, LOCATE_file___String___file_delete
};
548 void **closurevariable
= NULL
;
549 trace
.prev
= tracehead
; tracehead
= &trace
;
550 trace
.file
= LOCATE_file
;
552 variable
[2] = variable
[0];
553 variable
[2] = CALL_string___String___to_cstring(variable
[2])(variable
[2]) /*String::to_cstring*/;
554 variable
[2] = CALL_file___NativeString___file_delete(variable
[2])(variable
[2]) /*NativeString::file_delete*/;
555 variable
[1] = variable
[2];
557 return_label29
: while(false);
558 tracehead
= trace
.prev
;
561 val_t
file___String___strip_extension(val_t self
, val_t param0
) {
562 struct trace_t trace
= {NULL
, NULL
, 203, LOCATE_file___String___strip_extension
};
564 void **closurevariable
= NULL
;
565 trace
.prev
= tracehead
; tracehead
= &trace
;
566 trace
.file
= LOCATE_file
;
568 variable
[1] = param0
;
569 variable
[3] = variable
[0];
570 variable
[3] = CALL_string___String___has_suffix(variable
[3])(variable
[3], variable
[1] /*ext*/) /*String::has_suffix*/;
571 if (UNTAG_Bool(variable
[3])) { /*if*/
572 variable
[3] = variable
[0];
573 variable
[4] = variable
[0];
574 variable
[4] = CALL_abstract_collection___Collection___length(variable
[4])(variable
[4]) /*AbstractArray::length*/;
575 variable
[5] = CALL_abstract_collection___Collection___length( variable
[1] /*ext*/)( variable
[1] /*ext*/) /*AbstractArray::length*/;
576 variable
[4] = TAG_Int(UNTAG_Int(variable
[4])-UNTAG_Int(variable
[5]));
577 variable
[3] = CALL_string___String___substring(variable
[3])(variable
[3], TAG_Int(0), variable
[4]) /*String::substring*/;
578 variable
[2] = variable
[3];
581 variable
[3] = variable
[0];
582 variable
[2] = variable
[3];
584 return_label30
: while(false);
585 tracehead
= trace
.prev
;
588 val_t
file___String___basename(val_t self
, val_t param0
) {
589 struct trace_t trace
= {NULL
, NULL
, 211, LOCATE_file___String___basename
};
591 void **closurevariable
= NULL
;
592 trace
.prev
= tracehead
; tracehead
= &trace
;
593 trace
.file
= LOCATE_file
;
595 variable
[1] = param0
;
596 variable
[4] = variable
[0];
597 variable
[5] = variable
[0];
598 variable
[5] = ATTR_array___AbstractArray____length(variable
[5]) /*AbstractArray::_length*/;
599 variable
[5] = TAG_Int(UNTAG_Int(variable
[5])-UNTAG_Int( TAG_Int(1)));
600 variable
[4] = CALL_array___AbstractArray___last_index_of_from(variable
[4])(variable
[4], TAG_Char('/'), variable
[5]) /*AbstractArray::last_index_of_from*/;
601 variable
[3] = variable
[4];
602 variable
[5] = variable
[0];
603 variable
[4] = variable
[5];
604 variable
[5] = TAG_Bool(UNTAG_Int( variable
[3] /*pos*/)>=UNTAG_Int( TAG_Int(0)));
605 if (UNTAG_Bool(variable
[5])) { /*if*/
606 variable
[5] = variable
[0];
607 variable
[6] = TAG_Int(UNTAG_Int( variable
[3] /*pos*/)+UNTAG_Int( TAG_Int(1)));
608 variable
[5] = CALL_string___String___substring_from(variable
[5])(variable
[5], variable
[6]) /*String::substring_from*/;
609 variable
[4] = variable
[5] /*n=*/;
611 variable
[5] = CALL_file___String___strip_extension( variable
[4] /*n*/)( variable
[4] /*n*/, variable
[1] /*ext*/) /*String::strip_extension*/;
612 variable
[2] = variable
[5];
614 return_label31
: while(false);
615 tracehead
= trace
.prev
;
618 val_t
file___String___dirname(val_t self
) {
619 struct trace_t trace
= {NULL
, NULL
, 221, LOCATE_file___String___dirname
};
621 void **closurevariable
= NULL
;
622 trace
.prev
= tracehead
; tracehead
= &trace
;
623 trace
.file
= LOCATE_file
;
625 variable
[3] = variable
[0];
626 variable
[4] = variable
[0];
627 variable
[4] = ATTR_array___AbstractArray____length(variable
[4]) /*AbstractArray::_length*/;
628 variable
[4] = TAG_Int(UNTAG_Int(variable
[4])-UNTAG_Int( TAG_Int(1)));
629 variable
[3] = CALL_array___AbstractArray___last_index_of_from(variable
[3])(variable
[3], TAG_Char('/'), variable
[4]) /*AbstractArray::last_index_of_from*/;
630 variable
[2] = variable
[3];
631 variable
[3] = TAG_Bool(UNTAG_Int( variable
[2] /*pos*/)>=UNTAG_Int( TAG_Int(0)));
632 if (UNTAG_Bool(variable
[3])) { /*if*/
633 variable
[3] = variable
[0];
634 variable
[3] = CALL_string___String___substring(variable
[3])(variable
[3], TAG_Int(0), variable
[2] /*pos*/) /*String::substring*/;
635 variable
[1] = variable
[3];
638 variable
[3] = NEW_String_string___String___with_native(BOX_NativeString("."), TAG_Int(1)); /*new String*/
639 variable
[1] = variable
[3];
642 return_label32
: while(false);
643 tracehead
= trace
.prev
;
646 val_t
file___String___file_path(val_t self
) {
647 struct trace_t trace
= {NULL
, NULL
, 231, LOCATE_file___String___file_path
};
649 void **closurevariable
= NULL
;
650 trace
.prev
= tracehead
; tracehead
= &trace
;
651 trace
.file
= LOCATE_file
;
653 variable
[3] = variable
[0];
654 variable
[3] = ATTR_array___AbstractArray____length(variable
[3]) /*AbstractArray::_length*/;
655 variable
[2] = variable
[3];
656 variable
[4] = variable
[0];
657 variable
[5] = TAG_Int(UNTAG_Int( variable
[2] /*l*/)-UNTAG_Int( TAG_Int(1)));
658 variable
[4] = CALL_array___AbstractArray___last_index_of_from(variable
[4])(variable
[4], TAG_Char('/'), variable
[5]) /*AbstractArray::last_index_of_from*/;
659 variable
[3] = variable
[4];
660 variable
[4] = TAG_Bool(UNTAG_Int( variable
[3] /*pos*/)>=UNTAG_Int( TAG_Int(0)));
661 if (UNTAG_Bool(variable
[4])) { /*if*/
662 variable
[4] = variable
[0];
663 variable
[4] = CALL_string___String___substring(variable
[4])(variable
[4], TAG_Int(0), variable
[3] /*pos*/) /*String::substring*/;
664 variable
[1] = variable
[4];
667 variable
[4] = NEW_String_string___String___with_native(BOX_NativeString("."), TAG_Int(1)); /*new String*/
668 variable
[1] = variable
[4];
670 return_label33
: while(false);
671 tracehead
= trace
.prev
;
674 void file___String___mkdir(val_t self
) {
675 struct trace_t trace
= {NULL
, NULL
, 241, LOCATE_file___String___mkdir
};
677 void **closurevariable
= NULL
;
678 trace
.prev
= tracehead
; tracehead
= &trace
;
679 trace
.file
= LOCATE_file
;
681 variable
[3] = variable
[0];
682 variable
[4] = NEW_String_string___String___with_native(BOX_NativeString("/"), TAG_Int(1)); /*new String*/
683 variable
[3] = CALL_string_search___String___split_with(variable
[3])(variable
[3], variable
[4]) /*String::split_with*/;
684 variable
[2] = variable
[3];
685 variable
[4] = NEW_String_string___String___init(); /*new String*/
686 variable
[3] = variable
[4];
687 variable
[4] = CALL_abstract_collection___Collection___is_empty( variable
[2] /*dirs*/)( variable
[2] /*dirs*/) /*AbstractArray::is_empty*/;
688 if (UNTAG_Bool(variable
[4])) { /*if*/
691 variable
[4] = variable
[2] /*dirs*/;
692 variable
[5] = TAG_Int(0);
693 variable
[7] = TAG_Bool(UNTAG_Int( variable
[5] /*index*/)>=UNTAG_Int( TAG_Int(0)));
694 variable
[8] = variable
[7];
695 if (UNTAG_Bool(variable
[8])) { /* and */
696 variable
[8] = variable
[4];
697 variable
[8] = ATTR_array___AbstractArray____length(variable
[8]) /*AbstractArray::_length*/;
698 variable
[8] = TAG_Bool(UNTAG_Int( variable
[5] /*index*/)<UNTAG_Int(variable
[8]));
700 variable
[7] = variable
[8];
701 if (!UNTAG_Bool(variable
[7])) { fprintf(stderr
, "Assert%s failed", " 'index' "); fprintf(stderr
, " in %s (%s:%d)\n", LOCATE_array___Array_____bra
, LOCATE_file
, 229); nit_exit(1);}
702 variable
[7] = variable
[4];
703 variable
[7] = ATTR_array___Array____items(variable
[7]) /*Array::_items*/;
704 variable
[7] = UNBOX_NativeArray(variable
[7])[UNTAG_Int( variable
[5] /*index*/)];
705 variable
[6] = variable
[7];
707 return_label35
: while(false);
708 variable
[4] = variable
[6];
709 variable
[4] = CALL_abstract_collection___Collection___is_empty(variable
[4])(variable
[4]) /*AbstractArray::is_empty*/;
710 if (UNTAG_Bool(variable
[4])) { /*if*/
711 CALL_abstract_collection___SimpleCollection___add( variable
[3] /*path*/)( variable
[3] /*path*/, TAG_Char('/')) /*String::add*/;
713 variable
[4] = CALL_abstract_collection___Collection___iterator( variable
[2] /*dirs*/)( variable
[2] /*dirs*/) /*AbstractArray::iterator*/;
714 while (true) { /*for*/
715 variable
[5] = CALL_abstract_collection___Iterator___is_ok(variable
[4])(variable
[4]) /*ArrayIterator::is_ok*/;
716 if (!UNTAG_Bool(variable
[5])) break; /*for*/
717 variable
[5] = CALL_abstract_collection___Iterator___item(variable
[4])(variable
[4]) /*ArrayIterator::item*/;
718 variable
[6] = variable
[5];
719 variable
[7] = CALL_abstract_collection___Collection___is_empty( variable
[6] /*d*/)( variable
[6] /*d*/) /*AbstractArray::is_empty*/;
720 if (UNTAG_Bool(variable
[7])) { /*if*/
723 CALL_abstract_collection___IndexedCollection___append( variable
[3] /*path*/)( variable
[3] /*path*/, variable
[6] /*d*/) /*String::append*/;
724 CALL_abstract_collection___SimpleCollection___add( variable
[3] /*path*/)( variable
[3] /*path*/, TAG_Char('/')) /*String::add*/;
725 variable
[7] = CALL_string___String___to_cstring( variable
[3] /*path*/)( variable
[3] /*path*/) /*String::to_cstring*/;
726 CALL_file___NativeString___file_mkdir(variable
[7])(variable
[7]) /*NativeString::file_mkdir*/;
727 continue_36
: while(0);
728 CALL_abstract_collection___Iterator___next(variable
[4])(variable
[4]) /*ArrayIterator::next*/;
731 return_label34
: while(false);
732 tracehead
= trace
.prev
;
735 val_t
file___NativeString___file_exists(val_t self
) {
736 struct trace_t trace
= {NULL
, NULL
, 261, LOCATE_file___NativeString___file_exists
};
737 val_t
*variable
= NULL
;
738 void **closurevariable
= NULL
;
739 trace
.prev
= tracehead
; tracehead
= &trace
;
740 trace
.file
= LOCATE_file
;
741 tracehead
= trace
.prev
;
742 return TAG_Bool(string_NativeString_NativeString_file_exists_0(UNBOX_NativeString( self
)));
744 val_t
file___NativeString___file_stat(val_t self
) {
745 struct trace_t trace
= {NULL
, NULL
, 262, LOCATE_file___NativeString___file_stat
};
746 val_t
*variable
= NULL
;
747 void **closurevariable
= NULL
;
748 trace
.prev
= tracehead
; tracehead
= &trace
;
749 trace
.file
= LOCATE_file
;
750 tracehead
= trace
.prev
;
751 return BOX_FileStat(string_NativeString_NativeString_file_stat_0(UNBOX_NativeString( self
)));
753 val_t
file___NativeString___file_mkdir(val_t self
) {
754 struct trace_t trace
= {NULL
, NULL
, 263, LOCATE_file___NativeString___file_mkdir
};
755 val_t
*variable
= NULL
;
756 void **closurevariable
= NULL
;
757 trace
.prev
= tracehead
; tracehead
= &trace
;
758 trace
.file
= LOCATE_file
;
759 tracehead
= trace
.prev
;
760 return TAG_Bool(string_NativeString_NativeString_file_mkdir_0(UNBOX_NativeString( self
)));
762 val_t
file___NativeString___file_delete(val_t self
) {
763 struct trace_t trace
= {NULL
, NULL
, 264, LOCATE_file___NativeString___file_delete
};
764 val_t
*variable
= NULL
;
765 void **closurevariable
= NULL
;
766 trace
.prev
= tracehead
; tracehead
= &trace
;
767 trace
.file
= LOCATE_file
;
768 tracehead
= trace
.prev
;
769 return TAG_Bool(string_NativeString_NativeString_file_delete_0(UNBOX_NativeString( self
)));
771 val_t
file___FileStat___mode(val_t self
) {
772 struct trace_t trace
= {NULL
, NULL
, 269, LOCATE_file___FileStat___mode
};
773 val_t
*variable
= NULL
;
774 void **closurevariable
= NULL
;
775 trace
.prev
= tracehead
; tracehead
= &trace
;
776 trace
.file
= LOCATE_file
;
777 tracehead
= trace
.prev
;
778 return TAG_Int(file_FileStat_FileStat_mode_0(UNBOX_FileStat( self
)));
780 val_t
file___FileStat___atime(val_t self
) {
781 struct trace_t trace
= {NULL
, NULL
, 271, LOCATE_file___FileStat___atime
};
782 val_t
*variable
= NULL
;
783 void **closurevariable
= NULL
;
784 trace
.prev
= tracehead
; tracehead
= &trace
;
785 trace
.file
= LOCATE_file
;
786 tracehead
= trace
.prev
;
787 return TAG_Int(file_FileStat_FileStat_atime_0(UNBOX_FileStat( self
)));
789 val_t
file___FileStat___ctime(val_t self
) {
790 struct trace_t trace
= {NULL
, NULL
, 272, LOCATE_file___FileStat___ctime
};
791 val_t
*variable
= NULL
;
792 void **closurevariable
= NULL
;
793 trace
.prev
= tracehead
; tracehead
= &trace
;
794 trace
.file
= LOCATE_file
;
795 tracehead
= trace
.prev
;
796 return TAG_Int(file_FileStat_FileStat_ctime_0(UNBOX_FileStat( self
)));
798 val_t
file___FileStat___mtime(val_t self
) {
799 struct trace_t trace
= {NULL
, NULL
, 273, LOCATE_file___FileStat___mtime
};
800 val_t
*variable
= NULL
;
801 void **closurevariable
= NULL
;
802 trace
.prev
= tracehead
; tracehead
= &trace
;
803 trace
.file
= LOCATE_file
;
804 tracehead
= trace
.prev
;
805 return TAG_Int(file_FileStat_FileStat_mtime_0(UNBOX_FileStat( self
)));
807 val_t
file___FileStat___size(val_t self
) {
808 struct trace_t trace
= {NULL
, NULL
, 274, LOCATE_file___FileStat___size
};
809 val_t
*variable
= NULL
;
810 void **closurevariable
= NULL
;
811 trace
.prev
= tracehead
; tracehead
= &trace
;
812 trace
.file
= LOCATE_file
;
813 tracehead
= trace
.prev
;
814 return TAG_Int(file_FileStat_FileStat_size_0(UNBOX_FileStat( self
)));
816 val_t
file___NativeFile___io_read(val_t self
, val_t param0
, val_t param1
) {
817 struct trace_t trace
= {NULL
, NULL
, 280, LOCATE_file___NativeFile___io_read
};
818 val_t
*variable
= NULL
;
819 void **closurevariable
= NULL
;
820 trace
.prev
= tracehead
; tracehead
= &trace
;
821 trace
.file
= LOCATE_file
;
822 tracehead
= trace
.prev
;
823 return TAG_Int(file_NativeFile_NativeFile_io_read_2(UNBOX_NativeFile( self
), UNBOX_NativeString( param0
), UNTAG_Int( param1
)));
825 val_t
file___NativeFile___io_write(val_t self
, val_t param0
, val_t param1
) {
826 struct trace_t trace
= {NULL
, NULL
, 281, LOCATE_file___NativeFile___io_write
};
827 val_t
*variable
= NULL
;
828 void **closurevariable
= NULL
;
829 trace
.prev
= tracehead
; tracehead
= &trace
;
830 trace
.file
= LOCATE_file
;
831 tracehead
= trace
.prev
;
832 return TAG_Int(file_NativeFile_NativeFile_io_write_2(UNBOX_NativeFile( self
), UNBOX_NativeString( param0
), UNTAG_Int( param1
)));
834 val_t
file___NativeFile___io_close(val_t self
) {
835 struct trace_t trace
= {NULL
, NULL
, 282, LOCATE_file___NativeFile___io_close
};
836 val_t
*variable
= NULL
;
837 void **closurevariable
= NULL
;
838 trace
.prev
= tracehead
; tracehead
= &trace
;
839 trace
.file
= LOCATE_file
;
840 tracehead
= trace
.prev
;
841 return TAG_Int(file_NativeFile_NativeFile_io_close_0(UNBOX_NativeFile( self
)));
843 val_t
file___NativeFile___file_stat(val_t self
) {
844 struct trace_t trace
= {NULL
, NULL
, 283, LOCATE_file___NativeFile___file_stat
};
845 val_t
*variable
= NULL
;
846 void **closurevariable
= NULL
;
847 trace
.prev
= tracehead
; tracehead
= &trace
;
848 trace
.file
= LOCATE_file
;
849 tracehead
= trace
.prev
;
850 return BOX_FileStat(file_NativeFile_NativeFile_file_stat_0(UNBOX_NativeFile( self
)));
852 val_t
file___NativeFileCapable___io_open_read(val_t self
, val_t param0
) {
853 struct trace_t trace
= {NULL
, NULL
, 287, LOCATE_file___NativeFileCapable___io_open_read
};
854 val_t
*variable
= NULL
;
855 void **closurevariable
= NULL
;
856 trace
.prev
= tracehead
; tracehead
= &trace
;
857 trace
.file
= LOCATE_file
;
858 tracehead
= trace
.prev
;
859 return BOX_NativeFile(file_NativeFileCapable_NativeFileCapable_io_open_read_1( self
, UNBOX_NativeString( param0
)));
861 val_t
file___NativeFileCapable___io_open_write(val_t self
, val_t param0
) {
862 struct trace_t trace
= {NULL
, NULL
, 288, LOCATE_file___NativeFileCapable___io_open_write
};
863 val_t
*variable
= NULL
;
864 void **closurevariable
= NULL
;
865 trace
.prev
= tracehead
; tracehead
= &trace
;
866 trace
.file
= LOCATE_file
;
867 tracehead
= trace
.prev
;
868 return BOX_NativeFile(file_NativeFileCapable_NativeFileCapable_io_open_write_1( self
, UNBOX_NativeString( param0
)));
870 val_t
file___NativeFileCapable___native_stdin(val_t self
) {
871 struct trace_t trace
= {NULL
, NULL
, 289, LOCATE_file___NativeFileCapable___native_stdin
};
872 val_t
*variable
= NULL
;
873 void **closurevariable
= NULL
;
874 trace
.prev
= tracehead
; tracehead
= &trace
;
875 trace
.file
= LOCATE_file
;
876 tracehead
= trace
.prev
;
877 return BOX_NativeFile(file_NativeFileCapable_NativeFileCapable_native_stdin_0( self
));
879 val_t
file___NativeFileCapable___native_stdout(val_t self
) {
880 struct trace_t trace
= {NULL
, NULL
, 290, LOCATE_file___NativeFileCapable___native_stdout
};
881 val_t
*variable
= NULL
;
882 void **closurevariable
= NULL
;
883 trace
.prev
= tracehead
; tracehead
= &trace
;
884 trace
.file
= LOCATE_file
;
885 tracehead
= trace
.prev
;
886 return BOX_NativeFile(file_NativeFileCapable_NativeFileCapable_native_stdout_0( self
));
888 val_t
file___NativeFileCapable___native_stderr(val_t self
) {
889 struct trace_t trace
= {NULL
, NULL
, 291, LOCATE_file___NativeFileCapable___native_stderr
};
890 val_t
*variable
= NULL
;
891 void **closurevariable
= NULL
;
892 trace
.prev
= tracehead
; tracehead
= &trace
;
893 trace
.file
= LOCATE_file
;
894 tracehead
= trace
.prev
;
895 return BOX_NativeFile(file_NativeFileCapable_NativeFileCapable_native_stderr_0( self
));