soot.jimple.toolkits.invoke
Class VariableTypeAnalysis

java.lang.Object
  |
  +--soot.jimple.toolkits.invoke.VariableTypeAnalysis
All Implemented Interfaces:
PointsToAnalysis

public class VariableTypeAnalysis
extends java.lang.Object
implements PointsToAnalysis

An implementation of Variable Type Analysis (as defined in Vijay Sundaresan's thesis).


Field Summary
 
Fields inherited from interface soot.jimple.spark.PointsToAnalysis
ARRAY_ELEMENTS_NODE, CAST_NODE, EXCEPTION_NODE, RETURN_NODE, RETURN_STRING_CONSTANT_NODE, STRING_ARRAY_NODE, STRING_ARRAY_NODE_LOCAL, STRING_NODE, STRING_NODE_LOCAL, THIS_NODE, THROW_NODE
 
Constructor Summary
VariableTypeAnalysis(InvokeGraph ig)
          Constructs a VariableTypeAnalysis object for the given InvokeGraph.
 
Method Summary
 java.util.List getReachingTypesOf(java.lang.Object o)
           
 PointsToSet reachingObjects(SootMethod m, Stmt stmt, Local l)
          Returns the set of objects reaching variable l before stmt in method.
 void trimActiveInvokeGraph()
          Uses the results of this analysis to trim the active invoke graph.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

VariableTypeAnalysis

public VariableTypeAnalysis(InvokeGraph ig)
Constructs a VariableTypeAnalysis object for the given InvokeGraph. Calling trimInvokeGraph will modify the associated invokeGraph according to this VTA's results.

Method Detail

getReachingTypesOf

public java.util.List getReachingTypesOf(java.lang.Object o)

trimActiveInvokeGraph

public void trimActiveInvokeGraph()
Uses the results of this analysis to trim the active invoke graph.


reachingObjects

public PointsToSet reachingObjects(SootMethod m,
                                   Stmt stmt,
                                   Local l)
Description copied from interface: PointsToAnalysis
Returns the set of objects reaching variable l before stmt in method.

Specified by:
reachingObjects in interface PointsToAnalysis