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 (%s:%d)\n", "Assert failed", "lib/standard/exec.nit", 32);
57 /* method exec#Process#wait for (self: Object) */
58 void VIRTUAL_exec__Process__wait(val
* self
) {
59 exec__Process__wait(self
);
62 /* method exec#Process#status for (self: Process): Int */
63 long exec__Process__status(val
* self
) {
65 short int var1
/* : Bool */;
66 void* var2
/* : NativeProcess */;
67 long var3
/* : Int */;
68 var1
= ((short int (*)(val
*))(self
->class->vft
[COLOR_exec__Process__is_finished
]))(self
) /* is_finished on <self:Process>*/;
70 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "lib/standard/exec.nit", 38);
73 var2
= ((void* (*)(val
*))(self
->class->vft
[COLOR_exec__Process__data
]))(self
) /* data on <self:Process>*/;
74 var3
= exec__NativeProcess__status(var2
);
80 /* method exec#Process#status for (self: Object): Int */
81 long VIRTUAL_exec__Process__status(val
* self
) {
83 long var1
/* : Int */;
84 var1
= exec__Process__status(self
);
89 /* method exec#Process#init for (self: Process, String, Array[String]) */
90 void exec__Process__init(val
* self
, val
* p0
, val
* p1
) {
91 val
* var_command
/* var command: String */;
92 val
* var_arguments
/* var arguments: Array[String] */;
97 ((void (*)(val
*, val
*, val
*, long))(self
->class->vft
[COLOR_exec__Process__execute
]))(self
, var_command
, var_arguments
, var
) /* execute on <self:Process>*/;
100 /* method exec#Process#init for (self: Object, String, Array[String]) */
101 void VIRTUAL_exec__Process__init(val
* self
, val
* p0
, val
* p1
) {
102 exec__Process__init(self
, p0
, p1
);
105 /* method exec#Process#init_ for (self: Process, String) */
106 void exec__Process__init_(val
* self
, val
* p0
) {
107 val
* var_command
/* var command: String */;
108 val
* var
/* : null */;
109 long var1
/* : Int */;
113 ((void (*)(val
*, val
*, val
*, long))(self
->class->vft
[COLOR_exec__Process__execute
]))(self
, var_command
, var
, var1
) /* execute on <self:Process>*/;
116 /* method exec#Process#init_ for (self: Object, String) */
117 void VIRTUAL_exec__Process__init_(val
* self
, val
* p0
) {
118 exec__Process__init_(self
, p0
);
121 /* method exec#Process#from_a for (self: Process, String, Array[String]) */
122 void exec__Process__from_a(val
* self
, val
* p0
, val
* p1
) {
123 val
* var_command
/* var command: String */;
124 val
* var_arguments
/* var arguments: Array[String] */;
125 long var
/* : Int */;
129 ((void (*)(val
*, val
*, val
*, long))(self
->class->vft
[COLOR_exec__Process__execute
]))(self
, var_command
, var_arguments
, var
) /* execute on <self:Process>*/;
132 /* method exec#Process#from_a for (self: Object, String, Array[String]) */
133 void VIRTUAL_exec__Process__from_a(val
* self
, val
* p0
, val
* p1
) {
134 exec__Process__from_a(self
, p0
, p1
);
137 /* method exec#Process#execute for (self: Process, String, nullable Array[String], Int) */
138 void exec__Process__execute(val
* self
, val
* p0
, val
* p1
, long p2
) {
139 val
* var_command
/* var command: String */;
140 val
* var_arguments
/* var arguments: nullable Array[String] */;
141 long var_pipeflags
/* var pipeflags: Int */;
142 val
* var
/* : Buffer */;
143 val
* var_args
/* var args: Buffer */;
144 long var1
/* : Int */;
145 long var_l
/* var l: Int */;
146 val
* var2
/* : null */;
147 short int var3
/* : Bool */;
148 val
* var4
/* : Iterator[nullable Object] */;
149 short int var5
/* : Bool */;
150 val
* var6
/* : nullable Object */;
151 val
* var_a
/* var a: String */;
152 char var7
/* : Char */;
153 val
* var8
/* : nullable Object */;
154 long var9
/* : Int */;
155 long var10
/* : Int */;
156 long var12
/* : Int */;
157 char* var13
/* : NativeString */;
158 val
* var14
/* : String */;
159 char* var15
/* : NativeString */;
160 void* var16
/* : NativeProcess */;
164 var
= NEW_string__Buffer(&type_string__Buffer
);
165 ((void (*)(val
*))(var
->class->vft
[COLOR_string__Buffer__init
]))(var
) /* init on <var:Buffer>*/;
166 CHECK_NEW_string__Buffer(var
);
170 ((void (*)(val
*, val
*))(var_args
->class->vft
[COLOR_abstract_collection__Sequence__append
]))(var_args
, var_command
) /* append on <var_args:Buffer>*/;
172 if (var_arguments
== NULL
) {
173 var3
= 0; /* is null */
175 var3
= 1; /* arg is null and recv is not */
178 var4
= ((val
* (*)(val
*))(var_arguments
->class->vft
[COLOR_abstract_collection__Collection__iterator
]))(var_arguments
) /* iterator on <var_arguments:nullable Array[String](Array[String])>*/;
180 var5
= ((short int (*)(val
*))(var4
->class->vft
[COLOR_abstract_collection__Iterator__is_ok
]))(var4
) /* is_ok on <var4:Iterator[nullable Object]>*/;
182 var6
= ((val
* (*)(val
*))(var4
->class->vft
[COLOR_abstract_collection__Iterator__item
]))(var4
) /* item on <var4:Iterator[nullable Object]>*/;
185 var8
= BOX_kernel__Char(var7
); /* autobox from Char to nullable Object */
186 ((void (*)(val
*, val
*))(var_args
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_args
, var8
) /* add on <var_args:Buffer>*/;
187 ((void (*)(val
*, val
*))(var_args
->class->vft
[COLOR_abstract_collection__Sequence__append
]))(var_args
, var_a
) /* append on <var_args:Buffer>*/;
188 CONTINUE_label
: (void)0;
189 ((void (*)(val
*))(var4
->class->vft
[COLOR_abstract_collection__Iterator__next
]))(var4
) /* next on <var4:Iterator[nullable Object]>*/;
191 BREAK_label
: (void)0;
192 var9
= ((long (*)(val
*))(var_arguments
->class->vft
[COLOR_abstract_collection__Collection__length
]))(var_arguments
) /* length on <var_arguments:nullable Array[String](Array[String])>*/;
193 { /* Inline kernel#Int#+ (var_l,var9) */
194 var12
= var_l
+ var9
;
202 var13
= ((char* (*)(val
*))(var_command
->class->vft
[COLOR_string__String__to_cstring
]))(var_command
) /* to_cstring on <var_command:String>*/;
203 var14
= ((val
* (*)(val
*))(var_args
->class->vft
[COLOR_string__Object__to_s
]))(var_args
) /* to_s on <var_args:Buffer>*/;
204 var15
= ((char* (*)(val
*))(var14
->class->vft
[COLOR_string__String__to_cstring
]))(var14
) /* to_cstring on <var14:String>*/;
205 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>*/;
206 ((void (*)(val
*, void*))(self
->class->vft
[COLOR_exec__Process__data_61d
]))(self
, var16
) /* data= on <self:Process>*/;
209 /* method exec#Process#execute for (self: Object, String, nullable Array[String], Int) */
210 void VIRTUAL_exec__Process__execute(val
* self
, val
* p0
, val
* p1
, long p2
) {
211 exec__Process__execute(self
, p0
, p1
, p2
);
214 /* method exec#Process#data for (self: Process): NativeProcess */
215 void* exec__Process__data(val
* self
) {
216 void* var
/* : NativeProcess */;
217 void* var1
/* : NativeProcess */;
218 var1
= self
->attrs
[COLOR_exec__Process___64ddata
].ptr
; /* @data on <self:Process> */
223 /* method exec#Process#data for (self: Object): NativeProcess */
224 void* VIRTUAL_exec__Process__data(val
* self
) {
225 void* var
/* : NativeProcess */;
226 void* var1
/* : NativeProcess */;
227 var1
= exec__Process__data(self
);
232 /* method exec#Process#data= for (self: Process, NativeProcess) */
233 void exec__Process__data_61d(val
* self
, void* p0
) {
234 self
->attrs
[COLOR_exec__Process___64ddata
].ptr
= p0
; /* @data on <self:Process> */
237 /* method exec#Process#data= for (self: Object, NativeProcess) */
238 void VIRTUAL_exec__Process__data_61d(val
* self
, void* p0
) {
239 exec__Process__data_61d(self
, p0
);
242 /* method exec#Process#basic_exec_execute for (self: Process, NativeString, NativeString, Int, Int): NativeProcess */
243 void* exec__Process__basic_exec_execute(val
* self
, char* p0
, char* p1
, long p2
, long p3
) {
244 void* var
/* : NativeProcess */;
245 void* var1
/* : NativeProcess */;
246 var1
= exec_Process_Process_basic_exec_execute_4(self
, p0
, p1
, p2
, p3
);
252 /* method exec#Process#basic_exec_execute for (self: Object, NativeString, NativeString, Int, Int): NativeProcess */
253 void* VIRTUAL_exec__Process__basic_exec_execute(val
* self
, char* p0
, char* p1
, long p2
, long p3
) {
254 void* var
/* : NativeProcess */;
255 void* var1
/* : NativeProcess */;
256 var1
= exec__Process__basic_exec_execute(self
, p0
, p1
, p2
, p3
);
261 /* method exec#IProcess#stream_in for (self: IProcess): FDIStream */
262 val
* exec__IProcess__stream_in(val
* self
) {
263 val
* var
/* : FDIStream */;
264 val
* var1
/* : FDIStream */;
265 var1
= self
->attrs
[COLOR_exec__IProcess___64dstream_in
].val
; /* @stream_in on <self:IProcess> */
267 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute @stream_in", "lib/standard/exec.nit", 83);
274 /* method exec#IProcess#stream_in for (self: Object): FDIStream */
275 val
* VIRTUAL_exec__IProcess__stream_in(val
* self
) {
276 val
* var
/* : FDIStream */;
277 val
* var1
/* : FDIStream */;
278 var1
= exec__IProcess__stream_in(self
);
283 /* method exec#IProcess#stream_in= for (self: IProcess, FDIStream) */
284 void exec__IProcess__stream_in_61d(val
* self
, val
* p0
) {
285 self
->attrs
[COLOR_exec__IProcess___64dstream_in
].val
= p0
; /* @stream_in on <self:IProcess> */
288 /* method exec#IProcess#stream_in= for (self: Object, FDIStream) */
289 void VIRTUAL_exec__IProcess__stream_in_61d(val
* self
, val
* p0
) {
290 exec__IProcess__stream_in_61d(self
, p0
);
293 /* method exec#IProcess#close for (self: IProcess) */
294 void exec__IProcess__close(val
* self
) {
295 val
* var
/* : FDIStream */;
296 var
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_exec__IProcess__stream_in
]))(self
) /* stream_in on <self:IProcess>*/;
297 ((void (*)(val
*))(var
->class->vft
[COLOR_stream__IOS__close
]))(var
) /* close on <var:FDIStream>*/;
300 /* method exec#IProcess#close for (self: Object) */
301 void VIRTUAL_exec__IProcess__close(val
* self
) {
302 exec__IProcess__close(self
);
305 /* method exec#IProcess#read_char for (self: IProcess): Int */
306 long exec__IProcess__read_char(val
* self
) {
307 long var
/* : Int */;
308 val
* var1
/* : FDIStream */;
309 long var2
/* : Int */;
310 var1
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_exec__IProcess__stream_in
]))(self
) /* stream_in on <self:IProcess>*/;
311 var2
= ((long (*)(val
*))(var1
->class->vft
[COLOR_stream__IStream__read_char
]))(var1
) /* read_char on <var1:FDIStream>*/;
317 /* method exec#IProcess#read_char for (self: Object): Int */
318 long VIRTUAL_exec__IProcess__read_char(val
* self
) {
319 long var
/* : Int */;
320 long var1
/* : Int */;
321 var1
= exec__IProcess__read_char(self
);
326 /* method exec#IProcess#eof for (self: IProcess): Bool */
327 short int exec__IProcess__eof(val
* self
) {
328 short int var
/* : Bool */;
329 val
* var1
/* : FDIStream */;
330 short int var2
/* : Bool */;
331 var1
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_exec__IProcess__stream_in
]))(self
) /* stream_in on <self:IProcess>*/;
332 var2
= ((short int (*)(val
*))(var1
->class->vft
[COLOR_stream__IStream__eof
]))(var1
) /* eof on <var1:FDIStream>*/;
338 /* method exec#IProcess#eof for (self: Object): Bool */
339 short int VIRTUAL_exec__IProcess__eof(val
* self
) {
340 short int var
/* : Bool */;
341 short int var1
/* : Bool */;
342 var1
= exec__IProcess__eof(self
);
347 /* method exec#IProcess#init for (self: IProcess, String, Array[String]) */
348 void exec__IProcess__init(val
* self
, val
* p0
, val
* p1
) {
349 val
* var_command
/* var command: String */;
350 val
* var_arguments
/* var arguments: Array[String] */;
351 long var
/* : Int */;
352 val
* var1
/* : FDIStream */;
353 void* var2
/* : NativeProcess */;
354 long var3
/* : Int */;
358 ((void (*)(val
*, val
*, val
*, long))(self
->class->vft
[COLOR_exec__Process__execute
]))(self
, var_command
, var_arguments
, var
) /* execute on <self:IProcess>*/;
359 var1
= NEW_stream__FDIStream(&type_stream__FDIStream
);
360 var2
= ((void* (*)(val
*))(self
->class->vft
[COLOR_exec__Process__data
]))(self
) /* data on <self:IProcess>*/;
361 var3
= exec__NativeProcess__out_fd(var2
);
362 ((void (*)(val
*, long))(var1
->class->vft
[COLOR_stream__FDIStream__init
]))(var1
, var3
) /* init on <var1:FDIStream>*/;
363 CHECK_NEW_stream__FDIStream(var1
);
364 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_exec__IProcess__stream_in_61d
]))(self
, var1
) /* stream_in= on <self:IProcess>*/;
367 /* method exec#IProcess#init for (self: Object, String, Array[String]) */
368 void VIRTUAL_exec__IProcess__init(val
* self
, val
* p0
, val
* p1
) {
369 exec__IProcess__init(self
, p0
, p1
);
372 /* method exec#IProcess#init_ for (self: IProcess, String) */
373 void exec__IProcess__init_(val
* self
, val
* p0
) {
374 val
* var_command
/* var command: String */;
375 val
* var
/* : null */;
376 long var1
/* : Int */;
377 val
* var2
/* : FDIStream */;
378 void* var3
/* : NativeProcess */;
379 long var4
/* : Int */;
383 ((void (*)(val
*, val
*, val
*, long))(self
->class->vft
[COLOR_exec__Process__execute
]))(self
, var_command
, var
, var1
) /* execute on <self:IProcess>*/;
384 var2
= NEW_stream__FDIStream(&type_stream__FDIStream
);
385 var3
= ((void* (*)(val
*))(self
->class->vft
[COLOR_exec__Process__data
]))(self
) /* data on <self:IProcess>*/;
386 var4
= exec__NativeProcess__out_fd(var3
);
387 ((void (*)(val
*, long))(var2
->class->vft
[COLOR_stream__FDIStream__init
]))(var2
, var4
) /* init on <var2:FDIStream>*/;
388 CHECK_NEW_stream__FDIStream(var2
);
389 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_exec__IProcess__stream_in_61d
]))(self
, var2
) /* stream_in= on <self:IProcess>*/;
392 /* method exec#IProcess#init_ for (self: Object, String) */
393 void VIRTUAL_exec__IProcess__init_(val
* self
, val
* p0
) {
394 exec__IProcess__init_(self
, p0
);
397 /* method exec#IProcess#from_a for (self: IProcess, String, Array[String]) */
398 void exec__IProcess__from_a(val
* self
, val
* p0
, val
* p1
) {
399 val
* var_command
/* var command: String */;
400 val
* var_arguments
/* var arguments: Array[String] */;
401 long var
/* : Int */;
402 val
* var1
/* : FDIStream */;
403 void* var2
/* : NativeProcess */;
404 long var3
/* : Int */;
408 ((void (*)(val
*, val
*, val
*, long))(self
->class->vft
[COLOR_exec__Process__execute
]))(self
, var_command
, var_arguments
, var
) /* execute on <self:IProcess>*/;
409 var1
= NEW_stream__FDIStream(&type_stream__FDIStream
);
410 var2
= ((void* (*)(val
*))(self
->class->vft
[COLOR_exec__Process__data
]))(self
) /* data on <self:IProcess>*/;
411 var3
= exec__NativeProcess__out_fd(var2
);
412 ((void (*)(val
*, long))(var1
->class->vft
[COLOR_stream__FDIStream__init
]))(var1
, var3
) /* init on <var1:FDIStream>*/;
413 CHECK_NEW_stream__FDIStream(var1
);
414 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_exec__IProcess__stream_in_61d
]))(self
, var1
) /* stream_in= on <self:IProcess>*/;
417 /* method exec#IProcess#from_a for (self: Object, String, Array[String]) */
418 void VIRTUAL_exec__IProcess__from_a(val
* self
, val
* p0
, val
* p1
) {
419 exec__IProcess__from_a(self
, p0
, p1
);
422 /* method exec#OProcess#stream_out for (self: OProcess): OStream */
423 val
* exec__OProcess__stream_out(val
* self
) {
424 val
* var
/* : OStream */;
425 val
* var1
/* : OStream */;
426 var1
= self
->attrs
[COLOR_exec__OProcess___64dstream_out
].val
; /* @stream_out on <self:OProcess> */
428 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute @stream_out", "lib/standard/exec.nit", 114);
435 /* method exec#OProcess#stream_out for (self: Object): OStream */
436 val
* VIRTUAL_exec__OProcess__stream_out(val
* self
) {
437 val
* var
/* : OStream */;
438 val
* var1
/* : OStream */;
439 var1
= exec__OProcess__stream_out(self
);
444 /* method exec#OProcess#stream_out= for (self: OProcess, OStream) */
445 void exec__OProcess__stream_out_61d(val
* self
, val
* p0
) {
446 self
->attrs
[COLOR_exec__OProcess___64dstream_out
].val
= p0
; /* @stream_out on <self:OProcess> */
449 /* method exec#OProcess#stream_out= for (self: Object, OStream) */
450 void VIRTUAL_exec__OProcess__stream_out_61d(val
* self
, val
* p0
) {
451 exec__OProcess__stream_out_61d(self
, p0
);
454 /* method exec#OProcess#close for (self: OProcess) */
455 void exec__OProcess__close(val
* self
) {
456 val
* var
/* : OStream */;
457 var
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_exec__OProcess__stream_out
]))(self
) /* stream_out on <self:OProcess>*/;
458 ((void (*)(val
*))(var
->class->vft
[COLOR_stream__IOS__close
]))(var
) /* close on <var:OStream>*/;
461 /* method exec#OProcess#close for (self: Object) */
462 void VIRTUAL_exec__OProcess__close(val
* self
) {
463 exec__OProcess__close(self
);
466 /* method exec#OProcess#is_writable for (self: OProcess): Bool */
467 short int exec__OProcess__is_writable(val
* self
) {
468 short int var
/* : Bool */;
469 val
* var1
/* : OStream */;
470 short int var2
/* : Bool */;
471 var1
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_exec__OProcess__stream_out
]))(self
) /* stream_out on <self:OProcess>*/;
472 var2
= ((short int (*)(val
*))(var1
->class->vft
[COLOR_stream__OStream__is_writable
]))(var1
) /* is_writable on <var1:OStream>*/;
478 /* method exec#OProcess#is_writable for (self: Object): Bool */
479 short int VIRTUAL_exec__OProcess__is_writable(val
* self
) {
480 short int var
/* : Bool */;
481 short int var1
/* : Bool */;
482 var1
= exec__OProcess__is_writable(self
);
487 /* method exec#OProcess#write for (self: OProcess, String) */
488 void exec__OProcess__write(val
* self
, val
* p0
) {
489 val
* var_s
/* var s: String */;
490 val
* var
/* : OStream */;
492 var
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_exec__OProcess__stream_out
]))(self
) /* stream_out on <self:OProcess>*/;
493 ((void (*)(val
*, val
*))(var
->class->vft
[COLOR_stream__OStream__write
]))(var
, var_s
) /* write on <var:OStream>*/;
496 /* method exec#OProcess#write for (self: Object, String) */
497 void VIRTUAL_exec__OProcess__write(val
* self
, val
* p0
) {
498 exec__OProcess__write(self
, p0
);
501 /* method exec#OProcess#init for (self: OProcess, String, Array[String]) */
502 void exec__OProcess__init(val
* self
, val
* p0
, val
* p1
) {
503 val
* var_command
/* var command: String */;
504 val
* var_arguments
/* var arguments: Array[String] */;
505 long var
/* : Int */;
506 val
* var1
/* : FDOStream */;
507 void* var2
/* : NativeProcess */;
508 long var3
/* : Int */;
512 ((void (*)(val
*, val
*, val
*, long))(self
->class->vft
[COLOR_exec__Process__execute
]))(self
, var_command
, var_arguments
, var
) /* execute on <self:OProcess>*/;
513 var1
= NEW_stream__FDOStream(&type_stream__FDOStream
);
514 var2
= ((void* (*)(val
*))(self
->class->vft
[COLOR_exec__Process__data
]))(self
) /* data on <self:OProcess>*/;
515 var3
= exec__NativeProcess__in_fd(var2
);
516 ((void (*)(val
*, long))(var1
->class->vft
[COLOR_stream__FDOStream__init
]))(var1
, var3
) /* init on <var1:FDOStream>*/;
517 CHECK_NEW_stream__FDOStream(var1
);
518 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_exec__OProcess__stream_out_61d
]))(self
, var1
) /* stream_out= on <self:OProcess>*/;
521 /* method exec#OProcess#init for (self: Object, String, Array[String]) */
522 void VIRTUAL_exec__OProcess__init(val
* self
, val
* p0
, val
* p1
) {
523 exec__OProcess__init(self
, p0
, p1
);
526 /* method exec#OProcess#init_ for (self: OProcess, String) */
527 void exec__OProcess__init_(val
* self
, val
* p0
) {
528 val
* var_command
/* var command: String */;
529 val
* var
/* : null */;
530 long var1
/* : Int */;
531 val
* var2
/* : FDOStream */;
532 void* var3
/* : NativeProcess */;
533 long var4
/* : Int */;
537 ((void (*)(val
*, val
*, val
*, long))(self
->class->vft
[COLOR_exec__Process__execute
]))(self
, var_command
, var
, var1
) /* execute on <self:OProcess>*/;
538 var2
= NEW_stream__FDOStream(&type_stream__FDOStream
);
539 var3
= ((void* (*)(val
*))(self
->class->vft
[COLOR_exec__Process__data
]))(self
) /* data on <self:OProcess>*/;
540 var4
= exec__NativeProcess__in_fd(var3
);
541 ((void (*)(val
*, long))(var2
->class->vft
[COLOR_stream__FDOStream__init
]))(var2
, var4
) /* init on <var2:FDOStream>*/;
542 CHECK_NEW_stream__FDOStream(var2
);
543 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_exec__OProcess__stream_out_61d
]))(self
, var2
) /* stream_out= on <self:OProcess>*/;
546 /* method exec#OProcess#init_ for (self: Object, String) */
547 void VIRTUAL_exec__OProcess__init_(val
* self
, val
* p0
) {
548 exec__OProcess__init_(self
, p0
);
551 /* method exec#OProcess#from_a for (self: OProcess, String, Array[String]) */
552 void exec__OProcess__from_a(val
* self
, val
* p0
, val
* p1
) {
553 val
* var_command
/* var command: String */;
554 val
* var_arguments
/* var arguments: Array[String] */;
555 long var
/* : Int */;
556 val
* var1
/* : FDOStream */;
557 void* var2
/* : NativeProcess */;
558 long var3
/* : Int */;
562 ((void (*)(val
*, val
*, val
*, long))(self
->class->vft
[COLOR_exec__Process__execute
]))(self
, var_command
, var_arguments
, var
) /* execute on <self:OProcess>*/;
563 var1
= NEW_stream__FDOStream(&type_stream__FDOStream
);
564 var2
= ((void* (*)(val
*))(self
->class->vft
[COLOR_exec__Process__data
]))(self
) /* data on <self:OProcess>*/;
565 var3
= exec__NativeProcess__in_fd(var2
);
566 ((void (*)(val
*, long))(var1
->class->vft
[COLOR_stream__FDOStream__init
]))(var1
, var3
) /* init on <var1:FDOStream>*/;
567 CHECK_NEW_stream__FDOStream(var1
);
568 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_exec__OProcess__stream_out_61d
]))(self
, var1
) /* stream_out= on <self:OProcess>*/;
571 /* method exec#OProcess#from_a for (self: Object, String, Array[String]) */
572 void VIRTUAL_exec__OProcess__from_a(val
* self
, val
* p0
, val
* p1
) {
573 exec__OProcess__from_a(self
, p0
, p1
);
576 /* method exec#IOProcess#close for (self: IOProcess) */
577 void exec__IOProcess__close(val
* self
) {
578 val
* var
/* : FDIStream */;
579 val
* var1
/* : OStream */;
580 var
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_exec__IProcess__stream_in
]))(self
) /* stream_in on <self:IOProcess>*/;
581 ((void (*)(val
*))(var
->class->vft
[COLOR_stream__IOS__close
]))(var
) /* close on <var:FDIStream>*/;
582 var1
= ((val
* (*)(val
*))(self
->class->vft
[COLOR_exec__OProcess__stream_out
]))(self
) /* stream_out on <self:IOProcess>*/;
583 ((void (*)(val
*))(var1
->class->vft
[COLOR_stream__IOS__close
]))(var1
) /* close on <var1:OStream>*/;
586 /* method exec#IOProcess#close for (self: Object) */
587 void VIRTUAL_exec__IOProcess__close(val
* self
) {
588 exec__IOProcess__close(self
);
591 /* method exec#IOProcess#init for (self: IOProcess, String, Array[String]) */
592 void exec__IOProcess__init(val
* self
, val
* p0
, val
* p1
) {
593 val
* var_command
/* var command: String */;
594 val
* var_arguments
/* var arguments: Array[String] */;
595 long var
/* : Int */;
596 val
* var1
/* : FDIStream */;
597 void* var2
/* : NativeProcess */;
598 long var3
/* : Int */;
599 val
* var4
/* : FDOStream */;
600 void* var5
/* : NativeProcess */;
601 long var6
/* : Int */;
605 ((void (*)(val
*, val
*, val
*, long))(self
->class->vft
[COLOR_exec__Process__execute
]))(self
, var_command
, var_arguments
, var
) /* execute on <self:IOProcess>*/;
606 var1
= NEW_stream__FDIStream(&type_stream__FDIStream
);
607 var2
= ((void* (*)(val
*))(self
->class->vft
[COLOR_exec__Process__data
]))(self
) /* data on <self:IOProcess>*/;
608 var3
= exec__NativeProcess__out_fd(var2
);
609 ((void (*)(val
*, long))(var1
->class->vft
[COLOR_stream__FDIStream__init
]))(var1
, var3
) /* init on <var1:FDIStream>*/;
610 CHECK_NEW_stream__FDIStream(var1
);
611 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_exec__IProcess__stream_in_61d
]))(self
, var1
) /* stream_in= on <self:IOProcess>*/;
612 var4
= NEW_stream__FDOStream(&type_stream__FDOStream
);
613 var5
= ((void* (*)(val
*))(self
->class->vft
[COLOR_exec__Process__data
]))(self
) /* data on <self:IOProcess>*/;
614 var6
= exec__NativeProcess__in_fd(var5
);
615 ((void (*)(val
*, long))(var4
->class->vft
[COLOR_stream__FDOStream__init
]))(var4
, var6
) /* init on <var4:FDOStream>*/;
616 CHECK_NEW_stream__FDOStream(var4
);
617 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_exec__OProcess__stream_out_61d
]))(self
, var4
) /* stream_out= on <self:IOProcess>*/;
620 /* method exec#IOProcess#init for (self: Object, String, Array[String]) */
621 void VIRTUAL_exec__IOProcess__init(val
* self
, val
* p0
, val
* p1
) {
622 exec__IOProcess__init(self
, p0
, p1
);
625 /* method exec#IOProcess#init_ for (self: IOProcess, String) */
626 void exec__IOProcess__init_(val
* self
, val
* p0
) {
627 val
* var_command
/* var command: String */;
628 val
* var
/* : null */;
629 long var1
/* : Int */;
630 val
* var2
/* : FDIStream */;
631 void* var3
/* : NativeProcess */;
632 long var4
/* : Int */;
633 val
* var5
/* : FDOStream */;
634 void* var6
/* : NativeProcess */;
635 long var7
/* : Int */;
639 ((void (*)(val
*, val
*, val
*, long))(self
->class->vft
[COLOR_exec__Process__execute
]))(self
, var_command
, var
, var1
) /* execute on <self:IOProcess>*/;
640 var2
= NEW_stream__FDIStream(&type_stream__FDIStream
);
641 var3
= ((void* (*)(val
*))(self
->class->vft
[COLOR_exec__Process__data
]))(self
) /* data on <self:IOProcess>*/;
642 var4
= exec__NativeProcess__out_fd(var3
);
643 ((void (*)(val
*, long))(var2
->class->vft
[COLOR_stream__FDIStream__init
]))(var2
, var4
) /* init on <var2:FDIStream>*/;
644 CHECK_NEW_stream__FDIStream(var2
);
645 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_exec__IProcess__stream_in_61d
]))(self
, var2
) /* stream_in= on <self:IOProcess>*/;
646 var5
= NEW_stream__FDOStream(&type_stream__FDOStream
);
647 var6
= ((void* (*)(val
*))(self
->class->vft
[COLOR_exec__Process__data
]))(self
) /* data on <self:IOProcess>*/;
648 var7
= exec__NativeProcess__in_fd(var6
);
649 ((void (*)(val
*, long))(var5
->class->vft
[COLOR_stream__FDOStream__init
]))(var5
, var7
) /* init on <var5:FDOStream>*/;
650 CHECK_NEW_stream__FDOStream(var5
);
651 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_exec__OProcess__stream_out_61d
]))(self
, var5
) /* stream_out= on <self:IOProcess>*/;
654 /* method exec#IOProcess#init_ for (self: Object, String) */
655 void VIRTUAL_exec__IOProcess__init_(val
* self
, val
* p0
) {
656 exec__IOProcess__init_(self
, p0
);
659 /* method exec#IOProcess#from_a for (self: IOProcess, String, Array[String]) */
660 void exec__IOProcess__from_a(val
* self
, val
* p0
, val
* p1
) {
661 val
* var_command
/* var command: String */;
662 val
* var_arguments
/* var arguments: Array[String] */;
663 long var
/* : Int */;
664 val
* var1
/* : FDIStream */;
665 void* var2
/* : NativeProcess */;
666 long var3
/* : Int */;
667 val
* var4
/* : FDOStream */;
668 void* var5
/* : NativeProcess */;
669 long var6
/* : Int */;
673 ((void (*)(val
*, val
*, val
*, long))(self
->class->vft
[COLOR_exec__Process__execute
]))(self
, var_command
, var_arguments
, var
) /* execute on <self:IOProcess>*/;
674 var1
= NEW_stream__FDIStream(&type_stream__FDIStream
);
675 var2
= ((void* (*)(val
*))(self
->class->vft
[COLOR_exec__Process__data
]))(self
) /* data on <self:IOProcess>*/;
676 var3
= exec__NativeProcess__out_fd(var2
);
677 ((void (*)(val
*, long))(var1
->class->vft
[COLOR_stream__FDIStream__init
]))(var1
, var3
) /* init on <var1:FDIStream>*/;
678 CHECK_NEW_stream__FDIStream(var1
);
679 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_exec__IProcess__stream_in_61d
]))(self
, var1
) /* stream_in= on <self:IOProcess>*/;
680 var4
= NEW_stream__FDOStream(&type_stream__FDOStream
);
681 var5
= ((void* (*)(val
*))(self
->class->vft
[COLOR_exec__Process__data
]))(self
) /* data on <self:IOProcess>*/;
682 var6
= exec__NativeProcess__in_fd(var5
);
683 ((void (*)(val
*, long))(var4
->class->vft
[COLOR_stream__FDOStream__init
]))(var4
, var6
) /* init on <var4:FDOStream>*/;
684 CHECK_NEW_stream__FDOStream(var4
);
685 ((void (*)(val
*, val
*))(self
->class->vft
[COLOR_exec__OProcess__stream_out_61d
]))(self
, var4
) /* stream_out= on <self:IOProcess>*/;
688 /* method exec#IOProcess#from_a for (self: Object, String, Array[String]) */
689 void VIRTUAL_exec__IOProcess__from_a(val
* self
, val
* p0
, val
* p1
) {
690 exec__IOProcess__from_a(self
, p0
, p1
);
693 /* method exec#Sys#system for (self: Sys, String): Int */
694 long exec__Sys__system(val
* self
, val
* p0
) {
695 long var
/* : Int */;
696 val
* var_command
/* var command: String */;
697 char* var1
/* : NativeString */;
698 long var2
/* : Int */;
700 var1
= ((char* (*)(val
*))(var_command
->class->vft
[COLOR_string__String__to_cstring
]))(var_command
) /* to_cstring on <var_command:String>*/;
701 var2
= exec__NativeString__system(var1
);
707 /* method exec#Sys#system for (self: Object, String): Int */
708 long VIRTUAL_exec__Sys__system(val
* self
, val
* p0
) {
709 long var
/* : Int */;
710 long var1
/* : Int */;
711 var1
= exec__Sys__system(self
, p0
);
716 /* method exec#NativeString#system for (self: NativeString): Int */
717 long exec__NativeString__system(char* self
) {
718 long var
/* : Int */;
719 long var1
/* : Int */;
720 var1
= string_NativeString_NativeString_system_0(self
);
726 /* method exec#NativeString#system for (self: Object): Int */
727 long VIRTUAL_exec__NativeString__system(val
* self
) {
728 long var
/* : Int */;
729 long var1
/* : Int */;
730 char* var2
/* : NativeString */;
731 var2
= ((struct instance_string__NativeString
*)self
)->value
; /* autounbox from Object to NativeString */;
732 var1
= exec__NativeString__system(var2
);
737 /* method exec#NativeProcess#id for (self: NativeProcess): Int */
738 long exec__NativeProcess__id(void* self
) {
739 long var
/* : Int */;
740 long var1
/* : Int */;
741 var1
= exec_NativeProcess_NativeProcess_id_0(self
);
747 /* method exec#NativeProcess#id for (self: Object): Int */
748 long VIRTUAL_exec__NativeProcess__id(val
* self
) {
749 long var
/* : Int */;
750 long var1
/* : Int */;
751 void* var2
/* : NativeProcess */;
752 var2
= ((struct instance_exec__NativeProcess
*)self
)->value
; /* autounbox from Object to NativeProcess */;
753 var1
= exec__NativeProcess__id(var2
);
758 /* method exec#NativeProcess#is_finished for (self: NativeProcess): Bool */
759 short int exec__NativeProcess__is_finished(void* self
) {
760 short int var
/* : Bool */;
761 short int var1
/* : Bool */;
762 var1
= exec_NativeProcess_NativeProcess_is_finished_0(self
);
768 /* method exec#NativeProcess#is_finished for (self: Object): Bool */
769 short int VIRTUAL_exec__NativeProcess__is_finished(val
* self
) {
770 short int var
/* : Bool */;
771 short int var1
/* : Bool */;
772 void* var2
/* : NativeProcess */;
773 var2
= ((struct instance_exec__NativeProcess
*)self
)->value
; /* autounbox from Object to NativeProcess */;
774 var1
= exec__NativeProcess__is_finished(var2
);
779 /* method exec#NativeProcess#status for (self: NativeProcess): Int */
780 long exec__NativeProcess__status(void* self
) {
781 long var
/* : Int */;
782 long var1
/* : Int */;
783 var1
= exec_NativeProcess_NativeProcess_status_0(self
);
789 /* method exec#NativeProcess#status for (self: Object): Int */
790 long VIRTUAL_exec__NativeProcess__status(val
* self
) {
791 long var
/* : Int */;
792 long var1
/* : Int */;
793 void* var2
/* : NativeProcess */;
794 var2
= ((struct instance_exec__NativeProcess
*)self
)->value
; /* autounbox from Object to NativeProcess */;
795 var1
= exec__NativeProcess__status(var2
);
800 /* method exec#NativeProcess#wait for (self: NativeProcess) */
801 void exec__NativeProcess__wait(void* self
) {
802 exec_NativeProcess_NativeProcess_wait_0(self
);
805 /* method exec#NativeProcess#wait for (self: Object) */
806 void VIRTUAL_exec__NativeProcess__wait(val
* self
) {
807 void* var
/* : NativeProcess */;
808 var
= ((struct instance_exec__NativeProcess
*)self
)->value
; /* autounbox from Object to NativeProcess */;
809 exec__NativeProcess__wait(var
);
812 /* method exec#NativeProcess#in_fd for (self: NativeProcess): Int */
813 long exec__NativeProcess__in_fd(void* self
) {
814 long var
/* : Int */;
815 long var1
/* : Int */;
816 var1
= exec_NativeProcess_NativeProcess_in_fd_0(self
);
822 /* method exec#NativeProcess#in_fd for (self: Object): Int */
823 long VIRTUAL_exec__NativeProcess__in_fd(val
* self
) {
824 long var
/* : Int */;
825 long var1
/* : Int */;
826 void* var2
/* : NativeProcess */;
827 var2
= ((struct instance_exec__NativeProcess
*)self
)->value
; /* autounbox from Object to NativeProcess */;
828 var1
= exec__NativeProcess__in_fd(var2
);
833 /* method exec#NativeProcess#out_fd for (self: NativeProcess): Int */
834 long exec__NativeProcess__out_fd(void* self
) {
835 long var
/* : Int */;
836 long var1
/* : Int */;
837 var1
= exec_NativeProcess_NativeProcess_out_fd_0(self
);
843 /* method exec#NativeProcess#out_fd for (self: Object): Int */
844 long VIRTUAL_exec__NativeProcess__out_fd(val
* self
) {
845 long var
/* : Int */;
846 long var1
/* : Int */;
847 void* var2
/* : NativeProcess */;
848 var2
= ((struct instance_exec__NativeProcess
*)self
)->value
; /* autounbox from Object to NativeProcess */;
849 var1
= exec__NativeProcess__out_fd(var2
);
854 /* method exec#NativeProcess#err_fd for (self: NativeProcess): Int */
855 long exec__NativeProcess__err_fd(void* self
) {
856 long var
/* : Int */;
857 long var1
/* : Int */;
858 var1
= exec_NativeProcess_NativeProcess_err_fd_0(self
);
864 /* method exec#NativeProcess#err_fd for (self: Object): Int */
865 long VIRTUAL_exec__NativeProcess__err_fd(val
* self
) {
866 long var
/* : Int */;
867 long var1
/* : Int */;
868 void* var2
/* : NativeProcess */;
869 var2
= ((struct instance_exec__NativeProcess
*)self
)->value
; /* autounbox from Object to NativeProcess */;
870 var1
= exec__NativeProcess__err_fd(var2
);