aboutsummaryrefslogtreecommitdiff
path: root/include/scope.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'include/scope.hpp')
-rw-r--r--include/scope.hpp20
1 files changed, 4 insertions, 16 deletions
diff --git a/include/scope.hpp b/include/scope.hpp
index ff20542..7d66f0f 100644
--- a/include/scope.hpp
+++ b/include/scope.hpp
@@ -1,23 +1,11 @@
#pragma once
-#include <string>
-#include <memory>
-
class Scope {
public:
- explicit Scope(std::string name, int level, *Scope parent);
- std::string getScopeName();
- int getScopeLevel();
- *Scope getParentScope();
- void define(Symbol symbol);
- *Symbol lookup(std::string name);
- bool isDeclared(std::string name);
- std::unordered_map<std::string, Symbol> getAllSymbols();
- std::string toString();
+ explicit Scope(int scope_level);
private:
- std::string scope_name;
- int scope_level
- *Scope parent_scope;
- std::unordered_map<std::string, Symbol> symbols;
+ std::vector<Symbol> symbols;
+ int scope_level;
+
};