X-Git-Url: http://nitlanguage.org diff --git a/c_src/exec._sep.h b/c_src/exec._sep.h index 0014e1e..59182eb 100644 --- a/c_src/exec._sep.h +++ b/c_src/exec._sep.h @@ -14,164 +14,151 @@ extern const classtable_elt_t VFT_OProcess[]; extern const classtable_elt_t VFT_IOProcess[]; extern const classtable_elt_t VFT_NativeProcess[]; -struct TBOX_NativeProcess { const classtable_elt_t * vft; void * val;}; +struct TBOX_NativeProcess { const classtable_elt_t * vft; bigint object_id; void * val;}; val_t BOX_NativeProcess(void * val); #define UNBOX_NativeProcess(x) (((struct TBOX_NativeProcess *)(VAL2OBJ(x)))->val) extern const char *LOCATE_exec; extern const int SFT_exec[]; -#define ID_Process SFT_exec[0] -#define COLOR_Process SFT_exec[1] -#define COLOR_exec___Process____data SFT_exec[2] -#define INIT_TABLE_POS_Process SFT_exec[3] -#define COLOR_exec___Process___id SFT_exec[4] -#define COLOR_exec___Process___is_finished SFT_exec[5] -#define COLOR_exec___Process___wait SFT_exec[6] -#define COLOR_exec___Process___status SFT_exec[7] -#define COLOR_exec___Process___kill SFT_exec[8] -#define COLOR_exec___Process___term SFT_exec[9] -#define COLOR_exec___Process___init SFT_exec[10] -#define COLOR_exec___Process___init_ SFT_exec[11] -#define COLOR_exec___Process___execute SFT_exec[12] -#define COLOR_exec___Process___basic_exec_execute SFT_exec[13] -#define ID_IProcess SFT_exec[14] -#define COLOR_IProcess SFT_exec[15] -#define COLOR_exec___IProcess____in SFT_exec[16] -#define INIT_TABLE_POS_IProcess SFT_exec[17] -#define COLOR_exec___IProcess___init SFT_exec[18] -#define COLOR_exec___IProcess___init_ SFT_exec[19] -#define ID_OProcess SFT_exec[20] -#define COLOR_OProcess SFT_exec[21] -#define COLOR_exec___OProcess____out SFT_exec[22] -#define INIT_TABLE_POS_OProcess SFT_exec[23] -#define COLOR_exec___OProcess___init SFT_exec[24] -#define COLOR_exec___OProcess___init_ SFT_exec[25] -#define ID_IOProcess SFT_exec[26] -#define COLOR_IOProcess SFT_exec[27] -#define INIT_TABLE_POS_IOProcess SFT_exec[28] -#define COLOR_exec___IOProcess___init SFT_exec[29] -#define COLOR_exec___IOProcess___init_ SFT_exec[30] -#define COLOR_exec___Sys___system SFT_exec[31] -#define COLOR_exec___NativeString___system SFT_exec[32] -#define ID_NativeProcess SFT_exec[33] -#define COLOR_NativeProcess SFT_exec[34] -#define INIT_TABLE_POS_NativeProcess SFT_exec[35] -#define COLOR_exec___NativeProcess___id SFT_exec[36] -#define COLOR_exec___NativeProcess___is_finished SFT_exec[37] -#define COLOR_exec___NativeProcess___status SFT_exec[38] -#define COLOR_exec___NativeProcess___wait SFT_exec[39] -#define COLOR_exec___NativeProcess___kill SFT_exec[40] -#define COLOR_exec___NativeProcess___in_fd SFT_exec[41] -#define COLOR_exec___NativeProcess___out_fd SFT_exec[42] -#define COLOR_exec___NativeProcess___err_fd SFT_exec[43] -typedef val_t (* exec___Process___id_t)(val_t self); -val_t exec___Process___id(val_t self); -#define LOCATE_exec___Process___id "exec::Process::id" -typedef val_t (* exec___Process___is_finished_t)(val_t self); -val_t exec___Process___is_finished(val_t self); -#define LOCATE_exec___Process___is_finished "exec::Process::is_finished" -typedef void (* exec___Process___wait_t)(val_t self); -void exec___Process___wait(val_t self); -#define LOCATE_exec___Process___wait "exec::Process::wait" -typedef val_t (* exec___Process___status_t)(val_t self); -val_t exec___Process___status(val_t self); -#define LOCATE_exec___Process___status "exec::Process::status" -typedef void (* exec___Process___kill_t)(val_t self, val_t param0); -void exec___Process___kill(val_t self, val_t param0); -#define LOCATE_exec___Process___kill "exec::Process::kill" -typedef void (* exec___Process___term_t)(val_t self); -void exec___Process___term(val_t self); -#define LOCATE_exec___Process___term "exec::Process::term" -typedef void (* exec___Process___init_t)(val_t self, val_t param0, val_t param1, int* init_table); -void exec___Process___init(val_t self, val_t param0, val_t param1, int* init_table); -val_t NEW_exec___Process___init(val_t param0, val_t param1); -#define LOCATE_exec___Process___init "exec::Process::init" -typedef void (* exec___Process___init__t)(val_t self, val_t param0, int* init_table); -void exec___Process___init_(val_t self, val_t param0, int* init_table); -val_t NEW_exec___Process___init_(val_t param0); -#define LOCATE_exec___Process___init_ "exec::Process::init_" -typedef void (* exec___Process___execute_t)(val_t self, val_t param0, val_t param1, val_t param2, int* init_table); -void exec___Process___execute(val_t self, val_t param0, val_t param1, val_t param2, int* init_table); -val_t NEW_exec___Process___execute(val_t param0, val_t param1, val_t param2); -#define LOCATE_exec___Process___execute "exec::Process::execute" -#define ATTR_exec___Process____data(recv) ATTR(recv, COLOR_exec___Process____data) -typedef val_t (* exec___Process___basic_exec_execute_t)(val_t self, val_t param0, val_t param1, val_t param2, val_t param3); -val_t exec___Process___basic_exec_execute(val_t self, val_t param0, val_t param1, val_t param2, val_t param3); -#define LOCATE_exec___Process___basic_exec_execute "exec::Process::basic_exec_execute" -#define ATTR_exec___IProcess____in(recv) ATTR(recv, COLOR_exec___IProcess____in) -typedef void (* exec___IProcess___close_t)(val_t self); -void exec___IProcess___close(val_t self); -#define LOCATE_exec___IProcess___close "exec::IProcess::(stream::IOS::close)" -typedef val_t (* exec___IProcess___read_char_t)(val_t self); -val_t exec___IProcess___read_char(val_t self); -#define LOCATE_exec___IProcess___read_char "exec::IProcess::(stream::IStream::read_char)" -typedef val_t (* exec___IProcess___eof_t)(val_t self); -val_t exec___IProcess___eof(val_t self); -#define LOCATE_exec___IProcess___eof "exec::IProcess::(stream::IStream::eof)" -typedef void (* exec___IProcess___init_t)(val_t self, val_t param0, val_t param1, int* init_table); -void exec___IProcess___init(val_t self, val_t param0, val_t param1, int* init_table); -val_t NEW_exec___IProcess___init(val_t param0, val_t param1); -#define LOCATE_exec___IProcess___init "exec::IProcess::init" -typedef void (* exec___IProcess___init__t)(val_t self, val_t param0, int* init_table); -void exec___IProcess___init_(val_t self, val_t param0, int* init_table); -val_t NEW_exec___IProcess___init_(val_t param0); -#define LOCATE_exec___IProcess___init_ "exec::IProcess::init_" -#define ATTR_exec___OProcess____out(recv) ATTR(recv, COLOR_exec___OProcess____out) -typedef void (* exec___OProcess___close_t)(val_t self); -void exec___OProcess___close(val_t self); -#define LOCATE_exec___OProcess___close "exec::OProcess::(stream::IOS::close)" -typedef val_t (* exec___OProcess___is_writable_t)(val_t self); -val_t exec___OProcess___is_writable(val_t self); -#define LOCATE_exec___OProcess___is_writable "exec::OProcess::(stream::OStream::is_writable)" -typedef void (* exec___OProcess___write_t)(val_t self, val_t param0); -void exec___OProcess___write(val_t self, val_t param0); -#define LOCATE_exec___OProcess___write "exec::OProcess::(stream::OStream::write)" -typedef void (* exec___OProcess___init_t)(val_t self, val_t param0, val_t param1, int* init_table); -void exec___OProcess___init(val_t self, val_t param0, val_t param1, int* init_table); -val_t NEW_exec___OProcess___init(val_t param0, val_t param1); -#define LOCATE_exec___OProcess___init "exec::OProcess::init" -typedef void (* exec___OProcess___init__t)(val_t self, val_t param0, int* init_table); -void exec___OProcess___init_(val_t self, val_t param0, int* init_table); -val_t NEW_exec___OProcess___init_(val_t param0); -#define LOCATE_exec___OProcess___init_ "exec::OProcess::init_" -typedef void (* exec___IOProcess___close_t)(val_t self); -void exec___IOProcess___close(val_t self); -#define LOCATE_exec___IOProcess___close "exec::IOProcess::(stream::IOS::close)" -typedef void (* exec___IOProcess___init_t)(val_t self, val_t param0, val_t param1, int* init_table); -void exec___IOProcess___init(val_t self, val_t param0, val_t param1, int* init_table); -val_t NEW_exec___IOProcess___init(val_t param0, val_t param1); -#define LOCATE_exec___IOProcess___init "exec::IOProcess::init" -typedef void (* exec___IOProcess___init__t)(val_t self, val_t param0, int* init_table); -void exec___IOProcess___init_(val_t self, val_t param0, int* init_table); -val_t NEW_exec___IOProcess___init_(val_t param0); -#define LOCATE_exec___IOProcess___init_ "exec::IOProcess::init_" -typedef val_t (* exec___Sys___system_t)(val_t self, val_t param0); -val_t exec___Sys___system(val_t self, val_t param0); -#define LOCATE_exec___Sys___system "exec::Sys::system" -typedef val_t (* exec___NativeString___system_t)(val_t self); -val_t exec___NativeString___system(val_t self); -#define LOCATE_exec___NativeString___system "exec::NativeString::system" -typedef val_t (* exec___NativeProcess___id_t)(val_t self); -val_t exec___NativeProcess___id(val_t self); -#define LOCATE_exec___NativeProcess___id "exec::NativeProcess::id" -typedef val_t (* exec___NativeProcess___is_finished_t)(val_t self); -val_t exec___NativeProcess___is_finished(val_t self); -#define LOCATE_exec___NativeProcess___is_finished "exec::NativeProcess::is_finished" -typedef val_t (* exec___NativeProcess___status_t)(val_t self); -val_t exec___NativeProcess___status(val_t self); -#define LOCATE_exec___NativeProcess___status "exec::NativeProcess::status" -typedef void (* exec___NativeProcess___wait_t)(val_t self); -void exec___NativeProcess___wait(val_t self); -#define LOCATE_exec___NativeProcess___wait "exec::NativeProcess::wait" -typedef void (* exec___NativeProcess___kill_t)(val_t self, val_t param0); -void exec___NativeProcess___kill(val_t self, val_t param0); -#define LOCATE_exec___NativeProcess___kill "exec::NativeProcess::kill" -typedef val_t (* exec___NativeProcess___in_fd_t)(val_t self); -val_t exec___NativeProcess___in_fd(val_t self); -#define LOCATE_exec___NativeProcess___in_fd "exec::NativeProcess::in_fd" -typedef val_t (* exec___NativeProcess___out_fd_t)(val_t self); -val_t exec___NativeProcess___out_fd(val_t self); -#define LOCATE_exec___NativeProcess___out_fd "exec::NativeProcess::out_fd" -typedef val_t (* exec___NativeProcess___err_fd_t)(val_t self); -val_t exec___NativeProcess___err_fd(val_t self); -#define LOCATE_exec___NativeProcess___err_fd "exec::NativeProcess::err_fd" +#define ID_Process (SFT_exec[0]) +#define COLOR_Process (SFT_exec[1]) +#define ATTR_exec___Process____data(recv) ATTR(recv, (SFT_exec[2] + 0)) +#define INIT_TABLE_POS_Process (SFT_exec[3] + 0) +#define CALL_exec___Process___id(recv) ((exec___Process___id_t)CALL((recv), (SFT_exec[3] + 1))) +#define CALL_exec___Process___is_finished(recv) ((exec___Process___is_finished_t)CALL((recv), (SFT_exec[3] + 2))) +#define CALL_exec___Process___wait(recv) ((exec___Process___wait_t)CALL((recv), (SFT_exec[3] + 3))) +#define CALL_exec___Process___status(recv) ((exec___Process___status_t)CALL((recv), (SFT_exec[3] + 4))) +#define CALL_exec___Process___init(recv) ((exec___Process___init_t)CALL((recv), (SFT_exec[3] + 5))) +#define CALL_exec___Process___init_(recv) ((exec___Process___init__t)CALL((recv), (SFT_exec[3] + 6))) +#define CALL_exec___Process___execute(recv) ((exec___Process___execute_t)CALL((recv), (SFT_exec[3] + 7))) +#define CALL_exec___Process___basic_exec_execute(recv) ((exec___Process___basic_exec_execute_t)CALL((recv), (SFT_exec[3] + 8))) +#define ID_IProcess (SFT_exec[4]) +#define COLOR_IProcess (SFT_exec[5]) +#define ATTR_exec___IProcess____in(recv) ATTR(recv, (SFT_exec[6] + 0)) +#define INIT_TABLE_POS_IProcess (SFT_exec[7] + 0) +#define CALL_exec___IProcess___init(recv) ((exec___IProcess___init_t)CALL((recv), (SFT_exec[7] + 1))) +#define CALL_exec___IProcess___init_(recv) ((exec___IProcess___init__t)CALL((recv), (SFT_exec[7] + 2))) +#define ID_OProcess (SFT_exec[8]) +#define COLOR_OProcess (SFT_exec[9]) +#define ATTR_exec___OProcess____out(recv) ATTR(recv, (SFT_exec[10] + 0)) +#define INIT_TABLE_POS_OProcess (SFT_exec[11] + 0) +#define CALL_exec___OProcess___init(recv) ((exec___OProcess___init_t)CALL((recv), (SFT_exec[11] + 1))) +#define CALL_exec___OProcess___init_(recv) ((exec___OProcess___init__t)CALL((recv), (SFT_exec[11] + 2))) +#define ID_IOProcess (SFT_exec[12]) +#define COLOR_IOProcess (SFT_exec[13]) +#define INIT_TABLE_POS_IOProcess (SFT_exec[14] + 0) +#define CALL_exec___IOProcess___init(recv) ((exec___IOProcess___init_t)CALL((recv), (SFT_exec[14] + 1))) +#define CALL_exec___IOProcess___init_(recv) ((exec___IOProcess___init__t)CALL((recv), (SFT_exec[14] + 2))) +#define CALL_exec___Sys___system(recv) ((exec___Sys___system_t)CALL((recv), (SFT_exec[15] + 0))) +#define CALL_exec___NativeString___system(recv) ((exec___NativeString___system_t)CALL((recv), (SFT_exec[16] + 0))) +#define ID_NativeProcess (SFT_exec[17]) +#define COLOR_NativeProcess (SFT_exec[18]) +#define INIT_TABLE_POS_NativeProcess (SFT_exec[19] + 0) +#define CALL_exec___NativeProcess___id(recv) ((exec___NativeProcess___id_t)CALL((recv), (SFT_exec[19] + 1))) +#define CALL_exec___NativeProcess___is_finished(recv) ((exec___NativeProcess___is_finished_t)CALL((recv), (SFT_exec[19] + 2))) +#define CALL_exec___NativeProcess___status(recv) ((exec___NativeProcess___status_t)CALL((recv), (SFT_exec[19] + 3))) +#define CALL_exec___NativeProcess___wait(recv) ((exec___NativeProcess___wait_t)CALL((recv), (SFT_exec[19] + 4))) +#define CALL_exec___NativeProcess___in_fd(recv) ((exec___NativeProcess___in_fd_t)CALL((recv), (SFT_exec[19] + 5))) +#define CALL_exec___NativeProcess___out_fd(recv) ((exec___NativeProcess___out_fd_t)CALL((recv), (SFT_exec[19] + 6))) +#define CALL_exec___NativeProcess___err_fd(recv) ((exec___NativeProcess___err_fd_t)CALL((recv), (SFT_exec[19] + 7))) +static const char * const LOCATE_exec___Process___id = "exec::Process::id"; +val_t exec___Process___id(val_t p0); +typedef val_t (*exec___Process___id_t)(val_t p0); +static const char * const LOCATE_exec___Process___is_finished = "exec::Process::is_finished"; +val_t exec___Process___is_finished(val_t p0); +typedef val_t (*exec___Process___is_finished_t)(val_t p0); +static const char * const LOCATE_exec___Process___wait = "exec::Process::wait"; +void exec___Process___wait(val_t p0); +typedef void (*exec___Process___wait_t)(val_t p0); +static const char * const LOCATE_exec___Process___status = "exec::Process::status"; +val_t exec___Process___status(val_t p0); +typedef val_t (*exec___Process___status_t)(val_t p0); +static const char * const LOCATE_exec___Process___init = "exec::Process::init"; +void exec___Process___init(val_t p0, val_t p1, val_t p2, int* init_table); +typedef void (*exec___Process___init_t)(val_t p0, val_t p1, val_t p2, int* init_table); +val_t NEW_Process_exec___Process___init(val_t p0, val_t p1); +static const char * const LOCATE_exec___Process___init_ = "exec::Process::init_"; +void exec___Process___init_(val_t p0, val_t p1, int* init_table); +typedef void (*exec___Process___init__t)(val_t p0, val_t p1, int* init_table); +val_t NEW_Process_exec___Process___init_(val_t p0); +static const char * const LOCATE_exec___Process___execute = "exec::Process::execute"; +void exec___Process___execute(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table); +typedef void (*exec___Process___execute_t)(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table); +val_t NEW_Process_exec___Process___execute(val_t p0, val_t p1, val_t p2); +static const char * const LOCATE_exec___Process___basic_exec_execute = "exec::Process::basic_exec_execute"; +val_t exec___Process___basic_exec_execute(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4); +typedef val_t (*exec___Process___basic_exec_execute_t)(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4); +static const char * const LOCATE_exec___IProcess___close = "exec::IProcess::(stream::IOS::close)"; +void exec___IProcess___close(val_t p0); +typedef void (*exec___IProcess___close_t)(val_t p0); +static const char * const LOCATE_exec___IProcess___read_char = "exec::IProcess::(stream::IStream::read_char)"; +val_t exec___IProcess___read_char(val_t p0); +typedef val_t (*exec___IProcess___read_char_t)(val_t p0); +static const char * const LOCATE_exec___IProcess___eof = "exec::IProcess::(stream::IStream::eof)"; +val_t exec___IProcess___eof(val_t p0); +typedef val_t (*exec___IProcess___eof_t)(val_t p0); +static const char * const LOCATE_exec___IProcess___init = "exec::IProcess::init"; +void exec___IProcess___init(val_t p0, val_t p1, val_t p2, int* init_table); +typedef void (*exec___IProcess___init_t)(val_t p0, val_t p1, val_t p2, int* init_table); +val_t NEW_IProcess_exec___IProcess___init(val_t p0, val_t p1); +static const char * const LOCATE_exec___IProcess___init_ = "exec::IProcess::init_"; +void exec___IProcess___init_(val_t p0, val_t p1, int* init_table); +typedef void (*exec___IProcess___init__t)(val_t p0, val_t p1, int* init_table); +val_t NEW_IProcess_exec___IProcess___init_(val_t p0); +static const char * const LOCATE_exec___OProcess___close = "exec::OProcess::(stream::IOS::close)"; +void exec___OProcess___close(val_t p0); +typedef void (*exec___OProcess___close_t)(val_t p0); +static const char * const LOCATE_exec___OProcess___is_writable = "exec::OProcess::(stream::OStream::is_writable)"; +val_t exec___OProcess___is_writable(val_t p0); +typedef val_t (*exec___OProcess___is_writable_t)(val_t p0); +static const char * const LOCATE_exec___OProcess___write = "exec::OProcess::(stream::OStream::write)"; +void exec___OProcess___write(val_t p0, val_t p1); +typedef void (*exec___OProcess___write_t)(val_t p0, val_t p1); +static const char * const LOCATE_exec___OProcess___init = "exec::OProcess::init"; +void exec___OProcess___init(val_t p0, val_t p1, val_t p2, int* init_table); +typedef void (*exec___OProcess___init_t)(val_t p0, val_t p1, val_t p2, int* init_table); +val_t NEW_OProcess_exec___OProcess___init(val_t p0, val_t p1); +static const char * const LOCATE_exec___OProcess___init_ = "exec::OProcess::init_"; +void exec___OProcess___init_(val_t p0, val_t p1, int* init_table); +typedef void (*exec___OProcess___init__t)(val_t p0, val_t p1, int* init_table); +val_t NEW_OProcess_exec___OProcess___init_(val_t p0); +static const char * const LOCATE_exec___IOProcess___close = "exec::IOProcess::(stream::IOS::close)"; +void exec___IOProcess___close(val_t p0); +typedef void (*exec___IOProcess___close_t)(val_t p0); +static const char * const LOCATE_exec___IOProcess___init = "exec::IOProcess::init"; +void exec___IOProcess___init(val_t p0, val_t p1, val_t p2, int* init_table); +typedef void (*exec___IOProcess___init_t)(val_t p0, val_t p1, val_t p2, int* init_table); +val_t NEW_IOProcess_exec___IOProcess___init(val_t p0, val_t p1); +static const char * const LOCATE_exec___IOProcess___init_ = "exec::IOProcess::init_"; +void exec___IOProcess___init_(val_t p0, val_t p1, int* init_table); +typedef void (*exec___IOProcess___init__t)(val_t p0, val_t p1, int* init_table); +val_t NEW_IOProcess_exec___IOProcess___init_(val_t p0); +static const char * const LOCATE_exec___Sys___system = "exec::Sys::system"; +val_t exec___Sys___system(val_t p0, val_t p1); +typedef val_t (*exec___Sys___system_t)(val_t p0, val_t p1); +val_t NEW_Sys_kernel___Sys___init(); +static const char * const LOCATE_exec___NativeString___system = "exec::NativeString::system"; +val_t exec___NativeString___system(val_t p0); +typedef val_t (*exec___NativeString___system_t)(val_t p0); +val_t NEW_NativeString_string___NativeString___init(); +static const char * const LOCATE_exec___NativeProcess___id = "exec::NativeProcess::id"; +val_t exec___NativeProcess___id(val_t p0); +typedef val_t (*exec___NativeProcess___id_t)(val_t p0); +static const char * const LOCATE_exec___NativeProcess___is_finished = "exec::NativeProcess::is_finished"; +val_t exec___NativeProcess___is_finished(val_t p0); +typedef val_t (*exec___NativeProcess___is_finished_t)(val_t p0); +static const char * const LOCATE_exec___NativeProcess___status = "exec::NativeProcess::status"; +val_t exec___NativeProcess___status(val_t p0); +typedef val_t (*exec___NativeProcess___status_t)(val_t p0); +static const char * const LOCATE_exec___NativeProcess___wait = "exec::NativeProcess::wait"; +void exec___NativeProcess___wait(val_t p0); +typedef void (*exec___NativeProcess___wait_t)(val_t p0); +static const char * const LOCATE_exec___NativeProcess___in_fd = "exec::NativeProcess::in_fd"; +val_t exec___NativeProcess___in_fd(val_t p0); +typedef val_t (*exec___NativeProcess___in_fd_t)(val_t p0); +static const char * const LOCATE_exec___NativeProcess___out_fd = "exec::NativeProcess::out_fd"; +val_t exec___NativeProcess___out_fd(val_t p0); +typedef val_t (*exec___NativeProcess___out_fd_t)(val_t p0); +static const char * const LOCATE_exec___NativeProcess___err_fd = "exec::NativeProcess::err_fd"; +val_t exec___NativeProcess___err_fd(val_t p0); +typedef val_t (*exec___NativeProcess___err_fd_t)(val_t p0); #endif