soot.jimple
Class Jimple

java.lang.Object
  extended by soot.jimple.Jimple

public class Jimple
extends Object

The Jimple class contains all the constructors for the components of the Jimple grammar for the Jimple body.

Immediate -> Local | Constant
RValue -> Local | Constant | ConcreteRef | Expr
Variable -> Local | ArrayRef | InstanceFieldRef | StaticFieldRef


Field Summary
static String ABSTRACT
           
static String ANNOTATION
           
static String BOOLEAN
           
static String BREAK
           
static String BREAKPOINT
           
static String BYTE
           
static String CASE
           
static String CATCH
           
static String CHAR
           
static String CLASS
           
static String CLS
           
static String CMP
           
static String CMPG
           
static String CMPL
           
static String DEFAULT
           
static String DOUBLE
           
static String DYNAMICINVOKE
           
static String ENTERMONITOR
           
static String ENUM
           
static String EXITMONITOR
           
static String EXTENDS
           
static String FALSE
           
static String FINAL
           
static String FLOAT
           
static String FROM
           
static String GOTO
           
static String IF
           
static String IMPLEMENTS
           
static String INSTANCEOF
           
static String INT
           
static String INTERFACE
           
static String INTERFACEINVOKE
           
static String LENGTHOF
           
static String LONG
           
static String LOOKUPSWITCH
           
static String NATIVE
           
static String NEG
           
static String NEW
           
static String NEWARRAY
           
static String NEWMULTIARRAY
           
static String NOP
           
static String NULL
           
static String NULL_TYPE
           
static String PRIVATE
           
static String PROTECTED
           
static String PUBLIC
           
static String RET
           
static String RETURN
           
static String SHORT
           
static String SPECIALINVOKE
           
static String STATIC
           
static String STATICINVOKE
           
static String STRICTFP
           
static String SYNCHRONIZED
           
static String TABLESWITCH
           
static String THROW
           
static String THROWS
           
static String TO
           
static String TRANSIENT
           
static String TRUE
           
static String UNKNOWN
           
static String VIRTUALINVOKE
           
static String VOID
           
static String VOLATILE
           
static String WITH
           
 
Constructor Summary
Jimple(Singletons.Global g)
           
 
Method Summary
static Value cloneIfNecessary(Value val)
           
static boolean isJavaKeywordType(Type t)
           
