Preface_make.Indexed_foldableBuilding an Preface_specs.INDEXED_FOLDABLE
Build a Preface_specs.INDEXED_FOLDABLE using Preface_specs.Indexed_foldable.WITH_FOLD_MAP.
Standard method, using the minimal definition of an alt to derive its full API.
module Via_fold_map
(Req : Preface_specs.Indexed_foldable.WITH_FOLD_MAP) :
Preface_specs.INDEXED_FOLDABLE with type ('a, 'index) t = ('a, 'index) Req.tBuild a Preface_specs.INDEXED_FOLDABLE using Preface_specs.Indexed_foldable.WITH_FOLD_RIGHT.
Standard method, using the minimal definition of an alt to derive its full API.
module Via_fold_right
(Req : Preface_specs.Indexed_foldable.WITH_FOLD_RIGHT) :
Preface_specs.INDEXED_FOLDABLE with type ('a, 'index) t = ('a, 'index) Req.tAdvanced way to build a Preface_specs.INDEXED_FOLDABLE, constructing and assembling a component-by-component of Preface_specs.INDEXED_FOLDABLE. (In order to provide your own implementation for some features.)
module Via
(C : Preface_specs.Indexed_foldable.CORE)
(O :
Preface_specs.Indexed_foldable.OPERATION
with type ('a, 'index) t = ('a, 'index) C.t) :
Preface_specs.INDEXED_FOLDABLE with type ('a, 'index) t = ('a, 'index) O.tmodule Core_via_fold_right
(Req : Preface_specs.Indexed_foldable.WITH_FOLD_RIGHT) :
Preface_specs.Indexed_foldable.CORE
with type ('a, 'index) t = ('a, 'index) Req.tmodule Core_via_fold_map
(Req : Preface_specs.Indexed_foldable.WITH_FOLD_MAP) :
Preface_specs.Indexed_foldable.CORE
with type ('a, 'index) t = ('a, 'index) Req.tmodule Operation
(C : Preface_specs.Indexed_foldable.CORE) :
Preface_specs.Indexed_foldable.OPERATION
with type ('a, 'index) t = ('a, 'index) C.t