class com.oracle.svm.core.genscavenge.HeapImpl$ClassListBuilderVisitor implements com.oracle.svm.core.MemoryWalker$ImageHeapRegionVisitor, com.oracle.svm.core.heap.ObjectVisitor
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: com.oracle.svm.core.genscavenge.HeapImpl$ClassListBuilderVisitor
super_class: java.lang.Object
{
private final java.util.List<java.lang.Class<?>> list;
descriptor: Ljava/util/List;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/List<Ljava/lang/Class<*>;>;
void <init>(java.util.List<java.lang.Class<?>>);
descriptor: (Ljava/util/List;)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield com.oracle.svm.core.genscavenge.HeapImpl$ClassListBuilderVisitor.list:Ljava/util/List;
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/oracle/svm/core/genscavenge/HeapImpl$ClassListBuilderVisitor;
0 3 1 list Ljava/util/List<Ljava/lang/Class<*>;>;
Signature: (Ljava/util/List<Ljava/lang/Class<*>;>;)V
MethodParameters:
Name Flags
list
public <T> boolean visitNativeImageHeapRegion(T, com.oracle.svm.core.MemoryWalker$NativeImageHeapRegionAccess<T>);
descriptor: (Ljava/lang/Object;Lcom/oracle/svm/core/MemoryWalker$NativeImageHeapRegionAccess;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 2
aload 1
invokeinterface com.oracle.svm.core.MemoryWalker$NativeImageHeapRegionAccess.isWritable:(Ljava/lang/Object;)Z
ifne 2
aload 2
aload 1
invokeinterface com.oracle.svm.core.MemoryWalker$NativeImageHeapRegionAccess.containsReferences:(Ljava/lang/Object;)Z
ifeq 2
1: aload 2
aload 1
aload 0
invokeinterface com.oracle.svm.core.MemoryWalker$NativeImageHeapRegionAccess.visitObjects:(Ljava/lang/Object;Lcom/oracle/svm/core/heap/ObjectVisitor;)Z
pop
2: StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/oracle/svm/core/genscavenge/HeapImpl$ClassListBuilderVisitor;
0 3 1 region TT;
0 3 2 access Lcom/oracle/svm/core/MemoryWalker$NativeImageHeapRegionAccess<TT;>;
Signature: <T:Ljava/lang/Object;>(TT;Lcom/oracle/svm/core/MemoryWalker$NativeImageHeapRegionAccess<TT;>;)Z
MethodParameters:
Name Flags
region
access
public boolean visitObject(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 1
instanceof java.lang.Class
ifeq 2
1: aload 0
getfield com.oracle.svm.core.genscavenge.HeapImpl$ClassListBuilderVisitor.list:Ljava/util/List;
aload 1
ldc Ljava/lang/Class;
invokestatic com.oracle.svm.core.snippets.KnownIntrinsics.convertUnknownValue:(Ljava/lang/Object;Ljava/lang/Class;)Ljava/lang/Object;
checkcast java.lang.Class
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
2: StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/oracle/svm/core/genscavenge/HeapImpl$ClassListBuilderVisitor;
0 3 1 o Ljava/lang/Object;
RuntimeVisibleAnnotations:
com.oracle.svm.core.annotate.RestrictHeapAccess(access = com.oracle.svm.core.annotate.RestrictHeapAccess$Access.UNRESTRICTED:Lcom/oracle/svm/core/annotate/RestrictHeapAccess$Access;, overridesCallers = true, reason = "Allocation is fine: this method traverses only the image heap.")
MethodParameters:
Name Flags
o
}
SourceFile: "HeapImpl.java"
NestHost: com.oracle.svm.core.genscavenge.HeapImpl
InnerClasses:
public abstract ImageHeapRegionVisitor = com.oracle.svm.core.MemoryWalker$ImageHeapRegionVisitor of com.oracle.svm.core.MemoryWalker
public abstract NativeImageHeapRegionAccess = com.oracle.svm.core.MemoryWalker$NativeImageHeapRegionAccess of com.oracle.svm.core.MemoryWalker
public final Access = com.oracle.svm.core.annotate.RestrictHeapAccess$Access of com.oracle.svm.core.annotate.RestrictHeapAccess
private ClassListBuilderVisitor = com.oracle.svm.core.genscavenge.HeapImpl$ClassListBuilderVisitor of com.oracle.svm.core.genscavenge.HeapImpl