CCOptSourcePrevious Option module
include module type of CCOptionmap_or ~default f o is f x if o = Some x, default otherwise.
map_lazy default_fn f o is f x if o = Some x, default_fn () otherwise.
flat_map_l f o is [] if o is None, or f x if o is Some x.
Kleisli composition. Monadic equivalent of CCFun.compose
map2 f o1 o2 maps 'a option and 'b option to a 'c option using f.
fold f init o is f init x if o is Some x, or init if o is None. Fold on 0 or 1 element.
filter f o returns Some x if o is Some x and f x is true, or None if f x is false or if o is None. Filter on 0 or 1 element.
if_ f x is Some x if f x, None otherwise.
exists f o returns true iff there exists an element for which the provided function f evaluates to true.
for_all f o returns true iff the provided function f evaluates to true for all elements.
get_or ~default o extracts the value from o, or returns default if o is None.
apply_or f x returns the original x if f fails, or unwraps f x if it succeeds. Useful for piping preprocessing functions together (such as string processing), turning functions like "remove" into "remove_if_it_exists".
get_exn_or msg o returns x if o is Some x or fails with Invalid_argument msg if o is None.
get_lazy default_fn o unwraps o, but if o is None it returns default_fn () instead.
sequence_l [x1; x2; …; xn] returns Some [y1; y2; …; yn] if every xi is Some yi. Otherwise, if the list contains at least one None, the result is None.
wrap ?handler f x calls f x and returns Some y if f x = y. If f x raises any exception, the result is None. This can be useful to wrap functions such as Map.S.find.
wrap2 ?handler f x y is similar to wrap but for binary functions.
or_lazy ~else_ o is o if o is Some _, else_ () if o is None.
choice lo returns the first non-None element of the list lo, or None.
return_if b x applies Some or None depending on the boolean b. More precisely, return_if false x is None, and return_if true x is Some x.
include module type of Infixf <*> o returns Some (f x) if o is Some x and None if o is None.
of_list l returns Some x (x being the head of the list l), or None if l is the empty list.
to_result e o returns Ok x if o is Some x, or Error e if o is None.
to_result_lazy f o returns Ok x if o is Some x or Error f if o is None.
of_result result returns an option from a result.
choice_iter iter is similar to choice, but works on iter. It returns the first Some x occurring in iter, or None otherwise.
choice_seq seq works on Seq.t. It returns the first Some x occurring in seq, or None otherwise.
to_gen o is o as a gen. Some x is the singleton gen containing x and None is the empty gen.
to_iter o returns an internal iterator, like in the library Iter.