HORIZON HASKELLDocslts/ghc-9.10.x248f8f02026-10-05Search names, modules, packages, or :: a typeCtrl K

GHC 9.10.3 · lts/ghc-9.10.x · 248f8f0 · 2026-10-05

Moduleoptics-core-0.4.1.1Haskell2010

Data.Set.Optics

This module defines optics for constructing and manipulating finite Sets.

  • 2 values
valuesetmapped :: Ord b => Setter (Set a) (Set b) a b
#

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 :: (Is k A_Fold, Ord a) => Optic' k is s a -> s -> Set a
#

Construct a set from a fold.

Example1 expression
setOf folded ["hello","world"]fromList ["hello","world"]
Example1 expression
setOf (folded % _2) [("hello",1),("world",2),("!!!",3)]fromList [1,2,3]