public final class jdk.internal.module.ModuleInfoExtender
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: jdk.internal.module.ModuleInfoExtender
super_class: java.lang.Object
{
private final java.io.InputStream in;
descriptor: Ljava/io/InputStream;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private java.util.Set<java.lang.String> packages;
descriptor: Ljava/util/Set;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/Set<Ljava/lang/String;>;
private java.lang.module.ModuleDescriptor$Version version;
descriptor: Ljava/lang/module/ModuleDescriptor$Version;
flags: (0x0002) ACC_PRIVATE
private java.lang.String mainClass;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private java.lang.String targetPlatform;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private jdk.internal.module.ModuleHashes hashes;
descriptor: Ljdk/internal/module/ModuleHashes;
flags: (0x0002) ACC_PRIVATE
private jdk.internal.module.ModuleResolution moduleResolution;
descriptor: Ljdk/internal/module/ModuleResolution;
flags: (0x0002) ACC_PRIVATE
private void <init>(java.io.InputStream);
descriptor: (Ljava/io/InputStream;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield jdk.internal.module.ModuleInfoExtender.in:Ljava/io/InputStream;
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljdk/internal/module/ModuleInfoExtender;
0 3 1 in Ljava/io/InputStream;
MethodParameters:
Name Flags
in
public jdk.internal.module.ModuleInfoExtender packages(java.util.Set<java.lang.String>);
descriptor: (Ljava/util/Set;)Ljdk/internal/module/ModuleInfoExtender;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokestatic java.util.Collections.unmodifiableSet:(Ljava/util/Set;)Ljava/util/Set;
putfield jdk.internal.module.ModuleInfoExtender.packages:Ljava/util/Set;
1: aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljdk/internal/module/ModuleInfoExtender;
0 2 1 packages Ljava/util/Set<Ljava/lang/String;>;
Signature: (Ljava/util/Set<Ljava/lang/String;>;)Ljdk/internal/module/ModuleInfoExtender;
MethodParameters:
Name Flags
packages
public jdk.internal.module.ModuleInfoExtender version(java.lang.module.ModuleDescriptor$Version);
descriptor: (Ljava/lang/module/ModuleDescriptor$Version;)Ljdk/internal/module/ModuleInfoExtender;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield jdk.internal.module.ModuleInfoExtender.version:Ljava/lang/module/ModuleDescriptor$Version;
1: aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljdk/internal/module/ModuleInfoExtender;
0 2 1 version Ljava/lang/module/ModuleDescriptor$Version;
MethodParameters:
Name Flags
version
public jdk.internal.module.ModuleInfoExtender mainClass(java.lang.String);
descriptor: (Ljava/lang/String;)Ljdk/internal/module/ModuleInfoExtender;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield jdk.internal.module.ModuleInfoExtender.mainClass:Ljava/lang/String;
1: aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljdk/internal/module/ModuleInfoExtender;
0 2 1 mainClass Ljava/lang/String;
MethodParameters:
Name Flags
mainClass
public jdk.internal.module.ModuleInfoExtender targetPlatform(java.lang.String);
descriptor: (Ljava/lang/String;)Ljdk/internal/module/ModuleInfoExtender;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield jdk.internal.module.ModuleInfoExtender.targetPlatform:Ljava/lang/String;
1: aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljdk/internal/module/ModuleInfoExtender;
0 2 1 targetPlatform Ljava/lang/String;
MethodParameters:
Name Flags
targetPlatform
public jdk.internal.module.ModuleInfoExtender hashes(jdk.internal.module.ModuleHashes);
descriptor: (Ljdk/internal/module/ModuleHashes;)Ljdk/internal/module/ModuleInfoExtender;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield jdk.internal.module.ModuleInfoExtender.hashes:Ljdk/internal/module/ModuleHashes;
1: aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljdk/internal/module/ModuleInfoExtender;
0 2 1 hashes Ljdk/internal/module/ModuleHashes;
MethodParameters:
Name Flags
hashes
public jdk.internal.module.ModuleInfoExtender moduleResolution(jdk.internal.module.ModuleResolution);
descriptor: (Ljdk/internal/module/ModuleResolution;)Ljdk/internal/module/ModuleInfoExtender;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield jdk.internal.module.ModuleInfoExtender.moduleResolution:Ljdk/internal/module/ModuleResolution;
1: aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljdk/internal/module/ModuleInfoExtender;
0 2 1 mres Ljdk/internal/module/ModuleResolution;
MethodParameters:
Name Flags
mres
public void write(java.io.OutputStream);
descriptor: (Ljava/io/OutputStream;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
aload 0
invokevirtual jdk.internal.module.ModuleInfoExtender.toByteArray:()[B
invokevirtual java.io.OutputStream.write:([B)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljdk/internal/module/ModuleInfoExtender;
0 2 1 out Ljava/io/OutputStream;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
out
public byte[] toByteArray();
descriptor: ()[B
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=10, args_size=1
start local 0 0: new jdk.internal.org.objectweb.asm.ClassWriter
dup
iconst_3
invokespecial jdk.internal.org.objectweb.asm.ClassWriter.<init>:(I)V
astore 1
start local 1 1: new jdk.internal.org.objectweb.asm.ClassReader
dup
aload 0
getfield jdk.internal.module.ModuleInfoExtender.in:Ljava/io/InputStream;
invokespecial jdk.internal.org.objectweb.asm.ClassReader.<init>:(Ljava/io/InputStream;)V
astore 2
start local 2 2: new jdk.internal.module.ModuleInfoExtender$1
dup
aload 0
ldc 393216
aload 1
invokespecial jdk.internal.module.ModuleInfoExtender$1.<init>:(Ljdk/internal/module/ModuleInfoExtender;ILjdk/internal/org/objectweb/asm/ClassVisitor;)V
astore 3
start local 3 3: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 4
start local 4 4: aload 4
new jdk.internal.org.objectweb.asm.commons.ModuleTargetAttribute
dup
invokespecial jdk.internal.org.objectweb.asm.commons.ModuleTargetAttribute.<init>:()V
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
5: aload 4
new jdk.internal.org.objectweb.asm.commons.ModuleResolutionAttribute
dup
invokespecial jdk.internal.org.objectweb.asm.commons.ModuleResolutionAttribute.<init>:()V
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
6: aload 4
new jdk.internal.org.objectweb.asm.commons.ModuleHashesAttribute
dup
invokespecial jdk.internal.org.objectweb.asm.commons.ModuleHashesAttribute.<init>:()V
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
7: aload 2
aload 3
aload 4
iconst_0
anewarray jdk.internal.org.objectweb.asm.Attribute
invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
checkcast jdk.internal.org.objectweb.asm.Attribute[]
iconst_0
invokevirtual jdk.internal.org.objectweb.asm.ClassReader.accept:(Ljdk/internal/org/objectweb/asm/ClassVisitor;[Ljdk/internal/org/objectweb/asm/Attribute;I)V
8: aload 0
getfield jdk.internal.module.ModuleInfoExtender.targetPlatform:Ljava/lang/String;
ifnull 10
9: aload 1
new jdk.internal.org.objectweb.asm.commons.ModuleTargetAttribute
dup
aload 0
getfield jdk.internal.module.ModuleInfoExtender.targetPlatform:Ljava/lang/String;
invokespecial jdk.internal.org.objectweb.asm.commons.ModuleTargetAttribute.<init>:(Ljava/lang/String;)V
invokevirtual jdk.internal.org.objectweb.asm.ClassWriter.visitAttribute:(Ljdk/internal/org/objectweb/asm/Attribute;)V
10: StackMap locals: jdk.internal.module.ModuleInfoExtender jdk.internal.org.objectweb.asm.ClassWriter jdk.internal.org.objectweb.asm.ClassReader jdk.internal.org.objectweb.asm.ClassVisitor java.util.List
StackMap stack:
aload 0
getfield jdk.internal.module.ModuleInfoExtender.moduleResolution:Ljdk/internal/module/ModuleResolution;
ifnull 13
11: aload 0
getfield jdk.internal.module.ModuleInfoExtender.moduleResolution:Ljdk/internal/module/ModuleResolution;
invokevirtual jdk.internal.module.ModuleResolution.value:()I
istore 5
start local 5 12: aload 1
new jdk.internal.org.objectweb.asm.commons.ModuleResolutionAttribute
dup
iload 5
invokespecial jdk.internal.org.objectweb.asm.commons.ModuleResolutionAttribute.<init>:(I)V
invokevirtual jdk.internal.org.objectweb.asm.ClassWriter.visitAttribute:(Ljdk/internal/org/objectweb/asm/Attribute;)V
end local 5 13: StackMap locals:
StackMap stack:
aload 0
getfield jdk.internal.module.ModuleInfoExtender.hashes:Ljdk/internal/module/ModuleHashes;
ifnull 23
14: aload 0
getfield jdk.internal.module.ModuleInfoExtender.hashes:Ljdk/internal/module/ModuleHashes;
invokevirtual jdk.internal.module.ModuleHashes.algorithm:()Ljava/lang/String;
astore 5
start local 5 15: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 6
start local 6 16: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 7
start local 7 17: aload 0
getfield jdk.internal.module.ModuleInfoExtender.hashes:Ljdk/internal/module/ModuleHashes;
invokevirtual jdk.internal.module.ModuleHashes.names:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 9
goto 21
StackMap locals: jdk.internal.module.ModuleInfoExtender jdk.internal.org.objectweb.asm.ClassWriter jdk.internal.org.objectweb.asm.ClassReader jdk.internal.org.objectweb.asm.ClassVisitor java.util.List java.lang.String java.util.List java.util.List top java.util.Iterator
StackMap stack:
18: aload 9
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 8
start local 8 19: aload 6
aload 8
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
20: aload 7
aload 0
getfield jdk.internal.module.ModuleInfoExtender.hashes:Ljdk/internal/module/ModuleHashes;
aload 8
invokevirtual jdk.internal.module.ModuleHashes.hashFor:(Ljava/lang/String;)[B
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 8 21: StackMap locals:
StackMap stack:
aload 9
invokeinterface java.util.Iterator.hasNext:()Z
ifne 18
22: aload 1
new jdk.internal.org.objectweb.asm.commons.ModuleHashesAttribute
dup
aload 5
aload 6
aload 7
invokespecial jdk.internal.org.objectweb.asm.commons.ModuleHashesAttribute.<init>:(Ljava/lang/String;Ljava/util/List;Ljava/util/List;)V
invokevirtual jdk.internal.org.objectweb.asm.ClassWriter.visitAttribute:(Ljdk/internal/org/objectweb/asm/Attribute;)V
end local 7 end local 6 end local 5 23: StackMap locals: jdk.internal.module.ModuleInfoExtender jdk.internal.org.objectweb.asm.ClassWriter jdk.internal.org.objectweb.asm.ClassReader jdk.internal.org.objectweb.asm.ClassVisitor java.util.List
StackMap stack:
aload 1
invokevirtual jdk.internal.org.objectweb.asm.ClassWriter.toByteArray:()[B
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 24 0 this Ljdk/internal/module/ModuleInfoExtender;
1 24 1 cw Ljdk/internal/org/objectweb/asm/ClassWriter;
2 24 2 cr Ljdk/internal/org/objectweb/asm/ClassReader;
3 24 3 cv Ljdk/internal/org/objectweb/asm/ClassVisitor;
4 24 4 attrs Ljava/util/List<Ljdk/internal/org/objectweb/asm/Attribute;>;
12 13 5 flags I
15 23 5 algorithm Ljava/lang/String;
16 23 6 names Ljava/util/List<Ljava/lang/String;>;
17 23 7 values Ljava/util/List<[B>;
19 21 8 name Ljava/lang/String;
Exceptions:
throws java.io.IOException
public static jdk.internal.module.ModuleInfoExtender newExtender(java.io.InputStream);
descriptor: (Ljava/io/InputStream;)Ljdk/internal/module/ModuleInfoExtender;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new jdk.internal.module.ModuleInfoExtender
dup
aload 0
invokespecial jdk.internal.module.ModuleInfoExtender.<init>:(Ljava/io/InputStream;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 in Ljava/io/InputStream;
MethodParameters:
Name Flags
in
}
SourceFile: "ModuleInfoExtender.java"
NestMembers:
jdk.internal.module.ModuleInfoExtender$1 jdk.internal.module.ModuleInfoExtender$1$1
InnerClasses:
public final Version = java.lang.module.ModuleDescriptor$Version of java.lang.module.ModuleDescriptor
jdk.internal.module.ModuleInfoExtender$1