soot.jimple
Class Jimple

java.lang.Object
  |
  +--soot.jimple.Jimple

public class Jimple
extends java.lang.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 java.lang.String ABSTRACT
           
static java.lang.String BOOLEAN
           
static java.lang.String BREAK
           
static java.lang.String BREAKPOINT
           
static java.lang.String BYTE
           
static java.lang.String CASE
           
static java.lang.String CATCH
           
static java.lang.String CHAR
           
static java.lang.String CLASS
           
static java.lang.String CMP
           
static java.lang.String CMPG
           
static java.lang.String CMPL
           
static java.lang.String DEFAULT
           
static java.lang.String DOUBLE
           
static java.lang.String ENTERMONITOR
           
static java.lang.String EXITMONITOR
           
static java.lang.String EXTENDS
           
static java.lang.String FINAL
           
static java.lang.String FLOAT
           
static java.lang.String GOTO
           
static java.lang.String IF
           
static java.lang.String IMPLEMENTS
           
static java.lang.String INSTANCEOF
           
static java.lang.String INT
           
static java.lang.String INTERFACE
           
static java.lang.String INTERFACEINVOKE
           
static java.lang.String LENGTHOF
           
static java.lang.String LONG
           
static java.lang.String LOOKUPSWITCH
           
static java.lang.String NATIVE
           
static java.lang.String NEG
           
static java.lang.String NEW
           
static java.lang.String NEWARRAY
           
static java.lang.String NEWMULTIARRAY
           
static java.lang.String NOP
           
static java.lang.String NULL
           
static java.lang.String NULL_TYPE
           
static java.lang.String PRIVATE
           
static java.lang.String PROTECTED
           
static java.lang.String PUBLIC
           
static java.lang.String RET
           
static java.lang.String RETURN
           
static java.lang.String SHORT
           
static java.lang.String SPECIALINVOKE
           
static java.lang.String STATIC
           
static java.lang.String STATICINVOKE
           
static java.lang.String SYNCHRONIZED
           
static java.lang.String TABLESWITCH
           
static java.lang.String THROW
           
static java.lang.String THROWS
           
static java.lang.String TRANSIENT
           
static java.lang.String UNKNOWN
           
static java.lang.String VIRTUALINVOKE
           
static java.lang.String VOID
           
static java.lang.String VOLATILE
           
 
Constructor Summary
protected Jimple()
           
 
Method Summary
static Value cloneIfNecessary(Value val)
           
