Module Preface_make.Closed

Building a Preface_specs.Closed

Using the minimal definition

Using dimap and closed

Build a Preface_specs.CLOSED using Preface_specs.Closed.WITH_DIMAP_AND_CLOSED.

Standard method, using the minimal definition of an alt to derive its full API.

Using contramap_fst, map_snd and closed

Build a Preface_specs.CLOSED using Preface_specs.Closed.WITH_CONTRAMAP_FST_AND_MAP_SND_AND_CLOSED.

Standard method, using the minimal definition of an alt to derive its full API.

Using closed over a Profunctor

Build a Preface_specs.CLOSED over a Preface_specs.PROFUNCTOR using Preface_specs.Closed.WITH_CLOSED.

Standard method, using the minimal definition of an alt to derive its full API.

module Over_profunctor_via_closed (P : Preface_specs.Profunctor.CORE) (C : Preface_specs.Closed.WITH_CLOSED with type ('a, 'b) t = ('a, 'b) P.t) : Preface_specs.CLOSED with type ('a, 'b) t = ('a, 'b) C.t

Closed Algebra

Construction of Preface_specs.CLOSED by combining them.

Composition

Right-to-left composition of Preface_specs.CLOSED.

Manual construction

Advanced way to build a Preface_specs.CLOSED, constructing and assembling a component-by-component of Preface_specs.CLOSED. (In order to provide your own implementation for some features.)

Grouping of all components

module Via (Core : Preface_specs.Closed.CORE) (Operation : Preface_specs.Closed.OPERATION with type ('a, 'b) t = ('a, 'b) Core.t) : Preface_specs.CLOSED with type ('a, 'b) t = ('a, 'b) Operation.t

Building Core

Deriving Operation