soot.jimple.toolkits.callgraph
Class CallGraphBuilder

java.lang.Object
  |
  +--soot.jimple.toolkits.callgraph.CallGraphBuilder

public final class CallGraphBuilder
extends java.lang.Object

Models the call graph.


Constructor Summary
CallGraphBuilder()
          This constructor builds the incomplete hack call graph for the Dava ThrowFinder.
CallGraphBuilder(PointsToAnalysis pa)
          This constructor builds a complete call graph using the given PointsToAnalysis to resolve virtual calls.
 
Method Summary
 void addType(Type t)
           
 void build()
           
 void doneStringConstants()
           
 void doneTypes()
           
 CallGraph getCallGraph()
           
 void getImplicitTargets(SootMethod source)
           
 void newStringConstant(Local l, java.lang.String name)
           
 ReachableMethods reachables()
           
 boolean wantStringConstants(Local l)
           
 boolean wantTypes(Local l)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

CallGraphBuilder

public CallGraphBuilder(PointsToAnalysis pa)
This constructor builds a complete call graph using the given PointsToAnalysis to resolve virtual calls.

CallGraphBuilder

public CallGraphBuilder()
This constructor builds the incomplete hack call graph for the Dava ThrowFinder. It uses all application class methods as entry points, and it ignores any calls by non-application class methods. Don't use this constructor if you need a real call graph.
Method Detail

reachables

public ReachableMethods reachables()

build

public void build()

wantTypes

public boolean wantTypes(Local l)

addType

public void addType(Type t)

doneTypes

public void doneTypes()

wantStringConstants

public boolean wantStringConstants(Local l)

newStringConstant

public void newStringConstant(Local l,
                              java.lang.String name)

doneStringConstants

public void doneStringConstants()

getCallGraph

public CallGraph getCallGraph()

getImplicitTargets

public void getImplicitTargets(SootMethod source)