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"