语义检查与符号表

This commit is contained in:
jing
2025-12-29 20:43:08 +08:00
parent bb7f42e06e
commit 996676bcfa
4 changed files with 85 additions and 4 deletions

16
src/sem/SymbolTable.h Normal file
View File

@@ -0,0 +1,16 @@
// 极简符号表:记录局部变量是否定义。
#pragma once
#include <string>
#include <unordered_map>
class SymbolTable {
public:
void Add(const std::string& name) { table_[name] = true; }
bool Contains(const std::string& name) const {
return table_.find(name) != table_.end();
}
private:
std::unordered_map<std::string, bool> table_;
};