Safe Haskell | None |
---|
This module is designed to be imported qualified.
- data Table
- data GName
- data OrigName
- empty :: Table
- data Result l a
- lookupValue :: QName l -> Table -> Result l (SymValueInfo OrigName)
- addValue :: QName l -> SymValueInfo OrigName -> Table -> Table
- lookupType :: QName l -> Table -> Result l (SymTypeInfo OrigName)
- addType :: QName l -> SymTypeInfo OrigName -> Table -> Table
- fromMaps :: Map GName (Set (SymValueInfo OrigName)) -> Map GName (Set (SymTypeInfo OrigName)) -> Table
- fromLists :: ([(GName, SymValueInfo OrigName)], [(GName, SymTypeInfo OrigName)]) -> Table
- types :: Table -> Map GName (Set (SymTypeInfo OrigName))
- values :: Table -> Map GName (Set (SymValueInfo OrigName))
- toSymbols :: Table -> Symbols
Documentation
Global symbol table — contains global names
Possibly qualified name. If the name is not qualified,
ModuleNameS
is the empty string.
Qualified name, where ModuleNameS
points to the module where the
name was originally defined. The module part is never empty.
Also contains name and version of the package where it was defined. If
it's Nothing
, then the entity is defined in the "current" package.
lookupValue :: QName l -> Table -> Result l (SymValueInfo OrigName)Source
lookupType :: QName l -> Table -> Result l (SymTypeInfo OrigName)Source
fromMaps :: Map GName (Set (SymValueInfo OrigName)) -> Map GName (Set (SymTypeInfo OrigName)) -> TableSource
fromLists :: ([(GName, SymValueInfo OrigName)], [(GName, SymTypeInfo OrigName)]) -> TableSource