class com.caucho.hessian.io.FieldDeserializer2FactoryUnsafe$ObjectFieldDeserializer implements com.caucho.hessian.io.FieldDeserializer2
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: com.caucho.hessian.io.FieldDeserializer2FactoryUnsafe$ObjectFieldDeserializer
super_class: java.lang.Object
{
private final java.lang.reflect.Field _field;
descriptor: Ljava/lang/reflect/Field;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final long _offset;
descriptor: J
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
void <init>(java.lang.reflect.Field);
descriptor: (Ljava/lang/reflect/Field;)V
flags: (0x0000)
Code:
stack=3, locals=2, args_size=2
start local 0 // com.caucho.hessian.io.FieldDeserializer2FactoryUnsafe$ObjectFieldDeserializer this
start local 1 // java.lang.reflect.Field field
0: .line 152
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
1: .line 154
aload 0 /* this */
aload 1 /* field */
putfield com.caucho.hessian.io.FieldDeserializer2FactoryUnsafe$ObjectFieldDeserializer._field:Ljava/lang/reflect/Field;
2: .line 155
aload 0 /* this */
getstatic com.caucho.hessian.io.FieldDeserializer2FactoryUnsafe._unsafe:Lsun/misc/Unsafe;
aload 0 /* this */
getfield com.caucho.hessian.io.FieldDeserializer2FactoryUnsafe$ObjectFieldDeserializer._field:Ljava/lang/reflect/Field;
invokevirtual sun.misc.Unsafe.objectFieldOffset:(Ljava/lang/reflect/Field;)J
putfield com.caucho.hessian.io.FieldDeserializer2FactoryUnsafe$ObjectFieldDeserializer._offset:J
3: .line 156
return
end local 1 // java.lang.reflect.Field field
end local 0 // com.caucho.hessian.io.FieldDeserializer2FactoryUnsafe$ObjectFieldDeserializer this
LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/caucho/hessian/io/FieldDeserializer2FactoryUnsafe$ObjectFieldDeserializer;
0 4 1 field Ljava/lang/reflect/Field;
MethodParameters:
Name Flags
field
public void deserialize(com.caucho.hessian.io.AbstractHessianInput, java.lang.Object);
descriptor: (Lcom/caucho/hessian/io/AbstractHessianInput;Ljava/lang/Object;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=3
start local 0 // com.caucho.hessian.io.FieldDeserializer2FactoryUnsafe$ObjectFieldDeserializer this
start local 1 // com.caucho.hessian.io.AbstractHessianInput in
start local 2 // java.lang.Object obj
0: .line 162
aconst_null
astore 3 /* value */
start local 3 // java.lang.Object value
1: .line 165
aload 1 /* in */
aload 0 /* this */
getfield com.caucho.hessian.io.FieldDeserializer2FactoryUnsafe$ObjectFieldDeserializer._field:Ljava/lang/reflect/Field;
invokevirtual java.lang.reflect.Field.getType:()Ljava/lang/Class;
invokevirtual com.caucho.hessian.io.AbstractHessianInput.readObject:(Ljava/lang/Class;)Ljava/lang/Object;
astore 3 /* value */
2: .line 167
getstatic com.caucho.hessian.io.FieldDeserializer2FactoryUnsafe._unsafe:Lsun/misc/Unsafe;
aload 2 /* obj */
aload 0 /* this */
getfield com.caucho.hessian.io.FieldDeserializer2FactoryUnsafe$ObjectFieldDeserializer._offset:J
aload 3 /* value */
invokevirtual sun.misc.Unsafe.putObject:(Ljava/lang/Object;JLjava/lang/Object;)V
3: .line 168
goto 6
StackMap locals: com.caucho.hessian.io.FieldDeserializer2FactoryUnsafe$ObjectFieldDeserializer com.caucho.hessian.io.AbstractHessianInput java.lang.Object java.lang.Object
StackMap stack: java.lang.Exception
4: astore 4 /* e */
start local 4 // java.lang.Exception e
5: .line 169
aload 0 /* this */
getfield com.caucho.hessian.io.FieldDeserializer2FactoryUnsafe$ObjectFieldDeserializer._field:Ljava/lang/reflect/Field;
aload 2 /* obj */
aload 3 /* value */
aload 4 /* e */
invokestatic com.caucho.hessian.io.FieldDeserializer2FactoryUnsafe.logDeserializeError:(Ljava/lang/reflect/Field;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Throwable;)V
end local 4 // java.lang.Exception e
6: .line 171
StackMap locals:
StackMap stack:
return
end local 3 // java.lang.Object value
end local 2 // java.lang.Object obj
end local 1 // com.caucho.hessian.io.AbstractHessianInput in
end local 0 // com.caucho.hessian.io.FieldDeserializer2FactoryUnsafe$ObjectFieldDeserializer this
LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/caucho/hessian/io/FieldDeserializer2FactoryUnsafe$ObjectFieldDeserializer;
0 7 1 in Lcom/caucho/hessian/io/AbstractHessianInput;
0 7 2 obj Ljava/lang/Object;
1 7 3 value Ljava/lang/Object;
5 6 4 e Ljava/lang/Exception;
Exception table:
from to target type
1 3 4 Class java.lang.Exception
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
in
obj
}
SourceFile: "FieldDeserializer2FactoryUnsafe.java"
NestHost: com.caucho.hessian.io.FieldDeserializer2FactoryUnsafe
InnerClasses:
ObjectFieldDeserializer = com.caucho.hessian.io.FieldDeserializer2FactoryUnsafe$ObjectFieldDeserializer of com.caucho.hessian.io.FieldDeserializer2FactoryUnsafe