pandora-0.2.3: A box of patterns and paradigms

Safe HaskellSafe
LanguageHaskell2010

Pandora.Paradigm.Controlflow.Joint.Adaptable

Documentation

class Covariant u => Adaptable t u where Source #

Methods

adapt :: t ~> u Source #

Instances
Covariant t => Adaptable t t Source # 
Instance details

Defined in Pandora.Paradigm.Controlflow.Joint.Adaptable

Methods

adapt :: t ~> t Source #

(Covariant (t :> (u :> (v :> (w :> (x :> (y :> (z :> (f :> h)))))))), Layable t (Schematic Monad u (v :> (w :> (x :> (y :> (z :> (f :> h))))))), Layable u (Schematic Monad v (w :> (x :> (y :> (z :> (f :> h)))))), Layable v (Schematic Monad w (x :> (y :> (z :> (f :> h))))), Layable w (Schematic Monad x (y :> (z :> (f :> h)))), Layable x (Schematic Monad y (z :> (f :> h))), Layable y (Schematic Monad z (f :> h)), Layable z (Schematic Monad f h), Wrappable f h) => Adaptable f (t :> (u :> (v :> (w :> (x :> (y :> (z :> (f :> h)))))))) Source # 
Instance details

Defined in Pandora.Paradigm.Controlflow.Joint.Adaptable

Methods

adapt :: f ~> (t :> (u :> (v :> (w :> (x :> (y :> (z :> (f :> h)))))))) Source #

(Covariant (t :> (u :> (v :> (w :> (x :> (y :> (z :> (f :> h)))))))), Layable t (Schematic Monad u (v :> (w :> (x :> (y :> (z :> (f :> h))))))), Layable u (Schematic Monad v (w :> (x :> (y :> (z :> (f :> h)))))), Layable v (Schematic Monad w (x :> (y :> (z :> (f :> h))))), Layable w (Schematic Monad x (y :> (z :> (f :> h)))), Layable x (Schematic Monad y (z :> (f :> h))), Layable y (Schematic Monad z (f :> h)), Layable z (Schematic Monad f h), Layable f h) => Adaptable h (t :> (u :> (v :> (w :> (x :> (y :> (z :> (f :> h)))))))) Source # 
Instance details

Defined in Pandora.Paradigm.Controlflow.Joint.Adaptable

Methods

adapt :: h ~> (t :> (u :> (v :> (w :> (x :> (y :> (z :> (f :> h)))))))) Source #

(Covariant (t :> (u :> (v :> (w :> (x :> (y :> (z :> f))))))), Layable t (Schematic Monad u (v :> (w :> (x :> (y :> (z :> f)))))), Layable u (Schematic Monad v (w :> (x :> (y :> (z :> f))))), Layable v (Schematic Monad w (x :> (y :> (z :> f)))), Layable w (Schematic Monad x (y :> (z :> f))), Layable x (Schematic Monad y (z :> f)), Layable y (Schematic Monad z f), Wrappable z f) => Adaptable z (t :> (u :> (v :> (w :> (x :> (y :> (z :> f))))))) Source # 
Instance details

Defined in Pandora.Paradigm.Controlflow.Joint.Adaptable

Methods

adapt :: z ~> (t :> (u :> (v :> (w :> (x :> (y :> (z :> f))))))) Source #

(Covariant (t :> (u :> (v :> (w :> (x :> (y :> (z :> f))))))), Layable t (Schematic Monad u (v :> (w :> (x :> (y :> (z :> f)))))), Layable u (Schematic Monad v (w :> (x :> (y :> (z :> f))))), Layable v (Schematic Monad w (x :> (y :> (z :> f)))), Layable w (Schematic Monad x (y :> (z :> f))), Layable x (Schematic Monad y (z :> f)), Layable y (Schematic Monad z f), Layable z f) => Adaptable f (t :> (u :> (v :> (w :> (x :> (y :> (z :> f))))))) Source # 
Instance details

Defined in Pandora.Paradigm.Controlflow.Joint.Adaptable

Methods

adapt :: f ~> (t :> (u :> (v :> (w :> (x :> (y :> (z :> f))))))) Source #

(Covariant (t :> (u :> (v :> (w :> (x :> (y :> z)))))), Layable t (Schematic Monad u (v :> (w :> (x :> (y :> z))))), Layable u (Schematic Monad v (w :> (x :> (y :> z)))), Layable v (Schematic Monad w (x :> (y :> z))), Layable w (Schematic Monad x (y :> z)), Layable x (Schematic Monad y z), Wrappable y z) => Adaptable y (t :> (u :> (v :> (w :> (x :> (y :> z)))))) Source # 
Instance details

Defined in Pandora.Paradigm.Controlflow.Joint.Adaptable

Methods

adapt :: y ~> (t :> (u :> (v :> (w :> (x :> (y :> z)))))) Source #