static boolean isJavaKeywordType(Type t)
           
 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.
 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, SootField f)
          Constructs a InstanceFieldRef(Local, SootField) grammar chunk.
 InstanceOfExpr newInstanceOfExpr(Value op1, Type t)
          Constructs a InstanceOfExpr(Immediate, Type) grammar chunk.
 InterfaceInvokeExpr newInterfaceInvokeExpr(Local base, SootMethod method)
          Constructs a NewInterfaceInvokeExpr(Local base, SootMethod method, List of Immediate) grammar chunk.
 InterfaceInvokeExpr newInterfaceInvokeExpr(Local base, SootMethod method, java.util.List args)
          Constructs a NewInterfaceInvokeExpr(Local base, SootMethod method, List of Immediate) grammar chunk.
 InterfaceInvokeExpr newInterfaceInvokeExpr(Local base, SootMethod method, Value arg)
          Constructs a NewInterfaceInvokeExpr(Local base, SootMethod method, List of Immediate) grammar chunk.
 InterfaceInvokeExpr newInterfaceInvokeExpr(Local base, SootMethod method, Value arg1, Value arg2)
          Constructs a NewInterfaceInvokeExpr(Local base, SootMethod 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(java.lang.String name, Type t)
          Constructs a Local with the given name and type.
 ValueBox newLocalBox(Value value)
           
 LookupSwitchStmt newLookupSwitchStmt(Value key, java.util.List lookupValues, java.util.List targets, Unit defaultTarget)
          Constructs a LookupSwitchStmt(Immediate, List of Immediate, List of Unit, Stmt) grammar chunk.
 LookupSwitchStmt newLookupSwitchStmt(Value key, java.util.List lookupValues, java.util.List targets, UnitBox defaultTarget)
           
 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, java.util.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, SootMethod method)
          Constructs a NewSpecialInvokeExpr(Local base, SootMethod method, List of Immediate) grammar chunk.
 SpecialInvokeExpr newSpecialInvokeExpr(Local base, SootMethod method, java.util.List args)
          Constructs a NewSpecialInvokeExpr(Local base, SootMethod method, List of Immediate) grammar chunk.
 SpecialInvokeExpr newSpecialInvokeExpr(Local base, SootMethod method, Value arg)
          Constructs a NewSpecialInvokeExpr(Local base, SootMethod method, List of Immediate) grammar chunk.
 SpecialInvokeExpr newSpecialInvokeExpr(Local base, SootMethod method, Value arg1, Value arg2)
          Constructs a NewSpecialInvokeExpr(Local base, SootMethod method, List of Immediate) grammar chunk.
 StaticFieldRef newStaticFieldRef(SootField f)
          Constructs a StaticFieldRef(SootField) grammar chunk.
 StaticInvokeExpr newStaticInvokeExpr(SootMethod method)
          Constructs a NewStaticInvokeExpr(ArrayType, List of Immediate) grammar chunk.
 StaticInvokeExpr newStaticInvokeExpr(SootMethod method, java.util.List args)
          Constructs a NewStaticInvokeExpr(ArrayType, List of Immediate) grammar chunk.
 StaticInvokeExpr newStaticInvokeExpr(SootMethod method, Value arg)
          Constructs a NewStaticInvokeExpr(ArrayType, List of Immediate) grammar chunk.
 StaticInvokeExpr newStaticInvokeExpr(SootMethod 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, java.util.List targets, Unit defaultTarget)
          Constructs a TableSwitchStmt(Immediate, int, int, List of Unit, Stmt) grammar chunk.
 TableSwitchStmt newTableSwitchStmt(Value key, int lowIndex, int highIndex, java.util.List targets, UnitBox defaultTarget)
           
 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, SootMethod method)
          Constructs a NewVirtualInvokeExpr(Local base, SootMethod method, List of Immediate) grammar chunk.
 VirtualInvokeExpr newVirtualInvokeExpr(Local base, SootMethod method, java.util.List args)
          Constructs a NewVirtualInvokeExpr(Local base, SootMethod method, List of Immediate) grammar chunk.
 VirtualInvokeExpr newVirtualInvokeExpr(Local base, SootMethod method, Value arg)
          Constructs a NewVirtualInvokeExpr(Local base, SootMethod method, List of Immediate) grammar chunk.
 VirtualInvokeExpr newVirtualInvokeExpr(Local base, SootMethod method, Value arg1, Value arg2)
          Constructs a NewVirtualInvokeExpr(Local base, SootMethod 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 java.lang.String NEWARRAY
See Also:
Constant Field Values

NEWMULTIARRAY

public static final java.lang.String NEWMULTIARRAY
See Also:
Constant Field Values

NOP

public static final java.lang.String NOP
See Also:
Constant Field Values

RET

public static final java.lang.String RET
See Also:
Constant Field Values

SPECIALINVOKE

public static final java.lang.String SPECIALINVOKE
See Also:
Constant Field Values

STATICINVOKE

public static final java.lang.String STATICINVOKE
See Also:
Constant Field Values

TABLESWITCH

public static final java.lang.String TABLESWITCH
See Also:
Constant Field Values

VIRTUALINVOKE

public static final java.lang.String VIRTUALINVOKE
See Also:
Constant Field Values

NULL_TYPE

public static final java.lang.String NULL_TYPE
See Also:
Constant Field Values

UNKNOWN

public static final java.lang.String UNKNOWN
See Also:
Constant Field Values

CMP

public static final java.lang.String CMP
See Also:
Constant Field Values

CMPG

public static final java.lang.String CMPG
See Also:
Constant Field Values

CMPL

public static final java.lang.String CMPL
See Also:
Constant Field Values

ENTERMONITOR

public static final java.lang.String ENTERMONITOR
See Also:
Constant Field Values

EXITMONITOR

public static final java.lang.String EXITMONITOR
See Also:
Constant Field Values

INTERFACEINVOKE

public static final java.lang.String INTERFACEINVOKE
See Also:
Constant Field Values

LENGTHOF

public static final java.lang.String LENGTHOF
See Also:
Constant Field Values

LOOKUPSWITCH

public static final java.lang.String LOOKUPSWITCH
See Also:
Constant Field Values

NEG

public static final java.lang.String NEG
See Also:
Constant Field Values

IF

public static final java.lang.String IF
See Also:
Constant Field Values

ABSTRACT

public static final java.lang.String ABSTRACT
See Also:
Constant Field Values

BOOLEAN

public static final java.lang.String BOOLEAN
See Also:
Constant Field Values

BREAK

public static final java.lang.String BREAK
See Also:
Constant Field Values

BYTE

public static final java.lang.String BYTE
See Also:
Constant Field Values

CASE

public static final java.lang.String CASE
See Also:
Constant Field Values

CATCH

public static final java.lang.String CATCH
See Also:
Constant Field Values

CHAR

public static final java.lang.String CHAR
See Also:
Constant Field Values

CLASS

public static final java.lang.String CLASS
See Also:
Constant Field Values

FINAL

public static final java.lang.String FINAL
See Also:
Constant Field Values

NATIVE

public static final java.lang.String NATIVE
See Also:
Constant Field Values

PUBLIC

public static final java.lang.String PUBLIC
See Also:
Constant Field Values

PROTECTED

public static final java.lang.String PROTECTED
See Also:
Constant Field Values

PRIVATE

public static final java.lang.String PRIVATE
See Also:
Constant Field Values

STATIC

public static final java.lang.String STATIC
See Also:
Constant Field Values

SYNCHRONIZED

public static final java.lang.String SYNCHRONIZED
See Also:
Constant Field Values

TRANSIENT

public static final java.lang.String TRANSIENT
See Also:
Constant Field Values

VOLATILE

public static final java.lang.String VOLATILE
See Also:
Constant Field Values

INTERFACE

public static final java.lang.String INTERFACE
See Also:
Constant Field Values

VOID

public static final java.lang.String VOID
See Also:
Constant Field Values

SHORT

public static final java.lang.String SHORT
See Also:
Constant Field Values

INT

public static final java.lang.String INT
See Also:
Constant Field Values

LONG

public static final java.lang.String LONG
See Also:
Constant Field Values

FLOAT

public static final java.lang.String FLOAT
See Also:
Constant Field Values

DOUBLE

public static final java.lang.String DOUBLE
See Also:
Constant Field Values

EXTENDS

public static final java.lang.String EXTENDS
See Also:
Constant Field Values

IMPLEMENTS

public static final java.lang.String IMPLEMENTS
See Also:
Constant Field Values

BREAKPOINT

public static final java.lang.String BREAKPOINT
See Also:
Constant Field Values

DEFAULT

public static final java.lang.String DEFAULT
See Also:
Constant Field Values

GOTO

public static final java.lang.String GOTO
See Also:
Constant Field Values

INSTANCEOF

public static final java.lang.String INSTANCEOF
See Also:
Constant Field Values

NEW

public static final java.lang.String NEW
See Also:
Constant Field Values

RETURN

public static final java.lang.String RETURN
See Also:
Constant Field Values

THROW

public static final java.lang.String THROW
See Also:
Constant Field Values

THROWS

public static final java.lang.String THROWS
See Also:
Constant Field Values

NULL

public static final java.lang.String NULL
See Also:
Constant Field Values
Constructor Detail

Jimple

protected Jimple()
Method Detail

isJavaKeywordType

public static boolean isJavaKeywordType(Type t)

cloneIfNecessary

public static Value cloneIfNecessary(Value val)

v

public static Jimple v()

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,
                                              java.util.List sizes)
