Pandora.Paradigm.Primary.Transformer.Outline
data Outline t a where Source #
Constructors
Defined in Pandora.Paradigm.Primary.Transformer.Outline
Methods
lift :: forall (u :: Type -> Type). Covariant u => u ~> Outline u Source #
(<$>) :: (a -> b) -> Outline t a -> Outline t b Source #
comap :: (a -> b) -> Outline t a -> Outline t b Source #
(<$) :: a -> Outline t b -> Outline t a Source #
($>) :: Outline t a -> b -> Outline t b Source #
void :: Outline t a -> Outline t () Source #
loeb :: Outline t (a <-| Outline t) -> Outline t a Source #
(<&>) :: Outline t a -> (a -> b) -> Outline t b Source #
(<$$>) :: Covariant u => (a -> b) -> ((Outline t :. u) := a) -> (Outline t :. u) := b Source #
(<$$$>) :: (Covariant u, Covariant v) => (a -> b) -> ((Outline t :. (u :. v)) := a) -> (Outline t :. (u :. v)) := b Source #
(<$$$$>) :: (Covariant u, Covariant v, Covariant w) => (a -> b) -> ((Outline t :. (u :. (v :. w))) := a) -> (Outline t :. (u :. (v :. w))) := b Source #
(<&&>) :: Covariant u => ((Outline t :. u) := a) -> (a -> b) -> (Outline t :. u) := b Source #
(<&&&>) :: (Covariant u, Covariant v) => ((Outline t :. (u :. v)) := a) -> (a -> b) -> (Outline t :. (u :. v)) := b Source #
(<&&&&>) :: (Covariant u, Covariant v, Covariant w) => ((Outline t :. (u :. (v :. w))) := a) -> (a -> b) -> (Outline t :. (u :. (v :. w))) := b Source #
(<*>) :: Outline f (a -> b) -> Outline f a -> Outline f b Source #
apply :: Outline f (a -> b) -> Outline f a -> Outline f b Source #
(*>) :: Outline f a -> Outline f b -> Outline f b Source #
(<*) :: Outline f a -> Outline f b -> Outline f a Source #
forever :: Outline f a -> Outline f b Source #
(<**>) :: Applicative u => ((Outline f :. u) := (a -> b)) -> ((Outline f :. u) := a) -> (Outline f :. u) := b Source #
(<***>) :: (Applicative u, Applicative v) => ((Outline f :. (u :. v)) := (a -> b)) -> ((Outline f :. (u :. v)) := a) -> (Outline f :. (u :. v)) := b Source #
(<****>) :: (Applicative u, Applicative v, Applicative w) => ((Outline f :. (u :. (v :. w))) := (a -> b)) -> ((Outline f :. (u :. (v :. w))) := a) -> (Outline f :. (u :. (v :. w))) := b Source #
point :: a |-> Outline t Source #
extract :: a <-| Outline t Source #
Associated Types
type Primary (Outline t) a Source #
run :: Outline t a -> Primary (Outline t) a Source #
unite :: Primary (Outline t) a -> Outline t a Source #
hoist :: forall (u :: Type -> Type) (v :: Type -> Type). Covariant u => (u ~> v) -> Outline u ~> Outline v Source #