Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Data.Bifunctor.Swap
Documentation
Symmetric Bifunctor
s.
swap
.swap
=id
If p
is a Bifunctor
the following property is assumed to hold:
swap
.bimap
f g =bimap
g f .swap
Swap
isn't a subclass of Bifunctor
, as for example
>>>
newtype Bipredicate a b = Bipredicate (a -> b -> Bool)
is not a Bifunctor
but has Swap
instance
>>>
instance Swap Bipredicate where swap (Bipredicate p) = Bipredicate (flip p)
Instances
Swap Either # | |
Defined in Data.Bifunctor.Swap | |
Swap (,) # | |
Defined in Data.Bifunctor.Swap | |
Swap ((,,) x) # | |
Defined in Data.Bifunctor.Swap | |
Swap ((,,,) x y) # | |
Defined in Data.Bifunctor.Swap | |
Swap ((,,,,) x y z) # | |
Defined in Data.Bifunctor.Swap | |
Swap p => Swap (Flip p) # | |
Defined in Data.Bifunctor.Swap | |
Swap ((,,,,,) x y z w) # | |
Defined in Data.Bifunctor.Swap | |
(Swap p, Swap q) => Swap (Sum p q) # | |
Defined in Data.Bifunctor.Swap | |
(Swap p, Swap q) => Swap (Product p q) # | |
Defined in Data.Bifunctor.Swap | |
Swap ((,,,,,,) x y z w v) # | |
Defined in Data.Bifunctor.Swap | |
(Functor f, Swap p) => Swap (Tannen f p) # | |
Defined in Data.Bifunctor.Swap | |
(f ~ g, Functor f, Swap p) => Swap (Biff p f g) # | |
Defined in Data.Bifunctor.Swap |