static List<String> jimpleKeywordList()
           
 AddExpr newAddExpr(Value op1, Value op2)
          Constructs a AddExpr(Immediate, Immediate) grammar chunk.
 AndExpr newAndExpr(Value op1, Value op2)
          Constructs a AndExpr(Immediate, Immediate) grammar chunk.
 ValueBox newArgBox(Value value)
           
 ArrayRef newArrayRef(Value base, Value index)
          Constructs a ArrayRef(Local, Immediate) grammar chunk.
 AssignStmt newAssignStmt(Value variable, Value rvalue)
          Constructs a AssignStmt(Variable, RValue) grammar chunk.
 JimpleBody newBody()
          Returns an empty JimpleBody with no associated method.
 JimpleBody newBody(SootMethod m)
          Returns an empty JimpleBody associated with method m.
 BreakpointStmt newBreakpointStmt()
          Constructs a BreakpointStmt() grammar chunk.
 CastExpr newCastExpr(Value op1, Type t)
          Constructs a CastExpr(Immediate, Type) grammar chunk.
 CaughtExceptionRef newCaughtExceptionRef()
          Constructs a CaughtExceptionRef() grammar chunk.
 CmpExpr newCmpExpr(Value op1, Value op2)
          Constructs a CmpExpr(Immediate, Immediate) grammar chunk.
 CmpgExpr newCmpgExpr(Value op1, Value op2)
          Constructs a CmpgExpr(Immediate, Immediate) grammar chunk.
 CmplExpr newCmplExpr(Value op1, Value op2)
          Constructs a CmplExpr(Immediate, Immediate) grammar chunk.
 ValueBox newConditionExprBox(Value value)
           
 DivExpr newDivExpr(Value op1, Value op2)
          Constructs a DivExpr(Immediate, Immediate) grammar chunk.
 DynamicInvokeExpr newDynamicInvokeExpr(SootMethodRef bootstrapMethodRef, List bootstrapArgs, SootMethodRef methodRef, List args)
          Constructs a NewDynamicInvokeExpr(SootMethodRef bootstrapMethodRef, List bootstrapArgs, SootMethodRef methodRef, List args) grammar chunk.
 EnterMonitorStmt newEnterMonitorStmt(Value op)
          Constructs a EnterMonitorStmt(Immediate) grammar chunk.
 EqExpr newEqExpr(Value op1, Value op2)
          Constructs a EqExpr(Immediate, Immediate) grammar chunk.
 ExitMonitorStmt newExitMonitorStmt(Value op)
          Constructs a ExitMonitorStmt(Immediate) grammar chunk
 GeExpr newGeExpr(Value op1, Value op2)
          Constructs a GeExpr(Immediate, Immediate) grammar chunk.
 GotoStmt newGotoStmt(Unit target)
          Constructs a GotoStmt(Stmt) grammar chunk.
 GotoStmt newGotoStmt(UnitBox stmtBox)
           
 GtExpr newGtExpr(Value op1, Value op2)
          Constructs a GtExpr(Immediate, Immediate) grammar chunk.
 ValueBox newIdentityRefBox(Value value)
           
 IdentityStmt newIdentityStmt(Value local, Value identityRef)
          Constructs a IdentityStmt(Local, IdentityRef) grammar chunk.
 IfStmt newIfStmt(Value condition, Unit target)
          Constructs a IfStmt(Condition, Stmt) grammar chunk.
 IfStmt newIfStmt(Value condition, UnitBox target)
           
 ValueBox newImmediateBox(Value value)
           
 InstanceFieldRef newInstanceFieldRef(Value base, SootFieldRef f)
          Constructs a InstanceFieldRef(Local, SootFieldRef) grammar chunk.
 InstanceOfExpr newInstanceOfExpr(Value op1, Type t)
          Constructs a InstanceOfExpr(Immediate, Type) grammar chunk.
 InterfaceInvokeExpr newInterfaceInvokeExpr(Local base, SootMethodRef method)
          Constructs a NewInterfaceInvokeExpr(Local base, SootMethodRef method, List of Immediate) grammar chunk.
 InterfaceInvokeExpr newInterfaceInvokeExpr(Local base, SootMethodRef method, List args)
          Constructs a NewInterfaceInvokeExpr(Local base, SootMethodRef method, List of Immediate) grammar chunk.
 InterfaceInvokeExpr newInterfaceInvokeExpr(Local base, SootMethodRef method, Value arg)
          Constructs a NewInterfaceInvokeExpr(Local base, SootMethodRef method, List of Immediate) grammar chunk.
 InterfaceInvokeExpr newInterfaceInvokeExpr(Local base, SootMethodRef method, Value arg1, Value arg2)
          Constructs a NewInterfaceInvokeExpr(Local base, SootMethodRef method, List of Immediate) grammar chunk.
 ValueBox newInvokeExprBox(Value value)
           
 InvokeStmt newInvokeStmt(Value op)
          Constructs a InvokeStmt(InvokeExpr) grammar chunk.
 LeExpr newLeExpr(Value op1, Value op2)
          Constructs a LeExpr(Immediate, Immediate) grammar chunk.
 LengthExpr newLengthExpr(Value op)
          Constructs a LengthExpr(Immediate) grammar chunk.
 Local newLocal(String name, Type t)
          Constructs a Local with the given name and type.
 ValueBox newLocalBox(Value value)
           
 LookupSwitchStmt newLookupSwitchStmt(Value key, List<Object> lookupValues, List<Object> targets, UnitBox defaultTarget)
           
 LookupSwitchStmt newLookupSwitchStmt(Value key, List lookupValues, List targets, Unit defaultTarget)
          Constructs a LookupSwitchStmt(Immediate, List of Immediate, List of Unit, Stmt) grammar chunk.
 LtExpr newLtExpr(Value op1, Value op2)
          Constructs a LtExpr(Immediate, Immediate) grammar chunk.
 MulExpr newMulExpr(Value op1, Value op2)
          Constructs a MulExpr(Immediate, Immediate) grammar chunk.
 NeExpr newNeExpr(Value op1, Value op2)
          Constructs a NeExpr(Immediate, Immediate) grammar chunk.
 NegExpr newNegExpr(Value op)
          Constructs a NegExpr(Immediate, Immediate) grammar chunk.
 NewArrayExpr newNewArrayExpr(Type type, Value size)
          Constructs a NewArrayExpr(Type, Immediate) grammar chunk.
 NewExpr newNewExpr(RefType type)
          Constructs a NewExpr(RefType) grammar chunk.
 NewMultiArrayExpr newNewMultiArrayExpr(ArrayType type, List sizes)
          Constructs a NewMultiArrayExpr(ArrayType, List of Immediate) grammar chunk.
 NopStmt newNopStmt()
          Constructs a NopStmt() grammar chunk.
 OrExpr newOrExpr(Value op1, Value op2)
          Constructs a OrExpr(Immediate, Immediate) grammar chunk.
 ParameterRef newParameterRef(Type paramType, int number)
          Constructs a ParameterRef(SootMethod, int) grammar chunk.
 RemExpr newRemExpr(Value op1, Value op2)
          Constructs a RemExpr(Immediate, Immediate) grammar chunk.
 RetStmt newRetStmt(Value stmtAddress)
          Constructs a RetStmt(Local) grammar chunk.
 ReturnStmt newReturnStmt(Value op)
          Constructs a ReturnStmt(Immediate) grammar chunk.
 ReturnVoidStmt newReturnVoidStmt()
          Constructs a ReturnVoidStmt() grammar chunk.
 ValueBox newRValueBox(Value value)
           
 ShlExpr newShlExpr(Value op1, Value op2)
          Constructs a ShlExpr(Immediate, Immediate) grammar chunk.
 ShrExpr newShrExpr(Value op1, Value op2)
          Constructs a ShrExpr(Immediate, Immediate) grammar chunk.
 SpecialInvokeExpr newSpecialInvokeExpr(Local base, SootMethodRef method)
          Constructs a NewSpecialInvokeExpr(Local base, SootMethodRef method, List of Immediate) grammar chunk.
 SpecialInvokeExpr newSpecialInvokeExpr(Local base, SootMethodRef method, List args)
          Constructs a NewSpecialInvokeExpr(Local base, SootMethodRef method, List of Immediate) grammar chunk.
 SpecialInvokeExpr newSpecialInvokeExpr(Local base, SootMethodRef method, Value arg)
          Constructs a NewSpecialInvokeExpr(Local base, SootMethodRef method, List of Immediate) grammar chunk.
 SpecialInvokeExpr newSpecialInvokeExpr(Local base, SootMethodRef method, Value arg1, Value arg2)
          Constructs a NewSpecialInvokeExpr(Local base, SootMethodRef method, List of Immediate) grammar chunk.
 StaticFieldRef newStaticFieldRef(SootFieldRef f)
          Constructs a StaticFieldRef(SootFieldRef) grammar chunk.
 StaticInvokeExpr newStaticInvokeExpr(SootMethodRef method)
          Constructs a NewStaticInvokeExpr(ArrayType, List of Immediate) grammar chunk.
 StaticInvokeExpr newStaticInvokeExpr(SootMethodRef method, List args)
           
 StaticInvokeExpr newStaticInvokeExpr(SootMethodRef method, Value... args)
          Constructs a NewStaticInvokeExpr(ArrayType, List of Immediate) grammar chunk.
 StaticInvokeExpr newStaticInvokeExpr(SootMethodRef method, Value arg1, Value arg2)
          Constructs a NewStaticInvokeExpr(ArrayType, List of Immediate) grammar chunk.
 UnitBox newStmtBox(Unit unit)
           
 SubExpr newSubExpr(Value op1, Value op2)
          Constructs a SubExpr(Immediate, Immediate) grammar chunk.
 TableSwitchStmt newTableSwitchStmt(Value key, int lowIndex, int highIndex, List<Object> targets, UnitBox defaultTarget)
           
 TableSwitchStmt newTableSwitchStmt(Value key, int lowIndex, int highIndex, List targets, Unit defaultTarget)
          Constructs a TableSwitchStmt(Immediate, int, int, List of Unit, Stmt) grammar chunk.
 ThisRef newThisRef(RefType t)
          Constructs a ThisRef(RefType) grammar chunk.
 ThrowStmt newThrowStmt(Value op)
          Constructs a ThrowStmt(Immediate) grammar chunk.
 Trap newTrap(SootClass exception, UnitBox beginStmt, UnitBox endStmt, UnitBox handlerStmt)
           
 Trap newTrap(SootClass exception, Unit beginStmt, Unit endStmt, Unit handlerStmt)
          Constructs a new JTrap for the given exception on the given Stmt range with the given Stmt handler.
 UshrExpr newUshrExpr(Value op1, Value op2)
          Constructs a UshrExpr(Immediate, Immediate) grammar chunk.
 ValueBox newVariableBox(Value value)
           
 VirtualInvokeExpr newVirtualInvokeExpr(Local base, SootMethodRef method)
          Constructs a NewVirtualInvokeExpr(Local base, SootMethodRef method, List of Immediate) grammar chunk.
 VirtualInvokeExpr newVirtualInvokeExpr(Local base, SootMethodRef method, List args)
          Constructs a NewVirtualInvokeExpr(Local base, SootMethodRef method, List of Immediate) grammar chunk.
 VirtualInvokeExpr newVirtualInvokeExpr(Local base, SootMethodRef method, Value arg)
          Constructs a NewVirtualInvokeExpr(Local base, SootMethodRef method, List of Immediate) grammar chunk.
 VirtualInvokeExpr newVirtualInvokeExpr(Local base, SootMethodRef method, Value arg1, Value arg2)
          Constructs a NewVirtualInvokeExpr(Local base, SootMethodRef method, List of Immediate) grammar chunk.
 XorExpr newXorExpr(Value op1, Value op2)
          Constructs a XorExpr(Immediate, Immediate) grammar chunk.
