Portability | portable |
---|---|

Stability | provisional |

Maintainer | Edward Kmett <ekmett@gmail.com> |

Safe Haskell | None |

# Documentation

setmapped :: Simple Setter IntSet IntSource

This `Setter`

can be used to change the contents of an `IntSet`

by mapping
the elements to new values.

Sadly, you can't create a valid `Traversal`

for a `Set`

, because the number of
elements might change but you can manipulate it by reading using `folded`

and
reindexing it via `setmap`

.

`>>>`

fromList [2,3,4,5]`over setmapped (+1) (fromList [1,2,3,4])`

setOf :: Getting IntSet a b Int d -> a -> IntSetSource

Construct an `IntSet`

from a `Getter`

, `Fold`

, `Traversal`

, `Lens`

or `Iso`

.

`>>>`

`:m + Data.IntSet.Lens Control.Lens`

`>>>`

fromList [1,2,3]`setOf (folded._2) [("hello",1),("world",2),("!!!",3)]`

setOf ::`Getter`

a`Int`

-> a ->`IntSet`

setOf ::`Fold`

a`Int`

-> a ->`IntSet`

setOf ::`Simple`

`Iso`

a`Int`

-> a ->`IntSet`

setOf ::`Simple`

`Lens`

a`Int`

-> a ->`IntSet`

setOf ::`Simple`

`Traversal`

a`Int`

-> a ->`IntSet`