A module internal to Incremental. Users should see Incremental_intf.
A Balanced_reducer.t is a mutable non-empty array that tracks the result of folding
an associative operation (reduce) over the array as its elements change.
include sig ... endval sexp_of_t : ('a ‑> Sexplib.Sexp.t) ‑> 'a t ‑> Sexplib.Sexp.tinclude Core_kernel.Invariant.S1 with type a t := a tval invariant : 'a Base__.Invariant_intf.inv ‑> 'a t Base__.Invariant_intf.invval create_exn : ?sexp_of_a:('a ‑> Core_kernel.Sexp.t) ‑> unit ‑> len:int ‑> reduce:('a ‑> 'a ‑> 'a) ‑> 'a tcreate_exn ~len ~reduce creates an array containing lenNones and prepares an
incremental fold with reduce. It raises if len < 1.
val set_exn : 'a t ‑> int ‑> 'a ‑> unitset_exn t i a updates the value at index i to Some a. It raises if i is out
of bounds.
val compute_exn : 'a t ‑> 'acompute_exn t computes the value of the fold. It raises if any values of the array
are None.