From c28a1cc9d206bdde41a621b018c01980b3c8a617 Mon Sep 17 00:00:00 2001 From: bd-912 Date: Thu, 25 Apr 2024 12:58:10 -0600 Subject: Rewrote Symbol Table to be more context aware and avoid collisions --- J2V.java | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) (limited to 'J2V.java') diff --git a/J2V.java b/J2V.java index d19b84e..16f26df 100644 --- a/J2V.java +++ b/J2V.java @@ -21,14 +21,18 @@ public class J2V { // Build the symbol table. Top-down visitor, inherits from // GJDepthFirst. R=Void, A=Integer. SymbolTable symt = new SymbolTable(); - root.accept(new SymTableBottomUp(), symt); - root.accept(new SymTableTopDown(), symt); - - BoilVisitor vp = new BoilVisitor(symt); - root.accept(vp, null); - - MinimalLogger.info("==================================================="); - System.out.println(vp.getVapor()); + MinimalLogger.info("Populating classes..."); + root.accept(new SymTableClasses(), symt); + MinimalLogger.info("Populating methods..."); + root.accept(new SymTableMethods(), symt); + MinimalLogger.info("Populating variables..."); + root.accept(new SymTableVars(), symt); + + // BoilVisitor vp = new BoilVisitor(symt); + // root.accept(vp, null); + + // MinimalLogger.info("==================================================="); + // System.out.println(vp.getVapor()); } -- cgit v1.2.3