Moduleghc-10.0.0.20260917GHC2024
GHC.Types.Name.Set
Contents
Synopsis
- type NameSet
- value emptyNameSet
- value unitNameSet
- value mkNameSet
- value unionNameSet
- value unionNameSets
- value minusNameSet
- value elemNameSet
- value extendNameSet
- value extendNameSetList
- value delFromNameSet
- value delListFromNameSet
- value isEmptyNameSet
- value filterNameSet
- value intersectsNameSet
- value disjointNameSet
- value intersectNameSet
- value nameSetAny
- value nameSetAll
- value nameSetElemsStable
- type FreeNames
- value isEmptyFNs
- value emptyFNs
- value plusFNs
- value plusFN
- value mkFNs
- value addOneFN
- value unitFN
- value delFN
- value delFNs
- value intersectFNs
- value intersectsFNs
- type Defs
- type Uses
- type DefUse
- type DefUses
- value emptyDUs
- value usesOnly
- value mkDUs
- value plusDU
- value findUses
- value duDefs
- value duUses
- value allUses
- newtype NonCaffySet
- Packageghc-10.0.0.20260917
- Exports45
- LanguageGHC2024
- LicenceBSD-3-Clause
- SourceSet.hs
Names set type
Manipulating these sets
True if there is a non-empty intersection.
s1 intersectsNameSet s2 doesn't compute s2 if s1 is empty
Get the elements of a NameSet with some stable ordering. This only works for Names that originate in the source code or have been tidied. See Note [Deterministic UniqFM] to learn about nondeterminism
Free names
Defs and uses
A set of names that are defined somewhere
A set of names that are used somewhere
(Just ds, us) => The use of any member of the ds
implies that all the us are used too.
Also, us may mention ds.
Nothing => Nothing is defined in this group, but
nevertheless all the uses are essential.
Used for instance declarations, for example
Manipulating defs and uses
Non-CAFfy names
Ids which have no CAF references. This is a result of analysis of C--.
It is always safe to use an empty NonCaffySet. TODO Refer to Note.
Constructors
Instances2Semigroup, Monoid
Semigroup NonCaffySetDefined in ghc-10.0.0.20260917 · GHC.Types.Name.SetMonoid NonCaffySetDefined in ghc-10.0.0.20260917 · GHC.Types.Name.Set