public final class jdk.internal.org.objectweb.asm.util.CheckModuleAdapter extends jdk.internal.org.objectweb.asm.ModuleVisitor
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: jdk.internal.org.objectweb.asm.util.CheckModuleAdapter
super_class: jdk.internal.org.objectweb.asm.ModuleVisitor
{
private boolean end;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private final boolean isOpen;
descriptor: Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.util.HashSet<java.lang.String> requireNames;
descriptor: Ljava/util/HashSet;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/HashSet<Ljava/lang/String;>;
private final java.util.HashSet<java.lang.String> exportNames;
descriptor: Ljava/util/HashSet;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/HashSet<Ljava/lang/String;>;
private final java.util.HashSet<java.lang.String> openNames;
descriptor: Ljava/util/HashSet;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/HashSet<Ljava/lang/String;>;
private final java.util.HashSet<java.lang.String> useNames;
descriptor: Ljava/util/HashSet;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/HashSet<Ljava/lang/String;>;
private final java.util.HashSet<java.lang.String> provideNames;
descriptor: Ljava/util/HashSet;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/HashSet<Ljava/lang/String;>;
public void <init>(jdk.internal.org.objectweb.asm.ModuleVisitor, boolean);
descriptor: (Ljdk/internal/org/objectweb/asm/ModuleVisitor;Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
ldc 393216
aload 1
invokespecial jdk.internal.org.objectweb.asm.ModuleVisitor.<init>:(ILjdk/internal/org/objectweb/asm/ModuleVisitor;)V
1: aload 0
new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
putfield jdk.internal.org.objectweb.asm.util.CheckModuleAdapter.requireNames:Ljava/util/HashSet;
2: aload 0
new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
putfield jdk.internal.org.objectweb.asm.util.CheckModuleAdapter.exportNames:Ljava/util/HashSet;
3: aload 0
new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
putfield jdk.internal.org.objectweb.asm.util.CheckModuleAdapter.openNames:Ljava/util/HashSet;
4: aload 0
new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
putfield jdk.internal.org.objectweb.asm.util.CheckModuleAdapter.useNames:Ljava/util/HashSet;
5: aload 0
new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
putfield jdk.internal.org.objectweb.asm.util.CheckModuleAdapter.provideNames:Ljava/util/HashSet;
6: aload 0
iload 2
putfield jdk.internal.org.objectweb.asm.util.CheckModuleAdapter.isOpen:Z
7: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Ljdk/internal/org/objectweb/asm/util/CheckModuleAdapter;
0 8 1 mv Ljdk/internal/org/objectweb/asm/ModuleVisitor;
0 8 2 isOpen Z
MethodParameters:
Name Flags
mv final
isOpen final
public void visitRequire(java.lang.String, int, java.lang.String);
descriptor: (Ljava/lang/String;ILjava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokevirtual jdk.internal.org.objectweb.asm.util.CheckModuleAdapter.checkEnd:()V
1: aload 1
ifnonnull 3
2: new java.lang.IllegalArgumentException
dup
ldc "require cannot be null"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals:
StackMap stack:
ldc "requires"
aload 0
getfield jdk.internal.org.objectweb.asm.util.CheckModuleAdapter.requireNames:Ljava/util/HashSet;
aload 1
invokestatic jdk.internal.org.objectweb.asm.util.CheckModuleAdapter.checkDeclared:(Ljava/lang/String;Ljava/util/HashSet;Ljava/lang/String;)V
4: iload 2
ldc 36960
invokestatic jdk.internal.org.objectweb.asm.util.CheckClassAdapter.checkAccess:(II)V
5: aload 0
aload 1
iload 2
aload 3
invokespecial jdk.internal.org.objectweb.asm.ModuleVisitor.visitRequire:(Ljava/lang/String;ILjava/lang/String;)V
6: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Ljdk/internal/org/objectweb/asm/util/CheckModuleAdapter;
0 7 1 module Ljava/lang/String;
0 7 2 access I
0 7 3 version Ljava/lang/String;
MethodParameters:
Name Flags
module
access
version
public void visitExport(java.lang.String, int, java.lang.String[]);
descriptor: (Ljava/lang/String;I[Ljava/lang/String;)V
flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
Code:
stack=5, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokevirtual jdk.internal.org.objectweb.asm.util.CheckModuleAdapter.checkEnd:()V
1: aload 1
ifnonnull 3
2: new java.lang.IllegalArgumentException
dup
ldc "packaze cannot be null"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals:
StackMap stack:
aload 1
ldc "package name"
invokestatic jdk.internal.org.objectweb.asm.util.CheckMethodAdapter.checkInternalName:(Ljava/lang/String;Ljava/lang/String;)V
4: ldc "exports"
aload 0
getfield jdk.internal.org.objectweb.asm.util.CheckModuleAdapter.exportNames:Ljava/util/HashSet;
aload 1
invokestatic jdk.internal.org.objectweb.asm.util.CheckModuleAdapter.checkDeclared:(Ljava/lang/String;Ljava/util/HashSet;Ljava/lang/String;)V
5: iload 2
ldc 36864
invokestatic jdk.internal.org.objectweb.asm.util.CheckClassAdapter.checkAccess:(II)V
6: aload 3
ifnull 13
7: iconst_0
istore 4
start local 4 8: goto 12
9: StackMap locals: int
StackMap stack:
aload 3
iload 4
aaload
ifnonnull 11
10: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "module at index "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 4
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " cannot be null"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
11: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
12: iload 4
aload 3
arraylength
if_icmplt 9
end local 4 13: StackMap locals:
StackMap stack:
aload 0
aload 1
iload 2
aload 3
invokespecial jdk.internal.org.objectweb.asm.ModuleVisitor.visitExport:(Ljava/lang/String;I[Ljava/lang/String;)V
14: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Ljdk/internal/org/objectweb/asm/util/CheckModuleAdapter;
0 15 1 packaze Ljava/lang/String;
0 15 2 access I
0 15 3 modules [Ljava/lang/String;
8 13 4 i I
MethodParameters:
Name Flags
packaze
access
modules
public void visitOpen(java.lang.String, int, java.lang.String[]);
descriptor: (Ljava/lang/String;I[Ljava/lang/String;)V
flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
Code:
stack=5, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokevirtual jdk.internal.org.objectweb.asm.util.CheckModuleAdapter.checkEnd:()V
1: aload 0
getfield jdk.internal.org.objectweb.asm.util.CheckModuleAdapter.isOpen:Z
ifeq 3
2: new java.lang.IllegalArgumentException
dup
ldc "an open module can not use open directive"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals:
StackMap stack:
aload 1
ifnonnull 5
4: new java.lang.IllegalArgumentException
dup
ldc "packaze cannot be null"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
5: StackMap locals:
StackMap stack:
aload 1
ldc "package name"
invokestatic jdk.internal.org.objectweb.asm.util.CheckMethodAdapter.checkInternalName:(Ljava/lang/String;Ljava/lang/String;)V
6: ldc "opens"
aload 0
getfield jdk.internal.org.objectweb.asm.util.CheckModuleAdapter.openNames:Ljava/util/HashSet;
aload 1
invokestatic jdk.internal.org.objectweb.asm.util.CheckModuleAdapter.checkDeclared:(Ljava/lang/String;Ljava/util/HashSet;Ljava/lang/String;)V
7: iload 2
ldc 36864
invokestatic jdk.internal.org.objectweb.asm.util.CheckClassAdapter.checkAccess:(II)V
8: aload 3
ifnull 15
9: iconst_0
istore 4
start local 4 10: goto 14
11: StackMap locals: int
StackMap stack:
aload 3
iload 4
aaload
ifnonnull 13
12: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "module at index "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 4
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " cannot be null"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
13: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
14: iload 4
aload 3
arraylength
if_icmplt 11
end local 4 15: StackMap locals:
StackMap stack:
aload 0
aload 1
iload 2
aload 3
invokespecial jdk.internal.org.objectweb.asm.ModuleVisitor.visitOpen:(Ljava/lang/String;I[Ljava/lang/String;)V
16: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Ljdk/internal/org/objectweb/asm/util/CheckModuleAdapter;
0 17 1 packaze Ljava/lang/String;
0 17 2 access I
0 17 3 modules [Ljava/lang/String;
10 15 4 i I
MethodParameters:
Name Flags
packaze
access
modules
public void visitUse(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual jdk.internal.org.objectweb.asm.util.CheckModuleAdapter.checkEnd:()V
1: aload 1
ldc "service"
invokestatic jdk.internal.org.objectweb.asm.util.CheckMethodAdapter.checkInternalName:(Ljava/lang/String;Ljava/lang/String;)V
2: ldc "uses"
aload 0
getfield jdk.internal.org.objectweb.asm.util.CheckModuleAdapter.useNames:Ljava/util/HashSet;
aload 1
invokestatic jdk.internal.org.objectweb.asm.util.CheckModuleAdapter.checkDeclared:(Ljava/lang/String;Ljava/util/HashSet;Ljava/lang/String;)V
3: aload 0
aload 1
invokespecial jdk.internal.org.objectweb.asm.ModuleVisitor.visitUse:(Ljava/lang/String;)V
4: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljdk/internal/org/objectweb/asm/util/CheckModuleAdapter;
0 5 1 service Ljava/lang/String;
MethodParameters:
Name Flags
service
public void visitProvide(java.lang.String, java.lang.String[]);
descriptor: (Ljava/lang/String;[Ljava/lang/String;)V
flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokevirtual jdk.internal.org.objectweb.asm.util.CheckModuleAdapter.checkEnd:()V
1: aload 1
ldc "service"
invokestatic jdk.internal.org.objectweb.asm.util.CheckMethodAdapter.checkInternalName:(Ljava/lang/String;Ljava/lang/String;)V
2: ldc "provides"
aload 0
getfield jdk.internal.org.objectweb.asm.util.CheckModuleAdapter.provideNames:Ljava/util/HashSet;
aload 1
invokestatic jdk.internal.org.objectweb.asm.util.CheckModuleAdapter.checkDeclared:(Ljava/lang/String;Ljava/util/HashSet;Ljava/lang/String;)V
3: aload 2
ifnull 4
aload 2
arraylength
ifne 5
4: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
ldc "providers cannot be null or empty"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
5: StackMap locals:
StackMap stack:
iconst_0
istore 3
start local 3 6: goto 9
7: StackMap locals: int
StackMap stack:
aload 2
iload 3
aaload
ldc "provider"
invokestatic jdk.internal.org.objectweb.asm.util.CheckMethodAdapter.checkInternalName:(Ljava/lang/String;Ljava/lang/String;)V
8: iinc 3 1
StackMap locals:
StackMap stack:
9: iload 3
aload 2
arraylength
if_icmplt 7
end local 3 10: aload 0
aload 1
aload 2
invokespecial jdk.internal.org.objectweb.asm.ModuleVisitor.visitProvide:(Ljava/lang/String;[Ljava/lang/String;)V
11: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Ljdk/internal/org/objectweb/asm/util/CheckModuleAdapter;
0 12 1 service Ljava/lang/String;
0 12 2 providers [Ljava/lang/String;
6 10 3 i I
MethodParameters:
Name Flags
service
providers
public void visitEnd();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual jdk.internal.org.objectweb.asm.util.CheckModuleAdapter.checkEnd:()V
1: aload 0
iconst_1
putfield jdk.internal.org.objectweb.asm.util.CheckModuleAdapter.end:Z
2: aload 0
invokespecial jdk.internal.org.objectweb.asm.ModuleVisitor.visitEnd:()V
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljdk/internal/org/objectweb/asm/util/CheckModuleAdapter;
private void checkEnd();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.internal.org.objectweb.asm.util.CheckModuleAdapter.end:Z
ifeq 4
1: new java.lang.IllegalStateException
dup
2: ldc "Cannot call a visit method after visitEnd has been called"
3: invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljdk/internal/org/objectweb/asm/util/CheckModuleAdapter;
private static void checkDeclared(java.lang.String, java.util.HashSet<java.lang.String>, java.lang.String);
descriptor: (Ljava/lang/String;Ljava/util/HashSet;Ljava/lang/String;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 2
invokevirtual java.util.HashSet.add:(Ljava/lang/Object;)Z
ifne 2
1: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
aload 0
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " already declared"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 directive Ljava/lang/String;
0 3 1 names Ljava/util/HashSet<Ljava/lang/String;>;
0 3 2 name Ljava/lang/String;
Signature: (Ljava/lang/String;Ljava/util/HashSet<Ljava/lang/String;>;Ljava/lang/String;)V
MethodParameters:
Name Flags
directive
names
name
}
SourceFile: "CheckModuleAdapter.java"