public abstract class org.jf.dexlib2.builder.BuilderInstruction implements org.jf.dexlib2.iface.instruction.Instruction
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: org.jf.dexlib2.builder.BuilderInstruction
  super_class: java.lang.Object
{
  protected final org.jf.dexlib2.Opcode opcode;
    descriptor: Lorg/jf/dexlib2/Opcode;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    RuntimeVisibleAnnotations: 
      javax.annotation.Nonnull()

  org.jf.dexlib2.builder.MethodLocation location;
    descriptor: Lorg/jf/dexlib2/builder/MethodLocation;
    flags: (0x0000) 
    RuntimeVisibleAnnotations: 
      javax.annotation.Nullable()

  protected void <init>(org.jf.dexlib2.Opcode);
    descriptor: (Lorg/jf/dexlib2/Opcode;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jf.dexlib2.builder.BuilderInstruction this
        start local 1 // org.jf.dexlib2.Opcode opcode
         0: .line 47
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 48
            aload 1 /* opcode */
            aload 0 /* this */
            invokevirtual org.jf.dexlib2.builder.BuilderInstruction.getFormat:()Lorg/jf/dexlib2/Format;
            invokestatic org.jf.dexlib2.util.Preconditions.checkFormat:(Lorg/jf/dexlib2/Opcode;Lorg/jf/dexlib2/Format;)V
         2: .line 49
            aload 0 /* this */
            aload 1 /* opcode */
            putfield org.jf.dexlib2.builder.BuilderInstruction.opcode:Lorg/jf/dexlib2/Opcode;
         3: .line 50
            return
        end local 1 // org.jf.dexlib2.Opcode opcode
        end local 0 // org.jf.dexlib2.builder.BuilderInstruction this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Lorg/jf/dexlib2/builder/BuilderInstruction;
            0    4     1  opcode  Lorg/jf/dexlib2/Opcode;
    RuntimeVisibleTypeAnnotations: 
      METHOD_FORMAL_PARAMETER
        javax.annotation.Nonnull()
    RuntimeVisibleParameterAnnotations: 
      0:
        javax.annotation.Nonnull()
    MethodParameters:
        Name  Flags
      opcode  

  public org.jf.dexlib2.Opcode getOpcode();
    descriptor: ()Lorg/jf/dexlib2/Opcode;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jf.dexlib2.builder.BuilderInstruction this
         0: .line 53
            aload 0 /* this */
            getfield org.jf.dexlib2.builder.BuilderInstruction.opcode:Lorg/jf/dexlib2/Opcode;
            areturn
        end local 0 // org.jf.dexlib2.builder.BuilderInstruction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jf/dexlib2/builder/BuilderInstruction;
    RuntimeVisibleAnnotations: 
      javax.annotation.Nonnull()
    RuntimeVisibleTypeAnnotations: 
      METHOD_RETURN
        javax.annotation.Nonnull()

  public abstract org.jf.dexlib2.Format getFormat();
    descriptor: ()Lorg/jf/dexlib2/Format;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public int getCodeUnits();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jf.dexlib2.builder.BuilderInstruction this
         0: .line 59
            aload 0 /* this */
            invokevirtual org.jf.dexlib2.builder.BuilderInstruction.getFormat:()Lorg/jf/dexlib2/Format;
            getfield org.jf.dexlib2.Format.size:I
            iconst_2
            idiv
            ireturn
        end local 0 // org.jf.dexlib2.builder.BuilderInstruction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jf/dexlib2/builder/BuilderInstruction;

  public org.jf.dexlib2.builder.MethodLocation getLocation();
    descriptor: ()Lorg/jf/dexlib2/builder/MethodLocation;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.jf.dexlib2.builder.BuilderInstruction this
         0: .line 64
            aload 0 /* this */
            getfield org.jf.dexlib2.builder.BuilderInstruction.location:Lorg/jf/dexlib2/builder/MethodLocation;
            ifnonnull 2
         1: .line 65
            new java.lang.IllegalStateException
            dup
            ldc "Cannot get the location of an instruction that hasn't been added to a method."
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 68
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jf.dexlib2.builder.BuilderInstruction.location:Lorg/jf/dexlib2/builder/MethodLocation;
            areturn
        end local 0 // org.jf.dexlib2.builder.BuilderInstruction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/jf/dexlib2/builder/BuilderInstruction;
    RuntimeVisibleAnnotations: 
      javax.annotation.Nonnull()
    RuntimeVisibleTypeAnnotations: 
      METHOD_RETURN
        javax.annotation.Nonnull()
}
SourceFile: "BuilderInstruction.java"