Constructs a NewMultiArrayExpr(ArrayType, List of Immediate) grammar chunk.


newStaticInvokeExpr

public StaticInvokeExpr newStaticInvokeExpr(SootMethod method,
                                            java.util.List args)
Constructs a NewStaticInvokeExpr(ArrayType, List of Immediate) grammar chunk.


newSpecialInvokeExpr

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


newVirtualInvokeExpr

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


newInterfaceInvokeExpr

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


newStaticInvokeExpr

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


newSpecialInvokeExpr

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


newVirtualInvokeExpr

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


newInterfaceInvokeExpr

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


newStaticInvokeExpr

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


newSpecialInvokeExpr

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


newVirtualInvokeExpr

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


newInterfaceInvokeExpr

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


newStaticInvokeExpr

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


newSpecialInvokeExpr

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


newVirtualInvokeExpr

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


newInterfaceInvokeExpr

public InterfaceInvokeExpr newInterfaceInvokeExpr(Local base,
                                                  SootMethod method,
                                                  Value arg1,
                                                  Value arg2)
Constructs a NewInterfaceInvokeExpr(Local base, SootMethod 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,
                                          java.util.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,
                                          java.util.List targets,
                                          UnitBox defaultTarget)

newLookupSwitchStmt

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


newLookupSwitchStmt

public LookupSwitchStmt newLookupSwitchStmt(Value key,
                                            java.util.List lookupValues,
                                            java.util.List targets,
                                            UnitBox defaultTarget)

newLocal

public Local newLocal(java.lang.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(SootField f)
Constructs a StaticFieldRef(SootField) 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,
                                            SootField f)
Constructs a InstanceFieldRef(Local, SootField) 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.