static Jimple v()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

NEWARRAY

public static final String NEWARRAY
See Also:
Constant Field Values

NEWMULTIARRAY

public static final String NEWMULTIARRAY
See Also:
Constant Field Values

NOP

public static final String NOP
See Also:
Constant Field Values

RET

public static final String RET
See Also:
Constant Field Values

SPECIALINVOKE

public static final String SPECIALINVOKE
See Also:
Constant Field Values

DYNAMICINVOKE

public static final String DYNAMICINVOKE
See Also:
Constant Field Values

STATICINVOKE

public static final String STATICINVOKE
See Also:
Constant Field Values

TABLESWITCH

public static final String TABLESWITCH
See Also:
Constant Field Values

VIRTUALINVOKE

public static final String VIRTUALINVOKE
See Also:
Constant Field Values

NULL_TYPE

public static final String NULL_TYPE
See Also:
Constant Field Values

UNKNOWN

public static final String UNKNOWN
See Also:
Constant Field Values

CMP

public static final String CMP
See Also:
Constant Field Values

CMPG

public static final String CMPG
See Also:
Constant Field Values

CMPL

public static final String CMPL
See Also:
Constant Field Values

ENTERMONITOR

public static final String ENTERMONITOR
See Also:
Constant Field Values

EXITMONITOR

