Parameter Base.Container.Make.1-T

type 'a t
type 'a elt
val fold : 'a t ‑> init:'accum ‑> f:('accum ‑> 'a elt ‑> 'accum) ‑> 'accum
val iter : [ `Define_using_fold | `Custom of 'a t ‑> f:('a elt ‑> unit) ‑> unit ]

The iter argument to Container.Make says how to implement the container's iter function. `Define_using_fold means to define iter via:


        iter t ~f = Container.iter ~fold t ~f
      

`Custom overrides the default implementation, presumably with something more efficient. Several other functions returned by Container.Make are defined in terms of iter, so passing in a more efficient iter will improve their efficiency as well.