type 'a t = 'a option = The type for option values. Either None or a value Some v.
val none : 'a optionnone is None.
val some : 'a -> 'a optionsome v is Some v.
val value : 'a option -> default:'a -> 'avalue o ~default is v if o is Some v and default otherwise.
val get : 'a option -> 'aget o is v if o is Some v and
- raises Invalid_argument
otherwise.
val bind : 'a option -> ('a -> 'b option) -> 'b optionbind o f is Some (f v) if o is Some v and None if o is None.
val join : 'a option option -> 'a optionjoin oo is Some v if oo is Some (Some v) and None otherwise.
val map : ('a -> 'b) -> 'a option -> 'b optionmap f o is None if o is None and Some (f v) is o is Some v.
val fold : none:'a -> some:('b -> 'a) -> 'b option -> 'afold ~none ~some o is none if o is None and some v if o is Some v.
val iter : ('a -> unit) -> 'a option -> unititer f o is f v if o is Some v and () otherwise.
Predicates and comparisons
val is_none : 'a option -> boolis_none o is true iff o is None.
val is_some : 'a option -> boolis_some o is true iff o is Some o.
val equal : ('a -> 'a -> bool) -> 'a option -> 'a option -> boolequal eq o0 o1 is true iff o0 and o1 are both None or if they are Some v0 and Some v1 and eq v0 v1 is true.
val compare : ('a -> 'a -> int) -> 'a option -> 'a option -> intcompare cmp o0 o1 is a total order on options using cmp to compare values wrapped by Some _. None is smaller than Some _ values.
val to_result : none:'e -> 'a option -> ('a, 'e) Stdlib.resultto_result ~none o is Ok v if o is Some v and Error none otherwise.
val to_list : 'a option -> 'a listto_list o is [] if o is None and [v] if o is Some v.