sig
module Exit :
sig
type error = [ `Exit_non_zero of int ]
type t = (unit, error) Core_kernel.Std.Result.t
val to_string_hum : t -> string
val code : t -> int
val of_code : int -> t
val or_error : t -> unit Core_kernel.Std.Or_error.t
val error_of_sexp : Sexplib.Sexp.t -> error
val __error_of_sexp__ : Sexplib.Sexp.t -> error
val sexp_of_error : error -> Sexplib.Sexp.t
val t_of_sexp : Sexplib.Sexp.t -> t
val sexp_of_t : t -> Sexplib.Sexp.t
end
module Exit_or_signal :
sig
type error = [ `Exit_non_zero of int | `Signal of Core.Signal.t ]
type t = (unit, error) Core_kernel.Std.Result.t
val of_unix : Unix.process_status -> t
val to_string_hum : t -> string
val or_error : t -> unit Core_kernel.Std.Or_error.t
val error_of_sexp : Sexplib.Sexp.t -> error
val __error_of_sexp__ : Sexplib.Sexp.t -> error
val sexp_of_error : error -> Sexplib.Sexp.t
val t_of_sexp : Sexplib.Sexp.t -> t
val sexp_of_t : t -> Sexplib.Sexp.t
end
module Exit_or_signal_or_stop :
sig
type error =
[ `Exit_non_zero of int
| `Signal of Core.Signal.t
| `Stop of Core.Signal.t ]
type t = (unit, error) Core_kernel.Std.Result.t
val of_unix : Unix.process_status -> t
val to_string_hum : t -> string
val or_error : t -> unit Core_kernel.Std.Or_error.t
val error_of_sexp : Sexplib.Sexp.t -> error
val __error_of_sexp__ : Sexplib.Sexp.t -> error
val sexp_of_error : error -> Sexplib.Sexp.t
val t_of_sexp : Sexplib.Sexp.t -> t
val sexp_of_t : t -> Sexplib.Sexp.t
end
val system : string -> Unix_syscalls.Exit_or_signal.t Import.Deferred.t
val system_exn : string -> unit Import.Deferred.t
val getpid : unit -> Core.Std.Pid.t
val getppid : unit -> Core.Std.Pid.t option
val getppid_exn : unit -> Core.Std.Pid.t
val this_process_became_child_of_init :
?poll_delay:Core.Std.Time.Span.t -> unit -> unit Import.Deferred.t
val nice : int -> int
val cores : (unit -> int Import.Deferred.t) Core.Std.Or_error.t
type open_flag =
[ `Append
| `Creat
| `Dsync
| `Excl
| `Noctty
| `Nonblock
| `Rdonly
| `Rdwr
| `Rsync
| `Sync
| `Trunc
| `Wronly ]
type file_perm = int
val openfile :
?perm:Unix_syscalls.file_perm ->
?close_on_exec:bool ->
string -> mode:Unix_syscalls.open_flag list -> Fd.t Import.Deferred.t
val with_file :
?exclusive:[ `Read | `Write ] ->
?perm:Unix_syscalls.file_perm ->
string ->
mode:Unix_syscalls.open_flag list ->
f:(Fd.t -> 'a Import.Deferred.t) -> 'a Import.Deferred.t
module Open_flags :
sig
type t = Core.Core_unix.Open_flags.t
val of_int : int -> t
val to_int_exn : t -> int
val equal : t -> t -> bool
val empty : t
val ( + ) : t -> t -> t
val ( - ) : t -> t -> t
val intersect : t -> t -> t
val complement : t -> t
val is_empty : t -> bool
val do_intersect : t -> t -> bool
val are_disjoint : t -> t -> bool
val rdonly : t
val wronly : t
val rdwr : t
val creat : t
val excl : t
val noctty : t
val trunc : t
val append : t
val nonblock : t
val dsync : t
val sync : t
val rsync : t
val can_read : t -> bool
val can_write : t -> bool
val sexp_of_t : t -> Sexplib.Sexp.t
end
val fcntl_getfl : Fd.t -> Unix_syscalls.Open_flags.t Import.Deferred.t
val fcntl_setfl :
Fd.t -> Unix_syscalls.Open_flags.t -> unit Import.Deferred.t
val close :
?should_close_file_descriptor:bool -> Fd.t -> unit Import.Deferred.t
val lseek :
Fd.t -> int64 -> mode:[< `Cur | `End | `Set ] -> int64 Import.Deferred.t
val truncate : string -> len:int64 -> unit Import.Deferred.t
val ftruncate : Fd.t -> len:int64 -> unit Import.Deferred.t
val fsync : Fd.t -> unit Import.Deferred.t
val fdatasync : Fd.t -> unit Import.Deferred.t
val sync : unit -> unit Import.Deferred.t
val lockf :
?len:Core.Std.Int64.t ->
Fd.t -> [ `Read | `Write ] -> unit Import.Deferred.t
val try_lockf : ?len:Core.Std.Int64.t -> Fd.t -> [ `Read | `Write ] -> bool
val test_lockf : ?len:Core.Std.Int64.t -> Fd.t -> bool
val unlockf : ?len:Core.Std.Int64.t -> Fd.t -> unit
module File_kind :
sig
type t =
[ `Block | `Char | `Directory | `Fifo | `File | `Link | `Socket ]
end
module Stats :
sig
type t = {
dev : int;
ino : int;
kind : Unix_syscalls.File_kind.t;
perm : Unix_syscalls.file_perm;
nlink : int;
uid : int;
gid : int;
rdev : int;
size : int64;
atime : Core.Std.Time.t;
mtime : Core.Std.Time.t;
ctime : Core.Std.Time.t;
}
val ctime : Unix_syscalls.Stats.t -> Core.Std.Time.t
val mtime : Unix_syscalls.Stats.t -> Core.Std.Time.t
val atime : Unix_syscalls.Stats.t -> Core.Std.Time.t
val size : Unix_syscalls.Stats.t -> int64
val rdev : Unix_syscalls.Stats.t -> int
val gid : Unix_syscalls.Stats.t -> int
val uid : Unix_syscalls.Stats.t -> int
val nlink : Unix_syscalls.Stats.t -> int
val perm : Unix_syscalls.Stats.t -> Unix_syscalls.file_perm
val kind : Unix_syscalls.Stats.t -> Unix_syscalls.File_kind.t
val ino : Unix_syscalls.Stats.t -> int
val dev : Unix_syscalls.Stats.t -> int
module Fields :
sig
val names : string list
val ctime :
(Unix_syscalls.Stats.t, Core.Std.Time.t) Fieldslib.Field.t
val mtime :
(Unix_syscalls.Stats.t, Core.Std.Time.t) Fieldslib.Field.t
val atime :
(Unix_syscalls.Stats.t, Core.Std.Time.t) Fieldslib.Field.t
val size : (Unix_syscalls.Stats.t, int64) Fieldslib.Field.t
val rdev : (Unix_syscalls.Stats.t, int) Fieldslib.Field.t
val gid : (Unix_syscalls.Stats.t, int) Fieldslib.Field.t
val uid : (Unix_syscalls.Stats.t, int) Fieldslib.Field.t
val nlink : (Unix_syscalls.Stats.t, int) Fieldslib.Field.t
val perm :
(Unix_syscalls.Stats.t, Unix_syscalls.file_perm)
Fieldslib.Field.t
val kind :
(Unix_syscalls.Stats.t, Unix_syscalls.File_kind.t)
Fieldslib.Field.t
val ino : (Unix_syscalls.Stats.t, int) Fieldslib.Field.t
val dev : (Unix_syscalls.Stats.t, int) Fieldslib.Field.t
val fold :
init:'acc__ ->
dev:('acc__ ->
(Unix_syscalls.Stats.t, int) Fieldslib.Field.t -> 'acc__) ->
ino:('acc__ ->
(Unix_syscalls.Stats.t, int) Fieldslib.Field.t -> 'acc__) ->
kind:('acc__ ->
(Unix_syscalls.Stats.t, Unix_syscalls.File_kind.t)
Fieldslib.Field.t -> 'acc__) ->
perm:('acc__ ->
(Unix_syscalls.Stats.t, Unix_syscalls.file_perm)
Fieldslib.Field.t -> 'acc__) ->
nlink:('acc__ ->
(Unix_syscalls.Stats.t, int) Fieldslib.Field.t -> 'acc__) ->
uid:('acc__ ->
(Unix_syscalls.Stats.t, int) Fieldslib.Field.t -> 'acc__) ->
gid:('acc__ ->
(Unix_syscalls.Stats.t, int) Fieldslib.Field.t -> 'acc__) ->
rdev:('acc__ ->
(Unix_syscalls.Stats.t, int) Fieldslib.Field.t -> 'acc__) ->
size:('acc__ ->
(Unix_syscalls.Stats.t, int64) Fieldslib.Field.t -> 'acc__) ->
atime:('acc__ ->
(Unix_syscalls.Stats.t, Core.Std.Time.t) Fieldslib.Field.t ->
'acc__) ->
mtime:('acc__ ->
(Unix_syscalls.Stats.t, Core.Std.Time.t) Fieldslib.Field.t ->
'acc__) ->
ctime:('acc__ ->
(Unix_syscalls.Stats.t, Core.Std.Time.t) Fieldslib.Field.t ->
'acc__) ->
'acc__
val make_creator :
dev:((Unix_syscalls.Stats.t, int) Fieldslib.Field.t ->
'compile_acc__ -> ('input__ -> int) * 'compile_acc__) ->
ino:((Unix_syscalls.Stats.t, int) Fieldslib.Field.t ->
'compile_acc__ -> ('input__ -> int) * 'compile_acc__) ->
kind:((Unix_syscalls.Stats.t, Unix_syscalls.File_kind.t)
Fieldslib.Field.t ->
'compile_acc__ ->
('input__ -> Unix_syscalls.File_kind.t) * 'compile_acc__) ->
perm:((Unix_syscalls.Stats.t, Unix_syscalls.file_perm)
Fieldslib.Field.t ->
'compile_acc__ ->
('input__ -> Unix_syscalls.file_perm) * 'compile_acc__) ->
nlink:((Unix_syscalls.Stats.t, int) Fieldslib.Field.t ->
'compile_acc__ -> ('input__ -> int) * 'compile_acc__) ->
uid:((Unix_syscalls.Stats.t, int) Fieldslib.Field.t ->
'compile_acc__ -> ('input__ -> int) * 'compile_acc__) ->
gid:((Unix_syscalls.Stats.t, int) Fieldslib.Field.t ->
'compile_acc__ -> ('input__ -> int) * 'compile_acc__) ->
rdev:((Unix_syscalls.Stats.t, int) Fieldslib.Field.t ->
'compile_acc__ -> ('input__ -> int) * 'compile_acc__) ->
size:((Unix_syscalls.Stats.t, int64) Fieldslib.Field.t ->
'compile_acc__ -> ('input__ -> int64) * 'compile_acc__) ->
atime:((Unix_syscalls.Stats.t, Core.Std.Time.t) Fieldslib.Field.t ->
'compile_acc__ ->
('input__ -> Core.Std.Time.t) * 'compile_acc__) ->
mtime:((Unix_syscalls.Stats.t, Core.Std.Time.t) Fieldslib.Field.t ->
'compile_acc__ ->
('input__ -> Core.Std.Time.t) * 'compile_acc__) ->
ctime:((Unix_syscalls.Stats.t, Core.Std.Time.t) Fieldslib.Field.t ->
'compile_acc__ ->
('input__ -> Core.Std.Time.t) * 'compile_acc__) ->
'compile_acc__ ->
('input__ -> Unix_syscalls.Stats.t) * 'compile_acc__
val create :
dev:int ->
ino:int ->
kind:Unix_syscalls.File_kind.t ->
perm:Unix_syscalls.file_perm ->
nlink:int ->
uid:int ->
gid:int ->
rdev:int ->
size:int64 ->
atime:Core.Std.Time.t ->
mtime:Core.Std.Time.t ->
ctime:Core.Std.Time.t -> Unix_syscalls.Stats.t
val map :
dev:((Unix_syscalls.Stats.t, int) Fieldslib.Field.t -> int) ->
ino:((Unix_syscalls.Stats.t, int) Fieldslib.Field.t -> int) ->
kind:((Unix_syscalls.Stats.t, Unix_syscalls.File_kind.t)
Fieldslib.Field.t -> Unix_syscalls.File_kind.t) ->
perm:((Unix_syscalls.Stats.t, Unix_syscalls.file_perm)
Fieldslib.Field.t -> Unix_syscalls.file_perm) ->
nlink:((Unix_syscalls.Stats.t, int) Fieldslib.Field.t -> int) ->
uid:((Unix_syscalls.Stats.t, int) Fieldslib.Field.t -> int) ->
gid:((Unix_syscalls.Stats.t, int) Fieldslib.Field.t -> int) ->
rdev:((Unix_syscalls.Stats.t, int) Fieldslib.Field.t -> int) ->
size:((Unix_syscalls.Stats.t, int64) Fieldslib.Field.t -> int64) ->
atime:((Unix_syscalls.Stats.t, Core.Std.Time.t) Fieldslib.Field.t ->
Core.Std.Time.t) ->
mtime:((Unix_syscalls.Stats.t, Core.Std.Time.t) Fieldslib.Field.t ->
Core.Std.Time.t) ->
ctime:((Unix_syscalls.Stats.t, Core.Std.Time.t) Fieldslib.Field.t ->
Core.Std.Time.t) ->
Unix_syscalls.Stats.t
val iter :
dev:((Unix_syscalls.Stats.t, int) Fieldslib.Field.t -> unit) ->
ino:((Unix_syscalls.Stats.t, int) Fieldslib.Field.t -> unit) ->
kind:((Unix_syscalls.Stats.t, Unix_syscalls.File_kind.t)
Fieldslib.Field.t -> unit) ->
perm:((Unix_syscalls.Stats.t, Unix_syscalls.file_perm)
Fieldslib.Field.t -> unit) ->
nlink:((Unix_syscalls.Stats.t, int) Fieldslib.Field.t -> unit) ->
uid:((Unix_syscalls.Stats.t, int) Fieldslib.Field.t -> unit) ->
gid:((Unix_syscalls.Stats.t, int) Fieldslib.Field.t -> unit) ->
rdev:((Unix_syscalls.Stats.t, int) Fieldslib.Field.t -> unit) ->
size:((Unix_syscalls.Stats.t, int64) Fieldslib.Field.t -> unit) ->
atime:((Unix_syscalls.Stats.t, Core.Std.Time.t) Fieldslib.Field.t ->
unit) ->
mtime:((Unix_syscalls.Stats.t, Core.Std.Time.t) Fieldslib.Field.t ->
unit) ->
ctime:((Unix_syscalls.Stats.t, Core.Std.Time.t) Fieldslib.Field.t ->
unit) ->
unit
val for_all :
dev:((Unix_syscalls.Stats.t, int) Fieldslib.Field.t -> bool) ->
ino:((Unix_syscalls.Stats.t, int) Fieldslib.Field.t -> bool) ->
kind:((Unix_syscalls.Stats.t, Unix_syscalls.File_kind.t)
Fieldslib.Field.t -> bool) ->
perm:((Unix_syscalls.Stats.t, Unix_syscalls.file_perm)
Fieldslib.Field.t -> bool) ->
nlink:((Unix_syscalls.Stats.t, int) Fieldslib.Field.t -> bool) ->
uid:((Unix_syscalls.Stats.t, int) Fieldslib.Field.t -> bool) ->
gid:((Unix_syscalls.Stats.t, int) Fieldslib.Field.t -> bool) ->
rdev:((Unix_syscalls.Stats.t, int) Fieldslib.Field.t -> bool) ->
size:((Unix_syscalls.Stats.t, int64) Fieldslib.Field.t -> bool) ->
atime:((Unix_syscalls.Stats.t, Core.Std.Time.t) Fieldslib.Field.t ->
bool) ->
mtime:((Unix_syscalls.Stats.t, Core.Std.Time.t) Fieldslib.Field.t ->
bool) ->
ctime:((Unix_syscalls.Stats.t, Core.Std.Time.t) Fieldslib.Field.t ->
bool) ->
bool
val exists :
dev:((Unix_syscalls.Stats.t, int) Fieldslib.Field.t -> bool) ->
ino:((Unix_syscalls.Stats.t, int) Fieldslib.Field.t -> bool) ->
kind:((Unix_syscalls.Stats.t, Unix_syscalls.File_kind.t)
Fieldslib.Field.t -> bool) ->
perm:((Unix_syscalls.Stats.t, Unix_syscalls.file_perm)
Fieldslib.Field.t -> bool) ->
nlink:((Unix_syscalls.Stats.t, int) Fieldslib.Field.t -> bool) ->
uid:((Unix_syscalls.Stats.t, int) Fieldslib.Field.t -> bool) ->
gid:((Unix_syscalls.Stats.t, int) Fieldslib.Field.t -> bool) ->
rdev:((Unix_syscalls.Stats.t, int) Fieldslib.Field.t -> bool) ->
size:((Unix_syscalls.Stats.t, int64) Fieldslib.Field.t -> bool) ->
atime:((Unix_syscalls.Stats.t, Core.Std.Time.t) Fieldslib.Field.t ->
bool) ->
mtime:((Unix_syscalls.Stats.t, Core.Std.Time.t) Fieldslib.Field.t ->
bool) ->
ctime:((Unix_syscalls.Stats.t, Core.Std.Time.t) Fieldslib.Field.t ->
bool) ->
bool
val to_list :
dev:((Unix_syscalls.Stats.t, int) Fieldslib.Field.t -> 'elem__) ->
ino:((Unix_syscalls.Stats.t, int) Fieldslib.Field.t -> 'elem__) ->
kind:((Unix_syscalls.Stats.t, Unix_syscalls.File_kind.t)
Fieldslib.Field.t -> 'elem__) ->
perm:((Unix_syscalls.Stats.t, Unix_syscalls.file_perm)
Fieldslib.Field.t -> 'elem__) ->
nlink:((Unix_syscalls.Stats.t, int) Fieldslib.Field.t -> 'elem__) ->
uid:((Unix_syscalls.Stats.t, int) Fieldslib.Field.t -> 'elem__) ->
gid:((Unix_syscalls.Stats.t, int) Fieldslib.Field.t -> 'elem__) ->
rdev:((Unix_syscalls.Stats.t, int) Fieldslib.Field.t -> 'elem__) ->
size:((Unix_syscalls.Stats.t, int64) Fieldslib.Field.t -> 'elem__) ->
atime:((Unix_syscalls.Stats.t, Core.Std.Time.t) Fieldslib.Field.t ->
'elem__) ->
mtime:((Unix_syscalls.Stats.t, Core.Std.Time.t) Fieldslib.Field.t ->
'elem__) ->
ctime:((Unix_syscalls.Stats.t, Core.Std.Time.t) Fieldslib.Field.t ->
'elem__) ->
'elem__ list
val map_poly :
([< `Read | `Set_and_create ], Unix_syscalls.Stats.t, 'x0)
Fieldslib.Field.user -> 'x0 list
module Direct :
sig
val iter :
Unix_syscalls.Stats.t ->
dev:((Unix_syscalls.Stats.t, int) Fieldslib.Field.t ->
Unix_syscalls.Stats.t -> int -> unit) ->
ino:((Unix_syscalls.Stats.t, int) Fieldslib.Field.t ->
Unix_syscalls.Stats.t -> int -> unit) ->
kind:((Unix_syscalls.Stats.t, Unix_syscalls.File_kind.t)
Fieldslib.Field.t ->
Unix_syscalls.Stats.t ->
Unix_syscalls.File_kind.t -> unit) ->
perm:((Unix_syscalls.Stats.t, Unix_syscalls.file_perm)
Fieldslib.Field.t ->
Unix_syscalls.Stats.t ->
Unix_syscalls.file_perm -> unit) ->
nlink:((Unix_syscalls.Stats.t, int) Fieldslib.Field.t ->
Unix_syscalls.Stats.t -> int -> unit) ->
uid:((Unix_syscalls.Stats.t, int) Fieldslib.Field.t ->
Unix_syscalls.Stats.t -> int -> unit) ->
gid:((Unix_syscalls.Stats.t, int) Fieldslib.Field.t ->
Unix_syscalls.Stats.t -> int -> unit) ->
rdev:((Unix_syscalls.Stats.t, int) Fieldslib.Field.t ->
Unix_syscalls.Stats.t -> int -> unit) ->
size:((Unix_syscalls.Stats.t, int64) Fieldslib.Field.t ->
Unix_syscalls.Stats.t -> int64 -> unit) ->
atime:((Unix_syscalls.Stats.t, Core.Std.Time.t)
Fieldslib.Field.t ->
Unix_syscalls.Stats.t -> Core.Std.Time.t -> unit) ->
mtime:((Unix_syscalls.Stats.t, Core.Std.Time.t)
Fieldslib.Field.t ->
Unix_syscalls.Stats.t -> Core.Std.Time.t -> unit) ->
ctime:((Unix_syscalls.Stats.t, Core.Std.Time.t)
Fieldslib.Field.t ->
Unix_syscalls.Stats.t -> Core.Std.Time.t -> unit) ->
unit
val fold :
Unix_syscalls.Stats.t ->
init:'acc__ ->
dev:('acc__ ->
(Unix_syscalls.Stats.t, int) Fieldslib.Field.t ->
Unix_syscalls.Stats.t -> int -> 'acc__) ->
ino:('acc__ ->
(Unix_syscalls.Stats.t, int) Fieldslib.Field.t ->
Unix_syscalls.Stats.t -> int -> 'acc__) ->
kind:('acc__ ->
(Unix_syscalls.Stats.t, Unix_syscalls.File_kind.t)
Fieldslib.Field.t ->
Unix_syscalls.Stats.t ->
Unix_syscalls.File_kind.t -> 'acc__) ->
perm:('acc__ ->
(Unix_syscalls.Stats.t, Unix_syscalls.file_perm)
Fieldslib.Field.t ->
Unix_syscalls.Stats.t ->
Unix_syscalls.file_perm -> 'acc__) ->
nlink:('acc__ ->
(Unix_syscalls.Stats.t, int) Fieldslib.Field.t ->
Unix_syscalls.Stats.t -> int -> 'acc__) ->
uid:('acc__ ->
(Unix_syscalls.Stats.t, int) Fieldslib.Field.t ->
Unix_syscalls.Stats.t -> int -> 'acc__) ->
gid:('acc__ ->
(Unix_syscalls.Stats.t, int) Fieldslib.Field.t ->
Unix_syscalls.Stats.t -> int -> 'acc__) ->
rdev:('acc__ ->
(Unix_syscalls.Stats.t, int) Fieldslib.Field.t ->
Unix_syscalls.Stats.t -> int -> 'acc__) ->
size:('acc__ ->
(Unix_syscalls.Stats.t, int64) Fieldslib.Field.t ->
Unix_syscalls.Stats.t -> int64 -> 'acc__) ->
atime:('acc__ ->
(Unix_syscalls.Stats.t, Core.Std.Time.t)
Fieldslib.Field.t ->
Unix_syscalls.Stats.t -> Core.Std.Time.t -> 'acc__) ->
mtime:('acc__ ->
(Unix_syscalls.Stats.t, Core.Std.Time.t)
Fieldslib.Field.t ->
Unix_syscalls.Stats.t -> Core.Std.Time.t -> 'acc__) ->
ctime:('acc__ ->
(Unix_syscalls.Stats.t, Core.Std.Time.t)
Fieldslib.Field.t ->
Unix_syscalls.Stats.t -> Core.Std.Time.t -> 'acc__) ->
'acc__
end
end
val to_string : Unix_syscalls.Stats.t -> string
val t_of_sexp : Sexplib.Sexp.t -> Unix_syscalls.Stats.t
val sexp_of_t : Unix_syscalls.Stats.t -> Sexplib.Sexp.t
end
val fstat : Fd.t -> Unix_syscalls.Stats.t Import.Deferred.t
val stat : string -> Unix_syscalls.Stats.t Import.Deferred.t
val lstat : string -> Unix_syscalls.Stats.t Import.Deferred.t
val unlink : string -> unit Import.Deferred.t
val remove : string -> unit Import.Deferred.t
val rename : src:string -> dst:string -> unit Import.Deferred.t
val link :
?force:bool ->
target:string -> link_name:string -> unit -> unit Import.Deferred.t
val chmod :
string -> perm:Unix_syscalls.file_perm -> unit Import.Deferred.t
val fchmod : Fd.t -> perm:Unix_syscalls.file_perm -> unit Import.Deferred.t
val chown : string -> uid:int -> gid:int -> unit Import.Deferred.t
val fchown : Fd.t -> uid:int -> gid:int -> unit Import.Deferred.t
val access :
string ->
[ `Exec | `Exists | `Read | `Write ] list ->
(unit, exn) Core.Std.Result.t Import.Deferred.t
val access_exn :
string ->
[ `Exec | `Exists | `Read | `Write ] list -> unit Import.Deferred.t
val set_close_on_exec : Fd.t -> unit
val clear_close_on_exec : Fd.t -> unit
val mkdir :
?p:unit ->
?perm:Unix_syscalls.file_perm -> string -> unit Import.Deferred.t
val rmdir : string -> unit Import.Deferred.t
val chdir : string -> unit Import.Deferred.t
val getcwd : unit -> string Import.Deferred.t
val chroot : string -> unit Import.Deferred.t
type dir_handle = Core.Std.Unix.dir_handle
val opendir : string -> Unix_syscalls.dir_handle Import.Deferred.t
val readdir : Unix_syscalls.dir_handle -> string Import.Deferred.t
val rewinddir : Unix_syscalls.dir_handle -> unit Import.Deferred.t
val closedir : Unix_syscalls.dir_handle -> unit Import.Deferred.t
val pipe :
Core.Std.Info.t ->
([ `Reader of Fd.t ] * [ `Writer of Fd.t ]) Import.Deferred.t
val mkfifo :
?perm:Unix_syscalls.file_perm -> string -> unit Import.Deferred.t
val symlink : src:string -> dst:string -> unit Import.Deferred.t
val readlink : string -> string Import.Deferred.t
val mkstemp : string -> (string * Fd.t) Import.Deferred.t
val mkdtemp : string -> string Import.Deferred.t
type process_times =
Core.Std.Unix.process_times = {
tms_utime : float;
tms_stime : float;
tms_cutime : float;
tms_cstime : float;
}
val times : unit -> Unix_syscalls.process_times
type tm =
Core.Std.Unix.tm = {
tm_sec : int;
tm_min : int;
tm_hour : int;
tm_mday : int;
tm_mon : int;
tm_year : int;
tm_wday : int;
tm_yday : int;
tm_isdst : bool;
}
val time : unit -> float
val gettimeofday : unit -> float
val gmtime : float -> Unix_syscalls.tm
val localtime : float -> Unix_syscalls.tm
val mktime : Unix_syscalls.tm -> float * Unix_syscalls.tm
val utimes :
string -> access:float -> modif:float -> unit Import.Deferred.t
val environment : unit -> string array
val getenv : string -> string option
val getenv_exn : string -> string
val putenv : key:string -> data:string -> unit
val unsetenv : string -> unit
val fork_exec :
prog:string ->
args:string list ->
?use_path:bool ->
?env:string list -> unit -> Core.Std.Pid.t Import.Deferred.t
type wait_on =
[ `Any | `Group of Core.Std.Pid.t | `My_group | `Pid of Core.Std.Pid.t ]
val wait :
Unix_syscalls.wait_on ->
(Core.Std.Pid.t * Unix_syscalls.Exit_or_signal.t) Import.Deferred.t
val wait_nohang :
Unix_syscalls.wait_on ->
(Core.Std.Pid.t * Unix_syscalls.Exit_or_signal.t) option
val wait_untraced :
Unix_syscalls.wait_on ->
(Core.Std.Pid.t * Unix_syscalls.Exit_or_signal_or_stop.t)
Import.Deferred.t
val wait_nohang_untraced :
Unix_syscalls.wait_on ->
(Core.Std.Pid.t * Unix_syscalls.Exit_or_signal_or_stop.t) option
val waitpid :
Core.Std.Pid.t -> Unix_syscalls.Exit_or_signal.t Import.Deferred.t
val waitpid_exn : Core.Std.Pid.t -> unit Import.Deferred.t
module Inet_addr :
sig
type t = Core.Std.Unix.Inet_addr.t
val ( >= ) : t -> t -> bool
val ( <= ) : t -> t -> bool
val ( = ) : t -> t -> bool
val ( > ) : t -> t -> bool
val ( < ) : t -> t -> bool
val ( <> ) : t -> t -> bool
val equal : t -> t -> bool
val min : t -> t -> t
val max : t -> t -> t
val ascending : t -> t -> int
val descending : t -> t -> int
val between : t -> low:t -> high:t -> bool
module Replace_polymorphic_compare :
sig
val ( >= ) : t -> t -> bool
val ( <= ) : t -> t -> bool
val ( = ) : t -> t -> bool
val ( > ) : t -> t -> bool
val ( < ) : t -> t -> bool
val ( <> ) : t -> t -> bool
val equal : t -> t -> bool
val compare : t -> t -> int
val min : t -> t -> t
val max : t -> t -> t
val _squelch_unused_module_warning_ : unit
end
type comparator
val comparator : (t, comparator) Core_kernel.Comparator.t
val validate_lbound :
min:t Core_kernel.Comparable_intf.bound ->
t Core_kernel.Validate.check
val validate_ubound :
max:t Core_kernel.Comparable_intf.bound ->
t Core_kernel.Validate.check
val validate_bound :
min:t Core_kernel.Comparable_intf.bound ->
max:t Core_kernel.Comparable_intf.bound ->
t Core_kernel.Validate.check
module Map :
sig
module Key :
sig
type t = t
val compare : t -> t -> int
val t_of_sexp : Sexplib.Sexp.t -> t
val sexp_of_t : t -> Sexplib.Sexp.t
type comparator = comparator
val comparator : (t, comparator) Core_kernel.Comparator.t_
end
module Tree :
sig
type 'a t =
(Key.t, 'a, Key.comparator) Core_kernel.Core_map.Tree.t
val empty : 'a t
val singleton : Key.t -> 'a -> 'a t
val of_alist :
(Key.t * 'a) list ->
[ `Duplicate_key of Key.t | `Ok of 'a t ]
val of_alist_exn : (Key.t * 'a) list -> 'a t
val of_alist_multi : (Key.t * 'a) list -> 'a list t
val of_alist_fold :
(Key.t * 'a) list -> init:'b -> f:('b -> 'a -> 'b) -> 'b t
val of_alist_reduce :
(Key.t * 'a) list -> f:('a -> 'a -> 'a) -> 'a t
val of_sorted_array :
(Key.t * 'a) array -> 'a t Core_kernel.Or_error.t
val of_sorted_array_unchecked : (Key.t * 'a) array -> 'a t
val of_tree : 'a t -> 'a t
val invariants : 'a t -> bool
val is_empty : 'a t -> bool
val length : 'a t -> int
val add : 'a t -> key:Key.t -> data:'a -> 'a t
val add_multi : 'a list t -> key:Key.t -> data:'a -> 'a list t
val change : 'a t -> Key.t -> ('a option -> 'a option) -> 'a t
val find : 'a t -> Key.t -> 'a option
val find_exn : 'a t -> Key.t -> 'a
val remove : 'a t -> Key.t -> 'a t
val mem : 'a t -> Key.t -> bool
val iter : 'a t -> f:(key:Key.t -> data:'a -> unit) -> unit
val iter2 :
'a t ->
'b t ->
f:(key:Key.t ->
data:[ `Both of 'a * 'b | `Left of 'a | `Right of 'b ] ->
unit) ->
unit
val map : 'a t -> f:('a -> 'b) -> 'b t
val mapi : 'a t -> f:(key:Key.t -> data:'a -> 'b) -> 'b t
val fold :
'a t -> init:'b -> f:(key:Key.t -> data:'a -> 'b -> 'b) -> 'b
val fold_right :
'a t -> init:'b -> f:(key:Key.t -> data:'a -> 'b -> 'b) -> 'b
val filter : 'a t -> f:(key:Key.t -> data:'a -> bool) -> 'a t
val filter_map : 'a t -> f:('a -> 'b option) -> 'b t
val filter_mapi :
'a t -> f:(key:Key.t -> data:'a -> 'b option) -> 'b t
val compare_direct : ('a -> 'a -> int) -> 'a t -> 'a t -> int
val equal : ('a -> 'a -> bool) -> 'a t -> 'a t -> bool
val keys : 'a t -> Key.t list
val data : 'a t -> 'a list
val to_alist : 'a t -> (Key.t * 'a) list
val validate :
name:(Key.t -> string) ->
'a Core_kernel.Validate.check ->
'a t Core_kernel.Validate.check
val merge :
'a t ->
'b t ->
f:(key:Key.t ->
[ `Both of 'a * 'b | `Left of 'a | `Right of 'b ] ->
'c option) ->
'c t
val symmetric_diff :
'a t ->
'a t ->
data_equal:('a -> 'a -> bool) ->
(Key.t * [ `Left of 'a | `Right of 'a | `Unequal of 'a * 'a ])
list
val min_elt : 'a t -> (Key.t * 'a) option
val min_elt_exn : 'a t -> Key.t * 'a
val max_elt : 'a t -> (Key.t * 'a) option
val max_elt_exn : 'a t -> Key.t * 'a
val for_all : 'a t -> f:('a -> bool) -> bool
val exists : 'a t -> f:('a -> bool) -> bool
val fold_range_inclusive :
'a t ->
min:Key.t ->
max:Key.t ->
init:'b -> f:(key:Key.t -> data:'a -> 'b -> 'b) -> 'b
val range_to_alist :
'a t -> min:Key.t -> max:Key.t -> (Key.t * 'a) list
val prev_key : 'a t -> Key.t -> (Key.t * 'a) option
val next_key : 'a t -> Key.t -> (Key.t * 'a) option
val rank : 'a t -> Key.t -> int option
val to_tree : 'a t -> 'a t
val t_of_sexp :
(Sexplib.Sexp.t -> 'a) -> Sexplib.Sexp.t -> 'a t
val sexp_of_t :
('a -> Sexplib.Sexp.t) -> 'a t -> Sexplib.Sexp.t
end
type 'a t = (Key.t, 'a, Key.comparator) Core_kernel.Core_map.t
val empty : 'a t
val singleton : Key.t -> 'a -> 'a t
val of_alist :
(Key.t * 'a) list -> [ `Duplicate_key of Key.t | `Ok of 'a t ]
val of_alist_exn : (Key.t * 'a) list -> 'a t
val of_alist_multi : (Key.t * 'a) list -> 'a list t
val of_alist_fold :
(Key.t * 'a) list -> init:'b -> f:('b -> 'a -> 'b) -> 'b t
val of_alist_reduce :
(Key.t * 'a) list -> f:('a -> 'a -> 'a) -> 'a t
val of_sorted_array :
(Key.t * 'a) array -> 'a t Core_kernel.Or_error.t
val of_sorted_array_unchecked : (Key.t * 'a) array -> 'a t
val of_tree : 'a Tree.t -> 'a t
val invariants : 'a t -> bool
val is_empty : 'a t -> bool
val length : 'a t -> int
val add : 'a t -> key:Key.t -> data:'a -> 'a t
val add_multi : 'a list t -> key:Key.t -> data:'a -> 'a list t
val change : 'a t -> Key.t -> ('a option -> 'a option) -> 'a t
val find : 'a t -> Key.t -> 'a option
val find_exn : 'a t -> Key.t -> 'a
val remove : 'a t -> Key.t -> 'a t
val mem : 'a t -> Key.t -> bool
val iter : 'a t -> f:(key:Key.t -> data:'a -> unit) -> unit
val iter2 :
'a t ->
'b t ->
f:(key:Key.t ->
data:[ `Both of 'a * 'b | `Left of 'a | `Right of 'b ] -> unit) ->
unit
val map : 'a t -> f:('a -> 'b) -> 'b t
val mapi : 'a t -> f:(key:Key.t -> data:'a -> 'b) -> 'b t
val fold :
'a t -> init:'b -> f:(key:Key.t -> data:'a -> 'b -> 'b) -> 'b
val fold_right :
'a t -> init:'b -> f:(key:Key.t -> data:'a -> 'b -> 'b) -> 'b
val filter : 'a t -> f:(key:Key.t -> data:'a -> bool) -> 'a t
val filter_map : 'a t -> f:('a -> 'b option) -> 'b t
val filter_mapi :
'a t -> f:(key:Key.t -> data:'a -> 'b option) -> 'b t
val compare_direct : ('a -> 'a -> int) -> 'a t -> 'a t -> int
val equal : ('a -> 'a -> bool) -> 'a t -> 'a t -> bool
val keys : 'a t -> Key.t list
val data : 'a t -> 'a list
val to_alist : 'a t -> (Key.t * 'a) list
val validate :
name:(Key.t -> string) ->
'a Core_kernel.Validate.check -> 'a t Core_kernel.Validate.check
val merge :
'a t ->
'b t ->
f:(key:Key.t ->
[ `Both of 'a * 'b | `Left of 'a | `Right of 'b ] -> 'c option) ->
'c t
val symmetric_diff :
'a t ->
'a t ->
data_equal:('a -> 'a -> bool) ->
(Key.t * [ `Left of 'a | `Right of 'a | `Unequal of 'a * 'a ])
list
val min_elt : 'a t -> (Key.t * 'a) option
val min_elt_exn : 'a t -> Key.t * 'a
val max_elt : 'a t -> (Key.t * 'a) option
val max_elt_exn : 'a t -> Key.t * 'a
val for_all : 'a t -> f:('a -> bool) -> bool
val exists : 'a t -> f:('a -> bool) -> bool
val fold_range_inclusive :
'a t ->
min:Key.t ->
max:Key.t ->
init:'b -> f:(key:Key.t -> data:'a -> 'b -> 'b) -> 'b
val range_to_alist :
'a t -> min:Key.t -> max:Key.t -> (Key.t * 'a) list
val prev_key : 'a t -> Key.t -> (Key.t * 'a) option
val next_key : 'a t -> Key.t -> (Key.t * 'a) option
val rank : 'a t -> Key.t -> int option
val to_tree : 'a t -> 'a Tree.t
val t_of_sexp : (Sexplib.Sexp.t -> 'a) -> Sexplib.Sexp.t -> 'a t
val sexp_of_t : ('a -> Sexplib.Sexp.t) -> 'a t -> Sexplib.Sexp.t
val compare : ('a -> 'a -> int) -> 'a t -> 'a t -> int
end
module Set :
sig
module Elt :
sig
type t = t
val compare : t -> t -> int
val t_of_sexp : Sexplib.Sexp.t -> t
val sexp_of_t : t -> Sexplib.Sexp.t
type comparator = comparator
val comparator : (t, comparator) Core_kernel.Comparator.t_
end
module Tree :
sig
type t = (Elt.t, Elt.comparator) Core_kernel.Core_set.Tree.t
val length : t -> int
val is_empty : t -> bool
val iter : t -> f:(Elt.t -> unit) -> unit
val fold :
t -> init:'accum -> f:('accum -> Elt.t -> 'accum) -> 'accum
val exists : t -> f:(Elt.t -> bool) -> bool
val for_all : t -> f:(Elt.t -> bool) -> bool
val count : t -> f:(Elt.t -> bool) -> int
val find : t -> f:(Elt.t -> bool) -> Elt.t option
val find_map : t -> f:(Elt.t -> 'a option) -> 'a option
val to_list : t -> Elt.t list
val to_array : t -> Elt.t array
val invariants : t -> bool
val mem : t -> Elt.t -> bool
val add : t -> Elt.t -> t
val remove : t -> Elt.t -> t
val union : t -> t -> t
val inter : t -> t -> t
val diff : t -> t -> t
val compare_direct : t -> t -> int
val equal : t -> t -> bool
val subset : t -> t -> bool
val fold_until :
t ->
init:'b ->
f:('b -> Elt.t -> [ `Continue of 'b | `Stop of 'b ]) -> 'b
val fold_right : t -> init:'b -> f:(Elt.t -> 'b -> 'b) -> 'b
val iter2 :
t ->
t ->
f:([ `Both of Elt.t * Elt.t
| `Left of Elt.t
| `Right of Elt.t ] -> unit) ->
unit
val filter : t -> f:(Elt.t -> bool) -> t
val partition_tf : t -> f:(Elt.t -> bool) -> t * t
val elements : t -> Elt.t list
val min_elt : t -> Elt.t option
val min_elt_exn : t -> Elt.t
val max_elt : t -> Elt.t option
val max_elt_exn : t -> Elt.t
val choose : t -> Elt.t option
val choose_exn : t -> Elt.t
val split : t -> Elt.t -> t * bool * t
val group_by : t -> equiv:(Elt.t -> Elt.t -> bool) -> t list
val find_exn : t -> f:(Elt.t -> bool) -> Elt.t
val find_index : t -> int -> Elt.t option
val remove_index : t -> int -> t
val to_tree : t -> t
val empty : t
val singleton : Elt.t -> t
val union_list : t list -> t
val of_list : Elt.t list -> t
val of_array : Elt.t array -> t
val of_sorted_array : Elt.t array -> t Core_kernel.Or_error.t
val of_sorted_array_unchecked : Elt.t array -> t
val stable_dedup_list : Elt.t list -> Elt.t list
val map :
('a, 'b) Core_kernel.Core_set.Tree.t -> f:('a -> Elt.t) -> t
val filter_map :
('a, 'b) Core_kernel.Core_set.Tree.t ->
f:('a -> Elt.t option) -> t
val of_tree : t -> t
val t_of_sexp : Sexplib.Sexp.t -> t
val sexp_of_t : t -> Sexplib.Sexp.t
val compare : t -> t -> int
end
type t = (Elt.t, Elt.comparator) Core_kernel.Core_set.t
val length : t -> int
val is_empty : t -> bool
val iter : t -> f:(Elt.t -> unit) -> unit
val fold :
t -> init:'accum -> f:('accum -> Elt.t -> 'accum) -> 'accum
val exists : t -> f:(Elt.t -> bool) -> bool
val for_all : t -> f:(Elt.t -> bool) -> bool
val count : t -> f:(Elt.t -> bool) -> int
val find : t -> f:(Elt.t -> bool) -> Elt.t option
val find_map : t -> f:(Elt.t -> 'a option) -> 'a option
val to_list : t -> Elt.t list
val to_array : t -> Elt.t array
val invariants : t -> bool
val mem : t -> Elt.t -> bool
val add : t -> Elt.t -> t
val remove : t -> Elt.t -> t
val union : t -> t -> t
val inter : t -> t -> t
val diff : t -> t -> t
val compare_direct : t -> t -> int
val equal : t -> t -> bool
val subset : t -> t -> bool
val fold_until :
t ->
init:'b ->
f:('b -> Elt.t -> [ `Continue of 'b | `Stop of 'b ]) -> 'b
val fold_right : t -> init:'b -> f:(Elt.t -> 'b -> 'b) -> 'b
val iter2 :
t ->
t ->
f:([ `Both of Elt.t * Elt.t | `Left of Elt.t | `Right of Elt.t ] ->
unit) ->
unit
val filter : t -> f:(Elt.t -> bool) -> t
val partition_tf : t -> f:(Elt.t -> bool) -> t * t
val elements : t -> Elt.t list
val min_elt : t -> Elt.t option
val min_elt_exn : t -> Elt.t
val max_elt : t -> Elt.t option
val max_elt_exn : t -> Elt.t
val choose : t -> Elt.t option
val choose_exn : t -> Elt.t
val split : t -> Elt.t -> t * bool * t
val group_by : t -> equiv:(Elt.t -> Elt.t -> bool) -> t list
val find_exn : t -> f:(Elt.t -> bool) -> Elt.t
val find_index : t -> int -> Elt.t option
val remove_index : t -> int -> t
val to_tree : t -> Tree.t
val empty : t
val singleton : Elt.t -> t
val union_list : t list -> t
val of_list : Elt.t list -> t
val of_array : Elt.t array -> t
val of_sorted_array : Elt.t array -> t Core_kernel.Or_error.t
val of_sorted_array_unchecked : Elt.t array -> t
val stable_dedup_list : Elt.t list -> Elt.t list
val map : ('a, 'b) Core_kernel.Core_set.t -> f:('a -> Elt.t) -> t
val filter_map :
('a, 'b) Core_kernel.Core_set.t -> f:('a -> Elt.t option) -> t
val of_tree : Tree.t -> t
val t_of_sexp : Sexplib.Sexp.t -> t
val sexp_of_t : t -> Sexplib.Sexp.t
val compare : t -> t -> int
end
val of_string : string -> Unix_syscalls.Inet_addr.t
val to_string : Unix_syscalls.Inet_addr.t -> string
val bind_any : Unix_syscalls.Inet_addr.t
val bind_any_inet6 : Unix_syscalls.Inet_addr.t
val localhost : Unix_syscalls.Inet_addr.t
val localhost_inet6 : Unix_syscalls.Inet_addr.t
val inet4_addr_of_int32 : Core.Std.Int32.t -> Unix_syscalls.Inet_addr.t
val inet4_addr_to_int32_exn :
Unix_syscalls.Inet_addr.t -> Core.Std.Int32.t
val of_string_or_getbyname :
string -> Unix_syscalls.Inet_addr.t Import.Deferred.t
val compare :
Unix_syscalls.Inet_addr.t -> Unix_syscalls.Inet_addr.t -> int
val t_of_sexp : Sexplib.Sexp.t -> Unix_syscalls.Inet_addr.t
val sexp_of_t : Unix_syscalls.Inet_addr.t -> Sexplib.Sexp.t
val bin_t : Unix_syscalls.Inet_addr.t Core.Std.Bin_prot.Type_class.t
val bin_read_t :
Unix_syscalls.Inet_addr.t Core.Std.Bin_prot.Read_ml.reader
val bin_read_t_ :
Unix_syscalls.Inet_addr.t Core.Std.Bin_prot.Unsafe_read_c.reader
val bin_read_t__ :
(int -> Unix_syscalls.Inet_addr.t)
Core.Std.Bin_prot.Unsafe_read_c.reader
val bin_reader_t :
Unix_syscalls.Inet_addr.t Core.Std.Bin_prot.Type_class.reader
val bin_size_t : Unix_syscalls.Inet_addr.t Core.Std.Bin_prot.Size.sizer
val bin_write_t :
Unix_syscalls.Inet_addr.t Core.Std.Bin_prot.Write_ml.writer
val bin_write_t_ :
Unix_syscalls.Inet_addr.t Core.Std.Bin_prot.Unsafe_write_c.writer
val bin_writer_t :
Unix_syscalls.Inet_addr.t Core.Std.Bin_prot.Type_class.writer
end
module Cidr :
sig
type t = Core.Core_unix.Cidr.t
val of_string : string -> t
val to_string : t -> string
val multicast : t
val does_match : t -> Core.Std.Unix.Inet_addr.t -> bool
val bin_t : t Core_kernel.Std.Bin_prot.Type_class.t
val bin_read_t : t Core_kernel.Std.Bin_prot.Read_ml.reader
val bin_read_t_ : t Core_kernel.Std.Bin_prot.Unsafe_read_c.reader
val bin_read_t__ :
(int -> t) Core_kernel.Std.Bin_prot.Unsafe_read_c.reader
val bin_reader_t : t Core_kernel.Std.Bin_prot.Type_class.reader
val bin_size_t : t Core_kernel.Std.Bin_prot.Size.sizer
val bin_write_t : t Core_kernel.Std.Bin_prot.Write_ml.writer
val bin_write_t_ : t Core_kernel.Std.Bin_prot.Unsafe_write_c.writer
val bin_writer_t : t Core_kernel.Std.Bin_prot.Type_class.writer
val t_of_sexp : Sexplib.Sexp.t -> t
val sexp_of_t : t -> Sexplib.Sexp.t
end
module Protocol_family : sig type t = Core.Std.Unix.Protocol_family.t end
val socketpair : unit -> Fd.t * Fd.t
module Socket :
sig
module Address :
sig
module Unix :
sig
type t = [ `Unix of string ]
val create : string -> Unix_syscalls.Socket.Address.Unix.t
val to_string : Unix_syscalls.Socket.Address.Unix.t -> string
val compare :
Unix_syscalls.Socket.Address.Unix.t ->
Unix_syscalls.Socket.Address.Unix.t -> int
val t_of_sexp :
Sexplib.Sexp.t -> Unix_syscalls.Socket.Address.Unix.t
val __t_of_sexp__ :
Sexplib.Sexp.t -> Unix_syscalls.Socket.Address.Unix.t
val sexp_of_t :
Unix_syscalls.Socket.Address.Unix.t -> Sexplib.Sexp.t
val bin_t :
Unix_syscalls.Socket.Address.Unix.t
Core.Std.Bin_prot.Type_class.t
val bin_read_t :
Unix_syscalls.Socket.Address.Unix.t
Core.Std.Bin_prot.Read_ml.reader
val bin_read_t_ :
Unix_syscalls.Socket.Address.Unix.t
Core.Std.Bin_prot.Unsafe_read_c.reader
val bin_read_t__ :
(int -> Unix_syscalls.Socket.Address.Unix.t)
Core.Std.Bin_prot.Unsafe_read_c.reader
val bin_reader_t :
Unix_syscalls.Socket.Address.Unix.t
Core.Std.Bin_prot.Type_class.reader
val bin_size_t :
Unix_syscalls.Socket.Address.Unix.t
Core.Std.Bin_prot.Size.sizer
val bin_write_t :
Unix_syscalls.Socket.Address.Unix.t
Core.Std.Bin_prot.Write_ml.writer
val bin_write_t_ :
Unix_syscalls.Socket.Address.Unix.t
Core.Std.Bin_prot.Unsafe_write_c.writer
val bin_writer_t :
Unix_syscalls.Socket.Address.Unix.t
Core.Std.Bin_prot.Type_class.writer
end
module Inet :
sig
type t = [ `Inet of Unix_syscalls.Inet_addr.t * int ]
val create :
Unix_syscalls.Inet_addr.t ->
port:int -> Unix_syscalls.Socket.Address.Inet.t
val create_bind_any :
port:int -> Unix_syscalls.Socket.Address.Inet.t
val addr :
Unix_syscalls.Socket.Address.Inet.t ->
Unix_syscalls.Inet_addr.t
val port : Unix_syscalls.Socket.Address.Inet.t -> int
val to_string : Unix_syscalls.Socket.Address.Inet.t -> string
val compare :
Unix_syscalls.Socket.Address.Inet.t ->
Unix_syscalls.Socket.Address.Inet.t -> int
val t_of_sexp :
Sexplib.Sexp.t -> Unix_syscalls.Socket.Address.Inet.t
val __t_of_sexp__ :
Sexplib.Sexp.t -> Unix_syscalls.Socket.Address.Inet.t
val sexp_of_t :
Unix_syscalls.Socket.Address.Inet.t -> Sexplib.Sexp.t
val bin_t :
Unix_syscalls.Socket.Address.Inet.t
Core.Std.Bin_prot.Type_class.t
val bin_read_t :
Unix_syscalls.Socket.Address.Inet.t
Core.Std.Bin_prot.Read_ml.reader
val bin_read_t_ :
Unix_syscalls.Socket.Address.Inet.t
Core.Std.Bin_prot.Unsafe_read_c.reader
val bin_read_t__ :
(int -> Unix_syscalls.Socket.Address.Inet.t)
Core.Std.Bin_prot.Unsafe_read_c.reader
val bin_reader_t :
Unix_syscalls.Socket.Address.Inet.t
Core.Std.Bin_prot.Type_class.reader
val bin_size_t :
Unix_syscalls.Socket.Address.Inet.t
Core.Std.Bin_prot.Size.sizer
val bin_write_t :
Unix_syscalls.Socket.Address.Inet.t
Core.Std.Bin_prot.Write_ml.writer
val bin_write_t_ :
Unix_syscalls.Socket.Address.Inet.t
Core.Std.Bin_prot.Unsafe_write_c.writer
val bin_writer_t :
Unix_syscalls.Socket.Address.Inet.t
Core.Std.Bin_prot.Type_class.writer
end
type t =
[ `Inet of Unix_syscalls.Inet_addr.t * int | `Unix of string ]
val to_string : [< Unix_syscalls.Socket.Address.t ] -> string
val to_sockaddr :
[< Unix_syscalls.Socket.Address.t ] -> Core.Std.Unix.sockaddr
val t_of_sexp : Sexplib.Sexp.t -> Unix_syscalls.Socket.Address.t
val __t_of_sexp__ :
Sexplib.Sexp.t -> Unix_syscalls.Socket.Address.t
val sexp_of_t : Unix_syscalls.Socket.Address.t -> Sexplib.Sexp.t
val bin_t :
Unix_syscalls.Socket.Address.t Core.Std.Bin_prot.Type_class.t
val bin_read_t :
Unix_syscalls.Socket.Address.t Core.Std.Bin_prot.Read_ml.reader
val bin_read_t_ :
Unix_syscalls.Socket.Address.t
Core.Std.Bin_prot.Unsafe_read_c.reader
val bin_read_t__ :
(int -> Unix_syscalls.Socket.Address.t)
Core.Std.Bin_prot.Unsafe_read_c.reader
val bin_reader_t :
Unix_syscalls.Socket.Address.t
Core.Std.Bin_prot.Type_class.reader
val bin_size_t :
Unix_syscalls.Socket.Address.t Core.Std.Bin_prot.Size.sizer
val bin_write_t :
Unix_syscalls.Socket.Address.t Core.Std.Bin_prot.Write_ml.writer
val bin_write_t_ :
Unix_syscalls.Socket.Address.t
Core.Std.Bin_prot.Unsafe_write_c.writer
val bin_writer_t :
Unix_syscalls.Socket.Address.t
Core.Std.Bin_prot.Type_class.writer
end
module Family :
sig
type 'a t constraint 'a = [< Unix_syscalls.Socket.Address.t ]
val unix :
Unix_syscalls.Socket.Address.Unix.t Unix_syscalls.Socket.Family.t
val inet :
Unix_syscalls.Socket.Address.Inet.t Unix_syscalls.Socket.Family.t
val to_string :
[< Unix_syscalls.Socket.Address.t ] Unix_syscalls.Socket.Family.t ->
string
end
type ('a, 'b) t
constraint 'a = [< `Active | `Bound | `Passive | `Unconnected ]
constraint 'b = [< Unix_syscalls.Socket.Address.t ]
module Type :
sig
type 'a t constraint 'a = [< Unix_syscalls.Socket.Address.t ]
val tcp :
Unix_syscalls.Socket.Address.Inet.t Unix_syscalls.Socket.Type.t
val udp :
Unix_syscalls.Socket.Address.Inet.t Unix_syscalls.Socket.Type.t
val unix :
Unix_syscalls.Socket.Address.Unix.t Unix_syscalls.Socket.Type.t
val unix_dgram :
Unix_syscalls.Socket.Address.Unix.t Unix_syscalls.Socket.Type.t
end
val create :
([< Unix_syscalls.Socket.Address.t ] as 'a)
Unix_syscalls.Socket.Type.t ->
([ `Unconnected ], 'a) Unix_syscalls.Socket.t
val connect :
([ `Unconnected ], [< Unix_syscalls.Socket.Address.t ] as 'a)
Unix_syscalls.Socket.t ->
'a -> ([ `Active ], 'a) Unix_syscalls.Socket.t Import.Deferred.t
val connect_interruptible :
([ `Unconnected ], [< Unix_syscalls.Socket.Address.t ] as 'a)
Unix_syscalls.Socket.t ->
'a ->
interrupt:unit Import.Deferred.t ->
[ `Interrupted | `Ok of ([ `Active ], 'a) Unix_syscalls.Socket.t ]
Import.Deferred.t
val bind :
([ `Unconnected ], [< Unix_syscalls.Socket.Address.t ] as 'a)
Unix_syscalls.Socket.t ->
'a -> ([ `Bound ], 'a) Unix_syscalls.Socket.t Import.Deferred.t
val listen :
?max_pending_connections:int ->
([ `Bound ], [< Unix_syscalls.Socket.Address.t ] as 'a)
Unix_syscalls.Socket.t -> ([ `Passive ], 'a) Unix_syscalls.Socket.t
val accept :
([ `Passive ], [< Unix_syscalls.Socket.Address.t ] as 'a)
Unix_syscalls.Socket.t ->
[ `Ok of ([ `Active ], 'a) Unix_syscalls.Socket.t * 'a
| `Socket_closed ] Import.Deferred.t
val accept_interruptible :
([ `Passive ], [< Unix_syscalls.Socket.Address.t ] as 'a)
Unix_syscalls.Socket.t ->
interrupt:unit Import.Deferred.t ->
[ `Interrupted
| `Ok of ([ `Active ], 'a) Unix_syscalls.Socket.t * 'a
| `Socket_closed ] Import.Deferred.t
val shutdown :
([< `Active | `Bound | `Passive | `Unconnected ],
[< Unix_syscalls.Socket.Address.t ])
Unix_syscalls.Socket.t -> [ `Both | `Receive | `Send ] -> unit
val fd :
([< `Active | `Bound | `Passive | `Unconnected ],
[< Unix_syscalls.Socket.Address.t ])
Unix_syscalls.Socket.t -> Fd.t
val of_fd :
Fd.t ->
([< Unix_syscalls.Socket.Address.t ] as 'a)
Unix_syscalls.Socket.Type.t ->
([< `Active | `Bound | `Passive | `Unconnected ], 'a)
Unix_syscalls.Socket.t
val getsockname :
([< `Active | `Bound | `Passive | `Unconnected ],
[< Unix_syscalls.Socket.Address.t ] as 'a)
Unix_syscalls.Socket.t -> 'a
val getpeername :
([< `Active | `Bound | `Passive | `Unconnected ],
[< Unix_syscalls.Socket.Address.t ] as 'a)
Unix_syscalls.Socket.t -> 'a
module Opt :
sig
type 'a t
val debug : bool Unix_syscalls.Socket.Opt.t
val broadcast : bool Unix_syscalls.Socket.Opt.t
val reuseaddr : bool Unix_syscalls.Socket.Opt.t
val keepalive : bool Unix_syscalls.Socket.Opt.t
val dontroute : bool Unix_syscalls.Socket.Opt.t
val oobinline : bool Unix_syscalls.Socket.Opt.t
val acceptconn : bool Unix_syscalls.Socket.Opt.t
val nodelay : bool Unix_syscalls.Socket.Opt.t
val sndbuf : int Unix_syscalls.Socket.Opt.t
val rcvbuf : int Unix_syscalls.Socket.Opt.t
val error : int Unix_syscalls.Socket.Opt.t
val typ : int Unix_syscalls.Socket.Opt.t
val rcvlowat : int Unix_syscalls.Socket.Opt.t
val sndlowat : int Unix_syscalls.Socket.Opt.t
val linger : int option Unix_syscalls.Socket.Opt.t
val rcvtimeo : float Unix_syscalls.Socket.Opt.t
val sndtimeo : float Unix_syscalls.Socket.Opt.t
val mcast_loop : bool Unix_syscalls.Socket.Opt.t
val mcast_ttl : int Unix_syscalls.Socket.Opt.t
val to_string : 'a Unix_syscalls.Socket.Opt.t -> string
end
val getopt :
([< `Active | `Bound | `Passive | `Unconnected ],
[< Unix_syscalls.Socket.Address.t ])
Unix_syscalls.Socket.t -> 'c Unix_syscalls.Socket.Opt.t -> 'c
val setopt :
([< `Active | `Bound | `Passive | `Unconnected ],
[< Unix_syscalls.Socket.Address.t ])
Unix_syscalls.Socket.t -> 'c Unix_syscalls.Socket.Opt.t -> 'c -> unit
val mcast_join :
?ifname:string ->
([< `Active | `Bound | `Passive | `Unconnected ],
[< Unix_syscalls.Socket.Address.t ] as 'a)
Unix_syscalls.Socket.t -> 'a -> unit
val mcast_leave :
?ifname:string ->
([< `Active | `Bound | `Passive | `Unconnected ],
[< Unix_syscalls.Socket.Address.t ] as 'a)
Unix_syscalls.Socket.t -> 'a -> unit
val sexp_of_t :
(([< `Active | `Bound | `Passive | `Unconnected ] as 'a) ->
Sexplib.Sexp.t) ->
(([< Unix_syscalls.Socket.Address.t ] as 'b) -> Sexplib.Sexp.t) ->
('a, 'b) Unix_syscalls.Socket.t -> Sexplib.Sexp.t
end
module Host :
sig
type t =
Core.Std.Unix.Host.t = {
name : string;
aliases : string array;
family : Unix_syscalls.Protocol_family.t;
addresses : Unix_syscalls.Inet_addr.t array;
}
val getbyname : string -> Unix_syscalls.Host.t option Import.Deferred.t
val getbyname_exn : string -> Unix_syscalls.Host.t Import.Deferred.t
val getbyaddr :
Unix_syscalls.Inet_addr.t ->
Unix_syscalls.Host.t option Import.Deferred.t
val getbyaddr_exn :
Unix_syscalls.Inet_addr.t -> Unix_syscalls.Host.t Import.Deferred.t
val have_address_in_common :
Unix_syscalls.Host.t -> Unix_syscalls.Host.t -> bool
end
val gethostname : unit -> string
val getuid : unit -> int
val geteuid : unit -> int
val getgid : unit -> int
val getegid : unit -> int
val setuid : int -> unit
type error =
Core.Std.Unix.error =
E2BIG
| EACCES
| EAGAIN
| EBADF
| EBUSY
| ECHILD
| EDEADLK
| EDOM
| EEXIST
| EFAULT
| EFBIG
| EINTR
| EINVAL
| EIO
| EISDIR
| EMFILE
| EMLINK
| ENAMETOOLONG
| ENFILE
| ENODEV
| ENOENT
| ENOEXEC
| ENOLCK
| ENOMEM
| ENOSPC
| ENOSYS
| ENOTDIR
| ENOTEMPTY
| ENOTTY
| ENXIO
| EPERM
| EPIPE
| ERANGE
| EROFS
| ESPIPE
| ESRCH
| EXDEV
| EWOULDBLOCK
| EINPROGRESS
| EALREADY
| ENOTSOCK
| EDESTADDRREQ
| EMSGSIZE
| EPROTOTYPE
| ENOPROTOOPT
| EPROTONOSUPPORT
| ESOCKTNOSUPPORT
| EOPNOTSUPP
| EPFNOSUPPORT
| EAFNOSUPPORT
| EADDRINUSE
| EADDRNOTAVAIL
| ENETDOWN
| ENETUNREACH
| ENETRESET
| ECONNABORTED
| ECONNRESET
| ENOBUFS
| EISCONN
| ENOTCONN
| ESHUTDOWN
| ETOOMANYREFS
| ETIMEDOUT
| ECONNREFUSED
| EHOSTDOWN
| EHOSTUNREACH
| ELOOP
| EOVERFLOW
| EUNKNOWNERR of int
exception Unix_error of Unix_syscalls.error * string * string
module Terminal_io :
sig
type t =
Core.Std.Caml.Unix.terminal_io = {
mutable c_ignbrk : bool;
mutable c_brkint : bool;
mutable c_ignpar : bool;
mutable c_parmrk : bool;
mutable c_inpck : bool;
mutable c_istrip : bool;
mutable c_inlcr : bool;
mutable c_igncr : bool;
mutable c_icrnl : bool;
mutable c_ixon : bool;
mutable c_ixoff : bool;
mutable c_opost : bool;
mutable c_obaud : int;
mutable c_ibaud : int;
mutable c_csize : int;
mutable c_cstopb : int;
mutable c_cread : bool;
mutable c_parenb : bool;
mutable c_parodd : bool;
mutable c_hupcl : bool;
mutable c_clocal : bool;
mutable c_isig : bool;
mutable c_icanon : bool;
mutable c_noflsh : bool;
mutable c_echo : bool;
mutable c_echoe : bool;
mutable c_echok : bool;
mutable c_echonl : bool;
mutable c_vintr : char;
mutable c_vquit : char;
mutable c_verase : char;
mutable c_vkill : char;
mutable c_veof : char;
mutable c_veol : char;
mutable c_vmin : int;
mutable c_vtime : int;
mutable c_vstart : char;
mutable c_vstop : char;
}
type setattr_when =
Core.Std.Caml.Unix.setattr_when =
TCSANOW
| TCSADRAIN
| TCSAFLUSH
val tcgetattr : Fd.t -> Unix_syscalls.Terminal_io.t Import.Deferred.t
val tcsetattr :
Unix_syscalls.Terminal_io.t ->
Fd.t ->
mode:Unix_syscalls.Terminal_io.setattr_when -> unit Import.Deferred.t
end
module Passwd :
sig
type t = {
name : string;
passwd : string;
uid : int;
gid : int;
gecos : string;
dir : string;
shell : string;
}
val shell : Unix_syscalls.Passwd.t -> string
val dir : Unix_syscalls.Passwd.t -> string
val gecos : Unix_syscalls.Passwd.t -> string
val gid : Unix_syscalls.Passwd.t -> int
val uid : Unix_syscalls.Passwd.t -> int
val passwd : Unix_syscalls.Passwd.t -> string
val name : Unix_syscalls.Passwd.t -> string
module Fields :
sig
val names : string list
val shell : (Unix_syscalls.Passwd.t, string) Fieldslib.Field.t
val dir : (Unix_syscalls.Passwd.t, string) Fieldslib.Field.t
val gecos : (Unix_syscalls.Passwd.t, string) Fieldslib.Field.t
val gid : (Unix_syscalls.Passwd.t, int) Fieldslib.Field.t
val uid : (Unix_syscalls.Passwd.t, int) Fieldslib.Field.t
val passwd : (Unix_syscalls.Passwd.t, string) Fieldslib.Field.t
val name : (Unix_syscalls.Passwd.t, string) Fieldslib.Field.t
val fold :
init:'acc__ ->
name:('acc__ ->
(Unix_syscalls.Passwd.t, string) Fieldslib.Field.t ->
'acc__) ->
passwd:('acc__ ->
(Unix_syscalls.Passwd.t, string) Fieldslib.Field.t ->
'acc__) ->
uid:('acc__ ->
(Unix_syscalls.Passwd.t, int) Fieldslib.Field.t -> 'acc__) ->
gid:('acc__ ->
(Unix_syscalls.Passwd.t, int) Fieldslib.Field.t -> 'acc__) ->
gecos:('acc__ ->
(Unix_syscalls.Passwd.t, string) Fieldslib.Field.t ->
'acc__) ->
dir:('acc__ ->
(Unix_syscalls.Passwd.t, string) Fieldslib.Field.t -> 'acc__) ->
shell:('acc__ ->
(Unix_syscalls.Passwd.t, string) Fieldslib.Field.t ->
'acc__) ->
'acc__
val make_creator :
name:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t ->
'compile_acc__ -> ('input__ -> string) * 'compile_acc__) ->
passwd:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t ->
'compile_acc__ -> ('input__ -> string) * 'compile_acc__) ->
uid:((Unix_syscalls.Passwd.t, int) Fieldslib.Field.t ->
'compile_acc__ -> ('input__ -> int) * 'compile_acc__) ->
gid:((Unix_syscalls.Passwd.t, int) Fieldslib.Field.t ->
'compile_acc__ -> ('input__ -> int) * 'compile_acc__) ->
gecos:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t ->
'compile_acc__ -> ('input__ -> string) * 'compile_acc__) ->
dir:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t ->
'compile_acc__ -> ('input__ -> string) * 'compile_acc__) ->
shell:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t ->
'compile_acc__ -> ('input__ -> string) * 'compile_acc__) ->
'compile_acc__ ->
('input__ -> Unix_syscalls.Passwd.t) * 'compile_acc__
val create :
name:string ->
passwd:string ->
uid:int ->
gid:int ->
gecos:string ->
dir:string -> shell:string -> Unix_syscalls.Passwd.t
val map :
name:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t ->
string) ->
passwd:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t ->
string) ->
uid:((Unix_syscalls.Passwd.t, int) Fieldslib.Field.t -> int) ->
gid:((Unix_syscalls.Passwd.t, int) Fieldslib.Field.t -> int) ->
gecos:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t ->
string) ->
dir:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t -> string) ->
shell:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t ->
string) ->
Unix_syscalls.Passwd.t
val iter :
name:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t -> unit) ->
passwd:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t ->
unit) ->
uid:((Unix_syscalls.Passwd.t, int) Fieldslib.Field.t -> unit) ->
gid:((Unix_syscalls.Passwd.t, int) Fieldslib.Field.t -> unit) ->
gecos:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t -> unit) ->
dir:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t -> unit) ->
shell:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t -> unit) ->
unit
val for_all :
name:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t -> bool) ->
passwd:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t ->
bool) ->
uid:((Unix_syscalls.Passwd.t, int) Fieldslib.Field.t -> bool) ->
gid:((Unix_syscalls.Passwd.t, int) Fieldslib.Field.t -> bool) ->
gecos:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t -> bool) ->
dir:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t -> bool) ->
shell:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t -> bool) ->
bool
val exists :
name:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t -> bool) ->
passwd:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t ->
bool) ->
uid:((Unix_syscalls.Passwd.t, int) Fieldslib.Field.t -> bool) ->
gid:((Unix_syscalls.Passwd.t, int) Fieldslib.Field.t -> bool) ->
gecos:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t -> bool) ->
dir:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t -> bool) ->
shell:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t -> bool) ->
bool
val to_list :
name:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t ->
'elem__) ->
passwd:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t ->
'elem__) ->
uid:((Unix_syscalls.Passwd.t, int) Fieldslib.Field.t -> 'elem__) ->
gid:((Unix_syscalls.Passwd.t, int) Fieldslib.Field.t -> 'elem__) ->
gecos:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t ->
'elem__) ->
dir:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t ->
'elem__) ->
shell:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t ->
'elem__) ->
'elem__ list
val map_poly :
([< `Read | `Set_and_create ], Unix_syscalls.Passwd.t, 'x0)
Fieldslib.Field.user -> 'x0 list
module Direct :
sig
val iter :
Unix_syscalls.Passwd.t ->
name:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t ->
Unix_syscalls.Passwd.t -> string -> unit) ->
passwd:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t ->
Unix_syscalls.Passwd.t -> string -> unit) ->
uid:((Unix_syscalls.Passwd.t, int) Fieldslib.Field.t ->
Unix_syscalls.Passwd.t -> int -> unit) ->
gid:((Unix_syscalls.Passwd.t, int) Fieldslib.Field.t ->
Unix_syscalls.Passwd.t -> int -> unit) ->
gecos:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t ->
Unix_syscalls.Passwd.t -> string -> unit) ->
dir:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t ->
Unix_syscalls.Passwd.t -> string -> unit) ->
shell:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t ->
Unix_syscalls.Passwd.t -> string -> unit) ->
unit
val fold :
Unix_syscalls.Passwd.t ->
init:'acc__ ->
name:('acc__ ->
(Unix_syscalls.Passwd.t, string) Fieldslib.Field.t ->
Unix_syscalls.Passwd.t -> string -> 'acc__) ->
passwd:('acc__ ->
(Unix_syscalls.Passwd.t, string) Fieldslib.Field.t ->
Unix_syscalls.Passwd.t -> string -> 'acc__) ->
uid:('acc__ ->
(Unix_syscalls.Passwd.t, int) Fieldslib.Field.t ->
Unix_syscalls.Passwd.t -> int -> 'acc__) ->
gid:('acc__ ->
(Unix_syscalls.Passwd.t, int) Fieldslib.Field.t ->
Unix_syscalls.Passwd.t -> int -> 'acc__) ->
gecos:('acc__ ->
(Unix_syscalls.Passwd.t, string) Fieldslib.Field.t ->
Unix_syscalls.Passwd.t -> string -> 'acc__) ->
dir:('acc__ ->
(Unix_syscalls.Passwd.t, string) Fieldslib.Field.t ->
Unix_syscalls.Passwd.t -> string -> 'acc__) ->
shell:('acc__ ->
(Unix_syscalls.Passwd.t, string) Fieldslib.Field.t ->
Unix_syscalls.Passwd.t -> string -> 'acc__) ->
'acc__
end
end
val getbyname :
string -> Unix_syscalls.Passwd.t option Import.Deferred.t
val getbyname_exn : string -> Unix_syscalls.Passwd.t Import.Deferred.t
val getbyuid : int -> Unix_syscalls.Passwd.t option Import.Deferred.t
val getbyuid_exn : int -> Unix_syscalls.Passwd.t Import.Deferred.t
val t_of_sexp : Sexplib.Sexp.t -> Unix_syscalls.Passwd.t
val sexp_of_t : Unix_syscalls.Passwd.t -> Sexplib.Sexp.t
end
module Group :
sig
type t = {
name : string;
passwd : string;
gid : int;
mem : string array;
}
val mem : Unix_syscalls.Group.t -> string array
val gid : Unix_syscalls.Group.t -> int
val passwd : Unix_syscalls.Group.t -> string
val name : Unix_syscalls.Group.t -> string
module Fields :
sig
val names : string list
val mem : (Unix_syscalls.Group.t, string array) Fieldslib.Field.t
val gid : (Unix_syscalls.Group.t, int) Fieldslib.Field.t
val passwd : (Unix_syscalls.Group.t, string) Fieldslib.Field.t
val name : (Unix_syscalls.Group.t, string) Fieldslib.Field.t
val fold :
init:'acc__ ->
name:('acc__ ->
(Unix_syscalls.Group.t, string) Fieldslib.Field.t -> 'acc__) ->
passwd:('acc__ ->
(Unix_syscalls.Group.t, string) Fieldslib.Field.t ->
'acc__) ->
gid:('acc__ ->
(Unix_syscalls.Group.t, int) Fieldslib.Field.t -> 'acc__) ->
mem:('acc__ ->
(Unix_syscalls.Group.t, string array) Fieldslib.Field.t ->
'acc__) ->
'acc__
val make_creator :
name:((Unix_syscalls.Group.t, string) Fieldslib.Field.t ->
'compile_acc__ -> ('input__ -> string) * 'compile_acc__) ->
passwd:((Unix_syscalls.Group.t, string) Fieldslib.Field.t ->
'compile_acc__ -> ('input__ -> string) * 'compile_acc__) ->
gid:((Unix_syscalls.Group.t, int) Fieldslib.Field.t ->
'compile_acc__ -> ('input__ -> int) * 'compile_acc__) ->
mem:((Unix_syscalls.Group.t, string array) Fieldslib.Field.t ->
'compile_acc__ ->
('input__ -> string array) * 'compile_acc__) ->
'compile_acc__ ->
('input__ -> Unix_syscalls.Group.t) * 'compile_acc__
val create :
name:string ->
passwd:string ->
gid:int -> mem:string array -> Unix_syscalls.Group.t
val map :
name:((Unix_syscalls.Group.t, string) Fieldslib.Field.t -> string) ->
passwd:((Unix_syscalls.Group.t, string) Fieldslib.Field.t ->
string) ->
gid:((Unix_syscalls.Group.t, int) Fieldslib.Field.t -> int) ->
mem:((Unix_syscalls.Group.t, string array) Fieldslib.Field.t ->
string array) ->
Unix_syscalls.Group.t
val iter :
name:((Unix_syscalls.Group.t, string) Fieldslib.Field.t -> unit) ->
passwd:((Unix_syscalls.Group.t, string) Fieldslib.Field.t -> unit) ->
gid:((Unix_syscalls.Group.t, int) Fieldslib.Field.t -> unit) ->
mem:((Unix_syscalls.Group.t, string array) Fieldslib.Field.t ->
unit) ->
unit
val for_all :
name:((Unix_syscalls.Group.t, string) Fieldslib.Field.t -> bool) ->
passwd:((Unix_syscalls.Group.t, string) Fieldslib.Field.t -> bool) ->
gid:((Unix_syscalls.Group.t, int) Fieldslib.Field.t -> bool) ->
mem:((Unix_syscalls.Group.t, string array) Fieldslib.Field.t ->
bool) ->
bool
val exists :
name:((Unix_syscalls.Group.t, string) Fieldslib.Field.t -> bool) ->
passwd:((Unix_syscalls.Group.t, string) Fieldslib.Field.t -> bool) ->
gid:((Unix_syscalls.Group.t, int) Fieldslib.Field.t -> bool) ->
mem:((Unix_syscalls.Group.t, string array) Fieldslib.Field.t ->
bool) ->
bool
val to_list :
name:((Unix_syscalls.Group.t, string) Fieldslib.Field.t ->
'elem__) ->
passwd:((Unix_syscalls.Group.t, string) Fieldslib.Field.t ->
'elem__) ->
gid:((Unix_syscalls.Group.t, int) Fieldslib.Field.t -> 'elem__) ->
mem:((Unix_syscalls.Group.t, string array) Fieldslib.Field.t ->
'elem__) ->
'elem__ list
val map_poly :
([< `Read | `Set_and_create ], Unix_syscalls.Group.t, 'x0)
Fieldslib.Field.user -> 'x0 list
module Direct :
sig
val iter :
Unix_syscalls.Group.t ->
name:((Unix_syscalls.Group.t, string) Fieldslib.Field.t ->
Unix_syscalls.Group.t -> string -> unit) ->
passwd:((Unix_syscalls.Group.t, string) Fieldslib.Field.t ->
Unix_syscalls.Group.t -> string -> unit) ->
gid:((Unix_syscalls.Group.t, int) Fieldslib.Field.t ->
Unix_syscalls.Group.t -> int -> unit) ->
mem:((Unix_syscalls.Group.t, string array) Fieldslib.Field.t ->
Unix_syscalls.Group.t -> string array -> unit) ->
unit
val fold :
Unix_syscalls.Group.t ->
init:'acc__ ->
name:('acc__ ->
(Unix_syscalls.Group.t, string) Fieldslib.Field.t ->
Unix_syscalls.Group.t -> string -> 'acc__) ->
passwd:('acc__ ->
(Unix_syscalls.Group.t, string) Fieldslib.Field.t ->
Unix_syscalls.Group.t -> string -> 'acc__) ->
gid:('acc__ ->
(Unix_syscalls.Group.t, int) Fieldslib.Field.t ->
Unix_syscalls.Group.t -> int -> 'acc__) ->
mem:('acc__ ->
(Unix_syscalls.Group.t, string array) Fieldslib.Field.t ->
Unix_syscalls.Group.t -> string array -> 'acc__) ->
'acc__
end
end
val getbyname :
string -> Unix_syscalls.Group.t option Import.Deferred.t
val getbyname_exn : string -> Unix_syscalls.Group.t Import.Deferred.t
val getbygid : int -> Unix_syscalls.Group.t option Import.Deferred.t
val getbygid_exn : int -> Unix_syscalls.Group.t Import.Deferred.t
val t_of_sexp : Sexplib.Sexp.t -> Unix_syscalls.Group.t
val sexp_of_t : Unix_syscalls.Group.t -> Sexplib.Sexp.t
end
val getlogin : unit -> string Import.Deferred.t
val wordexp :
(?flags:[ `No_cmd | `Show_err | `Undef ] list ->
string -> string array Import.Deferred.t)
Core.Std.Or_error.t
val wait_on_of_sexp : Sexplib.Sexp.t -> Unix_syscalls.wait_on
val __wait_on_of_sexp__ : Sexplib.Sexp.t -> Unix_syscalls.wait_on
val sexp_of_wait_on : Unix_syscalls.wait_on -> Sexplib.Sexp.t
val error_of_sexp : Sexplib.Sexp.t -> Unix_syscalls.error
val sexp_of_error : Unix_syscalls.error -> Sexplib.Sexp.t
end