Free_applicative.API
The complete interface of a Free applicative
.
The type held by the Preface_specs.Functor
.
The type held by the Free applicative
.
Promote a value from the Preface_specs.Functor
into the Free applicative
.
module To_applicative
(Applicative : Applicative.CORE) :
TO_APPLICATIVE
with type 'a t := 'a t
and type 'a f := 'a f
and type 'a applicative := 'a Applicative.t
The natural transformation from a Free applicative
to an other Preface_specs.Applicative
.
module To_monoid
(Monoid : Monoid.CORE) :
TO_MONOID
with type 'a t := 'a t
and type 'a f := 'a f
and type monoid := Monoid.t
The natural transformation from a Free applicative
to a Preface_specs.Monoid
.
A Free applicative
is also an Preface_specs.Applicative
.
include Indexed_applicative.WITH_PURE with type ('a, 'index) t := 'a t
include Indexed_applicative.WITH_PURE with type ('a, 'index) t := 'a t
include Indexed_apply.WITH_MAP_AND_PRODUCT with type ('a, 'index) t := 'a t
include Indexed_functor.WITH_MAP with type ('a, 'index) t := 'a t
include Indexed_applicative.WITH_PURE with type ('a, 'index) t := 'a t
val pure : 'a -> 'a t
Lift a value from 'a
into a new t
.
Lift a ternary function that acts on arbitrary values into a function that acts t
values.
Create a new t
, replacing all values of the given functor by given a value of 'a
.
module Infix : Indexed_applicative.INFIX with type ('a, 'index) t := 'a t
Applicative
functor of ('a -> 'b) t
over ('a, 'index) t
to ('b, 'index) t
.
Flipped Applicative
functor of ('a -> 'b) t
over ('a, 'index) t
to ('b, 'index) t
.
Infix version of CORE
.map.
Flipped and infix version of CORE
.map.
Flipped and infix version of OPERATION
.replace.
module Syntax : Indexed_applicative.SYNTAX with type ('a, 'index) t := 'a t