From: bdemsky Date: Wed, 15 Feb 2006 22:47:35 +0000 (+0000) Subject: d X-Git-Tag: preEdgeChange~979 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=3623e8da49d0c65e76902b4d9d23c917b6616be9;p=IRC.git d --- diff --git a/Robust/src/IR/Flat/FlatNode.java b/Robust/src/IR/Flat/FlatNode.java index 837f83f1..06a67977 100644 --- a/Robust/src/IR/Flat/FlatNode.java +++ b/Robust/src/IR/Flat/FlatNode.java @@ -1,3 +1,5 @@ +package IR.Flat; + public class FlatNode { public String toString() { diff --git a/Robust/src/IR/State.java b/Robust/src/IR/State.java index c6c34a1e..701c92c2 100644 --- a/Robust/src/IR/State.java +++ b/Robust/src/IR/State.java @@ -1,13 +1,16 @@ package IR; import IR.Tree.*; +import java.util.*; public class State { public State(ParseNode parsetree) { globals=new SymbolTable(); this.parsetree=parsetree; + this.set=new HashSet(); } public SymbolTable globals; public ParseNode parsetree; + public HashSet set; public static TypeDescriptor getTypeDescriptor(int t) { TypeDescriptor td=new TypeDescriptor(t); @@ -17,4 +20,7 @@ public class State { TypeDescriptor td=new TypeDescriptor(n); return td; } + public void addClass(ClassNode tdn) { + set.add(tdn); + } } diff --git a/Robust/src/IR/Tree/BuildIR.java b/Robust/src/IR/Tree/BuildIR.java index 68bc9acc..a937ef48 100644 --- a/Robust/src/IR/Tree/BuildIR.java +++ b/Robust/src/IR/Tree/BuildIR.java @@ -9,13 +9,11 @@ public class BuildIR { } public void buildtree() { ParseNode pn=state.parsetree; - FileNode fn=parseFile(pn); - System.out.println(fn.printNode(0)); + parseFile(pn); } /** Parse the classes in this file */ - public FileNode parseFile(ParseNode pn) { - FileNode fn=new FileNode(); + public void parseFile(ParseNode pn) { ParseNode tpn=pn.getChild("type_declaration_list"); if (tpn!=null) { ParseNodeVector pnv=tpn.getChildren(); @@ -24,10 +22,9 @@ public class BuildIR { if (isEmpty(type_pn)) /* Skip the semicolon */ continue; ClassNode cn=parseTypeDecl(type_pn); - fn.addClass(cn); + state.addClass(cn); } } - return fn; } public ClassNode parseTypeDecl(ParseNode pn) { diff --git a/Robust/src/IR/Tree/ClassNode.java b/Robust/src/IR/Tree/ClassNode.java index d36dd969..f01f8e09 100644 --- a/Robust/src/IR/Tree/ClassNode.java +++ b/Robust/src/IR/Tree/ClassNode.java @@ -5,7 +5,7 @@ import IR.FieldDescriptor; import IR.MethodDescriptor; import IR.NameDescriptor; -class ClassNode extends TreeNode { +public class ClassNode extends TreeNode { ClassNode() { classname=null; superclass=null; diff --git a/Robust/src/IR/Tree/FileNode.java b/Robust/src/IR/Tree/FileNode.java deleted file mode 100644 index c305822d..00000000 --- a/Robust/src/IR/Tree/FileNode.java +++ /dev/null @@ -1,24 +0,0 @@ -package IR.Tree; -import java.util.Vector; - -class FileNode extends TreeNode { - private Vector type_decls; - - FileNode() { - type_decls=new Vector(); - } - - public void addClass(ClassNode tdn) { - type_decls.add(tdn); - } - - public String printNode(int indent) { - String st=""; - for(int i=0;i