Preface_make.Choice
Building a Preface_specs.Choice
Build a Preface_specs.CHOICE
using Preface_specs.Choice.WITH_DIMAP_AND_LEFT
.
Standard method, using the minimal definition of an alt to derive its full API.
module Via_dimap_and_left
(Req : Preface_specs.Choice.WITH_DIMAP_AND_LEFT) :
Preface_specs.CHOICE with type ('a, 'b) t = ('a, 'b) Req.t
Build a Preface_specs.CHOICE
using Preface_specs.Choice.WITH_DIMAP_AND_RIGHT
.
Standard method, using the minimal definition of an alt to derive its full API.
module Via_dimap_and_right
(Req : Preface_specs.Choice.WITH_DIMAP_AND_RIGHT) :
Preface_specs.CHOICE with type ('a, 'b) t = ('a, 'b) Req.t
Build a Preface_specs.CHOICE
using Preface_specs.Choice.WITH_CONTRAMAP_FST_AND_MAP_SND_AND_LEFT
.
Standard method, using the minimal definition of an alt to derive its full API.
module Via_contramap_fst_and_map_snd_and_left
(Req : Preface_specs.Choice.WITH_CONTRAMAP_FST_AND_MAP_SND_AND_LEFT) :
Preface_specs.CHOICE with type ('a, 'b) t = ('a, 'b) Req.t
Build a Preface_specs.CHOICE
using Preface_specs.Choice.WITH_CONTRAMAP_FST_AND_MAP_SND_AND_RIGHT
.
Standard method, using the minimal definition of an alt to derive its full API.
module Via_contramap_fst_and_map_snd_and_right
(Req : Preface_specs.Choice.WITH_CONTRAMAP_FST_AND_MAP_SND_AND_RIGHT) :
Preface_specs.CHOICE with type ('a, 'b) t = ('a, 'b) Req.t
Build a Preface_specs.CHOICE
over a Preface_specs.PROFUNCTOR
using Preface_specs.Choice.WITH_LEFT
.
Standard method, using the minimal definition of an alt to derive its full API.
module Over_profunctor_via_left
(P : Preface_specs.Profunctor.CORE)
(L : Preface_specs.Choice.WITH_LEFT with type ('a, 'b) t = ('a, 'b) P.t) :
Preface_specs.CHOICE with type ('a, 'b) t = ('a, 'b) L.t
Build a Preface_specs.CHOICE
over a Preface_specs.PROFUNCTOR
using Preface_specs.Choice.WITH_RIGHT
.
Standard method, using the minimal definition of an alt to derive its full API.
module Over_profunctor_via_right
(P : Preface_specs.Profunctor.CORE)
(R : Preface_specs.Choice.WITH_RIGHT with type ('a, 'b) t = ('a, 'b) P.t) :
Preface_specs.CHOICE with type ('a, 'b) t = ('a, 'b) R.t
Construction of Preface_specs.CHOICE
by combining them.
Right-to-left composition of Preface_specs.CHOICE
.
module Composition
(F : Preface_specs.CHOICE)
(G : Preface_specs.CHOICE) :
sig ... end
Produces a Preface_specs.CHOICE
from a Preface_specs.APPLICATIVE
.
module From_applicative
(Applicative : Preface_specs.Applicative.CORE) :
Preface_specs.CHOICE with type ('a, 'b) t = 'a -> 'b Applicative.t