public class org.graalvm.compiler.core.common.FieldsScanner
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.graalvm.compiler.core.common.FieldsScanner
super_class: java.lang.Object
{
private final org.graalvm.compiler.core.common.FieldsScanner$CalcOffset calc;
descriptor: Lorg/graalvm/compiler/core/common/FieldsScanner$CalcOffset;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
public final java.util.ArrayList<org.graalvm.compiler.core.common.FieldsScanner$FieldInfo> data;
descriptor: Ljava/util/ArrayList;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Signature: Ljava/util/ArrayList<Lorg/graalvm/compiler/core/common/FieldsScanner$FieldInfo;>;
public void <init>(org.graalvm.compiler.core.common.FieldsScanner$CalcOffset);
descriptor: (Lorg/graalvm/compiler/core/common/FieldsScanner$CalcOffset;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
putfield org.graalvm.compiler.core.common.FieldsScanner.data:Ljava/util/ArrayList;
2: aload 0
aload 1
putfield org.graalvm.compiler.core.common.FieldsScanner.calc:Lorg/graalvm/compiler/core/common/FieldsScanner$CalcOffset;
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/graalvm/compiler/core/common/FieldsScanner;
0 4 1 calc Lorg/graalvm/compiler/core/common/FieldsScanner$CalcOffset;
MethodParameters:
Name Flags
calc
public void scan(java.lang.Class<?>, java.lang.Class<?>, );
descriptor: (Ljava/lang/Class;Ljava/lang/Class;Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=11, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
astore 4
start local 4 1: goto 13
2: StackMap locals: java.lang.Class
StackMap stack:
aload 4
invokevirtual java.lang.Class.getDeclaredFields:()[Ljava/lang/reflect/Field;
dup
astore 8
arraylength
istore 7
iconst_0
istore 6
goto 11
StackMap locals: org.graalvm.compiler.core.common.FieldsScanner java.lang.Class java.lang.Class int java.lang.Class top int int java.lang.reflect.Field[]
StackMap stack:
3: aload 8
iload 6
aaload
astore 5
start local 5 4: aload 5
invokevirtual java.lang.reflect.Field.getModifiers:()I
invokestatic java.lang.reflect.Modifier.isStatic:(I)Z
ifeq 6
5: goto 10
6: StackMap locals: org.graalvm.compiler.core.common.FieldsScanner java.lang.Class java.lang.Class int java.lang.Class java.lang.reflect.Field int int java.lang.reflect.Field[]
StackMap stack:
iload 3
ifne 8
aload 5
invokevirtual java.lang.reflect.Field.getModifiers:()I
invokestatic java.lang.reflect.Modifier.isTransient:(I)Z
ifeq 8
7: goto 10
8: StackMap locals:
StackMap stack:
aload 0
getfield org.graalvm.compiler.core.common.FieldsScanner.calc:Lorg/graalvm/compiler/core/common/FieldsScanner$CalcOffset;
aload 5
invokeinterface org.graalvm.compiler.core.common.FieldsScanner$CalcOffset.getOffset:(Ljava/lang/reflect/Field;)J
lstore 9
start local 9 9: aload 0
aload 5
lload 9
invokevirtual org.graalvm.compiler.core.common.FieldsScanner.scanField:(Ljava/lang/reflect/Field;J)V
end local 9 end local 5 10: StackMap locals: org.graalvm.compiler.core.common.FieldsScanner java.lang.Class java.lang.Class int java.lang.Class top int int java.lang.reflect.Field[]
StackMap stack:
iinc 6 1
StackMap locals:
StackMap stack:
11: iload 6
iload 7
if_icmplt 3
12: aload 4
invokevirtual java.lang.Class.getSuperclass:()Ljava/lang/Class;
astore 4
13: StackMap locals: org.graalvm.compiler.core.common.FieldsScanner java.lang.Class java.lang.Class int java.lang.Class
StackMap stack:
aload 4
aload 2
if_acmpne 2
14: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lorg/graalvm/compiler/core/common/FieldsScanner;
0 15 1 clazz Ljava/lang/Class<*>;
0 15 2 endClazz Ljava/lang/Class<*>;
0 15 3 includeTransient Z
1 15 4 currentClazz Ljava/lang/Class<*>;
4 10 5 field Ljava/lang/reflect/Field;
9 10 9 offset J
Signature: (Ljava/lang/Class<*>;Ljava/lang/Class<*>;Z)V
MethodParameters:
Name Flags
clazz
endClazz
includeTransient
protected void scanField(java.lang.reflect.Field, long);
descriptor: (Ljava/lang/reflect/Field;J)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=8, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.graalvm.compiler.core.common.FieldsScanner.data:Ljava/util/ArrayList;
new org.graalvm.compiler.core.common.FieldsScanner$FieldInfo
dup
lload 2
aload 1
invokevirtual java.lang.reflect.Field.getName:()Ljava/lang/String;
aload 1
invokevirtual java.lang.reflect.Field.getType:()Ljava/lang/Class;
aload 1
invokevirtual java.lang.reflect.Field.getDeclaringClass:()Ljava/lang/Class;
invokespecial org.graalvm.compiler.core.common.FieldsScanner$FieldInfo.<init>:(JLjava/lang/String;Ljava/lang/Class;Ljava/lang/Class;)V
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/core/common/FieldsScanner;
0 2 1 field Ljava/lang/reflect/Field;
0 2 2 offset J
MethodParameters:
Name Flags
field
offset
}
SourceFile: "FieldsScanner.java"
NestMembers:
org.graalvm.compiler.core.common.FieldsScanner$CalcOffset org.graalvm.compiler.core.common.FieldsScanner$DefaultCalcOffset org.graalvm.compiler.core.common.FieldsScanner$FieldInfo
InnerClasses:
public abstract CalcOffset = org.graalvm.compiler.core.common.FieldsScanner$CalcOffset of org.graalvm.compiler.core.common.FieldsScanner
public DefaultCalcOffset = org.graalvm.compiler.core.common.FieldsScanner$DefaultCalcOffset of org.graalvm.compiler.core.common.FieldsScanner
public FieldInfo = org.graalvm.compiler.core.common.FieldsScanner$FieldInfo of org.graalvm.compiler.core.common.FieldsScanner