sig
type fd_stat =
Path of string
| Socket of Procfs.Process.Inode.t
| Pipe of Procfs.Process.Inode.t
| Inotify
type t = { fd : int; fd_stat : Procfs.Process.Fd.fd_stat; }
val fd_stat : Procfs.Process.Fd.t -> Procfs.Process.Fd.fd_stat
val fd : Procfs.Process.Fd.t -> int
module Fields :
sig
val names : string list
val fd_stat :
(Procfs.Process.Fd.t, Procfs.Process.Fd.fd_stat) Fieldslib.Field.t
val fd : (Procfs.Process.Fd.t, int) Fieldslib.Field.t
val fold :
init:'acc__ ->
fd:('acc__ -> (Procfs.Process.Fd.t, int) Fieldslib.Field.t -> 'acc__) ->
fd_stat:('acc__ ->
(Procfs.Process.Fd.t, Procfs.Process.Fd.fd_stat)
Fieldslib.Field.t -> 'acc__) ->
'acc__
val make_creator :
fd:((Procfs.Process.Fd.t, int) Fieldslib.Field.t ->
'compile_acc__ -> ('input__ -> int) * 'compile_acc__) ->
fd_stat:((Procfs.Process.Fd.t, Procfs.Process.Fd.fd_stat)
Fieldslib.Field.t ->
'compile_acc__ ->
('input__ -> Procfs.Process.Fd.fd_stat) * 'compile_acc__) ->
'compile_acc__ -> ('input__ -> Procfs.Process.Fd.t) * 'compile_acc__
val create :
fd:int -> fd_stat:Procfs.Process.Fd.fd_stat -> Procfs.Process.Fd.t
val iter :
fd:((Procfs.Process.Fd.t, int) Fieldslib.Field.t -> unit) ->
fd_stat:((Procfs.Process.Fd.t, Procfs.Process.Fd.fd_stat)
Fieldslib.Field.t -> unit) ->
unit
val map :
fd:((Procfs.Process.Fd.t, int) Fieldslib.Field.t -> int) ->
fd_stat:((Procfs.Process.Fd.t, Procfs.Process.Fd.fd_stat)
Fieldslib.Field.t -> Procfs.Process.Fd.fd_stat) ->
Procfs.Process.Fd.t
val map_poly :
(Procfs.Process.Fd.t, 'x0) Fieldslib.Field.user -> 'x0 list
val for_all :
fd:((Procfs.Process.Fd.t, int) Fieldslib.Field.t -> bool) ->
fd_stat:((Procfs.Process.Fd.t, Procfs.Process.Fd.fd_stat)
Fieldslib.Field.t -> bool) ->
bool
val exists :
fd:((Procfs.Process.Fd.t, int) Fieldslib.Field.t -> bool) ->
fd_stat:((Procfs.Process.Fd.t, Procfs.Process.Fd.fd_stat)
Fieldslib.Field.t -> bool) ->
bool
val to_list :
fd:((Procfs.Process.Fd.t, int) Fieldslib.Field.t -> 'elem__) ->
fd_stat:((Procfs.Process.Fd.t, Procfs.Process.Fd.fd_stat)
Fieldslib.Field.t -> 'elem__) ->
'elem__ list
module Direct :
sig
val iter :
Procfs.Process.Fd.t ->
fd:((Procfs.Process.Fd.t, int) Fieldslib.Field.t ->
Procfs.Process.Fd.t -> int -> unit) ->
fd_stat:((Procfs.Process.Fd.t, Procfs.Process.Fd.fd_stat)
Fieldslib.Field.t ->
Procfs.Process.Fd.t -> Procfs.Process.Fd.fd_stat -> unit) ->
unit
val fold :
Procfs.Process.Fd.t ->
init:'acc__ ->
fd:('acc__ ->
(Procfs.Process.Fd.t, int) Fieldslib.Field.t ->
Procfs.Process.Fd.t -> int -> 'acc__) ->
fd_stat:('acc__ ->
(Procfs.Process.Fd.t, Procfs.Process.Fd.fd_stat)
Fieldslib.Field.t ->
Procfs.Process.Fd.t ->
Procfs.Process.Fd.fd_stat -> 'acc__) ->
'acc__
end
end
val fd_stat_of_sexp : Sexplib.Sexp.t -> Procfs.Process.Fd.fd_stat
val sexp_of_fd_stat : Procfs.Process.Fd.fd_stat -> Sexplib.Sexp.t
val t_of_sexp : Sexplib.Sexp.t -> Procfs.Process.Fd.t
val sexp_of_t : Procfs.Process.Fd.t -> Sexplib.Sexp.t
end