Module BatLazyList.Exceptionless

module Exceptionless: sig .. end

Exceptionless counterparts for error-raising operations


val find : ('a -> bool) -> 'a BatLazyList.t -> 'a option

find p l returns Some x where x is the first element of l such that p x returns true or None if such element as not been found.

val rfind : ('a -> bool) -> 'a BatLazyList.t -> 'a option

rfind p l returns Some x where x is the last element of l such that p x returns true or None if such element as not been found.

val findi : (int -> 'a -> bool) -> 'a BatLazyList.t -> (int * 'a) option

findi p e l returns Some (i, ai) where ai and i are respectively the first element of l and its index, such that p i ai is true, or None if no such element has been found.

val rfindi : (int -> 'a -> bool) -> 'a BatLazyList.t -> (int * 'a) option

rfindi p e l returns Some (i, ai) where ai and i are respectively the last element of l and its index, such that p i ai is true, or None if no such element has been found.

val split_at : int ->
'a BatLazyList.t ->
[ `Invalid_index of int | `Ok of 'a BatLazyList.t * 'a BatLazyList.t ]

Whenever n is inside of l size bounds, split_at n l returns `Ok (l1,l2), where l1 contains the first n elements of l and l2 contains the others. Otherwise, returns `Invalid_index n

val at : 'a BatLazyList.t -> int -> [ `Invalid_index of int | `Ok of 'a ]

If n is inside the bounds of l, at l n returns `Ok x, where x is the n-th element of the list l. Otherwise, returns `Invalid_index n.

val assoc : 'a -> ('a * 'b) BatLazyList.t -> 'b option

assoc a l returns Some b where b is the value associated with key a in the list of pairs l. That is, assoc a [ ...; (a,b); ...] = Some b if (a,b) is the leftmost binding of a in list l. Return None if there is no value associated with a in the list l.

val assq : 'a -> ('a * 'b) BatLazyList.t -> 'b option

As BatLazyList.Exceptionless.assoc but with physical equality