de.unisaarland.cs.st.jerify.verifier.cfg.flownodes.typestate
Class TSStateFilterNode

java.lang.Object
  extended by de.unisaarland.cs.st.jerify.verifier.cfg.flownodes.FlowNode<MethodTypestateAnalysis>
      extended by de.unisaarland.cs.st.jerify.verifier.cfg.flownodes.typestate.TSFlowNode
          extended by de.unisaarland.cs.st.jerify.verifier.cfg.flownodes.typestate.TSStateChangingFlowNode
              extended by de.unisaarland.cs.st.jerify.verifier.cfg.flownodes.typestate.TSStateFilterNode

public class TSStateFilterNode
extends TSStateChangingFlowNode

This node represents typestate definition. E.g. This object is now in state "Open".

Author:
Daniel Wand (typestate@ewand.de)

Constructor Summary
TSStateFilterNode(AliasAnalysisVarHandle var, com.sun.source.tree.Tree tree, java.util.Collection<java.lang.String> filterStates)
           
TSStateFilterNode(AliasAnalysisVarHandle var, com.sun.source.tree.Tree tree, java.lang.String filterState)
           
 
Method Summary
 void forwardAnalysis(CFGAnalysis<MethodTypestateAnalysis> newAnalysis)
           
 void printAll()
          print all nodes of this cfg (all reachable)
 java.lang.String toString()
           
 
Methods inherited from class de.unisaarland.cs.st.jerify.verifier.cfg.flownodes.typestate.TSStateChangingFlowNode
analyseRequireState, analyseRequireState, getAllStateChanges, getAllStateChangesFromSet, getAllStateChangesToSet, getChangeState, getSetStateFlowNode, TSFlowNodefromAnnotatedTree, TSFlowNodefromAnnotatedType
 
Methods inherited from class de.unisaarland.cs.st.jerify.verifier.cfg.flownodes.typestate.TSFlowNode
getDummyNode, getFixpointNode
 
Methods inherited from class de.unisaarland.cs.st.jerify.verifier.cfg.flownodes.FlowNode
addSuccessor, hasSuccessors
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

TSStateFilterNode

public TSStateFilterNode(AliasAnalysisVarHandle var,
                         com.sun.source.tree.Tree tree,
                         java.lang.String filterState)
Parameters:
var - The alias handle that represents the variable which state is changed by this transition
tree - The source code that cause the creation of this node (for error reporting)
stateSetTo - The state to set

TSStateFilterNode

public TSStateFilterNode(AliasAnalysisVarHandle var,
                         com.sun.source.tree.Tree tree,
                         java.util.Collection<java.lang.String> filterStates)
Parameters:
var - The alias handle that represents the variable which state is changed by this transition
tree - The source code that cause the creation of this node (for error reporting)
stateSetTo - The state to set
Method Detail

toString

public final java.lang.String toString()
Specified by:
toString in class FlowNode<MethodTypestateAnalysis>

printAll

public final void printAll()
Description copied from class: FlowNode
print all nodes of this cfg (all reachable)

Overrides:
printAll in class FlowNode<MethodTypestateAnalysis>

forwardAnalysis

public final void forwardAnalysis(CFGAnalysis<MethodTypestateAnalysis> newAnalysis)
Specified by:
forwardAnalysis in class FlowNode<MethodTypestateAnalysis>