class com.sun.tools.javac.jvm.ClassReader$CompleterDeproxy implements com.sun.tools.javac.comp.Annotate$AnnotationTypeCompleter
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: com.sun.tools.javac.jvm.ClassReader$CompleterDeproxy
  super_class: java.lang.Object
{
  com.sun.tools.javac.code.Symbol$ClassSymbol proxyOn;
    descriptor: Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
    flags: (0x0000) 

  com.sun.tools.javac.jvm.ClassReader$CompoundAnnotationProxy target;
    descriptor: Lcom/sun/tools/javac/jvm/ClassReader$CompoundAnnotationProxy;
    flags: (0x0000) 

  com.sun.tools.javac.jvm.ClassReader$CompoundAnnotationProxy repeatable;
    descriptor: Lcom/sun/tools/javac/jvm/ClassReader$CompoundAnnotationProxy;
    flags: (0x0000) 

  final com.sun.tools.javac.jvm.ClassReader this$0;
    descriptor: Lcom/sun/tools/javac/jvm/ClassReader;
    flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC

  public void <init>(com.sun.tools.javac.jvm.ClassReader, com.sun.tools.javac.code.Symbol$ClassSymbol, com.sun.tools.javac.jvm.ClassReader$CompoundAnnotationProxy, com.sun.tools.javac.jvm.ClassReader$CompoundAnnotationProxy);
    descriptor: (Lcom/sun/tools/javac/jvm/ClassReader;Lcom/sun/tools/javac/code/Symbol$ClassSymbol;Lcom/sun/tools/javac/jvm/ClassReader$CompoundAnnotationProxy;Lcom/sun/tools/javac/jvm/ClassReader$CompoundAnnotationProxy;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=5, args_size=5
        start local 0 // com.sun.tools.javac.jvm.ClassReader$CompleterDeproxy this
        start local 2 // com.sun.tools.javac.code.Symbol$ClassSymbol c
        start local 3 // com.sun.tools.javac.jvm.ClassReader$CompoundAnnotationProxy target
        start local 4 // com.sun.tools.javac.jvm.ClassReader$CompoundAnnotationProxy repeatable
         0: .line 2838
            aload 0 /* this */
            aload 1
            putfield com.sun.tools.javac.jvm.ClassReader$CompleterDeproxy.this$0:Lcom/sun/tools/javac/jvm/ClassReader;
         1: .line 2836
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         2: .line 2839
            aload 0 /* this */
            aload 2 /* c */
            putfield com.sun.tools.javac.jvm.ClassReader$CompleterDeproxy.proxyOn:Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
         3: .line 2840
            aload 0 /* this */
            aload 3 /* target */
            putfield com.sun.tools.javac.jvm.ClassReader$CompleterDeproxy.target:Lcom/sun/tools/javac/jvm/ClassReader$CompoundAnnotationProxy;
         4: .line 2841
            aload 0 /* this */
            aload 4 /* repeatable */
            putfield com.sun.tools.javac.jvm.ClassReader$CompleterDeproxy.repeatable:Lcom/sun/tools/javac/jvm/ClassReader$CompoundAnnotationProxy;
         5: .line 2842
            return
        end local 4 // com.sun.tools.javac.jvm.ClassReader$CompoundAnnotationProxy repeatable
        end local 3 // com.sun.tools.javac.jvm.ClassReader$CompoundAnnotationProxy target
        end local 2 // com.sun.tools.javac.code.Symbol$ClassSymbol c
        end local 0 // com.sun.tools.javac.jvm.ClassReader$CompleterDeproxy this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    6     0        this  Lcom/sun/tools/javac/jvm/ClassReader$CompleterDeproxy;
            0    6     2           c  Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
            0    6     3      target  Lcom/sun/tools/javac/jvm/ClassReader$CompoundAnnotationProxy;
            0    6     4  repeatable  Lcom/sun/tools/javac/jvm/ClassReader$CompoundAnnotationProxy;
    MethodParameters:
            Name  Flags
      this$0      final
      c           
      target      
      repeatable  

  public void complete(com.sun.tools.javac.code.Symbol$ClassSymbol);
    descriptor: (Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=2
        start local 0 // com.sun.tools.javac.jvm.ClassReader$CompleterDeproxy this
        start local 1 // com.sun.tools.javac.code.Symbol$ClassSymbol sym
         0: .line 2846
            aload 0 /* this */
            getfield com.sun.tools.javac.jvm.ClassReader$CompleterDeproxy.proxyOn:Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
            aload 1 /* sym */
            if_acmpne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: invokestatic com.sun.tools.javac.util.Assert.check:(Z)V
         3: .line 2847
            aconst_null
            astore 2 /* theTarget */
        start local 2 // com.sun.tools.javac.code.Attribute$Compound theTarget
         4: aconst_null
            astore 3 /* theRepeatable */
        start local 3 // com.sun.tools.javac.code.Attribute$Compound theRepeatable
         5: .line 2851
            aload 0 /* this */
            getfield com.sun.tools.javac.jvm.ClassReader$CompleterDeproxy.target:Lcom/sun/tools/javac/jvm/ClassReader$CompoundAnnotationProxy;
            ifnull 8
         6: .line 2852
            new com.sun.tools.javac.jvm.ClassReader$AnnotationDeproxy
            dup
            aload 0 /* this */
            getfield com.sun.tools.javac.jvm.ClassReader$CompleterDeproxy.this$0:Lcom/sun/tools/javac/jvm/ClassReader;
            aload 0 /* this */
            getfield com.sun.tools.javac.jvm.ClassReader$CompleterDeproxy.proxyOn:Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
            invokespecial com.sun.tools.javac.jvm.ClassReader$AnnotationDeproxy.<init>:(Lcom/sun/tools/javac/jvm/ClassReader;Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)V
            astore 4 /* deproxy */
        start local 4 // com.sun.tools.javac.jvm.ClassReader$AnnotationDeproxy deproxy
         7: .line 2853
            aload 4 /* deproxy */
            aload 0 /* this */
            getfield com.sun.tools.javac.jvm.ClassReader$CompleterDeproxy.target:Lcom/sun/tools/javac/jvm/ClassReader$CompoundAnnotationProxy;
            invokevirtual com.sun.tools.javac.jvm.ClassReader$AnnotationDeproxy.deproxyCompound:(Lcom/sun/tools/javac/jvm/ClassReader$CompoundAnnotationProxy;)Lcom/sun/tools/javac/code/Attribute$Compound;
            astore 2 /* theTarget */
        end local 4 // com.sun.tools.javac.jvm.ClassReader$AnnotationDeproxy deproxy
         8: .line 2856
      StackMap locals: com.sun.tools.javac.code.Attribute$Compound com.sun.tools.javac.code.Attribute$Compound
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.javac.jvm.ClassReader$CompleterDeproxy.repeatable:Lcom/sun/tools/javac/jvm/ClassReader$CompoundAnnotationProxy;
            ifnull 17
         9: .line 2857
            new com.sun.tools.javac.jvm.ClassReader$AnnotationDeproxy
            dup
            aload 0 /* this */
            getfield com.sun.tools.javac.jvm.ClassReader$CompleterDeproxy.this$0:Lcom/sun/tools/javac/jvm/ClassReader;
            aload 0 /* this */
            getfield com.sun.tools.javac.jvm.ClassReader$CompleterDeproxy.proxyOn:Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
            invokespecial com.sun.tools.javac.jvm.ClassReader$AnnotationDeproxy.<init>:(Lcom/sun/tools/javac/jvm/ClassReader;Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)V
            astore 4 /* deproxy */
        start local 4 // com.sun.tools.javac.jvm.ClassReader$AnnotationDeproxy deproxy
        10: .line 2858
            aload 4 /* deproxy */
            aload 0 /* this */
            getfield com.sun.tools.javac.jvm.ClassReader$CompleterDeproxy.repeatable:Lcom/sun/tools/javac/jvm/ClassReader$CompoundAnnotationProxy;
            invokevirtual com.sun.tools.javac.jvm.ClassReader$AnnotationDeproxy.deproxyCompound:(Lcom/sun/tools/javac/jvm/ClassReader$CompoundAnnotationProxy;)Lcom/sun/tools/javac/code/Attribute$Compound;
            astore 3 /* theRepeatable */
        end local 4 // com.sun.tools.javac.jvm.ClassReader$AnnotationDeproxy deproxy
        11: .line 2860
            goto 17
      StackMap locals:
      StackMap stack: java.lang.Exception
        12: astore 5 /* e */
        start local 5 // java.lang.Exception e
        13: .line 2861
            new com.sun.tools.javac.code.Symbol$CompletionFailure
            dup
            aload 1 /* sym */
        14: .line 2862
            aload 0 /* this */
            aload 5 /* e */
            invokedynamic get(Lcom/sun/tools/javac/jvm/ClassReader$CompleterDeproxy;Ljava/lang/Exception;)Ljava/util/function/Supplier;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  ()Ljava/lang/Object;
                  com/sun/tools/javac/jvm/ClassReader$CompleterDeproxy.lambda$0(Ljava/lang/Exception;)Lcom/sun/tools/javac/util/JCDiagnostic; (7)
                  ()Lcom/sun/tools/javac/util/JCDiagnostic;
        15: .line 2863
            aload 0 /* this */
            getfield com.sun.tools.javac.jvm.ClassReader$CompleterDeproxy.this$0:Lcom/sun/tools/javac/jvm/ClassReader;
            getfield com.sun.tools.javac.jvm.ClassReader.dcfh:Lcom/sun/tools/javac/code/DeferredCompletionFailureHandler;
        16: .line 2861
            invokespecial com.sun.tools.javac.code.Symbol$CompletionFailure.<init>:(Lcom/sun/tools/javac/code/Symbol;Ljava/util/function/Supplier;Lcom/sun/tools/javac/code/DeferredCompletionFailureHandler;)V
            athrow
        end local 5 // java.lang.Exception e
        17: .line 2866
      StackMap locals:
      StackMap stack:
            aload 1 /* sym */
            invokevirtual com.sun.tools.javac.code.Symbol$ClassSymbol.getAnnotationTypeMetadata:()Lcom/sun/tools/javac/comp/Annotate$AnnotationTypeMetadata;
            aload 2 /* theTarget */
            invokevirtual com.sun.tools.javac.comp.Annotate$AnnotationTypeMetadata.setTarget:(Lcom/sun/tools/javac/code/Attribute$Compound;)V
        18: .line 2867
            aload 1 /* sym */
            invokevirtual com.sun.tools.javac.code.Symbol$ClassSymbol.getAnnotationTypeMetadata:()Lcom/sun/tools/javac/comp/Annotate$AnnotationTypeMetadata;
            aload 3 /* theRepeatable */
            invokevirtual com.sun.tools.javac.comp.Annotate$AnnotationTypeMetadata.setRepeatable:(Lcom/sun/tools/javac/code/Attribute$Compound;)V
        19: .line 2868
            return
        end local 3 // com.sun.tools.javac.code.Attribute$Compound theRepeatable
        end local 2 // com.sun.tools.javac.code.Attribute$Compound theTarget
        end local 1 // com.sun.tools.javac.code.Symbol$ClassSymbol sym
        end local 0 // com.sun.tools.javac.jvm.ClassReader$CompleterDeproxy this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   20     0           this  Lcom/sun/tools/javac/jvm/ClassReader$CompleterDeproxy;
            0   20     1            sym  Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
            4   20     2      theTarget  Lcom/sun/tools/javac/code/Attribute$Compound;
            5   20     3  theRepeatable  Lcom/sun/tools/javac/code/Attribute$Compound;
            7    8     4        deproxy  Lcom/sun/tools/javac/jvm/ClassReader$AnnotationDeproxy;
           10   11     4        deproxy  Lcom/sun/tools/javac/jvm/ClassReader$AnnotationDeproxy;
           13   17     5              e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           5    11      12  Class java.lang.Exception
    MethodParameters:
      Name  Flags
      sym   

  private com.sun.tools.javac.util.JCDiagnostic lambda$0(java.lang.Exception);
    descriptor: (Ljava/lang/Exception;)Lcom/sun/tools/javac/util/JCDiagnostic;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.tools.javac.jvm.ClassReader$CompleterDeproxy this
         0: .line 2862
            aload 0 /* this */
            getfield com.sun.tools.javac.jvm.ClassReader$CompleterDeproxy.this$0:Lcom/sun/tools/javac/jvm/ClassReader;
            getfield com.sun.tools.javac.jvm.ClassReader.diagFactory:Lcom/sun/tools/javac/util/JCDiagnostic$Factory;
            aload 1
            invokevirtual java.lang.Exception.getMessage:()Ljava/lang/String;
            invokestatic com.sun.tools.javac.resources.CompilerProperties$Fragments.ExceptionMessage:(Ljava/lang/String;)Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;
            invokevirtual com.sun.tools.javac.util.JCDiagnostic$Factory.fragment:(Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;)Lcom/sun/tools/javac/util/JCDiagnostic;
            areturn
        end local 0 // com.sun.tools.javac.jvm.ClassReader$CompleterDeproxy this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/javac/jvm/ClassReader$CompleterDeproxy;
}
SourceFile: "ClassReader.java"
NestHost: com.sun.tools.javac.jvm.ClassReader
InnerClasses:
  public Compound = com.sun.tools.javac.code.Attribute$Compound of com.sun.tools.javac.code.Attribute
  public ClassSymbol = com.sun.tools.javac.code.Symbol$ClassSymbol of com.sun.tools.javac.code.Symbol
  public CompletionFailure = com.sun.tools.javac.code.Symbol$CompletionFailure of com.sun.tools.javac.code.Symbol
  public abstract AnnotationTypeCompleter = com.sun.tools.javac.comp.Annotate$AnnotationTypeCompleter of com.sun.tools.javac.comp.Annotate
  public AnnotationTypeMetadata = com.sun.tools.javac.comp.Annotate$AnnotationTypeMetadata of com.sun.tools.javac.comp.Annotate
  AnnotationDeproxy = com.sun.tools.javac.jvm.ClassReader$AnnotationDeproxy of com.sun.tools.javac.jvm.ClassReader
  private CompleterDeproxy = com.sun.tools.javac.jvm.ClassReader$CompleterDeproxy of com.sun.tools.javac.jvm.ClassReader
  CompoundAnnotationProxy = com.sun.tools.javac.jvm.ClassReader$CompoundAnnotationProxy of com.sun.tools.javac.jvm.ClassReader
  public Fragments = com.sun.tools.javac.resources.CompilerProperties$Fragments of com.sun.tools.javac.resources.CompilerProperties
  public Factory = com.sun.tools.javac.util.JCDiagnostic$Factory of com.sun.tools.javac.util.JCDiagnostic
  public final Fragment = com.sun.tools.javac.util.JCDiagnostic$Fragment of com.sun.tools.javac.util.JCDiagnostic
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles