pandora-0.2.0: A box of patterns and paradigms
Pandora.Paradigm.Basis.Variation
data Variation e a Source #
Constructors
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 #
point :: a -> Variation e a Source #
(->>) :: (Pointable u, Applicative u) => Variation e a -> (a -> u b) -> (u :. Variation e) > b Source #
traverse :: (Pointable u, Applicative u) => (a -> u b) -> Variation e a -> (u :. Variation e) > b Source #
sequence :: (Pointable u, Applicative u) => (Variation e :. u) a -> (u :. Variation e) > a Source #
(->>>) :: (Pointable u, Applicative u, Traversable v) => ((v :. Variation e) > a) -> (a -> u b) -> (u :. (v :. Variation e)) > b Source #
(->>>>) :: (Pointable u, Applicative u, Traversable v, Traversable w) => ((w :. (v :. Variation e)) > a) -> (a -> u b) -> (u :. (w :. (v :. Variation e))) > b Source #
(->>>>>) :: (Pointable u, Applicative u, Traversable v, Traversable w, Traversable j) => ((j :. (w :. (v :. Variation e))) > a) -> (a -> u b) -> (u :. (j :. (w :. (v :. Variation e)))) > b Source #
variation :: (a -> r) -> (e -> r) -> (e -> a -> r) -> Variation e a -> r Source #