Interface Instruction

All Known Subinterfaces:
ArrayPayload, DualReferenceInstruction, FieldOffsetInstruction, FiveRegisterInstruction, HatLiteralInstruction, InlineIndexInstruction, Instruction10t, Instruction10x, Instruction11n, Instruction11x, Instruction12x, Instruction20bc, Instruction20t, Instruction21c, Instruction21ih, Instruction21lh, Instruction21s, Instruction21t, Instruction22b, Instruction22c, Instruction22cs, Instruction22s, Instruction22t, Instruction22x, Instruction23x, Instruction30t, Instruction31c, Instruction31i, Instruction31t, Instruction32x, Instruction35c, Instruction35mi, Instruction35ms, Instruction3rc, Instruction3rmi, Instruction3rms, Instruction45cc, Instruction4rcc, Instruction51l, LongHatLiteralInstruction, NarrowHatLiteralInstruction, NarrowLiteralInstruction, OffsetInstruction, OneRegisterInstruction, PackedSwitchPayload, PayloadInstruction, ReferenceInstruction, RegisterRangeInstruction, SparseSwitchPayload, SwitchPayload, ThreeRegisterInstruction, TwoRegisterInstruction, UnknownInstruction, VariableRegisterInstruction, VerificationErrorInstruction, VtableIndexInstruction, WideLiteralInstruction
All Known Implementing Classes:
BuilderArrayPayload, BuilderInstruction, BuilderInstruction10t, BuilderInstruction10x, BuilderInstruction11n, BuilderInstruction11x, BuilderInstruction12x, BuilderInstruction20bc, BuilderInstruction20t, BuilderInstruction21c, BuilderInstruction21ih, BuilderInstruction21lh, BuilderInstruction21s, BuilderInstruction21t, BuilderInstruction22b, BuilderInstruction22c, BuilderInstruction22cs, BuilderInstruction22s, BuilderInstruction22t, BuilderInstruction22x, BuilderInstruction23x, BuilderInstruction30t, BuilderInstruction31c, BuilderInstruction31i, BuilderInstruction31t, BuilderInstruction32x, BuilderInstruction35c, BuilderInstruction35mi, BuilderInstruction35ms, BuilderInstruction3rc, BuilderInstruction3rmi, BuilderInstruction3rms, BuilderInstruction45cc, BuilderInstruction4rcc, BuilderInstruction51l, BuilderOffsetInstruction, BuilderPackedSwitchPayload, BuilderSparseSwitchPayload, BuilderSwitchPayload, DexBackedArrayPayload, DexBackedInstruction, DexBackedInstruction10t, DexBackedInstruction10x, DexBackedInstruction11n, DexBackedInstruction11x, DexBackedInstruction12x, DexBackedInstruction20bc, DexBackedInstruction20t, DexBackedInstruction21c, DexBackedInstruction21ih, DexBackedInstruction21lh, DexBackedInstruction21s, DexBackedInstruction21t, DexBackedInstruction22b, DexBackedInstruction22c, DexBackedInstruction22cs, DexBackedInstruction22s, DexBackedInstruction22t, DexBackedInstruction22x, DexBackedInstruction23x, DexBackedInstruction30t, DexBackedInstruction31c, DexBackedInstruction31i, DexBackedInstruction31t, DexBackedInstruction32x, DexBackedInstruction35c, DexBackedInstruction35mi, DexBackedInstruction35ms, DexBackedInstruction3rc, DexBackedInstruction3rmi, DexBackedInstruction3rms, DexBackedInstruction45cc, DexBackedInstruction4rcc, DexBackedInstruction51l, DexBackedPackedSwitchPayload, DexBackedSparseSwitchPayload, DexBackedUnknownInstruction, ImmutableArrayPayload, ImmutableInstruction, ImmutableInstruction10t, ImmutableInstruction10x, ImmutableInstruction11n, ImmutableInstruction11x, ImmutableInstruction12x, ImmutableInstruction20bc, ImmutableInstruction20t, ImmutableInstruction21c, ImmutableInstruction21ih, ImmutableInstruction21lh, ImmutableInstruction21s, ImmutableInstruction21t, ImmutableInstruction22b, ImmutableInstruction22c, ImmutableInstruction22cs, ImmutableInstruction22s, ImmutableInstruction22t, ImmutableInstruction22x, ImmutableInstruction23x, ImmutableInstruction30t, ImmutableInstruction31c, ImmutableInstruction31i, ImmutableInstruction31t, ImmutableInstruction32x, ImmutableInstruction35c, ImmutableInstruction35mi, ImmutableInstruction35ms, ImmutableInstruction3rc, ImmutableInstruction3rmi, ImmutableInstruction3rms, ImmutableInstruction45cc, ImmutableInstruction4rcc, ImmutableInstruction51l, ImmutablePackedSwitchPayload, ImmutableSparseSwitchPayload, ImmutableUnknownInstruction, InstructionRewriter.BaseRewrittenReferenceInstruction, InstructionRewriter.RewrittenInstruction20bc, InstructionRewriter.RewrittenInstruction21c, InstructionRewriter.RewrittenInstruction22c, InstructionRewriter.RewrittenInstruction31c, InstructionRewriter.RewrittenInstruction35c, InstructionRewriter.RewrittenInstruction3rc, UnresolvedOdexInstruction

public interface Instruction
This class represents a generic instruction. There are two categories of sub-interfaces of this interface. The dexlib2.iface.instruction.* interfaces are set of generic categories of instructions, while the dexlib2.iface.instruction.formats.* interfaces each represent a specific instruction format, and are typically built up as a composite of generic instruction interfaces.
  • Method Summary

    Modifier and Type
    Method
    Description
    int
    Gets the size of this instruction.
    Gets the opcode of this instruction.
  • Method Details

    • getOpcode

      Opcode getOpcode()
      Gets the opcode of this instruction.
      Returns:
      The Opcode of this instruction.
    • getCodeUnits

      int getCodeUnits()
      Gets the size of this instruction.
      Returns:
      The size of this instruction, as a count of the number of 16-bit code units that make up this instruction.