1 #include "exec.sep.0.h"
2 /* method exec#Process#id for (self: Process): Int */
3 long exec__Process__id(val
* self
) {
5 void* var1
/* : NativeProcess */;
7 var1
= ((void* (*)(val
*))(self
->class->vft
[COLOR_exec__Process__data
]))(self
) /* data on <self:Process>*/;
8 var2
= exec__NativeProcess__id(var1
);
14 /* method exec#Process#id for (self: Object): Int */
15 long VIRTUAL_exec__Process__id(val
* self
) {
17 long var1
/* : Int */;
18 var1
= exec__Process__id(self
);
23 /* method exec#Process#is_finished for (self: Process): Bool */
24 short int exec__Process__is_finished(val
* self
) {
25 short int var
/* : Bool */;
26 void* var1
/* : NativeProcess */;
27 short int var2
/* : Bool */;
28 var1
= ((void* (*)(val
*))(self
->class->vft
[COLOR_exec__Process__data
]))(self
) /* data on <self:Process>*/;
29 var2
= exec__NativeProcess__is_finished(var1
);
35 /* method exec#Process#is_finished for (self: Object): Bool */
36 short int VIRTUAL_exec__Process__is_finished(val
* self
) {
37 short int var
/* : Bool */;
38 short int var1
/* : Bool */;
39 var1
= exec__Process__is_finished(self
);
44 /* method exec#Process#wait for (self: Process) */
45 void exec__Process__wait(val
* self
) {
46 void* var
/* : NativeProcess */;
47 short int var1
/* : Bool */;
48 var
= ((void* (*)(val
*))(self
->class->vft
[COLOR_exec__Process__data
]))(self
) /* data on <self:Process>*/;
49 exec__NativeProcess__wait(var
);
50 var1
= ((short int (*)(val
*))(self
->class->vft
[COLOR_exec__Process__is_finished
]))(self
) /* is_finished on <self:Process>*/;
52 fprintf(stderr
, "Runtime error: %s", "Assert failed");
53 fprintf(stderr
, " (%s:%d)\n", "lib/standard/exec.nit", 32);
58 /* method exec#Process#wait for (self: Object) */
59 void VIRTUAL_exec__Process__wait(val
* self
) {
60 exec__Process__wait(self
);
63 /* method exec#Process#status for (self: Process): Int */
64 long exec__Process__status(val
* self
) {
66 short int var1
/* : Bool */;
67 void* var2
/* : NativeProcess */;
68 long var3
/* : Int */;
69 var1
= ((short int (*)(val
*))(self
->class->vft
[COLOR_exec__Process__is_finished
]))(self
) /* is_finished on <self:Process>*/;
71 fprintf(stderr
, "Runtime error: %s", "Assert failed");
72 fprintf(stderr
, " (%s:%d)\n", "lib/standard/exec.nit", 38);
75 var2
= ((void* (*)(val
*))(self
->class->vft
[COLOR_exec__Process__data
]))(self
) /* data on <self:Process>*/;
76 var3
= exec__NativeProcess__status(var2
);
82 /* method exec#Process#status for (self: Object): Int */
83 long VIRTUAL_exec__Process__status(val
* self
) {
85 long var1
/* : Int */;
86 var1
= exec__Process__status(self
);
91 /* method exec#Process#init for (self: Process, String, Array[String]) */
92 void exec__Process__init(val
* self
, val
* p0
, val
* p1
) {
93 val
* var_command
/* var command: String */;
94 val
* var_arguments
/* var arguments: Array[String] */;
99 ((void (*)(val
*, val
*, val
*, long))(self
->class->vft
[COLOR_exec__Process__execute
]))(self
, var_command
, var_arguments
, var
) /* execute on <self:Process>*/;
102 /* method exec#Process#init for (self: Object, String, Array[String]) */
103 void VIRTUAL_exec__Process__init(val
* self
, val
* p0
, val
* p1
) {
104 exec__Process__init(self
, p0
, p1
);
107 /* method exec#Process#init_ for (self: Process, String) */
108 void exec__Process__init_(val
* self
, val
* p0
) {
109 val
* var_command
/* var command: String */;
110 val
* var
/* : null */;
111 long var1
/* : Int */;
115 ((void (*)(val
*, val
*, val
*, long))(self
->class->vft
[COLOR_exec__Process__execute
]))(self
, var_command
, var
, var1
) /* execute on <self:Process>*/;
118 /* method exec#Process#init_ for (self: Object, String) */
119 void VIRTUAL_exec__Process__init_(val
* self
, val
* p0
) {
120 exec__Process__init_(self
, p0
);
123 /* method exec#Process#from_a for (self: Process, String, Array[String]) */
124 void exec__Process__from_a(val
* self
, val
* p0
, val
* p1
) {
125 val
* var_command
/* var command: String */;
126 val
* var_arguments
/* var arguments: Array[String] */;
127 long var
/* : Int */;
131 ((void (*)(val
*, val
*, val
*, long))(self
->class->vft
[COLOR_exec__Process__execute
]))(self
, var_command
, var_arguments
, var
) /* execute on <self:Process>*/;
134 /* method exec#Process#from_a for (self: Object, String, Array[String]) */
135 void VIRTUAL_exec__Process__from_a(val
* self
, val
* p0
, val
* p1
) {
136 exec__Process__from_a(self
, p0
, p1
);
139 /* method exec#Process#execute for (self: Process, String, nullable Array[String], Int) */
140 void exec__Process__execute(val
* self
, val
* p0
, val
* p1
, long p2
) {
141 val
* var_command
/* var command: String */;
142 val
* var_arguments
/* var arguments: nullable Array[String] */;
143 long var_pipeflags
/* var pipeflags: Int */;
144 val
* var
/* : Buffer */;
145 val
* var_args
/* var args: Buffer */;
146 long var1
/* : Int */;
147 long var_l
/* var l: Int */;
148 val
* var2
/* : null */;
149 short int var3
/* : Bool */;
150 val
* var4
/* : Iterator[nullable Object] */;
151 short int var5
/* : Bool */;
152 val
* var6
/* : nullable Object */;
153 val
* var_a
/* var a: String */;
154 char var7
/* : Char */;
155 val
* var8
/* : nullable Object */;
156 long var9
/* : Int */;
157 long var10
/* : Int */;
158 long var12
/* : Int */;
159 char* var13
/* : NativeString */;
160 val
* var14
/* : String */;
161 char* var15
/* : NativeString */;
162 void* var16
/* : NativeProcess */;
166 var
= NEW_string__Buffer(&type_string__Buffer
);
167 ((void (*)(val
*))(var
->class->vft
[COLOR_string__Buffer__init
]))(var
) /* init on <var:Buffer>*/;
168 CHECK_NEW_string__Buffer(var
);
172 ((void (*)(val
*, val
*))(var_args
->class->vft
[COLOR_abstract_collection__Sequence__append
]))(var_args
, var_command
) /* append on <var_args:Buffer>*/;
174 if (var_arguments
== NULL
) {
175 var3
= 0; /* is null */
177 var3
= 1; /* arg is null and recv is not */
180 var4
= ((val
* (*)(val
*))(var_arguments
->class->vft
[COLOR_abstract_collection__Collection__iterator
]))(var_arguments
) /* iterator on <var_arguments:nullable Array[String](Array[String])>*/;
182 var5
= ((short int (*)(val
*))(var4
->class->vft
[COLOR_abstract_collection__Iterator__is_ok
]))(var4
) /* is_ok on <var4:Iterator[nullable Object]>*/;
184 var6
= ((val
* (*)(val
*))(var4
->class->vft
[COLOR_abstract_collection__Iterator__item
]))(var4
) /* item on <var4:Iterator[nullable Object]>*/;
187 var8
= BOX_kernel__Char(var7
); /* autobox from Char to nullable Object */
188 ((void (*)(val
*, val
*))(var_args
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_args
, var8
) /* add on <var_args:Buffer>*/;
189 ((void (*)(val
*, val
*))(var_args
->class->vft
[COLOR_abstract_collection__Sequence__append
]))(var_args
, var_a
) /* append on <var_args:Buffer>*/;
190 CONTINUE_label
: (void)0;
191 ((void (*)(val
*))(var4
->class->vft
[COLOR_abstract_collection__Iterator__next
]))(var4
) /* next on <var4:Iterator[nullable Object]>*/;
193 BREAK_label
: (void)0;
194 var9
= ((long (*)(val
*))(var_arguments
->class->vft
[COLOR_abstract_collection__Collection__length
]))(var_arguments
) /* length on <var_arguments:nullable Array[String](Array[String])>*/;
195 { /* Inline kernel#Int#+ (var_l,var9) */
196 var12
= var_l
+ var9
;
204 var13
= ((char* (*)(val
*))(var_command
->class->vft
[COLOR_string__String__to_cstring
]))(var_command
) /* to_cstring on <var_command:String>*/;
205 var14
= ((val
* (*)(val
*))(var_args
->class->vft
[COLOR_string__Object__to_s
]))(var_args
) /* to_s on <var_args:Buffer>*/;
206 var15
= ((char* (*)(val
*))(var14
->class->vft
[COLOR_string__String__to_cstring
]))(var14
) /* to_cstring on <var14:String>*/;
207 var16
= ((void* (*)(val
*, char*, char*, long, long))(self
->class->vft
[COLOR_exec__Process__basic_exec_execute
]))(self
, var13
, var15
, var_l
, var_pipeflags
) /* basic_exec_execute on <self:Process>*/;
208 ((void (*)(val
*, void*))(self
->class->vft
[COLOR_exec__Process__data_61d
]))(self
, var16
) /* data= on <self:Process>*/;
211 /* method exec#Process#execute for (self: Object, String, nullable Array[String], Int) */
212 void VIRTUAL_exec__Process__execute(val
* self
, val
* p0
, val
* p1
, long p2
) {
213 exec__Process__execute(self
, p0
, p1
, p2
);
216 /* method exec#Process#data for (self: Process): NativeProcess */
217 void* exec__Process__data(val
* self
) {
218 void* var
/* : NativeProcess */;
219 void* var1
/* : NativeProcess */;
220 var1
= self
->attrs
[COLOR_exec__Process___64ddata
].ptr
; /* @data on <self:Process> */
225 /* method exec#Process#data for (self: Object): NativeProcess */
226 void* VIRTUAL_exec__Process__data(val
* self
) {
227 void* var
/* : NativeProcess */;
228 void* var1
/* : NativeProcess */;
229 var1
= exec__Process__data(self
);
234 /* method exec#Process#data= for (self: Process, NativeProcess) */
235 void exec__Process__data_61d(val
* self
, void* p0
) {
236 self
->attrs
[COLOR_exec__Process___64ddata
].ptr
= p0
; /* @data on <self:Process> */
239 /* method exec#Process#data= for (self: Object, NativeProcess) */
240 void VIRTUAL_exec__Process__data_61d(val
* self
, void* p0
) {
241 exec__Process__data_61d(self
, p0
);
244 /* method exec#Process#basic_exec_execute for (self: Process, NativeString, NativeString, Int, Int): NativeProcess */
245 void* exec__Process__basic_exec_execute(val
* self
, char* p0
, char* p1
, long p2
, long p3
) {
246 void* var
/* : NativeProcess */;
247 void* var1
/* : NativeProcess */;
248 var1
= exec_Process_Process_basic_exec_execute_4(self
, p0
, p1
, p2
, p3
);
254 /* method exec#Process#basic_exec_execute for (self: Object, NativeString, NativeString, Int, Int): NativeProcess */
255 void* VIRTUAL_exec__Process__basic_exec_execute(val
* self
, char* p0
, char* p1
, long p2
, long p3
) {
256 void* var
/* : NativeProcess */;
257 void* var1
/* : NativeProcess */;
258 var1
= exec__Process__basic_exec_execute(self
, p0
, p1
, p2
, p3
);
263 /* method exec#IProcess#stream_in for (self: IProcess): FDIStream */
264 val
* exec__IProcess__stream_in(val
* self
) {
265 val
* var
/* : FDIStream */;
266 val
* var1
/* : FDIStream */;
267 var1
= self
->attrs
[COLOR_exec__IProcess___64dstream_in
].val
; /* @stream_in on <self:IProcess> */
269 fprintf(stderr
, "Runtime error: %s", "Uninitialized attribute @stream_in");
270 fprintf(stderr
, " (%s:%d)\n", "lib/standard/exec.nit", 83);
277 /* method exec#IProcess#stream_in for (self: Object): FDIStream */
278 val
* VIRTUAL_exec__IProcess__stream_in(val
* self
) {
279 val
* var
/* : FDIStream */;
280 val
* var1
/* : FDIStream */;
281 var1
= exec__IProcess__stream_in(self
);
286 /* method exec#IProcess#stream_in= for (self: IProcess, FDIStream) */
287 void exec__IProcess__stream_in_61d(val
* self
, val
* p0
) {
288 self
->attrs
[COLOR_exec__IProcess___64dstream_in
].val
= p0
; /* @stream_in on <self:IProcess> */
291 /* method exec#IProcess#stream_in= for (self: Object, FDIStream) */
292 void VIRTUAL_exec__IProcess__stream_in_61d(val
* self
, val
* p0
) {
293 exec__IProcess__stream_in_61d(self
, p0
);
296 /* method exec#IProcess#close for (self: IProcess) */
297 void exec__IProcess__close(val
* self
) {
298 val
* var
/* : FDIStream */;
299 var
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_exec__IProcess__stream_in
]))(self
) /* stream_in on <self:IProcess>*/;
300 ((void (*)(val
*))(var
->class->vft
[COLOR_stream__IOS__close
]))(var
) /* close on <var:FDIStream>*/;
303 /* method exec#IProcess#close for (self: Object) */
304 void VIRTUAL_exec__IProcess__close(val
* self
) {
305 exec__IProcess__close(self
);
308 /* method exec#IProcess#read_char for (self: IProcess): Int */
309 long exec__IProcess__read_char(val
* self
) {
310 long var
/* : Int */;
311 val
* var1
/* : FDIStream */;
312 long var2
/* : Int */;
313 var1
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_exec__IProcess__stream_in
]))(self
) /* stream_in on <self:IProcess>*/;
314 var2
= ((long (*)(val
*))(var1
->class->vft
[COLOR_stream__IStream__read_char
]))(var1
) /* read_char on <var1:FDIStream>*/;
320 /* method exec#IProcess#read_char for (self: Object): Int */
321 long VIRTUAL_exec__IProcess__read_char(val
* self
) {
322 long var
/* : Int */;
323 long var1
/* : Int */;
324 var1
= exec__IProcess__read_char(self
);
329 /* method exec#IProcess#eof for (self: IProcess): Bool */
330 short int exec__IProcess__eof(val
* self
) {
331 short int var
/* : Bool */;
332 val
* var1
/* : FDIStream */;
333 short int var2
/* : Bool */;
334 var1
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_exec__IProcess__stream_in
]))(self
) /* stream_in on <self:IProcess>*/;
335 var2
= ((short int (*)(val
*))(var1
->class->vft
[COLOR_stream__IStream__eof
]))(var1
) /* eof on <var1:FDIStream>*/;
341 /* method exec#IProcess#eof for (self: Object): Bool */
342 short int VIRTUAL_exec__IProcess__eof(val
* self
) {
343 short int var
/* : Bool */;
344 short int var1
/* : Bool */;
345 var1
= exec__IProcess__eof(self
);
350 /* method exec#IProcess#init for (self: IProcess, String, Array[String]) */
351 void exec__IProcess__init(val
* self
, val
* p0
, val
* p1
) {
352 val
* var_command
/* var command: String */;
353 val
* var_arguments
/* var arguments: Array[String] */;
354 long var
/* : Int */;
355 val
* var1
/* : FDIStream */;
356 void* var2
/* : NativeProcess */;
357 long var3
/* : Int */;
361 ((void (*)(val
*, val
*, val
*, long))(self
->class->vft
[COLOR_exec__Process__execute
]))(self
, var_command
, var_arguments
, var
) /* execute on <self:IProcess>*/;
362 var1
= NEW_stream__FDIStream(&type_stream__FDIStream
);
363 var2
= ((void* (*)(val
*))(self
->class->vft
[COLOR_exec__Process__data
]))(self
) /* data on <self:IProcess>*/;
364 var3
= exec__NativeProcess__out_fd(var2
);
365 ((void (*)(val
*, long))(var1
->class->vft
[COLOR_stream__FDIStream__init
]))(var1
, var3
) /* init on <var1:FDIStream>*/;
366 CHECK_NEW_stream__FDIStream(var1
);
367 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_exec__IProcess__stream_in_61d
]))(self
, var1
) /* stream_in= on <self:IProcess>*/;
370 /* method exec#IProcess#init for (self: Object, String, Array[String]) */
371 void VIRTUAL_exec__IProcess__init(val
* self
, val
* p0
, val
* p1
) {
372 exec__IProcess__init(self
, p0
, p1
);
375 /* method exec#IProcess#init_ for (self: IProcess, String) */
376 void exec__IProcess__init_(val
* self
, val
* p0
) {
377 val
* var_command
/* var command: String */;
378 val
* var
/* : null */;
379 long var1
/* : Int */;
380 val
* var2
/* : FDIStream */;
381 void* var3
/* : NativeProcess */;
382 long var4
/* : Int */;
386 ((void (*)(val
*, val
*, val
*, long))(self
->class->vft
[COLOR_exec__Process__execute
]))(self
, var_command
, var
, var1
) /* execute on <self:IProcess>*/;
387 var2
= NEW_stream__FDIStream(&type_stream__FDIStream
);
388 var3
= ((void* (*)(val
*))(self
->class->vft
[COLOR_exec__Process__data
]))(self
) /* data on <self:IProcess>*/;
389 var4
= exec__NativeProcess__out_fd(var3
);
390 ((void (*)(val
*, long))(var2
->class->vft
[COLOR_stream__FDIStream__init
]))(var2
, var4
) /* init on <var2:FDIStream>*/;
391 CHECK_NEW_stream__FDIStream(var2
);
392 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_exec__IProcess__stream_in_61d
]))(self
, var2
) /* stream_in= on <self:IProcess>*/;
395 /* method exec#IProcess#init_ for (self: Object, String) */
396 void VIRTUAL_exec__IProcess__init_(val
* self
, val
* p0
) {
397 exec__IProcess__init_(self
, p0
);
400 /* method exec#IProcess#from_a for (self: IProcess, String, Array[String]) */
401 void exec__IProcess__from_a(val
* self
, val
* p0
, val
* p1
) {
402 val
* var_command
/* var command: String */;
403 val
* var_arguments
/* var arguments: Array[String] */;
404 long var
/* : Int */;
405 val
* var1
/* : FDIStream */;
406 void* var2
/* : NativeProcess */;
407 long var3
/* : Int */;
411 ((void (*)(val
*, val
*, val
*, long))(self
->class->vft
[COLOR_exec__Process__execute
]))(self
, var_command
, var_arguments
, var
) /* execute on <self:IProcess>*/;
412 var1
= NEW_stream__FDIStream(&type_stream__FDIStream
);
413 var2
= ((void* (*)(val
*))(self
->class->vft
[COLOR_exec__Process__data
]))(self
) /* data on <self:IProcess>*/;
414 var3
= exec__NativeProcess__out_fd(var2
);
415 ((void (*)(val
*, long))(var1
->class->vft
[COLOR_stream__FDIStream__init
]))(var1
, var3
) /* init on <var1:FDIStream>*/;
416 CHECK_NEW_stream__FDIStream(var1
);
417 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_exec__IProcess__stream_in_61d
]))(self
, var1
) /* stream_in= on <self:IProcess>*/;
420 /* method exec#IProcess#from_a for (self: Object, String, Array[String]) */
421 void VIRTUAL_exec__IProcess__from_a(val
* self
, val
* p0
, val
* p1
) {
422 exec__IProcess__from_a(self
, p0
, p1
);
425 /* method exec#OProcess#stream_out for (self: OProcess): OStream */
426 val
* exec__OProcess__stream_out(val
* self
) {
427 val
* var
/* : OStream */;
428 val
* var1
/* : OStream */;
429 var1
= self
->attrs
[COLOR_exec__OProcess___64dstream_out
].val
; /* @stream_out on <self:OProcess> */
431 fprintf(stderr
, "Runtime error: %s", "Uninitialized attribute @stream_out");
432 fprintf(stderr
, " (%s:%d)\n", "lib/standard/exec.nit", 114);
439 /* method exec#OProcess#stream_out for (self: Object): OStream */
440 val
* VIRTUAL_exec__OProcess__stream_out(val
* self
) {
441 val
* var
/* : OStream */;
442 val
* var1
/* : OStream */;
443 var1
= exec__OProcess__stream_out(self
);
448 /* method exec#OProcess#stream_out= for (self: OProcess, OStream) */
449 void exec__OProcess__stream_out_61d(val
* self
, val
* p0
) {
450 self
->attrs
[COLOR_exec__OProcess___64dstream_out
].val
= p0
; /* @stream_out on <self:OProcess> */
453 /* method exec#OProcess#stream_out= for (self: Object, OStream) */
454 void VIRTUAL_exec__OProcess__stream_out_61d(val
* self
, val
* p0
) {
455 exec__OProcess__stream_out_61d(self
, p0
);
458 /* method exec#OProcess#close for (self: OProcess) */
459 void exec__OProcess__close(val
* self
) {
460 val
* var
/* : OStream */;
461 var
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_exec__OProcess__stream_out
]))(self
) /* stream_out on <self:OProcess>*/;
462 ((void (*)(val
*))(var
->class->vft
[COLOR_stream__IOS__close
]))(var
) /* close on <var:OStream>*/;
465 /* method exec#OProcess#close for (self: Object) */
466 void VIRTUAL_exec__OProcess__close(val
* self
) {
467 exec__OProcess__close(self
);
470 /* method exec#OProcess#is_writable for (self: OProcess): Bool */
471 short int exec__OProcess__is_writable(val
* self
) {
472 short int var
/* : Bool */;
473 val
* var1
/* : OStream */;
474 short int var2
/* : Bool */;
475 var1
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_exec__OProcess__stream_out
]))(self
) /* stream_out on <self:OProcess>*/;
476 var2
= ((short int (*)(val
*))(var1
->class->vft
[COLOR_stream__OStream__is_writable
]))(var1
) /* is_writable on <var1:OStream>*/;
482 /* method exec#OProcess#is_writable for (self: Object): Bool */
483 short int VIRTUAL_exec__OProcess__is_writable(val
* self
) {
484 short int var
/* : Bool */;
485 short int var1
/* : Bool */;
486 var1
= exec__OProcess__is_writable(self
);
491 /* method exec#OProcess#write for (self: OProcess, String) */
492 void exec__OProcess__write(val
* self
, val
* p0
) {
493 val
* var_s
/* var s: String */;
494 val
* var
/* : OStream */;
496 var
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_exec__OProcess__stream_out
]))(self
) /* stream_out on <self:OProcess>*/;
497 ((void (*)(val
*, val
*))(var
->class->vft
[COLOR_stream__OStream__write
]))(var
, var_s
) /* write on <var:OStream>*/;
500 /* method exec#OProcess#write for (self: Object, String) */
501 void VIRTUAL_exec__OProcess__write(val
* self
, val
* p0
) {
502 exec__OProcess__write(self
, p0
);
505 /* method exec#OProcess#init for (self: OProcess, String, Array[String]) */
506 void exec__OProcess__init(val
* self
, val
* p0
, val
* p1
) {
507 val
* var_command
/* var command: String */;
508 val
* var_arguments
/* var arguments: Array[String] */;
509 long var
/* : Int */;
510 val
* var1
/* : FDOStream */;
511 void* var2
/* : NativeProcess */;
512 long var3
/* : Int */;
516 ((void (*)(val
*, val
*, val
*, long))(self
->class->vft
[COLOR_exec__Process__execute
]))(self
, var_command
, var_arguments
, var
) /* execute on <self:OProcess>*/;
517 var1
= NEW_stream__FDOStream(&type_stream__FDOStream
);
518 var2
= ((void* (*)(val
*))(self
->class->vft
[COLOR_exec__Process__data
]))(self
) /* data on <self:OProcess>*/;
519 var3
= exec__NativeProcess__in_fd(var2
);
520 ((void (*)(val
*, long))(var1
->class->vft
[COLOR_stream__FDOStream__init
]))(var1
, var3
) /* init on <var1:FDOStream>*/;
521 CHECK_NEW_stream__FDOStream(var1
);
522 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_exec__OProcess__stream_out_61d
]))(self
, var1
) /* stream_out= on <self:OProcess>*/;
525 /* method exec#OProcess#init for (self: Object, String, Array[String]) */
526 void VIRTUAL_exec__OProcess__init(val
* self
, val
* p0
, val
* p1
) {
527 exec__OProcess__init(self
, p0
, p1
);
530 /* method exec#OProcess#init_ for (self: OProcess, String) */
531 void exec__OProcess__init_(val
* self
, val
* p0
) {
532 val
* var_command
/* var command: String */;
533 val
* var
/* : null */;
534 long var1
/* : Int */;
535 val
* var2
/* : FDOStream */;
536 void* var3
/* : NativeProcess */;
537 long var4
/* : Int */;
541 ((void (*)(val
*, val
*, val
*, long))(self
->class->vft
[COLOR_exec__Process__execute
]))(self
, var_command
, var
, var1
) /* execute on <self:OProcess>*/;
542 var2
= NEW_stream__FDOStream(&type_stream__FDOStream
);
543 var3
= ((void* (*)(val
*))(self
->class->vft
[COLOR_exec__Process__data
]))(self
) /* data on <self:OProcess>*/;
544 var4
= exec__NativeProcess__in_fd(var3
);
545 ((void (*)(val
*, long))(var2
->class->vft
[COLOR_stream__FDOStream__init
]))(var2
, var4
) /* init on <var2:FDOStream>*/;
546 CHECK_NEW_stream__FDOStream(var2
);
547 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_exec__OProcess__stream_out_61d
]))(self
, var2
) /* stream_out= on <self:OProcess>*/;
550 /* method exec#OProcess#init_ for (self: Object, String) */
551 void VIRTUAL_exec__OProcess__init_(val
* self
, val
* p0
) {
552 exec__OProcess__init_(self
, p0
);
555 /* method exec#OProcess#from_a for (self: OProcess, String, Array[String]) */
556 void exec__OProcess__from_a(val
* self
, val
* p0
, val
* p1
) {
557 val
* var_command
/* var command: String */;
558 val
* var_arguments
/* var arguments: Array[String] */;
559 long var
/* : Int */;
560 val
* var1
/* : FDOStream */;
561 void* var2
/* : NativeProcess */;
562 long var3
/* : Int */;
566 ((void (*)(val
*, val
*, val
*, long))(self
->class->vft
[COLOR_exec__Process__execute
]))(self
, var_command
, var_arguments
, var
) /* execute on <self:OProcess>*/;
567 var1
= NEW_stream__FDOStream(&type_stream__FDOStream
);
568 var2
= ((void* (*)(val
*))(self
->class->vft
[COLOR_exec__Process__data
]))(self
) /* data on <self:OProcess>*/;
569 var3
= exec__NativeProcess__in_fd(var2
);
570 ((void (*)(val
*, long))(var1
->class->vft
[COLOR_stream__FDOStream__init
]))(var1
, var3
) /* init on <var1:FDOStream>*/;
571 CHECK_NEW_stream__FDOStream(var1
);
572 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_exec__OProcess__stream_out_61d
]))(self
, var1
) /* stream_out= on <self:OProcess>*/;
575 /* method exec#OProcess#from_a for (self: Object, String, Array[String]) */
576 void VIRTUAL_exec__OProcess__from_a(val
* self
, val
* p0
, val
* p1
) {
577 exec__OProcess__from_a(self
, p0
, p1
);
580 /* method exec#IOProcess#close for (self: IOProcess) */
581 void exec__IOProcess__close(val
* self
) {
582 val
* var
/* : FDIStream */;
583 val
* var1
/* : OStream */;
584 var
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_exec__IProcess__stream_in
]))(self
) /* stream_in on <self:IOProcess>*/;
585 ((void (*)(val
*))(var
->class->vft
[COLOR_stream__IOS__close
]))(var
) /* close on <var:FDIStream>*/;
586 var1
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_exec__OProcess__stream_out
]))(self
) /* stream_out on <self:IOProcess>*/;
587 ((void (*)(val
*))(var1
->class->vft
[COLOR_stream__IOS__close
]))(var1
) /* close on <var1:OStream>*/;
590 /* method exec#IOProcess#close for (self: Object) */
591 void VIRTUAL_exec__IOProcess__close(val
* self
) {
592 exec__IOProcess__close(self
);
595 /* method exec#IOProcess#init for (self: IOProcess, String, Array[String]) */
596 void exec__IOProcess__init(val
* self
, val
* p0
, val
* p1
) {
597 val
* var_command
/* var command: String */;
598 val
* var_arguments
/* var arguments: Array[String] */;
599 long var
/* : Int */;
600 val
* var1
/* : FDIStream */;
601 void* var2
/* : NativeProcess */;
602 long var3
/* : Int */;
603 val
* var4
/* : FDOStream */;
604 void* var5
/* : NativeProcess */;
605 long var6
/* : Int */;
609 ((void (*)(val
*, val
*, val
*, long))(self
->class->vft
[COLOR_exec__Process__execute
]))(self
, var_command
, var_arguments
, var
) /* execute on <self:IOProcess>*/;
610 var1
= NEW_stream__FDIStream(&type_stream__FDIStream
);
611 var2
= ((void* (*)(val
*))(self
->class->vft
[COLOR_exec__Process__data
]))(self
) /* data on <self:IOProcess>*/;
612 var3
= exec__NativeProcess__out_fd(var2
);
613 ((void (*)(val
*, long))(var1
->class->vft
[COLOR_stream__FDIStream__init
]))(var1
, var3
) /* init on <var1:FDIStream>*/;
614 CHECK_NEW_stream__FDIStream(var1
);
615 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_exec__IProcess__stream_in_61d
]))(self
, var1
) /* stream_in= on <self:IOProcess>*/;
616 var4
= NEW_stream__FDOStream(&type_stream__FDOStream
);
617 var5
= ((void* (*)(val
*))(self
->class->vft
[COLOR_exec__Process__data
]))(self
) /* data on <self:IOProcess>*/;
618 var6
= exec__NativeProcess__in_fd(var5
);
619 ((void (*)(val
*, long))(var4
->class->vft
[COLOR_stream__FDOStream__init
]))(var4
, var6
) /* init on <var4:FDOStream>*/;
620 CHECK_NEW_stream__FDOStream(var4
);
621 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_exec__OProcess__stream_out_61d
]))(self
, var4
) /* stream_out= on <self:IOProcess>*/;
624 /* method exec#IOProcess#init for (self: Object, String, Array[String]) */
625 void VIRTUAL_exec__IOProcess__init(val
* self
, val
* p0
, val
* p1
) {
626 exec__IOProcess__init(self
, p0
, p1
);
629 /* method exec#IOProcess#init_ for (self: IOProcess, String) */
630 void exec__IOProcess__init_(val
* self
, val
* p0
) {
631 val
* var_command
/* var command: String */;
632 val
* var
/* : null */;
633 long var1
/* : Int */;
634 val
* var2
/* : FDIStream */;
635 void* var3
/* : NativeProcess */;
636 long var4
/* : Int */;
637 val
* var5
/* : FDOStream */;
638 void* var6
/* : NativeProcess */;
639 long var7
/* : Int */;
643 ((void (*)(val
*, val
*, val
*, long))(self
->class->vft
[COLOR_exec__Process__execute
]))(self
, var_command
, var
, var1
) /* execute on <self:IOProcess>*/;
644 var2
= NEW_stream__FDIStream(&type_stream__FDIStream
);
645 var3
= ((void* (*)(val
*))(self
->class->vft
[COLOR_exec__Process__data
]))(self
) /* data on <self:IOProcess>*/;
646 var4
= exec__NativeProcess__out_fd(var3
);
647 ((void (*)(val
*, long))(var2
->class->vft
[COLOR_stream__FDIStream__init
]))(var2
, var4
) /* init on <var2:FDIStream>*/;
648 CHECK_NEW_stream__FDIStream(var2
);
649 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_exec__IProcess__stream_in_61d
]))(self
, var2
) /* stream_in= on <self:IOProcess>*/;
650 var5
= NEW_stream__FDOStream(&type_stream__FDOStream
);
651 var6
= ((void* (*)(val
*))(self
->class->vft
[COLOR_exec__Process__data
]))(self
) /* data on <self:IOProcess>*/;
652 var7
= exec__NativeProcess__in_fd(var6
);
653 ((void (*)(val
*, long))(var5
->class->vft
[COLOR_stream__FDOStream__init
]))(var5
, var7
) /* init on <var5:FDOStream>*/;
654 CHECK_NEW_stream__FDOStream(var5
);
655 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_exec__OProcess__stream_out_61d
]))(self
, var5
) /* stream_out= on <self:IOProcess>*/;
658 /* method exec#IOProcess#init_ for (self: Object, String) */
659 void VIRTUAL_exec__IOProcess__init_(val
* self
, val
* p0
) {
660 exec__IOProcess__init_(self
, p0
);
663 /* method exec#IOProcess#from_a for (self: IOProcess, String, Array[String]) */
664 void exec__IOProcess__from_a(val
* self
, val
* p0
, val
* p1
) {
665 val
* var_command
/* var command: String */;
666 val
* var_arguments
/* var arguments: Array[String] */;
667 long var
/* : Int */;
668 val
* var1
/* : FDIStream */;
669 void* var2
/* : NativeProcess */;
670 long var3
/* : Int */;
671 val
* var4
/* : FDOStream */;
672 void* var5
/* : NativeProcess */;
673 long var6
/* : Int */;
677 ((void (*)(val
*, val
*, val
*, long))(self
->class->vft
[COLOR_exec__Process__execute
]))(self
, var_command
, var_arguments
, var
) /* execute on <self:IOProcess>*/;
678 var1
= NEW_stream__FDIStream(&type_stream__FDIStream
);
679 var2
= ((void* (*)(val
*))(self
->class->vft
[COLOR_exec__Process__data
]))(self
) /* data on <self:IOProcess>*/;
680 var3
= exec__NativeProcess__out_fd(var2
);
681 ((void (*)(val
*, long))(var1
->class->vft
[COLOR_stream__FDIStream__init
]))(var1
, var3
) /* init on <var1:FDIStream>*/;
682 CHECK_NEW_stream__FDIStream(var1
);
683 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_exec__IProcess__stream_in_61d
]))(self
, var1
) /* stream_in= on <self:IOProcess>*/;
684 var4
= NEW_stream__FDOStream(&type_stream__FDOStream
);
685 var5
= ((void* (*)(val
*))(self
->class->vft
[COLOR_exec__Process__data
]))(self
) /* data on <self:IOProcess>*/;
686 var6
= exec__NativeProcess__in_fd(var5
);
687 ((void (*)(val
*, long))(var4
->class->vft
[COLOR_stream__FDOStream__init
]))(var4
, var6
) /* init on <var4:FDOStream>*/;
688 CHECK_NEW_stream__FDOStream(var4
);
689 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_exec__OProcess__stream_out_61d
]))(self
, var4
) /* stream_out= on <self:IOProcess>*/;
692 /* method exec#IOProcess#from_a for (self: Object, String, Array[String]) */
693 void VIRTUAL_exec__IOProcess__from_a(val
* self
, val
* p0
, val
* p1
) {
694 exec__IOProcess__from_a(self
, p0
, p1
);
697 /* method exec#Sys#system for (self: Sys, String): Int */
698 long exec__Sys__system(val
* self
, val
* p0
) {
699 long var
/* : Int */;
700 val
* var_command
/* var command: String */;
701 char* var1
/* : NativeString */;
702 long var2
/* : Int */;
704 var1
= ((char* (*)(val
*))(var_command
->class->vft
[COLOR_string__String__to_cstring
]))(var_command
) /* to_cstring on <var_command:String>*/;
705 var2
= exec__NativeString__system(var1
);
711 /* method exec#Sys#system for (self: Object, String): Int */
712 long VIRTUAL_exec__Sys__system(val
* self
, val
* p0
) {
713 long var
/* : Int */;
714 long var1
/* : Int */;
715 var1
= exec__Sys__system(self
, p0
);
720 /* method exec#NativeString#system for (self: NativeString): Int */
721 long exec__NativeString__system(char* self
) {
722 long var
/* : Int */;
723 long var1
/* : Int */;
724 var1
= string_NativeString_NativeString_system_0(self
);
730 /* method exec#NativeString#system for (self: Object): Int */
731 long VIRTUAL_exec__NativeString__system(val
* self
) {
732 long var
/* : Int */;
733 long var1
/* : Int */;
734 char* var2
/* : NativeString */;
735 var2
= ((struct instance_string__NativeString
*)self
)->value
; /* autounbox from Object to NativeString */;
736 var1
= exec__NativeString__system(var2
);
741 /* method exec#NativeProcess#id for (self: NativeProcess): Int */
742 long exec__NativeProcess__id(void* self
) {
743 long var
/* : Int */;
744 long var1
/* : Int */;
745 var1
= exec_NativeProcess_NativeProcess_id_0(self
);
751 /* method exec#NativeProcess#id for (self: Object): Int */
752 long VIRTUAL_exec__NativeProcess__id(val
* self
) {
753 long var
/* : Int */;
754 long var1
/* : Int */;
755 void* var2
/* : NativeProcess */;
756 var2
= ((struct instance_exec__NativeProcess
*)self
)->value
; /* autounbox from Object to NativeProcess */;
757 var1
= exec__NativeProcess__id(var2
);
762 /* method exec#NativeProcess#is_finished for (self: NativeProcess): Bool */
763 short int exec__NativeProcess__is_finished(void* self
) {
764 short int var
/* : Bool */;
765 short int var1
/* : Bool */;
766 var1
= exec_NativeProcess_NativeProcess_is_finished_0(self
);
772 /* method exec#NativeProcess#is_finished for (self: Object): Bool */
773 short int VIRTUAL_exec__NativeProcess__is_finished(val
* self
) {
774 short int var
/* : Bool */;
775 short int var1
/* : Bool */;
776 void* var2
/* : NativeProcess */;
777 var2
= ((struct instance_exec__NativeProcess
*)self
)->value
; /* autounbox from Object to NativeProcess */;
778 var1
= exec__NativeProcess__is_finished(var2
);
783 /* method exec#NativeProcess#status for (self: NativeProcess): Int */
784 long exec__NativeProcess__status(void* self
) {
785 long var
/* : Int */;
786 long var1
/* : Int */;
787 var1
= exec_NativeProcess_NativeProcess_status_0(self
);
793 /* method exec#NativeProcess#status for (self: Object): Int */
794 long VIRTUAL_exec__NativeProcess__status(val
* self
) {
795 long var
/* : Int */;
796 long var1
/* : Int */;
797 void* var2
/* : NativeProcess */;
798 var2
= ((struct instance_exec__NativeProcess
*)self
)->value
; /* autounbox from Object to NativeProcess */;
799 var1
= exec__NativeProcess__status(var2
);
804 /* method exec#NativeProcess#wait for (self: NativeProcess) */
805 void exec__NativeProcess__wait(void* self
) {
806 exec_NativeProcess_NativeProcess_wait_0(self
);
809 /* method exec#NativeProcess#wait for (self: Object) */
810 void VIRTUAL_exec__NativeProcess__wait(val
* self
) {
811 void* var
/* : NativeProcess */;
812 var
= ((struct instance_exec__NativeProcess
*)self
)->value
; /* autounbox from Object to NativeProcess */;
813 exec__NativeProcess__wait(var
);
816 /* method exec#NativeProcess#in_fd for (self: NativeProcess): Int */
817 long exec__NativeProcess__in_fd(void* self
) {
818 long var
/* : Int */;
819 long var1
/* : Int */;
820 var1
= exec_NativeProcess_NativeProcess_in_fd_0(self
);
826 /* method exec#NativeProcess#in_fd for (self: Object): Int */
827 long VIRTUAL_exec__NativeProcess__in_fd(val
* self
) {
828 long var
/* : Int */;
829 long var1
/* : Int */;
830 void* var2
/* : NativeProcess */;
831 var2
= ((struct instance_exec__NativeProcess
*)self
)->value
; /* autounbox from Object to NativeProcess */;
832 var1
= exec__NativeProcess__in_fd(var2
);
837 /* method exec#NativeProcess#out_fd for (self: NativeProcess): Int */
838 long exec__NativeProcess__out_fd(void* self
) {
839 long var
/* : Int */;
840 long var1
/* : Int */;
841 var1
= exec_NativeProcess_NativeProcess_out_fd_0(self
);
847 /* method exec#NativeProcess#out_fd for (self: Object): Int */
848 long VIRTUAL_exec__NativeProcess__out_fd(val
* self
) {
849 long var
/* : Int */;
850 long var1
/* : Int */;
851 void* var2
/* : NativeProcess */;
852 var2
= ((struct instance_exec__NativeProcess
*)self
)->value
; /* autounbox from Object to NativeProcess */;
853 var1
= exec__NativeProcess__out_fd(var2
);
858 /* method exec#NativeProcess#err_fd for (self: NativeProcess): Int */
859 long exec__NativeProcess__err_fd(void* self
) {
860 long var
/* : Int */;
861 long var1
/* : Int */;
862 var1
= exec_NativeProcess_NativeProcess_err_fd_0(self
);
868 /* method exec#NativeProcess#err_fd for (self: Object): Int */
869 long VIRTUAL_exec__NativeProcess__err_fd(val
* self
) {
870 long var
/* : Int */;
871 long var1
/* : Int */;
872 void* var2
/* : NativeProcess */;
873 var2
= ((struct instance_exec__NativeProcess
*)self
)->value
; /* autounbox from Object to NativeProcess */;
874 var1
= exec__NativeProcess__err_fd(var2
);