SCM Repository
[smlnj] Annotation of /sml/branches/rt-transition/idl-specs/sml-basis-unix.idl
Annotation of /sml/branches/rt-transition/idl-specs/sml-basis-unix.idl
Parent Directory
|
Revision Log
Revision 2985 -
(view)
(download)
1 : |
jhr |
2984 |
(* sml-basis-unix.idl
|
2 : |
|
|
*
|
3 : |
|
|
* COPYRIGHT (c) 2008 The Fellowship of SML/NJ (http://www.smlnj.org)
|
4 : |
|
|
* All rights reserved.
|
5 : |
|
|
*
|
6 : |
|
|
* The IDL spec to support the Unix module of the SML Basis Library.
|
7 : |
|
|
*)
|
8 : |
|
|
|
9 : |
|
|
sml_structure ("SMLBasisUnix");
|
10 : |
|
|
sml_signature ("SML_BASIS_UNIX");
|
11 : |
|
|
clib_name ("SMLBasisUnix");
|
12 : |
|
|
|
13 : |
jhr |
2985 |
/* typedef [ptr] struct struct_iodesc *IODesc_t; */
|
14 : |
|
|
/* typedef [sml_type("Unsafe.Object.object")] sml_value ML_iodesc_t; */
|
15 : |
|
|
typedef [sml_type("word")] sml_value ML_iodesc_t;
|
16 : |
|
|
typedef [sml_type ("Int32.int")] sml_value ML_unix_pid_t;
|
17 : |
|
|
|
18 : |
|
|
typedef [sml_type("ML_unix_pid_t*word*word")] sml_value ML_process_t;
|
19 : |
|
|
|
20 : |
|
|
(* a combination fork/exec for creating a subprocess; it returns a
|
21 : |
|
|
* triple of the child-process pid, and the standard input and standard
|
22 : |
|
|
* output of the pipes connected to the child.
|
23 : |
|
|
*)
|
24 : |
|
|
(* TODO: how to signal error conditions? *)
|
25 : |
|
|
[sml_context] ML_process_t execute (
|
26 : |
|
|
[in] ML_string_t cmd,
|
27 : |
|
|
[in] ML_string_list_t args,
|
28 : |
|
|
[in] ML_string_list_t env);
|
29 : |
|
|
|
30 : |
jhr |
2984 |
(*
|
31 : |
|
|
wait
|
32 : |
|
|
kill
|
33 : |
|
|
exit
|
34 : |
|
|
*)
|