Safe Haskell | Safe |
---|---|
Language | Haskell2010 |
Synopsis
- class Covariant (t :: * -> *) where
- (<$>) :: (a -> b) -> t a -> t b
- comap :: (a -> b) -> t a -> t b
- (<$) :: a -> t b -> t a
- ($>) :: t a -> b -> t b
- void :: t a -> t ()
- loeb :: t (t a -> a) -> t a
- (<$$>) :: Covariant u => (a -> b) -> t (u a) -> t (u b)
- (<$$$>) :: (Covariant u, Covariant v) => (a -> b) -> t (u (v a)) -> t (u (v b))
- (<$$$$>) :: (Covariant u, Covariant v, Covariant w) => (a -> b) -> t (u (v (w a))) -> t (u (v (w b)))
Documentation
class Covariant (t :: * -> *) where Source #
When providing a new instance, you should ensure it satisfies the two laws: * Identity morphism: comap identity ≡ identity * Composition of morphisms: comap (f . g) ≡ comap f . comap g
(<$>) :: (a -> b) -> t a -> t b infixl 4 Source #
Infix version of comap
comap :: (a -> b) -> t a -> t b Source #
Prefix version of <$>
(<$) :: a -> t b -> t a infixl 4 Source #
Replace all locations in the input with the same value
($>) :: t a -> b -> t b infixl 4 Source #
Flipped version of <$
Discards the result of evaluation
loeb :: t (t a -> a) -> t a Source #
Computing a value from a structure of values
(<$$>) :: Covariant u => (a -> b) -> t (u a) -> t (u b) Source #
Infix versions of comap
with various nesting levels
(<$$$>) :: (Covariant u, Covariant v) => (a -> b) -> t (u (v a)) -> t (u (v b)) Source #
(<$$$$>) :: (Covariant u, Covariant v, Covariant w) => (a -> b) -> t (u (v (w a))) -> t (u (v (w b))) Source #
Instances
Covariant Wye Source # | |
Defined in Pandora.Paradigm.Basis.Wye (<$>) :: (a -> b) -> Wye a -> Wye b Source # comap :: (a -> b) -> Wye a -> Wye b Source # (<$) :: a -> Wye b -> Wye a Source # ($>) :: Wye a -> b -> Wye b Source # void :: Wye a -> Wye () Source # loeb :: Wye (Wye a -> a) -> Wye a Source # (<$$>) :: Covariant u => (a -> b) -> Wye (u a) -> Wye (u b) Source # (<$$$>) :: (Covariant u, Covariant v) => (a -> b) -> Wye (u (v a)) -> Wye (u (v b)) Source # (<$$$$>) :: (Covariant u, Covariant v, Covariant w) => (a -> b) -> Wye (u (v (w a))) -> Wye (u (v (w b))) Source # | |
Covariant Edges Source # | |
Defined in Pandora.Paradigm.Basis.Edges (<$>) :: (a -> b) -> Edges a -> Edges b Source # comap :: (a -> b) -> Edges a -> Edges b Source # (<$) :: a -> Edges b -> Edges a Source # ($>) :: Edges a -> b -> Edges b Source # void :: Edges a -> Edges () Source # loeb :: Edges (Edges a -> a) -> Edges a Source # (<$$>) :: Covariant u => (a -> b) -> Edges (u a) -> Edges (u b) Source # (<$$$>) :: (Covariant u, Covariant v) => (a -> b) -> Edges (u (v a)) -> Edges (u (v b)) Source # (<$$$$>) :: (Covariant u, Covariant v, Covariant w) => (a -> b) -> Edges (u (v (w a))) -> Edges (u (v (w b))) Source # | |
Covariant Maybe Source # | |
Defined in Pandora.Paradigm.Basis.Maybe (<$>) :: (a -> b) -> Maybe a -> Maybe b Source # comap :: (a -> b) -> Maybe a -> Maybe b Source # (<$) :: a -> Maybe b -> Maybe a Source # ($>) :: Maybe a -> b -> Maybe b Source # void :: Maybe a -> Maybe () Source # loeb :: Maybe (Maybe a -> a) -> Maybe a Source # (<$$>) :: Covariant u => (a -> b) -> Maybe (u a) -> Maybe (u b) Source # (<$$$>) :: (Covariant u, Covariant v) => (a -> b) -> Maybe (u (v a)) -> Maybe (u (v b)) Source # (<$$$$>) :: (Covariant u, Covariant v, Covariant w) => (a -> b) -> Maybe (u (v (w a))) -> Maybe (u (v (w b))) Source # | |
Covariant Identity Source # | |
Defined in Pandora.Paradigm.Basis.Identity (<$>) :: (a -> b) -> Identity a -> Identity b Source # comap :: (a -> b) -> Identity a -> Identity b Source # (<$) :: a -> Identity b -> Identity a Source # ($>) :: Identity a -> b -> Identity b Source # void :: Identity a -> Identity () Source # loeb :: Identity (Identity a -> a) -> Identity a Source # (<$$>) :: Covariant u => (a -> b) -> Identity (u a) -> Identity (u b) Source # (<$$$>) :: (Covariant u, Covariant v) => (a -> b) -> Identity (u (v a)) -> Identity (u (v b)) Source # (<$$$$>) :: (Covariant u, Covariant v, Covariant w) => (a -> b) -> Identity (u (v (w a))) -> Identity (u (v (w b))) Source # | |
Covariant (Yoneda t) Source # | |
Defined in Pandora.Paradigm.Basis.Yoneda (<$>) :: (a -> b) -> Yoneda t a -> Yoneda t b Source # comap :: (a -> b) -> Yoneda t a -> Yoneda t b Source # (<$) :: a -> Yoneda t b -> Yoneda t a Source # ($>) :: Yoneda t a -> b -> Yoneda t b Source # void :: Yoneda t a -> Yoneda t () Source # loeb :: Yoneda t (Yoneda t a -> a) -> Yoneda t a Source # (<$$>) :: Covariant u => (a -> b) -> Yoneda t (u a) -> Yoneda t (u b) Source # (<$$$>) :: (Covariant u, Covariant v) => (a -> b) -> Yoneda t (u (v a)) -> Yoneda t (u (v b)) Source # (<$$$$>) :: (Covariant u, Covariant v, Covariant w) => (a -> b) -> Yoneda t (u (v (w a))) -> Yoneda t (u (v (w b))) Source # | |
Covariant (Variation e) Source # | |
Defined in Pandora.Paradigm.Basis.Variation (<$>) :: (a -> b) -> Variation e a -> Variation e b Source # comap :: (a -> b) -> Variation e a -> Variation e b Source # (<$) :: a -> Variation e b -> Variation e a Source # ($>) :: Variation e a -> b -> Variation e b Source # void :: Variation e a -> Variation e () Source # loeb :: Variation e (Variation e a -> a) -> Variation e a Source # (<$$>) :: Covariant u => (a -> b) -> Variation e (u a) -> Variation e (u b) Source # (<$$$>) :: (Covariant u, Covariant v) => (a -> b) -> Variation e (u (v a)) -> Variation e (u (v b)) Source # (<$$$$>) :: (Covariant u, Covariant v, Covariant w) => (a -> b) -> Variation e (u (v (w a))) -> Variation e (u (v (w b))) Source # | |
Covariant t => Covariant (Jet t) Source # | |
Defined in Pandora.Paradigm.Basis.Jet (<$>) :: (a -> b) -> Jet t a -> Jet t b Source # comap :: (a -> b) -> Jet t a -> Jet t b Source # (<$) :: a -> Jet t b -> Jet t a Source # ($>) :: Jet t a -> b -> Jet t b Source # void :: Jet t a -> Jet t () Source # loeb :: Jet t (Jet t a -> a) -> Jet t a Source # (<$$>) :: Covariant u => (a -> b) -> Jet t (u a) -> Jet t (u b) Source # (<$$$>) :: (Covariant u, Covariant v) => (a -> b) -> Jet t (u (v a)) -> Jet t (u (v b)) Source # (<$$$$>) :: (Covariant u, Covariant v, Covariant w) => (a -> b) -> Jet t (u (v (w a))) -> Jet t (u (v (w b))) Source # | |
Covariant t => Covariant (Free t) Source # | |
Defined in Pandora.Paradigm.Basis.Free (<$>) :: (a -> b) -> Free t a -> Free t b Source # comap :: (a -> b) -> Free t a -> Free t b Source # (<$) :: a -> Free t b -> Free t a Source # ($>) :: Free t a -> b -> Free t b Source # void :: Free t a -> Free t () Source # loeb :: Free t (Free t a -> a) -> Free t a Source # (<$$>) :: Covariant u => (a -> b) -> Free t (u a) -> Free t (u b) Source # (<$$$>) :: (Covariant u, Covariant v) => (a -> b) -> Free t (u (v a)) -> Free t (u (v b)) Source # (<$$$$>) :: (Covariant u, Covariant v, Covariant w) => (a -> b) -> Free t (u (v (w a))) -> Free t (u (v (w b))) Source # | |
Covariant (Product a) Source # | |
Defined in Pandora.Paradigm.Basis.Product (<$>) :: (a0 -> b) -> Product a a0 -> Product a b Source # comap :: (a0 -> b) -> Product a a0 -> Product a b Source # (<$) :: a0 -> Product a b -> Product a a0 Source # ($>) :: Product a a0 -> b -> Product a b Source # void :: Product a a0 -> Product a () Source # loeb :: Product a (Product a a0 -> a0) -> Product a a0 Source # (<$$>) :: Covariant u => (a0 -> b) -> Product a (u a0) -> Product a (u b) Source # (<$$$>) :: (Covariant u, Covariant v) => (a0 -> b) -> Product a (u (v a0)) -> Product a (u (v b)) Source # (<$$$$>) :: (Covariant u, Covariant v, Covariant w) => (a0 -> b) -> Product a (u (v (w a0))) -> Product a (u (v (w b))) Source # | |
Covariant t => Covariant (Jack t) Source # | |
Defined in Pandora.Paradigm.Basis.Jack (<$>) :: (a -> b) -> Jack t a -> Jack t b Source # comap :: (a -> b) -> Jack t a -> Jack t b Source # (<$) :: a -> Jack t b -> Jack t a Source # ($>) :: Jack t a -> b -> Jack t b Source # void :: Jack t a -> Jack t () Source # loeb :: Jack t (Jack t a -> a) -> Jack t a Source # (<$$>) :: Covariant u => (a -> b) -> Jack t (u a) -> Jack t (u b) Source # (<$$$>) :: (Covariant u, Covariant v) => (a -> b) -> Jack t (u (v a)) -> Jack t (u (v b)) Source # (<$$$$>) :: (Covariant u, Covariant v, Covariant w) => (a -> b) -> Jack t (u (v (w a))) -> Jack t (u (v (w b))) Source # | |
Covariant (Conclusion e) Source # | |
Defined in Pandora.Paradigm.Basis.Conclusion (<$>) :: (a -> b) -> Conclusion e a -> Conclusion e b Source # comap :: (a -> b) -> Conclusion e a -> Conclusion e b Source # (<$) :: a -> Conclusion e b -> Conclusion e a Source # ($>) :: Conclusion e a -> b -> Conclusion e b Source # void :: Conclusion e a -> Conclusion e () Source # loeb :: Conclusion e (Conclusion e a -> a) -> Conclusion e a Source # (<$$>) :: Covariant u => (a -> b) -> Conclusion e (u a) -> Conclusion e (u b) Source # (<$$$>) :: (Covariant u, Covariant v) => (a -> b) -> Conclusion e (u (v a)) -> Conclusion e (u (v b)) Source # (<$$$$>) :: (Covariant u, Covariant v, Covariant w) => (a -> b) -> Conclusion e (u (v (w a))) -> Conclusion e (u (v (w b))) Source # | |
Covariant t => Covariant (Cofree t) Source # | |
Defined in Pandora.Paradigm.Basis.Cofree (<$>) :: (a -> b) -> Cofree t a -> Cofree t b Source # comap :: (a -> b) -> Cofree t a -> Cofree t b Source # (<$) :: a -> Cofree t b -> Cofree t a Source # ($>) :: Cofree t a -> b -> Cofree t b Source # void :: Cofree t a -> Cofree t () Source # loeb :: Cofree t (Cofree t a -> a) -> Cofree t a Source # (<$$>) :: Covariant u => (a -> b) -> Cofree t (u a) -> Cofree t (u b) Source # (<$$$>) :: (Covariant u, Covariant v) => (a -> b) -> Cofree t (u (v a)) -> Cofree t (u (v b)) Source # (<$$$$>) :: (Covariant u, Covariant v, Covariant w) => (a -> b) -> Cofree t (u (v (w a))) -> Cofree t (u (v (w b))) Source # | |
Covariant t => Covariant (Storage p t) Source # | |
Defined in Pandora.Paradigm.Inventory.Storage (<$>) :: (a -> b) -> Storage p t a -> Storage p t b Source # comap :: (a -> b) -> Storage p t a -> Storage p t b Source # (<$) :: a -> Storage p t b -> Storage p t a Source # ($>) :: Storage p t a -> b -> Storage p t b Source # void :: Storage p t a -> Storage p t () Source # loeb :: Storage p t (Storage p t a -> a) -> Storage p t a Source # (<$$>) :: Covariant u => (a -> b) -> Storage p t (u a) -> Storage p t (u b) Source # (<$$$>) :: (Covariant u, Covariant v) => (a -> b) -> Storage p t (u (v a)) -> Storage p t (u (v b)) Source # (<$$$$>) :: (Covariant u, Covariant v, Covariant w) => (a -> b) -> Storage p t (u (v (w a))) -> Storage p t (u (v (w b))) Source # | |
Covariant t => Covariant (Stateful s t) Source # | |
Defined in Pandora.Paradigm.Inventory.Stateful (<$>) :: (a -> b) -> Stateful s t a -> Stateful s t b Source # comap :: (a -> b) -> Stateful s t a -> Stateful s t b Source # (<$) :: a -> Stateful s t b -> Stateful s t a Source # ($>) :: Stateful s t a -> b -> Stateful s t b Source # void :: Stateful s t a -> Stateful s t () Source # loeb :: Stateful s t (Stateful s t a -> a) -> Stateful s t a Source # (<$$>) :: Covariant u => (a -> b) -> Stateful s t (u a) -> Stateful s t (u b) Source # (<$$$>) :: (Covariant u, Covariant v) => (a -> b) -> Stateful s t (u (v a)) -> Stateful s t (u (v b)) Source # (<$$$$>) :: (Covariant u, Covariant v, Covariant w) => (a -> b) -> Stateful s t (u (v (w a))) -> Stateful s t (u (v (w b))) Source # | |
Covariant (Constant a :: Type -> Type) Source # | |
Defined in Pandora.Paradigm.Basis.Constant (<$>) :: (a0 -> b) -> Constant a a0 -> Constant a b Source # comap :: (a0 -> b) -> Constant a a0 -> Constant a b Source # (<$) :: a0 -> Constant a b -> Constant a a0 Source # ($>) :: Constant a a0 -> b -> Constant a b Source # void :: Constant a a0 -> Constant a () Source # loeb :: Constant a (Constant a a0 -> a0) -> Constant a a0 Source # (<$$>) :: Covariant u => (a0 -> b) -> Constant a (u a0) -> Constant a (u b) Source # (<$$$>) :: (Covariant u, Covariant v) => (a0 -> b) -> Constant a (u (v a0)) -> Constant a (u (v b)) Source # (<$$$$>) :: (Covariant u, Covariant v, Covariant w) => (a0 -> b) -> Constant a (u (v (w a0))) -> Constant a (u (v (w b))) Source # | |
Covariant ((->) a :: Type -> Type) Source # | |
Defined in Pandora.Pattern.Functor.Covariant (<$>) :: (a0 -> b) -> (a -> a0) -> a -> b Source # comap :: (a0 -> b) -> (a -> a0) -> a -> b Source # (<$) :: a0 -> (a -> b) -> a -> a0 Source # ($>) :: (a -> a0) -> b -> a -> b Source # void :: (a -> a0) -> a -> () Source # loeb :: (a -> ((a -> a0) -> a0)) -> a -> a0 Source # (<$$>) :: Covariant u => (a0 -> b) -> (a -> u a0) -> a -> u b Source # (<$$$>) :: (Covariant u, Covariant v) => (a0 -> b) -> (a -> u (v a0)) -> a -> u (v b) Source # (<$$$$>) :: (Covariant u, Covariant v, Covariant w) => (a0 -> b) -> (a -> u (v (w a0))) -> a -> u (v (w b)) Source # | |
Covariant (Ran t u b) Source # | |
Defined in Pandora.Paradigm.Junction.Kan (<$>) :: (a -> b0) -> Ran t u b a -> Ran t u b b0 Source # comap :: (a -> b0) -> Ran t u b a -> Ran t u b b0 Source # (<$) :: a -> Ran t u b b0 -> Ran t u b a Source # ($>) :: Ran t u b a -> b0 -> Ran t u b b0 Source # void :: Ran t u b a -> Ran t u b () Source # loeb :: Ran t u b (Ran t u b a -> a) -> Ran t u b a Source # (<$$>) :: Covariant u0 => (a -> b0) -> Ran t u b (u0 a) -> Ran t u b (u0 b0) Source # (<$$$>) :: (Covariant u0, Covariant v) => (a -> b0) -> Ran t u b (u0 (v a)) -> Ran t u b (u0 (v b0)) Source # (<$$$$>) :: (Covariant u0, Covariant v, Covariant w) => (a -> b0) -> Ran t u b (u0 (v (w a))) -> Ran t u b (u0 (v (w b0))) Source # | |
Covariant t => Covariant (Continuation r t) Source # | |
Defined in Pandora.Paradigm.Basis.Continuation (<$>) :: (a -> b) -> Continuation r t a -> Continuation r t b Source # comap :: (a -> b) -> Continuation r t a -> Continuation r t b Source # (<$) :: a -> Continuation r t b -> Continuation r t a Source # ($>) :: Continuation r t a -> b -> Continuation r t b Source # void :: Continuation r t a -> Continuation r t () Source # loeb :: Continuation r t (Continuation r t a -> a) -> Continuation r t a Source # (<$$>) :: Covariant u => (a -> b) -> Continuation r t (u a) -> Continuation r t (u b) Source # (<$$$>) :: (Covariant u, Covariant v) => (a -> b) -> Continuation r t (u (v a)) -> Continuation r t (u (v b)) Source # (<$$$$>) :: (Covariant u, Covariant v, Covariant w) => (a -> b) -> Continuation r t (u (v (w a))) -> Continuation r t (u (v (w b))) Source # | |
Covariant t => Covariant (Environmental e t) Source # | |
Defined in Pandora.Paradigm.Inventory.Environmental (<$>) :: (a -> b) -> Environmental e t a -> Environmental e t b Source # comap :: (a -> b) -> Environmental e t a -> Environmental e t b Source # (<$) :: a -> Environmental e t b -> Environmental e t a Source # ($>) :: Environmental e t a -> b -> Environmental e t b Source # void :: Environmental e t a -> Environmental e t () Source # loeb :: Environmental e t (Environmental e t a -> a) -> Environmental e t a Source # (<$$>) :: Covariant u => (a -> b) -> Environmental e t (u a) -> Environmental e t (u b) Source # (<$$$>) :: (Covariant u, Covariant v) => (a -> b) -> Environmental e t (u (v a)) -> Environmental e t (u (v b)) Source # (<$$$$>) :: (Covariant u, Covariant v, Covariant w) => (a -> b) -> Environmental e t (u (v (w a))) -> Environmental e t (u (v (w b))) Source # | |
(Covariant (t u), Covariant u) => Covariant (Y t u) Source # | |
Defined in Pandora.Paradigm.Junction.Transformer (<$>) :: (a -> b) -> Y t u a -> Y t u b Source # comap :: (a -> b) -> Y t u a -> Y t u b Source # (<$) :: a -> Y t u b -> Y t u a Source # ($>) :: Y t u a -> b -> Y t u b Source # void :: Y t u a -> Y t u () Source # loeb :: Y t u (Y t u a -> a) -> Y t u a Source # (<$$>) :: Covariant u0 => (a -> b) -> Y t u (u0 a) -> Y t u (u0 b) Source # (<$$$>) :: (Covariant u0, Covariant v) => (a -> b) -> Y t u (u0 (v a)) -> Y t u (u0 (v b)) Source # (<$$$$>) :: (Covariant u0, Covariant v, Covariant w) => (a -> b) -> Y t u (u0 (v (w a))) -> Y t u (u0 (v (w b))) Source # | |
(Covariant t, Covariant u) => Covariant (T t u) Source # | |
Defined in Pandora.Paradigm.Junction.Transformer (<$>) :: (a -> b) -> T t u a -> T t u b Source # comap :: (a -> b) -> T t u a -> T t u b Source # (<$) :: a -> T t u b -> T t u a Source # ($>) :: T t u a -> b -> T t u b Source # void :: T t u a -> T t u () Source # loeb :: T t u (T t u a -> a) -> T t u a Source # (<$$>) :: Covariant u0 => (a -> b) -> T t u (u0 a) -> T t u (u0 b) Source # (<$$$>) :: (Covariant u0, Covariant v) => (a -> b) -> T t u (u0 (v a)) -> T t u (u0 (v b)) Source # (<$$$$>) :: (Covariant u0, Covariant v, Covariant w) => (a -> b) -> T t u (u0 (v (w a))) -> T t u (u0 (v (w b))) Source # | |
(Covariant t, Covariant u) => Covariant (U Co Co t u) Source # | |
Defined in Pandora.Paradigm.Junction.Composition (<$>) :: (a -> b) -> U Co Co t u a -> U Co Co t u b Source # comap :: (a -> b) -> U Co Co t u a -> U Co Co t u b Source # (<$) :: a -> U Co Co t u b -> U Co Co t u a Source # ($>) :: U Co Co t u a -> b -> U Co Co t u b Source # void :: U Co Co t u a -> U Co Co t u () Source # loeb :: U Co Co t u (U Co Co t u a -> a) -> U Co Co t u a Source # (<$$>) :: Covariant u0 => (a -> b) -> U Co Co t u (u0 a) -> U Co Co t u (u0 b) Source # (<$$$>) :: (Covariant u0, Covariant v) => (a -> b) -> U Co Co t u (u0 (v a)) -> U Co Co t u (u0 (v b)) Source # (<$$$$>) :: (Covariant u0, Covariant v, Covariant w) => (a -> b) -> U Co Co t u (u0 (v (w a))) -> U Co Co t u (u0 (v (w b))) Source # | |
(Contravariant t, Contravariant u) => Covariant (U Contra Contra t u) Source # | |
Defined in Pandora.Paradigm.Junction.Composition (<$>) :: (a -> b) -> U Contra Contra t u a -> U Contra Contra t u b Source # comap :: (a -> b) -> U Contra Contra t u a -> U Contra Contra t u b Source # (<$) :: a -> U Contra Contra t u b -> U Contra Contra t u a Source # ($>) :: U Contra Contra t u a -> b -> U Contra Contra t u b Source # void :: U Contra Contra t u a -> U Contra Contra t u () Source # loeb :: U Contra Contra t u (U Contra Contra t u a -> a) -> U Contra Contra t u a Source # (<$$>) :: Covariant u0 => (a -> b) -> U Contra Contra t u (u0 a) -> U Contra Contra t u (u0 b) Source # (<$$$>) :: (Covariant u0, Covariant v) => (a -> b) -> U Contra Contra t u (u0 (v a)) -> U Contra Contra t u (u0 (v b)) Source # (<$$$$>) :: (Covariant u0, Covariant v, Covariant w) => (a -> b) -> U Contra Contra t u (u0 (v (w a))) -> U Contra Contra t u (u0 (v (w b))) Source # | |
(Covariant t, Covariant u, Covariant v) => Covariant (UU Co Co Co t u v) Source # | |
Defined in Pandora.Paradigm.Junction.Composition (<$>) :: (a -> b) -> UU Co Co Co t u v a -> UU Co Co Co t u v b Source # comap :: (a -> b) -> UU Co Co Co t u v a -> UU Co Co Co t u v b Source # (<$) :: a -> UU Co Co Co t u v b -> UU Co Co Co t u v a Source # ($>) :: UU Co Co Co t u v a -> b -> UU Co Co Co t u v b Source # void :: UU Co Co Co t u v a -> UU Co Co Co t u v () Source # loeb :: UU Co Co Co t u v (UU Co Co Co t u v a -> a) -> UU Co Co Co t u v a Source # (<$$>) :: Covariant u0 => (a -> b) -> UU Co Co Co t u v (u0 a) -> UU Co Co Co t u v (u0 b) Source # (<$$$>) :: (Covariant u0, Covariant v0) => (a -> b) -> UU Co Co Co t u v (u0 (v0 a)) -> UU Co Co Co t u v (u0 (v0 b)) Source # (<$$$$>) :: (Covariant u0, Covariant v0, Covariant w) => (a -> b) -> UU Co Co Co t u v (u0 (v0 (w a))) -> UU Co Co Co t u v (u0 (v0 (w b))) Source # | |
(Covariant t, Contravariant u, Contravariant v) => Covariant (UU Co Contra Contra t u v) Source # | |
Defined in Pandora.Paradigm.Junction.Composition (<$>) :: (a -> b) -> UU Co Contra Contra t u v a -> UU Co Contra Contra t u v b Source # comap :: (a -> b) -> UU Co Contra Contra t u v a -> UU Co Contra Contra t u v b Source # (<$) :: a -> UU Co Contra Contra t u v b -> UU Co Contra Contra t u v a Source # ($>) :: UU Co Contra Contra t u v a -> b -> UU Co Contra Contra t u v b Source # void :: UU Co Contra Contra t u v a -> UU Co Contra Contra t u v () Source # loeb :: UU Co Contra Contra t u v (UU Co Contra Contra t u v a -> a) -> UU Co Contra Contra t u v a Source # (<$$>) :: Covariant u0 => (a -> b) -> UU Co Contra Contra t u v (u0 a) -> UU Co Contra Contra t u v (u0 b) Source # (<$$$>) :: (Covariant u0, Covariant v0) => (a -> b) -> UU Co Contra Contra t u v (u0 (v0 a)) -> UU Co Contra Contra t u v (u0 (v0 b)) Source # (<$$$$>) :: (Covariant u0, Covariant v0, Covariant w) => (a -> b) -> UU Co Contra Contra t u v (u0 (v0 (w a))) -> UU Co Contra Contra t u v (u0 (v0 (w b))) Source # | |
(Contravariant t, Covariant u, Contravariant v) => Covariant (UU Contra Co Contra t u v) Source # | |
Defined in Pandora.Paradigm.Junction.Composition (<$>) :: (a -> b) -> UU Contra Co Contra t u v a -> UU Contra Co Contra t u v b Source # comap :: (a -> b) -> UU Contra Co Contra t u v a -> UU Contra Co Contra t u v b Source # (<$) :: a -> UU Contra Co Contra t u v b -> UU Contra Co Contra t u v a Source # ($>) :: UU Contra Co Contra t u v a -> b -> UU Contra Co Contra t u v b Source # void :: UU Contra Co Contra t u v a -> UU Contra Co Contra t u v () Source # loeb :: UU Contra Co Contra t u v (UU Contra Co Contra t u v a -> a) -> UU Contra Co Contra t u v a Source # (<$$>) :: Covariant u0 => (a -> b) -> UU Contra Co Contra t u v (u0 a) -> UU Contra Co Contra t u v (u0 b) Source # (<$$$>) :: (Covariant u0, Covariant v0) => (a -> b) -> UU Contra Co Contra t u v (u0 (v0 a)) -> UU Contra Co Contra t u v (u0 (v0 b)) Source # (<$$$$>) :: (Covariant u0, Covariant v0, Covariant w) => (a -> b) -> UU Contra Co Contra t u v (u0 (v0 (w a))) -> UU Contra Co Contra t u v (u0 (v0 (w b))) Source # | |
(Contravariant t, Contravariant u, Covariant v) => Covariant (UU Contra Contra Co t u v) Source # | |
Defined in Pandora.Paradigm.Junction.Composition (<$>) :: (a -> b) -> UU Contra Contra Co t u v a -> UU Contra Contra Co t u v b Source # comap :: (a -> b) -> UU Contra Contra Co t u v a -> UU Contra Contra Co t u v b Source # (<$) :: a -> UU Contra Contra Co t u v b -> UU Contra Contra Co t u v a Source # ($>) :: UU Contra Contra Co t u v a -> b -> UU Contra Contra Co t u v b Source # void :: UU Contra Contra Co t u v a -> UU Contra Contra Co t u v () Source # loeb :: UU Contra Contra Co t u v (UU Contra Contra Co t u v a -> a) -> UU Contra Contra Co t u v a Source # (<$$>) :: Covariant u0 => (a -> b) -> UU Contra Contra Co t u v (u0 a) -> UU Contra Contra Co t u v (u0 b) Source # (<$$$>) :: (Covariant u0, Covariant v0) => (a -> b) -> UU Contra Contra Co t u v (u0 (v0 a)) -> UU Contra Contra Co t u v (u0 (v0 b)) Source # (<$$$$>) :: (Covariant u0, Covariant v0, Covariant w) => (a -> b) -> UU Contra Contra Co t u v (u0 (v0 (w a))) -> UU Contra Contra Co t u v (u0 (v0 (w b))) Source # | |
(Covariant t, Covariant u, Covariant v, Covariant w) => Covariant (UUU Co Co Co Co t u v w) Source # | |
Defined in Pandora.Paradigm.Junction.Composition (<$>) :: (a -> b) -> UUU Co Co Co Co t u v w a -> UUU Co Co Co Co t u v w b Source # comap :: (a -> b) -> UUU Co Co Co Co t u v w a -> UUU Co Co Co Co t u v w b Source # (<$) :: a -> UUU Co Co Co Co t u v w b -> UUU Co Co Co Co t u v w a Source # ($>) :: UUU Co Co Co Co t u v w a -> b -> UUU Co Co Co Co t u v w b Source # void :: UUU Co Co Co Co t u v w a -> UUU Co Co Co Co t u v w () Source # loeb :: UUU Co Co Co Co t u v w (UUU Co Co Co Co t u v w a -> a) -> UUU Co Co Co Co t u v w a Source # (<$$>) :: Covariant u0 => (a -> b) -> UUU Co Co Co Co t u v w (u0 a) -> UUU Co Co Co Co t u v w (u0 b) Source # (<$$$>) :: (Covariant u0, Covariant v0) => (a -> b) -> UUU Co Co Co Co t u v w (u0 (v0 a)) -> UUU Co Co Co Co t u v w (u0 (v0 b)) Source # (<$$$$>) :: (Covariant u0, Covariant v0, Covariant w0) => (a -> b) -> UUU Co Co Co Co t u v w (u0 (v0 (w0 a))) -> UUU Co Co Co Co t u v w (u0 (v0 (w0 b))) Source # | |
(Covariant t, Covariant u, Contravariant v, Contravariant w) => Covariant (UUU Co Co Contra Contra t u v w) Source # | |
Defined in Pandora.Paradigm.Junction.Composition (<$>) :: (a -> b) -> UUU Co Co Contra Contra t u v w a -> UUU Co Co Contra Contra t u v w b Source # comap :: (a -> b) -> UUU Co Co Contra Contra t u v w a -> UUU Co Co Contra Contra t u v w b Source # (<$) :: a -> UUU Co Co Contra Contra t u v w b -> UUU Co Co Contra Contra t u v w a Source # ($>) :: UUU Co Co Contra Contra t u v w a -> b -> UUU Co Co Contra Contra t u v w b Source # void :: UUU Co Co Contra Contra t u v w a -> UUU Co Co Contra Contra t u v w () Source # loeb :: UUU Co Co Contra Contra t u v w (UUU Co Co Contra Contra t u v w a -> a) -> UUU Co Co Contra Contra t u v w a Source # (<$$>) :: Covariant u0 => (a -> b) -> UUU Co Co Contra Contra t u v w (u0 a) -> UUU Co Co Contra Contra t u v w (u0 b) Source # (<$$$>) :: (Covariant u0, Covariant v0) => (a -> b) -> UUU Co Co Contra Contra t u v w (u0 (v0 a)) -> UUU Co Co Contra Contra t u v w (u0 (v0 b)) Source # (<$$$$>) :: (Covariant u0, Covariant v0, Covariant w0) => (a -> b) -> UUU Co Co Contra Contra t u v w (u0 (v0 (w0 a))) -> UUU Co Co Contra Contra t u v w (u0 (v0 (w0 b))) Source # | |
(Covariant t, Contravariant u, Covariant v, Contravariant w) => Covariant (UUU Co Contra Co Contra t u v w) Source # | |
Defined in Pandora.Paradigm.Junction.Composition (<$>) :: (a -> b) -> UUU Co Contra Co Contra t u v w a -> UUU Co Contra Co Contra t u v w b Source # comap :: (a -> b) -> UUU Co Contra Co Contra t u v w a -> UUU Co Contra Co Contra t u v w b Source # (<$) :: a -> UUU Co Contra Co Contra t u v w b -> UUU Co Contra Co Contra t u v w a Source # ($>) :: UUU Co Contra Co Contra t u v w a -> b -> UUU Co Contra Co Contra t u v w b Source # void :: UUU Co Contra Co Contra t u v w a -> UUU Co Contra Co Contra t u v w () Source # loeb :: UUU Co Contra Co Contra t u v w (UUU Co Contra Co Contra t u v w a -> a) -> UUU Co Contra Co Contra t u v w a Source # (<$$>) :: Covariant u0 => (a -> b) -> UUU Co Contra Co Contra t u v w (u0 a) -> UUU Co Contra Co Contra t u v w (u0 b) Source # (<$$$>) :: (Covariant u0, Covariant v0) => (a -> b) -> UUU Co Contra Co Contra t u v w (u0 (v0 a)) -> UUU Co Contra Co Contra t u v w (u0 (v0 b)) Source # (<$$$$>) :: (Covariant u0, Covariant v0, Covariant w0) => (a -> b) -> UUU Co Contra Co Contra t u v w (u0 (v0 (w0 a))) -> UUU Co Contra Co Contra t u v w (u0 (v0 (w0 b))) Source # | |
(Covariant t, Contravariant u, Contravariant v, Covariant w) => Covariant (UUU Co Contra Contra Co t u v w) Source # | |
Defined in Pandora.Paradigm.Junction.Composition (<$>) :: (a -> b) -> UUU Co Contra Contra Co t u v w a -> UUU Co Contra Contra Co t u v w b Source # comap :: (a -> b) -> UUU Co Contra Contra Co t u v w a -> UUU Co Contra Contra Co t u v w b Source # (<$) :: a -> UUU Co Contra Contra Co t u v w b -> UUU Co Contra Contra Co t u v w a Source # ($>) :: UUU Co Contra Contra Co t u v w a -> b -> UUU Co Contra Contra Co t u v w b Source # void :: UUU Co Contra Contra Co t u v w a -> UUU Co Contra Contra Co t u v w () Source # loeb :: UUU Co Contra Contra Co t u v w (UUU Co Contra Contra Co t u v w a -> a) -> UUU Co Contra Contra Co t u v w a Source # (<$$>) :: Covariant u0 => (a -> b) -> UUU Co Contra Contra Co t u v w (u0 a) -> UUU Co Contra Contra Co t u v w (u0 b) Source # (<$$$>) :: (Covariant u0, Covariant v0) => (a -> b) -> UUU Co Contra Contra Co t u v w (u0 (v0 a)) -> UUU Co Contra Contra Co t u v w (u0 (v0 b)) Source # (<$$$$>) :: (Covariant u0, Covariant v0, Covariant w0) => (a -> b) -> UUU Co Contra Contra Co t u v w (u0 (v0 (w0 a))) -> UUU Co Contra Contra Co t u v w (u0 (v0 (w0 b))) Source # | |
(Contravariant t, Covariant u, Covariant v, Contravariant w) => Covariant (UUU Contra Co Co Contra t u v w) Source # | |
Defined in Pandora.Paradigm.Junction.Composition (<$>) :: (a -> b) -> UUU Contra Co Co Contra t u v w a -> UUU Contra Co Co Contra t u v w b Source # comap :: (a -> b) -> UUU Contra Co Co Contra t u v w a -> UUU Contra Co Co Contra t u v w b Source # (<$) :: a -> UUU Contra Co Co Contra t u v w b -> UUU Contra Co Co Contra t u v w a Source # ($>) :: UUU Contra Co Co Contra t u v w a -> b -> UUU Contra Co Co Contra t u v w b Source # void :: UUU Contra Co Co Contra t u v w a -> UUU Contra Co Co Contra t u v w () Source # loeb :: UUU Contra Co Co Contra t u v w (UUU Contra Co Co Contra t u v w a -> a) -> UUU Contra Co Co Contra t u v w a Source # (<$$>) :: Covariant u0 => (a -> b) -> UUU Contra Co Co Contra t u v w (u0 a) -> UUU Contra Co Co Contra t u v w (u0 b) Source # (<$$$>) :: (Covariant u0, Covariant v0) => (a -> b) -> UUU Contra Co Co Contra t u v w (u0 (v0 a)) -> UUU Contra Co Co Contra t u v w (u0 (v0 b)) Source # (<$$$$>) :: (Covariant u0, Covariant v0, Covariant w0) => (a -> b) -> UUU Contra Co Co Contra t u v w (u0 (v0 (w0 a))) -> UUU Contra Co Co Contra t u v w (u0 (v0 (w0 b))) Source # | |
(Contravariant t, Covariant u, Contravariant v, Covariant w) => Covariant (UUU Contra Co Contra Co t u v w) Source # | |
Defined in Pandora.Paradigm.Junction.Composition (<$>) :: (a -> b) -> UUU Contra Co Contra Co t u v w a -> UUU Contra Co Contra Co t u v w b Source # comap :: (a -> b) -> UUU Contra Co Contra Co t u v w a -> UUU Contra Co Contra Co t u v w b Source # (<$) :: a -> UUU Contra Co Contra Co t u v w b -> UUU Contra Co Contra Co t u v w a Source # ($>) :: UUU Contra Co Contra Co t u v w a -> b -> UUU Contra Co Contra Co t u v w b Source # void :: UUU Contra Co Contra Co t u v w a -> UUU Contra Co Contra Co t u v w () Source # loeb :: UUU Contra Co Contra Co t u v w (UUU Contra Co Contra Co t u v w a -> a) -> UUU Contra Co Contra Co t u v w a Source # (<$$>) :: Covariant u0 => (a -> b) -> UUU Contra Co Contra Co t u v w (u0 a) -> UUU Contra Co Contra Co t u v w (u0 b) Source # (<$$$>) :: (Covariant u0, Covariant v0) => (a -> b) -> UUU Contra Co Contra Co t u v w (u0 (v0 a)) -> UUU Contra Co Contra Co t u v w (u0 (v0 b)) Source # (<$$$$>) :: (Covariant u0, Covariant v0, Covariant w0) => (a -> b) -> UUU Contra Co Contra Co t u v w (u0 (v0 (w0 a))) -> UUU Contra Co Contra Co t u v w (u0 (v0 (w0 b))) Source # | |
(Contravariant t, Contravariant u, Covariant v, Covariant w) => Covariant (UUU Contra Contra Co Co t u v w) Source # | |
Defined in Pandora.Paradigm.Junction.Composition (<$>) :: (a -> b) -> UUU Contra Contra Co Co t u v w a -> UUU Contra Contra Co Co t u v w b Source # comap :: (a -> b) -> UUU Contra Contra Co Co t u v w a -> UUU Contra Contra Co Co t u v w b Source # (<$) :: a -> UUU Contra Contra Co Co t u v w b -> UUU Contra Contra Co Co t u v w a Source # ($>) :: UUU Contra Contra Co Co t u v w a -> b -> UUU Contra Contra Co Co t u v w b Source # void :: UUU Contra Contra Co Co t u v w a -> UUU Contra Contra Co Co t u v w () Source # loeb :: UUU Contra Contra Co Co t u v w (UUU Contra Contra Co Co t u v w a -> a) -> UUU Contra Contra Co Co t u v w a Source # (<$$>) :: Covariant u0 => (a -> b) -> UUU Contra Contra Co Co t u v w (u0 a) -> UUU Contra Contra Co Co t u v w (u0 b) Source # (<$$$>) :: (Covariant u0, Covariant v0) => (a -> b) -> UUU Contra Contra Co Co t u v w (u0 (v0 a)) -> UUU Contra Contra Co Co t u v w (u0 (v0 b)) Source # (<$$$$>) :: (Covariant u0, Covariant v0, Covariant w0) => (a -> b) -> UUU Contra Contra Co Co t u v w (u0 (v0 (w0 a))) -> UUU Contra Contra Co Co t u v w (u0 (v0 (w0 b))) Source # | |
(Contravariant t, Contravariant u, Contravariant v, Contravariant w) => Covariant (UUU Contra Contra Contra Contra t u v w) Source # | |
Defined in Pandora.Paradigm.Junction.Composition (<$>) :: (a -> b) -> UUU Contra Contra Contra Contra t u v w a -> UUU Contra Contra Contra Contra t u v w b Source # comap :: (a -> b) -> UUU Contra Contra Contra Contra t u v w a -> UUU Contra Contra Contra Contra t u v w b Source # (<$) :: a -> UUU Contra Contra Contra Contra t u v w b -> UUU Contra Contra Contra Contra t u v w a Source # ($>) :: UUU Contra Contra Contra Contra t u v w a -> b -> UUU Contra Contra Contra Contra t u v w b Source # void :: UUU Contra Contra Contra Contra t u v w a -> UUU Contra Contra Contra Contra t u v w () Source # loeb :: UUU Contra Contra Contra Contra t u v w (UUU Contra Contra Contra Contra t u v w a -> a) -> UUU Contra Contra Contra Contra t u v w a Source # (<$$>) :: Covariant u0 => (a -> b) -> UUU Contra Contra Contra Contra t u v w (u0 a) -> UUU Contra Contra Contra Contra t u v w (u0 b) Source # (<$$$>) :: (Covariant u0, Covariant v0) => (a -> b) -> UUU Contra Contra Contra Contra t u v w (u0 (v0 a)) -> UUU Contra Contra Contra Contra t u v w (u0 (v0 b)) Source # (<$$$$>) :: (Covariant u0, Covariant v0, Covariant w0) => (a -> b) -> UUU Contra Contra Contra Contra t u v w (u0 (v0 (w0 a))) -> UUU Contra Contra Contra Contra t u v w (u0 (v0 (w0 b))) Source # |