public class jdk.tools.jlink.internal.JmodArchive$JmodEntry extends jdk.tools.jlink.internal.Archive$Entry
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: jdk.tools.jlink.internal.JmodArchive$JmodEntry
  super_class: jdk.tools.jlink.internal.Archive$Entry
{
  private final jdk.internal.jmod.JmodFile$Entry entry;
    descriptor: Ljdk/internal/jmod/JmodFile$Entry;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  final jdk.tools.jlink.internal.JmodArchive this$0;
    descriptor: Ljdk/tools/jlink/internal/JmodArchive;
    flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC

  void <init>(jdk.tools.jlink.internal.JmodArchive, java.lang.String, java.lang.String, jdk.tools.jlink.internal.Archive$Entry$EntryType, jdk.internal.jmod.JmodFile$Entry);
    descriptor: (Ljdk/tools/jlink/internal/JmodArchive;Ljava/lang/String;Ljava/lang/String;Ljdk/tools/jlink/internal/Archive$Entry$EntryType;Ljdk/internal/jmod/JmodFile$Entry;)V
    flags: (0x0000) 
    Code:
      stack=5, locals=6, args_size=6
        start local 0 // jdk.tools.jlink.internal.JmodArchive$JmodEntry this
        start local 2 // java.lang.String path
        start local 3 // java.lang.String name
        start local 4 // jdk.tools.jlink.internal.Archive$Entry$EntryType type
        start local 5 // jdk.internal.jmod.JmodFile$Entry entry
         0: .line 51
            aload 0 /* this */
            aload 1
            putfield jdk.tools.jlink.internal.JmodArchive$JmodEntry.this$0:Ljdk/tools/jlink/internal/JmodArchive;
         1: .line 52
            aload 0 /* this */
            aload 1
            aload 2 /* path */
            aload 3 /* name */
            aload 4 /* type */
            invokespecial jdk.tools.jlink.internal.Archive$Entry.<init>:(Ljdk/tools/jlink/internal/Archive;Ljava/lang/String;Ljava/lang/String;Ljdk/tools/jlink/internal/Archive$Entry$EntryType;)V
         2: .line 53
            aload 0 /* this */
            aload 5 /* entry */
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast jdk.internal.jmod.JmodFile$Entry
            putfield jdk.tools.jlink.internal.JmodArchive$JmodEntry.entry:Ljdk/internal/jmod/JmodFile$Entry;
         3: .line 54
            return
        end local 5 // jdk.internal.jmod.JmodFile$Entry entry
        end local 4 // jdk.tools.jlink.internal.Archive$Entry$EntryType type
        end local 3 // java.lang.String name
        end local 2 // java.lang.String path
        end local 0 // jdk.tools.jlink.internal.JmodArchive$JmodEntry this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Ljdk/tools/jlink/internal/JmodArchive$JmodEntry;
            0    4     2   path  Ljava/lang/String;
            0    4     3   name  Ljava/lang/String;
            0    4     4   type  Ljdk/tools/jlink/internal/Archive$Entry$EntryType;
            0    4     5  entry  Ljdk/internal/jmod/JmodFile$Entry;
    MethodParameters:
        Name  Flags
      this$0  final
      path    
      name    
      type    
      entry   

  public long size();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.tools.jlink.internal.JmodArchive$JmodEntry this
         0: .line 61
            aload 0 /* this */
            getfield jdk.tools.jlink.internal.JmodArchive$JmodEntry.entry:Ljdk/internal/jmod/JmodFile$Entry;
            invokevirtual jdk.internal.jmod.JmodFile$Entry.size:()J
            lreturn
        end local 0 // jdk.tools.jlink.internal.JmodArchive$JmodEntry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/tools/jlink/internal/JmodArchive$JmodEntry;

  public java.io.InputStream stream();
    descriptor: ()Ljava/io/InputStream;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // jdk.tools.jlink.internal.JmodArchive$JmodEntry this
         0: .line 66
            aload 0 /* this */
            getfield jdk.tools.jlink.internal.JmodArchive$JmodEntry.this$0:Ljdk/tools/jlink/internal/JmodArchive;
            getfield jdk.tools.jlink.internal.JmodArchive.jmodFile:Ljdk/internal/jmod/JmodFile;
            aload 0 /* this */
            getfield jdk.tools.jlink.internal.JmodArchive$JmodEntry.entry:Ljdk/internal/jmod/JmodFile$Entry;
            invokevirtual jdk.internal.jmod.JmodFile$Entry.section:()Ljdk/internal/jmod/JmodFile$Section;
            aload 0 /* this */
            getfield jdk.tools.jlink.internal.JmodArchive$JmodEntry.entry:Ljdk/internal/jmod/JmodFile$Entry;
            invokevirtual jdk.internal.jmod.JmodFile$Entry.name:()Ljava/lang/String;
            invokevirtual jdk.internal.jmod.JmodFile.getInputStream:(Ljdk/internal/jmod/JmodFile$Section;Ljava/lang/String;)Ljava/io/InputStream;
            areturn
        end local 0 // jdk.tools.jlink.internal.JmodArchive$JmodEntry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/tools/jlink/internal/JmodArchive$JmodEntry;
    Exceptions:
      throws java.io.IOException
}
SourceFile: "JmodArchive.java"
NestHost: jdk.tools.jlink.internal.JmodArchive
InnerClasses:
  public Entry = jdk.internal.jmod.JmodFile$Entry of jdk.internal.jmod.JmodFile
  public final Section = jdk.internal.jmod.JmodFile$Section of jdk.internal.jmod.JmodFile
  public abstract Entry = jdk.tools.jlink.internal.Archive$Entry of jdk.tools.jlink.internal.Archive
  public final EntryType = jdk.tools.jlink.internal.Archive$Entry$EntryType of jdk.tools.jlink.internal.Archive$Entry
  public JmodEntry = jdk.tools.jlink.internal.JmodArchive$JmodEntry of jdk.tools.jlink.internal.JmodArchive