coins.flow
Class BBlockSubtreeIteratorImpl

java.lang.Object
  extended bycoins.flow.BBlockSubtreeIteratorImpl
All Implemented Interfaces:
BBlockSubtreeIterator
Direct Known Subclasses:
BBlockHirSubtreeIteratorImpl

public class BBlockSubtreeIteratorImpl
extends java.lang.Object
implements BBlockSubtreeIterator

BBlockSubtreeIteratorImpl class Basic block subtree iterator to traverse HIR top-subtrees in a basic block.


Field Summary
protected  HIR fCurrSubtree
           
protected  int fDbgLevel
           
protected  boolean fHeaderPassed
           
 FlowRoot flowRoot
           
protected  int fNextStmtIndex
           
protected  HIR fNextSubtree
           
protected  SubpFlow fSubpFlow
           
 IoRoot ioRoot
           
 
Constructor Summary
BBlockSubtreeIteratorImpl(FlowRoot pFlowRoot, BBlock pBBlock)
           
 
Method Summary
protected  HIR getNextSubtree(HIR pHir, boolean pGet)
           
 boolean hasNext()
          hasNext
 IR next()
          next: Get the next top subtree in the specified basic block.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

flowRoot

public final FlowRoot flowRoot

ioRoot

public final IoRoot ioRoot

fSubpFlow

protected SubpFlow fSubpFlow

fNextStmtIndex

protected int fNextStmtIndex

fHeaderPassed

protected boolean fHeaderPassed

fCurrSubtree

protected HIR fCurrSubtree

fNextSubtree

protected HIR fNextSubtree

fDbgLevel

protected final int fDbgLevel
Constructor Detail

BBlockSubtreeIteratorImpl

public BBlockSubtreeIteratorImpl(FlowRoot pFlowRoot,
                                 BBlock pBBlock)
Method Detail

next

public IR next()
next: Get the next top subtree in the specified basic block. If no one is left, return null.

Specified by:
next in interface BBlockSubtreeIterator

hasNext

public boolean hasNext()
Description copied from interface: BBlockSubtreeIterator
hasNext

Specified by:
hasNext in interface BBlockSubtreeIterator
Returns:
true if there remains thte next top subtree in the basic block.

getNextSubtree

protected HIR getNextSubtree(HIR pHir,
                             boolean pGet)