1 /* This C file is generated by NIT to compile module exec. */
3 val_t
exec___Process___id(val_t self
) {
4 struct trace_t trace
= {NULL
, NULL
, 23, LOCATE_exec___Process___id
};
6 trace
.prev
= tracehead
; tracehead
= &trace
;
7 trace
.file
= LOCATE_exec
;
8 variable0
= ATTR_exec___Process____data( self
) /*Process::_data*/;
9 variable0
= ((exec___NativeProcess___id_t
)CALL(variable0
,COLOR_exec___NativeProcess___id
))(variable0
) /*NativeProcess::id*/;
11 return_label0
: while(false);
12 tracehead
= trace
.prev
;
15 val_t
exec___Process___is_finished(val_t self
) {
16 struct trace_t trace
= {NULL
, NULL
, 26, LOCATE_exec___Process___is_finished
};
18 trace
.prev
= tracehead
; tracehead
= &trace
;
19 trace
.file
= LOCATE_exec
;
20 variable0
= ATTR_exec___Process____data( self
) /*Process::_data*/;
21 variable0
= ((exec___NativeProcess___is_finished_t
)CALL(variable0
,COLOR_exec___NativeProcess___is_finished
))(variable0
) /*NativeProcess::is_finished*/;
23 return_label1
: while(false);
24 tracehead
= trace
.prev
;
27 void exec___Process___wait(val_t self
) {
28 struct trace_t trace
= {NULL
, NULL
, 29, LOCATE_exec___Process___wait
};
30 trace
.prev
= tracehead
; tracehead
= &trace
;
31 trace
.file
= LOCATE_exec
;
32 variable0
= ATTR_exec___Process____data( self
) /*Process::_data*/;
33 ((exec___NativeProcess___wait_t
)CALL(variable0
,COLOR_exec___NativeProcess___wait
))(variable0
) /*NativeProcess::wait*/;
34 variable0
= ((exec___Process___is_finished_t
)CALL( self
,COLOR_exec___Process___is_finished
))( self
) /*Process::is_finished*/;
35 if (!UNTAG_Bool(variable0
)) { fprintf(stderr
, "Assert%s failed", ""); fprintf(stderr
, " in %s (%s:%d)\n", LOCATE_exec___Process___wait
, LOCATE_exec
, 33); nit_exit(1);}
36 tracehead
= trace
.prev
;
39 val_t
exec___Process___status(val_t self
) {
40 struct trace_t trace
= {NULL
, NULL
, 36, LOCATE_exec___Process___status
};
42 trace
.prev
= tracehead
; tracehead
= &trace
;
43 trace
.file
= LOCATE_exec
;
44 variable0
= ((exec___Process___is_finished_t
)CALL( self
,COLOR_exec___Process___is_finished
))( self
) /*Process::is_finished*/;
45 if (!UNTAG_Bool(variable0
)) { fprintf(stderr
, "Assert%s failed", ""); fprintf(stderr
, " in %s (%s:%d)\n", LOCATE_exec___Process___status
, LOCATE_exec
, 39); nit_exit(1);}
46 variable0
= ATTR_exec___Process____data( self
) /*Process::_data*/;
47 variable0
= ((exec___NativeProcess___status_t
)CALL(variable0
,COLOR_exec___NativeProcess___status
))(variable0
) /*NativeProcess::status*/;
49 return_label3
: while(false);
50 tracehead
= trace
.prev
;
53 void exec___Process___kill(val_t self
, val_t param0
) {
54 struct trace_t trace
= {NULL
, NULL
, 43, LOCATE_exec___Process___kill
};
57 trace
.prev
= tracehead
; tracehead
= &trace
;
58 trace
.file
= LOCATE_exec
;
60 variable1
= ATTR_exec___Process____data( self
) /*Process::_data*/;
61 ((exec___NativeProcess___kill_t
)CALL(variable1
,COLOR_exec___NativeProcess___kill
))(variable1
, variable0
/*signal*/) /*NativeProcess::kill*/;
62 tracehead
= trace
.prev
;
65 void exec___Process___term(val_t self
) {
66 struct trace_t trace
= {NULL
, NULL
, 46, LOCATE_exec___Process___term
};
67 trace
.prev
= tracehead
; tracehead
= &trace
;
68 trace
.file
= LOCATE_exec
;
69 ((exec___Process___kill_t
)CALL( self
,COLOR_exec___Process___kill
))( self
, TAG_Int(15)) /*Process::kill*/;
70 tracehead
= trace
.prev
;
73 void exec___Process___init(val_t self
, val_t param0
, val_t param1
, int* init_table
) {
74 struct trace_t trace
= {NULL
, NULL
, 49, LOCATE_exec___Process___init
};
77 trace
.prev
= tracehead
; tracehead
= &trace
;
78 trace
.file
= LOCATE_exec
;
80 /* check if p<Array[String] with p:String */
81 if (( param1
!=NIT_NULL
) && !VAL_ISA( param1
, COLOR_Array
, ID_Array
)) { fprintf(stderr
, "Cast failled"); fprintf(stderr
, " in %s (%s:%d)\n", LOCATE_exec___Process___term
, LOCATE_exec
, 50); nit_exit(1); } /*cast Array[String]*/;
83 if (init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_Process
].i
]) return;
84 ((exec___Process___execute_t
)CALL( self
,COLOR_exec___Process___execute
))( self
, variable0
/*command*/, variable1
/*arguments*/, TAG_Int(0), init_table
/*YYY*/) /*Process::execute*/;
85 init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_Process
].i
] = 1;
86 tracehead
= trace
.prev
;
89 void exec___Process___init_(val_t self
, val_t param0
, int* init_table
) {
90 struct trace_t trace
= {NULL
, NULL
, 55, LOCATE_exec___Process___init_
};
92 trace
.prev
= tracehead
; tracehead
= &trace
;
93 trace
.file
= LOCATE_exec
;
95 if (init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_Process
].i
]) return;
96 ((exec___Process___execute_t
)CALL( self
,COLOR_exec___Process___execute
))( self
, variable0
/*command*/, NIT_NULL
/*null*/, TAG_Int(0), init_table
/*YYY*/) /*Process::execute*/;
97 init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_Process
].i
] = 1;
98 tracehead
= trace
.prev
;
101 void exec___Process___execute(val_t self
, val_t param0
, val_t param1
, val_t param2
, int* init_table
) {
102 struct trace_t trace
= {NULL
, NULL
, 61, LOCATE_exec___Process___execute
};
110 trace
.prev
= tracehead
; tracehead
= &trace
;
111 trace
.file
= LOCATE_exec
;
115 if (init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_Process
].i
]) return;
116 variable4
= NEW_String_string___String___init(); /*new String*/
117 variable3
= variable4
;
118 variable4
= TAG_Int(1);
119 ((string___String___append_t
)CALL( variable3
/*args*/,COLOR_abstract_collection___IndexedCollection___append
))( variable3
/*args*/, variable0
/*command*/) /*String::append*/;
120 variable5
= TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable1
/*arguments*/ == NIT_NULL
/*null*/) || (( variable1
/*arguments*/ != NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL( variable1
/*arguments*/,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN( variable1
/*arguments*/, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL( variable1
/*arguments*/,COLOR_kernel___Object_____eqeq
))( variable1
/*arguments*/, NIT_NULL
/*null*/) /*Object::==*/)))))));
121 if (UNTAG_Bool(variable5
)) { /*if*/
122 variable5
= ((array___AbstractArray___iterator_t
)CALL( variable1
/*arguments*/,COLOR_abstract_collection___Collection___iterator
))( variable1
/*arguments*/) /*AbstractArray::iterator*/;
123 while (true) { /*for*/
124 variable6
= ((array___ArrayIterator___is_ok_t
)CALL(variable5
,COLOR_abstract_collection___Iterator___is_ok
))(variable5
) /*ArrayIterator::is_ok*/;
125 if (!UNTAG_Bool(variable6
)) break; /*for*/
126 variable6
= ((array___ArrayIterator___item_t
)CALL(variable5
,COLOR_abstract_collection___Iterator___item
))(variable5
) /*ArrayIterator::item*/;
127 ((string___String___add_t
)CALL( variable3
/*args*/,COLOR_abstract_collection___SimpleCollection___add
))( variable3
/*args*/, TAG_Char('\0')) /*String::add*/;
128 ((string___String___append_t
)CALL( variable3
/*args*/,COLOR_abstract_collection___IndexedCollection___append
))( variable3
/*args*/, variable6
/*a*/) /*String::append*/;
129 continue_9
: while(0);
130 ((array___ArrayIterator___next_t
)CALL(variable5
,COLOR_abstract_collection___Iterator___next
))(variable5
) /*ArrayIterator::next*/;
133 variable5
= ((array___AbstractArray___length_t
)CALL( variable1
/*arguments*/,COLOR_abstract_collection___Collection___length
))( variable1
/*arguments*/) /*AbstractArray::length*/;
134 variable4
= TAG_Int(UNTAG_Int(variable4
)+UNTAG_Int(variable5
)) /*l*/;
136 variable5
= ((string___String___to_cstring_t
)CALL( variable0
/*command*/,COLOR_string___String___to_cstring
))( variable0
/*command*/) /*String::to_cstring*/;
137 variable6
= ((string___String___to_cstring_t
)CALL( variable3
/*args*/,COLOR_string___String___to_cstring
))( variable3
/*args*/) /*String::to_cstring*/;
138 variable5
= ((exec___Process___basic_exec_execute_t
)CALL( self
,COLOR_exec___Process___basic_exec_execute
))( self
, variable5
, variable6
, variable4
/*l*/, variable2
/*pipeflags*/) /*Process::basic_exec_execute*/;
139 ATTR_exec___Process____data( self
) /*Process::_data*/ = variable5
;
140 init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_Process
].i
] = 1;
141 tracehead
= trace
.prev
;
144 val_t
exec___Process___basic_exec_execute(val_t self
, val_t param0
, val_t param1
, val_t param2
, val_t param3
) {
145 struct trace_t trace
= {NULL
, NULL
, 78, LOCATE_exec___Process___basic_exec_execute
};
146 trace
.prev
= tracehead
; tracehead
= &trace
;
147 trace
.file
= LOCATE_exec
;
148 tracehead
= trace
.prev
;
149 return BOX_NativeProcess(exec_Process_Process_basic_exec_execute_4( self
, UNBOX_NativeString( param0
), UNBOX_NativeString( param1
), UNTAG_Int( param2
), UNTAG_Int( param3
)));
151 void exec___IProcess___close(val_t self
) {
152 struct trace_t trace
= {NULL
, NULL
, 87, LOCATE_exec___IProcess___close
};
154 trace
.prev
= tracehead
; tracehead
= &trace
;
155 trace
.file
= LOCATE_exec
;
156 variable0
= ATTR_exec___IProcess____in( self
) /*IProcess::_in*/;
157 ((stream___FDStream___close_t
)CALL(variable0
,COLOR_stream___IOS___close
))(variable0
) /*FDStream::close*/;
158 tracehead
= trace
.prev
;
161 val_t
exec___IProcess___read_char(val_t self
) {
162 struct trace_t trace
= {NULL
, NULL
, 89, LOCATE_exec___IProcess___read_char
};
164 trace
.prev
= tracehead
; tracehead
= &trace
;
165 trace
.file
= LOCATE_exec
;
166 variable0
= ATTR_exec___IProcess____in( self
) /*IProcess::_in*/;
167 variable0
= ((stream___FDIStream___read_char_t
)CALL(variable0
,COLOR_stream___IStream___read_char
))(variable0
) /*FDIStream::read_char*/;
169 return_label11
: while(false);
170 tracehead
= trace
.prev
;
173 val_t
exec___IProcess___eof(val_t self
) {
174 struct trace_t trace
= {NULL
, NULL
, 91, LOCATE_exec___IProcess___eof
};
176 trace
.prev
= tracehead
; tracehead
= &trace
;
177 trace
.file
= LOCATE_exec
;
178 variable0
= ATTR_exec___IProcess____in( self
) /*IProcess::_in*/;
179 variable0
= ((stream___FDIStream___eof_t
)CALL(variable0
,COLOR_stream___IStream___eof
))(variable0
) /*FDIStream::eof*/;
181 return_label12
: while(false);
182 tracehead
= trace
.prev
;
185 void exec___IProcess___init(val_t self
, val_t param0
, val_t param1
, int* init_table
) {
186 struct trace_t trace
= {NULL
, NULL
, 93, LOCATE_exec___IProcess___init
};
191 trace
.prev
= tracehead
; tracehead
= &trace
;
192 trace
.file
= LOCATE_exec
;
194 /* check if p<Array[String] with p:String */
195 if (( param1
!=NIT_NULL
) && !VAL_ISA( param1
, COLOR_Array
, ID_Array
)) { fprintf(stderr
, "Cast failled"); fprintf(stderr
, " in %s (%s:%d)\n", LOCATE_exec___IProcess___eof
, LOCATE_exec
, 93); nit_exit(1); } /*cast Array[String]*/;
197 if (init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_IProcess
].i
]) return;
198 ((exec___Process___execute_t
)CALL( self
,COLOR_exec___Process___execute
))( self
, variable0
/*command*/, variable1
/*arguments*/, TAG_Int(2), init_table
/*YYY*/) /*Process::execute*/;
199 variable2
= ATTR_exec___Process____data( self
) /*Process::_data*/;
200 variable2
= ((exec___NativeProcess___out_fd_t
)CALL(variable2
,COLOR_exec___NativeProcess___out_fd
))(variable2
) /*NativeProcess::out_fd*/;
201 variable3
= NEW_FDIStream_stream___FDIStream___init(variable2
); /*new FDIStream*/
202 variable2
= variable3
;
203 ATTR_exec___IProcess____in( self
) /*IProcess::_in*/ = variable2
;
204 init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_IProcess
].i
] = 1;
205 tracehead
= trace
.prev
;
208 void exec___IProcess___init_(val_t self
, val_t param0
, int* init_table
) {
209 struct trace_t trace
= {NULL
, NULL
, 99, LOCATE_exec___IProcess___init_
};
213 trace
.prev
= tracehead
; tracehead
= &trace
;
214 trace
.file
= LOCATE_exec
;
216 if (init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_IProcess
].i
]) return;
217 ((exec___Process___execute_t
)CALL( self
,COLOR_exec___Process___execute
))( self
, variable0
/*command*/, NIT_NULL
/*null*/, TAG_Int(2), init_table
/*YYY*/) /*Process::execute*/;
218 variable1
= ATTR_exec___Process____data( self
) /*Process::_data*/;
219 variable1
= ((exec___NativeProcess___out_fd_t
)CALL(variable1
,COLOR_exec___NativeProcess___out_fd
))(variable1
) /*NativeProcess::out_fd*/;
220 variable2
= NEW_FDIStream_stream___FDIStream___init(variable1
); /*new FDIStream*/
221 variable1
= variable2
;
222 ATTR_exec___IProcess____in( self
) /*IProcess::_in*/ = variable1
;
223 init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_IProcess
].i
] = 1;
224 tracehead
= trace
.prev
;
227 void exec___OProcess___close(val_t self
) {
228 struct trace_t trace
= {NULL
, NULL
, 112, LOCATE_exec___OProcess___close
};
230 trace
.prev
= tracehead
; tracehead
= &trace
;
231 trace
.file
= LOCATE_exec
;
232 variable0
= ATTR_exec___OProcess____out( self
) /*OProcess::_out*/;
233 ((stream___IOS___close_t
)CALL(variable0
,COLOR_stream___IOS___close
))(variable0
) /*IOS::close*/;
234 tracehead
= trace
.prev
;
237 val_t
exec___OProcess___is_writable(val_t self
) {
238 struct trace_t trace
= {NULL
, NULL
, 114, LOCATE_exec___OProcess___is_writable
};
240 trace
.prev
= tracehead
; tracehead
= &trace
;
241 trace
.file
= LOCATE_exec
;
242 variable0
= ATTR_exec___OProcess____out( self
) /*OProcess::_out*/;
243 variable0
= ((stream___OStream___is_writable_t
)CALL(variable0
,COLOR_stream___OStream___is_writable
))(variable0
) /*OStream::is_writable*/;
245 return_label16
: while(false);
246 tracehead
= trace
.prev
;
249 void exec___OProcess___write(val_t self
, val_t param0
) {
250 struct trace_t trace
= {NULL
, NULL
, 116, LOCATE_exec___OProcess___write
};
253 trace
.prev
= tracehead
; tracehead
= &trace
;
254 trace
.file
= LOCATE_exec
;
256 variable1
= ATTR_exec___OProcess____out( self
) /*OProcess::_out*/;
257 ((stream___OStream___write_t
)CALL(variable1
,COLOR_stream___OStream___write
))(variable1
, variable0
/*s*/) /*OStream::write*/;
258 tracehead
= trace
.prev
;
261 void exec___OProcess___init(val_t self
, val_t param0
, val_t param1
, int* init_table
) {
262 struct trace_t trace
= {NULL
, NULL
, 118, LOCATE_exec___OProcess___init
};
267 trace
.prev
= tracehead
; tracehead
= &trace
;
268 trace
.file
= LOCATE_exec
;
270 /* check if p<Array[String] with p:String */
271 if (( param1
!=NIT_NULL
) && !VAL_ISA( param1
, COLOR_Array
, ID_Array
)) { fprintf(stderr
, "Cast failled"); fprintf(stderr
, " in %s (%s:%d)\n", LOCATE_exec___OProcess___write
, LOCATE_exec
, 118); nit_exit(1); } /*cast Array[String]*/;
273 if (init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_OProcess
].i
]) return;
274 ((exec___Process___execute_t
)CALL( self
,COLOR_exec___Process___execute
))( self
, variable0
/*command*/, variable1
/*arguments*/, TAG_Int(1), init_table
/*YYY*/) /*Process::execute*/;
275 variable2
= ATTR_exec___Process____data( self
) /*Process::_data*/;
276 variable2
= ((exec___NativeProcess___in_fd_t
)CALL(variable2
,COLOR_exec___NativeProcess___in_fd
))(variable2
) /*NativeProcess::in_fd*/;
277 variable3
= NEW_FDOStream_stream___FDOStream___init(variable2
); /*new FDOStream*/
278 variable2
= variable3
;
279 ATTR_exec___OProcess____out( self
) /*OProcess::_out*/ = variable2
;
280 init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_OProcess
].i
] = 1;
281 tracehead
= trace
.prev
;
284 void exec___OProcess___init_(val_t self
, val_t param0
, int* init_table
) {
285 struct trace_t trace
= {NULL
, NULL
, 124, LOCATE_exec___OProcess___init_
};
289 trace
.prev
= tracehead
; tracehead
= &trace
;
290 trace
.file
= LOCATE_exec
;
292 if (init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_OProcess
].i
]) return;
293 ((exec___Process___execute_t
)CALL( self
,COLOR_exec___Process___execute
))( self
, variable0
/*command*/, NIT_NULL
/*null*/, TAG_Int(1), init_table
/*YYY*/) /*Process::execute*/;
294 variable1
= ATTR_exec___Process____data( self
) /*Process::_data*/;
295 variable1
= ((exec___NativeProcess___in_fd_t
)CALL(variable1
,COLOR_exec___NativeProcess___in_fd
))(variable1
) /*NativeProcess::in_fd*/;
296 variable2
= NEW_FDOStream_stream___FDOStream___init(variable1
); /*new FDOStream*/
297 variable1
= variable2
;
298 ATTR_exec___OProcess____out( self
) /*OProcess::_out*/ = variable1
;
299 init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_OProcess
].i
] = 1;
300 tracehead
= trace
.prev
;
303 void exec___IOProcess___close(val_t self
) {
304 struct trace_t trace
= {NULL
, NULL
, 137, LOCATE_exec___IOProcess___close
};
306 trace
.prev
= tracehead
; tracehead
= &trace
;
307 trace
.file
= LOCATE_exec
;
308 variable0
= ATTR_exec___IProcess____in( self
) /*IProcess::_in*/;
309 ((stream___FDStream___close_t
)CALL(variable0
,COLOR_stream___IOS___close
))(variable0
) /*FDStream::close*/;
310 variable0
= ATTR_exec___OProcess____out( self
) /*OProcess::_out*/;
311 ((stream___IOS___close_t
)CALL(variable0
,COLOR_stream___IOS___close
))(variable0
) /*IOS::close*/;
312 tracehead
= trace
.prev
;
315 void exec___IOProcess___init(val_t self
, val_t param0
, val_t param1
, int* init_table
) {
316 struct trace_t trace
= {NULL
, NULL
, 143, LOCATE_exec___IOProcess___init
};
321 trace
.prev
= tracehead
; tracehead
= &trace
;
322 trace
.file
= LOCATE_exec
;
324 /* check if p<Array[String] with p:String */
325 if (( param1
!=NIT_NULL
) && !VAL_ISA( param1
, COLOR_Array
, ID_Array
)) { fprintf(stderr
, "Cast failled"); fprintf(stderr
, " in %s (%s:%d)\n", LOCATE_exec___IOProcess___close
, LOCATE_exec
, 143); nit_exit(1); } /*cast Array[String]*/;
327 if (init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_IOProcess
].i
]) return;
328 ((exec___Process___execute_t
)CALL( self
,COLOR_exec___Process___execute
))( self
, variable0
/*command*/, variable1
/*arguments*/, TAG_Int(3), init_table
/*YYY*/) /*Process::execute*/;
329 ((exec___IProcess___init_t
)CALL( self
,COLOR_exec___IProcess___init
))( self
, param0
, param1
, init_table
/*YYY*/) /*IProcess::init*/;
330 ((exec___OProcess___init_t
)CALL( self
,COLOR_exec___OProcess___init
))( self
, param0
, param1
, init_table
/*YYY*/) /*OProcess::init*/;
331 variable2
= ATTR_exec___Process____data( self
) /*Process::_data*/;
332 variable2
= ((exec___NativeProcess___out_fd_t
)CALL(variable2
,COLOR_exec___NativeProcess___out_fd
))(variable2
) /*NativeProcess::out_fd*/;
333 variable3
= NEW_FDIStream_stream___FDIStream___init(variable2
); /*new FDIStream*/
334 variable2
= variable3
;
335 ATTR_exec___IProcess____in( self
) /*IProcess::_in*/ = variable2
;
336 variable2
= ATTR_exec___Process____data( self
) /*Process::_data*/;
337 variable2
= ((exec___NativeProcess___in_fd_t
)CALL(variable2
,COLOR_exec___NativeProcess___in_fd
))(variable2
) /*NativeProcess::in_fd*/;
338 variable3
= NEW_FDOStream_stream___FDOStream___init(variable2
); /*new FDOStream*/
339 variable2
= variable3
;
340 ATTR_exec___OProcess____out( self
) /*OProcess::_out*/ = variable2
;
341 init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_IOProcess
].i
] = 1;
342 tracehead
= trace
.prev
;
345 void exec___IOProcess___init_(val_t self
, val_t param0
, int* init_table
) {
346 struct trace_t trace
= {NULL
, NULL
, 150, LOCATE_exec___IOProcess___init_
};
350 trace
.prev
= tracehead
; tracehead
= &trace
;
351 trace
.file
= LOCATE_exec
;
353 if (init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_IOProcess
].i
]) return;
354 ((exec___Process___execute_t
)CALL( self
,COLOR_exec___Process___execute
))( self
, variable0
/*command*/, NIT_NULL
/*null*/, TAG_Int(3), init_table
/*YYY*/) /*Process::execute*/;
355 ((exec___IProcess___init__t
)CALL( self
,COLOR_exec___IProcess___init_
))( self
, param0
, init_table
/*YYY*/) /*IProcess::init_*/;
356 ((exec___OProcess___init__t
)CALL( self
,COLOR_exec___OProcess___init_
))( self
, param0
, init_table
/*YYY*/) /*OProcess::init_*/;
357 variable1
= ATTR_exec___Process____data( self
) /*Process::_data*/;
358 variable1
= ((exec___NativeProcess___out_fd_t
)CALL(variable1
,COLOR_exec___NativeProcess___out_fd
))(variable1
) /*NativeProcess::out_fd*/;
359 variable2
= NEW_FDIStream_stream___FDIStream___init(variable1
); /*new FDIStream*/
360 variable1
= variable2
;
361 ATTR_exec___IProcess____in( self
) /*IProcess::_in*/ = variable1
;
362 variable1
= ATTR_exec___Process____data( self
) /*Process::_data*/;
363 variable1
= ((exec___NativeProcess___in_fd_t
)CALL(variable1
,COLOR_exec___NativeProcess___in_fd
))(variable1
) /*NativeProcess::in_fd*/;
364 variable2
= NEW_FDOStream_stream___FDOStream___init(variable1
); /*new FDOStream*/
365 variable1
= variable2
;
366 ATTR_exec___OProcess____out( self
) /*OProcess::_out*/ = variable1
;
367 init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_IOProcess
].i
] = 1;
368 tracehead
= trace
.prev
;
371 val_t
exec___Sys___system(val_t self
, val_t param0
) {
372 struct trace_t trace
= {NULL
, NULL
, 159, LOCATE_exec___Sys___system
};
375 trace
.prev
= tracehead
; tracehead
= &trace
;
376 trace
.file
= LOCATE_exec
;
378 variable1
= ((string___String___to_cstring_t
)CALL( variable0
/*command*/,COLOR_string___String___to_cstring
))( variable0
/*command*/) /*String::to_cstring*/;
379 variable1
= ((exec___NativeString___system_t
)CALL(variable1
,COLOR_exec___NativeString___system
))(variable1
) /*NativeString::system*/;
381 return_label23
: while(false);
382 tracehead
= trace
.prev
;
385 val_t
exec___NativeString___system(val_t self
) {
386 struct trace_t trace
= {NULL
, NULL
, 167, LOCATE_exec___NativeString___system
};
387 trace
.prev
= tracehead
; tracehead
= &trace
;
388 trace
.file
= LOCATE_exec
;
389 tracehead
= trace
.prev
;
390 return TAG_Int(string_NativeString_NativeString_system_0(UNBOX_NativeString( self
)));
392 val_t
exec___NativeProcess___id(val_t self
) {
393 struct trace_t trace
= {NULL
, NULL
, 172, LOCATE_exec___NativeProcess___id
};
394 trace
.prev
= tracehead
; tracehead
= &trace
;
395 trace
.file
= LOCATE_exec
;
396 tracehead
= trace
.prev
;
397 return TAG_Int(exec_NativeProcess_NativeProcess_id_0(UNBOX_NativeProcess( self
)));
399 val_t
exec___NativeProcess___is_finished(val_t self
) {
400 struct trace_t trace
= {NULL
, NULL
, 173, LOCATE_exec___NativeProcess___is_finished
};
401 trace
.prev
= tracehead
; tracehead
= &trace
;
402 trace
.file
= LOCATE_exec
;
403 tracehead
= trace
.prev
;
404 return TAG_Bool(exec_NativeProcess_NativeProcess_is_finished_0(UNBOX_NativeProcess( self
)));
406 val_t
exec___NativeProcess___status(val_t self
) {
407 struct trace_t trace
= {NULL
, NULL
, 174, LOCATE_exec___NativeProcess___status
};
408 trace
.prev
= tracehead
; tracehead
= &trace
;
409 trace
.file
= LOCATE_exec
;
410 tracehead
= trace
.prev
;
411 return TAG_Int(exec_NativeProcess_NativeProcess_status_0(UNBOX_NativeProcess( self
)));
413 void exec___NativeProcess___wait(val_t self
) {
414 struct trace_t trace
= {NULL
, NULL
, 175, LOCATE_exec___NativeProcess___wait
};
415 trace
.prev
= tracehead
; tracehead
= &trace
;
416 trace
.file
= LOCATE_exec
;
417 exec_NativeProcess_NativeProcess_wait_0(UNBOX_NativeProcess( self
));
418 tracehead
= trace
.prev
;
421 void exec___NativeProcess___kill(val_t self
, val_t param0
) {
422 struct trace_t trace
= {NULL
, NULL
, 176, LOCATE_exec___NativeProcess___kill
};
423 trace
.prev
= tracehead
; tracehead
= &trace
;
424 trace
.file
= LOCATE_exec
;
425 exec_NativeProcess_NativeProcess_kill_1(UNBOX_NativeProcess( self
), UNTAG_Int( param0
));
426 tracehead
= trace
.prev
;
429 val_t
exec___NativeProcess___in_fd(val_t self
) {
430 struct trace_t trace
= {NULL
, NULL
, 178, LOCATE_exec___NativeProcess___in_fd
};
431 trace
.prev
= tracehead
; tracehead
= &trace
;
432 trace
.file
= LOCATE_exec
;
433 tracehead
= trace
.prev
;
434 return TAG_Int(exec_NativeProcess_NativeProcess_in_fd_0(UNBOX_NativeProcess( self
)));
436 val_t
exec___NativeProcess___out_fd(val_t self
) {
437 struct trace_t trace
= {NULL
, NULL
, 179, LOCATE_exec___NativeProcess___out_fd
};
438 trace
.prev
= tracehead
; tracehead
= &trace
;
439 trace
.file
= LOCATE_exec
;
440 tracehead
= trace
.prev
;
441 return TAG_Int(exec_NativeProcess_NativeProcess_out_fd_0(UNBOX_NativeProcess( self
)));
443 val_t
exec___NativeProcess___err_fd(val_t self
) {
444 struct trace_t trace
= {NULL
, NULL
, 180, LOCATE_exec___NativeProcess___err_fd
};
445 trace
.prev
= tracehead
; tracehead
= &trace
;
446 trace
.file
= LOCATE_exec
;
447 tracehead
= trace
.prev
;
448 return TAG_Int(exec_NativeProcess_NativeProcess_err_fd_0(UNBOX_NativeProcess( self
)));