public static final String EXITMONITOR
See Also:
Constant Field Values

INTERFACEINVOKE

public static final String INTERFACEINVOKE
See Also:
Constant Field Values

LENGTHOF

public static final String LENGTHOF
See Also:
Constant Field Values

LOOKUPSWITCH

public static final String LOOKUPSWITCH
See Also:
Constant Field Values

NEG

public static final String NEG
See Also:
Constant Field Values

IF

public static final String IF
See Also:
Constant Field Values

ABSTRACT

public static final String ABSTRACT
See Also:
Constant Field Values

BOOLEAN

public static final String BOOLEAN
See Also:
Constant Field Values

BREAK

public static final String BREAK
See Also:
Constant Field Values

BYTE

public static final String BYTE
See Also:
Constant Field Values

CASE

public static final String CASE
See Also:
Constant Field Values

CATCH

public static final String CATCH
See Also:
Constant Field Values

CHAR

public static final String CHAR
See Also:
Constant Field Values

CLASS

public static final String CLASS
See Also:
Constant Field Values

FINAL

public static final String FINAL
See Also:
Constant Field Values

NATIVE

public static final String NATIVE
See Also:
Constant Field Values

PUBLIC

public static final String PUBLIC
See Also:
Constant Field Values

PROTECTED

public static final String PROTECTED
See Also:
Constant Field Values

PRIVATE

public static final String PRIVATE
See Also:
Constant Field Values

