-------------------------------------------------------------------------------- -- | -- Module : Data.Comp.ExpFunctor -- Copyright : 2008 Edward Kmett -- License : BSD -- -- Maintainer : Tom Hvitved -- Stability : unknown -- Portability : unknown -- -- Exponential functors, see . -------------------------------------------------------------------------------- module Data.Comp.ExpFunctor ( ExpFunctor(..) ) where {-| Exponential functors are functors that may be both covariant (as ordinary functors) and contravariant. -} class ExpFunctor f where xmap :: (a -> b) -> (b -> a) -> f a -> f b