Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Pandora.Pattern.Functor.Contravariant
Synopsis
- class (Category source, Category target) => Contravariant t source target where
- (->$<-) :: source a b -> target (t b) (t a)
Documentation
class (Category source, Category target) => Contravariant t source target where Source #
When providing a new instance, you should ensure it satisfies: * Identity morphism: contramap identity ≡ identity * Interpreted of morphisms: contramap f . contramap g ≡ contramap (g . f)
Instances
Contravariant Predicate ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) Source # | |
Contravariant (Proxy :: Type -> Type) ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) Source # | |
Contravariant (Convergence r) ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) Source # | |
Defined in Pandora.Paradigm.Primary.Functor.Convergence Methods (->$<-) :: (a -> b) -> Convergence r b -> Convergence r a Source # | |
Contravariant (Flip ((->) :: Type -> Type -> Type) a) ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) Source # | |
Contravariant (Flip Imprint a) ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) Source # | |
Contravariant (Flip Environment a) ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) Source # | |
Defined in Pandora.Paradigm.Inventory.Environment Methods (->$<-) :: (a0 -> b) -> Flip Environment a b -> Flip Environment a a0 Source # | |
Contravariant (Constant a :: Type -> Type) ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) Source # | |
Contravariant t ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) => Contravariant (Backwards t) ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) Source # | |
Contravariant t ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) => Contravariant (Reverse t) ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) Source # | |
(Divariant p ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type), Contravariant t ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type), Covariant u ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type)) => Covariant ((t >:.:> u) := p) ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) Source # | |
(forall i. Covariant (p i) ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type), Bivariant p ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type), Contravariant t ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type), Contravariant u ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type)) => Contravariant ((t >:.:< u) := p) ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) Source # | |
Contravariant (Kan ('Left :: Type -> Wye Type) t u b) ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) Source # | |