Safe Haskell | Safe |
---|---|
Language | Haskell2010 |
Documentation
Instances
Covariant t => Covariant (Free t) Source # | |
Defined in Pandora.Paradigm.Basis.Free (<$>) :: (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 t => Bindable (Free t) Source # | |
Defined in Pandora.Paradigm.Basis.Free (>>=) :: Free t a -> (a -> Free t b) -> Free t b Source # (=<<) :: (a -> Free t b) -> Free t a -> Free t b Source # bind :: (a -> Free t b) -> Free t a -> Free t b Source # join :: (Free t :.: Free t) a -> Free t a Source # (>=>) :: (a -> Free t b) -> (b -> Free t c) -> a -> Free t c Source # (<=<) :: (b -> Free t c) -> (a -> Free t b) -> a -> Free t c Source # | |
Covariant t => Applicative (Free t) Source # | |
Defined in Pandora.Paradigm.Basis.Free (<*>) :: Free t (a -> b) -> Free t a -> Free t b Source # apply :: Free t (a -> b) -> Free t a -> Free t b Source # (*>) :: Free t a -> Free t b -> Free t b Source # (<*) :: Free t a -> Free t b -> Free t a Source # forever :: Free t a -> Free t b Source # (<**>) :: Applicative u => (Free t :.: u) (a -> b) -> (Free t :.: u) a -> (Free t :.: u) b Source # (<***>) :: (Applicative u, Applicative v) => (Free t :.: (u :.: v)) (a -> b) -> (Free t :.: (u :.: v)) a -> (Free t :.: (u :.: v)) b Source # (<****>) :: (Applicative u, Applicative v, Applicative w) => (Free t :.: (u :.: (v :.: w))) (a -> b) -> (Free t :.: (u :.: (v :.: w))) a -> (Free t :.: (u :.: (v :.: w))) b Source # | |
Alternative t => Alternative (Free t) Source # | |
Avoidable t => Avoidable (Free t) Source # | |
Defined in Pandora.Paradigm.Basis.Free | |
Covariant t => Pointable (Free t) Source # | |
Defined in Pandora.Paradigm.Basis.Free | |
Traversable t => Traversable (Free t) Source # | |
Defined in Pandora.Paradigm.Basis.Free (->>) :: (Pointable u, Applicative u) => Free t a -> (a -> u b) -> (u :.: Free t) b Source # traverse :: (Pointable u, Applicative u) => (a -> u b) -> Free t a -> (u :.: Free t) b Source # sequence :: (Pointable u, Applicative u) => (Free t :.: u) a -> (u :.: Free t) a Source # (->>>) :: (Pointable u, Applicative u, Traversable v) => (v :.: Free t) a -> (a -> u b) -> (u :.: (v :.: Free t)) b Source # (->>>>) :: (Pointable u, Applicative u, Traversable v, Traversable w) => (w :.: (v :.: Free t)) a -> (a -> u b) -> (u :.: (w :.: (v :.: Free t))) b Source # (->>>>>) :: (Pointable u, Applicative u, Traversable v, Traversable w, Traversable j) => (j :.: (w :.: (v :.: Free t))) a -> (a -> u b) -> (u :.: (j :.: (w :.: (v :.: Free t)))) b Source # |