public class Grimp
extends java.lang.Object
Constructor and Description |
---|
Grimp(Singletons.Global g) |
Modifier and Type | Method and Description |
---|---|
static Value |
cloneIfNecessary(Value val) |
AddExpr |
newAddExpr(Value op1,
Value op2)
Constructs a AddExpr(Expr, Expr) grammar chunk.
|
AndExpr |
newAndExpr(Value op1,
Value op2)
Constructs a AndExpr(Expr, Expr) grammar chunk.
|
ValueBox |
newArgBox(Value value) |
ArrayRef |
newArrayRef(Value base,
Value index)
Constructs a ArrayRef(Local, Expr) grammar chunk.
|
AssignStmt |
newAssignStmt(AssignStmt s) |
AssignStmt |
newAssignStmt(Value variable,
Value rvalue)
Constructs a AssignStmt(Variable, RValue) grammar chunk.
|
GrimpBody |
newBody(Body b,
java.lang.String phase)
Returns a GrimpBody constructed from b.
|
GrimpBody |
newBody(SootMethod m)
Returns an empty GrimpBody associated with method m.
|
BreakpointStmt |
newBreakpointStmt()
Constructs a BreakpointStmt() grammar chunk.
|
BreakpointStmt |
newBreakpointStmt(BreakpointStmt s) |
CastExpr |
newCastExpr(Value op1,
Type t)
Constructs a CastExpr(Expr, Type) grammar chunk.
|
CaughtExceptionRef |
newCaughtExceptionRef()
Constructs a CaughtExceptionRef() grammar chunk.
|
CmpExpr |
newCmpExpr(Value op1,
Value op2)
Constructs a CmpExpr(Expr, Expr) grammar chunk.
|
CmpgExpr |
newCmpgExpr(Value op1,
Value op2)
Constructs a CmpgExpr(Expr, Expr) grammar chunk.
|
CmplExpr |
newCmplExpr(Value op1,
Value op2)
Constructs a CmplExpr(Expr, Expr) grammar chunk.
|
ValueBox |
newConditionExprBox(Value value) |
DivExpr |
newDivExpr(Value op1,
Value op2)
Constructs a DivExpr(Expr, Expr) grammar chunk.
|
DynamicInvokeExpr |
newDynamicInvokeExpr(SootMethodRef bootstrapMethodRef,
java.util.List<Value> bootstrapArgs,
SootMethodRef methodRef,
int tag,
java.util.List args)
Constructs a new DynamicInvokeExpr grammar chunk.
|
EnterMonitorStmt |
newEnterMonitorStmt(EnterMonitorStmt s) |
EnterMonitorStmt |
newEnterMonitorStmt(Value op)
Constructs a EnterMonitorStmt(Expr) grammar chunk.
|
EqExpr |
newEqExpr(Value op1,
Value op2)
Constructs a EqExpr(Expr, Expr) grammar chunk.
|
ExitMonitorStmt |
newExitMonitorStmt(ExitMonitorStmt s) |
ExitMonitorStmt |
newExitMonitorStmt(Value op)
Constructs a ExitMonitorStmt(Expr) grammar chunk
|
Value |
newExpr(Value value)
Carries out the mapping from other Value's to Grimp Value's
|
ValueBox |
newExprBox(Value value) |
GeExpr |
newGeExpr(Value op1,
Value op2)
Constructs a GeExpr(Expr, Expr) grammar chunk.
|
GotoStmt |
newGotoStmt(GotoStmt s) |
GotoStmt |
newGotoStmt(Unit target)
Constructs a GotoStmt(Stmt) grammar chunk.
|
GtExpr |
newGtExpr(Value op1,
Value op2)
Constructs a GtExpr(Expr, Expr) grammar chunk.
|
ValueBox |
newIdentityRefBox(Value value) |
IdentityStmt |
newIdentityStmt(IdentityStmt s) |
IdentityStmt |
newIdentityStmt(Value local,
Value identityRef)
Constructs a IdentityStmt(Local, IdentityRef) grammar chunk.
|
IfStmt |
newIfStmt(IfStmt s) |
IfStmt |
newIfStmt(Value condition,
Unit target)
Constructs a IfStmt(Condition, Stmt) grammar chunk.
|
ValueBox |
newImmediateBox(Value value) |
InstanceFieldRef |
newInstanceFieldRef(Value base,
SootFieldRef f)
Constructs a InstanceFieldRef(Value, SootFieldRef) grammar chunk.
|
InstanceOfExpr |
newInstanceOfExpr(Value op1,
Type t)
Constructs a InstanceOfExpr(Expr, Type)
grammar chunk.
|
InterfaceInvokeExpr |
newInterfaceInvokeExpr(Local base,
SootMethodRef method,
java.util.List args)
Constructs a InterfaceInvokeExpr(Local base, SootMethodRef method, List of Expr) grammar chunk.
|
ValueBox |
newInvokeExprBox(Value value) |
InvokeStmt |
newInvokeStmt(InvokeStmt s) |
InvokeStmt |
newInvokeStmt(Value op)
Constructs a InvokeStmt(InvokeExpr) grammar chunk.
|
LeExpr |
newLeExpr(Value op1,
Value op2)
Constructs a LeExpr(Expr, Expr) grammar chunk.
|
LengthExpr |
newLengthExpr(Value op)
Constructs a LengthExpr(Expr) 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(LookupSwitchStmt s) |
LookupSwitchStmt |
newLookupSwitchStmt(Value key,
java.util.List lookupValues,
java.util.List targets,
Unit defaultTarget)
Constructs a LookupSwitchStmt(Expr, List of Expr, List of Unit, Stmt) grammar chunk.
|
LtExpr |
newLtExpr(Value op1,
Value op2)
Constructs a LtExpr(Expr, Expr) grammar chunk.
|
MulExpr |
newMulExpr(Value op1,
Value op2)
Constructs a MulExpr(Expr, Expr) grammar chunk.
|
NeExpr |
newNeExpr(Value op1,
Value op2)
Constructs a NeExpr(Expr, Expr) grammar chunk.
|
NegExpr |
newNegExpr(Value op)
Constructs a NegExpr(Expr, Expr) grammar chunk.
|
NewArrayExpr |
newNewArrayExpr(Type type,
Value size)
Constructs a NewArrayExpr(Type, Expr) grammar chunk.
|
NewInvokeExpr |
newNewInvokeExpr(RefType base,
SootMethodRef method,
java.util.List args)
Constructs a NewInvokeExpr(Local base, List of Expr) grammar chunk.
|
NewMultiArrayExpr |
newNewMultiArrayExpr(ArrayType type,
java.util.List sizes)
Constructs a NewMultiArrayExpr(ArrayType, List of Expr) grammar chunk.
|
NopStmt |
newNopStmt()
Constructs a NopStmt() grammar chunk.
|
NopStmt |
newNopStmt(NopStmt s) |
ValueBox |
newObjExprBox(Value value) |
OrExpr |
newOrExpr(Value op1,
Value op2)
Constructs a OrExpr(Expr, Expr) grammar chunk.
|
ParameterRef |
newParameterRef(Type paramType,
int number)
Constructs a ParameterRef(SootMethod, int) grammar chunk.
|
RemExpr |
newRemExpr(Value op1,
Value op2)
Constructs a RemExpr(Expr, Expr) grammar chunk.
|
ReturnStmt |
newReturnStmt(ReturnStmt s) |
ReturnStmt |
newReturnStmt(Value op)
Constructs a ReturnStmt(Expr) grammar chunk.
|
ReturnVoidStmt |
newReturnVoidStmt()
Constructs a ReturnVoidStmt() grammar chunk.
|
ReturnVoidStmt |
newReturnVoidStmt(ReturnVoidStmt s) |
ValueBox |
newRValueBox(Value value) |
ShlExpr |
newShlExpr(Value op1,
Value op2)
Constructs a ShlExpr(Expr, Expr) grammar chunk.
|
ShrExpr |
newShrExpr(Value op1,
Value op2)
Constructs a ShrExpr(Expr, Expr) grammar chunk.
|
SpecialInvokeExpr |
newSpecialInvokeExpr(Local base,
SootMethodRef method,
java.util.List args)
Constructs a SpecialInvokeExpr(Local base, SootMethodRef method, List of Expr) grammar chunk.
|
StaticFieldRef |
newStaticFieldRef(SootFieldRef f)
Constructs a StaticFieldRef(SootFieldRef) grammar chunk.
|
StaticInvokeExpr |
newStaticInvokeExpr(SootMethodRef method,
java.util.List args)
Constructs a StaticInvokeExpr(ArrayType, List of Expr) grammar chunk.
|
UnitBox |
newStmtBox(Unit unit) |
SubExpr |
newSubExpr(Value op1,
Value op2)
Constructs a SubExpr(Expr, Expr) grammar chunk.
|
TableSwitchStmt |
newTableSwitchStmt(TableSwitchStmt s) |
TableSwitchStmt |
newTableSwitchStmt(Value key,
int lowIndex,
int highIndex,
java.util.List targets,
Unit defaultTarget)
Constructs a TableSwitchStmt(Expr, int, int, List of Unit, Stmt) grammar chunk.
|
ThisRef |
newThisRef(RefType t)
Constructs a ThisRef(RefType) grammar chunk.
|
ThrowStmt |
newThrowStmt(ThrowStmt s) |
ThrowStmt |
newThrowStmt(Value op)
Constructs a ThrowStmt(Expr) grammar chunk.
|
Trap |
newTrap(SootClass exception,
Unit beginStmt,
Unit endStmt,
Unit handlerStmt)
Constructs a new Trap for the given exception on the given Stmt range with the given Stmt handler.
|
Trap |
newTrap(Trap trap) |
UshrExpr |
newUshrExpr(Value op1,
Value op2)
Constructs a UshrExpr(Expr, Expr) grammar chunk.
|
ValueBox |
newVariableBox(Value value) |
VirtualInvokeExpr |
newVirtualInvokeExpr(Local base,
SootMethodRef method,
java.util.List args)
Constructs a VirtualInvokeExpr(Local base, SootMethodRef method, List of Expr) grammar chunk.
|
XorExpr |
newXorExpr(Value op1,
Value op2)
Constructs a XorExpr(Expr, Expr) grammar chunk.
|
static Grimp |
v() |
public static Grimp v()
public XorExpr newXorExpr(Value op1, Value op2)
public UshrExpr newUshrExpr(Value op1, Value op2)
public SubExpr newSubExpr(Value op1, Value op2)
public ShrExpr newShrExpr(Value op1, Value op2)
public ShlExpr newShlExpr(Value op1, Value op2)
public RemExpr newRemExpr(Value op1, Value op2)
public OrExpr newOrExpr(Value op1, Value op2)
public NeExpr newNeExpr(Value op1, Value op2)
public MulExpr newMulExpr(Value op1, Value op2)
public LeExpr newLeExpr(Value op1, Value op2)
public GeExpr newGeExpr(Value op1, Value op2)
public EqExpr newEqExpr(Value op1, Value op2)
public DivExpr newDivExpr(Value op1, Value op2)
public CmplExpr newCmplExpr(Value op1, Value op2)
public CmpgExpr newCmpgExpr(Value op1, Value op2)
public CmpExpr newCmpExpr(Value op1, Value op2)
public GtExpr newGtExpr(Value op1, Value op2)
public LtExpr newLtExpr(Value op1, Value op2)
public AddExpr newAddExpr(Value op1, Value op2)
public AndExpr newAndExpr(Value op1, Value op2)
public LengthExpr newLengthExpr(Value op)
public CastExpr newCastExpr(Value op1, Type t)
public InstanceOfExpr newInstanceOfExpr(Value op1, Type t)
public NewArrayExpr newNewArrayExpr(Type type, Value size)
public NewMultiArrayExpr newNewMultiArrayExpr(ArrayType type, java.util.List sizes)
public NewInvokeExpr newNewInvokeExpr(RefType base, SootMethodRef method, java.util.List args)
public StaticInvokeExpr newStaticInvokeExpr(SootMethodRef method, java.util.List args)
public SpecialInvokeExpr newSpecialInvokeExpr(Local base, SootMethodRef method, java.util.List args)
public VirtualInvokeExpr newVirtualInvokeExpr(Local base, SootMethodRef method, java.util.List args)
public DynamicInvokeExpr newDynamicInvokeExpr(SootMethodRef bootstrapMethodRef, java.util.List<Value> bootstrapArgs, SootMethodRef methodRef, int tag, java.util.List args)
public InterfaceInvokeExpr newInterfaceInvokeExpr(Local base, SootMethodRef method, java.util.List args)
public ExitMonitorStmt newExitMonitorStmt(Value op)
public ExitMonitorStmt newExitMonitorStmt(ExitMonitorStmt s)
public EnterMonitorStmt newEnterMonitorStmt(Value op)
public EnterMonitorStmt newEnterMonitorStmt(EnterMonitorStmt s)
public BreakpointStmt newBreakpointStmt()
public BreakpointStmt newBreakpointStmt(BreakpointStmt s)
public NopStmt newNopStmt()
public ReturnVoidStmt newReturnVoidStmt()
public ReturnVoidStmt newReturnVoidStmt(ReturnVoidStmt s)
public ReturnStmt newReturnStmt(Value op)
public ReturnStmt newReturnStmt(ReturnStmt s)
public IfStmt newIfStmt(Value condition, Unit target)
public IdentityStmt newIdentityStmt(Value local, Value identityRef)
public IdentityStmt newIdentityStmt(IdentityStmt s)
public AssignStmt newAssignStmt(Value variable, Value rvalue)
public AssignStmt newAssignStmt(AssignStmt s)
public InvokeStmt newInvokeStmt(Value op)
public InvokeStmt newInvokeStmt(InvokeStmt s)
public TableSwitchStmt newTableSwitchStmt(Value key, int lowIndex, int highIndex, java.util.List targets, Unit defaultTarget)
public TableSwitchStmt newTableSwitchStmt(TableSwitchStmt s)
public LookupSwitchStmt newLookupSwitchStmt(Value key, java.util.List lookupValues, java.util.List targets, Unit defaultTarget)
public LookupSwitchStmt newLookupSwitchStmt(LookupSwitchStmt s)
public Local newLocal(java.lang.String name, Type t)
public Trap newTrap(SootClass exception, Unit beginStmt, Unit endStmt, Unit handlerStmt)
public StaticFieldRef newStaticFieldRef(SootFieldRef f)
public ParameterRef newParameterRef(Type paramType, int number)
public InstanceFieldRef newInstanceFieldRef(Value base, SootFieldRef f)
public CaughtExceptionRef newCaughtExceptionRef()
public ArrayRef newArrayRef(Value base, Value index)
public Value newExpr(Value value)
public GrimpBody newBody(SootMethod m)
public GrimpBody newBody(Body b, java.lang.String phase)