public class jdk.javadoc.internal.tool.JavadocMemberEnter extends com.sun.tools.javac.comp.MemberEnter
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: jdk.javadoc.internal.tool.JavadocMemberEnter
  super_class: com.sun.tools.javac.comp.MemberEnter
{
  final jdk.javadoc.internal.tool.ToolEnvironment toolEnv;
    descriptor: Ljdk/javadoc/internal/tool/ToolEnvironment;
    flags: (0x0010) ACC_FINAL

  public static jdk.javadoc.internal.tool.JavadocMemberEnter instance0(com.sun.tools.javac.util.Context);
    descriptor: (Lcom/sun/tools/javac/util/Context;)Ljdk/javadoc/internal/tool/JavadocMemberEnter;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // com.sun.tools.javac.util.Context context
         0: .line 52
            aload 0 /* context */
            getstatic jdk.javadoc.internal.tool.JavadocMemberEnter.memberEnterKey:Lcom/sun/tools/javac/util/Context$Key;
            invokevirtual com.sun.tools.javac.util.Context.get:(Lcom/sun/tools/javac/util/Context$Key;)Ljava/lang/Object;
            checkcast com.sun.tools.javac.comp.MemberEnter
            astore 1 /* instance */
        start local 1 // com.sun.tools.javac.comp.MemberEnter instance
         1: .line 53
            aload 1 /* instance */
            ifnonnull 3
         2: .line 54
            new jdk.javadoc.internal.tool.JavadocMemberEnter
            dup
            aload 0 /* context */
            invokespecial jdk.javadoc.internal.tool.JavadocMemberEnter.<init>:(Lcom/sun/tools/javac/util/Context;)V
            astore 1 /* instance */
         3: .line 55
      StackMap locals: com.sun.tools.javac.comp.MemberEnter
      StackMap stack:
            aload 1 /* instance */
            checkcast jdk.javadoc.internal.tool.JavadocMemberEnter
            areturn
        end local 1 // com.sun.tools.javac.comp.MemberEnter instance
        end local 0 // com.sun.tools.javac.util.Context context
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0   context  Lcom/sun/tools/javac/util/Context;
            1    4     1  instance  Lcom/sun/tools/javac/comp/MemberEnter;
    MethodParameters:
         Name  Flags
      context  

  public static void preRegister(com.sun.tools.javac.util.Context);
    descriptor: (Lcom/sun/tools/javac/util/Context;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.util.Context context
         0: .line 59
            aload 0 /* context */
            getstatic jdk.javadoc.internal.tool.JavadocMemberEnter.memberEnterKey:Lcom/sun/tools/javac/util/Context$Key;
            invokedynamic make()Lcom/sun/tools/javac/util/Context$Factory;
              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:
                  (Lcom/sun/tools/javac/util/Context;)Ljava/lang/Object;
                  jdk/javadoc/internal/tool/JavadocMemberEnter.<init>(Lcom/sun/tools/javac/util/Context;)V (8)
                  (Lcom/sun/tools/javac/util/Context;)Lcom/sun/tools/javac/comp/MemberEnter;
            invokevirtual com.sun.tools.javac.util.Context.put:(Lcom/sun/tools/javac/util/Context$Key;Lcom/sun/tools/javac/util/Context$Factory;)V
         1: .line 60
            return
        end local 0 // com.sun.tools.javac.util.Context context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0  context  Lcom/sun/tools/javac/util/Context;
    MethodParameters:
         Name  Flags
      context  

  protected void <init>(com.sun.tools.javac.util.Context);
    descriptor: (Lcom/sun/tools/javac/util/Context;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.javadoc.internal.tool.JavadocMemberEnter this
        start local 1 // com.sun.tools.javac.util.Context context
         0: .line 65
            aload 0 /* this */
            aload 1 /* context */
            invokespecial com.sun.tools.javac.comp.MemberEnter.<init>:(Lcom/sun/tools/javac/util/Context;)V
         1: .line 66
            aload 0 /* this */
            aload 1 /* context */
            invokestatic jdk.javadoc.internal.tool.ToolEnvironment.instance:(Lcom/sun/tools/javac/util/Context;)Ljdk/javadoc/internal/tool/ToolEnvironment;
            putfield jdk.javadoc.internal.tool.JavadocMemberEnter.toolEnv:Ljdk/javadoc/internal/tool/ToolEnvironment;
         2: .line 67
            return
        end local 1 // com.sun.tools.javac.util.Context context
        end local 0 // jdk.javadoc.internal.tool.JavadocMemberEnter this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Ljdk/javadoc/internal/tool/JavadocMemberEnter;
            0    3     1  context  Lcom/sun/tools/javac/util/Context;
    MethodParameters:
         Name  Flags
      context  

  public void visitMethodDef(com.sun.tools.javac.tree.JCTree$JCMethodDecl);
    descriptor: (Lcom/sun/tools/javac/tree/JCTree$JCMethodDecl;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // jdk.javadoc.internal.tool.JavadocMemberEnter this
        start local 1 // com.sun.tools.javac.tree.JCTree$JCMethodDecl tree
         0: .line 71
            aload 0 /* this */
            aload 1 /* tree */
            invokespecial com.sun.tools.javac.comp.MemberEnter.visitMethodDef:(Lcom/sun/tools/javac/tree/JCTree$JCMethodDecl;)V
         1: .line 72
            aload 1 /* tree */
            getfield com.sun.tools.javac.tree.JCTree$JCMethodDecl.sym:Lcom/sun/tools/javac/code/Symbol$MethodSymbol;
            astore 2 /* meth */
        start local 2 // com.sun.tools.javac.code.Symbol$MethodSymbol meth
         2: .line 73
            aload 2 /* meth */
            ifnull 3
            aload 2 /* meth */
            getfield com.sun.tools.javac.code.Symbol$MethodSymbol.kind:Lcom/sun/tools/javac/code/Kinds$Kind;
            getstatic com.sun.tools.javac.code.Kinds$Kind.MTH:Lcom/sun/tools/javac/code/Kinds$Kind;
            if_acmpeq 4
      StackMap locals: com.sun.tools.javac.code.Symbol$MethodSymbol
      StackMap stack:
         3: return
         4: .line 74
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.javadoc.internal.tool.JavadocMemberEnter.toolEnv:Ljdk/javadoc/internal/tool/ToolEnvironment;
            aload 0 /* this */
            getfield jdk.javadoc.internal.tool.JavadocMemberEnter.env:Lcom/sun/tools/javac/comp/Env;
            getfield com.sun.tools.javac.comp.Env.toplevel:Lcom/sun/tools/javac/tree/JCTree$JCCompilationUnit;
            aload 0 /* this */
            getfield jdk.javadoc.internal.tool.JavadocMemberEnter.env:Lcom/sun/tools/javac/comp/Env;
            getfield com.sun.tools.javac.comp.Env.enclClass:Lcom/sun/tools/javac/tree/JCTree$JCClassDecl;
            aload 1 /* tree */
            invokevirtual jdk.javadoc.internal.tool.ToolEnvironment.getTreePath:(Lcom/sun/tools/javac/tree/JCTree$JCCompilationUnit;Lcom/sun/tools/javac/tree/JCTree$JCClassDecl;Lcom/sun/tools/javac/tree/JCTree;)Lcom/sun/source/util/TreePath;
            astore 3 /* treePath */
        start local 3 // com.sun.source.util.TreePath treePath
         5: .line 78
            aload 0 /* this */
            getfield jdk.javadoc.internal.tool.JavadocMemberEnter.env:Lcom/sun/tools/javac/comp/Env;
            getfield com.sun.tools.javac.comp.Env.enclClass:Lcom/sun/tools/javac/tree/JCTree$JCClassDecl;
            getfield com.sun.tools.javac.tree.JCTree$JCClassDecl.defs:Lcom/sun/tools/javac/util/List;
            aload 1 /* tree */
            invokevirtual com.sun.tools.javac.util.List.contains:(Ljava/lang/Object;)Z
            ifeq 7
         6: .line 79
            aload 0 /* this */
            getfield jdk.javadoc.internal.tool.JavadocMemberEnter.toolEnv:Ljdk/javadoc/internal/tool/ToolEnvironment;
            aload 2 /* meth */
            aload 3 /* treePath */
            invokevirtual jdk.javadoc.internal.tool.ToolEnvironment.setElementToTreePath:(Ljavax/lang/model/element/Element;Lcom/sun/source/util/TreePath;)V
         7: .line 82
      StackMap locals: com.sun.source.util.TreePath
      StackMap stack:
            aload 1 /* tree */
            aconst_null
            putfield com.sun.tools.javac.tree.JCTree$JCMethodDecl.body:Lcom/sun/tools/javac/tree/JCTree$JCBlock;
         8: .line 83
            return
        end local 3 // com.sun.source.util.TreePath treePath
        end local 2 // com.sun.tools.javac.code.Symbol$MethodSymbol meth
        end local 1 // com.sun.tools.javac.tree.JCTree$JCMethodDecl tree
        end local 0 // jdk.javadoc.internal.tool.JavadocMemberEnter this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    9     0      this  Ljdk/javadoc/internal/tool/JavadocMemberEnter;
            0    9     1      tree  Lcom/sun/tools/javac/tree/JCTree$JCMethodDecl;
            2    9     2      meth  Lcom/sun/tools/javac/code/Symbol$MethodSymbol;
            5    9     3  treePath  Lcom/sun/source/util/TreePath;
    MethodParameters:
      Name  Flags
      tree  

  public void visitVarDef(com.sun.tools.javac.tree.JCTree$JCVariableDecl);
    descriptor: (Lcom/sun/tools/javac/tree/JCTree$JCVariableDecl;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=2
        start local 0 // jdk.javadoc.internal.tool.JavadocMemberEnter this
        start local 1 // com.sun.tools.javac.tree.JCTree$JCVariableDecl tree
         0: .line 87
            aload 1 /* tree */
            getfield com.sun.tools.javac.tree.JCTree$JCVariableDecl.init:Lcom/sun/tools/javac/tree/JCTree$JCExpression;
            ifnull 8
         1: .line 88
            aload 1 /* tree */
            getfield com.sun.tools.javac.tree.JCTree$JCVariableDecl.mods:Lcom/sun/tools/javac/tree/JCTree$JCModifiers;
            getfield com.sun.tools.javac.tree.JCTree$JCModifiers.flags:J
            ldc 16
            land
            lconst_0
            lcmp
            ifne 4
         2: .line 89
            aload 0 /* this */
            getfield jdk.javadoc.internal.tool.JavadocMemberEnter.env:Lcom/sun/tools/javac/comp/Env;
            getfield com.sun.tools.javac.comp.Env.enclClass:Lcom/sun/tools/javac/tree/JCTree$JCClassDecl;
            getfield com.sun.tools.javac.tree.JCTree$JCClassDecl.mods:Lcom/sun/tools/javac/tree/JCTree$JCModifiers;
            getfield com.sun.tools.javac.tree.JCTree$JCModifiers.flags:J
            ldc 512
            land
            lconst_0
            lcmp
            ifne 4
         3: .line 88
            iconst_0
            goto 5
      StackMap locals:
      StackMap stack:
         4: iconst_1
      StackMap locals:
      StackMap stack: int
         5: istore 2 /* isFinal */
        start local 2 // boolean isFinal
         6: .line 90
            iload 2 /* isFinal */
            ifeq 7
            aload 1 /* tree */
            getfield com.sun.tools.javac.tree.JCTree$JCVariableDecl.init:Lcom/sun/tools/javac/tree/JCTree$JCExpression;
            invokestatic jdk.javadoc.internal.tool.JavadocMemberEnter.containsNonConstantExpression:(Lcom/sun/tools/javac/tree/JCTree$JCExpression;)Z
            ifeq 8
         7: .line 95
      StackMap locals: int
      StackMap stack:
            aload 1 /* tree */
            aconst_null
            putfield com.sun.tools.javac.tree.JCTree$JCVariableDecl.init:Lcom/sun/tools/javac/tree/JCTree$JCExpression;
        end local 2 // boolean isFinal
         8: .line 98
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* tree */
            invokespecial com.sun.tools.javac.comp.MemberEnter.visitVarDef:(Lcom/sun/tools/javac/tree/JCTree$JCVariableDecl;)V
         9: .line 99
            aload 1 /* tree */
            getfield com.sun.tools.javac.tree.JCTree$JCVariableDecl.sym:Lcom/sun/tools/javac/code/Symbol$VarSymbol;
            ifnull 11
            aload 1 /* tree */
            getfield com.sun.tools.javac.tree.JCTree$JCVariableDecl.sym:Lcom/sun/tools/javac/code/Symbol$VarSymbol;
            getfield com.sun.tools.javac.code.Symbol$VarSymbol.kind:Lcom/sun/tools/javac/code/Kinds$Kind;
            getstatic com.sun.tools.javac.code.Kinds$Kind.VAR:Lcom/sun/tools/javac/code/Kinds$Kind;
            if_acmpne 11
            aload 1 /* tree */
            getfield com.sun.tools.javac.tree.JCTree$JCVariableDecl.sym:Lcom/sun/tools/javac/code/Symbol$VarSymbol;
            invokestatic jdk.javadoc.internal.tool.JavadocMemberEnter.isParameter:(Lcom/sun/tools/javac/code/Symbol$VarSymbol;)Z
            ifne 11
        10: .line 100
            aload 0 /* this */
            getfield jdk.javadoc.internal.tool.JavadocMemberEnter.toolEnv:Ljdk/javadoc/internal/tool/ToolEnvironment;
            aload 1 /* tree */
            getfield com.sun.tools.javac.tree.JCTree$JCVariableDecl.sym:Lcom/sun/tools/javac/code/Symbol$VarSymbol;
            aload 0 /* this */
            getfield jdk.javadoc.internal.tool.JavadocMemberEnter.toolEnv:Ljdk/javadoc/internal/tool/ToolEnvironment;
            aload 0 /* this */
            getfield jdk.javadoc.internal.tool.JavadocMemberEnter.env:Lcom/sun/tools/javac/comp/Env;
            getfield com.sun.tools.javac.comp.Env.toplevel:Lcom/sun/tools/javac/tree/JCTree$JCCompilationUnit;
            aload 0 /* this */
            getfield jdk.javadoc.internal.tool.JavadocMemberEnter.env:Lcom/sun/tools/javac/comp/Env;
            getfield com.sun.tools.javac.comp.Env.enclClass:Lcom/sun/tools/javac/tree/JCTree$JCClassDecl;
            aload 1 /* tree */
            invokevirtual jdk.javadoc.internal.tool.ToolEnvironment.getTreePath:(Lcom/sun/tools/javac/tree/JCTree$JCCompilationUnit;Lcom/sun/tools/javac/tree/JCTree$JCClassDecl;Lcom/sun/tools/javac/tree/JCTree;)Lcom/sun/source/util/TreePath;
            invokevirtual jdk.javadoc.internal.tool.ToolEnvironment.setElementToTreePath:(Ljavax/lang/model/element/Element;Lcom/sun/source/util/TreePath;)V
        11: .line 102
      StackMap locals:
      StackMap stack:
            return
        end local 1 // com.sun.tools.javac.tree.JCTree$JCVariableDecl tree
        end local 0 // jdk.javadoc.internal.tool.JavadocMemberEnter this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   12     0     this  Ljdk/javadoc/internal/tool/JavadocMemberEnter;
            0   12     1     tree  Lcom/sun/tools/javac/tree/JCTree$JCVariableDecl;
            6    8     2  isFinal  Z
    MethodParameters:
      Name  Flags
      tree  

  private static boolean isParameter(com.sun.tools.javac.code.Symbol$VarSymbol);
    descriptor: (Lcom/sun/tools/javac/code/Symbol$VarSymbol;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol$VarSymbol var
         0: .line 105
            aload 0 /* var */
            invokevirtual com.sun.tools.javac.code.Symbol$VarSymbol.flags:()J
            ldc 8589934592
            land
            lconst_0
            lcmp
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // com.sun.tools.javac.code.Symbol$VarSymbol var
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0   var  Lcom/sun/tools/javac/code/Symbol$VarSymbol;
    MethodParameters:
      Name  Flags
      var   

  private static boolean containsNonConstantExpression(com.sun.tools.javac.tree.JCTree$JCExpression);
    descriptor: (Lcom/sun/tools/javac/tree/JCTree$JCExpression;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.tree.JCTree$JCExpression tree
         0: .line 114
            new jdk.javadoc.internal.tool.JavadocMemberEnter$MaybeConstantExpressionScanner
            dup
            invokespecial jdk.javadoc.internal.tool.JavadocMemberEnter$MaybeConstantExpressionScanner.<init>:()V
            aload 0 /* tree */
            invokevirtual jdk.javadoc.internal.tool.JavadocMemberEnter$MaybeConstantExpressionScanner.containsNonConstantExpression:(Lcom/sun/tools/javac/tree/JCTree$JCExpression;)Z
            ireturn
        end local 0 // com.sun.tools.javac.tree.JCTree$JCExpression tree
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  tree  Lcom/sun/tools/javac/tree/JCTree$JCExpression;
    MethodParameters:
      Name  Flags
      tree  
}
SourceFile: "JavadocMemberEnter.java"
NestMembers:
  jdk.javadoc.internal.tool.JavadocMemberEnter$MaybeConstantExpressionScanner
InnerClasses:
  public final Kind = com.sun.tools.javac.code.Kinds$Kind of com.sun.tools.javac.code.Kinds
  public MethodSymbol = com.sun.tools.javac.code.Symbol$MethodSymbol of com.sun.tools.javac.code.Symbol
  public VarSymbol = com.sun.tools.javac.code.Symbol$VarSymbol of com.sun.tools.javac.code.Symbol
  public JCClassDecl = com.sun.tools.javac.tree.JCTree$JCClassDecl of com.sun.tools.javac.tree.JCTree
  public JCCompilationUnit = com.sun.tools.javac.tree.JCTree$JCCompilationUnit 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 JCMethodDecl = com.sun.tools.javac.tree.JCTree$JCMethodDecl of com.sun.tools.javac.tree.JCTree
  public JCModifiers = com.sun.tools.javac.tree.JCTree$JCModifiers of com.sun.tools.javac.tree.JCTree
  public JCVariableDecl = com.sun.tools.javac.tree.JCTree$JCVariableDecl of com.sun.tools.javac.tree.JCTree
  public abstract Factory = com.sun.tools.javac.util.Context$Factory of com.sun.tools.javac.util.Context
  public Key = com.sun.tools.javac.util.Context$Key of com.sun.tools.javac.util.Context
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  private MaybeConstantExpressionScanner = jdk.javadoc.internal.tool.JavadocMemberEnter$MaybeConstantExpressionScanner of jdk.javadoc.internal.tool.JavadocMemberEnter