summaryrefslogtreecommitdiff
path: root/st/SymbolTable.java
diff options
context:
space:
mode:
authorbd-912 <bdunahu@colostate.edu>2024-05-09 00:36:50 -0600
committerbd-912 <bdunahu@colostate.edu>2024-05-09 00:36:50 -0600
commitf86e714a4fdebb994101813a5fa6664f5883a0ab (patch)
tree727bec17afbb6fc373d6a6b73a69ba47ad1b7a4c /st/SymbolTable.java
parentf59241de07bfc0170fe3a18dc279d2a66bd58fdb (diff)
Many final bug-fixes in heat visitor, symbol table
Diffstat (limited to 'st/SymbolTable.java')
-rw-r--r--st/SymbolTable.java7
1 files changed, 7 insertions, 0 deletions
diff --git a/st/SymbolTable.java b/st/SymbolTable.java
index 15d33a0..fa6bdf2 100644
--- a/st/SymbolTable.java
+++ b/st/SymbolTable.java
@@ -62,6 +62,7 @@ public class SymbolTable {
cls.getName(), cls.getType()));
cls.addLocal(t);
this.symt.put(new TokenKey(t.getName(),
+ TypeEnum.integer,
cls,
null),
t);
@@ -71,6 +72,7 @@ public class SymbolTable {
m.getName(), m.getType(),
cls.getName(), cls.getType()));
this.symt.put(new TokenKey(m.getName(),
+ TypeEnum.method,
cls,
null),
m);
@@ -150,6 +152,7 @@ public class SymbolTable {
public TypeInstance getType(String name) {
TokenKey id = new TokenKey(name,
+ TypeEnum.integer,
(ClassInstance) this.getActive(TypeEnum.classname),
(MethodInstance) this.getActive(TypeEnum.method));
AbstractInstance symbol;
@@ -164,6 +167,7 @@ public class SymbolTable {
public TypeInstance getTypeAttr(String name) {
TokenKey id = new TokenKey(name,
+ TypeEnum.integer,
(ClassInstance) this.getActive(TypeEnum.classname),
null);
AbstractInstance symbol;
@@ -179,6 +183,7 @@ public class SymbolTable {
public MethodInstance getMethod(String name) {
TokenKey id = new TokenKey(name,
+ TypeEnum.method,
(ClassInstance) this.getActive(TypeEnum.classname),
null);
AbstractInstance symbol;
@@ -193,6 +198,7 @@ public class SymbolTable {
public MethodInstance getMethod(String name, ClassInstance c) {
TokenKey id = new TokenKey(name,
+ TypeEnum.method,
c,
null);
AbstractInstance symbol;
@@ -207,6 +213,7 @@ public class SymbolTable {
public ClassInstance getClass(String name) {
TokenKey id = new TokenKey(name,
+ TypeEnum.classname,
null,
null);
AbstractInstance symbol;