public final class com.oracle.svm.core.SubstrateAnnotationInvocationHandler implements java.lang.reflect.InvocationHandler
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: com.oracle.svm.core.SubstrateAnnotationInvocationHandler
super_class: java.lang.Object
{
private final java.lang.reflect.InvocationHandler hostedInvocationHandler;
descriptor: Ljava/lang/reflect/InvocationHandler;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
RuntimeVisibleAnnotations:
org.graalvm.nativeimage.Platforms(value = {Lorg/graalvm/nativeimage/Platform$HOSTED_ONLY;})
public void <init>(java.lang.reflect.InvocationHandler);
descriptor: (Ljava/lang/reflect/InvocationHandler;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 // com.oracle.svm.core.SubstrateAnnotationInvocationHandler this
start local 1 // java.lang.reflect.InvocationHandler hostedInvocationHandler
0: .line 47
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
1: .line 48
aload 0 /* this */
aload 1 /* hostedInvocationHandler */
putfield com.oracle.svm.core.SubstrateAnnotationInvocationHandler.hostedInvocationHandler:Ljava/lang/reflect/InvocationHandler;
2: .line 49
return
end local 1 // java.lang.reflect.InvocationHandler hostedInvocationHandler
end local 0 // com.oracle.svm.core.SubstrateAnnotationInvocationHandler this
LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/oracle/svm/core/SubstrateAnnotationInvocationHandler;
0 3 1 hostedInvocationHandler Ljava/lang/reflect/InvocationHandler;
RuntimeVisibleAnnotations:
org.graalvm.nativeimage.Platforms(value = {Lorg/graalvm/nativeimage/Platform$HOSTED_ONLY;})
MethodParameters:
Name Flags
hostedInvocationHandler
public java.lang.Object invoke(java.lang.Object, java.lang.reflect.Method, java.lang.Object[]);
descriptor: (Ljava/lang/Object;Ljava/lang/reflect/Method;[Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=4
start local 0 // com.oracle.svm.core.SubstrateAnnotationInvocationHandler this
start local 1 // java.lang.Object proxy
start local 2 // java.lang.reflect.Method method
start local 3 // java.lang.Object[] args
0: .line 53
getstatic com.oracle.svm.core.SubstrateUtil.HOSTED:Z
ifeq 2
1: .line 54
aload 0 /* this */
getfield com.oracle.svm.core.SubstrateAnnotationInvocationHandler.hostedInvocationHandler:Ljava/lang/reflect/InvocationHandler;
aload 1 /* proxy */
aload 2 /* method */
aload 3 /* args */
invokeinterface java.lang.reflect.InvocationHandler.invoke:(Ljava/lang/Object;Ljava/lang/reflect/Method;[Ljava/lang/Object;)Ljava/lang/Object;
areturn
2: .line 56
StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "InvocationHandler for annotations must not be used. Method: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2 /* method */
invokevirtual java.lang.reflect.Method.toString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
end local 3 // java.lang.Object[] args
end local 2 // java.lang.reflect.Method method
end local 1 // java.lang.Object proxy
end local 0 // com.oracle.svm.core.SubstrateAnnotationInvocationHandler this
LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/oracle/svm/core/SubstrateAnnotationInvocationHandler;
0 3 1 proxy Ljava/lang/Object;
0 3 2 method Ljava/lang/reflect/Method;
0 3 3 args [Ljava/lang/Object;
Exceptions:
throws java.lang.Throwable
MethodParameters:
Name Flags
proxy
method
args
}
SourceFile: "SubstrateAnnotationInvocationHandler.java"