categories-1.0.7: Categories

Copyright | 2008-2010 Edward Kmett
License | BSD
Maintainer | Edward Kmett <ekmett@gmail.com>
Stability | experimental
Portability | portable
Safe Haskell | Trustworthy
Language | Haskell2010

Control.Category.Dual

Description

# Documentation

data Dual (k :: Type -> Type -> Type) a b Source #

Constructors

Dual |

Fields

- runDual :: k b a

#### Instances

Instances details

Category k => Category (Dual k :: Type -> Type -> Type) Source # |
Instance details Defined in Control.Category.Dual Methods id :: Dual k a a Source # (.) :: Dual k b c -> Dual k a b -> Dual k a c Source #
(Typeable k, Data a, Data b, Data (k b a)) => Data (Dual k a b) Source # |

Instance details

Defined in Control.Category.Dual

Methods

gfoldl :: (forall d b0. Data d => c (d -> b0) -> d -> c b0) -> (forall g. g -> c g) -> Dual k a b -> c (Dual k a b) Source #

gunfold :: (forall b0 r. Data b0 => c (b0 -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Dual k a b) Source #

toConstr :: Dual k a b -> Constr Source #

dataTypeOf :: Dual k a b -> DataType Source #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (Dual k a b)) Source #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (Dual k a b)) Source #

gmapT :: (forall b0. Data b0 => b0 -> b0) -> Dual k a b -> Dual k a b Source #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Dual k a b -> r Source #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Dual k a b -> r Source #

gmapQ :: (forall d. Data d => d -> u) -> Dual k a b -> [u] Source #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Dual k a b -> u Source #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Dual k a b -> m (Dual k a b) Source #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Dual k a b -> m (Dual k a b) Source #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Dual k a b -> m (Dual k a b) Source #