soot.jimple.spark.builder
Interface Parms


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(Stmt s, SootMethod target, java.util.Collection addedEdges)
          Adds a possible target of a call site.
 void addEdge(Node from, Node to)
          Add an edge from node from to node to.
 Node caseAnyType()
          Node representing allocation of any object of any type (for native stuff).
 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 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.
 void setCurrentMethod(SootMethod m)
          Must be called whenever starting to build graph for a new method.
 

Method Detail

setCurrentMethod

public void setCurrentMethod(SootMethod m)
Must be called whenever starting to build graph for a new method.


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.


caseAnyType

public Node caseAnyType()
Node representing allocation of any object of any type (for native stuff).


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(Stmt s,
                          SootMethod target,
                          java.util.Collection addedEdges)
Adds a possible target of a call site.