Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Documentation
class Adaptable t u where Source #
Instances
Adaptable (t :: k -> Type) (t :: k -> Type) Source # | |
(Lifting t (Schematic Monad u (v :> (w :> (x :> (y :> (z :> (f :> h))))))), Lifting u (Schematic Monad v (w :> (x :> (y :> (z :> (f :> h)))))), Lifting v (Schematic Monad w (x :> (y :> (z :> (f :> h))))), Lifting w (Schematic Monad x (y :> (z :> (f :> h)))), Lifting x (Schematic Monad y (z :> (f :> h))), Lifting y (Schematic Monad z (f :> h)), Lifting z (Schematic Monad f h), Wrappable f h) => Adaptable (f :: Type -> Type) (t :> (u :> (v :> (w :> (x :> (y :> (z :> (f :> h))))))) :: Type -> Type) Source # | |
(Lifting t (Schematic Monad u (v :> (w :> (x :> (y :> (z :> (f :> h))))))), Lifting u (Schematic Monad v (w :> (x :> (y :> (z :> (f :> h)))))), Lifting v (Schematic Monad w (x :> (y :> (z :> (f :> h))))), Lifting w (Schematic Monad x (y :> (z :> (f :> h)))), Lifting x (Schematic Monad y (z :> (f :> h))), Lifting y (Schematic Monad z (f :> h)), Lifting z (Schematic Monad f h), Lifting f h) => Adaptable (h :: Type -> Type) (t :> (u :> (v :> (w :> (x :> (y :> (z :> (f :> h))))))) :: Type -> Type) Source # | |
(Lifting t (Schematic Monad u (v :> (w :> (x :> (y :> (z :> f)))))), Lifting u (Schematic Monad v (w :> (x :> (y :> (z :> f))))), Lifting v (Schematic Monad w (x :> (y :> (z :> f)))), Lifting w (Schematic Monad x (y :> (z :> f))), Lifting x (Schematic Monad y (z :> f)), Lifting y (Schematic Monad z f), Wrappable z f) => Adaptable (z :: Type -> Type) (t :> (u :> (v :> (w :> (x :> (y :> (z :> f)))))) :: Type -> Type) Source # | |
(Lifting t (Schematic Monad u (v :> (w :> (x :> (y :> (z :> f)))))), Lifting u (Schematic Monad v (w :> (x :> (y :> (z :> f))))), Lifting v (Schematic Monad w (x :> (y :> (z :> f)))), Lifting w (Schematic Monad x (y :> (z :> f))), Lifting x (Schematic Monad y (z :> f)), Lifting y (Schematic Monad z f), Lifting z f) => Adaptable (f :: Type -> Type) (t :> (u :> (v :> (w :> (x :> (y :> (z :> f)))))) :: Type -> Type) Source # | |
(Lifting t (Schematic Monad u (v :> (w :> (x :> (y :> z))))), Lifting u (Schematic Monad v (w :> (x :> (y :> z)))), Lifting v (Schematic Monad w (x :> (y :> z))), Lifting w (Schematic Monad x (y :> z)), Lifting x (Schematic Monad y z), Wrappable y z) => Adaptable (y :: Type -> Type) (t :> (u :> (v :> (w :> (x :> (y :> z))))) :: Type -> Type) Source # | |
(Lifting t (Schematic Monad u (v :> (w :> (x :> (y :> z))))), Lifting u (Schematic Monad v (w :> (x :> (y :> z)))), Lifting v (Schematic Monad w (x :> (y :> z))), Lifting w (Schematic Monad x (y :> z)), Lifting x (Schematic Monad y z), Lifting y z) => Adaptable (z :: Type -> Type) (t :> (u :> (v :> (w :> (x :> (y :> z))))) :: Type -> Type) Source # | |
(Lifting t (Schematic Monad u (v :> (w :> (x :> y)))), Lifting u (Schematic Monad v (w :> (x :> y))), Lifting v (Schematic Monad w (x :> y)), Lifting w (Schematic Monad x y), Wrappable x y) => Adaptable (x :: Type -> Type) (t :> (u :> (v :> (w :> (x :> y)))) :: Type -> Type) Source # | |
(Lifting t (Schematic Monad u (v :> (w :> (x :> y)))), Lifting u (Schematic Monad v (w :> (x :> y))), Lifting v (Schematic Monad w (x :> y)), Lifting w (Schematic Monad x y), Lifting x y) => Adaptable (y :: Type -> Type) (t :> (u :> (v :> (w :> (x :> y)))) :: Type -> Type) Source # | |
(Lifting t (Schematic Monad u (v :> (w :> x))), Lifting u (Schematic Monad v (w :> x)), Lifting v (Schematic Monad w x), Wrappable w x) => Adaptable (w :: Type -> Type) (t :> (u :> (v :> (w :> x))) :: Type -> Type) Source # | |
(Lifting t (Schematic Monad u (v :> (w :> x))), Lifting u (Schematic Monad v (w :> x)), Lifting v (Schematic Monad w x), Lifting w x) => Adaptable (x :: Type -> Type) (t :> (u :> (v :> (w :> x))) :: Type -> Type) Source # | |
(Lifting t (Schematic Monad u v), Lifting t (Schematic Monad u (v :> w)), Lifting u (Schematic Monad v w), Lifting v w) => Adaptable (w :: Type -> Type) (t :> (u :> (v :> w)) :: Type -> Type) Source # | |
(Liftable ((->) :: Type -> Type -> Type) (Schematic Monad t), Lifting t (Schematic Monad u (v :> w)), Lifting u (Schematic Monad v w), Wrappable v w) => Adaptable (v :: Type -> Type) (t :> (u :> (v :> w)) :: Type -> Type) Source # | |
(Lifting t (Schematic Monad u v), Lifting u v) => Adaptable (v :: Type -> Type) (t :> (u :> v) :: Type -> Type) Source # | |
(Liftable ((->) :: Type -> Type -> Type) (Schematic Monad t), Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (Schematic Monad u v), Wrappable u v) => Adaptable (u :: Type -> Type) (t :> (u :> v) :: Type -> Type) Source # | |
Wrappable t u => Adaptable (t :: Type -> Type) (t :> u :: Type -> Type) Source # | |
Lifting t u => Adaptable (u :: Type -> Type) (t :> u :: Type -> Type) Source # | |
(Lowering t (Schematic Comonad u (v :< (w :< (x :< (y :< (z :< (f :< h))))))), Lowering u (Schematic Comonad v (w :< (x :< (y :< (z :< (f :< h)))))), Lowering v (Schematic Comonad w (x :< (y :< (z :< (f :< h))))), Lowering w (Schematic Comonad x (y :< (z :< (f :< h)))), Lowering x (Schematic Comonad y (z :< (f :< h))), Lowering y (Schematic Comonad z (f :< h)), Lowering z (Schematic Comonad f h), Bringable f h) => Adaptable (t :< (u :< (v :< (w :< (x :< (y :< (z :< (f :< h))))))) :: Type -> Type) (f :: Type -> Type) Source # | |
(Lowering t (Schematic Comonad u (v :< (w :< (x :< (y :< (z :< (f :< h))))))), Lowering u (Schematic Comonad v (w :< (x :< (y :< (z :< (f :< h)))))), Lowering v (Schematic Comonad w (x :< (y :< (z :< (f :< h))))), Lowering w (Schematic Comonad x (y :< (z :< (f :< h)))), Lowering x (Schematic Comonad y (z :< (f :< h))), Lowering y (Schematic Comonad z (f :< h)), Lowering z (Schematic Comonad f h), Lowering f h) => Adaptable (t :< (u :< (v :< (w :< (x :< (y :< (z :< (f :< h))))))) :: Type -> Type) (h :: Type -> Type) Source # | |
(Lowering t (Schematic Comonad u (v :< (w :< (x :< (y :< (z :< f)))))), Lowering u (Schematic Comonad v (w :< (x :< (y :< (z :< f))))), Lowering v (Schematic Comonad w (x :< (y :< (z :< f)))), Lowering w (Schematic Comonad x (y :< (z :< f))), Lowering x (Schematic Comonad y (z :< f)), Lowering y (Schematic Comonad z f), Bringable z f) => Adaptable (t :< (u :< (v :< (w :< (x :< (y :< (z :< f)))))) :: Type -> Type) (z :: Type -> Type) Source # | |
(Lowering t (Schematic Comonad u (v :< (w :< (x :< (y :< (z :< f)))))), Lowering u (Schematic Comonad v (w :< (x :< (y :< (z :< f))))), Lowering v (Schematic Comonad w (x :< (y :< (z :< f)))), Lowering w (Schematic Comonad x (y :< (z :< f))), Lowering x (Schematic Comonad y (z :< f)), Lowering y (Schematic Comonad z f), Lowering z f) => Adaptable (t :< (u :< (v :< (w :< (x :< (y :< (z :< f)))))) :: Type -> Type) (f :: Type -> Type) Source # | |
(Lowering t (Schematic Comonad u (v :< (w :< (x :< (y :< z))))), Lowering u (Schematic Comonad v (w :< (x :< (y :< z)))), Lowering v (Schematic Comonad w (x :< (y :< z))), Lowering w (Schematic Comonad x (y :< z)), Lowering x (Schematic Comonad y z), Bringable y z) => Adaptable (t :< (u :< (v :< (w :< (x :< (y :< z))))) :: Type -> Type) (y :: Type -> Type) Source # | |
(Lowering t (Schematic Comonad u (v :< (w :< (x :< (y :< z))))), Lowering u (Schematic Comonad v (w :< (x :< (y :< z)))), Lowering v (Schematic Comonad w (x :< (y :< z))), Lowering w (Schematic Comonad x (y :< z)), Lowering x (Schematic Comonad y z), Lowering y z) => Adaptable (t :< (u :< (v :< (w :< (x :< (y :< z))))) :: Type -> Type) (z :: Type -> Type) Source # | |
(Lowering t (Schematic Comonad u (v :< (w :< (x :< y)))), Lowering u (Schematic Comonad v (w :< (x :< y))), Lowering v (Schematic Comonad w (x :< y)), Lowering w (Schematic Comonad x y), Bringable x y) => Adaptable (t :< (u :< (v :< (w :< (x :< y)))) :: Type -> Type) (x :: Type -> Type) Source # | |
(Lowering t (Schematic Comonad u (v :< (w :< (x :< y)))), Lowering u (Schematic Comonad v (w :< (x :< y))), Lowering v (Schematic Comonad w (x :< y)), Lowering w (Schematic Comonad x y), Lowering x y) => Adaptable (t :< (u :< (v :< (w :< (x :< y)))) :: Type -> Type) (y :: Type -> Type) Source # | |
(Lowering t (Schematic Comonad u (v :< (w :< x))), Lowering u (Schematic Comonad v (w :< x)), Lowering v (Schematic Comonad w x), Bringable w x) => Adaptable (t :< (u :< (v :< (w :< x))) :: Type -> Type) (w :: Type -> Type) Source # | |
(Lowering t (Schematic Comonad u (v :< (w :< x))), Lowering u (Schematic Comonad v (w :< x)), Lowering v (Schematic Comonad w x), Lowering w x) => Adaptable (t :< (u :< (v :< (w :< x))) :: Type -> Type) (x :: Type -> Type) Source # | |
(Lowering t (Schematic Comonad u v), Lowering t (Schematic Comonad u (v :< w)), Lowering u (Schematic Comonad v w), Lowering v w) => Adaptable (t :< (u :< (v :< w)) :: Type -> Type) (w :: Type -> Type) Source # | |
(Lowering t (Schematic Comonad u (v :< w)), Lowering u (Schematic Comonad v w), Bringable v w) => Adaptable (t :< (u :< (v :< w)) :: Type -> Type) (v :: Type -> Type) Source # | |
(Lowering t (Schematic Comonad u v), Lowering u v) => Adaptable (t :< (u :< v) :: Type -> Type) (v :: Type -> Type) Source # | |
(Lowering t (Schematic Comonad u v), Bringable u v) => Adaptable (t :< (u :< v) :: Type -> Type) (u :: Type -> Type) Source # | |
Bringable t u => Adaptable (t :< u :: Type -> Type) (t :: Type -> Type) Source # | |
Lowering t u => Adaptable (t :< u :: Type -> Type) (u :: Type -> Type) Source # | |
(Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) h, Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (Schematic Monad u (v :> (w :> (x :> (y :> (z :> (f :> h))))))), Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (Schematic Monad v (w :> (x :> (y :> (z :> (f :> h)))))), Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (Schematic Monad w (x :> (y :> (z :> (f :> h))))), Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (Schematic Monad x (y :> (z :> (f :> h)))), Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (Schematic Monad y (z :> (f :> h))), Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (Schematic Monad z (f :> h)), Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (Schematic Monad f h), Hoistable ((:>) (t :> (u :> (v :> w)))), Hoistable (Schematic Monad t), Hoistable (Schematic Monad u), Hoistable (Schematic Monad v), Hoistable (Schematic Monad w), Hoistable (Schematic Monad x), Hoistable (Schematic Monad y), Hoistable (Schematic Monad z), Hoistable (Schematic Monad f), Adaptable h h') => Adaptable (t :> (u :> (v :> (w :> (x :> (y :> (z :> (f :> h))))))) :: Type -> Type) (t :> (u :> (v :> (w :> (x :> (y :> (z :> (f :> h'))))))) :: Type -> Type) Source # | |
(Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) f, Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (Schematic Monad u (v :> (w :> (x :> (y :> (z :> f)))))), Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (Schematic Monad v (w :> (x :> (y :> (z :> f))))), Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (Schematic Monad w (x :> (y :> (z :> f)))), Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (Schematic Monad x (y :> (z :> f))), Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (Schematic Monad y (z :> f)), Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (Schematic Monad z f), Hoistable ((:>) (t :> (u :> (v :> w)))), Hoistable (Schematic Monad t), Hoistable (Schematic Monad u), Hoistable (Schematic Monad v), Hoistable (Schematic Monad w), Hoistable (Schematic Monad x), Hoistable (Schematic Monad y), Hoistable (Schematic Monad z), Adaptable f f') => Adaptable (t :> (u :> (v :> (w :> (x :> (y :> (z :> f)))))) :: Type -> Type) (t :> (u :> (v :> (w :> (x :> (y :> (z :> f')))))) :: Type -> Type) Source # | |
(Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) z, Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (Schematic Monad u (v :> (w :> (x :> (y :> z))))), Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (Schematic Monad v (w :> (x :> (y :> z)))), Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (Schematic Monad w (x :> (y :> z))), Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (Schematic Monad x (y :> z)), Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (Schematic Monad y z), Hoistable ((:>) (t :> (u :> (v :> w)))), Hoistable (Schematic Monad t), Hoistable (Schematic Monad u), Hoistable (Schematic Monad v), Hoistable (Schematic Monad w), Hoistable (Schematic Monad x), Hoistable (Schematic Monad y), Adaptable z z') => Adaptable (t :> (u :> (v :> (w :> (x :> (y :> z))))) :: Type -> Type) (t :> (u :> (v :> (w :> (x :> (y :> z'))))) :: Type -> Type) Source # | |
(Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) y, Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (Schematic Monad u (v :> (w :> (x :> y)))), Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (Schematic Monad v (w :> (x :> y))), Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (Schematic Monad w (x :> y)), Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (Schematic Monad x y), Hoistable ((:>) (t :> (u :> (v :> w)))), Hoistable (Schematic Monad t), Hoistable (Schematic Monad u), Hoistable (Schematic Monad v), Hoistable (Schematic Monad w), Hoistable (Schematic Monad x), Adaptable y y') => Adaptable (t :> (u :> (v :> (w :> (x :> y)))) :: Type -> Type) (t :> (u :> (v :> (w :> (x :> y')))) :: Type -> Type) Source # | |
(Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) x, Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (Schematic Monad u (v :> (w :> x))), Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (Schematic Monad v (w :> x)), Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (Schematic Monad w x), Hoistable ((:>) (t :> (u :> v))), Hoistable (Schematic Monad t), Hoistable (Schematic Monad u), Hoistable (Schematic Monad v), Hoistable (Schematic Monad w), Adaptable x x') => Adaptable (t :> (u :> (v :> (w :> x))) :: Type -> Type) (t :> (u :> (v :> (w :> x'))) :: Type -> Type) Source # | |
(Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) u, Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) v, Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) w, Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (Schematic Monad u v), Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (Schematic Monad u (v :> w)), Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (Schematic Monad v w), Hoistable ((:>) (t :> (u :> v))), Hoistable (Schematic Monad t), Hoistable (Schematic Monad u), Hoistable (Schematic Monad v), Adaptable w w') => Adaptable (t :> (u :> (v :> w)) :: Type -> Type) (t :> (u :> (v :> w')) :: Type -> Type) Source # | |
(Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) v, Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (Schematic Monad u v), Hoistable ((:>) (t :> u)), Hoistable (Schematic Monad t), Hoistable (Schematic Monad u), Adaptable v v') => Adaptable (t :> (u :> v) :: Type -> Type) (t :> (u :> v') :: Type -> Type) Source # | |
(Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) u, Hoistable ((:>) t), Adaptable u u') => Adaptable (t :> u :: Type -> Type) (t :> u' :: Type -> Type) Source # | |
type Lowering t u = (Comonadic t, Lowerable (->) (Schematic Comonad t), Covariant (->) (->) u) Source #
type Bringable t u = (Comonadic t, Extractable_ u) Source #