| Safe Haskell | None | 
|---|---|
| Language | Haskell2010 | 
GHC.Types.Name.Env
Synopsis
- type NameEnv a = UniqFM Name a
 - mkNameEnv :: [(Name, a)] -> NameEnv a
 - mkNameEnvWith :: (a -> Name) -> [a] -> NameEnv a
 - fromUniqMap :: UniqMap Name a -> NameEnv a
 - emptyNameEnv :: NameEnv a
 - isEmptyNameEnv :: NameEnv a -> Bool
 - unitNameEnv :: Name -> a -> NameEnv a
 - nonDetNameEnvElts :: NameEnv a -> [a]
 - extendNameEnv_C :: (a -> a -> a) -> NameEnv a -> Name -> a -> NameEnv a
 - extendNameEnv_Acc :: (a -> b -> b) -> (a -> b) -> NameEnv b -> Name -> a -> NameEnv b
 - extendNameEnv :: NameEnv a -> Name -> a -> NameEnv a
 - extendNameEnvList :: NameEnv a -> [(Name, a)] -> NameEnv a
 - extendNameEnvList_C :: (a -> a -> a) -> NameEnv a -> [(Name, a)] -> NameEnv a
 - filterNameEnv :: (elt -> Bool) -> NameEnv elt -> NameEnv elt
 - anyNameEnv :: (elt -> Bool) -> NameEnv elt -> Bool
 - mapMaybeNameEnv :: (a -> Maybe b) -> NameEnv a -> NameEnv b
 - extendNameEnvListWith :: (a -> Name) -> NameEnv a -> [a] -> NameEnv a
 - plusNameEnv :: NameEnv a -> NameEnv a -> NameEnv a
 - plusNameEnv_C :: (a -> a -> a) -> NameEnv a -> NameEnv a -> NameEnv a
 - plusNameEnv_CD :: (a -> a -> a) -> NameEnv a -> a -> NameEnv a -> a -> NameEnv a
 - plusNameEnv_CD2 :: (Maybe a -> Maybe a -> a) -> NameEnv a -> NameEnv a -> NameEnv a
 - alterNameEnv :: (Maybe a -> Maybe a) -> NameEnv a -> Name -> NameEnv a
 - plusNameEnvList :: [NameEnv a] -> NameEnv a
 - plusNameEnvListWith :: (a -> a -> a) -> [NameEnv a] -> NameEnv a
 - lookupNameEnv :: NameEnv a -> Name -> Maybe a
 - lookupNameEnv_NF :: NameEnv a -> Name -> a
 - delFromNameEnv :: NameEnv a -> Name -> NameEnv a
 - delListFromNameEnv :: NameEnv a -> [Name] -> NameEnv a
 - elemNameEnv :: Name -> NameEnv a -> Bool
 - mapNameEnv :: (elt1 -> elt2) -> NameEnv elt1 -> NameEnv elt2
 - disjointNameEnv :: NameEnv a -> NameEnv a -> Bool
 - seqEltsNameEnv :: (elt -> ()) -> NameEnv elt -> ()
 - type DNameEnv a = UniqDFM Name a
 - emptyDNameEnv :: DNameEnv a
 - isEmptyDNameEnv :: DNameEnv a -> Bool
 - lookupDNameEnv :: DNameEnv a -> Name -> Maybe a
 - delFromDNameEnv :: DNameEnv a -> Name -> DNameEnv a
 - filterDNameEnv :: (a -> Bool) -> DNameEnv a -> DNameEnv a
 - mapDNameEnv :: (a -> b) -> DNameEnv a -> DNameEnv b
 - adjustDNameEnv :: (a -> a) -> DNameEnv a -> Name -> DNameEnv a
 - alterDNameEnv :: (Maybe a -> Maybe a) -> DNameEnv a -> Name -> DNameEnv a
 - extendDNameEnv :: DNameEnv a -> Name -> a -> DNameEnv a
 - eltsDNameEnv :: DNameEnv a -> [a]
 - extendDNameEnv_C :: (a -> a -> a) -> DNameEnv a -> Name -> a -> DNameEnv a
 - plusDNameEnv_C :: (elt -> elt -> elt) -> DNameEnv elt -> DNameEnv elt -> DNameEnv elt
 - foldDNameEnv :: (a -> b -> b) -> b -> DNameEnv a -> b
 - nonDetStrictFoldDNameEnv :: (a -> b -> b) -> b -> DNameEnv a -> b
 - depAnal :: (node -> [Name]) -> (node -> [Name]) -> [node] -> [SCC node]
 
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 #
plusNameEnvList :: [NameEnv a] -> NameEnv a Source #
plusNameEnvListWith :: (a -> a -> a) -> [NameEnv a] -> NameEnv 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 #