semi-iso-0.4.0.0: Weakened partial isomorphisms that work with lenses.

Copyright(c) Paweł Nowak
LicenseMIT
MaintainerPaweł Nowak <pawel834@gmail.com>
Stabilityexperimental
Safe HaskellSafe-Inferred
LanguageHaskell2010

Data.Profunctor.Exposed

Description

 

Synopsis

Documentation

class (Monad m, Profunctor p) => Exposed m p | p -> m where Source

Exposes structure of a Kleisli category beneath a profunctor.

Should obey laws:

merge . rmap return = id
lmap return . expose = id
rmap (>>= f) = merge . rmap (fmap f)
lmap (fmap f) . expose = expose . lmap f

Methods

expose :: p a b -> p (m a) b Source

merge :: p a (m b) -> p a b Source

Instances