/** Returns a clone of the current JimpleLocal. */ @Override public Object clone() { // do not intern the name again JimpleLocal local = new JimpleLocal(null, type); local.name = name; return local; }
/** * Constructs a XorExpr(Immediate, Immediate) grammar chunk. */ public XorExpr newXorExpr(Value op1, Value op2) { return new JXorExpr(op1, op2); }
/** * Constructs a NeExpr(Immediate, Immediate) grammar chunk. */ public NeExpr newNeExpr(Value op1, Value op2) { return new JNeExpr(op1, op2); }
/** * Constructs a CmpgExpr(Immediate, Immediate) grammar chunk. */ public CmpgExpr newCmpgExpr(Value op1, Value op2) { return new JCmpgExpr(op1, op2); }
/** * Constructs a CmpExpr(Immediate, Immediate) grammar chunk. */ public CmpExpr newCmpExpr(Value op1, Value op2) { return new JCmpExpr(op1, op2); }
/** * Constructs a GtExpr(Immediate, Immediate) grammar chunk. */ public GtExpr newGtExpr(Value op1, Value op2) { return new JGtExpr(op1, op2); }
/** * Constructs a CastExpr(Immediate, Type) grammar chunk. */ public CastExpr newCastExpr(Value op1, Type t) { return new JCastExpr(op1, t); }
/** * Constructs a InstanceOfExpr(Immediate, Type) grammar chunk. */ public InstanceOfExpr newInstanceOfExpr(Value op1, Type t) { return new JInstanceOfExpr(op1, t); }
/** * Constructs a NewMultiArrayExpr(ArrayType, List of Immediate) grammar chunk. */ public NewMultiArrayExpr newNewMultiArrayExpr(ArrayType type, List<? extends Value> sizes) { return new JNewMultiArrayExpr(type, sizes); }
/** * Constructs a NewInterfaceInvokeExpr(Local base, SootMethodRef method, List of Immediate) grammar chunk. */ public InterfaceInvokeExpr newInterfaceInvokeExpr(Local base, SootMethodRef method, List<? extends Value> args) { return new JInterfaceInvokeExpr(base, method, args); }
/** * Constructs a EnterMonitorStmt(Immediate) grammar chunk. */ public EnterMonitorStmt newEnterMonitorStmt(Value op) { return new JEnterMonitorStmt(op); }
/** * Constructs a NopStmt() grammar chunk. */ public NopStmt newNopStmt() { return new JNopStmt(); }
/** * Constructs a new JTrap for the given exception on the given Stmt range with the given Stmt handler. */ public Trap newTrap(SootClass exception, Unit beginStmt, Unit endStmt, Unit handlerStmt) { return new JTrap(exception, beginStmt, endStmt, handlerStmt); }
/** * Constructs a ShrExpr(Immediate, Immediate) grammar chunk. */ public ShrExpr newShrExpr(Value op1, Value op2) { return new JShrExpr(op1, op2); }
/** * Constructs a DivExpr(Immediate, Immediate) grammar chunk. */ public DivExpr newDivExpr(Value op1, Value op2) { return new JDivExpr(op1, op2); }
/** * Constructs a CmplExpr(Immediate, Immediate) grammar chunk. */ public CmplExpr newCmplExpr(Value op1, Value op2) { return new JCmplExpr(op1, op2); }
/** * Constructs a AndExpr(Immediate, Immediate) grammar chunk. */ public AndExpr newAndExpr(Value op1, Value op2) { return new JAndExpr(op1, op2); }
/** * Constructs a NewStaticInvokeExpr(ArrayType, List of Immediate) grammar chunk. */ public StaticInvokeExpr newStaticInvokeExpr(SootMethodRef method, List<? extends Value> args) { return new JStaticInvokeExpr(method, args); }
/** * Constructs a LookupSwitchStmt(Immediate, List of Immediate, List of Unit, Stmt) grammar chunk. */ public LookupSwitchStmt newLookupSwitchStmt(Value key, List<IntConstant> lookupValues, List<? extends Unit> targets, Unit defaultTarget) { return new JLookupSwitchStmt(key, lookupValues, targets, defaultTarget); }
/** * Constructs a CaughtExceptionRef() grammar chunk. */ public CaughtExceptionRef newCaughtExceptionRef() { return new JCaughtExceptionRef(); }