lens-1.6: Lenses, Folds and Traversals

PortabilityGHC
Stabilityexperimental
MaintainerEdward Kmett <ekmett@gmail.com>
Safe HaskellSafe-Infered

GHC.Generics.Lens

Contents

Description

 

Synopsis

Conversion to/from generic

generic :: (Generic a, Generic b) => Iso a b (Rep a x) (Rep b y)Source

Convert from the data type to its representation (or back)

>>> "hello"^.generic.from generic
"hello"

generic1 :: (Generic1 f, Generic1 g) => Iso (f a) (g b) (Rep1 f a) (Rep1 g b)Source

Convert from the data type to its representation (or back)

Generic Traversal

every :: (Generic a, GTraversal (Rep a), Typeable b) => Simple Traversal a bSource

Traverse using GHC.Generics.

>>> allOf every (=="Hello") (1::Int,2::Double,(),"Hello",["Hello"])
True
>>> mapMOf_ every putStrLn ("hello",[(2 :: Int, "world!")])
hello
world!

class GTraversal f Source

Traversable generic data types. Used by every.

Instances