KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > polyglot > visit > AddMemberVisitor


1 package polyglot.visit;
2
3 import polyglot.ast.*;
4 import polyglot.frontend.*;
5 import polyglot.types.*;
6 import polyglot.util.*;
7 import polyglot.types.Package;
8 import polyglot.main.Report;
9
10 import java.io.IOException JavaDoc;
11 import java.util.*;
12
13 /** Visitor which traverses the AST constructing type objects. */
14 public class AddMemberVisitor extends ContextVisitor
15 {
16     public AddMemberVisitor(Job job, TypeSystem ts, NodeFactory nf) {
17         super(job, ts, nf);
18     }
19
20     protected NodeVisitor enterCall(Node n) throws SemanticException {
21         if (Report.should_report(Report.visit, 4))
22         Report.report(4, ">> AddMemberVisitor::enter " + n);
23         return n.del().addMembersEnter(this);
24     }
25
26     protected Node leaveCall(Node old, Node n, NodeVisitor v) throws SemanticException {
27       if (Report.should_report(Report.visit, 4))
28     Report.report(4, "<< AddMemberVisitor::leave " + n);
29         return n.del().addMembers((AddMemberVisitor) v);
30     }
31 }
32
Popular Tags