ant.compiler.ast
Class DFSVisitor

java.lang.Object
  extended byant.compiler.ast.AbstractVisitor
      extended byant.compiler.ast.DFSVisitor
All Implemented Interfaces:
Tree.Visitor
Direct Known Subclasses:
CodeGenerator, SemanticAnalyzer.DefinitionFinder, SemanticAnalyzer.ParentResolver, SemanticAnalyzer.UsageResolver, VarTransformer

public class DFSVisitor
extends AbstractVisitor

Visitor that visits a tree fragment in depth first order.

License: GPL

Author:
Bernhard Haumacher

Constructor Summary
DFSVisitor()
           
 
Method Summary
protected  void beforeDescend(Tree tree)
           
 void visit(Tree.AndExpression tree)
           
 void visit(Tree.Assign tree)
           
 void visit(Tree.Block tree)
           
 void visit(Tree.Call tree)
           
 void visit(Tree.If tree)
           
 void visit(Tree.Label tree)
           
 void visit(Tree.NotExpression tree)
           
 void visit(Tree.OrExpression tree)
           
 void visit(Tree.Proc tree)
           
 
Methods inherited from class ant.compiler.ast.AbstractVisitor
visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visitBinaryExpression, visitExpression, visitTree
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DFSVisitor

public DFSVisitor()
Method Detail

beforeDescend

protected void beforeDescend(Tree tree)

visit

public void visit(Tree.Label tree)
Specified by:
visit in interface Tree.Visitor
Overrides:
visit in class AbstractVisitor

visit

public void visit(Tree.Block tree)
Specified by:
visit in interface Tree.Visitor
Overrides:
visit in class AbstractVisitor

visit

public void visit(Tree.Proc tree)
Specified by:
visit in interface Tree.Visitor
Overrides:
visit in class AbstractVisitor

visit

public void visit(Tree.Call tree)
Specified by:
visit in interface Tree.Visitor
Overrides:
visit in class AbstractVisitor

visit

public void visit(Tree.Assign tree)
Specified by:
visit in interface Tree.Visitor
Overrides:
visit in class AbstractVisitor

visit

public void visit(Tree.If tree)
Specified by:
visit in interface Tree.Visitor
Overrides:
visit in class AbstractVisitor

visit

public void visit(Tree.NotExpression tree)
Specified by:
visit in interface Tree.Visitor
Overrides:
visit in class AbstractVisitor

visit

public void visit(Tree.AndExpression tree)
Specified by:
visit in interface Tree.Visitor
Overrides:
visit in class AbstractVisitor

visit

public void visit(Tree.OrExpression tree)
Specified by:
visit in interface Tree.Visitor
Overrides:
visit in class AbstractVisitor