Module 1-M.Unix

module File_descr : sig ... end
module Exit : sig ... end
module Exit_or_signal : sig ... end
val getpid : Core_kernel__.Import.unit -> Core_kernel.Pid.t
val close : ?⁠restart:Core_kernel__.Import.bool -> File_descr.t -> Core_kernel__.Import.unit
val open_process_in : Core_kernel__.Import.string -> Core_kernel__.Import.In_channel.t
val close_process_in : Core_kernel__.Import.In_channel.t -> Exit_or_signal.t
val in_channel_of_descr : File_descr.t -> Core_kernel__.Import.In_channel.t
val putenv : key:Core_kernel__.Import.string -> data:Core_kernel__.Import.string -> Core_kernel__.Import.unit
val unsetenv : Core_kernel__.Import.string -> Core_kernel__.Import.unit
val unsafe_getenv : Core_kernel__.Import.string -> Core_kernel__.Import.string Core_kernel__.Import.option
type env = [
| `Replace of (Core_kernel__.Import.string * Core_kernel__.Import.string) Core_kernel__.Import.list
| `Extend of (Core_kernel__.Import.string * Core_kernel__.Import.string) Core_kernel__.Import.list
| `Override of (Core_kernel__.Import.string * Core_kernel__.Import.string Core_kernel__.Import.option) Core_kernel__.Import.list
| `Replace_raw of Core_kernel__.Import.string Core_kernel__.Import.list
]
val exec : prog:Core_kernel__.Import.string -> argv:Core_kernel__.Import.string Core_kernel__.Import.list -> ?⁠use_path:Core_kernel__.Import.bool -> ?⁠env:env -> Core_kernel__.Import.unit -> Core_kernel__.Std_internal.never_returns
module Process_info : sig ... end
val create_process_env : ?⁠working_dir:Core_kernel__.Import.string -> ?⁠prog_search_path:Core_kernel__.Import.string Core_kernel__.Import.list -> ?⁠argv0:Core_kernel__.Import.string -> prog:Core_kernel__.Import.string -> args:Core_kernel__.Import.string Core_kernel__.Import.list -> env:env -> Core_kernel__.Import.unit -> Process_info.t
type wait_on = [
| `Any
| `Group of Core_kernel.Pid.t
| `My_group
| `Pid of Core_kernel.Pid.t
]
val wait : ?⁠restart:Core_kernel__.Import.bool -> wait_on -> Core_kernel.Pid.t * Exit_or_signal.t