ant.compiler.asm
Class NopEliminator

java.lang.Object
  extended byant.compiler.asm.Asm.AbstractVisitor
      extended byant.compiler.asm.Asm.AbstractDFSVisitor
          extended byant.compiler.asm.Asm.DFSPostorderVisitor
              extended byant.compiler.asm.NopEliminator
All Implemented Interfaces:
Asm.Visitor

public class NopEliminator
extends Asm.DFSPostorderVisitor

Eliminates Asm.Nop statements from a graph of Asm statements.

License: GPL

Author:
Bernhard Haumacher

Field Summary
(package private)  ErrorLog log
           
(package private)  Asm result
           
 
Fields inherited from class ant.compiler.asm.Asm.AbstractDFSVisitor
ops
 
Constructor Summary
NopEliminator(ErrorLog log)
           
 
Method Summary
 Asm getResult()
           
 void visit(Asm.Move op)
           
 void visit(Asm.Nop op)
           
 void visit(Asm.NopFoodTest op)
           
 void visit(Asm.NopWallTest op)
           
 void visit(Asm.PickUp op)
           
 void visitAsm(Asm op)
           
 
Methods inherited from class ant.compiler.asm.Asm.DFSPostorderVisitor
visitConditional, visitSequential
 
Methods inherited from class ant.compiler.asm.Asm.AbstractDFSVisitor
descendConditional, descendSequential, markVisited, reset, visited
 
Methods inherited from class ant.compiler.asm.Asm.AbstractVisitor
visit, visit, visit, visit, visit, visit
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

log

ErrorLog log

result

Asm result
Constructor Detail

NopEliminator

public NopEliminator(ErrorLog log)
Method Detail

getResult

public Asm getResult()

visitAsm

public void visitAsm(Asm op)
Overrides:
visitAsm in class Asm.AbstractVisitor

visit

public void visit(Asm.Nop op)
Specified by:
visit in interface Asm.Visitor
Overrides:
visit in class Asm.AbstractVisitor

visit

public void visit(Asm.Move op)
Specified by:
visit in interface Asm.Visitor
Overrides:
visit in class Asm.AbstractVisitor

visit

public void visit(Asm.PickUp op)
Specified by:
visit in interface Asm.Visitor
Overrides:
visit in class Asm.AbstractVisitor

visit

public void visit(Asm.NopWallTest op)
Specified by:
visit in interface Asm.Visitor
Overrides:
visit in class Asm.AbstractVisitor

visit

public void visit(Asm.NopFoodTest op)
Specified by:
visit in interface Asm.Visitor
Overrides:
visit in class Asm.AbstractVisitor