STATIC

public static final String STATIC
See Also:
Constant Field Values

SYNCHRONIZED

public static final String SYNCHRONIZED
See Also:
Constant Field Values

TRANSIENT

public static final String TRANSIENT
See Also:
Constant Field Values

VOLATILE

public static final String VOLATILE
See Also:
Constant Field Values

STRICTFP

public static final String STRICTFP
See Also:
Constant Field Values

ENUM

public static final String ENUM
See Also:
Constant Field Values

ANNOTATION

public static final String ANNOTATION
See Also:
Constant Field Values

INTERFACE

public static final String INTERFACE
See Also:
Constant Field Values

VOID

public static final String VOID
See Also:
Constant Field Values

SHORT

public static final String SHORT
See Also:
Constant Field Values

INT

public static final String INT
See Also:
Constant Field Values

LONG

public static final String LONG
See Also:
Constant Field Values

FLOAT

public static final String FLOAT
See Also:
Constant Field Values

DOUBLE

public static final String DOUBLE
See Also:
Constant Field Values

EXTENDS

public static final String EXTENDS
See Also:
Constant Field Values

IMPLEMENTS

public static final String IMPLEMENTS
See Also:
Constant Field Values

BREAKPOINT

public static final String BREAKPOINT
See Also:
Constant Field Values

DEFAULT

public static final String DEFAULT
See Also:
Constant Field Values

GOTO

public static final String GOTO
See Also:
Constant Field Values

INSTANCEOF

public static final String INSTANCEOF
See Also:
Constant Field Values

NEW

public static final String NEW
See Also:
Constant Field Values

RETURN

public static final String RETURN
See Also:
Constant Field Values

THROW

public static final String THROW
See Also:
Constant Field Values

THROWS

public static final String THROWS
See Also:
Constant Field Values

NULL

public static final String NULL
See Also:
Constant Field Values

FROM

public static final String FROM
See Also:
Constant Field Values

TO

public static final String TO
See Also:
Constant Field Values

WITH

public static final String WITH
See Also:
Constant Field Values

CLS

public static final String CLS
See Also:
Constant Field Values

TRUE

public static final String TRUE
See Also:
Constant Field Values

FALSE

public static final String FALSE
See Also:
Constant Field Values
Constructor Detail

Jimple

public Jimple(Singletons.Global g)
Method Detail

v

public static Jimple v()

jimpleKeywordList

public static List<String> jimpleKeywordList()

isJavaKeywordType

public static boolean isJavaKeywordType(Type t)

cloneIfNecessary

public static Value cloneIfNecessary(Value val)

newXorExpr

public XorExpr newXorExpr(Value op1,
                          Value op2)
Constructs a XorExpr(Immediate, Immediate) grammar chunk.


newUshrExpr

public UshrExpr newUshrExpr(Value op1,
                            Value op2)
Constructs a UshrExpr(Immediate, Immediate) grammar chunk.


newSubExpr

public SubExpr newSubExpr(Value op1,
                          Value op2)
Constructs a SubExpr(Immediate, Immediate) grammar chunk.


newShrExpr

public ShrExpr newShrExpr(Value op1,
                          Value op2)
Constructs a ShrExpr(Immediate, Immediate) grammar chunk.


newShlExpr

public ShlExpr newShlExpr(Value op1,
                          Value op2)
Constructs a ShlExpr(Immediate, Immediate) grammar chunk.


newRemExpr

public RemExpr newRemExpr(Value op1,
                          Value op2)
Constructs a RemExpr(Immediate, Immediate) grammar chunk.


newOrExpr

public OrExpr newOrExpr(Value op1,
                        Value op2)
Constructs a OrExpr(Immediate, Immediate) grammar chunk.


newNeExpr

public NeExpr newNeExpr(Value op1,
                        Value op2)
Constructs a NeExpr(Immediate, Immediate) grammar chunk.


newMulExpr

public MulExpr newMulExpr(Value op1,
                          Value op2)
Constructs a MulExpr(Immediate, Immediate) grammar chunk.


newLeExpr

public LeExpr newLeExpr(Value op1,
                        Value op2)
Constructs a LeExpr(Immediate, Immediate) grammar chunk.


newGeExpr

public GeExpr newGeExpr(Value op1,
                        Value op2)
