1 /* This C file is generated by NIT to compile module exec. */
3 val_t
exec___Process___id(val_t p0
){
4 struct {struct stack_frame_t me
;} fra
;
7 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
8 fra
.me
.file
= LOCATE_exec
;
10 fra
.me
.meth
= LOCATE_exec___Process___id
;
13 fra
.me
.REG
[0] = NIT_NULL
;
15 REGB0
= TAG_Bool(ATTR_exec___Process____data(fra
.me
.REG
[0])!=NIT_NULL
);
16 /* ./../lib/standard//exec.nit:24 */
17 if (UNTAG_Bool(REGB0
)) {
19 fprintf(stderr
, "Uninitialized attribute %s", "_data");
20 fprintf(stderr
, " (%s:%d)\n", LOCATE_exec
, 24);
23 fra
.me
.REG
[0] = ATTR_exec___Process____data(fra
.me
.REG
[0]);
24 REGB0
= CALL_exec___NativeProcess___id(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
27 stack_frame_head
= fra
.me
.prev
;
30 val_t
exec___Process___is_finished(val_t p0
){
31 struct {struct stack_frame_t me
;} fra
;
34 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
35 fra
.me
.file
= LOCATE_exec
;
37 fra
.me
.meth
= LOCATE_exec___Process___is_finished
;
40 fra
.me
.REG
[0] = NIT_NULL
;
42 REGB0
= TAG_Bool(ATTR_exec___Process____data(fra
.me
.REG
[0])!=NIT_NULL
);
43 /* ./../lib/standard//exec.nit:27 */
44 if (UNTAG_Bool(REGB0
)) {
46 fprintf(stderr
, "Uninitialized attribute %s", "_data");
47 fprintf(stderr
, " (%s:%d)\n", LOCATE_exec
, 27);
50 fra
.me
.REG
[0] = ATTR_exec___Process____data(fra
.me
.REG
[0]);
51 REGB0
= CALL_exec___NativeProcess___is_finished(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
54 stack_frame_head
= fra
.me
.prev
;
57 void exec___Process___wait(val_t p0
){
58 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
61 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
62 fra
.me
.file
= LOCATE_exec
;
64 fra
.me
.meth
= LOCATE_exec___Process___wait
;
67 fra
.me
.REG
[0] = NIT_NULL
;
68 fra
.me
.REG
[1] = NIT_NULL
;
70 REGB0
= TAG_Bool(ATTR_exec___Process____data(fra
.me
.REG
[0])!=NIT_NULL
);
71 /* ./../lib/standard//exec.nit:32 */
72 if (UNTAG_Bool(REGB0
)) {
74 fprintf(stderr
, "Uninitialized attribute %s", "_data");
75 fprintf(stderr
, " (%s:%d)\n", LOCATE_exec
, 32);
78 fra
.me
.REG
[1] = ATTR_exec___Process____data(fra
.me
.REG
[0]);
79 CALL_exec___NativeProcess___wait(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
80 REGB0
= CALL_exec___Process___is_finished(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
81 /* ./../lib/standard//exec.nit:33 */
82 if (UNTAG_Bool(REGB0
)) {
84 fprintf(stderr
, "Assert failed");
85 fprintf(stderr
, " (%s:%d)\n", LOCATE_exec
, 33);
88 stack_frame_head
= fra
.me
.prev
;
91 val_t
exec___Process___status(val_t p0
){
92 struct {struct stack_frame_t me
;} fra
;
95 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
96 fra
.me
.file
= LOCATE_exec
;
98 fra
.me
.meth
= LOCATE_exec___Process___status
;
101 fra
.me
.REG
[0] = NIT_NULL
;
103 REGB0
= CALL_exec___Process___is_finished(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
104 /* ./../lib/standard//exec.nit:39 */
105 if (UNTAG_Bool(REGB0
)) {
107 fprintf(stderr
, "Assert failed");
108 fprintf(stderr
, " (%s:%d)\n", LOCATE_exec
, 39);
111 REGB0
= TAG_Bool(ATTR_exec___Process____data(fra
.me
.REG
[0])!=NIT_NULL
);
112 /* ./../lib/standard//exec.nit:40 */
113 if (UNTAG_Bool(REGB0
)) {
115 fprintf(stderr
, "Uninitialized attribute %s", "_data");
116 fprintf(stderr
, " (%s:%d)\n", LOCATE_exec
, 40);
119 fra
.me
.REG
[0] = ATTR_exec___Process____data(fra
.me
.REG
[0]);
120 REGB0
= CALL_exec___NativeProcess___status(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
123 stack_frame_head
= fra
.me
.prev
;
126 void exec___Process___init(val_t p0
, val_t p1
, val_t p2
, int* init_table
){
127 int itpos0
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_Process
].i
;
128 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
131 if (init_table
[itpos0
]) return;
132 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
133 fra
.me
.file
= LOCATE_exec
;
135 fra
.me
.meth
= LOCATE_exec___Process___init
;
136 fra
.me
.has_broke
= 0;
138 fra
.me
.REG
[0] = NIT_NULL
;
139 fra
.me
.REG
[1] = NIT_NULL
;
140 fra
.me
.REG
[2] = NIT_NULL
;
144 REGB0
= TAG_Bool(VAL_ISA(fra
.me
.REG
[2], COLOR_Array
, ID_Array
)) /*cast Array[String]*/;
145 /* ./../lib/standard//exec.nit:43 */
146 if (UNTAG_Bool(REGB0
)) {
148 fprintf(stderr
, "Cast failed");
149 fprintf(stderr
, " (%s:%d)\n", LOCATE_exec
, 43);
153 /* ./../lib/standard//exec.nit:46 */
154 CALL_exec___Process___execute(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], fra
.me
.REG
[2], REGB0
, init_table
);
155 stack_frame_head
= fra
.me
.prev
;
156 init_table
[itpos0
] = 1;
159 void exec___Process___init_(val_t p0
, val_t p1
, int* init_table
){
160 int itpos1
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_Process
].i
;
161 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
164 if (init_table
[itpos1
]) return;
165 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
166 fra
.me
.file
= LOCATE_exec
;
168 fra
.me
.meth
= LOCATE_exec___Process___init_
;
169 fra
.me
.has_broke
= 0;
171 fra
.me
.REG
[0] = NIT_NULL
;
172 fra
.me
.REG
[1] = NIT_NULL
;
176 /* ./../lib/standard//exec.nit:52 */
177 CALL_exec___Process___execute(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], NIT_NULL
, REGB0
, init_table
);
178 stack_frame_head
= fra
.me
.prev
;
179 init_table
[itpos1
] = 1;
182 void exec___Process___execute(val_t p0
, val_t p1
, val_t p2
, val_t p3
, int* init_table
){
183 int itpos2
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_Process
].i
;
184 struct {struct stack_frame_t me
; val_t MORE_REG
[5];} fra
;
190 if (init_table
[itpos2
]) return;
191 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
192 fra
.me
.file
= LOCATE_exec
;
194 fra
.me
.meth
= LOCATE_exec___Process___execute
;
195 fra
.me
.has_broke
= 0;
197 fra
.me
.REG
[0] = NIT_NULL
;
198 fra
.me
.REG
[1] = NIT_NULL
;
199 fra
.me
.REG
[2] = NIT_NULL
;
200 fra
.me
.REG
[3] = NIT_NULL
;
201 fra
.me
.REG
[4] = NIT_NULL
;
202 fra
.me
.REG
[5] = NIT_NULL
;
207 fra
.me
.REG
[3] = NEW_Buffer_string___Buffer___init();
209 /* ./../lib/standard//exec.nit:60 */
210 CALL_abstract_collection___Sequence___append(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[1]);
211 REGB2
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
212 /* ./../lib/standard//exec.nit:61 */
213 if (UNTAG_Bool(REGB2
)) {
215 REGB3
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
216 if (UNTAG_Bool(REGB3
)) {
217 REGB3
= TAG_Bool(false);
220 REGB3
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], NIT_NULL
);
224 REGB2
= TAG_Bool(!UNTAG_Bool(REGB2
));
225 if (UNTAG_Bool(REGB2
)) {
226 fra
.me
.REG
[4] = CALL_abstract_collection___Collection___iterator(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
227 /* ./../lib/standard//exec.nit:62 */
229 REGB2
= CALL_abstract_collection___Iterator___is_ok(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
230 if (UNTAG_Bool(REGB2
)) {
231 fra
.me
.REG
[5] = CALL_abstract_collection___Iterator___item(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
232 REGB2
= TAG_Char('\0');
233 /* ./../lib/standard//exec.nit:63 */
234 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], REGB2
);
235 /* ./../lib/standard//exec.nit:64 */
236 CALL_abstract_collection___Sequence___append(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[5]);
238 /* ./../lib/standard//exec.nit:62 */
241 CALL_abstract_collection___Iterator___next(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
244 REGB2
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
245 /* ./../lib/standard//exec.nit:66 */
246 if (UNTAG_Bool(REGB2
)) {
247 fprintf(stderr
, "Reciever is null");
248 fprintf(stderr
, " (%s:%d)\n", LOCATE_exec
, 66);
251 REGB2
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
252 /* ./../lib/standard//collection//array.nit:23 */
253 if (UNTAG_Bool(REGB2
)) {
255 fprintf(stderr
, "Uninitialized attribute %s", "_length");
256 fprintf(stderr
, " (%s:%d)\n", LOCATE_array
, 23);
259 REGB2
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[2]);
260 REGB2
= TAG_Int(UNTAG_Int(REGB1
)+UNTAG_Int(REGB2
));
262 /* ./../lib/standard//exec.nit:66 */
264 fra
.me
.REG
[1] = CALL_string___String___to_cstring(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
265 fra
.me
.REG
[3] = CALL_string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
266 fra
.me
.REG
[3] = CALL_string___String___to_cstring(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
267 fra
.me
.REG
[3] = CALL_exec___Process___basic_exec_execute(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], fra
.me
.REG
[3], REGB1
, REGB0
);
268 /* ./../lib/standard//exec.nit:68 */
269 ATTR_exec___Process____data(fra
.me
.REG
[0]) = fra
.me
.REG
[3];
270 stack_frame_head
= fra
.me
.prev
;
271 init_table
[itpos2
] = 1;
274 val_t
exec___Process___basic_exec_execute(val_t p0
, val_t p1
, val_t p2
, val_t p3
, val_t p4
){
275 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
279 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
280 fra
.me
.file
= LOCATE_exec
;
282 fra
.me
.meth
= LOCATE_exec___Process___basic_exec_execute
;
283 fra
.me
.has_broke
= 0;
285 fra
.me
.REG
[0] = NIT_NULL
;
286 fra
.me
.REG
[1] = NIT_NULL
;
287 fra
.me
.REG
[2] = NIT_NULL
;
293 fra
.me
.REG
[2] = BOX_NativeProcess(exec_Process_Process_basic_exec_execute_4(fra
.me
.REG
[0], UNBOX_NativeString(fra
.me
.REG
[1]), UNBOX_NativeString(fra
.me
.REG
[2]), UNTAG_Int(REGB0
), UNTAG_Int(REGB1
)));
294 /* ./../lib/standard//exec.nit:72 */
295 stack_frame_head
= fra
.me
.prev
;
296 return fra
.me
.REG
[2];
298 void exec___IProcess___close(val_t p0
){
299 struct {struct stack_frame_t me
;} fra
;
302 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
303 fra
.me
.file
= LOCATE_exec
;
305 fra
.me
.meth
= LOCATE_exec___IProcess___close
;
306 fra
.me
.has_broke
= 0;
308 fra
.me
.REG
[0] = NIT_NULL
;
310 REGB0
= TAG_Bool(ATTR_exec___IProcess____in(fra
.me
.REG
[0])!=NIT_NULL
);
311 /* ./../lib/standard//exec.nit:81 */
312 if (UNTAG_Bool(REGB0
)) {
314 fprintf(stderr
, "Uninitialized attribute %s", "_in");
315 fprintf(stderr
, " (%s:%d)\n", LOCATE_exec
, 81);
318 fra
.me
.REG
[0] = ATTR_exec___IProcess____in(fra
.me
.REG
[0]);
319 CALL_stream___IOS___close(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
320 stack_frame_head
= fra
.me
.prev
;
323 val_t
exec___IProcess___read_char(val_t p0
){
324 struct {struct stack_frame_t me
;} fra
;
327 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
328 fra
.me
.file
= LOCATE_exec
;
330 fra
.me
.meth
= LOCATE_exec___IProcess___read_char
;
331 fra
.me
.has_broke
= 0;
333 fra
.me
.REG
[0] = NIT_NULL
;
335 REGB0
= TAG_Bool(ATTR_exec___IProcess____in(fra
.me
.REG
[0])!=NIT_NULL
);
336 /* ./../lib/standard//exec.nit:83 */
337 if (UNTAG_Bool(REGB0
)) {
339 fprintf(stderr
, "Uninitialized attribute %s", "_in");
340 fprintf(stderr
, " (%s:%d)\n", LOCATE_exec
, 83);
343 fra
.me
.REG
[0] = ATTR_exec___IProcess____in(fra
.me
.REG
[0]);
344 REGB0
= CALL_stream___IStream___read_char(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
347 stack_frame_head
= fra
.me
.prev
;
350 val_t
exec___IProcess___eof(val_t p0
){
351 struct {struct stack_frame_t me
;} fra
;
354 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
355 fra
.me
.file
= LOCATE_exec
;
357 fra
.me
.meth
= LOCATE_exec___IProcess___eof
;
358 fra
.me
.has_broke
= 0;
360 fra
.me
.REG
[0] = NIT_NULL
;
362 REGB0
= TAG_Bool(ATTR_exec___IProcess____in(fra
.me
.REG
[0])!=NIT_NULL
);
363 /* ./../lib/standard//exec.nit:85 */
364 if (UNTAG_Bool(REGB0
)) {
366 fprintf(stderr
, "Uninitialized attribute %s", "_in");
367 fprintf(stderr
, " (%s:%d)\n", LOCATE_exec
, 85);
370 fra
.me
.REG
[0] = ATTR_exec___IProcess____in(fra
.me
.REG
[0]);
371 REGB0
= CALL_stream___IStream___eof(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
374 stack_frame_head
= fra
.me
.prev
;
377 void exec___IProcess___init(val_t p0
, val_t p1
, val_t p2
, int* init_table
){
378 int itpos3
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_IProcess
].i
;
379 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
382 if (init_table
[itpos3
]) return;
383 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
384 fra
.me
.file
= LOCATE_exec
;
386 fra
.me
.meth
= LOCATE_exec___IProcess___init
;
387 fra
.me
.has_broke
= 0;
389 fra
.me
.REG
[0] = NIT_NULL
;
390 fra
.me
.REG
[1] = NIT_NULL
;
391 fra
.me
.REG
[2] = NIT_NULL
;
395 REGB0
= TAG_Bool(VAL_ISA(fra
.me
.REG
[2], COLOR_Array
, ID_Array
)) /*cast Array[String]*/;
396 /* ./../lib/standard//exec.nit:87 */
397 if (UNTAG_Bool(REGB0
)) {
399 fprintf(stderr
, "Cast failed");
400 fprintf(stderr
, " (%s:%d)\n", LOCATE_exec
, 87);
404 /* ./../lib/standard//exec.nit:89 */
405 CALL_exec___Process___execute(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], fra
.me
.REG
[2], REGB0
, init_table
);
406 REGB0
= TAG_Bool(ATTR_exec___Process____data(fra
.me
.REG
[0])!=NIT_NULL
);
407 /* ./../lib/standard//exec.nit:90 */
408 if (UNTAG_Bool(REGB0
)) {
410 fprintf(stderr
, "Uninitialized attribute %s", "_data");
411 fprintf(stderr
, " (%s:%d)\n", LOCATE_exec
, 90);
414 fra
.me
.REG
[2] = ATTR_exec___Process____data(fra
.me
.REG
[0]);
415 REGB0
= CALL_exec___NativeProcess___out_fd(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
416 fra
.me
.REG
[2] = NEW_FDIStream_stream___FDIStream___init(REGB0
);
417 ATTR_exec___IProcess____in(fra
.me
.REG
[0]) = fra
.me
.REG
[2];
418 stack_frame_head
= fra
.me
.prev
;
419 init_table
[itpos3
] = 1;
422 void exec___IProcess___init_(val_t p0
, val_t p1
, int* init_table
){
423 int itpos4
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_IProcess
].i
;
424 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
427 if (init_table
[itpos4
]) return;
428 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
429 fra
.me
.file
= LOCATE_exec
;
431 fra
.me
.meth
= LOCATE_exec___IProcess___init_
;
432 fra
.me
.has_broke
= 0;
434 fra
.me
.REG
[0] = NIT_NULL
;
435 fra
.me
.REG
[1] = NIT_NULL
;
439 /* ./../lib/standard//exec.nit:95 */
440 CALL_exec___Process___execute(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], NIT_NULL
, REGB0
, init_table
);
441 REGB0
= TAG_Bool(ATTR_exec___Process____data(fra
.me
.REG
[0])!=NIT_NULL
);
442 /* ./../lib/standard//exec.nit:96 */
443 if (UNTAG_Bool(REGB0
)) {
445 fprintf(stderr
, "Uninitialized attribute %s", "_data");
446 fprintf(stderr
, " (%s:%d)\n", LOCATE_exec
, 96);
449 fra
.me
.REG
[1] = ATTR_exec___Process____data(fra
.me
.REG
[0]);
450 REGB0
= CALL_exec___NativeProcess___out_fd(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
451 fra
.me
.REG
[1] = NEW_FDIStream_stream___FDIStream___init(REGB0
);
452 ATTR_exec___IProcess____in(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
453 stack_frame_head
= fra
.me
.prev
;
454 init_table
[itpos4
] = 1;
457 void exec___OProcess___close(val_t p0
){
458 struct {struct stack_frame_t me
;} fra
;
461 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
462 fra
.me
.file
= LOCATE_exec
;
464 fra
.me
.meth
= LOCATE_exec___OProcess___close
;
465 fra
.me
.has_broke
= 0;
467 fra
.me
.REG
[0] = NIT_NULL
;
469 REGB0
= TAG_Bool(ATTR_exec___OProcess____out(fra
.me
.REG
[0])!=NIT_NULL
);
470 /* ./../lib/standard//exec.nit:106 */
471 if (UNTAG_Bool(REGB0
)) {
473 fprintf(stderr
, "Uninitialized attribute %s", "_out");
474 fprintf(stderr
, " (%s:%d)\n", LOCATE_exec
, 106);
477 fra
.me
.REG
[0] = ATTR_exec___OProcess____out(fra
.me
.REG
[0]);
478 CALL_stream___IOS___close(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
479 stack_frame_head
= fra
.me
.prev
;
482 void exec___OProcess___write(val_t p0
, val_t p1
){
483 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
486 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
487 fra
.me
.file
= LOCATE_exec
;
489 fra
.me
.meth
= LOCATE_exec___OProcess___write
;
490 fra
.me
.has_broke
= 0;
492 fra
.me
.REG
[0] = NIT_NULL
;
493 fra
.me
.REG
[1] = NIT_NULL
;
496 REGB0
= TAG_Bool(ATTR_exec___OProcess____out(fra
.me
.REG
[0])!=NIT_NULL
);
497 /* ./../lib/standard//exec.nit:110 */
498 if (UNTAG_Bool(REGB0
)) {
500 fprintf(stderr
, "Uninitialized attribute %s", "_out");
501 fprintf(stderr
, " (%s:%d)\n", LOCATE_exec
, 110);
504 fra
.me
.REG
[0] = ATTR_exec___OProcess____out(fra
.me
.REG
[0]);
505 CALL_stream___OStream___write(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
506 stack_frame_head
= fra
.me
.prev
;
509 val_t
exec___OProcess___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_exec
;
516 fra
.me
.meth
= LOCATE_exec___OProcess___is_writable
;
517 fra
.me
.has_broke
= 0;
519 fra
.me
.REG
[0] = NIT_NULL
;
521 REGB0
= TAG_Bool(ATTR_exec___OProcess____out(fra
.me
.REG
[0])!=NIT_NULL
);
522 /* ./../lib/standard//exec.nit:108 */
523 if (UNTAG_Bool(REGB0
)) {
525 fprintf(stderr
, "Uninitialized attribute %s", "_out");
526 fprintf(stderr
, " (%s:%d)\n", LOCATE_exec
, 108);
529 fra
.me
.REG
[0] = ATTR_exec___OProcess____out(fra
.me
.REG
[0]);
530 REGB0
= CALL_stream___OStream___is_writable(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
533 stack_frame_head
= fra
.me
.prev
;
536 void exec___OProcess___init(val_t p0
, val_t p1
, val_t p2
, int* init_table
){
537 int itpos5
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_OProcess
].i
;
538 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
541 if (init_table
[itpos5
]) return;
542 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
543 fra
.me
.file
= LOCATE_exec
;
545 fra
.me
.meth
= LOCATE_exec___OProcess___init
;
546 fra
.me
.has_broke
= 0;
548 fra
.me
.REG
[0] = NIT_NULL
;
549 fra
.me
.REG
[1] = NIT_NULL
;
550 fra
.me
.REG
[2] = NIT_NULL
;
554 REGB0
= TAG_Bool(VAL_ISA(fra
.me
.REG
[2], COLOR_Array
, ID_Array
)) /*cast Array[String]*/;
555 /* ./../lib/standard//exec.nit:112 */
556 if (UNTAG_Bool(REGB0
)) {
558 fprintf(stderr
, "Cast failed");
559 fprintf(stderr
, " (%s:%d)\n", LOCATE_exec
, 112);
563 /* ./../lib/standard//exec.nit:114 */
564 CALL_exec___Process___execute(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], fra
.me
.REG
[2], REGB0
, init_table
);
565 REGB0
= TAG_Bool(ATTR_exec___Process____data(fra
.me
.REG
[0])!=NIT_NULL
);
566 /* ./../lib/standard//exec.nit:115 */
567 if (UNTAG_Bool(REGB0
)) {
569 fprintf(stderr
, "Uninitialized attribute %s", "_data");
570 fprintf(stderr
, " (%s:%d)\n", LOCATE_exec
, 115);
573 fra
.me
.REG
[2] = ATTR_exec___Process____data(fra
.me
.REG
[0]);
574 REGB0
= CALL_exec___NativeProcess___in_fd(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
575 fra
.me
.REG
[2] = NEW_FDOStream_stream___FDOStream___init(REGB0
);
576 ATTR_exec___OProcess____out(fra
.me
.REG
[0]) = fra
.me
.REG
[2];
577 stack_frame_head
= fra
.me
.prev
;
578 init_table
[itpos5
] = 1;
581 void exec___OProcess___init_(val_t p0
, val_t p1
, int* init_table
){
582 int itpos6
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_OProcess
].i
;
583 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
586 if (init_table
[itpos6
]) return;
587 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
588 fra
.me
.file
= LOCATE_exec
;
590 fra
.me
.meth
= LOCATE_exec___OProcess___init_
;
591 fra
.me
.has_broke
= 0;
593 fra
.me
.REG
[0] = NIT_NULL
;
594 fra
.me
.REG
[1] = NIT_NULL
;
598 /* ./../lib/standard//exec.nit:120 */
599 CALL_exec___Process___execute(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], NIT_NULL
, REGB0
, init_table
);
600 REGB0
= TAG_Bool(ATTR_exec___Process____data(fra
.me
.REG
[0])!=NIT_NULL
);
601 /* ./../lib/standard//exec.nit:121 */
602 if (UNTAG_Bool(REGB0
)) {
604 fprintf(stderr
, "Uninitialized attribute %s", "_data");
605 fprintf(stderr
, " (%s:%d)\n", LOCATE_exec
, 121);
608 fra
.me
.REG
[1] = ATTR_exec___Process____data(fra
.me
.REG
[0]);
609 REGB0
= CALL_exec___NativeProcess___in_fd(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
610 fra
.me
.REG
[1] = NEW_FDOStream_stream___FDOStream___init(REGB0
);
611 ATTR_exec___OProcess____out(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
612 stack_frame_head
= fra
.me
.prev
;
613 init_table
[itpos6
] = 1;
616 void exec___IOProcess___close(val_t p0
){
617 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
620 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
621 fra
.me
.file
= LOCATE_exec
;
623 fra
.me
.meth
= LOCATE_exec___IOProcess___close
;
624 fra
.me
.has_broke
= 0;
626 fra
.me
.REG
[0] = NIT_NULL
;
627 fra
.me
.REG
[1] = NIT_NULL
;
629 REGB0
= TAG_Bool(ATTR_exec___IProcess____in(fra
.me
.REG
[0])!=NIT_NULL
);
630 /* ./../lib/standard//exec.nit:133 */
631 if (UNTAG_Bool(REGB0
)) {
633 fprintf(stderr
, "Uninitialized attribute %s", "_in");
634 fprintf(stderr
, " (%s:%d)\n", LOCATE_exec
, 133);
637 fra
.me
.REG
[1] = ATTR_exec___IProcess____in(fra
.me
.REG
[0]);
638 CALL_stream___IOS___close(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
639 REGB0
= TAG_Bool(ATTR_exec___OProcess____out(fra
.me
.REG
[0])!=NIT_NULL
);
640 /* ./../lib/standard//exec.nit:134 */
641 if (UNTAG_Bool(REGB0
)) {
643 fprintf(stderr
, "Uninitialized attribute %s", "_out");
644 fprintf(stderr
, " (%s:%d)\n", LOCATE_exec
, 134);
647 fra
.me
.REG
[0] = ATTR_exec___OProcess____out(fra
.me
.REG
[0]);
648 CALL_stream___IOS___close(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
649 stack_frame_head
= fra
.me
.prev
;
652 void exec___IOProcess___init(val_t p0
, val_t p1
, val_t p2
, int* init_table
){
653 int itpos7
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_IOProcess
].i
;
654 struct {struct stack_frame_t me
; val_t MORE_REG
[5];} fra
;
657 if (init_table
[itpos7
]) return;
658 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
659 fra
.me
.file
= LOCATE_exec
;
661 fra
.me
.meth
= LOCATE_exec___IOProcess___init
;
662 fra
.me
.has_broke
= 0;
664 fra
.me
.REG
[0] = NIT_NULL
;
665 fra
.me
.REG
[1] = NIT_NULL
;
666 fra
.me
.REG
[2] = NIT_NULL
;
667 fra
.me
.REG
[3] = NIT_NULL
;
668 fra
.me
.REG
[4] = NIT_NULL
;
669 fra
.me
.REG
[5] = NIT_NULL
;
673 fra
.me
.REG
[3] = fra
.me
.REG
[0];
674 fra
.me
.REG
[4] = fra
.me
.REG
[1];
675 REGB0
= TAG_Bool(VAL_ISA(fra
.me
.REG
[2], COLOR_Array
, ID_Array
)) /*cast Array[String]*/;
676 /* ./../lib/standard//exec.nit:137 */
677 if (UNTAG_Bool(REGB0
)) {
679 fprintf(stderr
, "Cast failed");
680 fprintf(stderr
, " (%s:%d)\n", LOCATE_exec
, 137);
683 fra
.me
.REG
[5] = fra
.me
.REG
[2];
685 /* ./../lib/standard//exec.nit:139 */
686 CALL_exec___Process___execute(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4], fra
.me
.REG
[5], REGB0
, init_table
);
687 CALL_exec___IProcess___init(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], fra
.me
.REG
[2], init_table
);
688 CALL_exec___OProcess___init(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], fra
.me
.REG
[2], init_table
);
689 REGB0
= TAG_Bool(ATTR_exec___Process____data(fra
.me
.REG
[3])!=NIT_NULL
);
690 /* ./../lib/standard//exec.nit:140 */
691 if (UNTAG_Bool(REGB0
)) {
693 fprintf(stderr
, "Uninitialized attribute %s", "_data");
694 fprintf(stderr
, " (%s:%d)\n", LOCATE_exec
, 140);
697 fra
.me
.REG
[2] = ATTR_exec___Process____data(fra
.me
.REG
[3]);
698 REGB0
= CALL_exec___NativeProcess___out_fd(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
699 fra
.me
.REG
[2] = NEW_FDIStream_stream___FDIStream___init(REGB0
);
700 ATTR_exec___IProcess____in(fra
.me
.REG
[3]) = fra
.me
.REG
[2];
701 REGB0
= TAG_Bool(ATTR_exec___Process____data(fra
.me
.REG
[3])!=NIT_NULL
);
702 /* ./../lib/standard//exec.nit:141 */
703 if (UNTAG_Bool(REGB0
)) {
705 fprintf(stderr
, "Uninitialized attribute %s", "_data");
706 fprintf(stderr
, " (%s:%d)\n", LOCATE_exec
, 141);
709 fra
.me
.REG
[2] = ATTR_exec___Process____data(fra
.me
.REG
[3]);
710 REGB0
= CALL_exec___NativeProcess___in_fd(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
711 fra
.me
.REG
[2] = NEW_FDOStream_stream___FDOStream___init(REGB0
);
712 ATTR_exec___OProcess____out(fra
.me
.REG
[3]) = fra
.me
.REG
[2];
713 stack_frame_head
= fra
.me
.prev
;
714 init_table
[itpos7
] = 1;
717 void exec___IOProcess___init_(val_t p0
, val_t p1
, int* init_table
){
718 int itpos8
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_IOProcess
].i
;
719 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
722 if (init_table
[itpos8
]) return;
723 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
724 fra
.me
.file
= LOCATE_exec
;
726 fra
.me
.meth
= LOCATE_exec___IOProcess___init_
;
727 fra
.me
.has_broke
= 0;
729 fra
.me
.REG
[0] = NIT_NULL
;
730 fra
.me
.REG
[1] = NIT_NULL
;
731 fra
.me
.REG
[2] = NIT_NULL
;
732 fra
.me
.REG
[3] = NIT_NULL
;
735 fra
.me
.REG
[2] = fra
.me
.REG
[0];
736 fra
.me
.REG
[3] = fra
.me
.REG
[1];
738 /* ./../lib/standard//exec.nit:146 */
739 CALL_exec___Process___execute(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3], NIT_NULL
, REGB0
, init_table
);
740 CALL_exec___IProcess___init_(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], init_table
);
741 CALL_exec___OProcess___init_(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], init_table
);
742 REGB0
= TAG_Bool(ATTR_exec___Process____data(fra
.me
.REG
[2])!=NIT_NULL
);
743 /* ./../lib/standard//exec.nit:147 */
744 if (UNTAG_Bool(REGB0
)) {
746 fprintf(stderr
, "Uninitialized attribute %s", "_data");
747 fprintf(stderr
, " (%s:%d)\n", LOCATE_exec
, 147);
750 fra
.me
.REG
[1] = ATTR_exec___Process____data(fra
.me
.REG
[2]);
751 REGB0
= CALL_exec___NativeProcess___out_fd(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
752 fra
.me
.REG
[1] = NEW_FDIStream_stream___FDIStream___init(REGB0
);
753 ATTR_exec___IProcess____in(fra
.me
.REG
[2]) = fra
.me
.REG
[1];
754 REGB0
= TAG_Bool(ATTR_exec___Process____data(fra
.me
.REG
[2])!=NIT_NULL
);
755 /* ./../lib/standard//exec.nit:148 */
756 if (UNTAG_Bool(REGB0
)) {
758 fprintf(stderr
, "Uninitialized attribute %s", "_data");
759 fprintf(stderr
, " (%s:%d)\n", LOCATE_exec
, 148);
762 fra
.me
.REG
[1] = ATTR_exec___Process____data(fra
.me
.REG
[2]);
763 REGB0
= CALL_exec___NativeProcess___in_fd(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
764 fra
.me
.REG
[1] = NEW_FDOStream_stream___FDOStream___init(REGB0
);
765 ATTR_exec___OProcess____out(fra
.me
.REG
[2]) = fra
.me
.REG
[1];
766 stack_frame_head
= fra
.me
.prev
;
767 init_table
[itpos8
] = 1;
770 val_t
exec___Sys___system(val_t p0
, val_t p1
){
771 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
774 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
775 fra
.me
.file
= LOCATE_exec
;
777 fra
.me
.meth
= LOCATE_exec___Sys___system
;
778 fra
.me
.has_broke
= 0;
780 fra
.me
.REG
[0] = NIT_NULL
;
781 fra
.me
.REG
[1] = NIT_NULL
;
784 fra
.me
.REG
[1] = CALL_string___String___to_cstring(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
785 REGB0
= CALL_exec___NativeString___system(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
786 /* ./../lib/standard//exec.nit:156 */
789 stack_frame_head
= fra
.me
.prev
;
792 val_t
exec___NativeString___system(val_t p0
){
793 struct {struct stack_frame_t me
;} fra
;
796 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
797 fra
.me
.file
= LOCATE_exec
;
799 fra
.me
.meth
= LOCATE_exec___NativeString___system
;
800 fra
.me
.has_broke
= 0;
802 fra
.me
.REG
[0] = NIT_NULL
;
804 REGB0
= TAG_Int(string_NativeString_NativeString_system_0(UNBOX_NativeString(fra
.me
.REG
[0])));
805 /* ./../lib/standard//exec.nit:161 */
806 stack_frame_head
= fra
.me
.prev
;
809 val_t
exec___NativeProcess___id(val_t p0
){
810 struct {struct stack_frame_t me
;} fra
;
813 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
814 fra
.me
.file
= LOCATE_exec
;
816 fra
.me
.meth
= LOCATE_exec___NativeProcess___id
;
817 fra
.me
.has_broke
= 0;
819 fra
.me
.REG
[0] = NIT_NULL
;
821 REGB0
= TAG_Int(exec_NativeProcess_NativeProcess_id_0(UNBOX_NativeProcess(fra
.me
.REG
[0])));
822 /* ./../lib/standard//exec.nit:166 */
823 stack_frame_head
= fra
.me
.prev
;
826 val_t
exec___NativeProcess___is_finished(val_t p0
){
827 struct {struct stack_frame_t me
;} fra
;
830 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
831 fra
.me
.file
= LOCATE_exec
;
833 fra
.me
.meth
= LOCATE_exec___NativeProcess___is_finished
;
834 fra
.me
.has_broke
= 0;
836 fra
.me
.REG
[0] = NIT_NULL
;
838 REGB0
= TAG_Bool(exec_NativeProcess_NativeProcess_is_finished_0(UNBOX_NativeProcess(fra
.me
.REG
[0])));
839 /* ./../lib/standard//exec.nit:167 */
840 stack_frame_head
= fra
.me
.prev
;
843 val_t
exec___NativeProcess___status(val_t p0
){
844 struct {struct stack_frame_t me
;} fra
;
847 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
848 fra
.me
.file
= LOCATE_exec
;
850 fra
.me
.meth
= LOCATE_exec___NativeProcess___status
;
851 fra
.me
.has_broke
= 0;
853 fra
.me
.REG
[0] = NIT_NULL
;
855 REGB0
= TAG_Int(exec_NativeProcess_NativeProcess_status_0(UNBOX_NativeProcess(fra
.me
.REG
[0])));
856 /* ./../lib/standard//exec.nit:168 */
857 stack_frame_head
= fra
.me
.prev
;
860 void exec___NativeProcess___wait(val_t p0
){
861 struct {struct stack_frame_t me
;} fra
;
863 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
864 fra
.me
.file
= LOCATE_exec
;
866 fra
.me
.meth
= LOCATE_exec___NativeProcess___wait
;
867 fra
.me
.has_broke
= 0;
869 fra
.me
.REG
[0] = NIT_NULL
;
871 /* ./../lib/standard//exec.nit:169 */
872 exec_NativeProcess_NativeProcess_wait_0(UNBOX_NativeProcess(fra
.me
.REG
[0]));
873 stack_frame_head
= fra
.me
.prev
;
876 val_t
exec___NativeProcess___in_fd(val_t p0
){
877 struct {struct stack_frame_t me
;} fra
;
880 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
881 fra
.me
.file
= LOCATE_exec
;
883 fra
.me
.meth
= LOCATE_exec___NativeProcess___in_fd
;
884 fra
.me
.has_broke
= 0;
886 fra
.me
.REG
[0] = NIT_NULL
;
888 REGB0
= TAG_Int(exec_NativeProcess_NativeProcess_in_fd_0(UNBOX_NativeProcess(fra
.me
.REG
[0])));
889 /* ./../lib/standard//exec.nit:171 */
890 stack_frame_head
= fra
.me
.prev
;
893 val_t
exec___NativeProcess___out_fd(val_t p0
){
894 struct {struct stack_frame_t me
;} fra
;
897 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
898 fra
.me
.file
= LOCATE_exec
;
900 fra
.me
.meth
= LOCATE_exec___NativeProcess___out_fd
;
901 fra
.me
.has_broke
= 0;
903 fra
.me
.REG
[0] = NIT_NULL
;
905 REGB0
= TAG_Int(exec_NativeProcess_NativeProcess_out_fd_0(UNBOX_NativeProcess(fra
.me
.REG
[0])));
906 /* ./../lib/standard//exec.nit:172 */
907 stack_frame_head
= fra
.me
.prev
;
910 val_t
exec___NativeProcess___err_fd(val_t p0
){
911 struct {struct stack_frame_t me
;} fra
;
914 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
915 fra
.me
.file
= LOCATE_exec
;
917 fra
.me
.meth
= LOCATE_exec___NativeProcess___err_fd
;
918 fra
.me
.has_broke
= 0;
920 fra
.me
.REG
[0] = NIT_NULL
;
922 REGB0
= TAG_Int(exec_NativeProcess_NativeProcess_err_fd_0(UNBOX_NativeProcess(fra
.me
.REG
[0])));
923 /* ./../lib/standard//exec.nit:173 */
924 stack_frame_head
= fra
.me
.prev
;