lens-5.0.1: Lenses, Folds and Traversals
Copyright (C) 2012-2016 Edward Kmett
License BSD-style (see the file LICENSE)
Maintainer Edward Kmett <ekmett@gmail.com>
Stability experimental
Portability non-portable
Safe Haskell Trustworthy
Language Haskell2010

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

Instances details
Profunctor ( Exchange a b) Source #
Instance details

Defined in Control.Lens.Internal.Iso

Methods

dimap :: (a0 -> b0) -> (c -> d) -> Exchange a b b0 c -> Exchange a b a0 d Source #

lmap :: (a0 -> b0) -> Exchange a b b0 c -> Exchange a b a0 c Source #

rmap :: (b0 -> c) -> Exchange a b a0 b0 -> Exchange a b a0 c Source #

(#.) :: forall a0 b0 c q. Coercible c b0 => q b0 c -> Exchange a b a0 b0 -> Exchange a b a0 c Source #

(.#) :: forall a0 b0 c q. Coercible b0 a0 => Exchange a b b0 c -> q a0 b0 -> Exchange a b a0 c Source #

Functor ( Exchange a b s) Source #
Instance details

Defined in Control.Lens.Internal.Iso

Methods

fmap :: (a0 -> b0) -> Exchange a b s a0 -> Exchange a b s b0 Source #

(<$) :: a0 -> Exchange a b s b0 -> Exchange a b s a0 Source #

class Reversing t where Source #

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

Methods

reversing :: t -> t Source #

Instances

Instances details
Reversing ByteString Source #
Instance details

Defined in Control.Lens.Internal.Iso

Reversing ByteString Source #
Instance details

Defined in Control.Lens.Internal.Iso

Reversing Text Source #
Instance details

Defined in Control.Lens.Internal.Iso

Reversing Text Source #
Instance details

Defined in Control.Lens.Internal.Iso

Reversing [a] Source #
Instance details

Defined in Control.Lens.Internal.Iso

Methods

reversing :: [a] -> [a] Source #

Reversing ( NonEmpty a) Source #
Instance details

Defined in Control.Lens.Internal.Iso

Reversing ( Seq a) Source #
Instance details

Defined in Control.Lens.Internal.Iso

Unbox a => Reversing ( Vector a) Source #
Instance details

Defined in Control.Lens.Internal.Iso

Storable a => Reversing ( Vector a) Source #
Instance details

Defined in Control.Lens.Internal.Iso

Prim a => Reversing ( Vector a) Source #
Instance details

Defined in Control.Lens.Internal.Iso

Reversing ( Vector a) Source #
Instance details

Defined in Control.Lens.Internal.Iso

Reversing ( Deque a) Source #
Instance details

Defined in Control.Lens.Internal.Deque