Hoogle Search
Within LTS Haskell 24.40 (ghc-9.10.3)
Note that Stackage only displays results for the latest LTS and Nightly snapshot. Learn more.
invmap2Bifunctor :: Bifunctor f => (a -> c) -> (c -> a) -> (b -> d) -> (d -> b) -> f a b -> f c dinvariant Data.Functor.Invariant Every Bifunctor is also an Invariant2 functor.
invmap2Profunctor :: Profunctor f => (a -> c) -> (c -> a) -> (b -> d) -> (d -> b) -> f a b -> f c dinvariant Data.Functor.Invariant Every Profunctor is also an Invariant2 functor.
invmapArrow :: Arrow arr => (a -> b) -> (b -> a) -> arr a a -> arr b binvariant Data.Functor.Invariant An Arrow with the same input and output types can be seen as an Invariant functor.
invmapContravariant :: Contravariant f => (a -> b) -> (b -> a) -> f a -> f binvariant Data.Functor.Invariant Every Contravariant functor is also an Invariant functor.
invmapFunctor :: Functor f => (a -> b) -> (b -> a) -> f a -> f binvariant Data.Functor.Invariant invmapProfunctor :: Profunctor p => (a -> b) -> (b -> a) -> p a a -> p b binvariant Data.Functor.Invariant A Profunctor with the same input and output types can be seen as an Invariant functor.
-
invariant Data.Functor.Invariant.TH Generates a lambda expression which behaves like invmap (without requiring an Invariant instance).
-
invariant Data.Functor.Invariant.TH Generates a lambda expression which behaves like invmap2 (without requiring an Invariant2 instance).
makeInvmap2Options :: Options -> Name -> Q Expinvariant Data.Functor.Invariant.TH Like makeInvmap2, but takes an Options argument.
makeInvmapOptions :: Options -> Name -> Q Expinvariant Data.Functor.Invariant.TH Like makeInvmap, but takes an Options argument.