freelude-0.3.2.0: A generalisation of the Category->Functor->Applicative->Monad hierarchy and more

Safe HaskellNone
LanguageHaskell2010

Freelude.Impl.ExoFunctor

Documentation

class ExoFunctor c1 c2 where Source #

Minimal complete definition

exomap

Methods

exomap :: (ExoCategoryC c1 a b, ExoCategoryC c2 a b) => ExoCategoryT c1 a b -> ExoCategoryT c2 a b Source #

Instances

ExoFunctor c c Source # 

Methods

exomap :: (ExoCategoryC c a b, ExoCategoryC c a b) => ExoCategoryT c a b -> ExoCategoryT c a b Source #

ExoFunctor c1 c2 => ExoFunctor c1 (Identity c2) Source # 

Methods

exomap :: (ExoCategoryC c1 a b, ExoCategoryC (Identity c2) a b) => ExoCategoryT c1 a b -> ExoCategoryT (Identity c2) a b Source #

ExoFunctor c1 c2 => ExoFunctor (Identity c1) c2 Source # 

Methods

exomap :: (ExoCategoryC (Identity c1) a b, ExoCategoryC c2 a b) => ExoCategoryT (Identity c1) a b -> ExoCategoryT c2 a b Source #

ExoFunctor c1 c2 => ExoFunctor (Identity c1) (Identity c2) Source # 

Methods

exomap :: (ExoCategoryC (Identity c1) a b, ExoCategoryC (Identity c2) a b) => ExoCategoryT (Identity c1) a b -> ExoCategoryT (Identity c2) a b Source #

(ExoFunctor p1 FunctionP, ExoFunctor p2 FunctionP) => ExoFunctor (p1, p2) FunctionP Source # 

Methods

exomap :: (ExoCategoryC (p1, p2) a b, ExoCategoryC FunctionP a b) => ExoCategoryT (p1, p2) a b -> ExoCategoryT FunctionP a b Source #

ExoFunctor p FunctionP => ExoFunctor (FunctorCategoryP (BasicFunctorP []) p) FunctionP Source # 
ExoFunctor p FunctionP => ExoFunctor (FunctorCategoryP (BasicFunctorP Maybe) p) FunctionP Source # 
(ExoFunctor p1 FunctionP, ExoFunctor p2 FunctionP, ExoFunctor p3 FunctionP) => ExoFunctor (p1, p2, p3) FunctionP Source # 

Methods

exomap :: (ExoCategoryC (p1, p2, p3) a b, ExoCategoryC FunctionP a b) => ExoCategoryT (p1, p2, p3) a b -> ExoCategoryT FunctionP a b Source #

(ExoFunctor p1 FunctionP, ExoFunctor p2 FunctionP, ExoFunctor p3 FunctionP, ExoFunctor p4 FunctionP) => ExoFunctor (p1, p2, p3, p4) FunctionP Source # 

Methods

exomap :: (ExoCategoryC (p1, p2, p3, p4) a b, ExoCategoryC FunctionP a b) => ExoCategoryT (p1, p2, p3, p4) a b -> ExoCategoryT FunctionP a b Source #

(ExoFunctor p1 FunctionP, ExoFunctor p2 FunctionP, ExoFunctor p3 FunctionP, ExoFunctor p4 FunctionP, ExoFunctor p5 FunctionP) => ExoFunctor (p1, p2, p3, p4, p5) FunctionP Source # 

Methods

exomap :: (ExoCategoryC (p1, p2, p3, p4, p5) a b, ExoCategoryC FunctionP a b) => ExoCategoryT (p1, p2, p3, p4, p5) a b -> ExoCategoryT FunctionP a b Source #

($) :: (ExoFunctor c1 c2, ExoCategoryC c1 a b, ExoCategoryC c2 a b) => ExoCategoryT c1 a b -> ExoCategoryT c2 a b infixr 0 Source #

($!) :: (ExoFunctor c1 FunctionP, ExoCategoryC c1 a b) => ExoCategoryT c1 a b -> a -> b infixr 0 Source #