final class jdk.internal.shellsupport.doc.JavadocHelper$OnDemandJavadocHelper$PatchModuleFileManager extends javax.tools.ForwardingJavaFileManager<javax.tools.JavaFileManager>
  minor version: 0
  major version: 59
  flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
  this_class: jdk.internal.shellsupport.doc.JavadocHelper$OnDemandJavadocHelper$PatchModuleFileManager
  super_class: javax.tools.ForwardingJavaFileManager
{
  private final javax.tools.JavaFileObject file;
    descriptor: Ljavax/tools/JavaFileObject;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.lang.String moduleName;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private static final javax.tools.JavaFileManager$Location PATCH_LOCATION;
    descriptor: Ljavax/tools/JavaFileManager$Location;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 810
            new jdk.internal.shellsupport.doc.JavadocHelper$OnDemandJavadocHelper$PatchModuleFileManager$1
            dup
            invokespecial jdk.internal.shellsupport.doc.JavadocHelper$OnDemandJavadocHelper$PatchModuleFileManager$1.<init>:()V
            putstatic jdk.internal.shellsupport.doc.JavadocHelper$OnDemandJavadocHelper$PatchModuleFileManager.PATCH_LOCATION:Ljavax/tools/JavaFileManager$Location;
         1: .line 826
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(javax.tools.JavaFileManager, javax.tools.JavaFileObject, java.lang.String);
    descriptor: (Ljavax/tools/JavaFileManager;Ljavax/tools/JavaFileObject;Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=4
        start local 0 // jdk.internal.shellsupport.doc.JavadocHelper$OnDemandJavadocHelper$PatchModuleFileManager this
        start local 1 // javax.tools.JavaFileManager fileManager
        start local 2 // javax.tools.JavaFileObject file
        start local 3 // java.lang.String moduleName
         0: .line 784
            aload 0 /* this */
            aload 1 /* fileManager */
            invokespecial javax.tools.ForwardingJavaFileManager.<init>:(Ljavax/tools/JavaFileManager;)V
         1: .line 785
            aload 0 /* this */
            aload 2 /* file */
            putfield jdk.internal.shellsupport.doc.JavadocHelper$OnDemandJavadocHelper$PatchModuleFileManager.file:Ljavax/tools/JavaFileObject;
         2: .line 786
            aload 0 /* this */
            aload 3 /* moduleName */
            putfield jdk.internal.shellsupport.doc.JavadocHelper$OnDemandJavadocHelper$PatchModuleFileManager.moduleName:Ljava/lang/String;
         3: .line 787
            return
        end local 3 // java.lang.String moduleName
        end local 2 // javax.tools.JavaFileObject file
        end local 1 // javax.tools.JavaFileManager fileManager
        end local 0 // jdk.internal.shellsupport.doc.JavadocHelper$OnDemandJavadocHelper$PatchModuleFileManager this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0         this  Ljdk/internal/shellsupport/doc/JavadocHelper$OnDemandJavadocHelper$PatchModuleFileManager;
            0    4     1  fileManager  Ljavax/tools/JavaFileManager;
            0    4     2         file  Ljavax/tools/JavaFileObject;
            0    4     3   moduleName  Ljava/lang/String;
    MethodParameters:
             Name  Flags
      fileManager  
      file         
      moduleName   

  public javax.tools.JavaFileManager$Location getLocationForModule(javax.tools.JavaFileManager$Location, javax.tools.JavaFileObject);
    descriptor: (Ljavax/tools/JavaFileManager$Location;Ljavax/tools/JavaFileObject;)Ljavax/tools/JavaFileManager$Location;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // jdk.internal.shellsupport.doc.JavadocHelper$OnDemandJavadocHelper$PatchModuleFileManager this
        start local 1 // javax.tools.JavaFileManager$Location location
        start local 2 // javax.tools.JavaFileObject fo
         0: .line 792
            aload 2 /* fo */
            aload 0 /* this */
            getfield jdk.internal.shellsupport.doc.JavadocHelper$OnDemandJavadocHelper$PatchModuleFileManager.file:Ljavax/tools/JavaFileObject;
            if_acmpne 2
         1: .line 793
            getstatic jdk.internal.shellsupport.doc.JavadocHelper$OnDemandJavadocHelper$PatchModuleFileManager.PATCH_LOCATION:Ljavax/tools/JavaFileManager$Location;
            goto 3
         2: .line 794
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* location */
            aload 2 /* fo */
            invokespecial javax.tools.ForwardingJavaFileManager.getLocationForModule:(Ljavax/tools/JavaFileManager$Location;Ljavax/tools/JavaFileObject;)Ljavax/tools/JavaFileManager$Location;
         3: .line 792
      StackMap locals:
      StackMap stack: javax.tools.JavaFileManager$Location
            areturn
        end local 2 // javax.tools.JavaFileObject fo
        end local 1 // javax.tools.JavaFileManager$Location location
        end local 0 // jdk.internal.shellsupport.doc.JavadocHelper$OnDemandJavadocHelper$PatchModuleFileManager this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Ljdk/internal/shellsupport/doc/JavadocHelper$OnDemandJavadocHelper$PatchModuleFileManager;
            0    4     1  location  Ljavax/tools/JavaFileManager$Location;
            0    4     2        fo  Ljavax/tools/JavaFileObject;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
          Name  Flags
      location  
      fo        

  public java.lang.String inferModuleName(javax.tools.JavaFileManager$Location);
    descriptor: (Ljavax/tools/JavaFileManager$Location;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.internal.shellsupport.doc.JavadocHelper$OnDemandJavadocHelper$PatchModuleFileManager this
        start local 1 // javax.tools.JavaFileManager$Location location
         0: .line 799
            aload 1 /* location */
            getstatic jdk.internal.shellsupport.doc.JavadocHelper$OnDemandJavadocHelper$PatchModuleFileManager.PATCH_LOCATION:Ljavax/tools/JavaFileManager$Location;
            if_acmpne 2
         1: .line 800
            aload 0 /* this */
            getfield jdk.internal.shellsupport.doc.JavadocHelper$OnDemandJavadocHelper$PatchModuleFileManager.moduleName:Ljava/lang/String;
            goto 3
         2: .line 801
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* location */
            invokespecial javax.tools.ForwardingJavaFileManager.inferModuleName:(Ljavax/tools/JavaFileManager$Location;)Ljava/lang/String;
         3: .line 799
      StackMap locals:
      StackMap stack: java.lang.String
            areturn
        end local 1 // javax.tools.JavaFileManager$Location location
        end local 0 // jdk.internal.shellsupport.doc.JavadocHelper$OnDemandJavadocHelper$PatchModuleFileManager this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Ljdk/internal/shellsupport/doc/JavadocHelper$OnDemandJavadocHelper$PatchModuleFileManager;
            0    4     1  location  Ljavax/tools/JavaFileManager$Location;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
          Name  Flags
      location  

  public boolean hasLocation(javax.tools.JavaFileManager$Location);
    descriptor: (Ljavax/tools/JavaFileManager$Location;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.internal.shellsupport.doc.JavadocHelper$OnDemandJavadocHelper$PatchModuleFileManager this
        start local 1 // javax.tools.JavaFileManager$Location location
         0: .line 806
            aload 1 /* location */
            getstatic javax.tools.StandardLocation.PATCH_MODULE_PATH:Ljavax/tools/StandardLocation;
            if_acmpeq 3
         1: .line 807
            aload 0 /* this */
            aload 1 /* location */
            invokespecial javax.tools.ForwardingJavaFileManager.hasLocation:(Ljavax/tools/JavaFileManager$Location;)Z
            ifne 3
         2: .line 806
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         3: iconst_1
            ireturn
        end local 1 // javax.tools.JavaFileManager$Location location
        end local 0 // jdk.internal.shellsupport.doc.JavadocHelper$OnDemandJavadocHelper$PatchModuleFileManager this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Ljdk/internal/shellsupport/doc/JavadocHelper$OnDemandJavadocHelper$PatchModuleFileManager;
            0    4     1  location  Ljavax/tools/JavaFileManager$Location;
    MethodParameters:
          Name  Flags
      location  
}
Signature: Ljavax/tools/ForwardingJavaFileManager<Ljavax/tools/JavaFileManager;>;
SourceFile: "JavadocHelper.java"
NestHost: jdk.internal.shellsupport.doc.JavadocHelper
InnerClasses:
  public abstract Location = javax.tools.JavaFileManager$Location of javax.tools.JavaFileManager
  private final OnDemandJavadocHelper = jdk.internal.shellsupport.doc.JavadocHelper$OnDemandJavadocHelper of jdk.internal.shellsupport.doc.JavadocHelper
  private final PatchModuleFileManager = jdk.internal.shellsupport.doc.JavadocHelper$OnDemandJavadocHelper$PatchModuleFileManager of jdk.internal.shellsupport.doc.JavadocHelper$OnDemandJavadocHelper
  jdk.internal.shellsupport.doc.JavadocHelper$OnDemandJavadocHelper$PatchModuleFileManager$1