val length : t -> int
val is_empty : t -> bool
iter must allow exceptions raised in
f to escape, terminating the iteration cleanly. The same holds for all functions below taking an
fold t ~init ~f returns
f (... f (f (f init e1) e2) e3 ...) en, where
e1..en are the elements of
val fold_result : t -> init:'accum -> f:( 'accum -> elt -> ( 'accum, 'e ) Result.t ) -> ( 'accum, 'e ) Result.t
fold_result t ~init ~f is a short-circuiting version of
fold that runs in the
Result monad. If
f returns an
Error _, that value is returned without any additional invocations of
val fold_until : t -> init:'accum -> f: ( 'accum -> elt -> ( 'accum, 'final ) Base__Container_intf.Export.Continue_or_stop.t ) -> finish:( 'accum -> 'final ) -> 'final
fold_until t ~init ~f ~finish is a short-circuiting version of
Stop _ the computation ceases and results in that value. If
Continue _, the fold will proceed. If
f never returns
Stop _, the final result is computed by
true if and only if there exists an element for which the provided function evaluates to
true. This is a short-circuiting operation.
true if and only if the provided function evaluates to
true for all elements. This is a short-circuiting operation.
Returns the number of elements for which the provided function evaluates to true.
Returns the sum of
f i for all
i in the container.
Returns as an
option the first element for which
f evaluates to true.
Returns the first evaluation of
f that returns
Some, and returns
None if there is no such element.
Returns a min (resp. max) element from the collection using the provided
compare function. In case of a tie, the first element encountered while traversing the collection is returned. The implementation uses
fold so it has the same complexity as
None iff the collection is empty.