pandora-0.1.9: A box of patterns and paradigms

Safe HaskellSafe
LanguageHaskell2010

Pandora.Core.Functor

Documentation

data Variant Source #

Constructors

Co 
Contra 
Instances
(forall (u' :: Type -> Type). Pointable u', Liftable t) => Liftable (UTU Co Co t) Source # 
Instance details

Defined in Pandora.Pattern.Junction.Schemes.UTU

Methods

lift :: Covariant u => u ~> UTU Co Co t u Source #

Pointable t => Liftable (UT Co Co t) Source # 
Instance details

Defined in Pandora.Pattern.Junction.Schemes.UT

Methods

lift :: Covariant u => u ~> UT Co Co t u Source #

(forall (u' :: Type -> Type). Extractable u', Lowerable t) => Lowerable (UTU Co Co t) Source # 
Instance details

Defined in Pandora.Pattern.Junction.Schemes.UTU

Methods

lower :: Covariant u => UTU Co Co t u ~> u Source #

Extractable t => Lowerable (UT Co Co t) Source # 
Instance details

Defined in Pandora.Pattern.Junction.Schemes.UT

Methods

lower :: Covariant u => UT Co Co t u ~> u Source #

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

Defined in Pandora.Pattern.Junction.Schemes.TU

Methods

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

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

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

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

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

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

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

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

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

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

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

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

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

Defined in Pandora.Pattern.Junction.Schemes.TU

Methods

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

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

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

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

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

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

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

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

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

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

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

(>&&&&<) :: (Contravariant u0, Contravariant v, Contravariant w) => ((TU Contra Co t u :.: (u0 :.: (v :.: w))) >< a) -> (a -> b) -> (TU Contra Co t u :.: (u0 :.: (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 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 #

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

Defined in Pandora.Pattern.Junction.Schemes.TU

Methods

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

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

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

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

forever :: TU Co Co t u a -> TU Co Co t u b Source #

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

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

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

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

Defined in Pandora.Pattern.Junction.Schemes.UTU

Methods

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

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

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

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

forever :: UTU Co Co t u a -> UTU Co Co t u b Source #

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

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

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

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

Defined in Pandora.Pattern.Junction.Schemes.UT

Methods

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

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

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

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

forever :: UT Co Co t u a -> UT Co Co t u b Source #

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

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

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

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

Defined in Pandora.Pattern.Junction.Schemes.TU

Methods

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

alter :: TU Co Co t u a -> TU Co Co t u a -> TU Co Co t u a Source #

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

Defined in Pandora.Pattern.Junction.Schemes.UTU

Methods

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

alter :: UTU Co Co t u a -> UTU Co Co t u a -> UTU Co Co t u a Source #

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

Defined in Pandora.Pattern.Junction.Schemes.UT

Methods

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

alter :: UT Co Co t u a -> UT Co Co t u a -> UT Co Co t u a Source #

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

Defined in Pandora.Pattern.Junction.Schemes.TU

Methods

empty :: TU Co Co t u a Source #

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

Defined in Pandora.Pattern.Junction.Schemes.UTU

Methods

empty :: UTU Co Co t u a Source #

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

Defined in Pandora.Pattern.Junction.Schemes.UT

Methods

empty :: UT Co Co t u a Source #

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

Defined in Pandora.Pattern.Junction.Schemes.TU

Methods

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

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

distribute :: Covariant t0 => ((t0 :.: TU Co Co t u) >< a) -> (TU Co Co t u :.: t0) >< a Source #

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

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

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

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

Defined in Pandora.Pattern.Junction.Schemes.UTU

Methods

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

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

distribute :: Covariant t0 => ((t0 :.: UTU Co Co t u) >< a) -> (UTU Co Co t u :.: t0) >< a Source #

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

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

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

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

Defined in Pandora.Pattern.Junction.Schemes.UT

Methods

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

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

distribute :: Covariant t0 => ((t0 :.: UT Co Co t u) >< a) -> (UT Co Co t u :.: t0) >< a Source #

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

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

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

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

Defined in Pandora.Pattern.Junction.Schemes.TU

Methods

extract :: TU Co Co t u a -> a Source #

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

Defined in Pandora.Pattern.Junction.Schemes.UTU

Methods

extract :: UTU Co Co t u a -> a Source #

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

Defined in Pandora.Pattern.Junction.Schemes.UT

Methods

extract :: UT Co Co t u a -> a Source #

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

Defined in Pandora.Pattern.Junction.Schemes.TU

Methods

point :: a -> TU Co Co t u a Source #

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

Defined in Pandora.Pattern.Junction.Schemes.UTU

Methods

point :: a -> UTU Co Co t u a Source #

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

Defined in Pandora.Pattern.Junction.Schemes.UT

Methods

point :: a -> UT Co Co t u a Source #

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

Defined in Pandora.Pattern.Junction.Schemes.TU

Methods

(->>) :: (Pointable u0, Applicative u0) => TU Co Co t u a -> (a -> u0 b) -> (u0 :.: TU Co Co t u) >< b Source #

traverse :: (Pointable u0, Applicative u0) => (a -> u0 b) -> TU Co Co t u a -> (u0 :.: TU Co Co t u) >< b Source #

sequence :: (Pointable u0, Applicative u0) => (TU Co Co t u :.: u0) a -> (u0 :.: TU Co Co t u) >< a Source #

(->>>) :: (Pointable u0, Applicative u0, Traversable v) => ((v :.: TU Co Co t u) >< a) -> (a -> u0 b) -> (u0 :.: (v :.: TU Co Co t u)) >< b Source #

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

(->>>>>) :: (Pointable u0, Applicative u0, Traversable v, Traversable w, Traversable j) => ((j :.: (w :.: (v :.: TU Co Co t u))) >< a) -> (a -> u0 b) -> (u0 :.: (j :.: (w :.: (v :.: TU Co Co t u)))) >< b Source #

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

Defined in Pandora.Pattern.Junction.Schemes.UTU

Methods

(->>) :: (Pointable u0, Applicative u0) => UTU Co Co t u a -> (a -> u0 b) -> (u0 :.: UTU Co Co t u) >< b Source #

traverse :: (Pointable u0, Applicative u0) => (a -> u0 b) -> UTU Co Co t u a -> (u0 :.: UTU Co Co t u) >< b Source #

sequence :: (Pointable u0, Applicative u0) => (UTU Co Co t u :.: u0) a -> (u0 :.: UTU Co Co t u) >< a Source #

(->>>) :: (Pointable u0, Applicative u0, Traversable v) => ((v :.: UTU Co Co t u) >< a) -> (a -> u0 b) -> (u0 :.: (v :.: UTU Co Co t u)) >< b Source #

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

(->>>>>) :: (Pointable u0, Applicative u0, Traversable v, Traversable w, Traversable j) => ((j :.: (w :.: (v :.: UTU Co Co t u))) >< a) -> (a -> u0 b) -> (u0 :.: (j :.: (w :.: (v :.: UTU Co Co t u)))) >< b Source #

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

Defined in Pandora.Pattern.Junction.Schemes.UT

Methods

(->>) :: (Pointable u0, Applicative u0) => UT Co Co t u a -> (a -> u0 b) -> (u0 :.: UT Co Co t u) >< b Source #

traverse :: (Pointable u0, Applicative u0) => (a -> u0 b) -> UT Co Co t u a -> (u0 :.: UT Co Co t u) >< b Source #

sequence :: (Pointable u0, Applicative u0) => (UT Co Co t u :.: u0) a -> (u0 :.: UT Co Co t u) >< a Source #

(->>>) :: (Pointable u0, Applicative u0, Traversable v) => ((v :.: UT Co Co t u) >< a) -> (a -> u0 b) -> (u0 :.: (v :.: UT Co Co t u)) >< b Source #

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

(->>>>>) :: (Pointable u0, Applicative u0, Traversable v, Traversable w, Traversable j) => ((j :.: (w :.: (v :.: UT Co Co t u))) >< a) -> (a -> u0 b) -> (u0 :.: (j :.: (w :.: (v :.: UT Co Co t u)))) >< b Source #

(t :-|: u, v :-|: w) => Adjoint (TU Co Co t v) (TU Co Co u w) Source # 
Instance details

Defined in Pandora.Pattern.Junction.Schemes.TU

Methods

phi :: (TU Co Co t v a -> b) -> a -> TU Co Co u w b Source #

psi :: (a -> TU Co Co u w b) -> TU Co Co t v a -> b Source #

eta :: a -> (TU Co Co u w :.: TU Co Co t v) >< a Source #

epsilon :: ((TU Co Co t v :.: TU Co Co u w) >< a) -> a Source #

(forall (u' :: k2 -> Type). Semigroup ((u' :.: t u') >< a)) => Semigroup (UTU Co Co t u a) Source # 
Instance details

Defined in Pandora.Pattern.Junction.Schemes.UTU

Methods

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

Semigroup ((u :.: t) >< a) => Semigroup (UT Co Co t u a) Source # 
Instance details

Defined in Pandora.Pattern.Junction.Schemes.UT

Methods

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

(forall (u' :: k2 -> Type). Monoid ((u' :.: t u') >< a)) => Monoid (UTU Co Co t u a) Source # 
Instance details

Defined in Pandora.Pattern.Junction.Schemes.UTU

Methods

zero :: UTU Co Co t u a Source #

Monoid ((u :.: t) >< a) => Monoid (UT Co Co t u a) Source # 
Instance details

Defined in Pandora.Pattern.Junction.Schemes.UT

Methods

zero :: UT Co Co t u a Source #

(forall (u' :: k2 -> Type). Setoid ((u' :.: t u') >< a)) => Setoid (UTU Co Co t u a) Source # 
Instance details

Defined in Pandora.Pattern.Junction.Schemes.UTU

Methods

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

(/=) :: UTU Co Co t u a -> UTU Co Co t u a -> Boolean Source #

Setoid ((u :.: t) >< a) => Setoid (UT Co Co t u a) Source # 
Instance details

Defined in Pandora.Pattern.Junction.Schemes.UT

Methods

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

(/=) :: UT Co Co t u a -> UT Co Co t u a -> Boolean Source #

(forall (u' :: k2 -> Type). Chain ((u' :.: t u') >< a)) => Chain (UTU Co Co t u a) Source # 
Instance details

Defined in Pandora.Pattern.Junction.Schemes.UTU

Methods

(<=>) :: UTU Co Co t u a -> UTU Co Co t u a -> Ordering Source #

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

(<=) :: UTU Co Co t u a -> UTU Co Co t u a -> Boolean Source #

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

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

Chain ((u :.: t) >< a) => Chain (UT Co Co t u a) Source # 
Instance details

Defined in Pandora.Pattern.Junction.Schemes.UT

Methods

(<=>) :: UT Co Co t u a -> UT Co Co t u a -> Ordering Source #

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

(<=) :: UT Co Co t u a -> UT Co Co t u a -> Boolean Source #

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

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

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

Defined in Pandora.Pattern.Junction.Schemes.TUV

Methods

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

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

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

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

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

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

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

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

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

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

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

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

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

Defined in Pandora.Pattern.Junction.Schemes.TUV

Methods

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

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

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

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

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

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

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

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

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

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

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

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

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

Defined in Pandora.Pattern.Junction.Schemes.TUV

Methods

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

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

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

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

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

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

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

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

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

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

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

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

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

Defined in Pandora.Pattern.Junction.Schemes.TUV

Methods

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

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

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

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

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

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

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

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

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

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

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

(>&&&&<) :: (Contravariant u0, Contravariant v0, Contravariant w) => ((TUV Contra Contra Contra t u v :.: (u0 :.: (v0 :.: w))) >< a) -> (a -> b) -> (TUV Contra Contra Contra t u v :.: (u0 :.: (v0 :.: 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 #

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

Defined in Pandora.Pattern.Junction.Schemes.TUV

Methods

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

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

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

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

forever :: TUV Co Co Co t u v a -> TUV Co Co Co t u v b Source #

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

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

(<****>) :: (Applicative u0, Applicative v0, Applicative w) => ((TUV Co Co Co t u v :.: (u0 :.: (v0 :.: 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 #

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

Defined in Pandora.Pattern.Junction.Schemes.TUV

Methods

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

alter :: TUV Co Co Co t u v a -> TUV Co Co Co t u v a -> TUV Co Co Co t u v a Source #

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

Defined in Pandora.Pattern.Junction.Schemes.TUV

Methods

empty :: TUV Co Co Co t u v a Source #

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

Defined in Pandora.Pattern.Junction.Schemes.TUV

Methods

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

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

distribute :: Covariant t0 => ((t0 :.: TUV Co Co Co t u v) >< a) -> (TUV Co Co Co t u v :.: t0) >< a Source #

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

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

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

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

Defined in Pandora.Pattern.Junction.Schemes.TUV

Methods

extract :: TUV Co Co Co t u v a -> a Source #

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

Defined in Pandora.Pattern.Junction.Schemes.TUV

Methods

point :: a -> TUV Co Co Co t u v a Source #

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

Defined in Pandora.Pattern.Junction.Schemes.TUV

Methods

(->>) :: (Pointable u0, Applicative u0) => TUV Co Co Co t u v a -> (a -> u0 b) -> (u0 :.: TUV Co Co Co t u v) >< b Source #

traverse :: (Pointable u0, Applicative u0) => (a -> u0 b) -> TUV Co Co Co t u v a -> (u0 :.: TUV Co Co Co t u v) >< b Source #

sequence :: (Pointable u0, Applicative u0) => (TUV Co Co Co t u v :.: u0) a -> (u0 :.: TUV Co Co Co t u v) >< a Source #

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

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

(->>>>>) :: (Pointable u0, Applicative u0, Traversable v0, Traversable w, Traversable j) => ((j :.: (w :.: (v0 :.: TUV Co Co Co t u v))) >< a) -> (a -> u0 b) -> (u0 :.: (j :.: (w :.: (v0 :.: TUV Co Co Co t u v)))) >< b Source #

(t :-|: w, v :-|: x, u :-|: y) => Adjoint (TUV Co Co Co t v u) (TUV Co Co Co w x y) Source # 
Instance details

Defined in Pandora.Pattern.Junction.Schemes.TUV

Methods

phi :: (TUV Co Co Co t v u a -> b) -> a -> TUV Co Co Co w x y b Source #

psi :: (a -> TUV Co Co Co w x y b) -> TUV Co Co Co t v u a -> b Source #

eta :: a -> (TUV Co Co Co w x y :.: TUV Co Co Co t v u) >< a Source #

epsilon :: ((TUV Co Co Co t v u :.: TUV Co Co Co w x y) >< a) -> a Source #

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

Defined in Pandora.Pattern.Junction.Schemes.TUVW

Methods

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

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

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

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

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

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

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

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

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

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

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

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

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

Defined in Pandora.Pattern.Junction.Schemes.TUVW

Methods

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

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

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

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

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

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

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

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

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

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

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

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

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

Defined in Pandora.Pattern.Junction.Schemes.TUVW

Methods

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

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

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

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

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

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

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

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

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

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

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

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

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

Defined in Pandora.Pattern.Junction.Schemes.TUVW

Methods

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

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

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

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

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

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

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

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

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

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

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

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

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

Defined in Pandora.Pattern.Junction.Schemes.TUVW

Methods

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

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

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

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

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

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

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

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

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

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

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

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

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

Defined in Pandora.Pattern.Junction.Schemes.TUVW

Methods

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

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

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

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

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

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

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

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

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

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

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

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

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

Defined in Pandora.Pattern.Junction.Schemes.TUVW

Methods

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

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

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

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

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

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

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

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

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

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

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

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

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

Defined in Pandora.Pattern.Junction.Schemes.TUVW

Methods

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

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

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

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

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

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

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

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

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

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

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

(>&&&&<) :: (Contravariant u0, Contravariant v0, Contravariant w0) => ((TUVW Contra Contra Contra Co t u v w :.: (u0 :.: (v0 :.: w0))) >< a) -> (a -> b) -> (TUVW Contra Contra Contra Co t u v w :.: (u0 :.: (v0 :.: w0))) >< 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 #

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

Defined in Pandora.Pattern.Junction.Schemes.TUVW

Methods

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

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

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

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

forever :: TUVW Co Co Co Co t u v w a -> TUVW Co Co Co Co t u v w b Source #

(<**>) :: Applicative u0 => ((TUVW Co Co Co Co t u v w :.: 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 #

(<***>) :: (Applicative u0, Applicative v0) => ((TUVW Co Co Co Co t u v w :.: (u0 :.: 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 #

(<****>) :: (Applicative u0, Applicative v0, Applicative w0) => ((TUVW Co Co Co Co t u v w :.: (u0 :.: (v0 :.: 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 #

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

Defined in Pandora.Pattern.Junction.Schemes.TUVW

Methods

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

alter :: TUVW Co Co Co Co t u v w a -> TUVW Co Co Co Co t u v w a -> TUVW Co Co Co Co t u v w a Source #

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

Defined in Pandora.Pattern.Junction.Schemes.TUVW

Methods

empty :: TUVW Co Co Co Co t u v w a Source #

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

Defined in Pandora.Pattern.Junction.Schemes.TUVW

Methods

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

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

distribute :: Covariant t0 => ((t0 :.: TUVW Co Co Co Co t u v w) >< a) -> (TUVW Co Co Co Co t u v w :.: t0) >< a Source #

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

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

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

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

Defined in Pandora.Pattern.Junction.Schemes.TUVW

Methods

extract :: TUVW Co Co Co Co t u v w a -> a Source #

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

Defined in Pandora.Pattern.Junction.Schemes.TUVW

Methods

point :: a -> TUVW Co Co Co Co t u v w a Source #

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

Defined in Pandora.Pattern.Junction.Schemes.TUVW

Methods

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

traverse :: (Pointable u0, Applicative u0) => (a -> u0 b) -> TUVW Co Co Co Co t u v w a -> (u0 :.: TUVW Co Co Co Co t u v w) >< b Source #

sequence :: (Pointable u0, Applicative u0) => (TUVW Co Co Co Co t u v w :.: u0) a -> (u0 :.: TUVW Co Co Co Co t u v w) >< a Source #

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

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

(->>>>>) :: (Pointable u0, Applicative u0, Traversable v0, Traversable w0, Traversable j) => ((j :.: (w0 :.: (v0 :.: TUVW Co Co Co Co t u v w))) >< a) -> (a -> u0 b) -> (u0 :.: (j :.: (w0 :.: (v0 :.: TUVW Co Co Co Co t u v w)))) >< b Source #

(t :-|: u, v :-|: w, q :-|: q, r :-|: s) => Adjoint (TUVW Co Co Co Co t v q r) (TUVW Co Co Co Co u w q s) Source # 
Instance details

Defined in Pandora.Pattern.Junction.Schemes.TUVW

Methods

phi :: (TUVW Co Co Co Co t v q r a -> b) -> a -> TUVW Co Co Co Co u w q s b Source #

psi :: (a -> TUVW Co Co Co Co u w q s b) -> TUVW Co Co Co Co t v q r a -> b Source #

eta :: a -> (TUVW Co Co Co Co u w q s :.: TUVW Co Co Co Co t v q r) >< a Source #

epsilon :: ((TUVW Co Co Co Co t v q r :.: TUVW Co Co Co Co u w q s) >< a) -> a Source #

type (:.:) t u a = t (u a) infixr 1 Source #

type (.:.) t u a = u (t a) infixr 1 Source #

type (><) t a = t a infixr 0 Source #