class jdk.tools.jlink.internal.plugins.SystemModulesPlugin$SystemModulesClassGenerator$ModuleHashesBuilder
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: jdk.tools.jlink.internal.plugins.SystemModulesPlugin$SystemModulesClassGenerator$ModuleHashesBuilder
super_class: java.lang.Object
{
private static final java.lang.String MODULE_HASHES_BUILDER;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "jdk/internal/module/ModuleHashes$Builder"
private static final java.lang.String MODULE_HASHES_BUILDER_TYPE;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "Ljdk/internal/module/ModuleHashes$Builder;"
static final java.lang.String STRING_BYTE_ARRAY_SIG;
descriptor: Ljava/lang/String;
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: "(Ljava/lang/String;[B)Ljdk/internal/module/ModuleHashes$Builder;"
final jdk.internal.module.ModuleHashes recordedHashes;
descriptor: Ljdk/internal/module/ModuleHashes;
flags: (0x0010) ACC_FINAL
final jdk.internal.org.objectweb.asm.MethodVisitor hmv;
descriptor: Ljdk/internal/org/objectweb/asm/MethodVisitor;
flags: (0x0010) ACC_FINAL
final int index;
descriptor: I
flags: (0x0010) ACC_FINAL
final jdk.tools.jlink.internal.plugins.SystemModulesPlugin$SystemModulesClassGenerator this$1;
descriptor: Ljdk/tools/jlink/internal/plugins/SystemModulesPlugin$SystemModulesClassGenerator;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
void <init>(jdk.tools.jlink.internal.plugins.SystemModulesPlugin$SystemModulesClassGenerator, jdk.internal.module.ModuleHashes, int, jdk.internal.org.objectweb.asm.MethodVisitor);
descriptor: (Ljdk/tools/jlink/internal/plugins/SystemModulesPlugin$SystemModulesClassGenerator;Ljdk/internal/module/ModuleHashes;ILjdk/internal/org/objectweb/asm/MethodVisitor;)V
flags: (0x0000)
Code:
stack=2, locals=5, args_size=5
start local 0 start local 2 start local 3 start local 4 0: aload 0
aload 1
putfield jdk.tools.jlink.internal.plugins.SystemModulesPlugin$SystemModulesClassGenerator$ModuleHashesBuilder.this$1:Ljdk/tools/jlink/internal/plugins/SystemModulesPlugin$SystemModulesClassGenerator;
aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 2
putfield jdk.tools.jlink.internal.plugins.SystemModulesPlugin$SystemModulesClassGenerator$ModuleHashesBuilder.recordedHashes:Ljdk/internal/module/ModuleHashes;
2: aload 0
aload 4
putfield jdk.tools.jlink.internal.plugins.SystemModulesPlugin$SystemModulesClassGenerator$ModuleHashesBuilder.hmv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
3: aload 0
iload 3
putfield jdk.tools.jlink.internal.plugins.SystemModulesPlugin$SystemModulesClassGenerator$ModuleHashesBuilder.index:I
4: return
end local 4 end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljdk/tools/jlink/internal/plugins/SystemModulesPlugin$SystemModulesClassGenerator$ModuleHashesBuilder;
0 5 2 hashes Ljdk/internal/module/ModuleHashes;
0 5 3 index I
0 5 4 hmv Ljdk/internal/org/objectweb/asm/MethodVisitor;
MethodParameters:
Name Flags
this$0 final
hashes
index
hmv
void build();
descriptor: ()V
flags: (0x0000)
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.tools.jlink.internal.plugins.SystemModulesPlugin$SystemModulesClassGenerator$ModuleHashesBuilder.recordedHashes:Ljdk/internal/module/ModuleHashes;
ifnonnull 2
1: return
2: StackMap locals:
StackMap stack:
aload 0
invokevirtual jdk.tools.jlink.internal.plugins.SystemModulesPlugin$SystemModulesClassGenerator$ModuleHashesBuilder.newModuleHashesBuilder:()V
3: aload 0
getfield jdk.tools.jlink.internal.plugins.SystemModulesPlugin$SystemModulesClassGenerator$ModuleHashesBuilder.recordedHashes:Ljdk/internal/module/ModuleHashes;
4: invokevirtual jdk.internal.module.ModuleHashes.names:()Ljava/util/Set;
5: aload 0
invokedynamic accept(Ljdk/tools/jlink/internal/plugins/SystemModulesPlugin$SystemModulesClassGenerator$ModuleHashesBuilder;)Ljava/util/function/Consumer;
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:
(Ljava/lang/Object;)V
jdk/tools/jlink/internal/plugins/SystemModulesPlugin$SystemModulesClassGenerator$ModuleHashesBuilder.lambda$0(Ljava/lang/String;)V (7)
(Ljava/lang/String;)V
invokeinterface java.util.Set.forEach:(Ljava/util/function/Consumer;)V
6: aload 0
invokevirtual jdk.tools.jlink.internal.plugins.SystemModulesPlugin$SystemModulesClassGenerator$ModuleHashesBuilder.pushModuleHashes:()V
7: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Ljdk/tools/jlink/internal/plugins/SystemModulesPlugin$SystemModulesClassGenerator$ModuleHashesBuilder;
void newModuleHashesBuilder();
descriptor: ()V
flags: (0x0000)
Code:
stack=6, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.tools.jlink.internal.plugins.SystemModulesPlugin$SystemModulesClassGenerator$ModuleHashesBuilder.hmv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
sipush 187
ldc "jdk/internal/module/ModuleHashes$Builder"
invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitTypeInsn:(ILjava/lang/String;)V
1: aload 0
getfield jdk.tools.jlink.internal.plugins.SystemModulesPlugin$SystemModulesClassGenerator$ModuleHashesBuilder.hmv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
bipush 89
invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
2: aload 0
getfield jdk.tools.jlink.internal.plugins.SystemModulesPlugin$SystemModulesClassGenerator$ModuleHashesBuilder.hmv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
aload 0
getfield jdk.tools.jlink.internal.plugins.SystemModulesPlugin$SystemModulesClassGenerator$ModuleHashesBuilder.recordedHashes:Ljdk/internal/module/ModuleHashes;
invokevirtual jdk.internal.module.ModuleHashes.algorithm:()Ljava/lang/String;
invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitLdcInsn:(Ljava/lang/Object;)V
3: aload 0
getfield jdk.tools.jlink.internal.plugins.SystemModulesPlugin$SystemModulesClassGenerator$ModuleHashesBuilder.this$1:Ljdk/tools/jlink/internal/plugins/SystemModulesPlugin$SystemModulesClassGenerator;
aload 0
getfield jdk.tools.jlink.internal.plugins.SystemModulesPlugin$SystemModulesClassGenerator$ModuleHashesBuilder.hmv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
iconst_4
aload 0
getfield jdk.tools.jlink.internal.plugins.SystemModulesPlugin$SystemModulesClassGenerator$ModuleHashesBuilder.recordedHashes:Ljdk/internal/module/ModuleHashes;
invokevirtual jdk.internal.module.ModuleHashes.names:()Ljava/util/Set;
invokeinterface java.util.Set.size:()I
imul
iconst_3
idiv
iconst_1
iadd
invokevirtual jdk.tools.jlink.internal.plugins.SystemModulesPlugin$SystemModulesClassGenerator.pushInt:(Ljdk/internal/org/objectweb/asm/MethodVisitor;I)V
4: aload 0
getfield jdk.tools.jlink.internal.plugins.SystemModulesPlugin$SystemModulesClassGenerator$ModuleHashesBuilder.hmv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
sipush 183
ldc "jdk/internal/module/ModuleHashes$Builder"
5: ldc "<init>"
ldc "(Ljava/lang/String;I)V"
iconst_0
6: invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitMethodInsn:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)V
7: aload 0
getfield jdk.tools.jlink.internal.plugins.SystemModulesPlugin$SystemModulesClassGenerator$ModuleHashesBuilder.hmv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
bipush 58
iconst_0
invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitVarInsn:(II)V
8: aload 0
getfield jdk.tools.jlink.internal.plugins.SystemModulesPlugin$SystemModulesClassGenerator$ModuleHashesBuilder.hmv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
bipush 25
iconst_0
invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitVarInsn:(II)V
9: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Ljdk/tools/jlink/internal/plugins/SystemModulesPlugin$SystemModulesClassGenerator$ModuleHashesBuilder;
void pushModuleHashes();
descriptor: ()V
flags: (0x0000)
Code:
stack=6, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.tools.jlink.internal.plugins.SystemModulesPlugin$SystemModulesClassGenerator$ModuleHashesBuilder.hmv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
bipush 25
iconst_1
invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitVarInsn:(II)V
1: aload 0
getfield jdk.tools.jlink.internal.plugins.SystemModulesPlugin$SystemModulesClassGenerator$ModuleHashesBuilder.this$1:Ljdk/tools/jlink/internal/plugins/SystemModulesPlugin$SystemModulesClassGenerator;
aload 0
getfield jdk.tools.jlink.internal.plugins.SystemModulesPlugin$SystemModulesClassGenerator$ModuleHashesBuilder.hmv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
aload 0
getfield jdk.tools.jlink.internal.plugins.SystemModulesPlugin$SystemModulesClassGenerator$ModuleHashesBuilder.index:I
invokevirtual jdk.tools.jlink.internal.plugins.SystemModulesPlugin$SystemModulesClassGenerator.pushInt:(Ljdk/internal/org/objectweb/asm/MethodVisitor;I)V
2: aload 0
getfield jdk.tools.jlink.internal.plugins.SystemModulesPlugin$SystemModulesClassGenerator$ModuleHashesBuilder.hmv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
bipush 25
iconst_0
invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitVarInsn:(II)V
3: aload 0
getfield jdk.tools.jlink.internal.plugins.SystemModulesPlugin$SystemModulesClassGenerator$ModuleHashesBuilder.hmv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
sipush 182
ldc "jdk/internal/module/ModuleHashes$Builder"
4: ldc "build"
ldc "()Ljdk/internal/module/ModuleHashes;"
5: iconst_0
6: invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitMethodInsn:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)V
7: aload 0
getfield jdk.tools.jlink.internal.plugins.SystemModulesPlugin$SystemModulesClassGenerator$ModuleHashesBuilder.hmv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
bipush 83
invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
8: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Ljdk/tools/jlink/internal/plugins/SystemModulesPlugin$SystemModulesClassGenerator$ModuleHashesBuilder;
void hashForModule(java.lang.String, byte[]);
descriptor: (Ljava/lang/String;[B)V
flags: (0x0000)
Code:
stack=6, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield jdk.tools.jlink.internal.plugins.SystemModulesPlugin$SystemModulesClassGenerator$ModuleHashesBuilder.hmv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
bipush 25
iconst_0
invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitVarInsn:(II)V
1: aload 0
getfield jdk.tools.jlink.internal.plugins.SystemModulesPlugin$SystemModulesClassGenerator$ModuleHashesBuilder.hmv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
aload 1
invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitLdcInsn:(Ljava/lang/Object;)V
2: aload 0
getfield jdk.tools.jlink.internal.plugins.SystemModulesPlugin$SystemModulesClassGenerator$ModuleHashesBuilder.this$1:Ljdk/tools/jlink/internal/plugins/SystemModulesPlugin$SystemModulesClassGenerator;
aload 0
getfield jdk.tools.jlink.internal.plugins.SystemModulesPlugin$SystemModulesClassGenerator$ModuleHashesBuilder.hmv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
aload 2
arraylength
invokevirtual jdk.tools.jlink.internal.plugins.SystemModulesPlugin$SystemModulesClassGenerator.pushInt:(Ljdk/internal/org/objectweb/asm/MethodVisitor;I)V
3: aload 0
getfield jdk.tools.jlink.internal.plugins.SystemModulesPlugin$SystemModulesClassGenerator$ModuleHashesBuilder.hmv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
sipush 188
bipush 8
invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitIntInsn:(II)V
4: iconst_0
istore 3
start local 3 5: goto 11
6: StackMap locals: int
StackMap stack:
aload 0
getfield jdk.tools.jlink.internal.plugins.SystemModulesPlugin$SystemModulesClassGenerator$ModuleHashesBuilder.hmv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
bipush 89
invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
7: aload 0
getfield jdk.tools.jlink.internal.plugins.SystemModulesPlugin$SystemModulesClassGenerator$ModuleHashesBuilder.this$1:Ljdk/tools/jlink/internal/plugins/SystemModulesPlugin$SystemModulesClassGenerator;
aload 0
getfield jdk.tools.jlink.internal.plugins.SystemModulesPlugin$SystemModulesClassGenerator$ModuleHashesBuilder.hmv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
iload 3
invokevirtual jdk.tools.jlink.internal.plugins.SystemModulesPlugin$SystemModulesClassGenerator.pushInt:(Ljdk/internal/org/objectweb/asm/MethodVisitor;I)V
8: aload 0
getfield jdk.tools.jlink.internal.plugins.SystemModulesPlugin$SystemModulesClassGenerator$ModuleHashesBuilder.hmv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
bipush 16
aload 2
iload 3
baload
invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitIntInsn:(II)V
9: aload 0
getfield jdk.tools.jlink.internal.plugins.SystemModulesPlugin$SystemModulesClassGenerator$ModuleHashesBuilder.hmv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
bipush 84
invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
10: iinc 3 1
StackMap locals:
StackMap stack:
11: iload 3
aload 2
arraylength
if_icmplt 6
end local 3 12: aload 0
getfield jdk.tools.jlink.internal.plugins.SystemModulesPlugin$SystemModulesClassGenerator$ModuleHashesBuilder.hmv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
sipush 182
ldc "jdk/internal/module/ModuleHashes$Builder"
13: ldc "hashForModule"
ldc "(Ljava/lang/String;[B)Ljdk/internal/module/ModuleHashes$Builder;"
iconst_0
14: invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitMethodInsn:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)V
15: aload 0
getfield jdk.tools.jlink.internal.plugins.SystemModulesPlugin$SystemModulesClassGenerator$ModuleHashesBuilder.hmv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
bipush 87
invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
16: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Ljdk/tools/jlink/internal/plugins/SystemModulesPlugin$SystemModulesClassGenerator$ModuleHashesBuilder;
0 17 1 name Ljava/lang/String;
0 17 2 hash [B
5 12 3 i I
MethodParameters:
Name Flags
name
hash
private void lambda$0(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
aload 0
getfield jdk.tools.jlink.internal.plugins.SystemModulesPlugin$SystemModulesClassGenerator$ModuleHashesBuilder.recordedHashes:Ljdk/internal/module/ModuleHashes;
aload 1
invokevirtual jdk.internal.module.ModuleHashes.hashFor:(Ljava/lang/String;)[B
invokevirtual jdk.tools.jlink.internal.plugins.SystemModulesPlugin$SystemModulesClassGenerator$ModuleHashesBuilder.hashForModule:(Ljava/lang/String;[B)V
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/tools/jlink/internal/plugins/SystemModulesPlugin$SystemModulesClassGenerator$ModuleHashesBuilder;
0 1 1 mn Ljava/lang/String;
}
SourceFile: "SystemModulesPlugin.java"
NestHost: jdk.tools.jlink.internal.plugins.SystemModulesPlugin
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
SystemModulesClassGenerator = jdk.tools.jlink.internal.plugins.SystemModulesPlugin$SystemModulesClassGenerator of jdk.tools.jlink.internal.plugins.SystemModulesPlugin
ModuleHashesBuilder = jdk.tools.jlink.internal.plugins.SystemModulesPlugin$SystemModulesClassGenerator$ModuleHashesBuilder of jdk.tools.jlink.internal.plugins.SystemModulesPlugin$SystemModulesClassGenerator