(Covariant (t :> (u :> (v :> (w :> (x :> (y :> z)))))), Layable t (Schematic Monad u (v :> (w :> (x :> (y :> z))))), Layable u (Schematic Monad v (w :> (x :> (y :> z)))), Layable v (Schematic Monad w (x :> (y :> z))), Layable w (Schematic Monad x (y :> z)), Layable x (Schematic Monad y z), Layable y z) => Adaptable z (t :> (u :> (v :> (w :> (x :> (y :> z)))))) Source # 
Instance details

Defined in Pandora.Paradigm.Controlflow.Joint.Adaptable

Methods

adapt :: z ~> (t :> (u :> (v :> (w :> (x :> (y :> z)))))) Source #

(Covariant (t :> (u :> (v :> (w :> (x :> y))))), Layable t (Schematic Monad u (v :> (w :> (x :> y)))), Layable u (Schematic Monad v (w :> (x :> y))), Layable v (Schematic Monad w (x :> y)), Layable w (Schematic Monad x y), Wrappable x y) => Adaptable x (t :> (u :> (v :> (w :> (x :> y))))) Source # 
Instance details

Defined in Pandora.Paradigm.Controlflow.Joint.Adaptable

Methods

adapt :: x ~> (t :> (u :> (v :> (w :> (x :> y))))) Source #

(Covariant (t :> (u :> (v :> (w :> (x :> y))))), Layable t (Schematic Monad u (v :> (w :> (x :> y)))), Layable u (Schematic Monad v (w :> (x :> y))), Layable v (Schematic Monad w (x :> y)), Layable w (Schematic Monad x y), Layable x y) => Adaptable y (t :> (u :> (v :> (w :> (x :> y))))) Source # 
Instance details

Defined in Pandora.Paradigm.Controlflow.Joint.Adaptable

Methods

adapt :: y ~> (t :> (u :> (v :> (w :> (x :> y))))) Source #

(Covariant (t :> (u :> (v :> (w :> x)))), Layable t (Schematic Monad u (v :> (w :> x))), Layable u (Schematic Monad v (w :> x)), Layable v (Schematic Monad w x), Wrappable w x) => Adaptable w (t :> (u :> (v :> (w :> x)))) Source # 
Instance details

Defined in Pandora.Paradigm.Controlflow.Joint.Adaptable

Methods

adapt :: w ~> (t :> (u :> (v :> (w :> x)))) Source #

(Covariant (t :> (u :> (v :> (w :> x)))), Layable t (Schematic Monad u (v :> (w :> x))), Layable u (Schematic Monad v (w :> x)), Layable v (Schematic Monad w x), Layable w x) => Adaptable x (t :> (u :> (v :> (w :> x)))) Source # 
Instance details

Defined in Pandora.Paradigm.Controlflow.Joint.Adaptable

Methods

adapt :: x ~> (t :> (u :> (v :> (w :> x)))) Source #

(Covariant (t :> (u :> (v :> w))), Layable t (Schematic Monad u v), Layable t (Schematic Monad u (v :> w)), Layable u (Schematic Monad v w), Layable v w) => Adaptable w (t :> (u :> (v :> w))) Source # 
Instance details

Defined in Pandora.Paradigm.Controlflow.Joint.Adaptable

Methods

adapt :: w ~> (t :> (u :> (v :> w))) Source #

(Covariant (t :> (u :> (v :> w))), Layable t (Schematic Monad u (v :> w)), Layable u (Schematic Monad v w), Wrappable v w) => Adaptable v (t :> (u :> (v :> w))) Source # 
Instance details

Defined in Pandora.Paradigm.Controlflow.Joint.Adaptable

Methods

adapt :: v ~> (t :> (u :> (v :> w))) Source #

(Covariant (t :> (u :> v)), Layable t (Schematic Monad u v), Layable u v) => Adaptable v (t :> (u :> v)) Source # 
Instance details

Defined in Pandora.Paradigm.Controlflow.Joint.Adaptable

Methods

adapt :: v ~> (t :> (u :> v)) Source #

(Covariant (t :> (u :> v)), Layable t (Schematic Monad u v), Wrappable u v) => Adaptable u (t :> (u :> v)) Source # 
Instance details

Defined in Pandora.Paradigm.Controlflow.Joint.Adaptable

Methods

adapt :: u ~> (t :> (u :> v)) Source #

(Covariant (t :> u), Wrappable t u) => Adaptable t (t :> u) Source # 
Instance details

Defined in Pandora.Paradigm.Controlflow.Joint.Adaptable

Methods

adapt :: t ~> (t :> u) Source #

(Covariant (t :> u), Layable t u) => Adaptable u (t :> u) Source # 
Instance details

Defined in Pandora.Paradigm.Controlflow.Joint.Adaptable

Methods

adapt :: u ~> (t :> u) Source #