Home My Page Projects Code Snippets Project Openings SML/NJ
Summary Activity Forums Tracker Lists Tasks Docs Surveys News SCM Files

SCM Repository

[smlnj] View of /sml/branches/rt-transition/idl-specs/sml-basis-unix.idl
ViewVC logotype

View of /sml/branches/rt-transition/idl-specs/sml-basis-unix.idl

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2985 - (download) (annotate)
Sun Apr 13 21:40:17 2008 UTC (12 years, 9 months ago) by jhr
File size: 978 byte(s)
  Working on Unix spec.
(* sml-basis-unix.idl
 *
 * COPYRIGHT (c) 2008 The Fellowship of SML/NJ (http://www.smlnj.org)
 * All rights reserved.
 *
 * The IDL spec to support the Unix module of the SML Basis Library.
 *)

sml_structure ("SMLBasisUnix");
sml_signature ("SML_BASIS_UNIX");
clib_name ("SMLBasisUnix");

/* typedef [ptr] struct struct_iodesc *IODesc_t; */
/* typedef [sml_type("Unsafe.Object.object")] sml_value ML_iodesc_t; */
typedef [sml_type("word")] sml_value ML_iodesc_t;
typedef [sml_type ("Int32.int")] sml_value ML_unix_pid_t;

typedef [sml_type("ML_unix_pid_t*word*word")] sml_value ML_process_t;

(* a combination fork/exec for creating a subprocess; it returns a
 * triple of the child-process pid, and the standard input and standard
 * output of the pipes connected to the child.
 *)
(* TODO: how to signal error conditions? *)
[sml_context] ML_process_t execute (
    [in] ML_string_t cmd,
    [in] ML_string_list_t args,
    [in] ML_string_list_t env);

(*
wait
kill
exit
*)

root@smlnj-gforge.cs.uchicago.edu
ViewVC Help
Powered by ViewVC 1.0.0