class sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl extends sun.reflect.UnsafeQualifiedFieldAccessorImpl
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl
  super_class: sun.reflect.UnsafeQualifiedFieldAccessorImpl
{
  void <init>(java.lang.reflect.Field, boolean);
    descriptor: (Ljava/lang/reflect/Field;Z)V
    flags: (0x0000) 
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl this
        start local 1 // java.lang.reflect.Field field
        start local 2 // boolean isReadOnly
         0: .line 34
            aload 0 /* this */
            aload 1 /* field */
            iload 2 /* isReadOnly */
            invokespecial sun.reflect.UnsafeQualifiedFieldAccessorImpl.<init>:(Ljava/lang/reflect/Field;Z)V
         1: .line 35
            return
        end local 2 // boolean isReadOnly
        end local 1 // java.lang.reflect.Field field
        end local 0 // sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lsun/reflect/UnsafeQualifiedObjectFieldAccessorImpl;
            0    2     1       field  Ljava/lang/reflect/Field;
            0    2     2  isReadOnly  Z
    MethodParameters:
            Name  Flags
      field       
      isReadOnly  

  public java.lang.Object get(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl this
        start local 1 // java.lang.Object obj
         0: .line 38
            aload 0 /* this */
            aload 1 /* obj */
            invokevirtual sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl.ensureObj:(Ljava/lang/Object;)V
         1: .line 39
            getstatic sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl.unsafe:Lsun/misc/Unsafe;
            aload 1 /* obj */
            aload 0 /* this */
            getfield sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl.fieldOffset:J
            invokevirtual sun.misc.Unsafe.getObjectVolatile:(Ljava/lang/Object;J)Ljava/lang/Object;
            areturn
        end local 1 // java.lang.Object obj
        end local 0 // sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/reflect/UnsafeQualifiedObjectFieldAccessorImpl;
            0    2     1   obj  Ljava/lang/Object;
    Exceptions:
      throws java.lang.IllegalArgumentException
    MethodParameters:
      Name  Flags
      obj   

  public boolean getBoolean(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl this
        start local 1 // java.lang.Object obj
         0: .line 43
            aload 0 /* this */
            invokevirtual sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl.newGetBooleanIllegalArgumentException:()Ljava/lang/IllegalArgumentException;
            athrow
        end local 1 // java.lang.Object obj
        end local 0 // sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/reflect/UnsafeQualifiedObjectFieldAccessorImpl;
            0    1     1   obj  Ljava/lang/Object;
    Exceptions:
      throws java.lang.IllegalArgumentException
    MethodParameters:
      Name  Flags
      obj   

  public byte getByte(java.lang.Object);
    descriptor: (Ljava/lang/Object;)B
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl this
        start local 1 // java.lang.Object obj
         0: .line 47
            aload 0 /* this */
            invokevirtual sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl.newGetByteIllegalArgumentException:()Ljava/lang/IllegalArgumentException;
            athrow
        end local 1 // java.lang.Object obj
        end local 0 // sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/reflect/UnsafeQualifiedObjectFieldAccessorImpl;
            0    1     1   obj  Ljava/lang/Object;
    Exceptions:
      throws java.lang.IllegalArgumentException
    MethodParameters:
      Name  Flags
      obj   

  public char getChar(java.lang.Object);
    descriptor: (Ljava/lang/Object;)C
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl this
        start local 1 // java.lang.Object obj
         0: .line 51
            aload 0 /* this */
            invokevirtual sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl.newGetCharIllegalArgumentException:()Ljava/lang/IllegalArgumentException;
            athrow
        end local 1 // java.lang.Object obj
        end local 0 // sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/reflect/UnsafeQualifiedObjectFieldAccessorImpl;
            0    1     1   obj  Ljava/lang/Object;
    Exceptions:
      throws java.lang.IllegalArgumentException
    MethodParameters:
      Name  Flags
      obj   

  public short getShort(java.lang.Object);
    descriptor: (Ljava/lang/Object;)S
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl this
        start local 1 // java.lang.Object obj
         0: .line 55
            aload 0 /* this */
            invokevirtual sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl.newGetShortIllegalArgumentException:()Ljava/lang/IllegalArgumentException;
            athrow
        end local 1 // java.lang.Object obj
        end local 0 // sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/reflect/UnsafeQualifiedObjectFieldAccessorImpl;
            0    1     1   obj  Ljava/lang/Object;
    Exceptions:
      throws java.lang.IllegalArgumentException
    MethodParameters:
      Name  Flags
      obj   

  public int getInt(java.lang.Object);
    descriptor: (Ljava/lang/Object;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl this
        start local 1 // java.lang.Object obj
         0: .line 59
            aload 0 /* this */
            invokevirtual sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl.newGetIntIllegalArgumentException:()Ljava/lang/IllegalArgumentException;
            athrow
        end local 1 // java.lang.Object obj
        end local 0 // sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/reflect/UnsafeQualifiedObjectFieldAccessorImpl;
            0    1     1   obj  Ljava/lang/Object;
    Exceptions:
      throws java.lang.IllegalArgumentException
    MethodParameters:
      Name  Flags
      obj   

  public long getLong(java.lang.Object);
    descriptor: (Ljava/lang/Object;)J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl this
        start local 1 // java.lang.Object obj
         0: .line 63
            aload 0 /* this */
            invokevirtual sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl.newGetLongIllegalArgumentException:()Ljava/lang/IllegalArgumentException;
            athrow
        end local 1 // java.lang.Object obj
        end local 0 // sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/reflect/UnsafeQualifiedObjectFieldAccessorImpl;
            0    1     1   obj  Ljava/lang/Object;
    Exceptions:
      throws java.lang.IllegalArgumentException
    MethodParameters:
      Name  Flags
      obj   

  public float getFloat(java.lang.Object);
    descriptor: (Ljava/lang/Object;)F
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl this
        start local 1 // java.lang.Object obj
         0: .line 67
            aload 0 /* this */
            invokevirtual sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl.newGetFloatIllegalArgumentException:()Ljava/lang/IllegalArgumentException;
            athrow
        end local 1 // java.lang.Object obj
        end local 0 // sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/reflect/UnsafeQualifiedObjectFieldAccessorImpl;
            0    1     1   obj  Ljava/lang/Object;
    Exceptions:
      throws java.lang.IllegalArgumentException
    MethodParameters:
      Name  Flags
      obj   

  public double getDouble(java.lang.Object);
    descriptor: (Ljava/lang/Object;)D
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl this
        start local 1 // java.lang.Object obj
         0: .line 71
            aload 0 /* this */
            invokevirtual sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl.newGetDoubleIllegalArgumentException:()Ljava/lang/IllegalArgumentException;
            athrow
        end local 1 // java.lang.Object obj
        end local 0 // sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/reflect/UnsafeQualifiedObjectFieldAccessorImpl;
            0    1     1   obj  Ljava/lang/Object;
    Exceptions:
      throws java.lang.IllegalArgumentException
    MethodParameters:
      Name  Flags
      obj   

  public void set(java.lang.Object, java.lang.Object);
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl this
        start local 1 // java.lang.Object obj
        start local 2 // java.lang.Object value
         0: .line 77
            aload 0 /* this */
            aload 1 /* obj */
            invokevirtual sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl.ensureObj:(Ljava/lang/Object;)V
         1: .line 78
            aload 0 /* this */
            getfield sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl.isReadOnly:Z
            ifeq 3
         2: .line 79
            aload 0 /* this */
            aload 2 /* value */
            invokevirtual sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl.throwFinalFieldIllegalAccessException:(Ljava/lang/Object;)V
         3: .line 81
      StackMap locals:
      StackMap stack:
            aload 2 /* value */
            ifnull 6
         4: .line 82
            aload 0 /* this */
            getfield sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl.field:Ljava/lang/reflect/Field;
            invokevirtual java.lang.reflect.Field.getType:()Ljava/lang/Class;
            aload 2 /* value */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
            ifne 6
         5: .line 83
            aload 0 /* this */
            aload 2 /* value */
            invokevirtual sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl.throwSetIllegalArgumentException:(Ljava/lang/Object;)V
         6: .line 86
      StackMap locals:
      StackMap stack:
            getstatic sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl.unsafe:Lsun/misc/Unsafe;
            aload 1 /* obj */
            aload 0 /* this */
            getfield sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl.fieldOffset:J
            aload 2 /* value */
            invokevirtual sun.misc.Unsafe.putObjectVolatile:(Ljava/lang/Object;JLjava/lang/Object;)V
         7: .line 87
            return
        end local 2 // java.lang.Object value
        end local 1 // java.lang.Object obj
        end local 0 // sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    8     0   this  Lsun/reflect/UnsafeQualifiedObjectFieldAccessorImpl;
            0    8     1    obj  Ljava/lang/Object;
            0    8     2  value  Ljava/lang/Object;
    Exceptions:
      throws java.lang.IllegalArgumentException, java.lang.IllegalAccessException
    MethodParameters:
       Name  Flags
      obj    
      value  

  public void setBoolean(java.lang.Object, boolean);
    descriptor: (Ljava/lang/Object;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl this
        start local 1 // java.lang.Object obj
        start local 2 // boolean z
         0: .line 92
            aload 0 /* this */
            iload 2 /* z */
            invokevirtual sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl.throwSetIllegalArgumentException:(Z)V
         1: .line 93
            return
        end local 2 // boolean z
        end local 1 // java.lang.Object obj
        end local 0 // sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/reflect/UnsafeQualifiedObjectFieldAccessorImpl;
            0    2     1   obj  Ljava/lang/Object;
            0    2     2     z  Z
    Exceptions:
      throws java.lang.IllegalArgumentException, java.lang.IllegalAccessException
    MethodParameters:
      Name  Flags
      obj   
      z     

  public void setByte(java.lang.Object, byte);
    descriptor: (Ljava/lang/Object;B)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl this
        start local 1 // java.lang.Object obj
        start local 2 // byte b
         0: .line 98
            aload 0 /* this */
            iload 2 /* b */
            invokevirtual sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl.throwSetIllegalArgumentException:(B)V
         1: .line 99
            return
        end local 2 // byte b
        end local 1 // java.lang.Object obj
        end local 0 // sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/reflect/UnsafeQualifiedObjectFieldAccessorImpl;
            0    2     1   obj  Ljava/lang/Object;
            0    2     2     b  B
    Exceptions:
      throws java.lang.IllegalArgumentException, java.lang.IllegalAccessException
    MethodParameters:
      Name  Flags
      obj   
      b     

  public void setChar(java.lang.Object, char);
    descriptor: (Ljava/lang/Object;C)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl this
        start local 1 // java.lang.Object obj
        start local 2 // char c
         0: .line 104
            aload 0 /* this */
            iload 2 /* c */
            invokevirtual sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl.throwSetIllegalArgumentException:(C)V
         1: .line 105
            return
        end local 2 // char c
        end local 1 // java.lang.Object obj
        end local 0 // sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/reflect/UnsafeQualifiedObjectFieldAccessorImpl;
            0    2     1   obj  Ljava/lang/Object;
            0    2     2     c  C
    Exceptions:
      throws java.lang.IllegalArgumentException, java.lang.IllegalAccessException
    MethodParameters:
      Name  Flags
      obj   
      c     

  public void setShort(java.lang.Object, short);
    descriptor: (Ljava/lang/Object;S)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl this
        start local 1 // java.lang.Object obj
        start local 2 // short s
         0: .line 110
            aload 0 /* this */
            iload 2 /* s */
            invokevirtual sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl.throwSetIllegalArgumentException:(S)V
         1: .line 111
            return
        end local 2 // short s
        end local 1 // java.lang.Object obj
        end local 0 // sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/reflect/UnsafeQualifiedObjectFieldAccessorImpl;
            0    2     1   obj  Ljava/lang/Object;
            0    2     2     s  S
    Exceptions:
      throws java.lang.IllegalArgumentException, java.lang.IllegalAccessException
    MethodParameters:
      Name  Flags
      obj   
      s     

  public void setInt(java.lang.Object, int);
    descriptor: (Ljava/lang/Object;I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl this
        start local 1 // java.lang.Object obj
        start local 2 // int i
         0: .line 116
            aload 0 /* this */
            iload 2 /* i */
            invokevirtual sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl.throwSetIllegalArgumentException:(I)V
         1: .line 117
            return
        end local 2 // int i
        end local 1 // java.lang.Object obj
        end local 0 // sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/reflect/UnsafeQualifiedObjectFieldAccessorImpl;
            0    2     1   obj  Ljava/lang/Object;
            0    2     2     i  I
    Exceptions:
      throws java.lang.IllegalArgumentException, java.lang.IllegalAccessException
    MethodParameters:
      Name  Flags
      obj   
      i     

  public void setLong(java.lang.Object, long);
    descriptor: (Ljava/lang/Object;J)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl this
        start local 1 // java.lang.Object obj
        start local 2 // long l
         0: .line 122
            aload 0 /* this */
            lload 2 /* l */
            invokevirtual sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl.throwSetIllegalArgumentException:(J)V
         1: .line 123
            return
        end local 2 // long l
        end local 1 // java.lang.Object obj
        end local 0 // sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/reflect/UnsafeQualifiedObjectFieldAccessorImpl;
            0    2     1   obj  Ljava/lang/Object;
            0    2     2     l  J
    Exceptions:
      throws java.lang.IllegalArgumentException, java.lang.IllegalAccessException
    MethodParameters:
      Name  Flags
      obj   
      l     

  public void setFloat(java.lang.Object, float);
    descriptor: (Ljava/lang/Object;F)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl this
        start local 1 // java.lang.Object obj
        start local 2 // float f
         0: .line 128
            aload 0 /* this */
            fload 2 /* f */
            invokevirtual sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl.throwSetIllegalArgumentException:(F)V
         1: .line 129
            return
        end local 2 // float f
        end local 1 // java.lang.Object obj
        end local 0 // sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/reflect/UnsafeQualifiedObjectFieldAccessorImpl;
            0    2     1   obj  Ljava/lang/Object;
            0    2     2     f  F
    Exceptions:
      throws java.lang.IllegalArgumentException, java.lang.IllegalAccessException
    MethodParameters:
      Name  Flags
      obj   
      f     

  public void setDouble(java.lang.Object, double);
    descriptor: (Ljava/lang/Object;D)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl this
        start local 1 // java.lang.Object obj
        start local 2 // double d
         0: .line 134
            aload 0 /* this */
            dload 2 /* d */
            invokevirtual sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl.throwSetIllegalArgumentException:(D)V
         1: .line 135
            return
        end local 2 // double d
        end local 1 // java.lang.Object obj
        end local 0 // sun.reflect.UnsafeQualifiedObjectFieldAccessorImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/reflect/UnsafeQualifiedObjectFieldAccessorImpl;
            0    2     1   obj  Ljava/lang/Object;
            0    2     2     d  D
    Exceptions:
      throws java.lang.IllegalArgumentException, java.lang.IllegalAccessException
    MethodParameters:
      Name  Flags
      obj   
      d     
}
SourceFile: "UnsafeQualifiedObjectFieldAccessorImpl.java"