Module Prime_option
Functions on the 'a option type.
val get_or : 'a -> 'a option -> 'aget_or dis a variant ofgetwhich mapsNonetodinstead of raising an exception.
val get_else : (unit -> 'a) -> 'a option -> 'aget_else his a variant ofgetwhich callsh ()to handle theNonecase instead of raising an exception.
val search : ('a -> 'b option) -> 'a option -> 'b optionsearch f NoneisNoneandsearch f (Some a)isf a.
val flatten : 'a option option -> 'a optionflattenmapsSome (Some x)toSome xand other values toNone.
Monad
Iteration
val iter : ('a -> unit) -> 'a option -> unititer f (Some a)callsf a, anditer f Nonedoes nothing.
val fmap : ('a -> 'b option) -> 'a option -> 'b optionfmap f NoneisNoneandfmap f (Some a)isf a. Functions asfilter ∘ mapand as monadic bind.
val fold : ('a -> 'b -> 'b) -> 'a option -> 'b -> 'bfold f Noneis the identity function andfold f (Some a)isf a.
Binary Operators
val inter : ('a -> 'b -> 'c) -> 'a option -> 'b option -> 'c optionval union : ('a -> 'a -> 'a) -> 'a option -> 'a option -> 'a optionval compl : ('a -> 'b -> 'b) -> 'a option -> 'b option -> 'b optionval finter : ('a -> 'b -> 'c option) -> 'a option -> 'b option -> 'c optionval funion : ('a -> 'a -> 'a option) -> 'a option -> 'a option -> 'a optionval fcompl : ('a -> 'b -> 'b option) -> 'a option -> 'b option -> 'b option