net.sourceforge.pmd.dfa
Class Structure

java.lang.Object
  extended by net.sourceforge.pmd.dfa.Structure

public class Structure
extends java.lang.Object

Author:
raik

Structure contains only raw data. A set of nodes wich represent a data flow and 2 stacks to link the nodes to each other.


Constructor Summary
Structure()
           
 
Method Summary
 IDataFlowNode createEndNode(int line)
           
 IDataFlowNode createNewNode(SimpleNode node)
          This class encapsulates the access to the DataFlowNode class.
 IDataFlowNode createStartNode(int line)
           
 java.util.List getBraceStack()
           
 java.util.List getContinueBreakReturnStack()
           
 IDataFlowNode getFirst()
           
 IDataFlowNode getLast()
           
protected  void pushOnStack(int type, IDataFlowNode node)
          The braceStack contains all nodes which are important to link the data flow nodes.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Structure

public Structure()
Method Detail

createNewNode

public IDataFlowNode createNewNode(SimpleNode node)
This class encapsulates the access to the DataFlowNode class. Is this worthwhile? TODO I think it's too confusing to have the DataFlowNode constructor add the created instance to the LinkedList. I think it'd be clearer if we did that more "procedurally", i.e., create the object, then add it to the list.


createStartNode

public IDataFlowNode createStartNode(int line)

createEndNode

public IDataFlowNode createEndNode(int line)

getLast

public IDataFlowNode getLast()

getFirst

public IDataFlowNode getFirst()

pushOnStack

protected void pushOnStack(int type,
                           IDataFlowNode node)
The braceStack contains all nodes which are important to link the data flow nodes. The cbrStack contains continue, break, and return nodes. There are 2 Stacks because the have to process differently.


getBraceStack

public java.util.List getBraceStack()

getContinueBreakReturnStack

public java.util.List getContinueBreakReturnStack()


Copyright © 2002-2011 InfoEther. All Rights Reserved.