class com.sun.tools.javac.comp.DeferredAttr$4 extends com.sun.tools.javac.tree.TreeCopier<java.lang.Void>
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: com.sun.tools.javac.comp.DeferredAttr$4
  super_class: com.sun.tools.javac.tree.TreeCopier
{
  final com.sun.tools.javac.comp.DeferredAttr this$0;
    descriptor: Lcom/sun/tools/javac/comp/DeferredAttr;
    flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC

  void <init>(com.sun.tools.javac.comp.DeferredAttr, com.sun.tools.javac.tree.TreeMaker);
    descriptor: (Lcom/sun/tools/javac/comp/DeferredAttr;Lcom/sun/tools/javac/tree/TreeMaker;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // com.sun.tools.javac.comp.DeferredAttr$4 this
        start local 2 // com.sun.tools.javac.tree.TreeMaker $anonymous0
         0: .line 140
            aload 0 /* this */
            aload 1
            putfield com.sun.tools.javac.comp.DeferredAttr$4.this$0:Lcom/sun/tools/javac/comp/DeferredAttr;
            aload 0 /* this */
            aload 2 /* $anonymous0 */
            invokespecial com.sun.tools.javac.tree.TreeCopier.<init>:(Lcom/sun/tools/javac/tree/TreeMaker;)V
            return
        end local 2 // com.sun.tools.javac.tree.TreeMaker $anonymous0
        end local 0 // com.sun.tools.javac.comp.DeferredAttr$4 this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0         this  Lcom/sun/tools/javac/comp/DeferredAttr$4;
            0    1     2  $anonymous0  Lcom/sun/tools/javac/tree/TreeMaker;
    MethodParameters:
             Name  Flags
      this$0       final
      $anonymous0  

  public com.sun.tools.javac.tree.JCTree visitNewClass(com.sun.source.tree.NewClassTree, java.lang.Void);
    descriptor: (Lcom/sun/source/tree/NewClassTree;Ljava/lang/Void;)Lcom/sun/tools/javac/tree/JCTree;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=9, args_size=3
        start local 0 // com.sun.tools.javac.comp.DeferredAttr$4 this
        start local 1 // com.sun.source.tree.NewClassTree node
        start local 2 // java.lang.Void p
         0: .line 143
            aload 1 /* node */
            checkcast com.sun.tools.javac.tree.JCTree$JCNewClass
            astore 3 /* t */
        start local 3 // com.sun.tools.javac.tree.JCTree$JCNewClass t
         1: .line 144
            aload 3 /* t */
            invokestatic com.sun.tools.javac.tree.TreeInfo.isDiamond:(Lcom/sun/tools/javac/tree/JCTree;)Z
            ifeq 8
         2: .line 145
            aload 0 /* this */
            aload 3 /* t */
            getfield com.sun.tools.javac.tree.JCTree$JCNewClass.encl:Lcom/sun/tools/javac/tree/JCTree$JCExpression;
            aload 2 /* p */
            invokevirtual com.sun.tools.javac.comp.DeferredAttr$4.copy:(Lcom/sun/tools/javac/tree/JCTree;Ljava/lang/Object;)Lcom/sun/tools/javac/tree/JCTree;
            checkcast com.sun.tools.javac.tree.JCTree$JCExpression
            astore 4 /* encl */
        start local 4 // com.sun.tools.javac.tree.JCTree$JCExpression encl
         3: .line 146
            aload 0 /* this */
            aload 3 /* t */
            getfield com.sun.tools.javac.tree.JCTree$JCNewClass.typeargs:Lcom/sun/tools/javac/util/List;
            aload 2 /* p */
            invokevirtual com.sun.tools.javac.comp.DeferredAttr$4.copy:(Lcom/sun/tools/javac/util/List;Ljava/lang/Object;)Lcom/sun/tools/javac/util/List;
            astore 5 /* typeargs */
        start local 5 // com.sun.tools.javac.util.List typeargs
         4: .line 147
            aload 0 /* this */
            aload 3 /* t */
            getfield com.sun.tools.javac.tree.JCTree$JCNewClass.clazz:Lcom/sun/tools/javac/tree/JCTree$JCExpression;
            aload 2 /* p */
            invokevirtual com.sun.tools.javac.comp.DeferredAttr$4.copy:(Lcom/sun/tools/javac/tree/JCTree;Ljava/lang/Object;)Lcom/sun/tools/javac/tree/JCTree;
            checkcast com.sun.tools.javac.tree.JCTree$JCExpression
            astore 6 /* clazz */
        start local 6 // com.sun.tools.javac.tree.JCTree$JCExpression clazz
         5: .line 148
            aload 0 /* this */
            aload 3 /* t */
            getfield com.sun.tools.javac.tree.JCTree$JCNewClass.args:Lcom/sun/tools/javac/util/List;
            aload 2 /* p */
            invokevirtual com.sun.tools.javac.comp.DeferredAttr$4.copy:(Lcom/sun/tools/javac/util/List;Ljava/lang/Object;)Lcom/sun/tools/javac/util/List;
            astore 7 /* args */
        start local 7 // com.sun.tools.javac.util.List args
         6: .line 149
            aconst_null
            astore 8 /* def */
        start local 8 // com.sun.tools.javac.tree.JCTree$JCClassDecl def
         7: .line 150
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.DeferredAttr$4.this$0:Lcom/sun/tools/javac/comp/DeferredAttr;
            getfield com.sun.tools.javac.comp.DeferredAttr.make:Lcom/sun/tools/javac/tree/TreeMaker;
            aload 3 /* t */
            getfield com.sun.tools.javac.tree.JCTree$JCNewClass.pos:I
            invokevirtual com.sun.tools.javac.tree.TreeMaker.at:(I)Lcom/sun/tools/javac/tree/TreeMaker;
            aload 4 /* encl */
            aload 5 /* typeargs */
            aload 6 /* clazz */
            aload 7 /* args */
            aload 8 /* def */
            invokevirtual com.sun.tools.javac.tree.TreeMaker.NewClass:(Lcom/sun/tools/javac/tree/JCTree$JCExpression;Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/tree/JCTree$JCExpression;Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/tree/JCTree$JCClassDecl;)Lcom/sun/tools/javac/tree/JCTree$JCNewClass;
            areturn
        end local 8 // com.sun.tools.javac.tree.JCTree$JCClassDecl def
        end local 7 // com.sun.tools.javac.util.List args
        end local 6 // com.sun.tools.javac.tree.JCTree$JCExpression clazz
        end local 5 // com.sun.tools.javac.util.List typeargs
        end local 4 // com.sun.tools.javac.tree.JCTree$JCExpression encl
         8: .line 152
      StackMap locals: com.sun.tools.javac.tree.JCTree$JCNewClass
      StackMap stack:
            aload 0 /* this */
            aload 1 /* node */
            aload 2 /* p */
            invokespecial com.sun.tools.javac.tree.TreeCopier.visitNewClass:(Lcom/sun/source/tree/NewClassTree;Ljava/lang/Object;)Lcom/sun/tools/javac/tree/JCTree;
            areturn
        end local 3 // com.sun.tools.javac.tree.JCTree$JCNewClass t
        end local 2 // java.lang.Void p
        end local 1 // com.sun.source.tree.NewClassTree node
        end local 0 // com.sun.tools.javac.comp.DeferredAttr$4 this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    9     0      this  Lcom/sun/tools/javac/comp/DeferredAttr$4;
            0    9     1      node  Lcom/sun/source/tree/NewClassTree;
            0    9     2         p  Ljava/lang/Void;
            1    9     3         t  Lcom/sun/tools/javac/tree/JCTree$JCNewClass;
            3    8     4      encl  Lcom/sun/tools/javac/tree/JCTree$JCExpression;
            4    8     5  typeargs  Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/tree/JCTree$JCExpression;>;
            5    8     6     clazz  Lcom/sun/tools/javac/tree/JCTree$JCExpression;
            6    8     7      args  Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/tree/JCTree$JCExpression;>;
            7    8     8       def  Lcom/sun/tools/javac/tree/JCTree$JCClassDecl;
    MethodParameters:
      Name  Flags
      node  
      p     

  public com.sun.tools.javac.tree.JCTree visitMemberReference(com.sun.source.tree.MemberReferenceTree, java.lang.Void);
    descriptor: (Lcom/sun/source/tree/MemberReferenceTree;Ljava/lang/Void;)Lcom/sun/tools/javac/tree/JCTree;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=7, args_size=3
        start local 0 // com.sun.tools.javac.comp.DeferredAttr$4 this
        start local 1 // com.sun.source.tree.MemberReferenceTree node
        start local 2 // java.lang.Void p
         0: .line 158
            aload 1 /* node */
            checkcast com.sun.tools.javac.tree.JCTree$JCMemberReference
            astore 3 /* t */
        start local 3 // com.sun.tools.javac.tree.JCTree$JCMemberReference t
         1: .line 159
            aload 0 /* this */
            aload 3 /* t */
            getfield com.sun.tools.javac.tree.JCTree$JCMemberReference.expr:Lcom/sun/tools/javac/tree/JCTree$JCExpression;
            aload 2 /* p */
            invokevirtual com.sun.tools.javac.comp.DeferredAttr$4.copy:(Lcom/sun/tools/javac/tree/JCTree;Ljava/lang/Object;)Lcom/sun/tools/javac/tree/JCTree;
            checkcast com.sun.tools.javac.tree.JCTree$JCExpression
            astore 4 /* expr */
        start local 4 // com.sun.tools.javac.tree.JCTree$JCExpression expr
         2: .line 160
            aload 0 /* this */
            aload 3 /* t */
            getfield com.sun.tools.javac.tree.JCTree$JCMemberReference.typeargs:Lcom/sun/tools/javac/util/List;
            aload 2 /* p */
            invokevirtual com.sun.tools.javac.comp.DeferredAttr$4.copy:(Lcom/sun/tools/javac/util/List;Ljava/lang/Object;)Lcom/sun/tools/javac/util/List;
            astore 5 /* typeargs */
        start local 5 // com.sun.tools.javac.util.List typeargs
         3: .line 164
            new com.sun.tools.javac.comp.DeferredAttr$4$1
            dup
            aload 0 /* this */
            aload 3 /* t */
            getfield com.sun.tools.javac.tree.JCTree$JCMemberReference.mode:Lcom/sun/source/tree/MemberReferenceTree$ReferenceMode;
            aload 3 /* t */
            getfield com.sun.tools.javac.tree.JCTree$JCMemberReference.name:Lcom/sun/tools/javac/util/Name;
            aload 4 /* expr */
            aload 5 /* typeargs */
            aload 3 /* t */
            invokespecial com.sun.tools.javac.comp.DeferredAttr$4$1.<init>:(Lcom/sun/tools/javac/comp/DeferredAttr$4;Lcom/sun/source/tree/MemberReferenceTree$ReferenceMode;Lcom/sun/tools/javac/util/Name;Lcom/sun/tools/javac/tree/JCTree$JCExpression;Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/tree/JCTree$JCMemberReference;)V
            astore 6 /* result */
        start local 6 // com.sun.tools.javac.tree.JCTree$JCMemberReference result
         4: .line 173
            aload 6 /* result */
            aload 3 /* t */
            getfield com.sun.tools.javac.tree.JCTree$JCMemberReference.pos:I
            putfield com.sun.tools.javac.tree.JCTree$JCMemberReference.pos:I
         5: .line 174
            aload 6 /* result */
            areturn
        end local 6 // com.sun.tools.javac.tree.JCTree$JCMemberReference result
        end local 5 // com.sun.tools.javac.util.List typeargs
        end local 4 // com.sun.tools.javac.tree.JCTree$JCExpression expr
        end local 3 // com.sun.tools.javac.tree.JCTree$JCMemberReference t
        end local 2 // java.lang.Void p
        end local 1 // com.sun.source.tree.MemberReferenceTree node
        end local 0 // com.sun.tools.javac.comp.DeferredAttr$4 this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    6     0      this  Lcom/sun/tools/javac/comp/DeferredAttr$4;
            0    6     1      node  Lcom/sun/source/tree/MemberReferenceTree;
            0    6     2         p  Ljava/lang/Void;
            1    6     3         t  Lcom/sun/tools/javac/tree/JCTree$JCMemberReference;
            2    6     4      expr  Lcom/sun/tools/javac/tree/JCTree$JCExpression;
            3    6     5  typeargs  Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/tree/JCTree$JCExpression;>;
            4    6     6    result  Lcom/sun/tools/javac/tree/JCTree$JCMemberReference;
    MethodParameters:
      Name  Flags
      node  
      p     

  public com.sun.tools.javac.tree.JCTree visitMemberReference(com.sun.source.tree.MemberReferenceTree, java.lang.Object);
    descriptor: (Lcom/sun/source/tree/MemberReferenceTree;Ljava/lang/Object;)Lcom/sun/tools/javac/tree/JCTree;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
         0: .line 1
            aload 0
            aload 1
            aload 2
            checkcast java.lang.Void
            invokevirtual com.sun.tools.javac.comp.DeferredAttr$4.visitMemberReference:(Lcom/sun/source/tree/MemberReferenceTree;Ljava/lang/Void;)Lcom/sun/tools/javac/tree/JCTree;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public com.sun.tools.javac.tree.JCTree visitNewClass(com.sun.source.tree.NewClassTree, java.lang.Object);
    descriptor: (Lcom/sun/source/tree/NewClassTree;Ljava/lang/Object;)Lcom/sun/tools/javac/tree/JCTree;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
         0: .line 1
            aload 0
            aload 1
            aload 2
            checkcast java.lang.Void
            invokevirtual com.sun.tools.javac.comp.DeferredAttr$4.visitNewClass:(Lcom/sun/source/tree/NewClassTree;Ljava/lang/Void;)Lcom/sun/tools/javac/tree/JCTree;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
Signature: Lcom/sun/tools/javac/tree/TreeCopier<Ljava/lang/Void;>;
SourceFile: "DeferredAttr.java"
EnclosingMethod: com.sun.tools.javac.comp.DeferredAttr.<init>:(Lcom/sun/tools/javac/util/Context;)V
NestHost: com.sun.tools.javac.comp.DeferredAttr
InnerClasses:
  public final ReferenceMode = com.sun.source.tree.MemberReferenceTree$ReferenceMode of com.sun.source.tree.MemberReferenceTree
  com.sun.tools.javac.comp.DeferredAttr$4
  com.sun.tools.javac.comp.DeferredAttr$4$1
  public JCClassDecl = com.sun.tools.javac.tree.JCTree$JCClassDecl of com.sun.tools.javac.tree.JCTree
  public abstract JCExpression = com.sun.tools.javac.tree.JCTree$JCExpression of com.sun.tools.javac.tree.JCTree
  public JCMemberReference = com.sun.tools.javac.tree.JCTree$JCMemberReference of com.sun.tools.javac.tree.JCTree
  public JCNewClass = com.sun.tools.javac.tree.JCTree$JCNewClass of com.sun.tools.javac.tree.JCTree