Sophie

Sophie

distrib > * > cooker > x86_64 > by-pkgid > c82fbb12a1c61d087a9308adf47a46ab > files > 946

ocaml-ocamlnet-devel-2.2.9-10.x86_64.rpm

<html><head>
<link rel="stylesheet" href="style.css" type="text/css">
<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type">
<link rel="Start" href="index.html">
<link title="Index of types" rel=Appendix href="index_types.html">
<link title="Index of exceptions" rel=Appendix href="index_exceptions.html">
<link title="Index of values" rel=Appendix href="index_values.html">
<link title="Index of class attributes" rel=Appendix href="index_attributes.html">
<link title="Index of class methods" rel=Appendix href="index_methods.html">
<link title="Index of classes" rel=Appendix href="index_classes.html">
<link title="Index of class types" rel=Appendix href="index_class_types.html">
<link title="Index of modules" rel=Appendix href="index_modules.html">
<link title="Index of module types" rel=Appendix href="index_module_types.html">
<link title="Uq_gtk" rel="Chapter" href="Uq_gtk.html">
<link title="Equeue" rel="Chapter" href="Equeue.html">
<link title="Unixqueue" rel="Chapter" href="Unixqueue.html">
<link title="Uq_engines" rel="Chapter" href="Uq_engines.html">
<link title="Uq_socks5" rel="Chapter" href="Uq_socks5.html">
<link title="Unixqueue_mt" rel="Chapter" href="Unixqueue_mt.html">
<link title="Equeue_intro" rel="Chapter" href="Equeue_intro.html">
<link title="Uq_ssl" rel="Chapter" href="Uq_ssl.html">
<link title="Uq_tcl" rel="Chapter" href="Uq_tcl.html">
<link title="Netcgi_common" rel="Chapter" href="Netcgi_common.html">
<link title="Netcgi" rel="Chapter" href="Netcgi.html">
<link title="Netcgi_ajp" rel="Chapter" href="Netcgi_ajp.html">
<link title="Netcgi_scgi" rel="Chapter" href="Netcgi_scgi.html">
<link title="Netcgi_cgi" rel="Chapter" href="Netcgi_cgi.html">
<link title="Netcgi_fcgi" rel="Chapter" href="Netcgi_fcgi.html">
<link title="Netcgi_dbi" rel="Chapter" href="Netcgi_dbi.html">
<link title="Netcgi1_compat" rel="Chapter" href="Netcgi1_compat.html">
<link title="Netcgi_test" rel="Chapter" href="Netcgi_test.html">
<link title="Netcgi_porting" rel="Chapter" href="Netcgi_porting.html">
<link title="Netcgi_plex" rel="Chapter" href="Netcgi_plex.html">
<link title="Http_client" rel="Chapter" href="Http_client.html">
<link title="Telnet_client" rel="Chapter" href="Telnet_client.html">
<link title="Ftp_data_endpoint" rel="Chapter" href="Ftp_data_endpoint.html">
<link title="Ftp_client" rel="Chapter" href="Ftp_client.html">
<link title="Nethttpd_types" rel="Chapter" href="Nethttpd_types.html">
<link title="Nethttpd_kernel" rel="Chapter" href="Nethttpd_kernel.html">
<link title="Nethttpd_reactor" rel="Chapter" href="Nethttpd_reactor.html">
<link title="Nethttpd_engine" rel="Chapter" href="Nethttpd_engine.html">
<link title="Nethttpd_services" rel="Chapter" href="Nethttpd_services.html">
<link title="Nethttpd_plex" rel="Chapter" href="Nethttpd_plex.html">
<link title="Nethttpd_intro" rel="Chapter" href="Nethttpd_intro.html">
<link title="Netplex_types" rel="Chapter" href="Netplex_types.html">
<link title="Netplex_mp" rel="Chapter" href="Netplex_mp.html">
<link title="Netplex_mt" rel="Chapter" href="Netplex_mt.html">
<link title="Netplex_log" rel="Chapter" href="Netplex_log.html">
<link title="Netplex_controller" rel="Chapter" href="Netplex_controller.html">
<link title="Netplex_container" rel="Chapter" href="Netplex_container.html">
<link title="Netplex_sockserv" rel="Chapter" href="Netplex_sockserv.html">
<link title="Netplex_workload" rel="Chapter" href="Netplex_workload.html">
<link title="Netplex_main" rel="Chapter" href="Netplex_main.html">
<link title="Netplex_config" rel="Chapter" href="Netplex_config.html">
<link title="Netplex_kit" rel="Chapter" href="Netplex_kit.html">
<link title="Rpc_netplex" rel="Chapter" href="Rpc_netplex.html">
<link title="Netplex_cenv" rel="Chapter" href="Netplex_cenv.html">
<link title="Netplex_intro" rel="Chapter" href="Netplex_intro.html">
<link title="Netshm" rel="Chapter" href="Netshm.html">
<link title="Netshm_data" rel="Chapter" href="Netshm_data.html">
<link title="Netshm_hashtbl" rel="Chapter" href="Netshm_hashtbl.html">
<link title="Netshm_array" rel="Chapter" href="Netshm_array.html">
<link title="Netshm_intro" rel="Chapter" href="Netshm_intro.html">
<link title="Netconversion" rel="Chapter" href="Netconversion.html">
<link title="Netchannels" rel="Chapter" href="Netchannels.html">
<link title="Netstream" rel="Chapter" href="Netstream.html">
<link title="Mimestring" rel="Chapter" href="Mimestring.html">
<link title="Netmime" rel="Chapter" href="Netmime.html">
<link title="Netsendmail" rel="Chapter" href="Netsendmail.html">
<link title="Neturl" rel="Chapter" href="Neturl.html">
<link title="Netaddress" rel="Chapter" href="Netaddress.html">
<link title="Netbuffer" rel="Chapter" href="Netbuffer.html">
<link title="Netdate" rel="Chapter" href="Netdate.html">
<link title="Netencoding" rel="Chapter" href="Netencoding.html">
<link title="Netulex" rel="Chapter" href="Netulex.html">
<link title="Netaccel" rel="Chapter" href="Netaccel.html">
<link title="Netaccel_link" rel="Chapter" href="Netaccel_link.html">
<link title="Nethtml" rel="Chapter" href="Nethtml.html">
<link title="Netstring_str" rel="Chapter" href="Netstring_str.html">
<link title="Netstring_pcre" rel="Chapter" href="Netstring_pcre.html">
<link title="Netstring_mt" rel="Chapter" href="Netstring_mt.html">
<link title="Netmappings" rel="Chapter" href="Netmappings.html">
<link title="Netaux" rel="Chapter" href="Netaux.html">
<link title="Nethttp" rel="Chapter" href="Nethttp.html">
<link title="Netchannels_tut" rel="Chapter" href="Netchannels_tut.html">
<link title="Netmime_tut" rel="Chapter" href="Netmime_tut.html">
<link title="Netsendmail_tut" rel="Chapter" href="Netsendmail_tut.html">
<link title="Netulex_tut" rel="Chapter" href="Netulex_tut.html">
<link title="Neturl_tut" rel="Chapter" href="Neturl_tut.html">
<link title="Netsys" rel="Chapter" href="Netsys.html">
<link title="Netpop" rel="Chapter" href="Netpop.html">
<link title="Rpc_auth_dh" rel="Chapter" href="Rpc_auth_dh.html">
<link title="Rpc_key_service" rel="Chapter" href="Rpc_key_service.html">
<link title="Rpc_time" rel="Chapter" href="Rpc_time.html">
<link title="Rpc_auth_local" rel="Chapter" href="Rpc_auth_local.html">
<link title="Rtypes" rel="Chapter" href="Rtypes.html">
<link title="Xdr" rel="Chapter" href="Xdr.html">
<link title="Rpc" rel="Chapter" href="Rpc.html">
<link title="Rpc_program" rel="Chapter" href="Rpc_program.html">
<link title="Rpc_portmapper_aux" rel="Chapter" href="Rpc_portmapper_aux.html">
<link title="Rpc_packer" rel="Chapter" href="Rpc_packer.html">
<link title="Rpc_transport" rel="Chapter" href="Rpc_transport.html">
<link title="Rpc_client" rel="Chapter" href="Rpc_client.html">
<link title="Rpc_simple_client" rel="Chapter" href="Rpc_simple_client.html">
<link title="Rpc_portmapper_clnt" rel="Chapter" href="Rpc_portmapper_clnt.html">
<link title="Rpc_portmapper" rel="Chapter" href="Rpc_portmapper.html">
<link title="Rpc_server" rel="Chapter" href="Rpc_server.html">
<link title="Rpc_auth_sys" rel="Chapter" href="Rpc_auth_sys.html">
<link title="Rpc_intro" rel="Chapter" href="Rpc_intro.html">
<link title="Rpc_mapping_ref" rel="Chapter" href="Rpc_mapping_ref.html">
<link title="Rpc_ssl" rel="Chapter" href="Rpc_ssl.html">
<link title="Rpc_xti_client" rel="Chapter" href="Rpc_xti_client.html">
<link title="Shell_sys" rel="Chapter" href="Shell_sys.html">
<link title="Shell" rel="Chapter" href="Shell.html">
<link title="Shell_uq" rel="Chapter" href="Shell_uq.html">
<link title="Shell_mt" rel="Chapter" href="Shell_mt.html">
<link title="Shell_intro" rel="Chapter" href="Shell_intro.html">
<link title="Netsmtp" rel="Chapter" href="Netsmtp.html"><title>Ocamlnet 2 Reference Manual : Shell_sys</title>
</head>
<body>
<code class="code"><span class="keyword">sig</span><br>
&nbsp;&nbsp;<span class="keyword">exception</span>&nbsp;<span class="constructor">Fatal_error</span>&nbsp;<span class="keyword">of</span>&nbsp;exn<br>
&nbsp;&nbsp;<span class="keyword">type</span>&nbsp;environment<br>
&nbsp;&nbsp;<span class="keyword">val</span>&nbsp;create_env&nbsp;:&nbsp;unit&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;<span class="constructor">Shell_sys</span>.environment<br>
&nbsp;&nbsp;<span class="keyword">val</span>&nbsp;current_env&nbsp;:&nbsp;unit&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;<span class="constructor">Shell_sys</span>.environment<br>
&nbsp;&nbsp;<span class="keyword">val</span>&nbsp;copy_env&nbsp;:&nbsp;<span class="constructor">Shell_sys</span>.environment&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;<span class="constructor">Shell_sys</span>.environment<br>
&nbsp;&nbsp;<span class="keyword">val</span>&nbsp;set_env&nbsp;:&nbsp;<span class="constructor">Shell_sys</span>.environment&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;string&nbsp;array&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;unit<br>
&nbsp;&nbsp;<span class="keyword">val</span>&nbsp;get_env&nbsp;:&nbsp;<span class="constructor">Shell_sys</span>.environment&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;string&nbsp;array<br>
&nbsp;&nbsp;<span class="keyword">val</span>&nbsp;iter_env&nbsp;:&nbsp;f:(string&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;unit)&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;<span class="constructor">Shell_sys</span>.environment&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;unit<br>
&nbsp;&nbsp;<span class="keyword">val</span>&nbsp;set_env_var&nbsp;:&nbsp;<span class="constructor">Shell_sys</span>.environment&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;string&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;string&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;unit<br>
&nbsp;&nbsp;<span class="keyword">val</span>&nbsp;get_env_var&nbsp;:&nbsp;<span class="constructor">Shell_sys</span>.environment&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;string&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;string<br>
&nbsp;&nbsp;<span class="keyword">val</span>&nbsp;iter_env_vars&nbsp;:<br>
&nbsp;&nbsp;&nbsp;&nbsp;f:(string&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;string&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;unit)&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;<span class="constructor">Shell_sys</span>.environment&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;unit<br>
&nbsp;&nbsp;<span class="keyword">type</span>&nbsp;command<br>
&nbsp;&nbsp;<span class="keyword">val</span>&nbsp;command&nbsp;:<br>
&nbsp;&nbsp;&nbsp;&nbsp;?cmdname:string&nbsp;<span class="keywordsign">-&gt;</span><br>
&nbsp;&nbsp;&nbsp;&nbsp;?arguments:string&nbsp;array&nbsp;<span class="keywordsign">-&gt;</span><br>
&nbsp;&nbsp;&nbsp;&nbsp;?chdir:string&nbsp;<span class="keywordsign">-&gt;</span><br>
&nbsp;&nbsp;&nbsp;&nbsp;?environment:<span class="constructor">Shell_sys</span>.environment&nbsp;<span class="keywordsign">-&gt;</span><br>
&nbsp;&nbsp;&nbsp;&nbsp;?descriptors:<span class="constructor">Unix</span>.file_descr&nbsp;list&nbsp;<span class="keywordsign">-&gt;</span><br>
&nbsp;&nbsp;&nbsp;&nbsp;?assignments:(<span class="constructor">Unix</span>.file_descr&nbsp;*&nbsp;<span class="constructor">Unix</span>.file_descr)&nbsp;list&nbsp;<span class="keywordsign">-&gt;</span><br>
&nbsp;&nbsp;&nbsp;&nbsp;filename:string&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;unit&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;<span class="constructor">Shell_sys</span>.command<br>
&nbsp;&nbsp;<span class="keyword">exception</span>&nbsp;<span class="constructor">Executable_not_found</span>&nbsp;<span class="keyword">of</span>&nbsp;string<br>
&nbsp;&nbsp;<span class="keyword">val</span>&nbsp;lookup_executable&nbsp;:&nbsp;?path:string&nbsp;list&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;string&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;string<br>
&nbsp;&nbsp;<span class="keyword">val</span>&nbsp;get_cmdname&nbsp;:&nbsp;<span class="constructor">Shell_sys</span>.command&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;string<br>
&nbsp;&nbsp;<span class="keyword">val</span>&nbsp;get_arguments&nbsp;:&nbsp;<span class="constructor">Shell_sys</span>.command&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;string&nbsp;array<br>
&nbsp;&nbsp;<span class="keyword">val</span>&nbsp;get_chdir&nbsp;:&nbsp;<span class="constructor">Shell_sys</span>.command&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;string&nbsp;option<br>
&nbsp;&nbsp;<span class="keyword">val</span>&nbsp;get_environment&nbsp;:&nbsp;<span class="constructor">Shell_sys</span>.command&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;<span class="constructor">Shell_sys</span>.environment<br>
&nbsp;&nbsp;<span class="keyword">val</span>&nbsp;get_descriptors&nbsp;:&nbsp;<span class="constructor">Shell_sys</span>.command&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;<span class="constructor">Unix</span>.file_descr&nbsp;list<br>
&nbsp;&nbsp;<span class="keyword">val</span>&nbsp;get_assignments&nbsp;:<br>
&nbsp;&nbsp;&nbsp;&nbsp;<span class="constructor">Shell_sys</span>.command&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;(<span class="constructor">Unix</span>.file_descr&nbsp;*&nbsp;<span class="constructor">Unix</span>.file_descr)&nbsp;list<br>
&nbsp;&nbsp;<span class="keyword">val</span>&nbsp;get_filename&nbsp;:&nbsp;<span class="constructor">Shell_sys</span>.command&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;string<br>
&nbsp;&nbsp;<span class="keyword">val</span>&nbsp;set_cmdname&nbsp;:&nbsp;<span class="constructor">Shell_sys</span>.command&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;string&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;unit<br>
&nbsp;&nbsp;<span class="keyword">val</span>&nbsp;set_arguments&nbsp;:&nbsp;<span class="constructor">Shell_sys</span>.command&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;string&nbsp;array&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;unit<br>
&nbsp;&nbsp;<span class="keyword">val</span>&nbsp;set_chdir&nbsp;:&nbsp;<span class="constructor">Shell_sys</span>.command&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;string&nbsp;option&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;unit<br>
&nbsp;&nbsp;<span class="keyword">val</span>&nbsp;set_environment&nbsp;:&nbsp;<span class="constructor">Shell_sys</span>.command&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;<span class="constructor">Shell_sys</span>.environment&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;unit<br>
&nbsp;&nbsp;<span class="keyword">val</span>&nbsp;set_descriptors&nbsp;:&nbsp;<span class="constructor">Shell_sys</span>.command&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;<span class="constructor">Unix</span>.file_descr&nbsp;list&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;unit<br>
&nbsp;&nbsp;<span class="keyword">val</span>&nbsp;set_assignments&nbsp;:<br>
&nbsp;&nbsp;&nbsp;&nbsp;<span class="constructor">Shell_sys</span>.command&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;(<span class="constructor">Unix</span>.file_descr&nbsp;*&nbsp;<span class="constructor">Unix</span>.file_descr)&nbsp;list&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;unit<br>
&nbsp;&nbsp;<span class="keyword">val</span>&nbsp;set_filename&nbsp;:&nbsp;<span class="constructor">Shell_sys</span>.command&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;string&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;unit<br>
&nbsp;&nbsp;<span class="keyword">val</span>&nbsp;copy_command&nbsp;:&nbsp;<span class="constructor">Shell_sys</span>.command&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;<span class="constructor">Shell_sys</span>.command<br>
&nbsp;&nbsp;<span class="keyword">val</span>&nbsp;is_executable&nbsp;:&nbsp;<span class="constructor">Shell_sys</span>.command&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;bool<br>
&nbsp;&nbsp;<span class="keyword">type</span>&nbsp;process<br>
&nbsp;&nbsp;<span class="keyword">type</span>&nbsp;group_action&nbsp;=<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="constructor">New_bg_group</span><br>
&nbsp;&nbsp;&nbsp;&nbsp;<span class="keywordsign">|</span>&nbsp;<span class="constructor">New_fg_group</span><br>
&nbsp;&nbsp;&nbsp;&nbsp;<span class="keywordsign">|</span>&nbsp;<span class="constructor">Join_group</span>&nbsp;<span class="keyword">of</span>&nbsp;int<br>
&nbsp;&nbsp;&nbsp;&nbsp;<span class="keywordsign">|</span>&nbsp;<span class="constructor">Current_group</span><br>
&nbsp;&nbsp;<span class="keyword">val</span>&nbsp;run&nbsp;:<br>
&nbsp;&nbsp;&nbsp;&nbsp;?group:<span class="constructor">Shell_sys</span>.group_action&nbsp;<span class="keywordsign">-&gt;</span><br>
&nbsp;&nbsp;&nbsp;&nbsp;?pipe_assignments:(<span class="constructor">Unix</span>.file_descr&nbsp;*&nbsp;<span class="constructor">Unix</span>.file_descr)&nbsp;list&nbsp;<span class="keywordsign">-&gt;</span><br>
&nbsp;&nbsp;&nbsp;&nbsp;<span class="constructor">Shell_sys</span>.command&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;<span class="constructor">Shell_sys</span>.process<br>
&nbsp;&nbsp;<span class="keyword">val</span>&nbsp;process_id&nbsp;:&nbsp;<span class="constructor">Shell_sys</span>.process&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;int<br>
&nbsp;&nbsp;<span class="keyword">val</span>&nbsp;status&nbsp;:&nbsp;<span class="constructor">Shell_sys</span>.process&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;<span class="constructor">Unix</span>.process_status<br>
&nbsp;&nbsp;<span class="keyword">val</span>&nbsp;command_of_process&nbsp;:&nbsp;<span class="constructor">Shell_sys</span>.process&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;<span class="constructor">Shell_sys</span>.command<br>
&nbsp;&nbsp;<span class="keyword">type</span>&nbsp;process_event&nbsp;=<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="constructor">File_read</span>&nbsp;<span class="keyword">of</span>&nbsp;<span class="constructor">Unix</span>.file_descr<br>
&nbsp;&nbsp;&nbsp;&nbsp;<span class="keywordsign">|</span>&nbsp;<span class="constructor">File_write</span>&nbsp;<span class="keyword">of</span>&nbsp;<span class="constructor">Unix</span>.file_descr<br>
&nbsp;&nbsp;&nbsp;&nbsp;<span class="keywordsign">|</span>&nbsp;<span class="constructor">File_except</span>&nbsp;<span class="keyword">of</span>&nbsp;<span class="constructor">Unix</span>.file_descr<br>
&nbsp;&nbsp;&nbsp;&nbsp;<span class="keywordsign">|</span>&nbsp;<span class="constructor">Process_event</span>&nbsp;<span class="keyword">of</span>&nbsp;<span class="constructor">Shell_sys</span>.process<br>
&nbsp;&nbsp;&nbsp;&nbsp;<span class="keywordsign">|</span>&nbsp;<span class="constructor">Signal</span><br>
&nbsp;&nbsp;<span class="keyword">val</span>&nbsp;wait&nbsp;:<br>
&nbsp;&nbsp;&nbsp;&nbsp;?wnohang:bool&nbsp;<span class="keywordsign">-&gt;</span><br>
&nbsp;&nbsp;&nbsp;&nbsp;?wuntraced:bool&nbsp;<span class="keywordsign">-&gt;</span><br>
&nbsp;&nbsp;&nbsp;&nbsp;?restart:bool&nbsp;<span class="keywordsign">-&gt;</span><br>
&nbsp;&nbsp;&nbsp;&nbsp;?check_interval:float&nbsp;<span class="keywordsign">-&gt;</span><br>
&nbsp;&nbsp;&nbsp;&nbsp;?read:<span class="constructor">Unix</span>.file_descr&nbsp;list&nbsp;<span class="keywordsign">-&gt;</span><br>
&nbsp;&nbsp;&nbsp;&nbsp;?write:<span class="constructor">Unix</span>.file_descr&nbsp;list&nbsp;<span class="keywordsign">-&gt;</span><br>
&nbsp;&nbsp;&nbsp;&nbsp;?except:<span class="constructor">Unix</span>.file_descr&nbsp;list&nbsp;<span class="keywordsign">-&gt;</span><br>
&nbsp;&nbsp;&nbsp;&nbsp;<span class="constructor">Shell_sys</span>.process&nbsp;list&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;<span class="constructor">Shell_sys</span>.process_event&nbsp;list<br>
&nbsp;&nbsp;<span class="keyword">val</span>&nbsp;call&nbsp;:&nbsp;<span class="constructor">Shell_sys</span>.command&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;<span class="constructor">Shell_sys</span>.process<br>
&nbsp;&nbsp;<span class="keyword">val</span>&nbsp;kill&nbsp;:&nbsp;?signal:int&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;<span class="constructor">Shell_sys</span>.process&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;unit<br>
&nbsp;&nbsp;<span class="keyword">type</span>&nbsp;system_handler&nbsp;=&nbsp;{<br>
&nbsp;&nbsp;&nbsp;&nbsp;sys_register&nbsp;:<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;?wuntraced:bool&nbsp;<span class="keywordsign">-&gt;</span><br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;?check_interval:float&nbsp;<span class="keywordsign">-&gt;</span><br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;?read:<span class="constructor">Unix</span>.file_descr&nbsp;list&nbsp;<span class="keywordsign">-&gt;</span><br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;?write:<span class="constructor">Unix</span>.file_descr&nbsp;list&nbsp;<span class="keywordsign">-&gt;</span><br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;?except:<span class="constructor">Unix</span>.file_descr&nbsp;list&nbsp;<span class="keywordsign">-&gt;</span><br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="constructor">Shell_sys</span>.process&nbsp;list&nbsp;<span class="keywordsign">-&gt;</span><br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(<span class="constructor">Shell_sys</span>.process_event&nbsp;list&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;unit)&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;unit;<br>
&nbsp;&nbsp;&nbsp;&nbsp;sys_wait&nbsp;:&nbsp;unit&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;unit;<br>
&nbsp;&nbsp;}<br>
&nbsp;&nbsp;<span class="keyword">type</span>&nbsp;job<br>
&nbsp;&nbsp;<span class="keyword">type</span>&nbsp;job_instance<br>
&nbsp;&nbsp;<span class="keyword">val</span>&nbsp;new_job&nbsp;:&nbsp;unit&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;<span class="constructor">Shell_sys</span>.job<br>
&nbsp;&nbsp;<span class="keyword">val</span>&nbsp;add_command&nbsp;:&nbsp;<span class="constructor">Shell_sys</span>.command&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;<span class="constructor">Shell_sys</span>.job&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;unit<br>
&nbsp;&nbsp;<span class="keyword">val</span>&nbsp;add_pipeline&nbsp;:<br>
&nbsp;&nbsp;&nbsp;&nbsp;?bidirectional:bool&nbsp;<span class="keywordsign">-&gt;</span><br>
&nbsp;&nbsp;&nbsp;&nbsp;?src_descr:<span class="constructor">Unix</span>.file_descr&nbsp;<span class="keywordsign">-&gt;</span><br>
&nbsp;&nbsp;&nbsp;&nbsp;?dest_descr:<span class="constructor">Unix</span>.file_descr&nbsp;<span class="keywordsign">-&gt;</span><br>
&nbsp;&nbsp;&nbsp;&nbsp;src:<span class="constructor">Shell_sys</span>.command&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;dest:<span class="constructor">Shell_sys</span>.command&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;<span class="constructor">Shell_sys</span>.job&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;unit<br>
&nbsp;&nbsp;<span class="keyword">val</span>&nbsp;add_producer&nbsp;:<br>
&nbsp;&nbsp;&nbsp;&nbsp;?descr:<span class="constructor">Unix</span>.file_descr&nbsp;<span class="keywordsign">-&gt;</span><br>
&nbsp;&nbsp;&nbsp;&nbsp;producer:(<span class="constructor">Unix</span>.file_descr&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;bool)&nbsp;<span class="keywordsign">-&gt;</span><br>
&nbsp;&nbsp;&nbsp;&nbsp;<span class="constructor">Shell_sys</span>.command&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;<span class="constructor">Shell_sys</span>.job&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;unit<br>
&nbsp;&nbsp;<span class="keyword">val</span>&nbsp;from_string&nbsp;:<br>
&nbsp;&nbsp;&nbsp;&nbsp;?pos:int&nbsp;<span class="keywordsign">-&gt;</span><br>
&nbsp;&nbsp;&nbsp;&nbsp;?len:int&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;?epipe:(unit&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;unit)&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;string&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;<span class="constructor">Unix</span>.file_descr&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;bool<br>
&nbsp;&nbsp;<span class="keyword">val</span>&nbsp;from_stream&nbsp;:<br>
&nbsp;&nbsp;&nbsp;&nbsp;?epipe:(unit&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;unit)&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;string&nbsp;<span class="constructor">Stream</span>.t&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;<span class="constructor">Unix</span>.file_descr&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;bool<br>
&nbsp;&nbsp;<span class="keyword">val</span>&nbsp;add_consumer&nbsp;:<br>
&nbsp;&nbsp;&nbsp;&nbsp;?descr:<span class="constructor">Unix</span>.file_descr&nbsp;<span class="keywordsign">-&gt;</span><br>
&nbsp;&nbsp;&nbsp;&nbsp;consumer:(<span class="constructor">Unix</span>.file_descr&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;bool)&nbsp;<span class="keywordsign">-&gt;</span><br>
&nbsp;&nbsp;&nbsp;&nbsp;<span class="constructor">Shell_sys</span>.command&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;<span class="constructor">Shell_sys</span>.job&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;unit<br>
&nbsp;&nbsp;<span class="keyword">val</span>&nbsp;to_buffer&nbsp;:&nbsp;<span class="constructor">Buffer</span>.t&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;<span class="constructor">Unix</span>.file_descr&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;bool<br>
&nbsp;&nbsp;<span class="keyword">type</span>&nbsp;group_mode&nbsp;=&nbsp;<span class="constructor">Same_as_caller</span>&nbsp;<span class="keywordsign">|</span>&nbsp;<span class="constructor">Foreground</span>&nbsp;<span class="keywordsign">|</span>&nbsp;<span class="constructor">Background</span><br>
&nbsp;&nbsp;<span class="keyword">val</span>&nbsp;run_job&nbsp;:<br>
&nbsp;&nbsp;&nbsp;&nbsp;?mode:<span class="constructor">Shell_sys</span>.group_mode&nbsp;<span class="keywordsign">-&gt;</span><br>
&nbsp;&nbsp;&nbsp;&nbsp;?forward_signals:bool&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;<span class="constructor">Shell_sys</span>.job&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;<span class="constructor">Shell_sys</span>.job_instance<br>
&nbsp;&nbsp;<span class="keyword">val</span>&nbsp;register_job&nbsp;:<br>
&nbsp;&nbsp;&nbsp;&nbsp;<span class="constructor">Shell_sys</span>.system_handler&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;<span class="constructor">Shell_sys</span>.job_instance&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;unit<br>
&nbsp;&nbsp;<span class="keyword">val</span>&nbsp;finish_job&nbsp;:<br>
&nbsp;&nbsp;&nbsp;&nbsp;?sys:<span class="constructor">Shell_sys</span>.system_handler&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;<span class="constructor">Shell_sys</span>.job_instance&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;unit<br>
&nbsp;&nbsp;<span class="keyword">val</span>&nbsp;call_job&nbsp;:<br>
&nbsp;&nbsp;&nbsp;&nbsp;?mode:<span class="constructor">Shell_sys</span>.group_mode&nbsp;<span class="keywordsign">-&gt;</span><br>
&nbsp;&nbsp;&nbsp;&nbsp;?forward_signals:bool&nbsp;<span class="keywordsign">-&gt;</span><br>
&nbsp;&nbsp;&nbsp;&nbsp;?onerror:(<span class="constructor">Shell_sys</span>.job_instance&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;unit)&nbsp;<span class="keywordsign">-&gt;</span><br>
&nbsp;&nbsp;&nbsp;&nbsp;<span class="constructor">Shell_sys</span>.job&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;<span class="constructor">Shell_sys</span>.job_instance<br>
&nbsp;&nbsp;<span class="keyword">val</span>&nbsp;processes&nbsp;:&nbsp;<span class="constructor">Shell_sys</span>.job_instance&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;<span class="constructor">Shell_sys</span>.process&nbsp;list<br>
&nbsp;&nbsp;<span class="keyword">exception</span>&nbsp;<span class="constructor">No_Unix_process_group</span><br>
&nbsp;&nbsp;<span class="keyword">val</span>&nbsp;process_group_leader&nbsp;:&nbsp;<span class="constructor">Shell_sys</span>.job_instance&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;<span class="constructor">Shell_sys</span>.process<br>
&nbsp;&nbsp;<span class="keyword">val</span>&nbsp;process_group_id&nbsp;:&nbsp;<span class="constructor">Shell_sys</span>.job_instance&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;int<br>
&nbsp;&nbsp;<span class="keyword">val</span>&nbsp;process_group_expects_signals&nbsp;:&nbsp;<span class="constructor">Shell_sys</span>.job_instance&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;bool<br>
&nbsp;&nbsp;<span class="keyword">type</span>&nbsp;job_status&nbsp;=<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="constructor">Job_running</span><br>
&nbsp;&nbsp;&nbsp;&nbsp;<span class="keywordsign">|</span>&nbsp;<span class="constructor">Job_partially_running</span><br>
&nbsp;&nbsp;&nbsp;&nbsp;<span class="keywordsign">|</span>&nbsp;<span class="constructor">Job_ok</span><br>
&nbsp;&nbsp;&nbsp;&nbsp;<span class="keywordsign">|</span>&nbsp;<span class="constructor">Job_error</span><br>
&nbsp;&nbsp;&nbsp;&nbsp;<span class="keywordsign">|</span>&nbsp;<span class="constructor">Job_abandoned</span><br>
&nbsp;&nbsp;<span class="keyword">val</span>&nbsp;job_status&nbsp;:&nbsp;<span class="constructor">Shell_sys</span>.job_instance&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;<span class="constructor">Shell_sys</span>.job_status<br>
&nbsp;&nbsp;<span class="keyword">val</span>&nbsp;kill_process_group&nbsp;:&nbsp;?signal:int&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;<span class="constructor">Shell_sys</span>.job_instance&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;unit<br>
&nbsp;&nbsp;<span class="keyword">val</span>&nbsp;kill_processes&nbsp;:&nbsp;?signal:int&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;<span class="constructor">Shell_sys</span>.job_instance&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;unit<br>
&nbsp;&nbsp;<span class="keyword">val</span>&nbsp;abandon_job&nbsp;:&nbsp;?signal:int&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;<span class="constructor">Shell_sys</span>.job_instance&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;unit<br>
&nbsp;&nbsp;<span class="keyword">val</span>&nbsp;iter_job_instances&nbsp;:&nbsp;f:(<span class="constructor">Shell_sys</span>.job_instance&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;unit)&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;unit<br>
&nbsp;&nbsp;<span class="keyword">val</span>&nbsp;watch_for_zombies&nbsp;:&nbsp;unit&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;unit<br>
&nbsp;&nbsp;<span class="keyword">exception</span>&nbsp;<span class="constructor">Already_installed</span><br>
&nbsp;&nbsp;<span class="keyword">val</span>&nbsp;configure_job_handlers&nbsp;:<br>
&nbsp;&nbsp;&nbsp;&nbsp;?catch_sigint:bool&nbsp;<span class="keywordsign">-&gt;</span><br>
&nbsp;&nbsp;&nbsp;&nbsp;?catch_sigquit:bool&nbsp;<span class="keywordsign">-&gt;</span><br>
&nbsp;&nbsp;&nbsp;&nbsp;?catch_sigterm:bool&nbsp;<span class="keywordsign">-&gt;</span><br>
&nbsp;&nbsp;&nbsp;&nbsp;?catch_sighup:bool&nbsp;<span class="keywordsign">-&gt;</span><br>
&nbsp;&nbsp;&nbsp;&nbsp;?catch_sigchld:bool&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;?set_sigpipe:bool&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;?at_exit:bool&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;unit&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;unit<br>
&nbsp;&nbsp;<span class="keyword">val</span>&nbsp;install_job_handlers&nbsp;:&nbsp;unit&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;unit<br>
&nbsp;&nbsp;<span class="keyword">val</span>&nbsp;init_mt&nbsp;:&nbsp;(unit&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;(unit&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;unit)&nbsp;*&nbsp;(unit&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;unit))&nbsp;<span class="keywordsign">-&gt;</span>&nbsp;unit<br>
<span class="keyword">end</span></code></body></html>