public abstract class com.oracle.svm.core.genscavenge.CollectionPolicy
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: com.oracle.svm.core.genscavenge.CollectionPolicy
super_class: java.lang.Object
{
static com.oracle.svm.core.genscavenge.CollectionPolicy getInitialPolicy(org.graalvm.nativeimage.hosted.Feature$FeatureAccess);
descriptor: (Lorg/graalvm/nativeimage/hosted/Feature$FeatureAccess;)Lcom/oracle/svm/core/genscavenge/CollectionPolicy;
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
ldc Lcom/oracle/svm/core/genscavenge/CollectionPolicy;
getstatic com.oracle.svm.core.genscavenge.CollectionPolicy$Options.InitialCollectionPolicy:Lcom/oracle/svm/core/option/HostedOptionKey;
invokevirtual com.oracle.svm.core.option.HostedOptionKey.getValue:()Ljava/lang/Object;
checkcast java.lang.String
invokestatic com.oracle.svm.core.genscavenge.CollectionPolicy.instantiatePolicy:(Lorg/graalvm/nativeimage/hosted/Feature$FeatureAccess;Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Object;
checkcast com.oracle.svm.core.genscavenge.CollectionPolicy
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 access Lorg/graalvm/nativeimage/hosted/Feature$FeatureAccess;
RuntimeVisibleAnnotations:
org.graalvm.nativeimage.Platforms(value = {Lorg/graalvm/nativeimage/Platform$HOSTED_ONLY;})
MethodParameters:
Name Flags
access
private static <T> T instantiatePolicy(org.graalvm.nativeimage.hosted.Feature$FeatureAccess, java.lang.Class<T>, java.lang.String);
descriptor: (Lorg/graalvm/nativeimage/hosted/Feature$FeatureAccess;Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Object;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 2
invokeinterface org.graalvm.nativeimage.hosted.Feature$FeatureAccess.findClassByName:(Ljava/lang/String;)Ljava/lang/Class;
astore 3
start local 3 1: aload 3
ifnonnull 3
2: ldc "Policy %s does not exist. It must be a fully qualified class name."
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 2
aastore
invokestatic com.oracle.svm.core.util.UserError.abort:(Ljava/lang/String;[Ljava/lang/Object;)Lcom/oracle/svm/core/util/UserError$UserException;
athrow
3: StackMap locals: java.lang.Class
StackMap stack:
aload 3
iconst_0
anewarray java.lang.Class
invokevirtual java.lang.Class.getDeclaredConstructor:([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
iconst_0
anewarray java.lang.Object
invokevirtual java.lang.reflect.Constructor.newInstance:([Ljava/lang/Object;)Ljava/lang/Object;
astore 4
start local 4 4: goto 7
end local 4 StackMap locals:
StackMap stack: java.lang.Exception
5: pop
6: ldc "Policy %s cannot be instantiated."
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 2
aastore
invokestatic com.oracle.svm.core.util.UserError.abort:(Ljava/lang/String;[Ljava/lang/Object;)Lcom/oracle/svm/core/util/UserError$UserException;
athrow
start local 4 7: StackMap locals: java.lang.Object
StackMap stack:
aload 1
aload 4
invokevirtual java.lang.Class.isInstance:(Ljava/lang/Object;)Z
ifne 9
8: ldc "Policy %s does not extend %s."
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 2
aastore
dup
iconst_1
aload 1
invokevirtual java.lang.Class.getTypeName:()Ljava/lang/String;
aastore
invokestatic com.oracle.svm.core.util.UserError.abort:(Ljava/lang/String;[Ljava/lang/Object;)Lcom/oracle/svm/core/util/UserError$UserException;
athrow
9: StackMap locals:
StackMap stack:
aload 1
aload 4
invokevirtual java.lang.Class.cast:(Ljava/lang/Object;)Ljava/lang/Object;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 access Lorg/graalvm/nativeimage/hosted/Feature$FeatureAccess;
0 10 1 policyClass Ljava/lang/Class<TT;>;
0 10 2 className Ljava/lang/String;
1 10 3 policy Ljava/lang/Class<*>;
4 5 4 result Ljava/lang/Object;
7 10 4 result Ljava/lang/Object;
Exception table:
from to target type
3 4 5 Class java.lang.Exception
Signature: <T:Ljava/lang/Object;>(Lorg/graalvm/nativeimage/hosted/Feature$FeatureAccess;Ljava/lang/Class<TT;>;Ljava/lang/String;)TT;
RuntimeVisibleAnnotations:
org.graalvm.nativeimage.Platforms(value = {Lorg/graalvm/nativeimage/Platform$HOSTED_ONLY;})
MethodParameters:
Name Flags
access
policyClass
className
public abstract boolean collectIncrementally();
descriptor: ()Z
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public abstract boolean collectCompletely();
descriptor: ()Z
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
void <init>();
descriptor: ()V
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/svm/core/genscavenge/CollectionPolicy;
public abstract void nameToLog(com.oracle.svm.core.log.Log);
descriptor: (Lcom/oracle/svm/core/log/Log;)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
log
public abstract java.lang.String getName();
descriptor: ()Ljava/lang/String;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
static com.oracle.svm.core.genscavenge.GCAccounting getAccounting();
descriptor: ()Lcom/oracle/svm/core/genscavenge/GCAccounting;
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: invokestatic com.oracle.svm.core.genscavenge.GCImpl.getGCImpl:()Lcom/oracle/svm/core/genscavenge/GCImpl;
invokevirtual com.oracle.svm.core.genscavenge.GCImpl.getAccounting:()Lcom/oracle/svm/core/genscavenge/GCAccounting;
areturn
LocalVariableTable:
Start End Slot Name Signature
}
SourceFile: "CollectionPolicy.java"
NestMembers:
com.oracle.svm.core.genscavenge.CollectionPolicy$BySpaceAndTime com.oracle.svm.core.genscavenge.CollectionPolicy$NeverCollect com.oracle.svm.core.genscavenge.CollectionPolicy$OnlyCompletely com.oracle.svm.core.genscavenge.CollectionPolicy$OnlyIncrementally com.oracle.svm.core.genscavenge.CollectionPolicy$Options
InnerClasses:
public BySpaceAndTime = com.oracle.svm.core.genscavenge.CollectionPolicy$BySpaceAndTime of com.oracle.svm.core.genscavenge.CollectionPolicy
public NeverCollect = com.oracle.svm.core.genscavenge.CollectionPolicy$NeverCollect of com.oracle.svm.core.genscavenge.CollectionPolicy
public OnlyCompletely = com.oracle.svm.core.genscavenge.CollectionPolicy$OnlyCompletely of com.oracle.svm.core.genscavenge.CollectionPolicy
public OnlyIncrementally = com.oracle.svm.core.genscavenge.CollectionPolicy$OnlyIncrementally of com.oracle.svm.core.genscavenge.CollectionPolicy
public Options = com.oracle.svm.core.genscavenge.CollectionPolicy$Options of com.oracle.svm.core.genscavenge.CollectionPolicy
public UserException = com.oracle.svm.core.util.UserError$UserException of com.oracle.svm.core.util.UserError
public abstract FeatureAccess = org.graalvm.nativeimage.hosted.Feature$FeatureAccess of org.graalvm.nativeimage.hosted.Feature