void uim_plugin_instance_init(void) { uim_scm_init_proc3("file-open", c_file_open); uim_scm_init_proc0("file-open-flags?", c_file_open_flags); uim_scm_init_proc0("file-open-mode?", c_file_open_mode); uim_lisp_open_flags = make_arg_list(open_flags); uim_lisp_open_mode = make_arg_list(open_mode); uim_scm_gc_protect(&uim_lisp_open_flags); uim_scm_gc_protect(&uim_lisp_open_mode); uim_scm_init_proc1("file-close", c_file_close); uim_scm_init_proc2("file-read", c_file_read); uim_scm_init_proc2("file-write", c_file_write); uim_scm_init_proc3("file-position-set!", c_file_position_set); uim_scm_init_proc0("file-position-whence?", c_file_position_whence); uim_lisp_position_whence = make_arg_list(position_whence); uim_scm_gc_protect(&uim_lisp_position_whence); uim_scm_init_proc2("duplicate2-fileno", c_duplicate2_fileno); uim_scm_init_proc2("file-poll", c_file_poll); uim_scm_init_proc0("file-poll-flags?", c_file_poll_flags); uim_lisp_poll_flags = make_arg_list(poll_flags); uim_scm_gc_protect(&uim_lisp_poll_flags); uim_scm_init_proc0("create-pipe", c_create_pipe); }
void uim_plugin_instance_init(void) { uim_lisp_sqlite3_results_ = make_arg_list(sqlite3_results); uim_scm_gc_protect(&uim_lisp_sqlite3_results_); uim_scm_init_proc0("sqlite3-results", c_uim_lisp_sqlite3_results); uim_scm_init_proc0("sqlite3-libversion", uim_sqlite3_libversion); uim_scm_init_proc1("sqlite3-open", uim_sqlite3_open); uim_scm_init_proc1("sqlite3-close", uim_sqlite3_close); uim_scm_init_proc1("sqlite3-sqlite3-errmsg", uim_sqlite3_errmsg); uim_scm_init_proc3("sqlite3-prepare", uim_sqlite3_prepare); uim_scm_init_proc1("sqlite3-finalize", uim_sqlite3_finalize); uim_scm_init_proc1("sqlite3-reset", uim_sqlite3_reset); uim_scm_init_proc3("sqlite3-bind-int", uim_sqlite3_bind_int); uim_scm_init_proc2("sqlite3-bind-null", uim_sqlite3_bind_null); uim_scm_init_proc4("sqlite3-bind-blob", uim_sqlite3_bind_blob); uim_scm_init_proc4("sqlite3-bind-text", uim_sqlite3_bind_text); uim_scm_init_proc1("sqlite3-clear-bindings", uim_sqlite3_clear_bindings); uim_scm_init_proc1("sqlite3-step", uim_sqlite3_step); uim_scm_init_proc1("sqlite3-column-count", uim_sqlite3_column_count); uim_scm_init_proc1("sqlite3-data-count", uim_sqlite3_data_count); uim_scm_init_proc2("sqlite3-column-bytes", uim_sqlite3_column_bytes); uim_scm_init_proc2("sqlite3-column-int", uim_sqlite3_column_int); uim_scm_init_proc2("sqlite3-column-text", uim_sqlite3_column_text); uim_scm_init_proc2("sqlite3-column-blob", uim_sqlite3_column_blob); uim_scm_init_proc2("sqlite3-column-type", uim_sqlite3_column_type); }
int main(int argc, char *argv[]) { arg_list list = make_arg_list(argv[1]); for(int i = 0; i < list.size; i++) { printf("%s = %s\n", list.param[i].name, list.param[i].value); }; return 0; }
void uim_plugin_instance_init(void) { uim_scm_init_proc0("dlstrerr", c_dlstrerr); uim_lisp_dlopen_mode_ = make_arg_list(dlopen_mode); uim_scm_gc_protect(&uim_lisp_dlopen_mode_); uim_scm_init_proc0("dlopen-mode", c_uim_lisp_dlopen_mode); uim_scm_init_proc2("dlopen", c_dlopen); uim_scm_init_proc1("dlclose", c_dlclose); uim_scm_init_proc2("dlsym", c_dlsym); uim_scm_init_proc3("ffi-call", c_ffi_call); uim_scm_init_proc4("ffi-function", c_ffi_function); }
void uim_plugin_instance_init(void) { uim_scm_init_proc0("current-process-id", c_current_process_id); uim_scm_init_proc0("parent-process-id", c_parent_process_id); uim_scm_init_proc0("process-fork", c_process_fork); uim_scm_init_proc1("_exit", c__exit); uim_scm_init_proc2("process-waitpid", c_process_waitpid); uim_scm_init_proc0("process-waitpid-options?", c_process_waitpid_options); uim_lisp_process_waitpid_options = make_arg_list(waitpid_options); uim_scm_gc_protect(&uim_lisp_process_waitpid_options); uim_scm_eval_c_string("(define process-waitpid-options-alist (process-waitpid-options?))"); uim_scm_init_proc2("daemon", c_daemon); uim_scm_init_proc3("execve", c_execve); uim_scm_init_proc2("execvp", c_execvp); }
void uim_plugin_instance_init(void) { uim_scm_init_proc0("make-addrinfo", c_make_addrinfo); uim_scm_init_proc1("delete-addrinfo", c_delete_addrinfo); uim_scm_init_proc2("addrinfo-set-ai-flags!", c_addrinfo_set_ai_flags); uim_scm_init_proc1("addrinfo-ai-flags?", c_addrinfo_ref_ai_flags); uim_scm_init_proc0("addrinfo-ai-flags-alist?", c_addrinfo_ref_ai_flags_alist); uim_lisp_ai_flags = make_arg_list(ai_flags); uim_scm_gc_protect(&uim_lisp_ai_flags); uim_scm_init_proc2("addrinfo-set-ai-family!", c_addrinfo_set_ai_family); uim_scm_init_proc1("addrinfo-ai-family?", c_addrinfo_ref_ai_family); uim_scm_init_proc0("addrinfo-ai-family-alist?", c_addrinfo_ref_ai_family_alist); uim_lisp_ai_family = make_arg_list(ai_family); uim_scm_gc_protect(&uim_lisp_ai_family); uim_scm_init_proc2("addrinfo-set-ai-socktype!", c_addrinfo_set_ai_socktype); uim_scm_init_proc1("addrinfo-ai-socktype?", c_addrinfo_ref_ai_socktype); uim_scm_init_proc0("addrinfo-ai-socktype-alist?", c_addrinfo_ref_ai_socktype_alist); uim_lisp_ai_socktype = make_arg_list(ai_socktype); uim_scm_gc_protect(&uim_lisp_ai_socktype); uim_scm_init_proc2("addrinfo-set-ai-protocol!", c_addrinfo_set_ai_protocol); uim_scm_init_proc1("addrinfo-ai-protocol?", c_addrinfo_ref_ai_protocol); uim_scm_init_proc0("addrinfo-ai-protocol-alist?", c_addrinfo_ref_ai_protocol_alist); uim_lisp_ai_protocol = make_arg_list(ai_protocol); uim_scm_gc_protect(&uim_lisp_ai_protocol); uim_scm_init_proc1("addrinfo-ai-addrlen?", c_addrinfo_ref_ai_addrlen); uim_scm_init_proc1("addrinfo-ai-addr?", c_addrinfo_ref_ai_addr); uim_scm_init_proc0("make-sockaddr-un", c_make_sockaddr_un); uim_scm_init_proc1("delete-sockaddr-un", c_delete_sockaddr_un); uim_scm_init_proc2("sockaddr-set-un-sun-family!", c_set_sockaddr_un_sun_family); uim_scm_init_proc1("sockaddr-un-sun-family?", c_ref_sockaddr_un_sun_family); uim_scm_init_proc2("sockaddr-set-un-sun-path!", c_set_sockaddr_un_sun_path); uim_scm_init_proc1("sockaddr-un-sun-path?", c_ref_sockaddr_un_sun_path); uim_scm_init_proc1("sun-len", c_sun_len); uim_scm_init_proc3("getaddrinfo", c_getaddrinfo); uim_scm_init_proc1("freeaddrinfo", c_freeaddrinfo); uim_scm_init_proc3("socket", c_socket); uim_scm_init_proc3("connect", c_connect); uim_scm_init_proc3("bind", c_bind); uim_scm_init_proc2("listen", c_listen); uim_scm_init_proc2("shutdown", c_shutdown); uim_scm_init_proc0("shutdown-how-alist?", c_shutdown_how_alist); uim_lisp_shutdown_how_alist = make_arg_list(shutdown_how); uim_scm_gc_protect(&uim_lisp_shutdown_how_alist); uim_scm_init_proc0("make-sockaddr-storage", c_make_sockaddr_storage); uim_scm_init_proc1("delete-sockaddr-storage", c_delete_sockaddr_storage); uim_scm_init_proc2("accept", c_accept); uim_scm_init_proc1("getpeereid", c_getpeereid); }