Module Base.Container_intf

This file has generic signatures for container data structures, with standard functions (iter, fold, exists, for_all, ...) that one would expect to find in any container. The idea is to include Container.S0 or Container.S1 in the signature for every container-like data structure (Array, List, String, ...) to ensure a consistent interface.

module Export : sig ... end
include Export
module Continue_or_stop = Export.Continue_or_stop

Continue_or_stop.t is used by the f argument to fold_until in order to indicate whether folding should continue, or stop early.

module Finished_or_stopped_early = Export.Finished_or_stopped_early

Finished_or_stopped_early.t is returned by fold_until to indicate whether f requested the fold stop, or if the fold completed.

module type S0 : sig ... end

Signature for monomorphic container, e.g., string.

module type S0_phantom : sig ... end
module type S1 : sig ... end

Signature for polymorphic container, e.g., 'a list or 'a array.

module type S1_phantom_invariant : sig ... end
module type S1_phantom : sig ... end
module type Generic : sig ... end
module type Generic_phantom : sig ... end
module type Make_gen_arg : sig ... end
module type Make_arg : Make_gen_arg with type elt := a Monad.Ident.t
module type Make0_arg : sig ... end
module type Container : sig ... end