joint-0.1.4: Trying to compose non-composable

Safe HaskellSafe
LanguageHaskell2010

Control.Joint.Abilities.Liftable

Documentation

class Liftable (eff :: * -> *) (schema :: * -> *) where Source #

Methods

lift :: eff a -> schema a Source #

Instances
(Functor (Schema u (v :> (w :> (x :> (y :> z))))), Functor (Schema v (w :> (x :> (y :> z)))), Functor (Schema w (x :> (y :> z))), Functor (Schema x (y :> z)), Functor (Schema y z), Applicative z, Transformer t, Transformer u, Transformer v, Transformer w, Transformer x, Transformer z, Transformer y) => Liftable y (t :> (u :> (v :> (w :> (x :> (y :> z)))))) Source # 
Instance details

Defined in Control.Joint.Abilities.Liftable

Methods

lift :: y a -> (t :> (u :> (v :> (w :> (x :> (y :> z)))))) a Source #

(Functor (Schema u (v :> (w :> (x :> (y :> z))))), Functor (Schema v (w :> (x :> (y :> z)))), Functor (Schema w (x :> (y :> z))), Functor (Schema x (y :> z)), Functor (Schema y z), Functor z, Transformer t, Transformer u, Transformer v, Transformer w, Transformer x, Transformer z, Transformer y) => Liftable z (t :> (u :> (v :> (w :> (x :> (y :> z)))))) Source # 
Instance details

Defined in Control.Joint.Abilities.Liftable

Methods

lift :: z a -> (t :> (u :> (v :> (w :> (x :> (y :> z)))))) a Source #

(Functor (Schema u (v :> (w :> x))), Functor (Schema v (w :> x)), Functor (Schema w x), Functor (Schema x y), Functor (Schema w (x :> y)), Functor (Schema v (w :> (x :> y))), Functor (Schema u (v :> (w :> (x :> y)))), Functor y, Applicative y, Transformer t, Transformer u, Transformer v, Transformer w, Transformer x) => Liftable x (t :> (u :> (v :> (w :> (x :> y))))) Source # 
Instance details

Defined in Control.Joint.Abilities.Liftable

Methods

lift :: x a -> (t :> (u :> (v :> (w :> (x :> y))))) a Source #

(Functor (Schema u (v :> (w :> x))), Functor (Schema v (w :> x)), Functor (Schema w x), Functor (Schema x y), Functor (Schema w (x :> y)), Functor (Schema v (w :> (x :> y))), Functor (Schema u (v :> (w :> (x :> y)))), Functor y, Transformer t, Transformer u, Transformer v, Transformer w, Transformer x) => Liftable y (t :> (u :> (v :> (w :> (x :> y))))) Source # 
Instance details

Defined in Control.Joint.Abilities.Liftable

Methods

lift :: y a -> (t :> (u :> (v :> (w :> (x :> y))))) a Source #

(Functor (Schema u (v :> (w :> x))), Functor (Schema v (w :> x)), Functor (Schema w x), Applicative x, Transformer t, Transformer u, Transformer v, Transformer w) => Liftable w (t :> (u :> (v :> (w :> x)))) Source # 
Instance details

Defined in Control.Joint.Abilities.Liftable

Methods

lift :: w a -> (t :> (u :> (v :> (w :> x)))) a Source #

(Functor (Schema u (v :> (w :> x))), Functor (Schema v (w :> x)), Functor (Schema w x), Functor x, Transformer t, Transformer u, Transformer v, Transformer w) => Liftable x (t :> (u :> (v :> (w :> x)))) Source # 
Instance details

Defined in Control.Joint.Abilities.Liftable

Methods

lift :: x a -> (t :> (u :> (v :> (w :> x)))) a Source #

(Functor (Schema u v), Functor (Schema v w), Functor (Schema u (v :> w)), Applicative v, Functor w, Transformer t, Transformer u, Transformer v) => Liftable w (t :> (u :> (v :> w))) Source # 
Instance details

Defined in Control.Joint.Abilities.Liftable

Methods

lift :: w a -> (t :> (u :> (v :> w))) a Source #

(Functor (Schema u v), Functor (Schema v w), Functor (Schema u (v :> w)), Applicative v, Applicative w, Transformer u, Transformer t, Transformer v) => Liftable v (t :> (u :> (v :> w))) Source # 
Instance details

Defined in Control.Joint.Abilities.Liftable

Methods

lift :: v a -> (t :> (u :> (v :> w))) a Source #

(Functor (Schema u v), Functor v, Transformer u, Transformer t) => Liftable v (t :> (u :> v)) Source # 
Instance details

Defined in Control.Joint.Abilities.Liftable

Methods

lift :: v a -> (t :> (u :> v)) a Source #

(Functor (Schema u v), Applicative v, Transformer u, Transformer t) => Liftable u (t :> (u :> v)) Source # 
Instance details

Defined in Control.Joint.Abilities.Liftable

Methods

lift :: u a -> (t :> (u :> v)) a Source #

(Applicative u, Transformer t) => Liftable t (t :> u) Source # 
Instance details

Defined in Control.Joint.Abilities.Liftable

Methods

lift :: t a -> (t :> u) a Source #

(Functor u, Transformer t) => Liftable u (t :> u) Source # 
Instance details

Defined in Control.Joint.Abilities.Liftable

Methods

lift :: u a -> (t :> u) a Source #

Liftable (Reader e) (State e) Source # 
Instance details

Defined in Control.Joint.Effects.State

Methods

lift :: Reader e a -> State e a Source #

Liftable (Reader e) ((->) e :: Type -> Type) Source # 
Instance details

Defined in Control.Joint.Effects.Reader

Methods

lift :: Reader e a -> e -> a Source #