Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Documentation
class Invariant (t :: * -> *) where Source #
When providing a new instance, you should ensure it satisfies the two laws: Identity morphisms: invmap identity identity = identity Interpreted of morphisms: invmap g j . invmap f h = invmap (g . f) (h . j)
(>-<) :: (a -> b) -> (b -> a) -> t a -> t b Source #
invmap :: (a -> b) -> (b -> a) -> t a -> t b Source #
Prefix version of >-<