lens-4.13.2: Lenses, Folds and Traversals

Copyright(C) 2012-2016 Edward Kmett
LicenseBSD-style (see the file LICENSE)
MaintainerEdward Kmett <ekmett@gmail.com>
Stabilityexperimental
Portabilitynon-portable
Safe HaskellTrustworthy
LanguageHaskell98

Control.Lens.Internal.Iso

Description

 

Synopsis

Documentation

data Exchange a b s t Source

This is used internally by the Iso code to provide efficient access to the two functions that make up an isomorphism.

Constructors

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

Instances

Profunctor (Exchange a b) Source 

Methods

dimap :: (c -> d) -> (e -> f) -> Exchange a b d e -> Exchange a b c f

lmap :: (c -> d) -> Exchange a b d e -> Exchange a b c e

rmap :: (c -> d) -> Exchange a b e c -> Exchange a b e d

(#.) :: Coercible * d c => (c -> d) -> Exchange a b e c -> Exchange a b e d

(.#) :: Coercible * c e => Exchange a b c d -> (e -> c) -> Exchange a b e d

Functor (Exchange a b s) Source 

Methods

fmap :: (c -> d) -> Exchange a b s c -> Exchange a b s d

(<$) :: c -> Exchange a b s d -> Exchange a b s c

class Reversing t where Source

This class provides a generalized notion of list reversal extended to other containers.

Methods

reversing :: t -> t Source