 | category-extras-0.50.3: Various modules and constructs inspired by category theory | Contents | Index |
|
Control.Functor.Composition | Portability | non-portable (class-associated types) | Stability | experimental | Maintainer | Edward Kmett <ekmett@gmail.com> |
|
|
|
Description |
Generalized functor composeosition.
|
|
|
Documentation |
|
newtype CompF f g a |
Constructors | | Instances | |
|
|
class Composition o where |
| Methods | decompose :: (f `o` g) x -> f (g x) | | compose :: f (g x) -> (f `o` g) x |
| | Instances | |
|
|
associateComposition :: (Functor f, Composition c) => c (c f g) h a -> c f (c g h) a |
|
coassociateComposition :: (Functor f, Composition c) => c f (c g h) a -> c (c f g) h a |
|
type :.: = CompF |
|
data Comp p f g a b |
Instances | (Bifunctor p Hask Hask Hask, Symmetric Hask f, Symmetric Hask g) => Symmetric Hask (Comp p f g) | (Bifunctor p Hask Hask Hask, Braided Hask f, Braided Hask g) => Braided Hask (Comp p f g) | (Bifunctor p c d Hask, QFunctor f b c, QFunctor g b d) => QFunctor (Comp p f g) b Hask | (Bifunctor p c d Hask, PFunctor f a c, PFunctor g a d) => PFunctor (Comp p f g) a Hask | (Bifunctor p c d Hask, Bifunctor f a b c, Bifunctor g a b d) => Bifunctor (Comp p f g) a b Hask | (Bifunctor p Hask Hask Hask, Bifunctor f Hask Hask Hask, Bifunctor g Hask Hask Hask) => Functor (Comp p f g a) |
|
|
|
type :++: = Comp Either |
|
type :**: = Comp (,) |
|
liftComp :: Bifunctor p r s Hask => r (f a b) (f c d) -> s (g a b) (g c d) -> Comp p f g a b -> Comp p f g c d |
|
Produced by Haddock version 2.1.0 |