unbound-generics-0.1.2.1: Support for programming with names and binders using GHC Generics

Safe HaskellSafe-Inferred
LanguageHaskell2010

Unbound.Generics.LocallyNameless.Internal.Iso

Documentation

data Exchange a b s t Source

Constructors

Exchange (s -> a) (b -> t) 

Instances

type Iso s t a b = forall p f. (Profunctor p, Functor f) => p a (f b) -> p s (f t) Source

type AnIso s t a b = Exchange a b a (Identity b) -> Exchange a b s (Identity t) Source

iso :: (s -> a) -> (b -> t) -> Iso s t a b Source

from :: AnIso s t a b -> Iso b a t s Source

withIso :: AnIso s t a b -> ((s -> a) -> (b -> t) -> r) -> r Source