Constructs a GeExpr(Immediate, Immediate) grammar chunk.


newEqExpr

public EqExpr newEqExpr(Value op1,
                        Value op2)
Constructs a EqExpr(Immediate, Immediate) grammar chunk.


newDivExpr

public DivExpr newDivExpr(Value op1,
                          Value op2)
Constructs a DivExpr(Immediate, Immediate) grammar chunk.


newCmplExpr

public CmplExpr newCmplExpr(Value op1,
                            Value op2)
Constructs a CmplExpr(Immediate, Immediate) grammar chunk.


newCmpgExpr

public CmpgExpr newCmpgExpr(Value op1,
                            Value op2)
Constructs a CmpgExpr(Immediate, Immediate) grammar chunk.


newCmpExpr

public CmpExpr newCmpExpr(Value op1,
                          Value op2)
Constructs a CmpExpr(Immediate, Immediate) grammar chunk.


newGtExpr

public GtExpr newGtExpr(Value op1,
                        Value op2)
Constructs a GtExpr(Immediate, Immediate) grammar chunk.


newLtExpr

public LtExpr newLtExpr(Value op1,
                        Value op2)
Constructs a LtExpr(Immediate, Immediate) grammar chunk.


newAddExpr

public AddExpr newAddExpr(Value op1,
                          Value op2)
Constructs a AddExpr(Immediate, Immediate) grammar chunk.


newAndExpr

public AndExpr newAndExpr(Value op1,
                          Value op2)
Constructs a AndExpr(Immediate, Immediate) grammar chunk.


newNegExpr

public NegExpr newNegExpr(Value op)
Constructs a NegExpr(Immediate, Immediate) grammar chunk.


newLengthExpr

public LengthExpr newLengthExpr(Value op)
Constructs a LengthExpr(Immediate) grammar chunk.


newCastExpr

public CastExpr newCastExpr(Value op1,
                            Type t)
Constructs a CastExpr(Immediate, Type) grammar chunk.


newInstanceOfExpr

public InstanceOfExpr newInstanceOfExpr(Value op1,
                                        Type t)
Constructs a InstanceOfExpr(Immediate, Type) grammar chunk.


newNewExpr

public NewExpr newNewExpr(RefType type)
Constructs a NewExpr(RefType) grammar chunk.


newNewArrayExpr

public NewArrayExpr newNewArrayExpr(Type type,
                                    Value size)
Constructs a NewArrayExpr(Type, Immediate) grammar chunk.


newNewMultiArrayExpr

public NewMultiArrayExpr newNewMultiArrayExpr(ArrayType type,
                                              List sizes)
Constructs a NewMultiArrayExpr(ArrayType, List of Immediate) grammar chunk.


newStaticInvokeExpr

public StaticInvokeExpr newStaticInvokeExpr(SootMethodRef method,
                                            Value... args)
Constructs a NewStaticInvokeExpr(ArrayType, List of Immediate) grammar chunk.


newStaticInvokeExpr

public StaticInvokeExpr newStaticInvokeExpr(SootMethodRef method,
                                            List args)

newSpecialInvokeExpr

public SpecialInvokeExpr newSpecialInvokeExpr(Local base,
                                              SootMethodRef method,
                                              List args)
Constructs a NewSpecialInvokeExpr(Local base, SootMethodRef method, List of Immediate) grammar chunk.


newDynamicInvokeExpr

public DynamicInvokeExpr newDynamicInvokeExpr(SootMethodRef bootstrapMethodRef,
                                              List bootstrapArgs,
                                              SootMethodRef methodRef,
                                              List args)
Constructs a NewDynamicInvokeExpr(SootMethodRef bootstrapMethodRef, List bootstrapArgs, SootMethodRef methodRef, List args) grammar chunk.


newVirtualInvokeExpr

public VirtualInvokeExpr newVirtualInvokeExpr(Local base,
                                              SootMethodRef method,
                                              List args)
Constructs a NewVirtualInvokeExpr(Local base, SootMethodRef method, List of Immediate) grammar chunk.


newInterfaceInvokeExpr

public InterfaceInvokeExpr newInterfaceInvokeExpr(Local base,
                                                  SootMethodRef method,
                                                  List args)
Constructs a NewInterfaceInvokeExpr(Local base, SootMethodRef method, List of Immediate) grammar chunk.


