HORIZON HASKELLDocslts/ghc-10.0.xaa25b892026-10-10Search names, modules, packages, or :: a typeCtrl K

GHC 10.0.0.20260917 · lts/ghc-10.0.x · aa25b89 · 2026-10-10

Modulelens-5.3.6Haskell2010

Data.Set.Lens

  • 2 values
  • Packagelens-5.3.6
  • Exports2
  • LanguageHaskell2010
  • LicenceBSD-2-Clause
  • SourceLens.hs
valuesetmapped :: Ord j => IndexPreservingSetter (Set i) (Set j) i j
#

This Setter can be used to change the type of a Set by mapping the elements to new values.

Sadly, you can't create a valid Traversal for a Set, but you can manipulate it by reading using folded and reindexing it via setmapped.

Example1 expression
over setmapped (+1) (Set.fromList [1,2,3,4])fromList [2,3,4,5]
valuesetOf :: Getting (Set a) s a -> s -> Set a
#

Construct a set from a Getter, Fold, Control.Lens.Traversal.Traversal, Control.Lens.Lens.Lens or Control.Lens.Iso.Iso.

Example1 expression
setOf folded ["hello","world"]fromList ["hello","world"]
Example1 expression
setOf (folded._2) [("hello",1),("world",2),("!!!",3)]fromList [1,2,3]
setOf ::          Getter s a     -> s -> Set a
setOf :: Ord a => Fold s a       -> s -> Set a
setOf ::          Iso' s a       -> s -> Set a
setOf ::          Lens' s a      -> s -> Set a
setOf :: Ord a => Traversal' s a -> s -> Set a