category-0.2.0.1: Categorical types and classes

Safe HaskellNone
LanguageHaskell2010

Control.Category.Dual

Documentation

newtype Dual k a b Source #

Constructors

Dual 

Fields

Instances

Functor α β s t f => Functor α β (Iso α s) (Dual β β t) f Source # 

Methods

map :: f a b -> t (f a) (f b) Source #

Category k s => Functor k (k -> *) (Dual k k s) (NT * k * ((->) LiftedRep LiftedRep)) s Source # 

Methods

map :: s a b -> t (f a) (f b) Source #

Category k1 k2 => Category k1 (Dual k1 k1 k2) Source # 

Methods

id :: cat a a #

(.) :: cat b c -> cat a b -> cat a c #

Groupoid k1 k2 => Groupoid k1 (Dual k1 k1 k2) Source # 

Methods

invert :: k a b -> k b a Source #

Semigroup (k3 b a) => Semigroup (Dual k1 k2 k3 a b) Source # 

Methods

(<>) :: Dual k1 k2 k3 a b -> Dual k1 k2 k3 a b -> Dual k1 k2 k3 a b #

sconcat :: NonEmpty (Dual k1 k2 k3 a b) -> Dual k1 k2 k3 a b #

stimes :: Integral b => b -> Dual k1 k2 k3 a b -> Dual k1 k2 k3 a b #

Monoid (k3 b a) => Monoid (Dual k1 k2 k3 a b) Source # 

Methods

mempty :: Dual k1 k2 k3 a b #

mappend :: Dual k1 k2 k3 a b -> Dual k1 k2 k3 a b -> Dual k1 k2 k3 a b #

mconcat :: [Dual k1 k2 k3 a b] -> Dual k1 k2 k3 a b #

Group (k3 b a) => Group (Dual k1 k2 k3 a b) Source # 

Methods

invert :: Dual k1 k2 k3 a b -> Dual k1 k2 k3 a b #