soot.jimple.spark.builder
Interface Parms

All Known Implementing Classes:
StandardParms

public interface Parms

Generic interface to a class implementing builder parameters (this decides what kinds of nodes should be built for each kind of Soot value).


Method Summary
 void addCallTarget(Edge e)
          Adds a possible target of a call site.
 void addCallTarget(Stmt s, SootMethod target, java.lang.Object varNodeParameter)
          Adds a possible target of a call site.
 void addEdge(Node from, Node to)
          Add an edge from node from to node to.
 Node caseArgv()
          Node for the argv array parameter to main.
 Node caseArray(java.lang.Object base, ArrayType arrayType)
          Node for elements of array base of type arrayType.
 Node caseDefaultClassLoader()
          Node for the default ClassLoader, created by the VM.
 Node caseMainClassNameString()
          Node for the String holding the name of the main class, created by the VM and passed to the class loader.
 Node caseMainThread()
          Node for the main thread of the program, created by the VM.
 Node caseMainThreadGroup()
          Node for the main ThreadGroup of the program, created by the VM.
 Node caseParm(SootMethod m, int index)
          Node for index'th parameter of method m.
 Node caseRet(SootMethod m)
          Return node for method m.
 Node caseThis(SootMethod m)
          This node for method m.
 void handleStmt(Stmt s)
          Build the edges for the statement s.
 

Method Detail

handleStmt

public void handleStmt(Stmt s)
Build the edges for the statement s.

addEdge

public void addEdge(Node from,
                    Node to)
Add an edge from node from to node to.

caseArgv

public Node caseArgv()
Node for the argv array parameter to main.

caseMainThread

public Node caseMainThread()
Node for the main thread of the program, created by the VM.

caseMainThreadGroup

public Node caseMainThreadGroup()
Node for the main ThreadGroup of the program, created by the VM.

caseDefaultClassLoader

public Node caseDefaultClassLoader()
Node for the default ClassLoader, created by the VM.

caseMainClassNameString

public Node caseMainClassNameString()
Node for the String holding the name of the main class, created by the VM and passed to the class loader.

caseThis

public Node caseThis(SootMethod m)
This node for method m.

caseParm

public Node caseParm(SootMethod m,
                     int index)
Node for index'th parameter of method m.

caseRet

public Node caseRet(SootMethod m)
Return node for method m.

caseArray

public Node caseArray(java.lang.Object base,
                      ArrayType arrayType)
Node for elements of array base of type arrayType.

addCallTarget

public void addCallTarget(Edge e)
Adds a possible target of a call site.

addCallTarget

public void addCallTarget(Stmt s,
                          SootMethod target,
                          java.lang.Object varNodeParameter)
Adds a possible target of a call site.