de.unisaarland.cs.st.jerify.verifier.typestate
Class MethodCFGData

java.lang.Object
  extended by de.unisaarland.cs.st.jerify.verifier.typestate.MethodCFGData

public class MethodCFGData
extends java.lang.Object

Contains the control flow graph for a method

Author:
Daniel Wand (typestate@ewand.de)

Constructor Summary
MethodCFGData(javax.lang.model.element.Name name, TSFlowNode methodBegin, TSFlowNode methodEnd)
          Save the methodBegin and End node, the control flow graph must already be constructed
 
Method Summary
 void analyze(checkers.types.AnnotatedTypeFactory factory)
          Run the analysis on the control flow graph
 java.util.List<checkers.types.AnnotatedTypeMirror> getArgumentTypes()
          Returns the annotated type of the arguments of this method
 TSFlowNode getMethodBegin()
          The TSFlowNode that represents the method begin of the control flow graph
 TSFlowNode getMethodEnd()
          The TSFlowNode that represents the method end of the control flow graph
 javax.lang.model.element.Name getName()
          Return the method name
 void setArgumentTypes(java.util.List<checkers.types.AnnotatedTypeMirror> arguments)
          Set the annotated type of the arguments of this method
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MethodCFGData

public MethodCFGData(javax.lang.model.element.Name name,
                     TSFlowNode methodBegin,
                     TSFlowNode methodEnd)
Save the methodBegin and End node, the control flow graph must already be constructed

Parameters:
name - the method name
methodBegin - the TSFlowNode representing the method beginning
methodEnd - the TSFlowNode representing the method ending
Method Detail

getMethodBegin

public TSFlowNode getMethodBegin()
The TSFlowNode that represents the method begin of the control flow graph

Returns:
the method begin node

getMethodEnd

public TSFlowNode getMethodEnd()
The TSFlowNode that represents the method end of the control flow graph

Returns:
the method end node

getArgumentTypes

public java.util.List<checkers.types.AnnotatedTypeMirror> getArgumentTypes()
Returns the annotated type of the arguments of this method

Returns:

setArgumentTypes

public void setArgumentTypes(java.util.List<checkers.types.AnnotatedTypeMirror> arguments)
Set the annotated type of the arguments of this method

Parameters:
arguments -

getName

public javax.lang.model.element.Name getName()
Return the method name

Returns:
the method name

analyze

public void analyze(checkers.types.AnnotatedTypeFactory factory)
Run the analysis on the control flow graph

Parameters:
factory - the AnnotatedTypeFactory