Up

Module Raw_fd

Signature

val debug : bool
module Kind : sig .. end
module State : sig .. end
type ready_to_result = [
| `Ready
| `Bad_fd
| `Closed
| `Interrupted
]
val sexp_of_ready_to_result : ready_to_result -> Sexplib.Sexp.t
module Watching : sig .. end
module T : sig .. end
include T
type t = {
file_descr
: File_descr.t ;
mutable info
: Core.Std.Info.t ;
mutable kind
: Kind.t ;
mutable supports_nonblock
: bool ;
mutable have_set_nonblock
: bool ;
mutable state
: State.t ;
watching
: Watching.t Read_write.Mutable.t ;
mutable watching_has_changed
: bool ;
mutable num_active_syscalls
: int ;
close_finished
: unit Import.Ivar.t ;
}
val sexp_of_t : t -> Sexplib.Sexp.t
val close_finished : t -> unit Import.Ivar.t
val num_active_syscalls : t -> int
val set_num_active_syscalls : t -> int -> unit
val watching_has_changed : t -> bool
val set_watching_has_changed : t -> bool -> unit
val watching : t -> Watching.t Read_write.Mutable.t
val state : t -> State.t
val set_state : t -> State.t -> unit
val have_set_nonblock : t -> bool
val set_have_set_nonblock : t -> bool -> unit
val supports_nonblock : t -> bool
val set_supports_nonblock : t -> bool -> unit
val kind : t -> Kind.t
val set_kind : t -> Kind.t -> unit
val info : t -> Core.Std.Info.t
val set_info : t -> Core.Std.Info.t -> unit
val file_descr : t -> File_descr.t
module Fields : sig .. end
val equal : t -> t -> bool
val invariant : t -> unit
val to_int : t -> int
val create : ?avoid_nonblock_if_possible:bool -> Kind.t -> File_descr.t -> Core.Std.Info.t -> t
val inc_num_active_syscalls : t -> [>
| `Already_closed
| `Ok
]
val set_state : t -> State.t -> unit
val is_open : t -> bool
val is_closed : t -> bool
val set_nonblock_if_necessary : ?nonblocking:bool -> t -> unit
val with_file_descr_exn : ?nonblocking:bool -> t -> (File_descr.t -> 'a) -> 'a
val with_file_descr : ?nonblocking:bool -> t -> (File_descr.t -> 'a) -> [>
| `Already_closed
| `Error of exn
| `Ok of 'a
]
val syscall : ?nonblocking:bool -> t -> (File_descr.t -> 'a) -> [>
| `Already_closed
| `Error of exn
| `Ok of 'a
]
val syscall_exn : ?nonblocking:bool -> t -> (File_descr.t -> 'a) -> 'a
val syscall_result_exn : ?nonblocking:bool -> t -> 'a -> (File_descr.t -> 'a -> 'b Syscall.Syscall_result.t) -> 'b Syscall.Syscall_result.t