Module Core__Syscall_result
Representation of Unix system call results
Almost no Unix system call returns a negative integer in case of success.
We can use this to encode the result of a system call as either a positive integer value or -errno. This allows us to avoid exceptions for dealing with errors such as EAGAIN. Indeed, in some context we issue a system call in a tight loop that will often fail with EAGAIN and using exceptions to return it is costly.
- type 'a t- = private int
- There is no - [@@deriving sexp_of]on purpose as it could only print the- 'avalue as an integer. Use- [%sexp_of: Int.t]or- [%sexp_of: Unit.t].- exposed only as a performance hack 
module type S = Core__.Syscall_result_intf.S with type 'a syscall_result := 'a tmodule type Arg = Core__.Syscall_result_intf.Arg- val create_error : Core__.Unix_error.t -> _ t
- val unit : Unit.t
- val is_ok : _ t -> bool
- val is_error : _ t -> bool
- val error_exn : _ t -> Core__.Unix_error.t
- val ignore_ok_value : _ t -> Unit.t
- Keep only the error.