public class jdk.javadoc.internal.doclets.toolkit.util.PackageListWriter
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: jdk.javadoc.internal.doclets.toolkit.util.PackageListWriter
  super_class: java.lang.Object
{
  private final jdk.javadoc.internal.doclets.toolkit.Configuration configuration;
    descriptor: Ljdk/javadoc/internal/doclets/toolkit/Configuration;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final jdk.javadoc.internal.doclets.toolkit.util.Utils utils;
    descriptor: Ljdk/javadoc/internal/doclets/toolkit/util/Utils;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final jdk.javadoc.internal.doclets.toolkit.util.DocFile file;
    descriptor: Ljdk/javadoc/internal/doclets/toolkit/util/DocFile;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  public void <init>(jdk.javadoc.internal.doclets.toolkit.Configuration);
    descriptor: (Ljdk/javadoc/internal/doclets/toolkit/Configuration;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // jdk.javadoc.internal.doclets.toolkit.util.PackageListWriter this
        start local 1 // jdk.javadoc.internal.doclets.toolkit.Configuration configuration
         0: .line 57
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 58
            aload 0 /* this */
            aload 1 /* configuration */
            getstatic jdk.javadoc.internal.doclets.toolkit.util.DocPaths.PACKAGE_LIST:Ljdk/javadoc/internal/doclets/toolkit/util/DocPath;
            invokestatic jdk.javadoc.internal.doclets.toolkit.util.DocFile.createFileForOutput:(Ljdk/javadoc/internal/doclets/toolkit/Configuration;Ljdk/javadoc/internal/doclets/toolkit/util/DocPath;)Ljdk/javadoc/internal/doclets/toolkit/util/DocFile;
            putfield jdk.javadoc.internal.doclets.toolkit.util.PackageListWriter.file:Ljdk/javadoc/internal/doclets/toolkit/util/DocFile;
         2: .line 59
            aload 0 /* this */
            aload 1 /* configuration */
            putfield jdk.javadoc.internal.doclets.toolkit.util.PackageListWriter.configuration:Ljdk/javadoc/internal/doclets/toolkit/Configuration;
         3: .line 60
            aload 0 /* this */
            aload 1 /* configuration */
            getfield jdk.javadoc.internal.doclets.toolkit.Configuration.utils:Ljdk/javadoc/internal/doclets/toolkit/util/Utils;
            putfield jdk.javadoc.internal.doclets.toolkit.util.PackageListWriter.utils:Ljdk/javadoc/internal/doclets/toolkit/util/Utils;
         4: .line 61
            return
        end local 1 // jdk.javadoc.internal.doclets.toolkit.Configuration configuration
        end local 0 // jdk.javadoc.internal.doclets.toolkit.util.PackageListWriter this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    5     0           this  Ljdk/javadoc/internal/doclets/toolkit/util/PackageListWriter;
            0    5     1  configuration  Ljdk/javadoc/internal/doclets/toolkit/Configuration;
    MethodParameters:
               Name  Flags
      configuration  

  public static void generate(jdk.javadoc.internal.doclets.toolkit.Configuration);
    descriptor: (Ljdk/javadoc/internal/doclets/toolkit/Configuration;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // jdk.javadoc.internal.doclets.toolkit.Configuration configuration
         0: .line 70
            new jdk.javadoc.internal.doclets.toolkit.util.PackageListWriter
            dup
            aload 0 /* configuration */
            invokespecial jdk.javadoc.internal.doclets.toolkit.util.PackageListWriter.<init>:(Ljdk/javadoc/internal/doclets/toolkit/Configuration;)V
            astore 1 /* packgen */
        start local 1 // jdk.javadoc.internal.doclets.toolkit.util.PackageListWriter packgen
         1: .line 71
            aload 1 /* packgen */
            aload 0 /* configuration */
            getfield jdk.javadoc.internal.doclets.toolkit.Configuration.docEnv:Ljdk/javadoc/doclet/DocletEnvironment;
            invokevirtual jdk.javadoc.internal.doclets.toolkit.util.PackageListWriter.generatePackageListFile:(Ljdk/javadoc/doclet/DocletEnvironment;)V
         2: .line 72
            return
        end local 1 // jdk.javadoc.internal.doclets.toolkit.util.PackageListWriter packgen
        end local 0 // jdk.javadoc.internal.doclets.toolkit.Configuration configuration
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    3     0  configuration  Ljdk/javadoc/internal/doclets/toolkit/Configuration;
            1    3     1        packgen  Ljdk/javadoc/internal/doclets/toolkit/util/PackageListWriter;
    Exceptions:
      throws jdk.javadoc.internal.doclets.toolkit.util.DocFileIOException
    MethodParameters:
               Name  Flags
      configuration  

  protected void generatePackageListFile(jdk.javadoc.doclet.DocletEnvironment);
    descriptor: (Ljdk/javadoc/doclet/DocletEnvironment;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=7, args_size=2
        start local 0 // jdk.javadoc.internal.doclets.toolkit.util.PackageListWriter this
        start local 1 // jdk.javadoc.doclet.DocletEnvironment docEnv
         0: .line 75
            aconst_null
            astore 2
            aconst_null
            astore 3
         1: new java.io.BufferedWriter
            dup
            aload 0 /* this */
            getfield jdk.javadoc.internal.doclets.toolkit.util.PackageListWriter.file:Ljdk/javadoc/internal/doclets/toolkit/util/DocFile;
            invokevirtual jdk.javadoc.internal.doclets.toolkit.util.DocFile.openWriter:()Ljava/io/Writer;
            invokespecial java.io.BufferedWriter.<init>:(Ljava/io/Writer;)V
            astore 4 /* out */
        start local 4 // java.io.BufferedWriter out
         2: .line 76
            aload 0 /* this */
            getfield jdk.javadoc.internal.doclets.toolkit.util.PackageListWriter.configuration:Ljdk/javadoc/internal/doclets/toolkit/Configuration;
            getfield jdk.javadoc.internal.doclets.toolkit.Configuration.packages:Ljava/util/SortedSet;
            invokeinterface java.util.SortedSet.iterator:()Ljava/util/Iterator;
            astore 6
            goto 7
      StackMap locals: jdk.javadoc.internal.doclets.toolkit.util.PackageListWriter jdk.javadoc.doclet.DocletEnvironment java.lang.Throwable java.lang.Throwable java.io.BufferedWriter top java.util.Iterator
      StackMap stack:
         3: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast javax.lang.model.element.PackageElement
            astore 5 /* pkg */
        start local 5 // javax.lang.model.element.PackageElement pkg
         4: .line 79
            aload 0 /* this */
            getfield jdk.javadoc.internal.doclets.toolkit.util.PackageListWriter.configuration:Ljdk/javadoc/internal/doclets/toolkit/Configuration;
            getfield jdk.javadoc.internal.doclets.toolkit.Configuration.nodeprecated:Z
            ifeq 5
            aload 0 /* this */
            getfield jdk.javadoc.internal.doclets.toolkit.util.PackageListWriter.utils:Ljdk/javadoc/internal/doclets/toolkit/util/Utils;
            aload 5 /* pkg */
            invokevirtual jdk.javadoc.internal.doclets.toolkit.util.Utils.isDeprecated:(Ljavax/lang/model/element/Element;)Z
            ifne 7
         5: .line 80
      StackMap locals: jdk.javadoc.internal.doclets.toolkit.util.PackageListWriter jdk.javadoc.doclet.DocletEnvironment java.lang.Throwable java.lang.Throwable java.io.BufferedWriter javax.lang.model.element.PackageElement java.util.Iterator
      StackMap stack:
            aload 4 /* out */
            aload 5 /* pkg */
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            invokevirtual java.io.BufferedWriter.write:(Ljava/lang/String;)V
         6: .line 81
            aload 4 /* out */
            invokevirtual java.io.BufferedWriter.newLine:()V
        end local 5 // javax.lang.model.element.PackageElement pkg
         7: .line 76
      StackMap locals: jdk.javadoc.internal.doclets.toolkit.util.PackageListWriter jdk.javadoc.doclet.DocletEnvironment java.lang.Throwable java.lang.Throwable java.io.BufferedWriter top java.util.Iterator
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
         8: .line 84
            aload 4 /* out */
            ifnull 16
            aload 4 /* out */
            invokevirtual java.io.BufferedWriter.close:()V
            goto 16
      StackMap locals: jdk.javadoc.internal.doclets.toolkit.util.PackageListWriter jdk.javadoc.doclet.DocletEnvironment java.lang.Throwable java.lang.Throwable java.io.BufferedWriter
      StackMap stack: java.lang.Throwable
         9: astore 2
            aload 4 /* out */
            ifnull 10
            aload 4 /* out */
            invokevirtual java.io.BufferedWriter.close:()V
        end local 4 // java.io.BufferedWriter out
      StackMap locals:
      StackMap stack:
        10: aload 2
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        11: astore 3
            aload 2
            ifnonnull 12
            aload 3
            astore 2
            goto 13
      StackMap locals:
      StackMap stack:
        12: aload 2
            aload 3
            if_acmpeq 13
            aload 2
            aload 3
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        13: aload 2
            athrow
      StackMap locals: jdk.javadoc.internal.doclets.toolkit.util.PackageListWriter jdk.javadoc.doclet.DocletEnvironment
      StackMap stack: java.io.IOException
        14: astore 2 /* e */
        start local 2 // java.io.IOException e
        15: .line 85
            new jdk.javadoc.internal.doclets.toolkit.util.DocFileIOException
            dup
            aload 0 /* this */
            getfield jdk.javadoc.internal.doclets.toolkit.util.PackageListWriter.file:Ljdk/javadoc/internal/doclets/toolkit/util/DocFile;
            getstatic jdk.javadoc.internal.doclets.toolkit.util.DocFileIOException$Mode.WRITE:Ljdk/javadoc/internal/doclets/toolkit/util/DocFileIOException$Mode;
            aload 2 /* e */
            invokespecial jdk.javadoc.internal.doclets.toolkit.util.DocFileIOException.<init>:(Ljdk/javadoc/internal/doclets/toolkit/util/DocFile;Ljdk/javadoc/internal/doclets/toolkit/util/DocFileIOException$Mode;Ljava/io/IOException;)V
            athrow
        end local 2 // java.io.IOException e
        16: .line 87
      StackMap locals:
      StackMap stack:
            return
        end local 1 // jdk.javadoc.doclet.DocletEnvironment docEnv
        end local 0 // jdk.javadoc.internal.doclets.toolkit.util.PackageListWriter this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   17     0    this  Ljdk/javadoc/internal/doclets/toolkit/util/PackageListWriter;
            0   17     1  docEnv  Ljdk/javadoc/doclet/DocletEnvironment;
            2   10     4     out  Ljava/io/BufferedWriter;
            4    7     5     pkg  Ljavax/lang/model/element/PackageElement;
           15   16     2       e  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           2     8       9  any
           1    11      11  any
           0    14      14  Class java.io.IOException
    Exceptions:
      throws jdk.javadoc.internal.doclets.toolkit.util.DocFileIOException
    MethodParameters:
        Name  Flags
      docEnv  
}
SourceFile: "PackageListWriter.java"
InnerClasses:
  public final Mode = jdk.javadoc.internal.doclets.toolkit.util.DocFileIOException$Mode of jdk.javadoc.internal.doclets.toolkit.util.DocFileIOException