pandora-0.1.9: A box of patterns and paradigms

Safe HaskellSafe
LanguageHaskell2010

Pandora.Pattern.Functor.Covariant

Synopsis

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

Minimal complete definition

(<$>)

Methods

(<$>) :: (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 <$

void :: t a -> t () Source #

Discards the result of evaluation

loeb :: t (t a -> a) -> t a Source #

Computing a value from a structure of values

(<&>) :: t a -> (a -> b) -> t b Source #

Flipped infix version of comap

(<$$>) :: 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 #

(<&&>) :: Covariant u => ((t :.: u) >< a) -> (a -> b) -> (t :.: u) >< b Source #

Infix flipped versions of comap with various nesting levels

(<&&&>) :: (Covariant u, Covariant v) => ((t :.: (u :.: v)) >< a) -> (a -> b) -> (t :.: (u :.: v)) >< b Source #

(<&&&&>) :: (Covariant u, Covariant v, Covariant w) => ((t :.: (u :.: (v :.: w))) >< a) -> (a -> b) -> (t :.: (u :.: (v :.: w))) >< b Source #

Instances
Covariant Wye Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Wye

Methods

(<$>) :: (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 #

(<&>) :: Wye a -> (a -> b) -> Wye b 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 u => ((Wye :.: u) >< a) -> (a -> b) -> (Wye :.: u) >< b Source #

(<&&&>) :: (Covariant u, Covariant v) => ((Wye :.: (u :.: v)) >< a) -> (a -> b) -> (Wye :.: (u :.: v)) >< b Source #

(<&&&&>) :: (Covariant u, Covariant v, Covariant w) => ((Wye :.: (u :.: (v :.: w))) >< a) -> (a -> b) -> (Wye :.: (u :.: (v :.: w))) >< b Source #

Covariant Edges Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Edges

Methods

(<$>) :: (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 #

(<&>) :: Edges a -> (a -> b) -> Edges b 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 u => ((Edges :.: u) >< a) -> (a -> b) -> (Edges :.: u) >< b Source #

(<&&&>) :: (Covariant u, Covariant v) => ((Edges :.: (u :.: v)) >< a) -> (a -> b) -> (Edges :.: (u :.: v)) >< b Source #

(<&&&&>) :: (Covariant u, Covariant v, Covariant w) => ((Edges :.: (u :.: (v :.: w))) >< a) -> (a -> b) -> (Edges :.: (u :.: (v :.: w))) >< b Source #

Covariant Maybe Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Maybe

Methods

(<$>) :: (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 #

(<&>) :: Maybe a -> (a -> b) -> Maybe b 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 u => ((Maybe :.: u) >< a) -> (a -> b) -> (Maybe :.: u) >< b Source #

(<&&&>) :: (Covariant u, Covariant v) => ((Maybe :.: (u :.: v)) >< a) -> (a -> b) -> (Maybe :.: (u :.: v)) >< b Source #

(<&&&&>) :: (Covariant u, Covariant v, Covariant w) => ((Maybe :.: (u :.: (v :.: w))) >< a) -> (a -> b) -> (Maybe :.: (u :.: (v :.: w))) >< b Source #

Covariant Stack Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Stack

Methods

(<$>) :: (a -> b) -> Stack a -> Stack b Source #

comap :: (a -> b) -> Stack a -> Stack b Source #

(<$) :: a -> Stack b -> Stack a Source #

($>) :: Stack a -> b -> Stack b Source #

void :: Stack a -> Stack () Source #

loeb :: Stack (Stack a -> a) -> Stack a Source #

(<&>) :: Stack a -> (a -> b) -> Stack b Source #

(<$$>) :: Covariant u => (a -> b) -> ((Stack :.: u) >< a) -> (Stack :.: u) >< b Source #

(<$$$>) :: (Covariant u, Covariant v) => (a -> b) -> ((Stack :.: (u :.: v)) >< a) -> (Stack :.: (u :.: v)) >< b Source #

(<$$$$>) :: (Covariant u, Covariant v, Covariant w) => (a -> b) -> ((Stack :.: (u :.: (v :.: w))) >< a) -> (Stack :.: (u :.: (v :.: w))) >< b Source #

(<&&>) :: Covariant u => ((Stack :.: u) >< a) -> (a -> b) -> (Stack :.: u) >< b Source #

(<&&&>) :: (Covariant u, Covariant v) => ((Stack :.: (u :.: v)) >< a) -> (a -> b) -> (Stack :.: (u :.: v)) >< b Source #

(<&&&&>) :: (Covariant u, Covariant v, Covariant w) => ((Stack :.: (u :.: (v :.: w))) >< a) -> (a -> b) -> (Stack :.: (u :.: (v :.: w))) >< b Source #

Covariant Identity Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Identity

Methods

(<$>) :: (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 #

(<&>) :: Identity a -> (a -> b) -> Identity b 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 u => ((Identity :.: u) >< a) -> (a -> b) -> (Identity :.: u) >< b Source #

(<&&&>) :: (Covariant u, Covariant v) => ((Identity :.: (u :.: v)) >< a) -> (a -> b) -> (Identity :.: (u :.: v)) >< b Source #

(<&&&&>) :: (Covariant u, Covariant v, Covariant w) => ((Identity :.: (u :.: (v :.: w))) >< a) -> (a -> b) -> (Identity :.: (u :.: (v :.: w))) >< b Source #

Covariant (Environmental e) Source # 
Instance details

Defined in Pandora.Paradigm.Inventory.Environmental

Methods

(<$>) :: (a -> b) -> Environmental e a -> Environmental e b Source #

comap :: (a -> b) -> Environmental e a -> Environmental e b Source #

(<$) :: a -> Environmental e b -> Environmental e a Source #

($>) :: Environmental e a -> b -> Environmental e b Source #

void :: Environmental e a -> Environmental e () Source #

loeb :: Environmental e (Environmental e a -> a) -> Environmental e a Source #

(<&>) :: Environmental e a -> (a -> b) -> Environmental e b Source #

(<$$>) :: Covariant u => (a -> b) -> ((Environmental e :.: u) >< a) -> (Environmental e :.: u) >< b Source #

(<$$$>) :: (Covariant u, Covariant v) => (a -> b) -> ((Environmental e :.: (u :.: v)) >< a) -> (Environmental e :.: (u :.: v)) >< b Source #

(<$$$$>) :: (Covariant u, Covariant v, Covariant w) => (a -> b) -> ((Environmental e :.: (u :.: (v :.: w))) >< a) -> (Environmental e :.: (u :.: (v :.: w))) >< b Source #

(<&&>) :: Covariant u => ((Environmental e :.: u) >< a) -> (a -> b) -> (Environmental e :.: u) >< b Source #

(<&&&>) :: (Covariant u, Covariant v) => ((Environmental e :.: (u :.: v)) >< a) -> (a -> b) -> (Environmental e :.: (u :.: v)) >< b Source #

(<&&&&>) :: (Covariant u, Covariant v, Covariant w) => ((Environmental e :.: (u :.: (v :.: w))) >< a) -> (a -> b) -> (Environmental e :.: (u :.: (v :.: w))) >< b Source #

Covariant (Yoneda t) Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Yoneda

Methods

(<$>) :: (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 #

(<&>) :: Yoneda t a -> (a -> b) -> Yoneda t b 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 u => ((Yoneda t :.: u) >< a) -> (a -> b) -> (Yoneda t :.: u) >< b Source #

(<&&&>) :: (Covariant u, Covariant v) => ((Yoneda t :.: (u :.: v)) >< a) -> (a -> b) -> (Yoneda t :.: (u :.: v)) >< b Source #

(<&&&&>) :: (Covariant u, Covariant v, Covariant w) => ((Yoneda t :.: (u :.: (v :.: w))) >< a) -> (a -> b) -> (Yoneda t :.: (u :.: (v :.: w))) >< b Source #

Covariant (Proxy :: Type -> Type) Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Proxy

Methods

(<$>) :: (a -> b) -> Proxy a -> Proxy b Source #

comap :: (a -> b) -> Proxy a -> Proxy b Source #

(<$) :: a -> Proxy b -> Proxy a Source #

($>) :: Proxy a -> b -> Proxy b Source #

void :: Proxy a -> Proxy () Source #

loeb :: Proxy (Proxy a -> a) -> Proxy a Source #

(<&>) :: Proxy a -> (a -> b) -> Proxy b Source #

(<$$>) :: Covariant u => (a -> b) -> ((Proxy :.: u) >< a) -> (Proxy :.: u) >< b Source #

(<$$$>) :: (Covariant u, Covariant v) => (a -> b) -> ((Proxy :.: (u :.: v)) >< a) -> (Proxy :.: (u :.: v)) >< b Source #

(<$$$$>) :: (Covariant u, Covariant v, Covariant w) => (a -> b) -> ((Proxy :.: (u :.: (v :.: w))) >< a) -> (Proxy :.: (u :.: (v :.: w))) >< b Source #

(<&&>) :: Covariant u => ((Proxy :.: u) >< a) -> (a -> b) -> (Proxy :.: u) >< b Source #

(<&&&>) :: (Covariant u, Covariant v) => ((Proxy :.: (u :.: v)) >< a) -> (a -> b) -> (Proxy :.: (u :.: v)) >< b Source #

(<&&&&>) :: (Covariant u, Covariant v, Covariant w) => ((Proxy :.: (u :.: (v :.: w))) >< a) -> (a -> b) -> (Proxy :.: (u :.: (v :.: w))) >< b Source #

Covariant (Variation e) Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Variation

Methods

(<$>) :: (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 #

(<&>) :: Variation e a -> (a -> b) -> Variation e b 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 u => ((Variation e :.: u) >< a) -> (a -> b) -> (Variation e :.: u) >< b Source #

(<&&&>) :: (Covariant u, Covariant v) => ((Variation e :.: (u :.: v)) >< a) -> (a -> b) -> (Variation e :.: (u :.: v)) >< b Source #

(<&&&&>) :: (Covariant u, Covariant v, Covariant w) => ((Variation e :.: (u :.: (v :.: w))) >< a) -> (a -> b) -> (Variation e :.: (u :.: (v :.: w))) >< b Source #

Covariant t => Covariant (Jet t) Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Jet

Methods

(<$>) :: (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 #

(<&>) :: Jet t a -> (a -> b) -> Jet t b 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 u => ((Jet t :.: u) >< a) -> (a -> b) -> (Jet t :.: u) >< b Source #

(<&&&>) :: (Covariant u, Covariant v) => ((Jet t :.: (u :.: v)) >< a) -> (a -> b) -> (Jet t :.: (u :.: v)) >< b Source #

(<&&&&>) :: (Covariant u, Covariant v, Covariant w) => ((Jet t :.: (u :.: (v :.: w))) >< a) -> (a -> b) -> (Jet t :.: (u :.: (v :.: w))) >< b Source #

Covariant t => Covariant (Free t) Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Free

Methods

(<$>) :: (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 #

(<&>) :: Free t a -> (a -> b) -> Free t b 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 u => ((Free t :.: u) >< a) -> (a -> b) -> (Free t :.: u) >< b Source #

(<&&&>) :: (Covariant u, Covariant v) => ((Free t :.: (u :.: v)) >< a) -> (a -> b) -> (Free t :.: (u :.: v)) >< b Source #

(<&&&&>) :: (Covariant u, Covariant v, Covariant w) => ((Free t :.: (u :.: (v :.: w))) >< a) -> (a -> b) -> (Free t :.: (u :.: (v :.: w))) >< b Source #

Covariant (Validation e) Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Validation

Methods

(<$>) :: (a -> b) -> Validation e a -> Validation e b Source #

comap :: (a -> b) -> Validation e a -> Validation e b Source #

(<$) :: a -> Validation e b -> Validation e a Source #

($>) :: Validation e a -> b -> Validation e b Source #

void :: Validation e a -> Validation e () Source #

loeb :: Validation e (Validation e a -> a) -> Validation e a Source #

(<&>) :: Validation e a -> (a -> b) -> Validation e b Source #

(<$$>) :: Covariant u => (a -> b) -> ((Validation e :.: u) >< a) -> (Validation e :.: u) >< b Source #

(<$$$>) :: (Covariant u, Covariant v) => (a -> b) -> ((Validation e :.: (u :.: v)) >< a) -> (Validation e :.: (u :.: v)) >< b Source #

(<$$$$>) :: (Covariant u, Covariant v, Covariant w) => (a -> b) -> ((Validation e :.: (u :.: (v :.: w))) >< a) -> (Validation e :.: (u :.: (v :.: w))) >< b Source #

(<&&>) :: Covariant u => ((Validation e :.: u) >< a) -> (a -> b) -> (Validation e :.: u) >< b Source #

(<&&&>) :: (Covariant u, Covariant v) => ((Validation e :.: (u :.: v)) >< a) -> (a -> b) -> (Validation e :.: (u :.: v)) >< b Source #

(<&&&&>) :: (Covariant u, Covariant v, Covariant w) => ((Validation e :.: (u :.: (v :.: w))) >< a) -> (a -> b) -> (Validation e :.: (u :.: (v :.: w))) >< b Source #

Covariant t => Covariant (Twister t) Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Twister

Methods

(<$>) :: (a -> b) -> Twister t a -> Twister t b Source #

comap :: (a -> b) -> Twister t a -> Twister t b Source #

(<$) :: a -> Twister t b -> Twister t a Source #

($>) :: Twister t a -> b -> Twister t b Source #

void :: Twister t a -> Twister t () Source #

loeb :: Twister t (Twister t a -> a) -> Twister t a Source #

(<&>) :: Twister t a -> (a -> b) -> Twister t b Source #

(<$$>) :: Covariant u => (a -> b) -> ((Twister t :.: u) >< a) -> (Twister t :.: u) >< b Source #

(<$$$>) :: (Covariant u, Covariant v) => (a -> b) -> ((Twister t :.: (u :.: v)) >< a) -> (Twister t :.: (u :.: v)) >< b Source #

(<$$$$>) :: (Covariant u, Covariant v, Covariant w) => (a -> b) -> ((Twister t :.: (u :.: (v :.: w))) >< a) -> (Twister t :.: (u :.: (v :.: w))) >< b Source #

(<&&>) :: Covariant u => ((Twister t :.: u) >< a) -> (a -> b) -> (Twister t :.: u) >< b Source #

(<&&&>) :: (Covariant u, Covariant v) => ((Twister t :.: (u :.: v)) >< a) -> (a -> b) -> (Twister t :.: (u :.: v)) >< b Source #

(<&&&&>) :: (Covariant u, Covariant v, Covariant w) => ((Twister t :.: (u :.: (v :.: w))) >< a) -> (a -> b) -> (Twister t :.: (u :.: (v :.: w))) >< b Source #

Covariant (Product a) Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Product

Methods

(<$>) :: (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 #

(<&>) :: Product a a0 -> (a0 -> b) -> Product a b 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 u => ((Product a :.: u) >< a0) -> (a0 -> b) -> (Product a :.: u) >< b Source #

(<&&&>) :: (Covariant u, Covariant v) => ((Product a :.: (u :.: v)) >< a0) -> (a0 -> b) -> (Product a :.: (u :.: v)) >< b Source #

(<&&&&>) :: (Covariant u, Covariant v, Covariant w) => ((Product a :.: (u :.: (v :.: w))) >< a0) -> (a0 -> b) -> (Product a :.: (u :.: (v :.: w))) >< b Source #

Covariant (Storage p) Source # 
Instance details

Defined in Pandora.Paradigm.Inventory.Storage

Methods

(<$>) :: (a -> b) -> Storage p a -> Storage p b Source #

comap :: (a -> b) -> Storage p a -> Storage p b Source #

(<$) :: a -> Storage p b -> Storage p a Source #

($>) :: Storage p a -> b -> Storage p b Source #

void :: Storage p a -> Storage p () Source #

loeb :: Storage p (Storage p a -> a) -> Storage p a Source #

(<&>) :: Storage p a -> (a -> b) -> Storage p b Source #

(<$$>) :: Covariant u => (a -> b) -> ((Storage p :.: u) >< a) -> (Storage p :.: u) >< b Source #

(<$$$>) :: (Covariant u, Covariant v) => (a -> b) -> ((Storage p :.: (u :.: v)) >< a) -> (Storage p :.: (u :.: v)) >< b Source #

(<$$$$>) :: (Covariant u, Covariant v, Covariant w) => (a -> b) -> ((Storage p :.: (u :.: (v :.: w))) >< a) -> (Storage p :.: (u :.: (v :.: w))) >< b Source #

(<&&>) :: Covariant u => ((Storage p :.: u) >< a) -> (a -> b) -> (Storage p :.: u) >< b Source #

(<&&&>) :: (Covariant u, Covariant v) => ((Storage p :.: (u :.: v)) >< a) -> (a -> b) -> (Storage p :.: (u :.: v)) >< b Source #

(<&&&&>) :: (Covariant u, Covariant v, Covariant w) => ((Storage p :.: (u :.: (v :.: w))) >< a) -> (a -> b) -> (Storage p :.: (u :.: (v :.: w))) >< b Source #

Covariant (Stateful s) Source # 
Instance details

Defined in Pandora.Paradigm.Inventory.Stateful

Methods

(<$>) :: (a -> b) -> Stateful s a -> Stateful s b Source #

comap :: (a -> b) -> Stateful s a -> Stateful s b Source #

(<$) :: a -> Stateful s b -> Stateful s a Source #

($>) :: Stateful s a -> b -> Stateful s b Source #

void :: Stateful s a -> Stateful s () Source #

loeb :: Stateful s (Stateful s a -> a) -> Stateful s a Source #

(<&>) :: Stateful s a -> (a -> b) -> Stateful s b Source #

(<$$>) :: Covariant u => (a -> b) -> ((Stateful s :.: u) >< a) -> (Stateful s :.: u) >< b Source #

(<$$$>) :: (Covariant u, Covariant v) => (a -> b) -> ((Stateful s :.: (u :.: v)) >< a) -> (Stateful s :.: (u :.: v)) >< b Source #

(<$$$$>) :: (Covariant u, Covariant v, Covariant w) => (a -> b) -> ((Stateful s :.: (u :.: (v :.: w))) >< a) -> (Stateful s :.: (u :.: (v :.: w))) >< b Source #

(<&&>) :: Covariant u => ((Stateful s :.: u) >< a) -> (a -> b) -> (Stateful s :.: u) >< b Source #

(<&&&>) :: (Covariant u, Covariant v) => ((Stateful s :.: (u :.: v)) >< a) -> (a -> b) -> (Stateful s :.: (u :.: v)) >< b Source #

(<&&&&>) :: (Covariant u, Covariant v, Covariant w) => ((Stateful s :.: (u :.: (v :.: w))) >< a) -> (a -> b) -> (Stateful s :.: (u :.: (v :.: w))) >< b Source #

Covariant t => Covariant (Jack t) Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Jack

Methods

(<$>) :: (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 #

(<&>) :: Jack t a -> (a -> b) -> Jack t b 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 u => ((Jack t :.: u) >< a) -> (a -> b) -> (Jack t :.: u) >< b Source #

(<&&&>) :: (Covariant u, Covariant v) => ((Jack t :.: (u :.: v)) >< a) -> (a -> b) -> (Jack t :.: (u :.: v)) >< b Source #

(<&&&&>) :: (Covariant u, Covariant v, Covariant w) => ((Jack t :.: (u :.: (v :.: w))) >< a) -> (a -> b) -> (Jack t :.: (u :.: (v :.: w))) >< b Source #

Covariant (Conclusion e) Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Conclusion

Methods

(<$>) :: (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 #

(<&>) :: Conclusion e a -> (a -> b) -> Conclusion e b 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 u => ((Conclusion e :.: u) >< a) -> (a -> b) -> (Conclusion e :.: u) >< b Source #

(<&&&>) :: (Covariant u, Covariant v) => ((Conclusion e :.: (u :.: v)) >< a) -> (a -> b) -> (Conclusion e :.: (u :.: v)) >< b Source #

(<&&&&>) :: (Covariant u, Covariant v, Covariant w) => ((Conclusion e :.: (u :.: (v :.: w))) >< a) -> (a -> b) -> (Conclusion e :.: (u :.: (v :.: w))) >< b Source #

Covariant (Tagged tag) Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Tagged

Methods

(<$>) :: (a -> b) -> Tagged tag a -> Tagged tag b Source #

comap :: (a -> b) -> Tagged tag a -> Tagged tag b Source #

(<$) :: a -> Tagged tag b -> Tagged tag a Source #

($>) :: Tagged tag a -> b -> Tagged tag b Source #

void :: Tagged tag a -> Tagged tag () Source #

loeb :: Tagged tag (Tagged tag a -> a) -> Tagged tag a Source #

(<&>) :: Tagged tag a -> (a -> b) -> Tagged tag b Source #

(<$$>) :: Covariant u => (a -> b) -> ((Tagged tag :.: u) >< a) -> (Tagged tag :.: u) >< b Source #

(<$$$>) :: (Covariant u, Covariant v) => (a -> b) -> ((Tagged tag :.: (u :.: v)) >< a) -> (Tagged tag :.: (u :.: v)) >< b Source #

(<$$$$>) :: (Covariant u, Covariant v, Covariant w) => (a -> b) -> ((Tagged tag :.: (u :.: (v :.: w))) >< a) -> (Tagged tag :.: (u :.: (v :.: w))) >< b Source #

(<&&>) :: Covariant u => ((Tagged tag :.: u) >< a) -> (a -> b) -> (Tagged tag :.: u) >< b Source #

(<&&&>) :: (Covariant u, Covariant v) => ((Tagged tag :.: (u :.: v)) >< a) -> (a -> b) -> (Tagged tag :.: (u :.: v)) >< b Source #

(<&&&&>) :: (Covariant u, Covariant v, Covariant w) => ((Tagged tag :.: (u :.: (v :.: w))) >< a) -> (a -> b) -> (Tagged tag :.: (u :.: (v :.: w))) >< b Source #

Covariant (Constant a :: Type -> Type) Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Constant

Methods

(<$>) :: (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 #

(<&>) :: Constant a a0 -> (a0 -> b) -> Constant a b 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 u => ((Constant a :.: u) >< a0) -> (a0 -> b) -> (Constant a :.: u) >< b Source #

(<&&&>) :: (Covariant u, Covariant v) => ((Constant a :.: (u :.: v)) >< a0) -> (a0 -> b) -> (Constant a :.: (u :.: v)) >< b Source #

(<&&&&>) :: (Covariant u, Covariant v, Covariant w) => ((Constant a :.: (u :.: (v :.: w))) >< a0) -> (a0 -> b) -> (Constant a :.: (u :.: (v :.: w))) >< b Source #

Covariant ((->) a :: Type -> Type) Source # 
Instance details

Defined in Pandora.Pattern.Functor.Covariant

Methods

(<$>) :: (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 #

(<&>) :: (a -> a0) -> (a0 -> b) -> a -> b 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 u => (((->) a :.: u) >< a0) -> (a0 -> b) -> ((->) a :.: u) >< b Source #

(<&&&>) :: (Covariant u, Covariant v) => (((->) a :.: (u :.: v)) >< a0) -> (a0 -> b) -> ((->) a :.: (u :.: v)) >< b Source #

(<&&&&>) :: (Covariant u, Covariant v, Covariant w) => (((->) a :.: (u :.: (v :.: w))) >< a0) -> (a0 -> b) -> ((->) a :.: (u :.: (v :.: w))) >< b Source #

Covariant (Ran t u b) Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Kan

Methods

(<$>) :: (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 #

(<&>) :: Ran t u b a -> (a -> b0) -> Ran t u b b0 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 u0 => ((Ran t u b :.: u0) >< a) -> (a -> b0) -> (Ran t u b :.: u0) >< b0 Source #

(<&&&>) :: (Covariant u0, Covariant v) => ((Ran t u b :.: (u0 :.: v)) >< a) -> (a -> b0) -> (Ran t u b :.: (u0 :.: v)) >< b0 Source #

(<&&&&>) :: (Covariant u0, Covariant v, Covariant w) => ((Ran t u b :.: (u0 :.: (v :.: w))) >< a) -> (a -> b0) -> (Ran t u b :.: (u0 :.: (v :.: w))) >< b0 Source #

Covariant t => Covariant (Continuation r t) Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Continuation

Methods

(<$>) :: (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 #

(<&>) :: Continuation r t a -> (a -> b) -> Continuation r t b 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 u => ((Continuation r t :.: u) >< a) -> (a -> b) -> (Continuation r t :.: u) >< b Source #

(<&&&>) :: (Covariant u, Covariant v) => ((Continuation r t :.: (u :.: v)) >< a) -> (a -> b) -> (Continuation r t :.: (u :.: v)) >< b Source #

(<&&&&>) :: (Covariant u, Covariant v, Covariant w) => ((Continuation r t :.: (u :.: (v :.: w))) >< a) -> (a -> b) -> (Continuation r t :.: (u :.: (v :.: w))) >< b Source #

(Covariant t, Covariant u) => Covariant (TU Co Co t u) Source # 
Instance details

Defined in Pandora.Pattern.Junction.Schemes.TU

Methods

(<$>) :: (a -> b) -> TU Co Co t u a -> TU Co Co t u b Source #

comap :: (a -> b) -> TU Co Co t u a -> TU Co Co t u b Source #

(<$) :: a -> TU Co Co t u b -> TU Co Co t u a Source #

($>) :: TU Co Co t u a -> b -> TU Co Co t u b Source #

void :: TU Co Co t u a -> TU Co Co t u () Source #

loeb :: TU Co Co t u (TU Co Co t u a -> a) -> TU Co Co t u a Source #

(<&>) :: TU Co Co t u a -> (a -> b) -> TU Co Co t u b Source #

(<$$>) :: Covariant u0 => (a -> b) -> ((TU Co Co t u :.: u0) >< a) -> (TU Co Co t u :.: u0) >< b Source #

(<$$$>) :: (Covariant u0, Covariant v) => (a -> b) -> ((TU Co Co t u :.: (u0 :.: v)) >< a) -> (TU Co Co t u :.: (u0 :.: v)) >< b Source #

(<$$$$>) :: (Covariant u0, Covariant v, Covariant w) => (a -> b) -> ((TU Co Co t u :.: (u0 :.: (v :.: w))) >< a) -> (TU Co Co t u :.: (u0 :.: (v :.: w))) >< b Source #

(<&&>) :: Covariant u0 => ((TU Co Co t u :.: u0) >< a) -> (a -> b) -> (TU Co Co t u :.: u0) >< b Source #

(<&&&>) :: (Covariant u0, Covariant v) => ((TU Co Co t u :.: (u0 :.: v)) >< a) -> (a -> b) -> (TU Co Co t u :.: (u0 :.: v)) >< b Source #

(<&&&&>) :: (Covariant u0, Covariant v, Covariant w) => ((TU Co Co t u :.: (u0 :.: (v :.: w))) >< a) -> (a -> b) -> (TU Co Co t u :.: (u0 :.: (v :.: w))) >< b Source #

(Contravariant t, Contravariant u) => Covariant (TU Contra Contra t u) Source # 
Instance details

Defined in Pandora.Pattern.Junction.Schemes.TU

Methods

(<$>) :: (a -> b) -> TU Contra Contra t u a -> TU Contra Contra t u b Source #

comap :: (a -> b) -> TU Contra Contra t u a -> TU Contra Contra t u b Source #

(<$) :: a -> TU Contra Contra t u b -> TU Contra Contra t u a Source #

($>) :: TU Contra Contra t u a -> b -> TU Contra Contra t u b Source #

void :: TU Contra Contra t u a -> TU Contra Contra t u () Source #

loeb :: TU Contra Contra t u (TU Contra Contra t u a -> a) -> TU Contra Contra t u a Source #

(<&>) :: TU Contra Contra t u a -> (a -> b) -> TU Contra Contra t u b Source #

(<$$>) :: Covariant u0 => (a -> b) -> ((TU Contra Contra t u :.: u0) >< a) -> (TU Contra Contra t u :.: u0) >< b Source #

(<$$$>) :: (Covariant u0, Covariant v) => (a -> b) -> ((TU Contra Contra t u :.: (u0 :.: v)) >< a) -> (TU Contra Contra t u :.: (u0 :.: v)) >< b Source #

(<$$$$>) :: (Covariant u0, Covariant v, Covariant w) => (a -> b) -> ((TU Contra Contra t u :.: (u0 :.: (v :.: w))) >< a) -> (TU Contra Contra t u :.: (u0 :.: (v :.: w))) >< b Source #

(<&&>) :: Covariant u0 => ((TU Contra Contra t u :.: u0) >< a) -> (a -> b) -> (TU Contra Contra t u :.: u0) >< b Source #

(<&&&>) :: (Covariant u0, Covariant v) => ((TU Contra Contra t u :.: (u0 :.: v)) >< a) -> (a -> b) -> (TU Contra Contra t u :.: (u0 :.: v)) >< b Source #

(<&&&&>) :: (Covariant u0, Covariant v, Covariant w) => ((TU Contra Contra t u :.: (u0 :.: (v :.: w))) >< a) -> (a -> b) -> (TU Contra Contra t u :.: (u0 :.: (v :.: w))) >< b Source #

(Covariant (t u), Covariant u) => Covariant (UTU Co Co t u) Source # 
Instance details

Defined in Pandora.Pattern.Junction.Schemes.UTU

Methods

(<$>) :: (a -> b) -> UTU Co Co t u a -> UTU Co Co t u b Source #

comap :: (a -> b) -> UTU Co Co t u a -> UTU Co Co t u b Source #

(<$) :: a -> UTU Co Co t u b -> UTU Co Co t u a Source #

($>) :: UTU Co Co t u a -> b -> UTU Co Co t u b Source #

void :: UTU Co Co t u a -> UTU Co Co t u () Source #

loeb :: UTU Co Co t u (UTU Co Co t u a -> a) -> UTU Co Co t u a Source #

(<&>) :: UTU Co Co t u a -> (a -> b) -> UTU Co Co t u b Source #

(<$$>) :: Covariant u0 => (a -> b) -> ((UTU Co Co t u :.: u0) >< a) -> (UTU Co Co t u :.: u0) >< b Source #

(<$$$>) :: (Covariant u0, Covariant v) => (a -> b) -> ((UTU Co Co t u :.: (u0 :.: v)) >< a) -> (UTU Co Co t u :.: (u0 :.: v)) >< b Source #

(<$$$$>) :: (Covariant u0, Covariant v, Covariant w) => (a -> b) -> ((UTU Co Co t u :.: (u0 :.: (v :.: w))) >< a) -> (UTU Co Co t u :.: (u0 :.: (v :.: w))) >< b Source #

(<&&>) :: Covariant u0 => ((UTU Co Co t u :.: u0) >< a) -> (a -> b) -> (UTU Co Co t u :.: u0) >< b Source #

(<&&&>) :: (Covariant u0, Covariant v) => ((UTU Co Co t u :.: (u0 :.: v)) >< a) -> (a -> b) -> (UTU Co Co t u :.: (u0 :.: v)) >< b Source #

(<&&&&>) :: (Covariant u0, Covariant v, Covariant w) => ((UTU Co Co t u :.: (u0 :.: (v :.: w))) >< a) -> (a -> b) -> (UTU Co Co t u :.: (u0 :.: (v :.: w))) >< b Source #

Covariant u => Covariant (UT Maybe () Maybe u) Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Maybe

Methods

(<$>) :: (a -> b) -> UT Maybe () Maybe u a -> UT Maybe () Maybe u b Source #

comap :: (a -> b) -> UT Maybe () Maybe u a -> UT Maybe () Maybe u b Source #

(<$) :: a -> UT Maybe () Maybe u b -> UT Maybe () Maybe u a Source #

($>) :: UT Maybe () Maybe u a -> b -> UT Maybe () Maybe u b Source #

void :: UT Maybe () Maybe u a -> UT Maybe () Maybe u () Source #

loeb :: UT Maybe () Maybe u (UT Maybe () Maybe u a -> a) -> UT Maybe () Maybe u a Source #

(<&>) :: UT Maybe () Maybe u a -> (a -> b) -> UT Maybe () Maybe u b Source #

(<$$>) :: Covariant u0 => (a -> b) -> ((UT Maybe () Maybe u :.: u0) >< a) -> (UT Maybe () Maybe u :.: u0) >< b Source #

(<$$$>) :: (Covariant u0, Covariant v) => (a -> b) -> ((UT Maybe () Maybe u :.: (u0 :.: v)) >< a) -> (UT Maybe () Maybe u :.: (u0 :.: v)) >< b Source #

(<$$$$>) :: (Covariant u0, Covariant v, Covariant w) => (a -> b) -> ((UT Maybe () Maybe u :.: (u0 :.: (v :.: w))) >< a) -> (UT Maybe () Maybe u :.: (u0 :.: (v :.: w))) >< b Source #

(<&&>) :: Covariant u0 => ((UT Maybe () Maybe u :.: u0) >< a) -> (a -> b) -> (UT Maybe () Maybe u :.: u0) >< b Source #

(<&&&>) :: (Covariant u0, Covariant v) => ((UT Maybe () Maybe u :.: (u0 :.: v)) >< a) -> (a -> b) -> (UT Maybe () Maybe u :.: (u0 :.: v)) >< b Source #

(<&&&&>) :: (Covariant u0, Covariant v, Covariant w) => ((UT Maybe () Maybe u :.: (u0 :.: (v :.: w))) >< a) -> (a -> b) -> (UT Maybe () Maybe u :.: (u0 :.: (v :.: w))) >< b Source #

Covariant u => Covariant (UT (Conclusion e) () (Conclusion e) u) Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Conclusion

Methods

(<$>) :: (a -> b) -> UT (Conclusion e) () (Conclusion e) u a -> UT (Conclusion e) () (Conclusion e) u b Source #

comap :: (a -> b) -> UT (Conclusion e) () (Conclusion e) u a -> UT (Conclusion e) () (Conclusion e) u b Source #

(<$) :: a -> UT (Conclusion e) () (Conclusion e) u b -> UT (Conclusion e) () (Conclusion e) u a Source #

($>) :: UT (Conclusion e) () (Conclusion e) u a -> b -> UT (Conclusion e) () (Conclusion e) u b Source #

void :: UT (Conclusion e) () (Conclusion e) u a -> UT (Conclusion e) () (Conclusion e) u () Source #

loeb :: UT (Conclusion e) () (Conclusion e) u (UT (Conclusion e) () (Conclusion e) u a -> a) -> UT (Conclusion e) () (Conclusion e) u a Source #

(<&>) :: UT (Conclusion e) () (Conclusion e) u a -> (a -> b) -> UT (Conclusion e) () (Conclusion e) u b Source #

(<$$>) :: Covariant u0 => (a -> b) -> ((UT (Conclusion e) () (Conclusion e) u :.: u0) >< a) -> (UT (Conclusion e) () (Conclusion e) u :.: u0) >< b Source #

(<$$$>) :: (Covariant u0, Covariant v) => (a -> b) -> ((UT (Conclusion e) () (Conclusion e) u :.: (u0 :.: v)) >< a) -> (UT (Conclusion e) () (Conclusion e) u :.: (u0 :.: v)) >< b Source #

(<$$$$>) :: (Covariant u0, Covariant v, Covariant w) => (a -> b) -> ((UT (Conclusion e) () (Conclusion e) u :.: (u0 :.: (v :.: w))) >< a) -> (UT (Conclusion e) () (Conclusion e) u :.: (u0 :.: (v :.: w))) >< b Source #

(<&&>) :: Covariant u0 => ((UT (Conclusion e) () (Conclusion e) u :.: u0) >< a) -> (a -> b) -> (UT (Conclusion e) () (Conclusion e) u :.: u0) >< b Source #

(<&&&>) :: (Covariant u0, Covariant v) => ((UT (Conclusion e) () (Conclusion e) u :.: (u0 :.: v)) >< a) -> (a -> b) -> (UT (Conclusion e) () (Conclusion e) u :.: (u0 :.: v)) >< b Source #

(<&&&&>) :: (Covariant u0, Covariant v, Covariant w) => ((UT (Conclusion e) () (Conclusion e) u :.: (u0 :.: (v :.: w))) >< a) -> (a -> b) -> (UT (Conclusion e) () (Conclusion e) u :.: (u0 :.: (v :.: w))) >< b Source #

(Covariant t, Covariant u) => Covariant (UT Co Co t u) Source # 
Instance details

Defined in Pandora.Pattern.Junction.Schemes.UT

Methods

(<$>) :: (a -> b) -> UT Co Co t u a -> UT Co Co t u b Source #

comap :: (a -> b) -> UT Co Co t u a -> UT Co Co t u b Source #

(<$) :: a -> UT Co Co t u b -> UT Co Co t u a Source #

($>) :: UT Co Co t u a -> b -> UT Co Co t u b Source #

void :: UT Co Co t u a -> UT Co Co t u () Source #

loeb :: UT Co Co t u (UT Co Co t u a -> a) -> UT Co Co t u a Source #

(<&>) :: UT Co Co t u a -> (a -> b) -> UT Co Co t u b Source #

(<$$>) :: Covariant u0 => (a -> b) -> ((UT Co Co t u :.: u0) >< a) -> (UT Co Co t u :.: u0) >< b Source #

(<$$$>) :: (Covariant u0, Covariant v) => (a -> b) -> ((UT Co Co t u :.: (u0 :.: v)) >< a) -> (UT Co Co t u :.: (u0 :.: v)) >< b Source #

(<$$$$>) :: (Covariant u0, Covariant v, Covariant w) => (a -> b) -> ((UT Co Co t u :.: (u0 :.: (v :.: w))) >< a) -> (UT Co Co t u :.: (u0 :.: (v :.: w))) >< b Source #

(<&&>) :: Covariant u0 => ((UT Co Co t u :.: u0) >< a) -> (a -> b) -> (UT Co Co t u :.: u0) >< b Source #

(<&&&>) :: (Covariant u0, Covariant v) => ((UT Co Co t u :.: (u0 :.: v)) >< a) -> (a -> b) -> (UT Co Co t u :.: (u0 :.: v)) >< b Source #

(<&&&&>) :: (Covariant u0, Covariant v, Covariant w) => ((UT Co Co t u :.: (u0 :.: (v :.: w))) >< a) -> (a -> b) -> (UT Co Co t u :.: (u0 :.: (v :.: w))) >< b Source #

Covariant u => Covariant (TUV Stateful () Stateful ((->) s :: Type -> Type) u ((:*:) s)) Source # 
Instance details

Defined in Pandora.Paradigm.Inventory.Stateful

Methods

(<$>) :: (a -> b) -> TUV Stateful () Stateful ((->) s) u ((:*:) s) a -> TUV Stateful () Stateful ((->) s) u ((:*:) s) b Source #

comap :: (a -> b) -> TUV Stateful () Stateful ((->) s) u ((:*:) s) a -> TUV Stateful () Stateful ((->) s) u ((:*:) s) b Source #

(<$) :: a -> TUV Stateful () Stateful ((->) s) u ((:*:) s) b -> TUV Stateful () Stateful ((->) s) u ((:*:) s) a Source #

($>) :: TUV Stateful () Stateful ((->) s) u ((:*:) s) a -> b -> TUV Stateful () Stateful ((->) s) u ((:*:) s) b Source #

void :: TUV Stateful () Stateful ((->) s) u ((:*:) s) a -> TUV Stateful () Stateful ((->) s) u ((:*:) s) () Source #

loeb :: TUV Stateful () Stateful ((->) s) u ((:*:) s) (TUV Stateful () Stateful ((->) s) u ((:*:) s) a -> a) -> TUV Stateful () Stateful ((->) s) u ((:*:) s) a Source #

(<&>) :: TUV Stateful () Stateful ((->) s) u ((:*:) s) a -> (a -> b) -> TUV Stateful () Stateful ((->) s) u ((:*:) s) b Source #

(<$$>) :: Covariant u0 => (a -> b) -> ((TUV Stateful () Stateful ((->) s) u ((:*:) s) :.: u0) >< a) -> (TUV Stateful () Stateful ((->) s) u ((:*:) s) :.: u0) >< b Source #

(<$$$>) :: (Covariant u0, Covariant v) => (a -> b) -> ((TUV Stateful () Stateful ((->) s) u ((:*:) s) :.: (u0 :.: v)) >< a) -> (TUV Stateful () Stateful ((->) s) u ((:*:) s) :.: (u0 :.: v)) >< b Source #

(<$$$$>) :: (Covariant u0, Covariant v, Covariant w) => (a -> b) -> ((TUV Stateful () Stateful ((->) s) u ((:*:) s) :.: (u0 :.: (v :.: w))) >< a) -> (TUV Stateful () Stateful ((->) s) u ((:*:) s) :.: (u0 :.: (v :.: w))) >< b Source #

(<&&>) :: Covariant u0 => ((TUV Stateful () Stateful ((->) s) u ((:*:) s) :.: u0) >< a) -> (a -> b) -> (TUV Stateful () Stateful ((->) s) u ((:*:) s) :.: u0) >< b Source #

(<&&&>) :: (Covariant u0, Covariant v) => ((TUV Stateful () Stateful ((->) s) u ((:*:) s) :.: (u0 :.: v)) >< a) -> (a -> b) -> (TUV Stateful () Stateful ((->) s) u ((:*:) s) :.: (u0 :.: v)) >< b Source #

(<&&&&>) :: (Covariant u0, Covariant v, Covariant w) => ((TUV Stateful () Stateful ((->) s) u ((:*:) s) :.: (u0 :.: (v :.: w))) >< a) -> (a -> b) -> (TUV Stateful () Stateful ((->) s) u ((:*:) s) :.: (u0 :.: (v :.: w))) >< b Source #

(Covariant t, Covariant u, Covariant v) => Covariant (TUV Co Co Co t u v) Source # 
Instance details

Defined in Pandora.Pattern.Junction.Schemes.TUV

Methods

(<$>) :: (a -> b) -> TUV Co Co Co t u v a -> TUV Co Co Co t u v b Source #

comap :: (a -> b) -> TUV Co Co Co t u v a -> TUV Co Co Co t u v b Source #

(<$) :: a -> TUV Co Co Co t u v b -> TUV Co Co Co t u v a Source #

($>) :: TUV Co Co Co t u v a -> b -> TUV Co Co Co t u v b Source #

void :: TUV Co Co Co t u v a -> TUV Co Co Co t u v () Source #

loeb :: TUV Co Co Co t u v (TUV Co Co Co t u v a -> a) -> TUV Co Co Co t u v a Source #

(<&>) :: TUV Co Co Co t u v a -> (a -> b) -> TUV Co Co Co t u v b Source #

(<$$>) :: Covariant u0 => (a -> b) -> ((TUV Co Co Co t u v :.: u0) >< a) -> (TUV Co Co Co t u v :.: u0) >< b Source #

(<$$$>) :: (Covariant u0, Covariant v0) => (a -> b) -> ((TUV Co Co Co t u v :.: (u0 :.: v0)) >< a) -> (TUV Co Co Co t u v :.: (u0 :.: v0)) >< b Source #

(<$$$$>) :: (Covariant u0, Covariant v0, Covariant w) => (a -> b) -> ((TUV Co Co Co t u v :.: (u0 :.: (v0 :.: w))) >< a) -> (TUV Co Co Co t u v :.: (u0 :.: (v0 :.: w))) >< b Source #

(<&&>) :: Covariant u0 => ((TUV Co Co Co t u v :.: u0) >< a) -> (a -> b) -> (TUV Co Co Co t u v :.: u0) >< b Source #

(<&&&>) :: (Covariant u0, Covariant v0) => ((TUV Co Co Co t u v :.: (u0 :.: v0)) >< a) -> (a -> b) -> (TUV Co Co Co t u v :.: (u0 :.: v0)) >< b Source #

(<&&&&>) :: (Covariant u0, Covariant v0, Covariant w) => ((TUV Co Co Co t u v :.: (u0 :.: (v0 :.: w))) >< a) -> (a -> b) -> (TUV Co Co Co t u v :.: (u0 :.: (v0 :.: w))) >< b Source #

(Covariant t, Contravariant u, Contravariant v) => Covariant (TUV Co Contra Contra t u v) Source # 
Instance details

Defined in Pandora.Pattern.Junction.Schemes.TUV

Methods

(<$>) :: (a -> b) -> TUV Co Contra Contra t u v a -> TUV Co Contra Contra t u v b Source #

comap :: (a -> b) -> TUV Co Contra Contra t u v a -> TUV Co Contra Contra t u v b Source #

(<$) :: a -> TUV Co Contra Contra t u v b -> TUV Co Contra Contra t u v a Source #

($>) :: TUV Co Contra Contra t u v a -> b -> TUV Co Contra Contra t u v b Source #

void :: TUV Co Contra Contra t u v a -> TUV Co Contra Contra t u v () Source #

loeb :: TUV Co Contra Contra t u v (TUV Co Contra Contra t u v a -> a) -> TUV Co Contra Contra t u v a Source #

(<&>) :: TUV Co Contra Contra t u v a -> (a -> b) -> TUV Co Contra Contra t u v b Source #

(<$$>) :: Covariant u0 => (a -> b) -> ((TUV Co Contra Contra t u v :.: u0) >< a) -> (TUV Co Contra Contra t u v :.: u0) >< b Source #

(<$$$>) :: (Covariant u0, Covariant v0) => (a -> b) -> ((TUV Co Contra Contra t u v :.: (u0 :.: v0)) >< a) -> (TUV Co Contra Contra t u v :.: (u0 :.: v0)) >< b Source #

(<$$$$>) :: (Covariant u0, Covariant v0, Covariant w) => (a -> b) -> ((TUV Co Contra Contra t u v :.: (u0 :.: (v0 :.: w))) >< a) -> (TUV Co Contra Contra t u v :.: (u0 :.: (v0 :.: w))) >< b Source #

(<&&>) :: Covariant u0 => ((TUV Co Contra Contra t u v :.: u0) >< a) -> (a -> b) -> (TUV Co Contra Contra t u v :.: u0) >< b Source #

(<&&&>) :: (Covariant u0, Covariant v0) => ((TUV Co Contra Contra t u v :.: (u0 :.: v0)) >< a) -> (a -> b) -> (TUV Co Contra Contra t u v :.: (u0 :.: v0)) >< b Source #

(<&&&&>) :: (Covariant u0, Covariant v0, Covariant w) => ((TUV Co Contra Contra t u v :.: (u0 :.: (v0 :.: w))) >< a) -> (a -> b) -> (TUV Co Contra Contra t u v :.: (u0 :.: (v0 :.: w))) >< b Source #

(Contravariant t, Covariant u, Contravariant v) => Covariant (TUV Contra Co Contra t u v) Source # 
Instance details

Defined in Pandora.Pattern.Junction.Schemes.TUV

Methods

(<$>) :: (a -> b) -> TUV Contra Co Contra t u v a -> TUV Contra Co Contra t u v b Source #

comap :: (a -> b) -> TUV Contra Co Contra t u v a -> TUV Contra Co Contra t u v b Source #

(<$) :: a -> TUV Contra Co Contra t u v b -> TUV Contra Co Contra t u v a Source #

($>) :: TUV Contra Co Contra t u v a -> b -> TUV Contra Co Contra t u v b Source #

void :: TUV Contra Co Contra t u v a -> TUV Contra Co Contra t u v () Source #

loeb :: TUV Contra Co Contra t u v (TUV Contra Co Contra t u v a -> a) -> TUV Contra Co Contra t u v a Source #

(<&>) :: TUV Contra Co Contra t u v a -> (a -> b) -> TUV Contra Co Contra t u v b Source #

(<$$>) :: Covariant u0 => (a -> b) -> ((TUV Contra Co Contra t u v :.: u0) >< a) -> (TUV Contra Co Contra t u v :.: u0) >< b Source #

(<$$$>) :: (Covariant u0, Covariant v0) => (a -> b) -> ((TUV Contra Co Contra t u v :.: (u0 :.: v0)) >< a) -> (TUV Contra Co Contra t u v :.: (u0 :.: v0)) >< b Source #

(<$$$$>) :: (Covariant u0, Covariant v0, Covariant w) => (a -> b) -> ((TUV Contra Co Contra t u v :.: (u0 :.: (v0 :.: w))) >< a) -> (TUV Contra Co Contra t u v :.: (u0 :.: (v0 :.: w))) >< b Source #

(<&&>) :: Covariant u0 => ((TUV Contra Co Contra t u v :.: u0) >< a) -> (a -> b) -> (TUV Contra Co Contra t u v :.: u0) >< b Source #

(<&&&>) :: (Covariant u0, Covariant v0) => ((TUV Contra Co Contra t u v :.: (u0 :.: v0)) >< a) -> (a -> b) -> (TUV Contra Co Contra t u v :.: (u0 :.: v0)) >< b Source #

(<&&&&>) :: (Covariant u0, Covariant v0, Covariant w) => ((TUV Contra Co Contra t u v :.: (u0 :.: (v0 :.: w))) >< a) -> (a -> b) -> (TUV Contra Co Contra t u v :.: (u0 :.: (v0 :.: w))) >< b Source #

(Contravariant t, Contravariant u, Covariant v) => Covariant (TUV Contra Contra Co t u v) Source # 
Instance details

Defined in Pandora.Pattern.Junction.Schemes.TUV

Methods

(<$>) :: (a -> b) -> TUV Contra Contra Co t u v a -> TUV Contra Contra Co t u v b Source #

comap :: (a -> b) -> TUV Contra Contra Co t u v a -> TUV Contra Contra Co t u v b Source #

(<$) :: a -> TUV Contra Contra Co t u v b -> TUV Contra Contra Co t u v a Source #

($>) :: TUV Contra Contra Co t u v a -> b -> TUV Contra Contra Co t u v b Source #

void :: TUV Contra Contra Co t u v a -> TUV Contra Contra Co t u v () Source #

loeb :: TUV Contra Contra Co t u v (TUV Contra Contra Co t u v a -> a) -> TUV Contra Contra Co t u v a Source #

(<&>) :: TUV Contra Contra Co t u v a -> (a -> b) -> TUV Contra Contra Co t u v b Source #

(<$$>) :: Covariant u0 => (a -> b) -> ((TUV Contra Contra Co t u v :.: u0) >< a) -> (TUV Contra Contra Co t u v :.: u0) >< b Source #

(<$$$>) :: (Covariant u0, Covariant v0) => (a -> b) -> ((TUV Contra Contra Co t u v :.: (u0 :.: v0)) >< a) -> (TUV Contra Contra Co t u v :.: (u0 :.: v0)) >< b Source #

(<$$$$>) :: (Covariant u0, Covariant v0, Covariant w) => (a -> b) -> ((TUV Contra Contra Co t u v :.: (u0 :.: (v0 :.: w))) >< a) -> (TUV Contra Contra Co t u v :.: (u0 :.: (v0 :.: w))) >< b Source #

(<&&>) :: Covariant u0 => ((TUV Contra Contra Co t u v :.: u0) >< a) -> (a -> b) -> (TUV Contra Contra Co t u v :.: u0) >< b Source #

(<&&&>) :: (Covariant u0, Covariant v0) => ((TUV Contra Contra Co t u v :.: (u0 :.: v0)) >< a) -> (a -> b) -> (TUV Contra Contra Co t u v :.: (u0 :.: v0)) >< b Source #

(<&&&&>) :: (Covariant u0, Covariant v0, Covariant w) => ((TUV Contra Contra Co t u v :.: (u0 :.: (v0 :.: w))) >< a) -> (a -> b) -> (TUV Contra Contra Co t u v :.: (u0 :.: (v0 :.: w))) >< b Source #

(Covariant t, Covariant u, Covariant v, Covariant w) => Covariant (TUVW Co Co Co Co t u v w) Source # 
Instance details

Defined in Pandora.Pattern.Junction.Schemes.TUVW

Methods

(<$>) :: (a -> b) -> TUVW Co Co Co Co t u v w a -> TUVW Co Co Co Co t u v w b Source #

comap :: (a -> b) -> TUVW Co Co Co Co t u v w a -> TUVW Co Co Co Co t u v w b Source #

(<$) :: a -> TUVW Co Co Co Co t u v w b -> TUVW Co Co Co Co t u v w a Source #

($>) :: TUVW Co Co Co Co t u v w a -> b -> TUVW Co Co Co Co t u v w b Source #

void :: TUVW Co Co Co Co t u v w a -> TUVW Co Co Co Co t u v w () Source #

loeb :: TUVW Co Co Co Co t u v w (TUVW Co Co Co Co t u v w a -> a) -> TUVW Co Co Co Co t u v w a Source #

(<&>) :: TUVW Co Co Co Co t u v w a -> (a -> b) -> TUVW Co Co Co Co t u v w b Source #

(<$$>) :: Covariant u0 => (a -> b) -> ((TUVW Co Co Co Co t u v w :.: u0) >< a) -> (TUVW Co Co Co Co t u v w :.: u0) >< b Source #

(<$$$>) :: (Covariant u0, Covariant v0) => (a -> b) -> ((TUVW Co Co Co Co t u v w :.: (u0 :.: v0)) >< a) -> (TUVW Co Co Co Co t u v w :.: (u0 :.: v0)) >< b Source #

(<$$$$>) :: (Covariant u0, Covariant v0, Covariant w0) => (a -> b) -> ((TUVW Co Co Co Co t u v w :.: (u0 :.: (v0 :.: w0))) >< a) -> (TUVW Co Co Co Co t u v w :.: (u0 :.: (v0 :.: w0))) >< b Source #

(<&&>) :: Covariant u0 => ((TUVW Co Co Co Co t u v w :.: u0) >< a) -> (a -> b) -> (TUVW Co Co Co Co t u v w :.: u0) >< b Source #

(<&&&>) :: (Covariant u0, Covariant v0) => ((TUVW Co Co Co Co t u v w :.: (u0 :.: v0)) >< a) -> (a -> b) -> (TUVW Co Co Co Co t u v w :.: (u0 :.: v0)) >< b Source #

(<&&&&>) :: (Covariant u0, Covariant v0, Covariant w0) => ((TUVW Co Co Co Co t u v w :.: (u0 :.: (v0 :.: w0))) >< a) -> (a -> b) -> (TUVW Co Co Co Co t u v w :.: (u0 :.: (v0 :.: w0))) >< b Source #

(Covariant t, Covariant u, Contravariant v, Contravariant w) => Covariant (TUVW Co Co Contra Contra t u v w) Source # 
Instance details

Defined in Pandora.Pattern.Junction.Schemes.TUVW

Methods

(<$>) :: (a -> b) -> TUVW Co Co Contra Contra t u v w a -> TUVW Co Co Contra Contra t u v w b Source #

comap :: (a -> b) -> TUVW Co Co Contra Contra t u v w a -> TUVW Co Co Contra Contra t u v w b Source #

(<$) :: a -> TUVW Co Co Contra Contra t u v w b -> TUVW Co Co Contra Contra t u v w a Source #

($>) :: TUVW Co Co Contra Contra t u v w a -> b -> TUVW Co Co Contra Contra t u v w b Source #

void :: TUVW Co Co Contra Contra t u v w a -> TUVW Co Co Contra Contra t u v w () Source #

loeb :: TUVW Co Co Contra Contra t u v w (TUVW Co Co Contra Contra t u v w a -> a) -> TUVW Co Co Contra Contra t u v w a Source #

(<&>) :: TUVW Co Co Contra Contra t u v w a -> (a -> b) -> TUVW Co Co Contra Contra t u v w b Source #

(<$$>) :: Covariant u0 => (a -> b) -> ((TUVW Co Co Contra Contra t u v w :.: u0) >< a) -> (TUVW Co Co Contra Contra t u v w :.: u0) >< b Source #

(<$$$>) :: (Covariant u0, Covariant v0) => (a -> b) -> ((TUVW Co Co Contra Contra t u v w :.: (u0 :.: v0)) >< a) -> (TUVW Co Co Contra Contra t u v w :.: (u0 :.: v0)) >< b Source #

(<$$$$>) :: (Covariant u0, Covariant v0, Covariant w0) => (a -> b) -> ((TUVW Co Co Contra Contra t u v w :.: (u0 :.: (v0 :.: w0))) >< a) -> (TUVW Co Co Contra Contra t u v w :.: (u0 :.: (v0 :.: w0))) >< b Source #

(<&&>) :: Covariant u0 => ((TUVW Co Co Contra Contra t u v w :.: u0) >< a) -> (a -> b) -> (TUVW Co Co Contra Contra t u v w :.: u0) >< b Source #

(<&&&>) :: (Covariant u0, Covariant v0) => ((TUVW Co Co Contra Contra t u v w :.: (u0 :.: v0)) >< a) -> (a -> b) -> (TUVW Co Co Contra Contra t u v w :.: (u0 :.: v0)) >< b Source #

(<&&&&>) :: (Covariant u0, Covariant v0, Covariant w0) => ((TUVW Co Co Contra Contra t u v w :.: (u0 :.: (v0 :.: w0))) >< a) -> (a -> b) -> (TUVW Co Co Contra Contra t u v w :.: (u0 :.: (v0 :.: w0))) >< b Source #

(Covariant t, Contravariant u, Covariant v, Contravariant w) => Covariant (TUVW Co Contra Co Contra t u v w) Source # 
Instance details

Defined in Pandora.Pattern.Junction.Schemes.TUVW

Methods

(<$>) :: (a -> b) -> TUVW Co Contra Co Contra t u v w a -> TUVW Co Contra Co Contra t u v w b Source #

comap :: (a -> b) -> TUVW Co Contra Co Contra t u v w a -> TUVW Co Contra Co Contra t u v w b Source #

(<$) :: a -> TUVW Co Contra Co Contra t u v w b -> TUVW Co Contra Co Contra t u v w a Source #

($>) :: TUVW Co Contra Co Contra t u v w a -> b -> TUVW Co Contra Co Contra t u v w b Source #

void :: TUVW Co Contra Co Contra t u v w a -> TUVW Co Contra Co Contra t u v w () Source #

loeb :: TUVW Co Contra Co Contra t u v w (TUVW Co Contra Co Contra t u v w a -> a) -> TUVW Co Contra Co Contra t u v w a Source #

(<&>) :: TUVW Co Contra Co Contra t u v w a -> (a -> b) -> TUVW Co Contra Co Contra t u v w b Source #

(<$$>) :: Covariant u0 => (a -> b) -> ((TUVW Co Contra Co Contra t u v w :.: u0) >< a) -> (TUVW Co Contra Co Contra t u v w :.: u0) >< b Source #

(<$$$>) :: (Covariant u0, Covariant v0) => (a -> b) -> ((TUVW Co Contra Co Contra t u v w :.: (u0 :.: v0)) >< a) -> (TUVW Co Contra Co Contra t u v w :.: (u0 :.: v0)) >< b Source #

(<$$$$>) :: (Covariant u0, Covariant v0, Covariant w0) => (a -> b) -> ((TUVW Co Contra Co Contra t u v w :.: (u0 :.: (v0 :.: w0))) >< a) -> (TUVW Co Contra Co Contra t u v w :.: (u0 :.: (v0 :.: w0))) >< b Source #

(<&&>) :: Covariant u0 => ((TUVW Co Contra Co Contra t u v w :.: u0) >< a) -> (a -> b) -> (TUVW Co Contra Co Contra t u v w :.: u0) >< b Source #

(<&&&>) :: (Covariant u0, Covariant v0) => ((TUVW Co Contra Co Contra t u v w :.: (u0 :.: v0)) >< a) -> (a -> b) -> (TUVW Co Contra Co Contra t u v w :.: (u0 :.: v0)) >< b Source #

(<&&&&>) :: (Covariant u0, Covariant v0, Covariant w0) => ((TUVW Co Contra Co Contra t u v w :.: (u0 :.: (v0 :.: w0))) >< a) -> (a -> b) -> (TUVW Co Contra Co Contra t u v w :.: (u0 :.: (v0 :.: w0))) >< b Source #

(Covariant t, Contravariant u, Contravariant v, Covariant w) => Covariant (TUVW Co Contra Contra Co t u v w) Source # 
Instance details

Defined in Pandora.Pattern.Junction.Schemes.TUVW

Methods

(<$>) :: (a -> b) -> TUVW Co Contra Contra Co t u v w a -> TUVW Co Contra Contra Co t u v w b Source #

comap :: (a -> b) -> TUVW Co Contra Contra Co t u v w a -> TUVW Co Contra Contra Co t u v w b Source #

(<$) :: a -> TUVW Co Contra Contra Co t u v w b -> TUVW Co Contra Contra Co t u v w a Source #

($>) :: TUVW Co Contra Contra Co t u v w a -> b -> TUVW Co Contra Contra Co t u v w b Source #

void :: TUVW Co Contra Contra Co t u v w a -> TUVW Co Contra Contra Co t u v w () Source #

loeb :: TUVW Co Contra Contra Co t u v w (TUVW Co Contra Contra Co t u v w a -> a) -> TUVW Co Contra Contra Co t u v w a Source #

(<&>) :: TUVW Co Contra Contra Co t u v w a -> (a -> b) -> TUVW Co Contra Contra Co t u v w b Source #

(<$$>) :: Covariant u0 => (a -> b) -> ((TUVW Co Contra Contra Co t u v w :.: u0) >< a) -> (TUVW Co Contra Contra Co t u v w :.: u0) >< b Source #

(<$$$>) :: (Covariant u0, Covariant v0) => (a -> b) -> ((TUVW Co Contra Contra Co t u v w :.: (u0 :.: v0)) >< a) -> (TUVW Co Contra Contra Co t u v w :.: (u0 :.: v0)) >< b Source #

(<$$$$>) :: (Covariant u0, Covariant v0, Covariant w0) => (a -> b) -> ((TUVW Co Contra Contra Co t u v w :.: (u0 :.: (v0 :.: w0))) >< a) -> (TUVW Co Contra Contra Co t u v w :.: (u0 :.: (v0 :.: w0))) >< b Source #

(<&&>) :: Covariant u0 => ((TUVW Co Contra Contra Co t u v w :.: u0) >< a) -> (a -> b) -> (TUVW Co Contra Contra Co t u v w :.: u0) >< b Source #

(<&&&>) :: (Covariant u0, Covariant v0) => ((TUVW Co Contra Contra Co t u v w :.: (u0 :.: v0)) >< a) -> (a -> b) -> (TUVW Co Contra Contra Co t u v w :.: (u0 :.: v0)) >< b Source #

(<&&&&>) :: (Covariant u0, Covariant v0, Covariant w0) => ((TUVW Co Contra Contra Co t u v w :.: (u0 :.: (v0 :.: w0))) >< a) -> (a -> b) -> (TUVW Co Contra Contra Co t u v w :.: (u0 :.: (v0 :.: w0))) >< b Source #

(Contravariant t, Covariant u, Covariant v, Contravariant w) => Covariant (TUVW Contra Co Co Contra t u v w) Source # 
Instance details

Defined in Pandora.Pattern.Junction.Schemes.TUVW

Methods

(<$>) :: (a -> b) -> TUVW Contra Co Co Contra t u v w a -> TUVW Contra Co Co Contra t u v w b Source #

comap :: (a -> b) -> TUVW Contra Co Co Contra t u v w a -> TUVW Contra Co Co Contra t u v w b Source #

(<$) :: a -> TUVW Contra Co Co Contra t u v w b -> TUVW Contra Co Co Contra t u v w a Source #

($>) :: TUVW Contra Co Co Contra t u v w a -> b -> TUVW Contra Co Co Contra t u v w b Source #

void :: TUVW Contra Co Co Contra t u v w a -> TUVW Contra Co Co Contra t u v w () Source #

loeb :: TUVW Contra Co Co Contra t u v w (TUVW Contra Co Co Contra t u v w a -> a) -> TUVW Contra Co Co Contra t u v w a Source #

(<&>) :: TUVW Contra Co Co Contra t u v w a -> (a -> b) -> TUVW Contra Co Co Contra t u v w b Source #

(<$$>) :: Covariant u0 => (a -> b) -> ((TUVW Contra Co Co Contra t u v w :.: u0) >< a) -> (TUVW Contra Co Co Contra t u v w :.: u0) >< b Source #

(<$$$>) :: (Covariant u0, Covariant v0) => (a -> b) -> ((TUVW Contra Co Co Contra t u v w :.: (u0 :.: v0)) >< a) -> (TUVW Contra Co Co Contra t u v w :.: (u0 :.: v0)) >< b Source #

(<$$$$>) :: (Covariant u0, Covariant v0, Covariant w0) => (a -> b) -> ((TUVW Contra Co Co Contra t u v w :.: (u0 :.: (v0 :.: w0))) >< a) -> (TUVW Contra Co Co Contra t u v w :.: (u0 :.: (v0 :.: w0))) >< b Source #

(<&&>) :: Covariant u0 => ((TUVW Contra Co Co Contra t u v w :.: u0) >< a) -> (a -> b) -> (TUVW Contra Co Co Contra t u v w :.: u0) >< b Source #

(<&&&>) :: (Covariant u0, Covariant v0) => ((TUVW Contra Co Co Contra t u v w :.: (u0 :.: v0)) >< a) -> (a -> b) -> (TUVW Contra Co Co Contra t u v w :.: (u0 :.: v0)) >< b Source #

(<&&&&>) :: (Covariant u0, Covariant v0, Covariant w0) => ((TUVW Contra Co Co Contra t u v w :.: (u0 :.: (v0 :.: w0))) >< a) -> (a -> b) -> (TUVW Contra Co Co Contra t u v w :.: (u0 :.: (v0 :.: w0))) >< b Source #

(Contravariant t, Covariant u, Contravariant v, Covariant w) => Covariant (TUVW Contra Co Contra Co t u v w) Source # 
Instance details

Defined in Pandora.Pattern.Junction.Schemes.TUVW

Methods

(<$>) :: (a -> b) -> TUVW Contra Co Contra Co t u v w a -> TUVW Contra Co Contra Co t u v w b Source #

comap :: (a -> b) -> TUVW Contra Co Contra Co t u v w a -> TUVW Contra Co Contra Co t u v w b Source #

(<$) :: a -> TUVW Contra Co Contra Co t u v w b -> TUVW Contra Co Contra Co t u v w a Source #

($>) :: TUVW Contra Co Contra Co t u v w a -> b -> TUVW Contra Co Contra Co t u v w b Source #

void :: TUVW Contra Co Contra Co t u v w a -> TUVW Contra Co Contra Co t u v w () Source #

loeb :: TUVW Contra Co Contra Co t u v w (TUVW Contra Co Contra Co t u v w a -> a) -> TUVW Contra Co Contra Co t u v w a Source #

(<&>) :: TUVW Contra Co Contra Co t u v w a -> (a -> b) -> TUVW Contra Co Contra Co t u v w b Source #

(<$$>) :: Covariant u0 => (a -> b) -> ((TUVW Contra Co Contra Co t u v w :.: u0) >< a) -> (TUVW Contra Co Contra Co t u v w :.: u0) >< b Source #

(<$$$>) :: (Covariant u0, Covariant v0) => (a -> b) -> ((TUVW Contra Co Contra Co t u v w :.: (u0 :.: v0)) >< a) -> (TUVW Contra Co Contra Co t u v w :.: (u0 :.: v0)) >< b Source #

(<$$$$>) :: (Covariant u0, Covariant v0, Covariant w0) => (a -> b) -> ((TUVW Contra Co Contra Co t u v w :.: (u0 :.: (v0 :.: w0))) >< a) -> (TUVW Contra Co Contra Co t u v w :.: (u0 :.: (v0 :.: w0))) >< b Source #

(<&&>) :: Covariant u0 => ((TUVW Contra Co Contra Co t u v w :.: u0) >< a) -> (a -> b) -> (TUVW Contra Co Contra Co t u v w :.: u0) >< b Source #

(<&&&>) :: (Covariant u0, Covariant v0) => ((TUVW Contra Co Contra Co t u v w :.: (u0 :.: v0)) >< a) -> (a -> b) -> (TUVW Contra Co Contra Co t u v w :.: (u0 :.: v0)) >< b Source #

(<&&&&>) :: (Covariant u0, Covariant v0, Covariant w0) => ((TUVW Contra Co Contra Co t u v w :.: (u0 :.: (v0 :.: w0))) >< a) -> (a -> b) -> (TUVW Contra Co Contra Co t u v w :.: (u0 :.: (v0 :.: w0))) >< b Source #

(Contravariant t, Contravariant u, Covariant v, Covariant w) => Covariant (TUVW Contra Contra Co Co t u v w) Source # 
Instance details

Defined in Pandora.Pattern.Junction.Schemes.TUVW

Methods

(<$>) :: (a -> b) -> TUVW Contra Contra Co Co t u v w a -> TUVW Contra Contra Co Co t u v w b Source #

comap :: (a -> b) -> TUVW Contra Contra Co Co t u v w a -> TUVW Contra Contra Co Co t u v w b Source #

(<$) :: a -> TUVW Contra Contra Co Co t u v w b -> TUVW Contra Contra Co Co t u v w a Source #

($>) :: TUVW Contra Contra Co Co t u v w a -> b -> TUVW Contra Contra Co Co t u v w b Source #

void :: TUVW Contra Contra Co Co t u v w a -> TUVW Contra Contra Co Co t u v w () Source #

loeb :: TUVW Contra Contra Co Co t u v w (TUVW Contra Contra Co Co t u v w a -> a) -> TUVW Contra Contra Co Co t u v w a Source #

(<&>) :: TUVW Contra Contra Co Co t u v w a -> (a -> b) -> TUVW Contra Contra Co Co t u v w b Source #

(<$$>) :: Covariant u0 => (a -> b) -> ((TUVW Contra Contra Co Co t u v w :.: u0) >< a) -> (TUVW Contra Contra Co Co t u v w :.: u0) >< b Source #

(<$$$>) :: (Covariant u0, Covariant v0) => (a -> b) -> ((TUVW Contra Contra Co Co t u v w :.: (u0 :.: v0)) >< a) -> (TUVW Contra Contra Co Co t u v w :.: (u0 :.: v0)) >< b Source #

(<$$$$>) :: (Covariant u0, Covariant v0, Covariant w0) => (a -> b) -> ((TUVW Contra Contra Co Co t u v w :.: (u0 :.: (v0 :.: w0))) >< a) -> (TUVW Contra Contra Co Co t u v w :.: (u0 :.: (v0 :.: w0))) >< b Source #

(<&&>) :: Covariant u0 => ((TUVW Contra Contra Co Co t u v w :.: u0) >< a) -> (a -> b) -> (TUVW Contra Contra Co Co t u v w :.: u0) >< b Source #

(<&&&>) :: (Covariant u0, Covariant v0) => ((TUVW Contra Contra Co Co t u v w :.: (u0 :.: v0)) >< a) -> (a -> b) -> (TUVW Contra Contra Co Co t u v w :.: (u0 :.: v0)) >< b Source #

(<&&&&>) :: (Covariant u0, Covariant v0, Covariant w0) => ((TUVW Contra Contra Co Co t u v w :.: (u0 :.: (v0 :.: w0))) >< a) -> (a -> b) -> (TUVW Contra Contra Co Co t u v w :.: (u0 :.: (v0 :.: w0))) >< b Source #

(Contravariant t, Contravariant u, Contravariant v, Contravariant w) => Covariant (TUVW Contra Contra Contra Contra t u v w) Source # 
Instance details

Defined in Pandora.Pattern.Junction.Schemes.TUVW

Methods

(<$>) :: (a -> b) -> TUVW Contra Contra Contra Contra t u v w a -> TUVW Contra Contra Contra Contra t u v w b Source #

comap :: (a -> b) -> TUVW Contra Contra Contra Contra t u v w a -> TUVW Contra Contra Contra Contra t u v w b Source #

(<$) :: a -> TUVW Contra Contra Contra Contra t u v w b -> TUVW Contra Contra Contra Contra t u v w a Source #

($>) :: TUVW Contra Contra Contra Contra t u v w a -> b -> TUVW Contra Contra Contra Contra t u v w b Source #

void :: TUVW Contra Contra Contra Contra t u v w a -> TUVW Contra Contra Contra Contra t u v w () Source #

loeb :: TUVW Contra Contra Contra Contra t u v w (TUVW Contra Contra Contra Contra t u v w a -> a) -> TUVW Contra Contra Contra Contra t u v w a Source #

(<&>) :: TUVW Contra Contra Contra Contra t u v w a -> (a -> b) -> TUVW Contra Contra Contra Contra t u v w b Source #

(<$$>) :: Covariant u0 => (a -> b) -> ((TUVW Contra Contra Contra Contra t u v w :.: u0) >< a) -> (TUVW Contra Contra Contra Contra t u v w :.: u0) >< b Source #

(<$$$>) :: (Covariant u0, Covariant v0) => (a -> b) -> ((TUVW Contra Contra Contra Contra t u v w :.: (u0 :.: v0)) >< a) -> (TUVW Contra Contra Contra Contra t u v w :.: (u0 :.: v0)) >< b Source #

(<$$$$>) :: (Covariant u0, Covariant v0, Covariant w0) => (a -> b) -> ((TUVW Contra Contra Contra Contra t u v w :.: (u0 :.: (v0 :.: w0))) >< a) -> (TUVW Contra Contra Contra Contra t u v w :.: (u0 :.: (v0 :.: w0))) >< b Source #

(<&&>) :: Covariant u0 => ((TUVW Contra Contra Contra Contra t u v w :.: u0) >< a) -> (a -> b) -> (TUVW Contra Contra Contra Contra t u v w :.: u0) >< b Source #

(<&&&>) :: (Covariant u0, Covariant v0) => ((TUVW Contra Contra Contra Contra t u v w :.: (u0 :.: v0)) >< a) -> (a -> b) -> (TUVW Contra Contra Contra Contra t u v w :.: (u0 :.: v0)) >< b Source #

(<&&&&>) :: (Covariant u0, Covariant v0, Covariant w0) => ((TUVW Contra Contra Contra Contra t u v w :.: (u0 :.: (v0 :.: w0))) >< a) -> (a -> b) -> (TUVW Contra Contra Contra Contra t u v w :.: (u0 :.: (v0 :.: w0))) >< b Source #