diff options
| author | Eugen Wissner <belka@caraus.de> | 2024-07-31 00:49:16 +0300 |
|---|---|---|
| committer | Eugen Wissner <belka@caraus.de> | 2024-07-31 00:49:16 +0300 |
| commit | d4471ca2fa765c8c4c4f1e8bec59fc0c441eb824 (patch) | |
| tree | 1490547cc1662d66fbf6d27f5da3b6fdb352c905 /lib/Language/Elna/SymbolTable.hs | |
| parent | 92990e52f017c3fa0b9ff99f517171051d8c7c18 (diff) | |
| download | elna-d4471ca2fa765c8c4c4f1e8bec59fc0c441eb824.tar.gz | |
Collect types into the global symbol table
Diffstat (limited to 'lib/Language/Elna/SymbolTable.hs')
| -rw-r--r-- | lib/Language/Elna/SymbolTable.hs | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/lib/Language/Elna/SymbolTable.hs b/lib/Language/Elna/SymbolTable.hs index ba2e41f..f1c6534 100644 --- a/lib/Language/Elna/SymbolTable.hs +++ b/lib/Language/Elna/SymbolTable.hs @@ -2,6 +2,7 @@ module Language.Elna.SymbolTable ( Info(..) , ParameterInfo(..) , SymbolTable + , empty , enter , lookup , symbolTable @@ -31,6 +32,9 @@ symbolTable = SymbolTable $ HashMap.fromList , ("int", TypeInfo intType) ] +empty :: SymbolTable +empty = SymbolTable HashMap.empty + enter :: Identifier -> Info -> SymbolTable -> SymbolTable enter identifier info (SymbolTable table) = SymbolTable $ HashMap.insert identifier info table |
