diff options
author | bd-912 <bdunahu@colostate.edu> | 2024-05-09 00:36:50 -0600 |
---|---|---|
committer | bd-912 <bdunahu@colostate.edu> | 2024-05-09 00:36:50 -0600 |
commit | f86e714a4fdebb994101813a5fa6664f5883a0ab (patch) | |
tree | 727bec17afbb6fc373d6a6b73a69ba47ad1b7a4c /st/SymbolTable.java | |
parent | f59241de07bfc0170fe3a18dc279d2a66bd58fdb (diff) |
Many final bug-fixes in heat visitor, symbol table
Diffstat (limited to 'st/SymbolTable.java')
-rw-r--r-- | st/SymbolTable.java | 7 |
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; |