Module
Control.Selective.ComposeI
- Package
- purescript-selective-functors
- Repository
- artemisSystem/purescript-selective-functors
#ComposeI Source
newtype ComposeI :: forall k1 k2. (k2 -> Type) -> (k1 -> k2) -> k1 -> Type
newtype ComposeI f g a
This newtype provides a Select
instance for Compose
.
It "lifts" the Selective
g
into the Applicative
f
. In other words,
it composes an outer Applicative
and an inner Selective
.
Constructors
ComposeI (f (g a))
Instances
Newtype (ComposeI f g a) _
Generic (ComposeI f g a) _
(Show (f (g a))) => Show (ComposeI f g a)
(Eq1 f, Eq1 g, Eq a) => Eq (ComposeI f g a)
(Eq1 f, Eq1 g) => Eq1 (ComposeI f g)
(Ord1 f, Ord1 g, Ord a) => Ord (ComposeI f g a)
(Ord1 f, Ord1 g) => Ord1 (ComposeI f g)
(Functor f, Functor g) => Functor (ComposeI f g)
(Apply f, Apply g) => Apply (ComposeI f g)
(Applicative f, Applicative g) => Applicative (ComposeI f g)
(Alt f, Functor g) => Alt (ComposeI f g)
(Plus f, Functor g) => Plus (ComposeI f g)
(Alternative f, Applicative g) => Alternative (ComposeI f g)
(Apply f, Select g) => Select (ComposeI f g)
(Applicative f, Selective g) => Selective (ComposeI f g)
- Modules
- Control.
Select - Control.
Selective - Control.
Selective. ComposeI - Control.
Selective. ComposeTM - Control.
Selective. ComposeTS - Control.
Selective. Free - Control.
Selective. Over - Control.
Selective. SelectA - Control.
Selective. SelectM - Control.
Selective. SelectTM - Control.
Selective. SelectTS - Control.
Selective. Under - Control.
Selective. Validation
"Lifts" the inner type's selective instance into the outer via
lift2
. The outer effect will always be executed.