soot.jimple.spark.builder
Class MethodNodeFactory
java.lang.Object
soot.jimple.AbstractJimpleValueSwitch
soot.shimple.AbstractShimpleValueSwitch
soot.jimple.spark.builder.MethodNodeFactory
- All Implemented Interfaces:
- ConstantSwitch, ExprSwitch, JimpleValueSwitch, RefSwitch, ShimpleExprSwitch, ShimpleValueSwitch, Switch
- public class MethodNodeFactory
- extends AbstractShimpleValueSwitch
Class implementing builder parameters (this decides
what kinds of nodes should be built for each kind of Soot value).
- Author:
- Ondrej Lhotak
| Methods inherited from class soot.jimple.AbstractJimpleValueSwitch |
caseAddExpr, caseAndExpr, caseCmpExpr, caseCmpgExpr, caseCmplExpr, caseDivExpr, caseDoubleConstant, caseEqExpr, caseFloatConstant, caseGeExpr, caseGtExpr, caseInstanceOfExpr, caseIntConstant, caseInterfaceInvokeExpr, caseLeExpr, caseLengthExpr, caseLongConstant, caseLtExpr, caseMulExpr, caseNeExpr, caseNegExpr, caseOrExpr, caseRemExpr, caseShlExpr, caseShrExpr, caseSpecialInvokeExpr, caseStaticInvokeExpr, caseSubExpr, caseUshrExpr, caseVirtualInvokeExpr, caseXorExpr, getResult, setResult |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Methods inherited from interface soot.jimple.ExprSwitch |
caseAddExpr, caseAndExpr, caseCmpExpr, caseCmpgExpr, caseCmplExpr, caseDivExpr, caseEqExpr, caseGeExpr, caseGtExpr, caseInstanceOfExpr, caseInterfaceInvokeExpr, caseLeExpr, caseLengthExpr, caseLtExpr, caseMulExpr, caseNeExpr, caseNegExpr, caseOrExpr, caseRemExpr, caseShlExpr, caseShrExpr, caseSpecialInvokeExpr, caseStaticInvokeExpr, caseSubExpr, caseUshrExpr, caseVirtualInvokeExpr, caseXorExpr |
pag
protected PAG pag
mpag
protected MethodPAG mpag
method
protected SootMethod method
MethodNodeFactory
public MethodNodeFactory(PAG pag,
MethodPAG mpag)
getNode
public Node getNode(Value v)
handleStmt
public final void handleStmt(Stmt s)
- Adds the edges required for this statement to the graph.
getNode
public final Node getNode()
caseThis
public final Node caseThis()
caseParm
public final Node caseParm(int index)
casePhiExpr
public final void casePhiExpr(PhiExpr e)
- Specified by:
casePhiExpr in interface ShimpleExprSwitch- Overrides:
casePhiExpr in class AbstractShimpleValueSwitch
caseRet
public final Node caseRet()
caseArray
public final Node caseArray(VarNode base)
caseArrayRef
public final void caseArrayRef(ArrayRef ar)
- Specified by:
caseArrayRef in interface RefSwitch- Overrides:
caseArrayRef in class AbstractJimpleValueSwitch
caseCastExpr
public final void caseCastExpr(CastExpr ce)
- Specified by:
caseCastExpr in interface ExprSwitch- Overrides:
caseCastExpr in class AbstractJimpleValueSwitch
caseCaughtExceptionRef
public final void caseCaughtExceptionRef(CaughtExceptionRef cer)
- Specified by:
caseCaughtExceptionRef in interface RefSwitch- Overrides:
caseCaughtExceptionRef in class AbstractJimpleValueSwitch
caseInstanceFieldRef
public final void caseInstanceFieldRef(InstanceFieldRef ifr)
- Specified by:
caseInstanceFieldRef in interface RefSwitch- Overrides:
caseInstanceFieldRef in class AbstractJimpleValueSwitch
caseLocal
public final void caseLocal(Local l)
- Specified by:
caseLocal in interface JimpleValueSwitch- Overrides:
caseLocal in class AbstractJimpleValueSwitch
caseNewArrayExpr
public final void caseNewArrayExpr(NewArrayExpr nae)
- Specified by:
caseNewArrayExpr in interface ExprSwitch- Overrides:
caseNewArrayExpr in class AbstractJimpleValueSwitch
caseNewExpr
public final void caseNewExpr(NewExpr ne)
- Specified by:
caseNewExpr in interface ExprSwitch- Overrides:
caseNewExpr in class AbstractJimpleValueSwitch
caseNewMultiArrayExpr
public final void caseNewMultiArrayExpr(NewMultiArrayExpr nmae)
- Specified by:
caseNewMultiArrayExpr in interface ExprSwitch- Overrides:
caseNewMultiArrayExpr in class AbstractJimpleValueSwitch
caseParameterRef
public final void caseParameterRef(ParameterRef pr)
- Specified by:
caseParameterRef in interface RefSwitch- Overrides:
caseParameterRef in class AbstractJimpleValueSwitch
caseStaticFieldRef
public final void caseStaticFieldRef(StaticFieldRef sfr)
- Specified by:
caseStaticFieldRef in interface RefSwitch- Overrides:
caseStaticFieldRef in class AbstractJimpleValueSwitch
caseStringConstant
public final void caseStringConstant(StringConstant sc)
- Specified by:
caseStringConstant in interface ConstantSwitch- Overrides:
caseStringConstant in class AbstractJimpleValueSwitch
caseThisRef
public final void caseThisRef(ThisRef tr)
- Specified by:
caseThisRef in interface RefSwitch- Overrides:
caseThisRef in class AbstractJimpleValueSwitch
caseNullConstant
public final void caseNullConstant(NullConstant nr)
- Specified by:
caseNullConstant in interface ConstantSwitch- Overrides:
caseNullConstant in class AbstractJimpleValueSwitch
caseClassConstant
public final void caseClassConstant(ClassConstant cc)
- Specified by:
caseClassConstant in interface ConstantSwitch- Overrides:
caseClassConstant in class AbstractJimpleValueSwitch
defaultCase
public final void defaultCase(Object v)
- Specified by:
defaultCase in interface ConstantSwitch- Overrides:
defaultCase in class AbstractJimpleValueSwitch