kindly-functors-0.1.0.0: A category polymorphic `Functor` typeclass
Safe HaskellSafe-Inferred
LanguageHaskell2010

Kindly.Class

Synopsis

Documentation

class (Category (Dom f), Category (Cod f)) => CategoricalFunctor (f :: from -> to) where Source #

A functor f between categories from and to sends objects in Dom f to objects in Cod f and morphisms in Dom f to morphisms in Dom f.

Laws

Identity
map id == id
Composition
map (f . g) == map f . map g

Associated Types

type Dom f :: from -> from -> Type Source #

Dom f is the source category for the functor f.

type Cod f :: to -> to -> Type Source #

Cod f is the target category for the functor f.

Methods

map :: Dom f a b -> Cod f (f a) (f b) Source #

Lift a function of type Dom f a b into a function of type Cod f (f a) (f b).

Instances

Instances details
CategoricalFunctor ZipList Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom ZipList :: from -> from -> Type Source #

type Cod ZipList :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom ZipList a b -> Cod ZipList (ZipList a) (ZipList b) Source #

CategoricalFunctor Handler Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom Handler :: from -> from -> Type Source #

type Cod Handler :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom Handler a b -> Cod Handler (Handler a) (Handler b) Source #

CategoricalFunctor Complex Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom Complex :: from -> from -> Type Source #

type Cod Complex :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom Complex a b -> Cod Complex (Complex a) (Complex b) Source #

CategoricalFunctor Predicate Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom Predicate :: from -> from -> Type Source #

type Cod Predicate :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom Predicate a b -> Cod Predicate (Predicate a) (Predicate b) Source #

CategoricalFunctor Identity Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom Identity :: from -> from -> Type Source #

type Cod Identity :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom Identity a b -> Cod Identity (Identity a) (Identity b) Source #

CategoricalFunctor First Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom First :: from -> from -> Type Source #

type Cod First :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom First a b -> Cod First (First a) (First b) Source #

CategoricalFunctor Last Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom Last :: from -> from -> Type Source #

type Cod Last :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom Last a b -> Cod Last (Last a) (Last b) Source #

CategoricalFunctor Down Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom Down :: from -> from -> Type Source #

type Cod Down :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom Down a b -> Cod Down (Down a) (Down b) Source #

CategoricalFunctor First Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom First :: from -> from -> Type Source #

type Cod First :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom First a b -> Cod First (First a) (First b) Source #

CategoricalFunctor Last Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom Last :: from -> from -> Type Source #

type Cod Last :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom Last a b -> Cod Last (Last a) (Last b) Source #

CategoricalFunctor Max Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom Max :: from -> from -> Type Source #

type Cod Max :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom Max a b -> Cod Max (Max a) (Max b) Source #

CategoricalFunctor Min Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom Min :: from -> from -> Type Source #

type Cod Min :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom Min a b -> Cod Min (Min a) (Min b) Source #

CategoricalFunctor Dual Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom Dual :: from -> from -> Type Source #

type Cod Dual :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom Dual a b -> Cod Dual (Dual a) (Dual b) Source #

CategoricalFunctor Endo Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom Endo :: from -> from -> Type Source #

type Cod Endo :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom Endo a b -> Cod Endo (Endo a) (Endo b) Source #

CategoricalFunctor Product Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom Product :: from -> from -> Type Source #

type Cod Product :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom Product a b -> Cod Product (Product a) (Product b) Source #

CategoricalFunctor Sum Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom Sum :: from -> from -> Type Source #

type Cod Sum :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom Sum a b -> Cod Sum (Sum a) (Sum b) Source #

CategoricalFunctor NonEmpty Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom NonEmpty :: from -> from -> Type Source #

type Cod NonEmpty :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom NonEmpty a b -> Cod NonEmpty (NonEmpty a) (NonEmpty b) Source #

CategoricalFunctor STM Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom STM :: from -> from -> Type Source #

type Cod STM :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom STM a b -> Cod STM (STM a) (STM b) Source #

CategoricalFunctor Par1 Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom Par1 :: from -> from -> Type Source #

type Cod Par1 :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom Par1 a b -> Cod Par1 (Par1 a) (Par1 b) Source #

CategoricalFunctor ArgDescr Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom ArgDescr :: from -> from -> Type Source #

type Cod ArgDescr :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom ArgDescr a b -> Cod ArgDescr (ArgDescr a) (ArgDescr b) Source #

CategoricalFunctor ArgOrder Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom ArgOrder :: from -> from -> Type Source #

type Cod ArgOrder :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom ArgOrder a b -> Cod ArgOrder (ArgOrder a) (ArgOrder b) Source #

CategoricalFunctor OptDescr Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom OptDescr :: from -> from -> Type Source #

type Cod OptDescr :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom OptDescr a b -> Cod OptDescr (OptDescr a) (OptDescr b) Source #

CategoricalFunctor ReadP Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom ReadP :: from -> from -> Type Source #

type Cod ReadP :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom ReadP a b -> Cod ReadP (ReadP a) (ReadP b) Source #

CategoricalFunctor ReadPrec Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom ReadPrec :: from -> from -> Type Source #

type Cod ReadPrec :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom ReadPrec a b -> Cod ReadPrec (ReadPrec a) (ReadPrec b) Source #