newStaticInvokeExpr

public StaticInvokeExpr newStaticInvokeExpr(SootMethodRef method)
Constructs a NewStaticInvokeExpr(ArrayType, List of Immediate) grammar chunk. (no args)


newSpecialInvokeExpr

public SpecialInvokeExpr newSpecialInvokeExpr(Local base,
                                              SootMethodRef method)
Constructs a NewSpecialInvokeExpr(Local base, SootMethodRef method, List of Immediate) grammar chunk. (no args)


newVirtualInvokeExpr

public VirtualInvokeExpr newVirtualInvokeExpr(Local base,
                                              SootMethodRef method)
Constructs a NewVirtualInvokeExpr(Local base, SootMethodRef method, List of Immediate) grammar chunk. (no args)


newInterfaceInvokeExpr

public InterfaceInvokeExpr newInterfaceInvokeExpr(Local base,
                                                  SootMethodRef method)
Constructs a NewInterfaceInvokeExpr(Local base, SootMethodRef method, List of Immediate) grammar chunk. (no args)


newSpecialInvokeExpr

public SpecialInvokeExpr newSpecialInvokeExpr(Local base,
                                              SootMethodRef method,
                                              Value arg)
Constructs a NewSpecialInvokeExpr(Local base, SootMethodRef method, List of Immediate) grammar chunk.


newVirtualInvokeExpr

public VirtualInvokeExpr newVirtualInvokeExpr(Local base,
                                              SootMethodRef method,
                                              Value arg)
Constructs a NewVirtualInvokeExpr(Local base, SootMethodRef method, List of Immediate) grammar chunk.


newInterfaceInvokeExpr

public InterfaceInvokeExpr newInterfaceInvokeExpr(Local base,
                                                  SootMethodRef method,
                                                  Value arg)
Constructs a NewInterfaceInvokeExpr(Local base, SootMethodRef method, List of Immediate) grammar chunk.


newStaticInvokeExpr

public StaticInvokeExpr newStaticInvokeExpr(SootMethodRef method,
                                            Value arg1,
                                            Value arg2)
Constructs a NewStaticInvokeExpr(ArrayType, List of Immediate) grammar chunk.


newSpecialInvokeExpr

public SpecialInvokeExpr newSpecialInvokeExpr(Local base,
                                              SootMethodRef method,
                                              Value arg1,
                                              Value arg2)
Constructs a NewSpecialInvokeExpr(Local base, SootMethodRef method, List of Immediate) grammar chunk.


newVirtualInvokeExpr

public VirtualInvokeExpr newVirtualInvokeExpr(Local base,
                                              SootMethodRef method,
                                              Value arg1,
                                              Value arg2)
Constructs a NewVirtualInvokeExpr(Local base, SootMethodRef method, List of Immediate) grammar chunk.


newInterfaceInvokeExpr

public InterfaceInvokeExpr newInterfaceInvokeExpr(Local base,
                                                  SootMethodRef method,
                                                  Value arg1,
                                                  Value arg2)
Constructs a NewInterfaceInvokeExpr(Local base, SootMethodRef method, List of Immediate) grammar chunk.


newThrowStmt

public ThrowStmt newThrowStmt(Value op)
Constructs a ThrowStmt(Immediate) grammar chunk.


newExitMonitorStmt

public ExitMonitorStmt newExitMonitorStmt(Value op)
Constructs a ExitMonitorStmt(Immediate) grammar chunk


newEnterMonitorStmt

public EnterMonitorStmt newEnterMonitorStmt(Value op)
Constructs a EnterMonitorStmt(Immediate) grammar chunk.


newBreakpointStmt

public BreakpointStmt newBreakpointStmt()
Constructs a BreakpointStmt() grammar chunk.


newGotoStmt

public GotoStmt newGotoStmt(Unit target)
Constructs a GotoStmt(Stmt) grammar chunk.


newGotoStmt

public GotoStmt newGotoStmt(UnitBox stmtBox)

newNopStmt

public NopStmt newNopStmt()
Constructs a NopStmt() grammar chunk.


newReturnVoidStmt

public ReturnVoidStmt newReturnVoidStmt()
Constructs a ReturnVoidStmt() grammar chunk.


newReturnStmt

