Data.Functor.Contravariant (original) (raw)
Contravariant Comparison Source #
A [Comparison](Data-Functor-Contravariant.html#t:Comparison "Data.Functor.Contravariant")
is a [Contravariant](Data-Functor-Contravariant.html#t:Contravariant "Data.Functor.Contravariant")
[Functor](Control-Monad.html#t:Functor "Control.Monad")
, because [contramap](Data-Functor-Contravariant.html#v:contramap "Data.Functor.Contravariant")
can apply its function argument to each input of the comparison function.
Instance details
Defined in Data.Functor.Contravariant
Methods
contramap :: (a' -> a) -> Comparison a -> Comparison a' Source #
(>$) :: b -> Comparison b -> Comparison a Source #
Contravariant Equivalence Source #
Equivalence relations are [Contravariant](Data-Functor-Contravariant.html#t:Contravariant "Data.Functor.Contravariant")
, because you can apply the contramapped function to each input to the equivalence relation.
Instance details
Defined in Data.Functor.Contravariant
Methods
contramap :: (a' -> a) -> Equivalence a -> Equivalence a' Source #
(>$) :: b -> Equivalence b -> Equivalence a Source #
Contravariant Predicate Source #
A [Predicate](Data-Functor-Contravariant.html#t:Predicate "Data.Functor.Contravariant")
is a [Contravariant](Data-Functor-Contravariant.html#t:Contravariant "Data.Functor.Contravariant")
[Functor](Control-Monad.html#t:Functor "Control.Monad")
, because[contramap](Data-Functor-Contravariant.html#v:contramap "Data.Functor.Contravariant")
can apply its function argument to the input of the predicate.
Without newtypes `[contramap](Data-Functor-Contravariant.html#v:contramap "Data.Functor.Contravariant")` f
equals precomposing with f
(= (. f)
).
contramap :: (a' -> a) -> (Predicate a -> Predicate a') contramap f (Predicate g) = Predicate (g . f)
Instance details
Defined in Data.Functor.Contravariant
Methods
contramap :: (a' -> a) -> Predicate a -> Predicate a' Source #
(>$) :: b -> Predicate b -> Predicate a Source #
Contravariant (Op a) Source #
Instance details
Defined in Data.Functor.Contravariant
Methods
contramap :: (a' -> a0) -> Op a a0 -> Op a a' Source #
(>$) :: b -> Op a b -> Op a a0 Source #
Contravariant (Proxy :: Type -> Type) Source #
Instance details
Defined in Data.Functor.Contravariant
Methods
contramap :: (a' -> a) -> Proxy a -> Proxy a' Source #
(>$) :: b -> Proxy b -> Proxy a Source #
Contravariant (U1 :: Type -> Type) Source #
Instance details
Defined in Data.Functor.Contravariant
Methods
contramap :: (a' -> a) -> U1 a -> U1 a' Source #
(>$) :: b -> U1 b -> U1 a Source #
Contravariant (V1 :: Type -> Type) Source #
Instance details
Defined in Data.Functor.Contravariant
Methods
contramap :: (a' -> a) -> V1 a -> V1 a' Source #
(>$) :: b -> V1 b -> V1 a Source #
Contravariant (Const a :: Type -> Type) Source #
Instance details
Defined in Data.Functor.Contravariant
Methods
contramap :: (a' -> a0) -> Const a a0 -> Const a a' Source #
(>$) :: b -> Const a b -> Const a a0 Source #
Contravariant f => Contravariant (Alt f) Source #
Instance details
Defined in Data.Functor.Contravariant
Methods
contramap :: (a' -> a) -> Alt f a -> Alt f a' Source #
(>$) :: b -> Alt f b -> Alt f a Source #
Contravariant f => Contravariant (Rec1 f) Source #
Instance details
Defined in Data.Functor.Contravariant
Methods
contramap :: (a' -> a) -> Rec1 f a -> Rec1 f a' Source #
(>$) :: b -> Rec1 f b -> Rec1 f a Source #
(Contravariant f, Contravariant g) => Contravariant (Product f g) Source #
Instance details
Defined in Data.Functor.Contravariant
Methods
contramap :: (a' -> a) -> Product f g a -> Product f g a' Source #
(>$) :: b -> Product f g b -> Product f g a Source #
(Contravariant f, Contravariant g) => Contravariant (Sum f g) Source #
Instance details
Defined in Data.Functor.Contravariant
Methods
contramap :: (a' -> a) -> Sum f g a -> Sum f g a' Source #
(>$) :: b -> Sum f g b -> Sum f g a Source #
(Contravariant f, Contravariant g) => Contravariant (f :*: g) Source #
Instance details
Defined in Data.Functor.Contravariant
Methods
contramap :: (a' -> a) -> (f :*: g) a -> (f :*: g) a' Source #
(>$) :: b -> (f :*: g) b -> (f :*: g) a Source #
(Contravariant f, Contravariant g) => Contravariant (f :+: g) Source #
Instance details
Defined in Data.Functor.Contravariant
Methods
contramap :: (a' -> a) -> (f :+: g) a -> (f :+: g) a' Source #
(>$) :: b -> (f :+: g) b -> (f :+: g) a Source #
Contravariant (K1 i c :: Type -> Type) Source #
Instance details
Defined in Data.Functor.Contravariant
Methods
contramap :: (a' -> a) -> K1 i c a -> K1 i c a' Source #
(>$) :: b -> K1 i c b -> K1 i c a Source #
(Functor f, Contravariant g) => Contravariant (Compose f g) Source #
Instance details
Defined in Data.Functor.Contravariant
Methods
contramap :: (a' -> a) -> Compose f g a -> Compose f g a' Source #
(>$) :: b -> Compose f g b -> Compose f g a Source #
(Functor f, Contravariant g) => Contravariant (f :.: g) Source #
Instance details
Defined in Data.Functor.Contravariant
Methods
contramap :: (a' -> a) -> (f :.: g) a -> (f :.: g) a' Source #
(>$) :: b -> (f :.: g) b -> (f :.: g) a Source #
Contravariant f => Contravariant (M1 i c f) Source #
Instance details
Defined in Data.Functor.Contravariant
Methods
contramap :: (a' -> a) -> M1 i c f a -> M1 i c f a' Source #