Module Std.Result

include module type of struct include Stdlib.Result end
type (!'a, !'e) t = ('a, 'e) Stdlib.result =
  1. | Ok of 'a
  2. | Error of 'e
val ok : 'a -> ('a, 'e) Stdlib.result
val error : 'e -> ('a, 'e) Stdlib.result
val value : ('a, 'e) Stdlib.result -> default:'a -> 'a
val get_ok : ('a, 'e) Stdlib.result -> 'a
val get_ok' : ('a, string) Stdlib.result -> 'a
val get_error : ('a, 'e) Stdlib.result -> 'e
val error_to_failure : ('a, string) Stdlib.result -> 'a
val join : (('a, 'e) Stdlib.result, 'e) Stdlib.result -> ('a, 'e) Stdlib.result
val product : ('a, 'e) Stdlib.result -> ('b, 'e) Stdlib.result -> ('a * 'b, 'e) Stdlib.result
val fold : ok:('a -> 'c) -> error:('e -> 'c) -> ('a, 'e) Stdlib.result -> 'c
val retract : ('a, 'a) Stdlib.result -> 'a
val iter : ('a -> unit) -> ('a, 'e) Stdlib.result -> unit
val iter_error : ('e -> unit) -> ('a, 'e) Stdlib.result -> unit
val is_ok : ('a, 'e) Stdlib.result -> bool
val is_error : ('a, 'e) Stdlib.result -> bool
val equal : ok:('a -> 'a -> bool) -> error:('e -> 'e -> bool) -> ('a, 'e) Stdlib.result -> ('a, 'e) Stdlib.result -> bool
val compare : ok:('a -> 'a -> int) -> error:('e -> 'e -> int) -> ('a, 'e) Stdlib.result -> ('a, 'e) Stdlib.result -> int
val to_option : ('a, 'e) Stdlib.result -> 'a option
val to_list : ('a, 'e) Stdlib.result -> 'a list
val to_seq : ('a, 'e) Stdlib.result -> 'a Stdlib.Seq.t
module Syntax : sig ... end
val bind : ('a, 'b) Stdlib.result -> f:('a -> ('c, 'b) Stdlib.result) -> ('c, 'b) Stdlib.result
val map : f:('a -> 'b) -> ('a, 'c) Stdlib.result -> ('b, 'c) Stdlib.result
val map_error : f:('a -> 'b) -> ('c, 'a) Stdlib.result -> ('c, 'b) Stdlib.result
val to_either : ('a, 'b) t -> ('a, 'b) Stdlib.Either.t
val all : ('a, 'b) t list -> ('a list, 'b) t