vasco
Class DataFlowSolution<N,A>

java.lang.Object
  extended by vasco.DataFlowSolution<N,A>
Type Parameters:
N - the type of a node in the CFG
A - the type of a data flow value

public class DataFlowSolution<N,A>
extends Object

A mapping of program points to results of data flow analysis.

This simple mapping does not parametrise solutions with a context object, and is thus context-insensitive. The results of a context-sensitive inter-procedural analysis can be reduced to this form by merging results for the same program point across all contexts, giving what is known as the Meet-Over-Valid-Paths solution.

Author:
Rohan Padhye

Constructor Summary
DataFlowSolution(Map<N,A> inValues, Map<N,A> outValues)
          Constructs a data flow solution with the given IN and OUT values.
 
Method Summary
 A getValueAfter(N node)
          Returns the data flow value at the exit of a node.
 A getValueBefore(N node)
          Returns the data flow value at the entry of a node.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DataFlowSolution

public DataFlowSolution(Map<N,A> inValues,
                        Map<N,A> outValues)
Constructs a data flow solution with the given IN and OUT values.

Parameters:
inValues - a map of nodes to data flow values at their entry
outValues - a map of nodes to data flow values at their exit
Method Detail

getValueBefore

public A getValueBefore(N node)
Returns the data flow value at the entry of a node.

Parameters:
node - a program point
Returns:
the data flow value at the entry of node

getValueAfter

public A getValueAfter(N node)
Returns the data flow value at the exit of a node.

Parameters:
node - a program point
Returns:
the data flow value at the exit of node