Provides generic signatures for containers that support indexed iteration (iteri
,
foldi
, ...). In principle, any container that has iter
can also implement iteri
,
but the idea is that Indexed_container_intf
should be included only for containers
that have a meaningful underlying ordering.
module type S1 = Base__.Indexed_container_intf.S1
Generic definitions of foldi
and iteri
in terms of fold
.
E.g., iteri ~fold t ~f = ignore (fold t ~init:0 ~f:(fun i x -> f i x; i + 1))
.
val foldi : fold:('t, 'a, 'accum) Base__.Indexed_container_intf.fold ‑> ('t, 'a, 'accum) Base__.Indexed_container_intf.foldi
val iteri : fold:('t, 'a, int) Base__.Indexed_container_intf.fold ‑> ('t, 'a) Base__.Indexed_container_intf.iteri
Generic definitions of indexed container operations in terms of foldi
.
val counti : foldi:('t, 'a, int) Base__.Indexed_container_intf.foldi ‑> 't ‑> f:(int ‑> 'a ‑> bool) ‑> int
Generic definitions of indexed container operations in terms of iteri
.
val existsi : iteri:('t, 'a) Base__.Indexed_container_intf.iteri ‑> 't ‑> f:(int ‑> 'a ‑> bool) ‑> bool
val for_alli : iteri:('t, 'a) Base__.Indexed_container_intf.iteri ‑> 't ‑> f:(int ‑> 'a ‑> bool) ‑> bool
val findi : iteri:('t, 'a) Base__.Indexed_container_intf.iteri ‑> 't ‑> f:(int ‑> 'a ‑> bool) ‑> (int * 'a) option
val find_mapi : iteri:('t, 'a) Base__.Indexed_container_intf.iteri ‑> 't ‑> f:(int ‑> 'a ‑> 'b option) ‑> 'b option