@Nonnull private BuilderInstruction31c newBuilderInstruction31c(@Nonnull Instruction31c instruction) { return new BuilderInstruction31c( instruction.getOpcode(), instruction.getRegisterA(), convertReference(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_CLASS: {
public void write(@Nonnull Instruction31c instruction) { try { writer.write(instruction.getOpcode().value); writer.write(instruction.getRegisterA()); writer.writeInt(getReferenceIndex(instruction)); } catch (IOException ex) { throw new RuntimeException(ex); } }
public int getRegisterA() { return instruction.getRegisterA(); } }
@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); } }
case CONST_STRING_JUMBO: instructions.add(new Constant.StringConstant(instLoc, ((StringReference)((Instruction31c)inst).getReference()).getString(), ((Instruction31c)inst).getRegisterA(), inst.getOpcode(), this)); break; case CONST_CLASS: {
public void write(@Nonnull Instruction31c instruction) { try { writer.write(getOpcodeValue(instruction.getOpcode())); writer.write(instruction.getRegisterA()); writer.writeInt(getReferenceIndex(instruction)); } catch (IOException ex) { throw new RuntimeException(ex); } }
public int getRegisterA() { return instruction.getRegisterA(); } }
public static ImmutableInstruction31c of(Instruction31c instruction) { if (instruction instanceof ImmutableInstruction31c) { return (ImmutableInstruction31c)instruction; } return new ImmutableInstruction31c( instruction.getOpcode(), instruction.getRegisterA(), instruction.getReference()); }
public void write(@Nonnull Instruction31c instruction) { try { writer.write(getOpcodeValue(instruction.getOpcode())); writer.write(instruction.getRegisterA()); writer.writeInt(getReferenceIndex(instruction)); } catch (IOException ex) { throw new RuntimeException(ex); } }
public int getRegisterA() { return instruction.getRegisterA(); } }
public static ImmutableInstruction31c of(Instruction31c instruction) { if (instruction instanceof ImmutableInstruction31c) { return (ImmutableInstruction31c)instruction; } return new ImmutableInstruction31c( instruction.getOpcode(), instruction.getRegisterA(), instruction.getReference()); }
((Instruction31c) instruction).getRegisterA(), immutableReference)); ((Instruction31c) instruction).getRegisterA(), immutableFieldReference)); ((Instruction31c) instruction).getRegisterA(), immutableTypeReference)); ((Instruction31c) instruction).getRegisterA(), immutableStringReference));
public static ImmutableInstruction31c of(Instruction31c instruction) { if (instruction instanceof ImmutableInstruction31c) { return (ImmutableInstruction31c)instruction; } return new ImmutableInstruction31c( 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(), instruction.getReference()); }
@Nonnull private BuilderInstruction31c newBuilderInstruction31c(@Nonnull Instruction31c instruction) { return new BuilderInstruction31c( instruction.getOpcode(), instruction.getRegisterA(), convertReference(instruction.getReference())); }