CategoricalFunctor IO Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom IO :: from -> from -> Type Source #

type Cod IO :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom IO a b -> Cod IO (IO a) (IO b) Source #

CategoricalFunctor Maybe Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom Maybe :: from -> from -> Type Source #

type Cod Maybe :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom Maybe a b -> Cod Maybe (Maybe a) (Maybe b) Source #

CategoricalFunctor Solo Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom Solo :: from -> from -> Type Source #

type Cod Solo :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom Solo a b -> Cod Solo (Solo a) (Solo b) Source #

CategoricalFunctor List Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom List :: from -> from -> Type Source #

type Cod List :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom List a b -> Cod List [a] [b] Source #

Monad m => CategoricalFunctor (WrappedMonad m :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom (WrappedMonad m) :: from -> from -> Type Source #

type Cod (WrappedMonad m) :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom (WrappedMonad m) a b -> Cod (WrappedMonad m) (WrappedMonad m a) (WrappedMonad m b) Source #

Arrow a => CategoricalFunctor (ArrowMonad a :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom (ArrowMonad a) :: from -> from -> Type Source #

type Cod (ArrowMonad a) :: to -> to -> Type Source #

Methods

map :: forall (a0 :: from) (b :: from). Dom (ArrowMonad a) a0 b -> Cod (ArrowMonad a) (ArrowMonad a a0) (ArrowMonad a b) Source #

CategoricalFunctor (ST s :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom (ST s) :: from -> from -> Type Source #

type Cod (ST s) :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom (ST s) a b -> Cod (ST s) (ST s a) (ST s b) Source #

CategoricalFunctor (Either a :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom (Either a) :: from -> from -> Type Source #

type Cod (Either a) :: to -> to -> Type Source #

Methods

map :: forall (a0 :: from) (b :: from). Dom (Either a) a0 b -> Cod (Either a) (Either a a0) (Either a b) Source #

CategoricalFunctor (Proxy :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom Proxy :: from -> from -> Type Source #

type Cod Proxy :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom Proxy a b -> Cod Proxy (Proxy a) (Proxy b) Source #

CategoricalFunctor (Arg a :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom (Arg a) :: from -> from -> Type Source #

type Cod (Arg a) :: to -> to -> Type Source #

Methods

map :: forall (a0 :: from) (b :: from). Dom (Arg a) a0 b -> Cod (Arg a) (Arg a a0) (Arg a b) Source #

CategoricalFunctor (Array i :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom (Array i) :: from -> from -> Type Source #

type Cod (Array i) :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom (Array i) a b -> Cod (Array i) (Array i a) (Array i b) Source #

CategoricalFunctor (U1 :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom U1 :: from -> from -> Type Source #

type Cod U1 :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom U1 a b -> Cod U1 (U1 a) (U1 b) Source #

CategoricalFunctor (V1 :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom V1 :: from -> from -> Type Source #

type Cod V1 :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom V1 a b -> Cod V1 (V1 a) (V1 b) Source #

CategoricalFunctor (ST s :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom (ST s) :: from -> from -> Type Source #

type Cod (ST s) :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom (ST s) a b -> Cod (ST s) (ST s a) (ST s b) Source #

CategoricalFunctor (These a :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom (These a) :: from -> from -> Type Source #

type Cod (These a) :: to -> to -> Type Source #

Methods

map :: forall (a0 :: from) (b :: from). Dom (These a) a0 b -> Cod (These a) (These a a0) (These a b) Source #

CategoricalFunctor ((,) a :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom ((,) a) :: from -> from -> Type Source #

type Cod ((,) a) :: to -> to -> Type Source #

Methods

map :: forall (a0 :: from) (b :: from). Dom ((,) a) a0 b -> Cod ((,) a) (a, a0) (a, b) Source #

Arrow a => CategoricalFunctor (WrappedArrow a b :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom (WrappedArrow a b) :: from -> from -> Type Source #

type Cod (WrappedArrow a b) :: to -> to -> Type Source #

Methods

map :: forall (a0 :: from) (b0 :: from). Dom (WrappedArrow a b) a0 b0 -> Cod (WrappedArrow a b) (WrappedArrow a b a0) (WrappedArrow a b b0) Source #

FunctorOf (->) (->) m => CategoricalFunctor (Kleisli m a :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom (Kleisli m a) :: from -> from -> Type Source #

type Cod (Kleisli m a) :: to -> to -> Type Source #

Methods

map :: forall (a0 :: from) (b :: from). Dom (Kleisli m a) a0 b -> Cod (Kleisli m a) (Kleisli m a a0) (Kleisli m a b) Source #

CategoricalFunctor (Const m :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom (Const m) :: from -> from -> Type Source #

type Cod (Const m) :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom (Const m) a b -> Cod (Const m) (Const m a) (Const m b) Source #

FunctorOf (->) (->) f => CategoricalFunctor (Ap f :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom (Ap f) :: from -> from -> Type Source #

type Cod (Ap f) :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom (Ap f) a b -> Cod (Ap f) (Ap f a) (Ap f b) Source #

FunctorOf (->) (->) f => CategoricalFunctor (Alt f :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom (Alt f) :: from -> from -> Type Source #

type Cod (Alt f) :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom (Alt f) a b -> Cod (Alt f) (Alt f a) (Alt f b) Source #

FunctorOf (->) (->) f => CategoricalFunctor (Rec1 f :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom (Rec1 f) :: from -> from -> Type Source #

type Cod (Rec1 f) :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom (Rec1 f) a b -> Cod (Rec1 f) (Rec1 f a) (Rec1 f b) Source #

CategoricalFunctor (URec (Ptr ()) :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom (URec (Ptr ())) :: from -> from -> Type Source #

type Cod (URec (Ptr ())) :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom (URec (Ptr ())) a b -> Cod (URec (Ptr ())) (URec (Ptr ()) a) (URec (Ptr ()) b) Source #

CategoricalFunctor (URec Char :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom (URec Char) :: from -> from -> Type Source #

type Cod (URec Char) :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom (URec Char) a b -> Cod (URec Char) (URec Char a) (URec Char b) Source #

CategoricalFunctor (URec Double :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom (URec Double) :: from -> from -> Type Source #

type Cod (URec Double) :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom (URec Double) a b -> Cod (URec Double) (URec Double a) (URec Double b) Source #

CategoricalFunctor (URec Float :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom (URec Float) :: from -> from -> Type Source #

type Cod (URec Float) :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom (URec Float) a b -> Cod (URec Float) (URec Float a) (URec Float b) Source #

CategoricalFunctor (URec Int :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom (URec Int) :: from -> from -> Type Source #

type Cod (URec Int) :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom (URec Int) a b -> Cod (URec Int) (URec Int a) (URec Int b) Source #

CategoricalFunctor (URec Word :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom (URec Word) :: from -> from -> Type Source #

type Cod (URec Word) :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom (URec Word) a b -> Cod (URec Word) (URec Word a) (URec Word b) Source #

CategoricalFunctor ((,,) a b :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom ((,,) a b) :: from -> from -> Type Source #

type Cod ((,,) a b) :: to -> to -> Type Source #

Methods

map :: forall (a0 :: from) (b0 :: from). Dom ((,,) a b) a0 b0 -> Cod ((,,) a b) (a, b, a0) (a, b, b0) Source #

(FunctorOf (->) (->) f, FunctorOf (->) (->) g) => CategoricalFunctor (Product f g :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom (Product f g) :: from -> from -> Type Source #

type Cod (Product f g) :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom (Product f g) a b -> Cod (Product f g) (Product f g a) (Product f g b) Source #

(FunctorOf (->) (->) f, FunctorOf (->) (->) g) => CategoricalFunctor (Sum f g :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom (Sum f g) :: from -> from -> Type Source #

type Cod (Sum f g) :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom (Sum f g) a b -> Cod (Sum f g) (Sum f g a) (Sum f g b) Source #

(FunctorOf (->) (->) f, FunctorOf (->) (->) g) => CategoricalFunctor (f :*: g :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom (f :*: g) :: from -> from -> Type Source #

type Cod (f :*: g) :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom (f :*: g) a b -> Cod (f :*: g) ((f :*: g) a) ((f :*: g) b) Source #

(FunctorOf (->) (->) f, FunctorOf (->) (->) g) => CategoricalFunctor (f :+: g :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom (f :+: g) :: from -> from -> Type Source #

type Cod (f :+: g) :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom (f :+: g) a b -> Cod (f :+: g) ((f :+: g) a) ((f :+: g) b) Source #

CategoricalFunctor (K1 i c :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom (K1 i c) :: from -> from -> Type Source #

type Cod (K1 i c) :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom (K1 i c) a b -> Cod (K1 i c) (K1 i c a) (K1 i c b) Source #

CategoricalFunctor ((,,,) a b c :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom ((,,,) a b c) :: from -> from -> Type Source #

type Cod ((,,,) a b c) :: to -> to -> Type Source #

Methods

map :: forall (a0 :: from) (b0 :: from). Dom ((,,,) a b c) a0 b0 -> Cod ((,,,) a b c) (a, b, c, a0) (a, b, c, b0) Source #

CategoricalFunctor ((->) r :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom ((->) r) :: from -> from -> Type Source #

type Cod ((->) r) :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom ((->) r) a b -> Cod ((->) r) (r -> a) (r -> b) Source #

(FunctorOf (->) (->) f, FunctorOf (->) (->) g) => CategoricalFunctor (Compose f g :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom (Compose f g) :: from -> from -> Type Source #

type Cod (Compose f g) :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom (Compose f g) a b -> Cod (Compose f g) (Compose f g a) (Compose f g b) Source #

(FunctorOf (->) (->) f, FunctorOf (->) (->) g) => CategoricalFunctor (f :.: g :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom (f :.: g) :: from -> from -> Type Source #

type Cod (f :.: g) :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom (f :.: g) a b -> Cod (f :.: g) ((f :.: g) a) ((f :.: g) b) Source #

FunctorOf (->) (->) f => CategoricalFunctor (M1 i c f :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom (M1 i c f) :: from -> from -> Type Source #

type Cod (M1 i c f) :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom (M1 i c f) a b -> Cod (M1 i c f) (M1 i c f a) (M1 i c f b) Source #

CategoricalFunctor ((,,,,) a b c d :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom ((,,,,) a b c d) :: from -> from -> Type Source #

type Cod ((,,,,) a b c d) :: to -> to -> Type Source #

Methods

map :: forall (a0 :: from) (b0 :: from). Dom ((,,,,) a b c d) a0 b0 -> Cod ((,,,,) a b c d) (a, b, c, d, a0) (a, b, c, d, b0) Source #

CategoricalFunctor ((,,,,,) a b c d e :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom ((,,,,,) a b c d e) :: from -> from -> Type Source #

type Cod ((,,,,,) a b c d e) :: to -> to -> Type Source #

Methods

map :: forall (a0 :: from) (b0 :: from). Dom ((,,,,,) a b c d e) a0 b0 -> Cod ((,,,,,) a b c d e) (a, b, c, d, e, a0) (a, b, c, d, e, b0) Source #

CategoricalFunctor ((,,,,,,) a b c d e f :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Associated Types

type Dom ((,,,,,,) a b c d e f) :: from -> from -> Type Source #

type Cod ((,,,,,,) a b c d e f) :: to -> to -> Type Source #

Methods

map :: forall (a0 :: from) (b0 :: from). Dom ((,,,,,,) a b c d e f) a0 b0 -> Cod ((,,,,,,) a b c d e f) (a, b, c, d, e, f, a0) (a, b, c, d, e, f, b0) Source #

CategoricalFunctor (,,) Source # 
Instance details

Defined in Kindly.Trifunctor

Associated Types

type Dom (,,) :: from -> from -> Type Source #

type Cod (,,) :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom (,,) a b -> Cod (,,) ((,,) a) ((,,) b) Source #

CategoricalFunctor Either Source # 
Instance details

Defined in Kindly.Bifunctor

Associated Types

type Dom Either :: from -> from -> Type Source #

type Cod Either :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom Either a b -> Cod Either (Either a) (Either b) Source #

CategoricalFunctor Arg Source # 
Instance details

Defined in Kindly.Bifunctor

Associated Types

type Dom Arg :: from -> from -> Type Source #

type Cod Arg :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom Arg a b -> Cod Arg (Arg a) (Arg b) Source #

CategoricalFunctor These Source # 
Instance details

Defined in Kindly.Bifunctor

Associated Types

type Dom These :: from -> from -> Type Source #

type Cod These :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom These a b -> Cod These (These a) (These b) Source #

CategoricalFunctor (,) Source # 
Instance details

Defined in Kindly.Bifunctor

Associated Types

type Dom (,) :: from -> from -> Type Source #

type Cod (,) :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom (,) a b -> Cod (,) ((,) a) ((,) b) Source #

CategoricalFunctor ((,,,) x :: Type -> Type -> Type -> Type) Source # 
Instance details

Defined in Kindly.Trifunctor

Associated Types

type Dom ((,,,) x) :: from -> from -> Type Source #

type Cod ((,,,) x) :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom ((,,,) x) a b -> Cod ((,,,) x) ((,,,) x a) ((,,,) x b) Source #

CategoricalFunctor (Const :: Type -> Type -> Type) Source # 
Instance details

Defined in Kindly.Bifunctor

Associated Types

type Dom Const :: from -> from -> Type Source #

type Cod Const :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom Const a b -> Cod Const (Const a) (Const b) Source #

CategoricalFunctor ((,,) a :: Type -> Type -> Type) Source # 
Instance details

Defined in Kindly.Bifunctor

Associated Types

type Dom ((,,) a) :: from -> from -> Type Source #

type Cod ((,,) a) :: to -> to -> Type Source #

Methods

map :: forall (a0 :: from) (b :: from). Dom ((,,) a) a0 b -> Cod ((,,) a) ((,,) a a0) ((,,) a b) Source #

CategoricalFunctor ((,,,,) x x' :: Type -> Type -> Type -> Type) Source # 
Instance details

Defined in Kindly.Trifunctor

Associated Types

type Dom ((,,,,) x x') :: from -> from -> Type Source #

type Cod ((,,,,) x x') :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom ((,,,,) x x') a b -> Cod ((,,,,) x x') ((,,,,) x x' a) ((,,,,) x x' b) Source #

CategoricalFunctor (K1 i :: Type -> Type -> Type) Source # 
Instance details

Defined in Kindly.Bifunctor

Associated Types

type Dom (K1 i) :: from -> from -> Type Source #

type Cod (K1 i) :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom (K1 i) a b -> Cod (K1 i) (K1 i a) (K1 i b) Source #

CategoricalFunctor ((,,,) a b :: Type -> Type -> Type) Source # 
Instance details

Defined in Kindly.Bifunctor

Associated Types

type Dom ((,,,) a b) :: from -> from -> Type Source #

type Cod ((,,,) a b) :: to -> to -> Type Source #

Methods

map :: forall (a0 :: from) (b0 :: from). Dom ((,,,) a b) a0 b0 -> Cod ((,,,) a b) ((,,,) a b a0) ((,,,) a b b0) Source #

CategoricalFunctor (->) Source # 
Instance details

Defined in Kindly.Bifunctor

Associated Types

type Dom (->) :: from -> from -> Type Source #

type Cod (->) :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom (->) a b -> Cod (->) ((->) a) ((->) b) Source #

CategoricalFunctor ((,,,,,) x x' x'' :: Type -> Type -> Type -> Type) Source # 
Instance details

Defined in Kindly.Trifunctor

Associated Types

type Dom ((,,,,,) x x' x'') :: from -> from -> Type Source #

type Cod ((,,,,,) x x' x'') :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom ((,,,,,) x x' x'') a b -> Cod ((,,,,,) x x' x'') ((,,,,,) x x' x'' a) ((,,,,,) x x' x'' b) Source #

CategoricalFunctor ((,,,,) a b c :: Type -> Type -> Type) Source # 
Instance details

Defined in Kindly.Bifunctor

Associated Types

type Dom ((,,,,) a b c) :: from -> from -> Type Source #

type Cod ((,,,,) a b c) :: to -> to -> Type Source #

Methods

map :: forall (a0 :: from) (b0 :: from). Dom ((,,,,) a b c) a0 b0 -> Cod ((,,,,) a b c) ((,,,,) a b c a0) ((,,,,) a b c b0) Source #

CategoricalFunctor ((,,,,,,) x x' x'' x''' :: Type -> Type -> Type -> Type) Source # 
Instance details

Defined in Kindly.Trifunctor

Associated Types

type Dom ((,,,,,,) x x' x'' x''') :: from -> from -> Type Source #

type Cod ((,,,,,,) x x' x'' x''') :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom ((,,,,,,) x x' x'' x''') a b -> Cod ((,,,,,,) x x' x'' x''') ((,,,,,,) x x' x'' x''' a) ((,,,,,,) x x' x'' x''' b) Source #

CategoricalFunctor ((,,,,,) a b c d :: Type -> Type -> Type) Source # 
Instance details

Defined in Kindly.Bifunctor

Associated Types

type Dom ((,,,,,) a b c d) :: from -> from -> Type Source #

type Cod ((,,,,,) a b c d) :: to -> to -> Type Source #

Methods

map :: forall (a0 :: from) (b0 :: from). Dom ((,,,,,) a b c d) a0 b0 -> Cod ((,,,,,) a b c d) ((,,,,,) a b c d a0) ((,,,,,) a b c d b0) Source #

CategoricalFunctor ((,,,,,,) a b c d e :: Type -> Type -> Type) Source # 
Instance details

Defined in Kindly.Bifunctor

Associated Types

type Dom ((,,,,,,) a b c d e) :: from -> from -> Type Source #

type Cod ((,,,,,,) a b c d e) :: to -> to -> Type Source #

Methods

map :: forall (a0 :: from) (b0 :: from). Dom ((,,,,,,) a b c d e) a0 b0 -> Cod ((,,,,,,) a b c d e) ((,,,,,,) a b c d e a0) ((,,,,,,) a b c d e b0) Source #

CategoricalFunctor MyHKD2 Source # 
Instance details

Defined in Kindly.Rank2

Associated Types

type Dom MyHKD2 :: from -> from -> Type Source #

type Cod MyHKD2 :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom MyHKD2 a b -> Cod MyHKD2 (MyHKD2 a) (MyHKD2 b) Source #

CategoricalFunctor MyHKD Source # 
Instance details

Defined in Kindly.Rank2

Associated Types

type Dom MyHKD :: from -> from -> Type Source #

type Cod MyHKD :: to -> to -> Type Source #

Methods

map :: forall (a :: from) (b :: from). Dom MyHKD a b -> Cod MyHKD (MyHKD a) (MyHKD b) Source #

type Cat i = i -> i -> Type Source #

newtype Nat source target f g where Source #

A Natural Transformation betweeen two functors f and g.

Constructors

Nat :: (forall x. target (f x) (g x)) -> Nat source target f g 

Instances

Instances details
(Semigroupoid c1, Semigroupoid c2, Category c1, Category c2) => Category (c1 ~> c2 :: (s -> t) -> (s -> t) -> Type) Source # 
Instance details

Defined in Kindly.Class

Methods

id :: forall (a :: k). (c1 ~> c2) a a #

(.) :: forall (b :: k) (c :: k) (a :: k). (c1 ~> c2) b c -> (c1 ~> c2) a b -> (c1 ~> c2) a c #

(Semigroupoid c1, Semigroupoid c2) => Semigroupoid (Nat c1 c2 :: (s -> t) -> (s -> t) -> Type) Source # 
Instance details

Defined in Kindly.Class

Methods

o :: forall (j :: k) (k1 :: k) (i :: k). Nat c1 c2 j k1 -> Nat c1 c2 i j -> Nat c1 c2 i k1 #

runNat :: Nat source target f g -> forall x. target (f x) (g x) Source #

type (~>) c1 c2 = Nat c1 c2 infixr 0 Source #

class (CategoricalFunctor f, dom ~ Dom f, cod ~ Cod f) => FunctorOf dom cod f Source #

Instances

Instances details
(CategoricalFunctor f, dom ~ Dom f, cod ~ Cod f) => FunctorOf (dom :: from -> from -> Type) (cod :: to -> to -> Type) (f :: from -> to) Source # 
Instance details

Defined in Kindly.Class

class FunctorOf cat1 (->) p => MapArg1 cat1 p | p -> cat1 where Source #

Minimal complete definition

Nothing

Methods

map1 :: (a `cat1` b) -> p a -> p b Source #

Instances

Instances details
MapArg1 Op Predicate Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a :: from) (b :: from). Op a b -> Predicate a -> Predicate b Source #

MapArg1 (<->) Endo Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a :: from) (b :: from). (a <-> b) -> Endo a -> Endo b Source #

MapArg1 (->) ZipList Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a :: from) (b :: from). (a -> b) -> ZipList a -> ZipList b Source #

MapArg1 (->) Handler Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a :: from) (b :: from). (a -> b) -> Handler a -> Handler b Source #

MapArg1 (->) Complex Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a :: from) (b :: from). (a -> b) -> Complex a -> Complex b Source #

MapArg1 (->) Identity Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a :: from) (b :: from). (a -> b) -> Identity a -> Identity b Source #

MapArg1 (->) First Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a :: from) (b :: from). (a -> b) -> First a -> First b Source #

MapArg1 (->) Last Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a :: from) (b :: from). (a -> b) -> Last a -> Last b Source #

MapArg1 (->) Down Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a :: from) (b :: from). (a -> b) -> Down a -> Down b Source #

MapArg1 (->) First Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a :: from) (b :: from). (a -> b) -> First a -> First b Source #

MapArg1 (->) Last Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a :: from) (b :: from). (a -> b) -> Last a -> Last b Source #

MapArg1 (->) Max Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a :: from) (b :: from). (a -> b) -> Max a -> Max b Source #

MapArg1 (->) Min Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a :: from) (b :: from). (a -> b) -> Min a -> Min b Source #

MapArg1 (->) Dual Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a :: from) (b :: from). (a -> b) -> Dual a -> Dual b Source #

MapArg1 (->) Product Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a :: from) (b :: from). (a -> b) -> Product a -> Product b Source #

MapArg1 (->) Sum Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a :: from) (b :: from). (a -> b) -> Sum a -> Sum b Source #

MapArg1 (->) NonEmpty Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a :: from) (b :: from). (a -> b) -> NonEmpty a -> NonEmpty b Source #

MapArg1 (->) STM Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a :: from) (b :: from). (a -> b) -> STM a -> STM b Source #

MapArg1 (->) Par1 Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a :: from) (b :: from). (a -> b) -> Par1 a -> Par1 b Source #

MapArg1 (->) ArgDescr Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a :: from) (b :: from). (a -> b) -> ArgDescr a -> ArgDescr b Source #

MapArg1 (->) ArgOrder Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a :: from) (b :: from). (a -> b) -> ArgOrder a -> ArgOrder b Source #

MapArg1 (->) OptDescr Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a :: from) (b :: from). (a -> b) -> OptDescr a -> OptDescr b Source #

MapArg1 (->) ReadP Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a :: from) (b :: from). (a -> b) -> ReadP a -> ReadP b Source #

MapArg1 (->) ReadPrec Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a :: from) (b :: from). (a -> b) -> ReadPrec a -> ReadPrec b Source #

MapArg1 (->) IO Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a :: from) (b :: from). (a -> b) -> IO a -> IO b Source #

MapArg1 (->) Maybe Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a :: from) (b :: from). (a -> b) -> Maybe a -> Maybe b Source #

MapArg1 (->) Solo Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a :: from) (b :: from). (a -> b) -> Solo a -> Solo b Source #

MapArg1 (->) List Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a :: from) (b :: from). (a -> b) -> [a] -> [b] Source #

Monad m => MapArg1 (->) (WrappedMonad m :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a :: from) (b :: from). (a -> b) -> WrappedMonad m a -> WrappedMonad m b Source #

Arrow a => MapArg1 (->) (ArrowMonad a :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a0 :: from) (b :: from). (a0 -> b) -> ArrowMonad a a0 -> ArrowMonad a b Source #

MapArg1 (->) (ST s :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a :: from) (b :: from). (a -> b) -> ST s a -> ST s b Source #

MapArg1 (->) (Either a :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a0 :: from) (b :: from). (a0 -> b) -> Either a a0 -> Either a b Source #

MapArg1 (->) (Proxy :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a :: from) (b :: from). (a -> b) -> Proxy a -> Proxy b Source #

MapArg1 (->) (Arg a :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a0 :: from) (b :: from). (a0 -> b) -> Arg a a0 -> Arg a b Source #

MapArg1 (->) (Array i :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a :: from) (b :: from). (a -> b) -> Array i a -> Array i b Source #

MapArg1 (->) (U1 :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a :: from) (b :: from). (a -> b) -> U1 a -> U1 b Source #

MapArg1 (->) (V1 :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a :: from) (b :: from). (a -> b) -> V1 a -> V1 b Source #

MapArg1 (->) (ST s :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a :: from) (b :: from). (a -> b) -> ST s a -> ST s b Source #

MapArg1 (->) ((,) a :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a0 :: from) (b :: from). (a0 -> b) -> (a, a0) -> (a, b) Source #

Arrow a => MapArg1 (->) (WrappedArrow a b :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a0 :: from) (b0 :: from). (a0 -> b0) -> WrappedArrow a b a0 -> WrappedArrow a b b0 Source #

FunctorOf (->) (->) m => MapArg1 (->) (Kleisli m a :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a0 :: from) (b :: from). (a0 -> b) -> Kleisli m a a0 -> Kleisli m a b Source #

MapArg1 (->) (Const m :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a :: from) (b :: from). (a -> b) -> Const m a -> Const m b Source #

FunctorOf (->) (->) f => MapArg1 (->) (Ap f :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a :: from) (b :: from). (a -> b) -> Ap f a -> Ap f b Source #

FunctorOf (->) (->) f => MapArg1 (->) (Alt f :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a :: from) (b :: from). (a -> b) -> Alt f a -> Alt f b Source #

FunctorOf (->) (->) f => MapArg1 (->) (Rec1 f :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a :: from) (b :: from). (a -> b) -> Rec1 f a -> Rec1 f b Source #

MapArg1 (->) (URec (Ptr ()) :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a :: from) (b :: from). (a -> b) -> URec (Ptr ()) a -> URec (Ptr ()) b Source #

MapArg1 (->) (URec Char :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a :: from) (b :: from). (a -> b) -> URec Char a -> URec Char b Source #

MapArg1 (->) (URec Double :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a :: from) (b :: from). (a -> b) -> URec Double a -> URec Double b Source #

MapArg1 (->) (URec Float :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a :: from) (b :: from). (a -> b) -> URec Float a -> URec Float b Source #

MapArg1 (->) (URec Int :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a :: from) (b :: from). (a -> b) -> URec Int a -> URec Int b Source #

MapArg1 (->) (URec Word :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a :: from) (b :: from). (a -> b) -> URec Word a -> URec Word b Source #

MapArg1 (->) ((,,) a b :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a0 :: from) (b0 :: from). (a0 -> b0) -> (a, b, a0) -> (a, b, b0) Source #

(FunctorOf (->) (->) f, FunctorOf (->) (->) g) => MapArg1 (->) (Product f g :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a :: from) (b :: from). (a -> b) -> Product f g a -> Product f g b Source #

(FunctorOf (->) (->) f, FunctorOf (->) (->) g) => MapArg1 (->) (Sum f g :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a :: from) (b :: from). (a -> b) -> Sum f g a -> Sum f g b Source #

(FunctorOf (->) (->) f, FunctorOf (->) (->) g) => MapArg1 (->) (f :*: g :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a :: from) (b :: from). (a -> b) -> (f :*: g) a -> (f :*: g) b Source #

(FunctorOf (->) (->) f, FunctorOf (->) (->) g) => MapArg1 (->) (f :+: g :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a :: from) (b :: from). (a -> b) -> (f :+: g) a -> (f :+: g) b Source #

MapArg1 (->) (K1 i c :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a :: from) (b :: from). (a -> b) -> K1 i c a -> K1 i c b Source #

MapArg1 (->) ((,,,) a b c :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a0 :: from) (b0 :: from). (a0 -> b0) -> (a, b, c, a0) -> (a, b, c, b0) Source #

MapArg1 (->) ((->) r :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a :: from) (b :: from). (a -> b) -> (r -> a) -> r -> b Source #

(FunctorOf (->) (->) f, FunctorOf (->) (->) g) => MapArg1 (->) (Compose f g :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a :: from) (b :: from). (a -> b) -> Compose f g a -> Compose f g b Source #

(FunctorOf (->) (->) f, FunctorOf (->) (->) g) => MapArg1 (->) (f :.: g :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a :: from) (b :: from). (a -> b) -> (f :.: g) a -> (f :.: g) b Source #

FunctorOf (->) (->) f => MapArg1 (->) (M1 i c f :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a :: from) (b :: from). (a -> b) -> M1 i c f a -> M1 i c f b Source #

MapArg1 (->) ((,,,,) a b c d :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a0 :: from) (b0 :: from). (a0 -> b0) -> (a, b, c, d, a0) -> (a, b, c, d, b0) Source #

MapArg1 (->) ((,,,,,) a b c d e :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a0 :: from) (b0 :: from). (a0 -> b0) -> (a, b, c, d, e, a0) -> (a, b, c, d, e, b0) Source #

MapArg1 (->) ((,,,,,,) a b c d e f :: Type -> Type) Source # 
Instance details

Defined in Kindly.Functor

Methods

map1 :: forall (a0 :: from) (b0 :: from). (a0 -> b0) -> (a, b, c, d, e, f, a0) -> (a, b, c, d, e, f, b0) Source #

class (FunctorOf cat1 (cat2 ~> (->)) p, forall x. MapArg1 cat2 (p x)) => MapArg2 cat1 cat2 p | p -> cat2 cat2 where Source #

Minimal complete definition

Nothing

Methods

map2 :: (a `cat1` b) -> forall x. p a x -> p b x Source #

Instances

Instances details
MapArg2 Op (->) (->) Source # 
Instance details

Defined in Kindly.Bifunctor

Methods

map2 :: forall (a :: from) (b :: from). Op a b -> forall (x :: s). (a -> x) -> b -> x Source #

MapArg2 (->) (->) Either Source # 
Instance details

Defined in Kindly.Bifunctor

Methods

map2 :: forall (a :: from) (b :: from). (a -> b) -> forall (x :: s). Either a x -> Either b x Source #

MapArg2 (->) (->) Arg Source # 
Instance details

Defined in Kindly.Bifunctor

Methods

map2 :: forall (a :: from) (b :: from). (a -> b) -> forall (x :: s). Arg a x -> Arg b x Source #

MapArg2 (->) (->) (,) Source # 
Instance details

Defined in Kindly.Bifunctor

Methods

map2 :: forall (a :: from) (b :: from). (a -> b) -> forall (x :: s). (a, x) -> (b, x) Source #

MapArg2 (->) (->) (Const :: Type -> Type -> Type) Source # 
Instance details

Defined in Kindly.Bifunctor

Methods

map2 :: forall (a :: from) (b :: from). (a -> b) -> forall (x :: s). Const a x -> Const b x Source #

MapArg2 (->) (->) ((,,) a :: Type -> Type -> Type) Source # 
Instance details

Defined in Kindly.Bifunctor

Methods

map2 :: forall (a0 :: from) (b :: from). (a0 -> b) -> forall (x :: s). (a, a0, x) -> (a, b, x) Source #

MapArg2 (->) (->) (K1 i :: Type -> Type -> Type) Source # 
Instance details

Defined in Kindly.Bifunctor

Methods

map2 :: forall (a :: from) (b :: from). (a -> b) -> forall (x :: s). K1 i a x -> K1 i b x Source #

MapArg2 (->) (->) ((,,,) a b :: Type -> Type -> Type) Source # 
Instance details

Defined in Kindly.Bifunctor

Methods

map2 :: forall (a0 :: from) (b0 :: from). (a0 -> b0) -> forall (x :: s). (a, b, a0, x) -> (a, b, b0, x) Source #

MapArg2 (->) (->) ((,,,,) a b c :: Type -> Type -> Type) Source # 
Instance details

Defined in Kindly.Bifunctor

Methods

map2 :: forall (a0 :: from) (b0 :: from). (a0 -> b0) -> forall (x :: s). (a, b, c, a0, x) -> (a, b, c, b0, x) Source #

MapArg2 (->) (->) ((,,,,,) a b c d :: Type -> Type -> Type) Source # 
Instance details

Defined in Kindly.Bifunctor

Methods

map2 :: forall (a0 :: from) (b0 :: from). (a0 -> b0) -> forall (x :: s). (a, b, c, d, a0, x) -> (a, b, c, d, b0, x) Source #

MapArg2 (->) (->) ((,,,,,,) a b c d e :: Type -> Type -> Type) Source # 
Instance details

Defined in Kindly.Bifunctor

Methods

map2 :: forall (a0 :: from) (b0 :: from). (a0 -> b0) -> forall (x :: s). (a, b, c, d, e, a0, x) -> (a, b, c, d, e, b0, x) Source #

class (FunctorOf cat1 (cat2 ~> (cat3 ~> (->))) p, forall x. MapArg2 cat2 cat3 (p x)) => MapArg3 cat1 cat2 cat3 p | p -> cat1 cat2 cat3 where Source #

Minimal complete definition

Nothing

Methods

map3 :: (a `cat1` b) -> forall x y. p a x y -> p b x y Source #

Instances

Instances details
MapArg3 (->) (->) (->) (,,) Source # 
Instance details

Defined in Kindly.Trifunctor

Methods

map3 :: forall (a :: from) (b :: from). (a -> b) -> forall (x :: s) (y :: s1). (a, x, y) -> (b, x, y) Source #

MapArg3 (->) (->) (->) ((,,,) x :: Type -> Type -> Type -> Type) Source # 
Instance details

Defined in Kindly.Trifunctor

Methods

map3 :: forall (a :: from) (b :: from). (a -> b) -> forall (x0 :: s) (y :: s1). (x, a, x0, y) -> (x, b, x0, y) Source #

MapArg3 (->) (->) (->) ((,,,,) x x' :: Type -> Type -> Type -> Type) Source # 
Instance details

Defined in Kindly.Trifunctor

Methods

map3 :: forall (a :: from) (b :: from). (a -> b) -> forall (x0 :: s) (y :: s1). (x, x', a, x0, y) -> (x, x', b, x0, y) Source #

MapArg3 (->) (->) (->) ((,,,,,) x x' x'' :: Type -> Type -> Type -> Type) Source # 
Instance details

Defined in Kindly.Trifunctor

Methods

map3 :: forall (a :: from) (b :: from). (a -> b) -> forall (x0 :: s) (y :: s1). (x, x', x'', a, x0, y) -> (x, x', x'', b, x0, y) Source #

MapArg3 (->) (->) (->) ((,,,,,,) x x' x'' x''' :: Type -> Type -> Type -> Type) Source # 
Instance details

Defined in Kindly.Trifunctor

Methods

map3 :: forall (a :: from) (b :: from). (a -> b) -> forall (x0 :: s) (y :: s1). (x, x', x'', x''', a, x0, y) -> (x, x', x'', x''', b, x0, y) Source #