pandora-0.3.3: A box of patterns and paradigms
Safe HaskellSafe-Inferred
LanguageHaskell2010

Pandora.Paradigm.Primary.Functor.Proxy

Documentation

data Proxy a Source #

Constructors

Proxy 

Instances

Instances details
Contravariant (Proxy :: Type -> Type) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Proxy

Methods

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

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

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

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

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

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

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

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

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

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

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

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

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

Defined in Pandora.Paradigm.Primary.Functor.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 (a <-| Proxy) -> 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 #

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

Defined in Pandora.Paradigm.Primary.Functor.Proxy

Methods

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

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

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

join :: ((Proxy :. Proxy) := a) -> Proxy a Source #

(>=>) :: (a -> Proxy b) -> (b -> Proxy c) -> a -> Proxy c Source #

(<=<) :: (b -> Proxy c) -> (a -> Proxy b) -> a -> Proxy c Source #

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

(<>>=) :: (Proxy b -> c) -> (a -> Proxy b) -> Proxy a -> c Source #

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

Defined in Pandora.Paradigm.Primary.Functor.Proxy

Methods

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

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

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

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

forever :: Proxy a -> Proxy b Source #

(<**>) :: Applicative u => ((Proxy :. u) := (a -> b)) -> ((Proxy :. u) := a) -> (Proxy :. u) := b Source #

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

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

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

Defined in Pandora.Paradigm.Primary.Functor.Proxy

Methods

(<+>) :: Proxy a -> Proxy a -> Proxy a Source #

alter :: Proxy a -> Proxy a -> Proxy a Source #

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

Defined in Pandora.Paradigm.Primary.Functor.Proxy

Methods

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

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

distribute :: Covariant u => ((u :. Proxy) := a) -> (Proxy :. u) := a Source #

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

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

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

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

Defined in Pandora.Paradigm.Primary.Functor.Proxy

Methods

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

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

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

duplicate :: Proxy a -> (Proxy :. Proxy) := a Source #

(=<=) :: (Proxy b -> c) -> (Proxy a -> b) -> Proxy a -> c Source #

(=>=) :: (Proxy a -> b) -> (Proxy b -> c) -> Proxy a -> c Source #

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

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

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

Defined in Pandora.Paradigm.Primary.Functor.Proxy

Methods

point :: a |-> Proxy Source #

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

Defined in Pandora.Paradigm.Primary.Functor.Proxy

Methods

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

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

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

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