Safe Haskell | None |
---|---|
Language | Haskell2010 |
The Name Cache
Synopsis
- lookupOrigNameCache :: OrigNameCache -> Module -> OccName -> Maybe Name
- extendOrigNameCache :: OrigNameCache -> Name -> OrigNameCache
- extendNameCache :: OrigNameCache -> Module -> OccName -> Name -> OrigNameCache
- initNameCache :: UniqSupply -> [Name] -> NameCache
- data NameCache = NameCache {
- nsUniqs :: !UniqSupply
- nsNames :: !OrigNameCache
- type OrigNameCache = ModuleEnv (OccEnv Name)
Documentation
lookupOrigNameCache :: OrigNameCache -> Module -> OccName -> Maybe Name Source #
extendOrigNameCache :: OrigNameCache -> Name -> OrigNameCache Source #
extendNameCache :: OrigNameCache -> Module -> OccName -> Name -> OrigNameCache Source #
initNameCache :: UniqSupply -> [Name] -> NameCache Source #
Return a function to atomically update the name cache.
The NameCache makes sure that there is just one Unique assigned for each original name; i.e. (module-name, occ-name) pair and provides something of a lookup mechanism for those names.
NameCache | |
|