public class jdk.javadoc.internal.tool.JavadocClassFinder extends com.sun.tools.javac.code.ClassFinder
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: jdk.javadoc.internal.tool.JavadocClassFinder
  super_class: com.sun.tools.javac.code.ClassFinder
{
  private jdk.javadoc.internal.tool.ToolEnvironment toolEnv;
    descriptor: Ljdk/javadoc/internal/tool/ToolEnvironment;
    flags: (0x0002) ACC_PRIVATE

  private java.util.EnumSet<javax.tools.JavaFileObject$Kind> all;
    descriptor: Ljava/util/EnumSet;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/EnumSet<Ljavax/tools/JavaFileObject$Kind;>;

  private java.util.EnumSet<javax.tools.JavaFileObject$Kind> noSource;
    descriptor: Ljava/util/EnumSet;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/EnumSet<Ljavax/tools/JavaFileObject$Kind;>;

  private com.sun.tools.javac.api.JavacTrees jctrees;
    descriptor: Lcom/sun/tools/javac/api/JavacTrees;
    flags: (0x0002) ACC_PRIVATE

  private final com.sun.tools.javac.api.JavacTrees trees;
    descriptor: Lcom/sun/tools/javac/api/JavacTrees;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  public static jdk.javadoc.internal.tool.JavadocClassFinder instance(com.sun.tools.javac.util.Context);
    descriptor: (Lcom/sun/tools/javac/util/Context;)Ljdk/javadoc/internal/tool/JavadocClassFinder;
    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 50
            aload 0 /* context */
            getstatic jdk.javadoc.internal.tool.JavadocClassFinder.classFinderKey: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.code.ClassFinder
            astore 1 /* instance */
        start local 1 // com.sun.tools.javac.code.ClassFinder instance
         1: .line 51
            aload 1 /* instance */
            ifnonnull 3
         2: .line 52
            new jdk.javadoc.internal.tool.JavadocClassFinder
            dup
            aload 0 /* context */
            invokespecial jdk.javadoc.internal.tool.JavadocClassFinder.<init>:(Lcom/sun/tools/javac/util/Context;)V
            astore 1 /* instance */
         3: .line 53
      StackMap locals: com.sun.tools.javac.code.ClassFinder
      StackMap stack:
            aload 1 /* instance */
            checkcast jdk.javadoc.internal.tool.JavadocClassFinder
            areturn
        end local 1 // com.sun.tools.javac.code.ClassFinder 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/code/ClassFinder;
    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 57
            aload 0 /* context */
            getstatic jdk.javadoc.internal.tool.JavadocClassFinder.classFinderKey: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/JavadocClassFinder.<init>(Lcom/sun/tools/javac/util/Context;)V (8)
                  (Lcom/sun/tools/javac/util/Context;)Lcom/sun/tools/javac/code/ClassFinder;
            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 58
            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  

  public void <init>(com.sun.tools.javac.util.Context);
    descriptor: (Lcom/sun/tools/javac/util/Context;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // jdk.javadoc.internal.tool.JavadocClassFinder this
        start local 1 // com.sun.tools.javac.util.Context context
         0: .line 71
            aload 0 /* this */
            aload 1 /* context */
            invokespecial com.sun.tools.javac.code.ClassFinder.<init>:(Lcom/sun/tools/javac/util/Context;)V
         1: .line 61
            aload 0 /* this */
            getstatic javax.tools.JavaFileObject$Kind.CLASS:Ljavax/tools/JavaFileObject$Kind;
         2: .line 62
            getstatic javax.tools.JavaFileObject$Kind.SOURCE:Ljavax/tools/JavaFileObject$Kind;
         3: .line 63
            getstatic javax.tools.JavaFileObject$Kind.HTML:Ljavax/tools/JavaFileObject$Kind;
         4: .line 61
            invokestatic java.util.EnumSet.of:(Ljava/lang/Enum;Ljava/lang/Enum;Ljava/lang/Enum;)Ljava/util/EnumSet;
            putfield jdk.javadoc.internal.tool.JavadocClassFinder.all:Ljava/util/EnumSet;
         5: .line 64
            aload 0 /* this */
            getstatic javax.tools.JavaFileObject$Kind.CLASS:Ljavax/tools/JavaFileObject$Kind;
         6: .line 65
            getstatic javax.tools.JavaFileObject$Kind.HTML:Ljavax/tools/JavaFileObject$Kind;
         7: .line 64
            invokestatic java.util.EnumSet.of:(Ljava/lang/Enum;Ljava/lang/Enum;)Ljava/util/EnumSet;
            putfield jdk.javadoc.internal.tool.JavadocClassFinder.noSource:Ljava/util/EnumSet;
         8: .line 72
            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.JavadocClassFinder.toolEnv:Ljdk/javadoc/internal/tool/ToolEnvironment;
         9: .line 73
            aload 0 /* this */
            iconst_1
            putfield jdk.javadoc.internal.tool.JavadocClassFinder.preferSource:Z
        10: .line 74
            aload 0 /* this */
            aload 1 /* context */
            invokestatic com.sun.tools.javac.api.JavacTrees.instance:(Lcom/sun/tools/javac/util/Context;)Lcom/sun/tools/javac/api/JavacTrees;
            putfield jdk.javadoc.internal.tool.JavadocClassFinder.trees:Lcom/sun/tools/javac/api/JavacTrees;
        11: .line 75
            return
        end local 1 // com.sun.tools.javac.util.Context context
        end local 0 // jdk.javadoc.internal.tool.JavadocClassFinder this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   12     0     this  Ljdk/javadoc/internal/tool/JavadocClassFinder;
            0   12     1  context  Lcom/sun/tools/javac/util/Context;
    MethodParameters:
         Name  Flags
      context  

  protected java.util.EnumSet<javax.tools.JavaFileObject$Kind> getPackageFileKinds();
    descriptor: ()Ljava/util/EnumSet;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.javadoc.internal.tool.JavadocClassFinder this
         0: .line 82
            aload 0 /* this */
            getfield jdk.javadoc.internal.tool.JavadocClassFinder.toolEnv:Ljdk/javadoc/internal/tool/ToolEnvironment;
            getfield jdk.javadoc.internal.tool.ToolEnvironment.docClasses:Z
            ifeq 1
            aload 0 /* this */
            getfield jdk.javadoc.internal.tool.JavadocClassFinder.noSource:Ljava/util/EnumSet;
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 0 /* this */
            getfield jdk.javadoc.internal.tool.JavadocClassFinder.all:Ljava/util/EnumSet;
      StackMap locals:
      StackMap stack: java.util.EnumSet
         2: areturn
        end local 0 // jdk.javadoc.internal.tool.JavadocClassFinder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljdk/javadoc/internal/tool/JavadocClassFinder;
    Signature: ()Ljava/util/EnumSet<Ljavax/tools/JavaFileObject$Kind;>;

  protected void extraFileActions(com.sun.tools.javac.code.Symbol$PackageSymbol, javax.tools.JavaFileObject);
    descriptor: (Lcom/sun/tools/javac/code/Symbol$PackageSymbol;Ljavax/tools/JavaFileObject;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // jdk.javadoc.internal.tool.JavadocClassFinder this
        start local 1 // com.sun.tools.javac.code.Symbol$PackageSymbol pack
        start local 2 // javax.tools.JavaFileObject fo
         0: .line 90
            aload 2 /* fo */
            ldc "package"
            getstatic javax.tools.JavaFileObject$Kind.HTML:Ljavax/tools/JavaFileObject$Kind;
            invokeinterface javax.tools.JavaFileObject.isNameCompatible:(Ljava/lang/String;Ljavax/tools/JavaFileObject$Kind;)Z
            ifeq 2
         1: .line 91
            aload 1 /* pack */
            aload 2 /* fo */
            putfield com.sun.tools.javac.code.Symbol$PackageSymbol.sourcefile:Ljavax/tools/JavaFileObject;
         2: .line 93
      StackMap locals:
      StackMap stack:
            return
        end local 2 // javax.tools.JavaFileObject fo
        end local 1 // com.sun.tools.javac.code.Symbol$PackageSymbol pack
        end local 0 // jdk.javadoc.internal.tool.JavadocClassFinder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljdk/javadoc/internal/tool/JavadocClassFinder;
            0    3     1  pack  Lcom/sun/tools/javac/code/Symbol$PackageSymbol;
            0    3     2    fo  Ljavax/tools/JavaFileObject;
    MethodParameters:
      Name  Flags
      pack  
      fo    
}
SourceFile: "JavadocClassFinder.java"
InnerClasses:
  public PackageSymbol = com.sun.tools.javac.code.Symbol$PackageSymbol of com.sun.tools.javac.code.Symbol
  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
  public final Kind = javax.tools.JavaFileObject$Kind of javax.tools.JavaFileObject