ghc-7.10.2: The GHC API

Safe HaskellNone
LanguageHaskell2010

NameEnv

Contents

Synopsis

Var, Id and TyVar environments (maps)

type NameEnv a = UniqFM a

Manipulating these environments

mkNameEnv :: [(Name, a)] -> NameEnv a

unitNameEnv :: Name -> a -> NameEnv a

nameEnvElts :: 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_C :: (a -> a -> a) -> NameEnv a -> [(Name, a)] -> NameEnv a

foldNameEnv :: (a -> b -> b) -> b -> NameEnv a -> b

filterNameEnv :: (elt -> Bool) -> NameEnv elt -> NameEnv elt

anyNameEnv :: (elt -> Bool) -> NameEnv elt -> Bool

plusNameEnv_C :: (a -> a -> a) -> NameEnv a -> NameEnv a -> NameEnv a

alterNameEnv :: (Maybe a -> Maybe a) -> NameEnv a -> Name -> NameEnv a

mapNameEnv :: (elt1 -> elt2) -> NameEnv elt1 -> NameEnv elt2

Dependency analysis

depAnal :: (node -> [Name]) -> (node -> [Name]) -> [node] -> [SCC node]