 categoryextras0.53.6: Various modules and constructs inspired by category theory  Contents  Index 

Control.Functor.Combinators.Lift  Portability  nonportable (functionaldependencies)  Stability  experimental  Maintainer  Edward Kmett <ekmett@gmail.com> 



Description 
transform a pair of functors with a bifunctor deriving a new functor.
this subsumes functor product and functor coproduct



Documentation 

newtype Lift p f g a 
Constructors   Instances  MonadIdeal m => Monad (Ideal m)  Functor f => Pointed (Ideal f)  Functor f => Copointed (Coideal f)  ComonadCoideal w => Comonad (Coideal w)  Bifunctor p Hask Hask Hask => HFunctor (Ap p)  (Faithful f, Faithful g) => Faithful (f :*: g)  (Pointed f, Pointed g) => Pointed (f :*: g)  (Copointed f, Copointed g) => Copointed (f :+: g)  (Applicative f, Applicative g) => Applicative (f :*: g)  (Bifunctor p Hask Hask Hask, Functor f, Functor g) => Functor (Lift p f g)  (Bifunctor p Hask Hask Hask, ContraFunctor f, ContraFunctor g) => ContraFunctor (Lift p f g)  (Bifunctor p Hask Hask Hask, ExpFunctor f, ExpFunctor g) => ExpFunctor (Lift p f g) 



type :*: f g = Lift (,) f g 

runProductF :: (f :*: g) a > (f a, g a) 

type :+: f g = Lift Either f g 

runCoproductF :: (f :+: g) a > Either (f a) (g a) 

type Ap p = Lift p Identity 

runAp :: Bifunctor p Hask Hask Hask => Ap p f a > p a (f a) 

mkAp :: Bifunctor p Hask Hask Hask => p a (f a) > Ap p f a 

Produced by Haddock version 2.1.0 