public class com.sun.tools.javac.tree.JCTree$JCNewClass extends com.sun.tools.javac.tree.JCTree$JCPolyExpression implements com.sun.source.tree.NewClassTree
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.sun.tools.javac.tree.JCTree$JCNewClass
  super_class: com.sun.tools.javac.tree.JCTree$JCPolyExpression
{
  public com.sun.tools.javac.tree.JCTree$JCExpression encl;
    descriptor: Lcom/sun/tools/javac/tree/JCTree$JCExpression;
    flags: (0x0001) ACC_PUBLIC

  public com.sun.tools.javac.util.List<com.sun.tools.javac.tree.JCTree$JCExpression> typeargs;
    descriptor: Lcom/sun/tools/javac/util/List;
    flags: (0x0001) ACC_PUBLIC
    Signature: Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/tree/JCTree$JCExpression;>;

  public com.sun.tools.javac.tree.JCTree$JCExpression clazz;
    descriptor: Lcom/sun/tools/javac/tree/JCTree$JCExpression;
    flags: (0x0001) ACC_PUBLIC

  public com.sun.tools.javac.util.List<com.sun.tools.javac.tree.JCTree$JCExpression> args;
    descriptor: Lcom/sun/tools/javac/util/List;
    flags: (0x0001) ACC_PUBLIC
    Signature: Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/tree/JCTree$JCExpression;>;

  public com.sun.tools.javac.tree.JCTree$JCClassDecl def;
    descriptor: Lcom/sun/tools/javac/tree/JCTree$JCClassDecl;
    flags: (0x0001) ACC_PUBLIC

  public com.sun.tools.javac.code.Symbol constructor;
    descriptor: Lcom/sun/tools/javac/code/Symbol;
    flags: (0x0001) ACC_PUBLIC

  public com.sun.tools.javac.code.Type varargsElement;
    descriptor: Lcom/sun/tools/javac/code/Type;
    flags: (0x0001) ACC_PUBLIC

  public com.sun.tools.javac.code.Type constructorType;
    descriptor: Lcom/sun/tools/javac/code/Type;
    flags: (0x0001) ACC_PUBLIC

  protected void <init>(com.sun.tools.javac.tree.JCTree$JCExpression, com.sun.tools.javac.util.List<com.sun.tools.javac.tree.JCTree$JCExpression>, com.sun.tools.javac.tree.JCTree$JCExpression, com.sun.tools.javac.util.List<com.sun.tools.javac.tree.JCTree$JCExpression>, com.sun.tools.javac.tree.JCTree$JCClassDecl);
    descriptor: (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;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=6, args_size=6
        start local 0 // com.sun.tools.javac.tree.JCTree$JCNewClass this
        start local 1 // com.sun.tools.javac.tree.JCTree$JCExpression encl
        start local 2 // com.sun.tools.javac.util.List typeargs
        start local 3 // com.sun.tools.javac.tree.JCTree$JCExpression clazz
        start local 4 // com.sun.tools.javac.util.List args
        start local 5 // com.sun.tools.javac.tree.JCTree$JCClassDecl def
         0: .line 1796
            aload 0 /* this */
            invokespecial com.sun.tools.javac.tree.JCTree$JCPolyExpression.<init>:()V
         1: .line 1802
            aload 0 /* this */
            aload 1 /* encl */
            putfield com.sun.tools.javac.tree.JCTree$JCNewClass.encl:Lcom/sun/tools/javac/tree/JCTree$JCExpression;
         2: .line 1803
            aload 0 /* this */
            aload 2 /* typeargs */
            ifnonnull 3
            invokestatic com.sun.tools.javac.util.List.nil:()Lcom/sun/tools/javac/util/List;
            goto 4
         3: .line 1804
      StackMap locals: com.sun.tools.javac.tree.JCTree$JCNewClass com.sun.tools.javac.tree.JCTree$JCExpression com.sun.tools.javac.util.List com.sun.tools.javac.tree.JCTree$JCExpression com.sun.tools.javac.util.List com.sun.tools.javac.tree.JCTree$JCClassDecl
      StackMap stack: com.sun.tools.javac.tree.JCTree$JCNewClass
            aload 2 /* typeargs */
         4: .line 1803
      StackMap locals: com.sun.tools.javac.tree.JCTree$JCNewClass com.sun.tools.javac.tree.JCTree$JCExpression com.sun.tools.javac.util.List com.sun.tools.javac.tree.JCTree$JCExpression com.sun.tools.javac.util.List com.sun.tools.javac.tree.JCTree$JCClassDecl
      StackMap stack: com.sun.tools.javac.tree.JCTree$JCNewClass com.sun.tools.javac.util.List
            putfield com.sun.tools.javac.tree.JCTree$JCNewClass.typeargs:Lcom/sun/tools/javac/util/List;
         5: .line 1805
            aload 0 /* this */
            aload 3 /* clazz */
            putfield com.sun.tools.javac.tree.JCTree$JCNewClass.clazz:Lcom/sun/tools/javac/tree/JCTree$JCExpression;
         6: .line 1806
            aload 0 /* this */
            aload 4 /* args */
            putfield com.sun.tools.javac.tree.JCTree$JCNewClass.args:Lcom/sun/tools/javac/util/List;
         7: .line 1807
            aload 0 /* this */
            aload 5 /* def */
            putfield com.sun.tools.javac.tree.JCTree$JCNewClass.def:Lcom/sun/tools/javac/tree/JCTree$JCClassDecl;
         8: .line 1808
            return
        end local 5 // com.sun.tools.javac.tree.JCTree$JCClassDecl def
        end local 4 // com.sun.tools.javac.util.List args
        end local 3 // com.sun.tools.javac.tree.JCTree$JCExpression clazz
        end local 2 // com.sun.tools.javac.util.List typeargs
        end local 1 // com.sun.tools.javac.tree.JCTree$JCExpression encl
        end local 0 // com.sun.tools.javac.tree.JCTree$JCNewClass this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    9     0      this  Lcom/sun/tools/javac/tree/JCTree$JCNewClass;
            0    9     1      encl  Lcom/sun/tools/javac/tree/JCTree$JCExpression;
            0    9     2  typeargs  Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/tree/JCTree$JCExpression;>;
            0    9     3     clazz  Lcom/sun/tools/javac/tree/JCTree$JCExpression;
            0    9     4      args  Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/tree/JCTree$JCExpression;>;
            0    9     5       def  Lcom/sun/tools/javac/tree/JCTree$JCClassDecl;
    Signature: (Lcom/sun/tools/javac/tree/JCTree$JCExpression;Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/tree/JCTree$JCExpression;>;Lcom/sun/tools/javac/tree/JCTree$JCExpression;Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/tree/JCTree$JCExpression;>;Lcom/sun/tools/javac/tree/JCTree$JCClassDecl;)V
    MethodParameters:
          Name  Flags
      encl      
      typeargs  
      clazz     
      args      
      def       

  public void accept(com.sun.tools.javac.tree.JCTree$Visitor);
    descriptor: (Lcom/sun/tools/javac/tree/JCTree$Visitor;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.tools.javac.tree.JCTree$JCNewClass this
        start local 1 // com.sun.tools.javac.tree.JCTree$Visitor v
         0: .line 1810
            aload 1 /* v */
            aload 0 /* this */
            invokevirtual com.sun.tools.javac.tree.JCTree$Visitor.visitNewClass:(Lcom/sun/tools/javac/tree/JCTree$JCNewClass;)V
            return
        end local 1 // com.sun.tools.javac.tree.JCTree$Visitor v
        end local 0 // com.sun.tools.javac.tree.JCTree$JCNewClass this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/javac/tree/JCTree$JCNewClass;
            0    1     1     v  Lcom/sun/tools/javac/tree/JCTree$Visitor;
    MethodParameters:
      Name  Flags
      v     

  public com.sun.source.tree.Tree$Kind getKind();
    descriptor: ()Lcom/sun/source/tree/Tree$Kind;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.tree.JCTree$JCNewClass this
         0: .line 1813
            getstatic com.sun.source.tree.Tree$Kind.NEW_CLASS:Lcom/sun/source/tree/Tree$Kind;
            areturn
        end local 0 // com.sun.tools.javac.tree.JCTree$JCNewClass this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/javac/tree/JCTree$JCNewClass;

  public com.sun.tools.javac.tree.JCTree$JCExpression getEnclosingExpression();
    descriptor: ()Lcom/sun/tools/javac/tree/JCTree$JCExpression;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.tree.JCTree$JCNewClass this
         0: .line 1816
            aload 0 /* this */
            getfield com.sun.tools.javac.tree.JCTree$JCNewClass.encl:Lcom/sun/tools/javac/tree/JCTree$JCExpression;
            areturn
        end local 0 // com.sun.tools.javac.tree.JCTree$JCNewClass this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/javac/tree/JCTree$JCNewClass;

  public com.sun.tools.javac.util.List<com.sun.tools.javac.tree.JCTree$JCExpression> getTypeArguments();
    descriptor: ()Lcom/sun/tools/javac/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.tree.JCTree$JCNewClass this
         0: .line 1820
            aload 0 /* this */
            getfield com.sun.tools.javac.tree.JCTree$JCNewClass.typeargs:Lcom/sun/tools/javac/util/List;
            areturn
        end local 0 // com.sun.tools.javac.tree.JCTree$JCNewClass this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/javac/tree/JCTree$JCNewClass;
    Signature: ()Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/tree/JCTree$JCExpression;>;

  public com.sun.tools.javac.tree.JCTree$JCExpression getIdentifier();
    descriptor: ()Lcom/sun/tools/javac/tree/JCTree$JCExpression;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.tree.JCTree$JCNewClass this
         0: .line 1823
            aload 0 /* this */
            getfield com.sun.tools.javac.tree.JCTree$JCNewClass.clazz:Lcom/sun/tools/javac/tree/JCTree$JCExpression;
            areturn
        end local 0 // com.sun.tools.javac.tree.JCTree$JCNewClass this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/javac/tree/JCTree$JCNewClass;

  public com.sun.tools.javac.util.List<com.sun.tools.javac.tree.JCTree$JCExpression> getArguments();
    descriptor: ()Lcom/sun/tools/javac/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.tree.JCTree$JCNewClass this
         0: .line 1826
            aload 0 /* this */
            getfield com.sun.tools.javac.tree.JCTree$JCNewClass.args:Lcom/sun/tools/javac/util/List;
            areturn
        end local 0 // com.sun.tools.javac.tree.JCTree$JCNewClass this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/javac/tree/JCTree$JCNewClass;
    Signature: ()Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/tree/JCTree$JCExpression;>;

  public com.sun.tools.javac.tree.JCTree$JCClassDecl getClassBody();
    descriptor: ()Lcom/sun/tools/javac/tree/JCTree$JCClassDecl;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.tree.JCTree$JCNewClass this
         0: .line 1829
            aload 0 /* this */
            getfield com.sun.tools.javac.tree.JCTree$JCNewClass.def:Lcom/sun/tools/javac/tree/JCTree$JCClassDecl;
            areturn
        end local 0 // com.sun.tools.javac.tree.JCTree$JCNewClass this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/javac/tree/JCTree$JCNewClass;

  public <R, D> R accept(com.sun.source.tree.TreeVisitor<R, D>, );
    descriptor: (Lcom/sun/source/tree/TreeVisitor;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.sun.tools.javac.tree.JCTree$JCNewClass this
        start local 1 // com.sun.source.tree.TreeVisitor v
        start local 2 // java.lang.Object d
         0: .line 1832
            aload 1 /* v */
            aload 0 /* this */
            aload 2 /* d */
            invokeinterface com.sun.source.tree.TreeVisitor.visitNewClass:(Lcom/sun/source/tree/NewClassTree;Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 2 // java.lang.Object d
        end local 1 // com.sun.source.tree.TreeVisitor v
        end local 0 // com.sun.tools.javac.tree.JCTree$JCNewClass this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/javac/tree/JCTree$JCNewClass;
            0    1     1     v  Lcom/sun/source/tree/TreeVisitor<TR;TD;>;
            0    1     2     d  TD;
    Signature: <R:Ljava/lang/Object;D:Ljava/lang/Object;>(Lcom/sun/source/tree/TreeVisitor<TR;TD;>;TD;)TR;
    MethodParameters:
      Name  Flags
      v     
      d     

  public com.sun.tools.javac.tree.JCTree$Tag getTag();
    descriptor: ()Lcom/sun/tools/javac/tree/JCTree$Tag;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.tree.JCTree$JCNewClass this
         0: .line 1836
            getstatic com.sun.tools.javac.tree.JCTree$Tag.NEWCLASS:Lcom/sun/tools/javac/tree/JCTree$Tag;
            areturn
        end local 0 // com.sun.tools.javac.tree.JCTree$JCNewClass this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/javac/tree/JCTree$JCNewClass;

  public boolean classDeclRemoved();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.tree.JCTree$JCNewClass this
         0: .line 1840
            iconst_0
            ireturn
        end local 0 // com.sun.tools.javac.tree.JCTree$JCNewClass this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/javac/tree/JCTree$JCNewClass;

  public com.sun.source.tree.ClassTree getClassBody();
    descriptor: ()Lcom/sun/source/tree/ClassTree;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokevirtual com.sun.tools.javac.tree.JCTree$JCNewClass.getClassBody:()Lcom/sun/tools/javac/tree/JCTree$JCClassDecl;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public java.util.List getArguments();
    descriptor: ()Ljava/util/List;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokevirtual com.sun.tools.javac.tree.JCTree$JCNewClass.getArguments:()Lcom/sun/tools/javac/util/List;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public com.sun.source.tree.ExpressionTree getEnclosingExpression();
    descriptor: ()Lcom/sun/source/tree/ExpressionTree;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokevirtual com.sun.tools.javac.tree.JCTree$JCNewClass.getEnclosingExpression:()Lcom/sun/tools/javac/tree/JCTree$JCExpression;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public java.util.List getTypeArguments();
    descriptor: ()Ljava/util/List;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokevirtual com.sun.tools.javac.tree.JCTree$JCNewClass.getTypeArguments:()Lcom/sun/tools/javac/util/List;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public com.sun.source.tree.ExpressionTree getIdentifier();
    descriptor: ()Lcom/sun/source/tree/ExpressionTree;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokevirtual com.sun.tools.javac.tree.JCTree$JCNewClass.getIdentifier:()Lcom/sun/tools/javac/tree/JCTree$JCExpression;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
SourceFile: "JCTree.java"
NestHost: com.sun.tools.javac.tree.JCTree
InnerClasses:
  public final Kind = com.sun.source.tree.Tree$Kind of com.sun.source.tree.Tree
  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 JCNewClass = com.sun.tools.javac.tree.JCTree$JCNewClass of com.sun.tools.javac.tree.JCTree
  public abstract JCPolyExpression = com.sun.tools.javac.tree.JCTree$JCPolyExpression of com.sun.tools.javac.tree.JCTree
  public final Tag = com.sun.tools.javac.tree.JCTree$Tag of com.sun.tools.javac.tree.JCTree
  public abstract Visitor = com.sun.tools.javac.tree.JCTree$Visitor of com.sun.tools.javac.tree.JCTree