avrora.core.isdl.ast
Class StmtRebuilder.DepthFirst

java.lang.Object
  extended byavrora.core.isdl.ast.CodeRebuilder.DepthFirst
      extended byavrora.core.isdl.ast.StmtRebuilder.DepthFirst
All Implemented Interfaces:
CodeRebuilder, StmtRebuilder
Direct Known Subclasses:
Canonicalizer, ConstantPropagator, DeadCodeEliminator, Inliner
Enclosing class:
StmtRebuilder

public static class StmtRebuilder.DepthFirst
extends CodeRebuilder.DepthFirst
implements StmtRebuilder

The DepthFirst class is a base implementation of the StmtVisitor interface that visits the tree in depth-first order.


Nested Class Summary
 
Nested classes inherited from class avrora.core.isdl.ast.StmtRebuilder
StmtRebuilder.DepthFirst
 
Constructor Summary
StmtRebuilder.DepthFirst()
           
 
Method Summary
protected  void addStmt(Stmt s)
           
 Stmt visit(CallStmt s, java.lang.Object env)
           
 Stmt visit(CommentStmt s, java.lang.Object env)
           
 Stmt visit(DeclStmt s, java.lang.Object env)
           
 Stmt visit(IfStmt s, java.lang.Object env)
           
 Stmt visit(MapAssignStmt s, java.lang.Object env)
           
 Stmt visit(MapBitAssignStmt s, java.lang.Object env)
           
 Stmt visit(MapBitRangeAssignStmt s, java.lang.Object env)
           
 Stmt visit(ReturnStmt s, java.lang.Object env)
           
 Stmt visit(VarAssignStmt s, java.lang.Object env)
           
 Stmt visit(VarBitAssignStmt s, java.lang.Object env)
           
 Stmt visit(VarBitRangeAssignStmt s, java.lang.Object env)
           
 java.util.List visitStmtList(java.util.List l, java.lang.Object env)
           
protected  void visitStmts(java.util.List l, java.lang.Object env)
           
 
Methods inherited from class avrora.core.isdl.ast.CodeRebuilder.DepthFirst
visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visitExprList
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface avrora.core.isdl.ast.CodeRebuilder
visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit
 

Constructor Detail

StmtRebuilder.DepthFirst

public StmtRebuilder.DepthFirst()
Method Detail

visit

public Stmt visit(CallStmt s,
                  java.lang.Object env)
Specified by:
visit in interface StmtRebuilder

visit

public Stmt visit(CommentStmt s,
                  java.lang.Object env)
Specified by:
visit in interface StmtRebuilder

visit

public Stmt visit(DeclStmt s,
                  java.lang.Object env)
Specified by:
visit in interface StmtRebuilder

visit

public Stmt visit(IfStmt s,
                  java.lang.Object env)
Specified by:
visit in interface StmtRebuilder

visitStmtList

public java.util.List visitStmtList(java.util.List l,
                                    java.lang.Object env)

visitStmts

protected void visitStmts(java.util.List l,
                          java.lang.Object env)

addStmt

protected void addStmt(Stmt s)

visit

public Stmt visit(MapAssignStmt s,
                  java.lang.Object env)
Specified by:
visit in interface StmtRebuilder

visit

public Stmt visit(MapBitAssignStmt s,
                  java.lang.Object env)
Specified by:
visit in interface StmtRebuilder

visit

public Stmt visit(MapBitRangeAssignStmt s,
                  java.lang.Object env)
Specified by:
visit in interface StmtRebuilder

visit

public Stmt visit(ReturnStmt s,
                  java.lang.Object env)
Specified by:
visit in interface StmtRebuilder

visit

public Stmt visit(VarAssignStmt s,
                  java.lang.Object env)
Specified by:
visit in interface StmtRebuilder

visit

public Stmt visit(VarBitAssignStmt s,
                  java.lang.Object env)
Specified by:
visit in interface StmtRebuilder

visit

public Stmt visit(VarBitRangeAssignStmt s,
                  java.lang.Object env)
Specified by:
visit in interface StmtRebuilder