public ReturnStmt newReturnStmt(Value op)
Constructs a ReturnStmt(Immediate) grammar chunk.


newRetStmt

public RetStmt newRetStmt(Value stmtAddress)
Constructs a RetStmt(Local) grammar chunk.


newIfStmt

public IfStmt newIfStmt(Value condition,
                        Unit target)
Constructs a IfStmt(Condition, Stmt) grammar chunk.


newIfStmt

public IfStmt newIfStmt(Value condition,
                        UnitBox target)

newIdentityStmt

public IdentityStmt newIdentityStmt(Value local,
                                    Value identityRef)
Constructs a IdentityStmt(Local, IdentityRef) grammar chunk.


newAssignStmt

public AssignStmt newAssignStmt(Value variable,
                                Value rvalue)
Constructs a AssignStmt(Variable, RValue) grammar chunk.


newInvokeStmt

public InvokeStmt newInvokeStmt(Value op)
Constructs a InvokeStmt(InvokeExpr) grammar chunk.


newTableSwitchStmt

public TableSwitchStmt newTableSwitchStmt(Value key,
                                          int lowIndex,
                                          int highIndex,
                                          List targets,
                                          Unit defaultTarget)
Constructs a TableSwitchStmt(Immediate, int, int, List of Unit, Stmt) grammar chunk.


newTableSwitchStmt

public TableSwitchStmt newTableSwitchStmt(Value key,
                                          int lowIndex,
                                          int highIndex,
                                          List<Object> targets,
                                          UnitBox defaultTarget)

newLookupSwitchStmt

public LookupSwitchStmt newLookupSwitchStmt(Value key,
                                            List lookupValues,
                                            List targets,
                                            Unit defaultTarget)
Constructs a LookupSwitchStmt(Immediate, List of Immediate, List of Unit, Stmt) grammar chunk.


newLookupSwitchStmt

public LookupSwitchStmt newLookupSwitchStmt(Value key,
                                            List<Object> lookupValues,
                                            List<Object> targets,
                                            UnitBox defaultTarget)

newLocal

public Local newLocal(String name,
                      Type t)
Constructs a Local with the given name and type.


newTrap

public Trap newTrap(SootClass exception,
                    Unit beginStmt,
                    Unit endStmt,
                    Unit handlerStmt)
Constructs a new JTrap for the given exception on the given Stmt range with the given Stmt handler.


newTrap

public Trap newTrap(SootClass exception,
                    UnitBox beginStmt,
                    UnitBox endStmt,
                    UnitBox handlerStmt)

newStaticFieldRef

public StaticFieldRef newStaticFieldRef(SootFieldRef f)
Constructs a StaticFieldRef(SootFieldRef) grammar chunk.


newThisRef

public ThisRef newThisRef(RefType t)
Constructs a ThisRef(RefType) grammar chunk.


newParameterRef

public ParameterRef newParameterRef(Type paramType,
                                    int number)
Constructs a ParameterRef(SootMethod, int) grammar chunk.


newInstanceFieldRef

public InstanceFieldRef newInstanceFieldRef(Value base,
                                            SootFieldRef f)
Constructs a InstanceFieldRef(Local, SootFieldRef) grammar chunk.


newCaughtExceptionRef

public CaughtExceptionRef newCaughtExceptionRef()
Constructs a CaughtExceptionRef() grammar chunk.


newArrayRef

public ArrayRef newArrayRef(Value base,
                            Value index)
Constructs a ArrayRef(Local, Immediate) grammar chunk.


newVariableBox

public ValueBox newVariableBox(Value value)

newLocalBox

public ValueBox newLocalBox(Value value)

newRValueBox

public ValueBox newRValueBox(Value value)

newImmediateBox

public ValueBox newImmediateBox(Value value)

newArgBox

public ValueBox newArgBox(Value value)

newIdentityRefBox

public ValueBox newIdentityRefBox(Value value)

newConditionExprBox

public ValueBox newConditionExprBox(Value value)

newInvokeExprBox

public ValueBox newInvokeExprBox(Value value)

newStmtBox

public UnitBox newStmtBox(Unit unit)

newBody

public JimpleBody newBody(SootMethod m)
Returns an empty JimpleBody associated with method m.


newBody

public JimpleBody newBody()
Returns an empty JimpleBody with no associated method.