invertible-0.1.1: Data/Invertible/Invariant.hs
-- |
-- Use bijections on 'Invariant' functors from "Data.Functor.Invariant".
{-# LANGUAGE TypeOperators #-}
module Data.Invertible.Invariant
( invmap
) where
import Data.Invertible.Bijection
import qualified Data.Functor.Invariant as I
-- |Apply a bijection over an 'I.Invariant' using 'I.invmap'.
invmap :: I.Invariant f => a <-> b -> f a -> f b
invmap (f :<->: g) = I.invmap f g