sig
type 'a t = 'a option
val may : ('a -> unit) -> 'a option -> unit
val map : ('a -> 'b) -> 'a option -> 'b option
val bind : ('a -> 'b option) -> 'a option -> 'b option
val default : 'a -> 'a option -> 'a
val map_default : ('a -> 'b) -> 'b -> 'a option -> 'b
val is_none : 'a option -> bool
val is_some : 'a option -> bool
val get : 'a option -> 'a
val get_exn : 'a option -> exn -> 'a
val enum : 'a option -> 'a Extlib.Enum.t
val of_enum : 'a Extlib.Enum.t -> 'a option
exception No_value
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 print :
('a Extlib.InnerIO.output -> 'b -> unit) ->
'a Extlib.InnerIO.output -> 'b t -> unit
val t_printer : 'a Extlib.Value_printer.t -> 'a t Extlib.Value_printer.t
val maybe_printer :
'a Extlib.Value_printer.t -> 'a t Extlib.Value_printer.t
module Labels :
sig
val may : f:('a -> unit) -> 'a option -> unit
val map : f:('a -> 'b) -> 'a option -> 'b option
val map_default : f:('a -> 'b) -> 'b -> 'a option -> 'b
end
end