GHC.Types.Name.Env
Var, Id and TyVar environments (maps)
Manipulating these environments
mkNameEnvWith :: (a -> Name) -> [a] -> NameEnv a Source #
emptyNameEnv :: NameEnv a Source #
isEmptyNameEnv :: NameEnv a -> Bool Source #
unitNameEnv :: Name -> a -> NameEnv a Source #
nonDetNameEnvElts :: NameEnv a -> [a] Source #
lookupNameEnv_NF :: NameEnv a -> Name -> a Source #
mapNameEnv :: (elt1 -> elt2) -> NameEnv elt1 -> NameEnv elt2 Source #
seqEltsNameEnv :: (elt -> ()) -> NameEnv elt -> () Source #
type DNameEnv a = UniqDFM Name a Source #
Deterministic Name Environment
See Note [Deterministic UniqFM] in GHC.Types.Unique.DFM for explanation why we need DNameEnv.
emptyDNameEnv :: DNameEnv a Source #
isEmptyDNameEnv :: DNameEnv a -> Bool Source #
mapDNameEnv :: (a -> b) -> DNameEnv a -> DNameEnv b Source #
eltsDNameEnv :: DNameEnv a -> [a] Source #
foldDNameEnv :: (a -> b -> b) -> b -> DNameEnv a -> b Source #
nonDetStrictFoldDNameEnv :: (a -> b -> b) -> b -> DNameEnv a -> b Source #