lens-4.2: Lenses, Folds and Traversals

Copyright(C) 2012-14 Edward Kmett
LicenseBSD-style (see the file LICENSE)
MaintainerEdward Kmett <ekmett@gmail.com>
Stabilityprovisional
PortabilityMPTCs, Rank2Types, LiberalTypeSynonyms
Safe HaskellSafe-Inferred
LanguageHaskell98

Data.Array.Lens

Contents

Description

 

Synopsis

Setters

ixmapped :: (IArray a e, Ix i, Ix j) => (i, i) -> IndexPreservingSetter (a j e) (a i e) i j Source

This setter can be used to derive a new IArray from an old IAarray by applying a function to each of the indices to look it up in the old IArray.

This is a contravariant Setter.

ixmapover . ixmapped
ixmappedsetting . ixmap
over (ixmapped b) f arr ! i ≡ arr ! f i
bounds (over (ixmapped b) f arr) ≡ b