soot.jimple.toolkits.callgraph
Class OnFlyCallGraphBuilder

java.lang.Object
  extended by soot.jimple.toolkits.callgraph.OnFlyCallGraphBuilder

public final class OnFlyCallGraphBuilder
extends Object

Models the call graph.

Author:
Ondrej Lhotak

Nested Class Summary
 class OnFlyCallGraphBuilder.DefaultReflectionModel
           
 class OnFlyCallGraphBuilder.TraceBasedReflectionModel
           
 
Field Summary
protected  RefType clRunnable
           
protected  NumberedString sigFinalize
           
protected  NumberedString sigForName
           
protected  NumberedString sigInit
           
protected  NumberedString sigObjRun
           
protected  NumberedString sigRun
           
protected  NumberedString sigStart
           
 
Constructor Summary
OnFlyCallGraphBuilder(ContextManager cm, ReachableMethods rm)
           
OnFlyCallGraphBuilder(ContextManager cm, ReachableMethods rm, boolean appOnly)
           
 
Method Summary
 void addStringConstant(Local l, Context srcContext, String constant)
           
 void addType(Local receiver, Context srcContext, Type type, Context typeContext)
           
 LargeNumberedMap methodToReceivers()
           
 LargeNumberedMap methodToStringConstants()
           
 void processReachables()
           
 boolean wantStringConstants(Local stringConst)
           
 boolean wantTypes(Local receiver)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

sigFinalize

protected final NumberedString sigFinalize

sigInit

protected final NumberedString sigInit

sigStart

protected final NumberedString sigStart

sigRun

protected final NumberedString sigRun

sigObjRun

protected final NumberedString sigObjRun

sigForName

protected final NumberedString sigForName

clRunnable

protected final RefType clRunnable
Constructor Detail

OnFlyCallGraphBuilder

public OnFlyCallGraphBuilder(ContextManager cm,
                             ReachableMethods rm)

OnFlyCallGraphBuilder

public OnFlyCallGraphBuilder(ContextManager cm,
                             ReachableMethods rm,
                             boolean appOnly)
Method Detail

methodToReceivers

public LargeNumberedMap methodToReceivers()

methodToStringConstants

public LargeNumberedMap methodToStringConstants()

processReachables

public void processReachables()

wantTypes

public boolean wantTypes(Local receiver)

addType

public void addType(Local receiver,
                    Context srcContext,
                    Type type,
                    Context typeContext)

wantStringConstants

public boolean wantStringConstants(Local stringConst)

addStringConstant

public void addStringConstant(Local l,
                              Context srcContext,
                              String constant)