public void endValueBox(ValueBox u) { endOffset = output().length() - lastNewline; if (hasColorTag(u)) { u.addTag(new PositionTag(startOffsets.pop().intValue(), endOffset)); } }
private soot.jimple.BinopExpr updateTags(soot.jimple.BinopExpr binary, ASTNode binaryLocation, soot.Value op1, soot.Value op2) { createTag(binary, binaryLocation); soot.tagkit.Tag op1tag = getTag(op1); if(op1tag != null) binary.getOp1Box().addTag(op1tag); soot.tagkit.Tag op2tag = getTag(op2); if(op2tag != null) binary.getOp2Box().addTag(op2tag); return binary; }
public soot.jimple.IdentityStmt newIdentityStmt(Value local, Value identityRef, ASTNode location) { soot.jimple.IdentityStmt stmt = Jimple.v().newIdentityStmt(local, identityRef); soot.tagkit.Tag left = getTag(local); if(left != null) stmt.getLeftOpBox().addTag(left); soot.tagkit.Tag right = getTag(identityRef); if(right != null) stmt.getRightOpBox().addTag(right); return stmt; }
public soot.jimple.SpecialInvokeExpr newSpecialInvokeExpr(Local base, SootMethodRef method, java.util.List args, ASTNode location) { soot.jimple.SpecialInvokeExpr expr = Jimple.v().newSpecialInvokeExpr(base, method, args); createTag(expr, location); for(int i = 0; i < args.size(); i++) { soot.tagkit.Tag tag = getTag((Value)args.get(i)); if(tag != null) expr.getArgBox(i).addTag(tag); } return expr; }
public soot.jimple.NewMultiArrayExpr newNewMultiArrayExpr(ArrayType type, java.util.List sizes, ASTNode location) { soot.jimple.NewMultiArrayExpr expr = Jimple.v().newNewMultiArrayExpr(type, sizes); createTag(expr, location); for(int i = 0; i < sizes.size(); i++) { soot.tagkit.Tag tag = getTag((Value)sizes.get(i)); if(tag != null) expr.getSizeBox(i).addTag(tag); } return expr; }
public soot.jimple.VirtualInvokeExpr newVirtualInvokeExpr(Local base, SootMethodRef method, java.util.List args, ASTNode location) { soot.jimple.VirtualInvokeExpr expr = Jimple.v().newVirtualInvokeExpr(base, method, args); createTag(expr, location); for(int i = 0; i < args.size(); i++) { soot.tagkit.Tag tag = getTag((Value)args.get(i)); if(tag != null) expr.getArgBox(i).addTag(tag); } return expr; }
public soot.jimple.StaticInvokeExpr newStaticInvokeExpr(SootMethodRef method, java.util.List args, ASTNode location) { soot.jimple.StaticInvokeExpr expr = Jimple.v().newStaticInvokeExpr(method, args); createTag(expr, location); for(int i = 0; i < args.size(); i++) { soot.tagkit.Tag tag = getTag((Value)args.get(i)); if(tag != null) expr.getArgBox(i).addTag(tag); } return expr; }
public soot.jimple.AssignStmt newAssignStmt(Value variable, Value rvalue, ASTNode location) { soot.jimple.AssignStmt stmt = Jimple.v().newAssignStmt(variable, rvalue); soot.tagkit.Tag left = getTag(variable); if(left != null) stmt.getLeftOpBox().addTag(left); soot.tagkit.Tag right = getTag(rvalue); if(right != null) stmt.getRightOpBox().addTag(right); return stmt; }
public soot.jimple.ArrayRef newArrayRef(Value base, Value index, ASTNode location) { soot.jimple.ArrayRef ref = Jimple.v().newArrayRef(base, index); createTag(ref, location); soot.tagkit.Tag baseTag = getTag(base); if(baseTag != null) ref.getBaseBox().addTag(baseTag); soot.tagkit.Tag indexTag = getTag(index); if(indexTag != null) ref.getIndexBox().addTag(indexTag); return ref; }
public soot.jimple.TableSwitchStmt newTableSwitchStmt(Value key, int lowIndex, int highIndex, java.util.List targets, Unit defaultTarget, ASTNode location) { soot.jimple.TableSwitchStmt stmt = Jimple.v().newTableSwitchStmt(key, lowIndex, highIndex, targets, defaultTarget); soot.tagkit.Tag tag = getTag(key); if(tag != null) stmt.getKeyBox().addTag(tag); return stmt; }
public soot.jimple.LookupSwitchStmt newLookupSwitchStmt(Value key, java.util.List lookupValues, java.util.List targets, Unit defaultTarget, ASTNode location) { soot.jimple.LookupSwitchStmt stmt = Jimple.v().newLookupSwitchStmt(key, lookupValues, targets, defaultTarget); soot.tagkit.Tag tag = getTag(key); if(tag != null) stmt.getKeyBox().addTag(tag); return stmt; }
public soot.jimple.ExitMonitorStmt newExitMonitorStmt(Value op, ASTNode location) { soot.jimple.ExitMonitorStmt stmt = Jimple.v().newExitMonitorStmt(op); soot.tagkit.Tag tag = getTag(op); if(tag != null) stmt.getOpBox().addTag(tag); return stmt; }
public soot.jimple.ReturnStmt newReturnStmt(Value op, ASTNode location) { soot.jimple.ReturnStmt stmt = Jimple.v().newReturnStmt(op); soot.tagkit.Tag tag = getTag(op); if(tag != null) stmt.getOpBox().addTag(tag); return stmt; }
public soot.jimple.InvokeStmt newInvokeStmt(Value op, ASTNode location) { soot.jimple.InvokeStmt stmt = Jimple.v().newInvokeStmt(op); soot.tagkit.Tag tag = getTag(op); if(tag != null) stmt.getInvokeExprBox().addTag(tag); return stmt; }
public soot.jimple.ThrowStmt newThrowStmt(Value op, ASTNode location) { soot.jimple.ThrowStmt stmt = Jimple.v().newThrowStmt(op); soot.tagkit.Tag tag = getTag(op); if(tag != null) stmt.getOpBox().addTag(tag); return stmt; }
public soot.jimple.EnterMonitorStmt newEnterMonitorStmt(Value op, ASTNode location) { soot.jimple.EnterMonitorStmt stmt = Jimple.v().newEnterMonitorStmt(op); soot.tagkit.Tag tag = getTag(op); if(tag != null) stmt.getOpBox().addTag(tag); return stmt; }
public soot.jimple.IfStmt newIfStmt(Value op, Unit target, ASTNode location) { soot.jimple.IfStmt stmt = Jimple.v().newIfStmt(op, target); soot.tagkit.Tag tag = getTag(op); if(tag != null) stmt.getConditionBox().addTag(tag); return stmt; }
public soot.jimple.CastExpr newCastExpr(Value op1, Type t, ASTNode location) { soot.jimple.CastExpr expr = Jimple.v().newCastExpr(op1, t); createTag(expr, location); soot.tagkit.Tag op1tag = getTag(op1); if(op1tag != null) expr.getOpBox().addTag(op1tag); return expr; }
public soot.jimple.InstanceOfExpr newInstanceOfExpr(Value op1, Type t, ASTNode location) { soot.jimple.InstanceOfExpr expr = Jimple.v().newInstanceOfExpr(op1, t); createTag(expr, location); soot.tagkit.Tag op1tag = getTag(op1); if(op1tag != null) expr.getOpBox().addTag(op1tag); return expr; }
public soot.jimple.NewArrayExpr newNewArrayExpr(Type type, Value size, ASTNode location) { soot.jimple.NewArrayExpr expr = Jimple.v().newNewArrayExpr(type, size); createTag(expr, location); soot.tagkit.Tag tag = getTag(size); if(tag != null) expr.getSizeBox().addTag(tag); return expr; }