Indexed_selective.Core_over_applicative_via_select
module Req :
Preface_specs.Indexed_selective.WITH_SELECT
with type ('a, 'index) t = ('a, 'index) Applicative.t
type ('a, 'index) t = ('a, 'index) Req.t
The type held by the Indexed Selective
.
select e f
apply f
if e
is Left
. It allow to skip effect using Right
.
val branch :
(('a, 'b) Stdlib.Either.t, 'index) t ->
('a -> 'c, 'index) t ->
('b -> 'c, 'index) t ->
('c, 'index) t
branch
is like select
. It chooses between two effects.
include Preface_specs.Indexed_applicative.WITH_PURE
with type ('a, 'index) t := ('a, 'index) t
include Preface_specs.Indexed_applicative.WITH_PURE
with type ('a, 'index) t := ('a, 'index) t
include Preface_specs.Indexed_apply.WITH_MAP_AND_PRODUCT
with type ('a, 'index) t := ('a, 'index) t
include Preface_specs.Indexed_functor.WITH_MAP
with type ('a, 'index) t := ('a, 'index) t
include Preface_specs.Indexed_applicative.WITH_PURE
with type ('a, 'index) t := ('a, 'index) t
val pure : 'a -> ('a, 'index) t
Lift a value from 'a
into a new t
.