@Nonnull private BuilderInstruction31c newBuilderInstruction31c(@Nonnull Instruction31c instruction) { return new BuilderInstruction31c( instruction.getOpcode(), instruction.getRegisterA(), convertReference(instruction.getReference())); }
@Override public void jimplify(DexBody body) { int dest = ((OneRegisterInstruction) instruction).getRegisterA(); String s; if (instruction instanceof Instruction21c) { Instruction21c i = (Instruction21c) instruction; s = ((StringReference) (i.getReference())).getString(); } else if (instruction instanceof Instruction31c) { Instruction31c i = (Instruction31c) instruction; s = ((StringReference) (i.getReference())).getString(); } else { throw new IllegalArgumentException("Expected Instruction21c or Instruction31c but got neither."); } StringConstant sc = StringConstant.v(s); AssignStmt assign = Jimple.v().newAssignStmt(body.getRegisterLocal(dest), sc); setUnit(assign); addTags(assign); body.add(assign); if (IDalvikTyper.ENABLE_DVKTYPER) { DalvikTyper.v().setType(assign.getLeftOpBox(), sc.getType(), false); } }
@Nonnull private BuilderInstruction31c newBuilderInstruction31c(@Nonnull Instruction31c instruction) { return new BuilderInstruction31c( instruction.getOpcode(), instruction.getRegisterA(), instruction.getReference()); }
@Nonnull private BuilderInstruction31c newBuilderInstruction31c(@Nonnull Instruction31c instruction) { return new BuilderInstruction31c( instruction.getOpcode(), instruction.getRegisterA(), instruction.getReference()); }
@Nonnull private BuilderInstruction31c newBuilderInstruction31c(@Nonnull Instruction31c instruction) { return new BuilderInstruction31c( instruction.getOpcode(), instruction.getRegisterA(), instruction.getReference()); }
@Nonnull private BuilderInstruction31c newBuilderInstruction31c(@Nonnull Instruction31c instruction) { return new BuilderInstruction31c( instruction.getOpcode(), instruction.getRegisterA(), convertReference(instruction.getReference())); }
public static ImmutableInstruction31c of(Instruction31c instruction) { if (instruction instanceof ImmutableInstruction31c) { return (ImmutableInstruction31c)instruction; } return new ImmutableInstruction31c( instruction.getOpcode(), instruction.getRegisterA(), instruction.getReference()); }
public static ImmutableInstruction31c of(Instruction31c instruction) { if (instruction instanceof ImmutableInstruction31c) { return (ImmutableInstruction31c)instruction; } return new ImmutableInstruction31c( instruction.getOpcode(), instruction.getRegisterA(), instruction.getReference()); }
public static ImmutableInstruction31c of(Instruction31c instruction) { if (instruction instanceof ImmutableInstruction31c) { return (ImmutableInstruction31c)instruction; } return new ImmutableInstruction31c( instruction.getOpcode(), instruction.getRegisterA(), instruction.getReference()); }
case CONST_STRING_JUMBO: instructions.add(new Constant.StringConstant(instLoc, ((StringReference)((Instruction31c)inst).getReference()).getString(), ((Instruction31c)inst).getRegisterA(), inst.getOpcode(), this)); break;
case CONST_STRING_JUMBO: instructions.add(new Constant.StringConstant(instLoc, ((StringReference)((Instruction31c)inst).getReference()).getString(), ((Instruction31c)inst).getRegisterA(), inst.getOpcode(), this)); break;