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 ... endinclude Exportmodule Continue_or_stop = Export.Continue_or_stopContinue_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_earlyFinished_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_phantom : sig ... endmodule type S1_phantom_invariant : sig ... endmodule type S1_phantom : sig ... endmodule type Generic : sig ... endmodule type Generic_phantom : sig ... endmodule type Make_gen_arg : sig ... endmodule type Make_arg : Make_gen_arg with type a elt := a Monad.Ident.tmodule type Make0_arg : sig ... endmodule type Container : sig ... end