public final class java.lang.module.ModuleDescriptor$Builder
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: java.lang.module.ModuleDescriptor$Builder
super_class: java.lang.Object
{
final java.lang.String name;
descriptor: Ljava/lang/String;
flags: (0x0010) ACC_FINAL
final boolean strict;
descriptor: Z
flags: (0x0010) ACC_FINAL
final java.util.Set<java.lang.module.ModuleDescriptor$Modifier> modifiers;
descriptor: Ljava/util/Set;
flags: (0x0010) ACC_FINAL
Signature: Ljava/util/Set<Ljava/lang/module/ModuleDescriptor$Modifier;>;
final boolean open;
descriptor: Z
flags: (0x0010) ACC_FINAL
final boolean automatic;
descriptor: Z
flags: (0x0010) ACC_FINAL
final java.util.Set<java.lang.String> packages;
descriptor: Ljava/util/Set;
flags: (0x0010) ACC_FINAL
Signature: Ljava/util/Set<Ljava/lang/String;>;
final java.util.Map<java.lang.String, java.lang.module.ModuleDescriptor$Requires> requires;
descriptor: Ljava/util/Map;
flags: (0x0010) ACC_FINAL
Signature: Ljava/util/Map<Ljava/lang/String;Ljava/lang/module/ModuleDescriptor$Requires;>;
final java.util.Map<java.lang.String, java.lang.module.ModuleDescriptor$Exports> exports;
descriptor: Ljava/util/Map;
flags: (0x0010) ACC_FINAL
Signature: Ljava/util/Map<Ljava/lang/String;Ljava/lang/module/ModuleDescriptor$Exports;>;
final java.util.Map<java.lang.String, java.lang.module.ModuleDescriptor$Opens> opens;
descriptor: Ljava/util/Map;
flags: (0x0010) ACC_FINAL
Signature: Ljava/util/Map<Ljava/lang/String;Ljava/lang/module/ModuleDescriptor$Opens;>;
final java.util.Set<java.lang.String> uses;
descriptor: Ljava/util/Set;
flags: (0x0010) ACC_FINAL
Signature: Ljava/util/Set<Ljava/lang/String;>;
final java.util.Map<java.lang.String, java.lang.module.ModuleDescriptor$Provides> provides;
descriptor: Ljava/util/Map;
flags: (0x0010) ACC_FINAL
Signature: Ljava/util/Map<Ljava/lang/String;Ljava/lang/module/ModuleDescriptor$Provides;>;
java.lang.module.ModuleDescriptor$Version version;
descriptor: Ljava/lang/module/ModuleDescriptor$Version;
flags: (0x0000)
java.lang.String rawVersionString;
descriptor: Ljava/lang/String;
flags: (0x0000)
java.lang.String mainClass;
descriptor: Ljava/lang/String;
flags: (0x0000)
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Ljava/lang/module/ModuleDescriptor;
invokevirtual java.lang.Class.desiredAssertionStatus:()Z
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: putstatic java.lang.module.ModuleDescriptor$Builder.$assertionsDisabled:Z
return
LocalVariableTable:
Start End Slot Name Signature
void <init>(java.lang.String, boolean, java.util.Set<java.lang.module.ModuleDescriptor$Modifier>);
descriptor: (Ljava/lang/String;ZLjava/util/Set;)V
flags: (0x0000)
Code:
stack=3, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
putfield java.lang.module.ModuleDescriptor$Builder.packages:Ljava/util/Set;
2: aload 0
new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putfield java.lang.module.ModuleDescriptor$Builder.requires:Ljava/util/Map;
3: aload 0
new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putfield java.lang.module.ModuleDescriptor$Builder.exports:Ljava/util/Map;
4: aload 0
new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putfield java.lang.module.ModuleDescriptor$Builder.opens:Ljava/util/Map;
5: aload 0
new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
putfield java.lang.module.ModuleDescriptor$Builder.uses:Ljava/util/Set;
6: aload 0
new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putfield java.lang.module.ModuleDescriptor$Builder.provides:Ljava/util/Map;
7: aload 0
iload 2
ifeq 8
aload 1
invokestatic jdk.internal.module.Checks.requireModuleName:(Ljava/lang/String;)Ljava/lang/String;
goto 9
StackMap locals: java.lang.module.ModuleDescriptor$Builder java.lang.String int java.util.Set
StackMap stack: java.lang.module.ModuleDescriptor$Builder
8: aload 1
StackMap locals: java.lang.module.ModuleDescriptor$Builder java.lang.String int java.util.Set
StackMap stack: java.lang.module.ModuleDescriptor$Builder java.lang.String
9: putfield java.lang.module.ModuleDescriptor$Builder.name:Ljava/lang/String;
10: aload 0
iload 2
putfield java.lang.module.ModuleDescriptor$Builder.strict:Z
11: aload 0
aload 3
putfield java.lang.module.ModuleDescriptor$Builder.modifiers:Ljava/util/Set;
12: aload 0
aload 3
getstatic java.lang.module.ModuleDescriptor$Modifier.OPEN:Ljava/lang/module/ModuleDescriptor$Modifier;
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
putfield java.lang.module.ModuleDescriptor$Builder.open:Z
13: aload 0
aload 3
getstatic java.lang.module.ModuleDescriptor$Modifier.AUTOMATIC:Ljava/lang/module/ModuleDescriptor$Modifier;
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
putfield java.lang.module.ModuleDescriptor$Builder.automatic:Z
14: getstatic java.lang.module.ModuleDescriptor$Builder.$assertionsDisabled:Z
ifne 15
aload 0
getfield java.lang.module.ModuleDescriptor$Builder.open:Z
ifeq 15
aload 0
getfield java.lang.module.ModuleDescriptor$Builder.automatic:Z
ifeq 15
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
15: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Ljava/lang/module/ModuleDescriptor$Builder;
0 16 1 name Ljava/lang/String;
0 16 2 strict Z
0 16 3 modifiers Ljava/util/Set<Ljava/lang/module/ModuleDescriptor$Modifier;>;
Signature: (Ljava/lang/String;ZLjava/util/Set<Ljava/lang/module/ModuleDescriptor$Modifier;>;)V
MethodParameters:
Name Flags
name
strict
modifiers
java.util.Set<java.lang.String> packages();
descriptor: ()Ljava/util/Set;
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield java.lang.module.ModuleDescriptor$Builder.packages:Ljava/util/Set;
invokestatic java.util.Collections.unmodifiableSet:(Ljava/util/Set;)Ljava/util/Set;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/lang/module/ModuleDescriptor$Builder;
Signature: ()Ljava/util/Set<Ljava/lang/String;>;
public java.lang.module.ModuleDescriptor$Builder requires(java.lang.module.ModuleDescriptor$Requires);
descriptor: (Ljava/lang/module/ModuleDescriptor$Requires;)Ljava/lang/module/ModuleDescriptor$Builder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield java.lang.module.ModuleDescriptor$Builder.automatic:Z
ifeq 2
1: new java.lang.IllegalStateException
dup
ldc "Automatic modules cannot declare dependences"
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.lang.module.ModuleDescriptor$Requires.name:()Ljava/lang/String;
astore 2
start local 2 3: aload 0
getfield java.lang.module.ModuleDescriptor$Builder.name:Ljava/lang/String;
aload 2
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 5
4: new java.lang.IllegalArgumentException
dup
ldc "Dependence on self"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
5: StackMap locals: java.lang.String
StackMap stack:
aload 0
getfield java.lang.module.ModuleDescriptor$Builder.requires:Ljava/util/Map;
aload 2
invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
ifeq 9
6: new java.lang.IllegalStateException
dup
new java.lang.StringBuilder
dup
ldc "Dependence upon "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
7: ldc " already declared"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
8: invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
9: StackMap locals:
StackMap stack:
aload 0
getfield java.lang.module.ModuleDescriptor$Builder.requires:Ljava/util/Map;
aload 2
aload 1
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
10: aload 0
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Ljava/lang/module/ModuleDescriptor$Builder;
0 11 1 req Ljava/lang/module/ModuleDescriptor$Requires;
3 11 2 mn Ljava/lang/String;
MethodParameters:
Name Flags
req
public java.lang.module.ModuleDescriptor$Builder requires(java.util.Set<java.lang.module.ModuleDescriptor$Requires$Modifier>, java.lang.String, java.lang.module.ModuleDescriptor$Version);
descriptor: (Ljava/util/Set;Ljava/lang/String;Ljava/lang/module/ModuleDescriptor$Version;)Ljava/lang/module/ModuleDescriptor$Builder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 3
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
pop
1: aload 0
getfield java.lang.module.ModuleDescriptor$Builder.strict:Z
ifeq 3
2: aload 2
invokestatic jdk.internal.module.Checks.requireModuleName:(Ljava/lang/String;)Ljava/lang/String;
astore 2
3: StackMap locals:
StackMap stack:
aload 0
new java.lang.module.ModuleDescriptor$Requires
dup
aload 1
aload 2
aload 3
aconst_null
invokespecial java.lang.module.ModuleDescriptor$Requires.<init>:(Ljava/util/Set;Ljava/lang/String;Ljava/lang/module/ModuleDescriptor$Version;Ljava/lang/String;)V
invokevirtual java.lang.module.ModuleDescriptor$Builder.requires:(Ljava/lang/module/ModuleDescriptor$Requires;)Ljava/lang/module/ModuleDescriptor$Builder;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljava/lang/module/ModuleDescriptor$Builder;
0 4 1 ms Ljava/util/Set<Ljava/lang/module/ModuleDescriptor$Requires$Modifier;>;
0 4 2 mn Ljava/lang/String;
0 4 3 compiledVersion Ljava/lang/module/ModuleDescriptor$Version;
Signature: (Ljava/util/Set<Ljava/lang/module/ModuleDescriptor$Requires$Modifier;>;Ljava/lang/String;Ljava/lang/module/ModuleDescriptor$Version;)Ljava/lang/module/ModuleDescriptor$Builder;
MethodParameters:
Name Flags
ms
mn
compiledVersion
java.lang.module.ModuleDescriptor$Builder requires(java.util.Set<java.lang.module.ModuleDescriptor$Requires$Modifier>, java.lang.String, java.lang.String);
descriptor: (Ljava/util/Set;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/module/ModuleDescriptor$Builder;
flags: (0x0000)
Code:
stack=6, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 3
invokestatic java.lang.module.ModuleDescriptor$Version.parse:(Ljava/lang/String;)Ljava/lang/module/ModuleDescriptor$Version;
astore 5
start local 5 1: new java.lang.module.ModuleDescriptor$Requires
dup
aload 1
aload 2
aload 5
aconst_null
invokespecial java.lang.module.ModuleDescriptor$Requires.<init>:(Ljava/util/Set;Ljava/lang/String;Ljava/lang/module/ModuleDescriptor$Version;Ljava/lang/String;)V
astore 4
end local 5 start local 4 2: goto 6
end local 4 StackMap locals:
StackMap stack: java.lang.IllegalArgumentException
3: astore 5
start local 5 4: aload 0
getfield java.lang.module.ModuleDescriptor$Builder.strict:Z
ifeq 5
aload 5
athrow
5: StackMap locals: java.lang.module.ModuleDescriptor$Builder java.util.Set java.lang.String java.lang.String top java.lang.IllegalArgumentException
StackMap stack:
new java.lang.module.ModuleDescriptor$Requires
dup
aload 1
aload 2
aconst_null
aload 3
invokespecial java.lang.module.ModuleDescriptor$Requires.<init>:(Ljava/util/Set;Ljava/lang/String;Ljava/lang/module/ModuleDescriptor$Version;Ljava/lang/String;)V
astore 4
end local 5 start local 4 6: StackMap locals: java.lang.module.ModuleDescriptor$Builder java.util.Set java.lang.String java.lang.String java.lang.module.ModuleDescriptor$Requires
StackMap stack:
aload 0
aload 4
invokevirtual java.lang.module.ModuleDescriptor$Builder.requires:(Ljava/lang/module/ModuleDescriptor$Requires;)Ljava/lang/module/ModuleDescriptor$Builder;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Ljava/lang/module/ModuleDescriptor$Builder;
0 7 1 ms Ljava/util/Set<Ljava/lang/module/ModuleDescriptor$Requires$Modifier;>;
0 7 2 mn Ljava/lang/String;
0 7 3 rawCompiledVersion Ljava/lang/String;
2 3 4 r Ljava/lang/module/ModuleDescriptor$Requires;
6 7 4 r Ljava/lang/module/ModuleDescriptor$Requires;
1 2 5 v Ljava/lang/module/ModuleDescriptor$Version;
4 6 5 e Ljava/lang/IllegalArgumentException;
Exception table:
from to target type
0 2 3 Class java.lang.IllegalArgumentException
Signature: (Ljava/util/Set<Ljava/lang/module/ModuleDescriptor$Requires$Modifier;>;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/module/ModuleDescriptor$Builder;
MethodParameters:
Name Flags
ms
mn
rawCompiledVersion
public java.lang.module.ModuleDescriptor$Builder requires(java.util.Set<java.lang.module.ModuleDescriptor$Requires$Modifier>, java.lang.String);
descriptor: (Ljava/util/Set;Ljava/lang/String;)Ljava/lang/module/ModuleDescriptor$Builder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield java.lang.module.ModuleDescriptor$Builder.strict:Z
ifeq 2
1: aload 2
invokestatic jdk.internal.module.Checks.requireModuleName:(Ljava/lang/String;)Ljava/lang/String;
astore 2
2: StackMap locals:
StackMap stack:
aload 0
new java.lang.module.ModuleDescriptor$Requires
dup
aload 1
aload 2
aconst_null
aconst_null
invokespecial java.lang.module.ModuleDescriptor$Requires.<init>:(Ljava/util/Set;Ljava/lang/String;Ljava/lang/module/ModuleDescriptor$Version;Ljava/lang/String;)V
invokevirtual java.lang.module.ModuleDescriptor$Builder.requires:(Ljava/lang/module/ModuleDescriptor$Requires;)Ljava/lang/module/ModuleDescriptor$Builder;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljava/lang/module/ModuleDescriptor$Builder;
0 3 1 ms Ljava/util/Set<Ljava/lang/module/ModuleDescriptor$Requires$Modifier;>;
0 3 2 mn Ljava/lang/String;
Signature: (Ljava/util/Set<Ljava/lang/module/ModuleDescriptor$Requires$Modifier;>;Ljava/lang/String;)Ljava/lang/module/ModuleDescriptor$Builder;
MethodParameters:
Name Flags
ms
mn
public java.lang.module.ModuleDescriptor$Builder requires(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/module/ModuleDescriptor$Builder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
ldc Ljava/lang/module/ModuleDescriptor$Requires$Modifier;
invokestatic java.util.EnumSet.noneOf:(Ljava/lang/Class;)Ljava/util/EnumSet;
aload 1
invokevirtual java.lang.module.ModuleDescriptor$Builder.requires:(Ljava/util/Set;Ljava/lang/String;)Ljava/lang/module/ModuleDescriptor$Builder;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/lang/module/ModuleDescriptor$Builder;
0 1 1 mn Ljava/lang/String;
MethodParameters:
Name Flags
mn
public java.lang.module.ModuleDescriptor$Builder exports(java.lang.module.ModuleDescriptor$Exports);
descriptor: (Ljava/lang/module/ModuleDescriptor$Exports;)Ljava/lang/module/ModuleDescriptor$Builder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield java.lang.module.ModuleDescriptor$Builder.automatic:Z
ifeq 2
1: new java.lang.IllegalStateException
dup
ldc "Automatic modules cannot declare exported packages"
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.lang.module.ModuleDescriptor$Exports.source:()Ljava/lang/String;
astore 2
start local 2 3: aload 0
getfield java.lang.module.ModuleDescriptor$Builder.exports:Ljava/util/Map;
aload 2
invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
ifeq 7
4: new java.lang.IllegalStateException
dup
new java.lang.StringBuilder
dup
ldc "Exported package "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
5: ldc " already declared"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
6: invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
7: StackMap locals: java.lang.String
StackMap stack:
aload 0
getfield java.lang.module.ModuleDescriptor$Builder.exports:Ljava/util/Map;
aload 2
aload 1
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
8: aload 0
getfield java.lang.module.ModuleDescriptor$Builder.packages:Ljava/util/Set;
aload 2
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
9: aload 0
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Ljava/lang/module/ModuleDescriptor$Builder;
0 10 1 e Ljava/lang/module/ModuleDescriptor$Exports;
3 10 2 source Ljava/lang/String;
MethodParameters:
Name Flags
e
public java.lang.module.ModuleDescriptor$Builder exports(java.util.Set<java.lang.module.ModuleDescriptor$Exports$Modifier>, java.lang.String, java.util.Set<java.lang.String>);
descriptor: (Ljava/util/Set;Ljava/lang/String;Ljava/util/Set;)Ljava/lang/module/ModuleDescriptor$Builder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: new java.util.HashSet
dup
aload 3
invokespecial java.util.HashSet.<init>:(Ljava/util/Collection;)V
astore 3
1: aload 3
invokeinterface java.util.Set.isEmpty:()Z
ifeq 3
2: new java.lang.IllegalArgumentException
dup
ldc "Empty target set"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals:
StackMap stack:
aload 0
getfield java.lang.module.ModuleDescriptor$Builder.strict:Z
ifeq 6
4: aload 2
invokestatic jdk.internal.module.Checks.requirePackageName:(Ljava/lang/String;)Ljava/lang/String;
pop
5: aload 3
invokedynamic accept()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/internal/module/Checks.requireModuleName(Ljava/lang/String;)Ljava/lang/String; (6)
(Ljava/lang/String;)V
invokeinterface java.util.Set.forEach:(Ljava/util/function/Consumer;)V
6: StackMap locals:
StackMap stack:
new java.lang.module.ModuleDescriptor$Exports
dup
aload 1
aload 2
aload 3
invokespecial java.lang.module.ModuleDescriptor$Exports.<init>:(Ljava/util/Set;Ljava/lang/String;Ljava/util/Set;)V
astore 4
start local 4 7: aload 0
aload 4
invokevirtual java.lang.module.ModuleDescriptor$Builder.exports:(Ljava/lang/module/ModuleDescriptor$Exports;)Ljava/lang/module/ModuleDescriptor$Builder;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Ljava/lang/module/ModuleDescriptor$Builder;
0 8 1 ms Ljava/util/Set<Ljava/lang/module/ModuleDescriptor$Exports$Modifier;>;
0 8 2 pn Ljava/lang/String;
0 8 3 targets Ljava/util/Set<Ljava/lang/String;>;
7 8 4 e Ljava/lang/module/ModuleDescriptor$Exports;
Signature: (Ljava/util/Set<Ljava/lang/module/ModuleDescriptor$Exports$Modifier;>;Ljava/lang/String;Ljava/util/Set<Ljava/lang/String;>;)Ljava/lang/module/ModuleDescriptor$Builder;
MethodParameters:
Name Flags
ms
pn
targets
public java.lang.module.ModuleDescriptor$Builder exports(java.util.Set<java.lang.module.ModuleDescriptor$Exports$Modifier>, java.lang.String);
descriptor: (Ljava/util/Set;Ljava/lang/String;)Ljava/lang/module/ModuleDescriptor$Builder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield java.lang.module.ModuleDescriptor$Builder.strict:Z
ifeq 2
1: aload 2
invokestatic jdk.internal.module.Checks.requirePackageName:(Ljava/lang/String;)Ljava/lang/String;
pop
2: StackMap locals:
StackMap stack:
new java.lang.module.ModuleDescriptor$Exports
dup
aload 1
aload 2
invokestatic java.util.Set.of:()Ljava/util/Set;
invokespecial java.lang.module.ModuleDescriptor$Exports.<init>:(Ljava/util/Set;Ljava/lang/String;Ljava/util/Set;)V
astore 3
start local 3 3: aload 0
aload 3
invokevirtual java.lang.module.ModuleDescriptor$Builder.exports:(Ljava/lang/module/ModuleDescriptor$Exports;)Ljava/lang/module/ModuleDescriptor$Builder;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljava/lang/module/ModuleDescriptor$Builder;
0 4 1 ms Ljava/util/Set<Ljava/lang/module/ModuleDescriptor$Exports$Modifier;>;
0 4 2 pn Ljava/lang/String;
3 4 3 e Ljava/lang/module/ModuleDescriptor$Exports;
Signature: (Ljava/util/Set<Ljava/lang/module/ModuleDescriptor$Exports$Modifier;>;Ljava/lang/String;)Ljava/lang/module/ModuleDescriptor$Builder;
MethodParameters:
Name Flags
ms
pn
public java.lang.module.ModuleDescriptor$Builder exports(java.lang.String, java.util.Set<java.lang.String>);
descriptor: (Ljava/lang/String;Ljava/util/Set;)Ljava/lang/module/ModuleDescriptor$Builder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokestatic java.util.Set.of:()Ljava/util/Set;
aload 1
aload 2
invokevirtual java.lang.module.ModuleDescriptor$Builder.exports:(Ljava/util/Set;Ljava/lang/String;Ljava/util/Set;)Ljava/lang/module/ModuleDescriptor$Builder;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/lang/module/ModuleDescriptor$Builder;
0 1 1 pn Ljava/lang/String;
0 1 2 targets Ljava/util/Set<Ljava/lang/String;>;
Signature: (Ljava/lang/String;Ljava/util/Set<Ljava/lang/String;>;)Ljava/lang/module/ModuleDescriptor$Builder;
MethodParameters:
Name Flags
pn
targets
public java.lang.module.ModuleDescriptor$Builder exports(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/module/ModuleDescriptor$Builder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokestatic java.util.Set.of:()Ljava/util/Set;
aload 1
invokevirtual java.lang.module.ModuleDescriptor$Builder.exports:(Ljava/util/Set;Ljava/lang/String;)Ljava/lang/module/ModuleDescriptor$Builder;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/lang/module/ModuleDescriptor$Builder;
0 1 1 pn Ljava/lang/String;
MethodParameters:
Name Flags
pn
public java.lang.module.ModuleDescriptor$Builder opens(java.lang.module.ModuleDescriptor$Opens);
descriptor: (Ljava/lang/module/ModuleDescriptor$Opens;)Ljava/lang/module/ModuleDescriptor$Builder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield java.lang.module.ModuleDescriptor$Builder.open:Z
ifne 1
aload 0
getfield java.lang.module.ModuleDescriptor$Builder.automatic:Z
ifeq 2
1: StackMap locals:
StackMap stack:
new java.lang.IllegalStateException
dup
ldc "Open or automatic modules cannot declare open packages"
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.lang.module.ModuleDescriptor$Opens.source:()Ljava/lang/String;
astore 2
start local 2 3: aload 0
getfield java.lang.module.ModuleDescriptor$Builder.opens:Ljava/util/Map;
aload 2
invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
ifeq 7
4: new java.lang.IllegalStateException
dup
new java.lang.StringBuilder
dup
ldc "Open package "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
5: ldc " already declared"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
6: invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
7: StackMap locals: java.lang.String
StackMap stack:
aload 0
getfield java.lang.module.ModuleDescriptor$Builder.opens:Ljava/util/Map;
aload 2
aload 1
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
8: aload 0
getfield java.lang.module.ModuleDescriptor$Builder.packages:Ljava/util/Set;
aload 2
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
9: aload 0
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Ljava/lang/module/ModuleDescriptor$Builder;
0 10 1 obj Ljava/lang/module/ModuleDescriptor$Opens;
3 10 2 source Ljava/lang/String;
MethodParameters:
Name Flags
obj
public java.lang.module.ModuleDescriptor$Builder opens(java.util.Set<java.lang.module.ModuleDescriptor$Opens$Modifier>, java.lang.String, java.util.Set<java.lang.String>);
descriptor: (Ljava/util/Set;Ljava/lang/String;Ljava/util/Set;)Ljava/lang/module/ModuleDescriptor$Builder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: new java.util.HashSet
dup
aload 3
invokespecial java.util.HashSet.<init>:(Ljava/util/Collection;)V
astore 3
1: aload 3
invokeinterface java.util.Set.isEmpty:()Z
ifeq 3
2: new java.lang.IllegalArgumentException
dup
ldc "Empty target set"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals:
StackMap stack:
aload 0
getfield java.lang.module.ModuleDescriptor$Builder.strict:Z
ifeq 6
4: aload 2
invokestatic jdk.internal.module.Checks.requirePackageName:(Ljava/lang/String;)Ljava/lang/String;
pop
5: aload 3
invokedynamic accept()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/internal/module/Checks.requireModuleName(Ljava/lang/String;)Ljava/lang/String; (6)
(Ljava/lang/String;)V
invokeinterface java.util.Set.forEach:(Ljava/util/function/Consumer;)V
6: StackMap locals:
StackMap stack:
new java.lang.module.ModuleDescriptor$Opens
dup
aload 1
aload 2
aload 3
invokespecial java.lang.module.ModuleDescriptor$Opens.<init>:(Ljava/util/Set;Ljava/lang/String;Ljava/util/Set;)V
astore 4
start local 4 7: aload 0
aload 4
invokevirtual java.lang.module.ModuleDescriptor$Builder.opens:(Ljava/lang/module/ModuleDescriptor$Opens;)Ljava/lang/module/ModuleDescriptor$Builder;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Ljava/lang/module/ModuleDescriptor$Builder;
0 8 1 ms Ljava/util/Set<Ljava/lang/module/ModuleDescriptor$Opens$Modifier;>;
0 8 2 pn Ljava/lang/String;
0 8 3 targets Ljava/util/Set<Ljava/lang/String;>;
7 8 4 opens Ljava/lang/module/ModuleDescriptor$Opens;
Signature: (Ljava/util/Set<Ljava/lang/module/ModuleDescriptor$Opens$Modifier;>;Ljava/lang/String;Ljava/util/Set<Ljava/lang/String;>;)Ljava/lang/module/ModuleDescriptor$Builder;
MethodParameters:
Name Flags
ms
pn
targets
public java.lang.module.ModuleDescriptor$Builder opens(java.util.Set<java.lang.module.ModuleDescriptor$Opens$Modifier>, java.lang.String);
descriptor: (Ljava/util/Set;Ljava/lang/String;)Ljava/lang/module/ModuleDescriptor$Builder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield java.lang.module.ModuleDescriptor$Builder.strict:Z
ifeq 2
1: aload 2
invokestatic jdk.internal.module.Checks.requirePackageName:(Ljava/lang/String;)Ljava/lang/String;
pop
2: StackMap locals:
StackMap stack:
new java.lang.module.ModuleDescriptor$Opens
dup
aload 1
aload 2
invokestatic java.util.Set.of:()Ljava/util/Set;
invokespecial java.lang.module.ModuleDescriptor$Opens.<init>:(Ljava/util/Set;Ljava/lang/String;Ljava/util/Set;)V
astore 3
start local 3 3: aload 0
aload 3
invokevirtual java.lang.module.ModuleDescriptor$Builder.opens:(Ljava/lang/module/ModuleDescriptor$Opens;)Ljava/lang/module/ModuleDescriptor$Builder;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljava/lang/module/ModuleDescriptor$Builder;
0 4 1 ms Ljava/util/Set<Ljava/lang/module/ModuleDescriptor$Opens$Modifier;>;
0 4 2 pn Ljava/lang/String;
3 4 3 e Ljava/lang/module/ModuleDescriptor$Opens;
Signature: (Ljava/util/Set<Ljava/lang/module/ModuleDescriptor$Opens$Modifier;>;Ljava/lang/String;)Ljava/lang/module/ModuleDescriptor$Builder;
MethodParameters:
Name Flags
ms
pn
public java.lang.module.ModuleDescriptor$Builder opens(java.lang.String, java.util.Set<java.lang.String>);
descriptor: (Ljava/lang/String;Ljava/util/Set;)Ljava/lang/module/ModuleDescriptor$Builder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokestatic java.util.Set.of:()Ljava/util/Set;
aload 1
aload 2
invokevirtual java.lang.module.ModuleDescriptor$Builder.opens:(Ljava/util/Set;Ljava/lang/String;Ljava/util/Set;)Ljava/lang/module/ModuleDescriptor$Builder;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/lang/module/ModuleDescriptor$Builder;
0 1 1 pn Ljava/lang/String;
0 1 2 targets Ljava/util/Set<Ljava/lang/String;>;
Signature: (Ljava/lang/String;Ljava/util/Set<Ljava/lang/String;>;)Ljava/lang/module/ModuleDescriptor$Builder;
MethodParameters:
Name Flags
pn
targets
public java.lang.module.ModuleDescriptor$Builder opens(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/module/ModuleDescriptor$Builder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokestatic java.util.Set.of:()Ljava/util/Set;
aload 1
invokevirtual java.lang.module.ModuleDescriptor$Builder.opens:(Ljava/util/Set;Ljava/lang/String;)Ljava/lang/module/ModuleDescriptor$Builder;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/lang/module/ModuleDescriptor$Builder;
0 1 1 pn Ljava/lang/String;
MethodParameters:
Name Flags
pn
public java.lang.module.ModuleDescriptor$Builder uses(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/module/ModuleDescriptor$Builder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield java.lang.module.ModuleDescriptor$Builder.automatic:Z
ifeq 2
1: new java.lang.IllegalStateException
dup
ldc "Automatic modules can not declare service dependences"
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
getfield java.lang.module.ModuleDescriptor$Builder.uses:Ljava/util/Set;
aload 1
invokestatic jdk.internal.module.Checks.requireServiceTypeName:(Ljava/lang/String;)Ljava/lang/String;
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifeq 6
3: new java.lang.IllegalStateException
dup
new java.lang.StringBuilder
dup
ldc "Dependence upon service "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
4: aload 1
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;
5: invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
6: StackMap locals:
StackMap stack:
aload 0
getfield java.lang.module.ModuleDescriptor$Builder.uses:Ljava/util/Set;
aload 1
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
7: aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Ljava/lang/module/ModuleDescriptor$Builder;
0 8 1 service Ljava/lang/String;
MethodParameters:
Name Flags
service
public java.lang.module.ModuleDescriptor$Builder provides(java.lang.module.ModuleDescriptor$Provides);
descriptor: (Ljava/lang/module/ModuleDescriptor$Provides;)Ljava/lang/module/ModuleDescriptor$Builder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual java.lang.module.ModuleDescriptor$Provides.service:()Ljava/lang/String;
astore 2
start local 2 1: aload 0
getfield java.lang.module.ModuleDescriptor$Builder.provides:Ljava/util/Map;
aload 2
invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
ifeq 5
2: new java.lang.IllegalStateException
dup
new java.lang.StringBuilder
dup
ldc "Providers of service "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
3: 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;
4: invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
5: StackMap locals: java.lang.String
StackMap stack:
aload 0
getfield java.lang.module.ModuleDescriptor$Builder.provides:Ljava/util/Map;
aload 2
aload 1
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
6: aload 1
invokevirtual java.lang.module.ModuleDescriptor$Provides.providers:()Ljava/util/List;
aload 0
invokedynamic accept(Ljava/lang/module/ModuleDescriptor$Builder;)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
java/lang/module/ModuleDescriptor$Builder.lambda$2(Ljava/lang/String;)V (7)
(Ljava/lang/String;)V
invokeinterface java.util.List.forEach:(Ljava/util/function/Consumer;)V
7: aload 0
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Ljava/lang/module/ModuleDescriptor$Builder;
0 8 1 p Ljava/lang/module/ModuleDescriptor$Provides;
1 8 2 service Ljava/lang/String;
MethodParameters:
Name Flags
p
public java.lang.module.ModuleDescriptor$Builder provides(java.lang.String, java.util.List<java.lang.String>);
descriptor: (Ljava/lang/String;Ljava/util/List;)Ljava/lang/module/ModuleDescriptor$Builder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=6, args_size=3
start local 0 start local 1 start local 2 0: new java.util.ArrayList
dup
aload 2
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 2
1: aload 2
invokeinterface java.util.List.isEmpty:()Z
ifeq 3
2: new java.lang.IllegalArgumentException
dup
ldc "Empty providers set"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals:
StackMap stack:
aload 0
getfield java.lang.module.ModuleDescriptor$Builder.strict:Z
ifeq 7
4: aload 1
invokestatic jdk.internal.module.Checks.requireServiceTypeName:(Ljava/lang/String;)Ljava/lang/String;
pop
5: aload 2
invokedynamic accept()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/internal/module/Checks.requireServiceProviderName(Ljava/lang/String;)Ljava/lang/String; (6)
(Ljava/lang/String;)V
invokeinterface java.util.List.forEach:(Ljava/util/function/Consumer;)V
6: goto 20
7: StackMap locals:
StackMap stack:
aload 1
invokestatic java.lang.module.ModuleDescriptor.packageName:(Ljava/lang/String;)Ljava/lang/String;
astore 3
start local 3 8: aload 3
invokevirtual java.lang.String.isEmpty:()Z
ifeq 12
9: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
aload 1
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
10: ldc ": unnamed package"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
11: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
12: StackMap locals: java.lang.String
StackMap stack:
aload 2
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 5
goto 19
StackMap locals: java.lang.module.ModuleDescriptor$Builder java.lang.String java.util.List java.lang.String top java.util.Iterator
StackMap stack:
13: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 4
start local 4 14: aload 4
invokestatic java.lang.module.ModuleDescriptor.packageName:(Ljava/lang/String;)Ljava/lang/String;
astore 3
15: aload 3
invokevirtual java.lang.String.isEmpty:()Z
ifeq 19
16: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
aload 4
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
17: ldc ": unnamed package"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
18: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
end local 4 19: StackMap locals:
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 13
end local 3 20: StackMap locals: java.lang.module.ModuleDescriptor$Builder java.lang.String java.util.List
StackMap stack:
new java.lang.module.ModuleDescriptor$Provides
dup
aload 1
aload 2
invokespecial java.lang.module.ModuleDescriptor$Provides.<init>:(Ljava/lang/String;Ljava/util/List;)V
astore 3
start local 3 21: aload 0
aload 3
invokevirtual java.lang.module.ModuleDescriptor$Builder.provides:(Ljava/lang/module/ModuleDescriptor$Provides;)Ljava/lang/module/ModuleDescriptor$Builder;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 22 0 this Ljava/lang/module/ModuleDescriptor$Builder;
0 22 1 service Ljava/lang/String;
0 22 2 providers Ljava/util/List<Ljava/lang/String;>;
8 20 3 pn Ljava/lang/String;
14 19 4 name Ljava/lang/String;
21 22 3 p Ljava/lang/module/ModuleDescriptor$Provides;
Signature: (Ljava/lang/String;Ljava/util/List<Ljava/lang/String;>;)Ljava/lang/module/ModuleDescriptor$Builder;
MethodParameters:
Name Flags
service
providers
public java.lang.module.ModuleDescriptor$Builder packages(java.util.Set<java.lang.String>);
descriptor: (Ljava/util/Set;)Ljava/lang/module/ModuleDescriptor$Builder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield java.lang.module.ModuleDescriptor$Builder.strict:Z
ifeq 3
1: new java.util.HashSet
dup
aload 1
invokespecial java.util.HashSet.<init>:(Ljava/util/Collection;)V
astore 1
2: aload 1
invokedynamic accept()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/internal/module/Checks.requirePackageName(Ljava/lang/String;)Ljava/lang/String; (6)
(Ljava/lang/String;)V
invokeinterface java.util.Set.forEach:(Ljava/util/function/Consumer;)V
3: StackMap locals:
StackMap stack:
aload 0
getfield java.lang.module.ModuleDescriptor$Builder.packages:Ljava/util/Set;
aload 1
invokeinterface java.util.Set.addAll:(Ljava/util/Collection;)Z
pop
4: aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljava/lang/module/ModuleDescriptor$Builder;
0 5 1 pns Ljava/util/Set<Ljava/lang/String;>;
Signature: (Ljava/util/Set<Ljava/lang/String;>;)Ljava/lang/module/ModuleDescriptor$Builder;
MethodParameters:
Name Flags
pns
public java.lang.module.ModuleDescriptor$Builder version(java.lang.module.ModuleDescriptor$Version);
descriptor: (Ljava/lang/module/ModuleDescriptor$Version;)Ljava/lang/module/ModuleDescriptor$Builder;
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.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.module.ModuleDescriptor$Version
putfield java.lang.module.ModuleDescriptor$Builder.version:Ljava/lang/module/ModuleDescriptor$Version;
1: aload 0
aconst_null
putfield java.lang.module.ModuleDescriptor$Builder.rawVersionString:Ljava/lang/String;
2: aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljava/lang/module/ModuleDescriptor$Builder;
0 3 1 v Ljava/lang/module/ModuleDescriptor$Version;
MethodParameters:
Name Flags
v
public java.lang.module.ModuleDescriptor$Builder version(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/module/ModuleDescriptor$Builder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokestatic java.lang.module.ModuleDescriptor$Version.parse:(Ljava/lang/String;)Ljava/lang/module/ModuleDescriptor$Version;
putfield java.lang.module.ModuleDescriptor$Builder.version:Ljava/lang/module/ModuleDescriptor$Version;
1: aload 0
aconst_null
putfield java.lang.module.ModuleDescriptor$Builder.rawVersionString:Ljava/lang/String;
2: goto 7
StackMap locals:
StackMap stack: java.lang.IllegalArgumentException
3: astore 2
start local 2 4: aload 0
getfield java.lang.module.ModuleDescriptor$Builder.strict:Z
ifeq 5
aload 2
athrow
5: StackMap locals: java.lang.IllegalArgumentException
StackMap stack:
aload 0
aconst_null
putfield java.lang.module.ModuleDescriptor$Builder.version:Ljava/lang/module/ModuleDescriptor$Version;
6: aload 0
aload 1
putfield java.lang.module.ModuleDescriptor$Builder.rawVersionString:Ljava/lang/String;
end local 2 7: StackMap locals:
StackMap stack:
aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Ljava/lang/module/ModuleDescriptor$Builder;
0 8 1 vs Ljava/lang/String;
4 7 2 e Ljava/lang/IllegalArgumentException;
Exception table:
from to target type
0 2 3 Class java.lang.IllegalArgumentException
MethodParameters:
Name Flags
vs
public java.lang.module.ModuleDescriptor$Builder mainClass(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/module/ModuleDescriptor$Builder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield java.lang.module.ModuleDescriptor$Builder.strict:Z
ifeq 4
1: ldc "main class name"
aload 1
invokestatic jdk.internal.module.Checks.requireQualifiedClassName:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
astore 1
2: aload 1
invokestatic java.lang.module.ModuleDescriptor.packageName:(Ljava/lang/String;)Ljava/lang/String;
astore 2
start local 2 3: getstatic java.lang.module.ModuleDescriptor$Builder.$assertionsDisabled:Z
ifne 7
aload 2
invokevirtual java.lang.String.isEmpty:()Z
ifeq 7
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
end local 2 4: StackMap locals:
StackMap stack:
aload 1
invokestatic java.lang.module.ModuleDescriptor.packageName:(Ljava/lang/String;)Ljava/lang/String;
astore 2
start local 2 5: aload 2
invokevirtual java.lang.String.isEmpty:()Z
ifeq 7
6: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
aload 1
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ": unnamed package"
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
7: StackMap locals: java.lang.String
StackMap stack:
aload 0
getfield java.lang.module.ModuleDescriptor$Builder.packages:Ljava/util/Set;
aload 2
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
8: aload 0
aload 1
putfield java.lang.module.ModuleDescriptor$Builder.mainClass:Ljava/lang/String;
9: aload 0
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Ljava/lang/module/ModuleDescriptor$Builder;
0 10 1 mc Ljava/lang/String;
3 4 2 pn Ljava/lang/String;
5 10 2 pn Ljava/lang/String;
MethodParameters:
Name Flags
mc
public java.lang.module.ModuleDescriptor build();
descriptor: ()Ljava/lang/module/ModuleDescriptor;
flags: (0x0001) ACC_PUBLIC
Code:
stack=13, locals=5, args_size=1
start local 0 0: new java.util.HashSet
dup
aload 0
getfield java.lang.module.ModuleDescriptor$Builder.requires:Ljava/util/Map;
invokeinterface java.util.Map.values:()Ljava/util/Collection;
invokespecial java.util.HashSet.<init>:(Ljava/util/Collection;)V
astore 1
start local 1 1: new java.util.HashSet
dup
aload 0
getfield java.lang.module.ModuleDescriptor$Builder.exports:Ljava/util/Map;
invokeinterface java.util.Map.values:()Ljava/util/Collection;
invokespecial java.util.HashSet.<init>:(Ljava/util/Collection;)V
astore 2
start local 2 2: new java.util.HashSet
dup
aload 0
getfield java.lang.module.ModuleDescriptor$Builder.opens:Ljava/util/Map;
invokeinterface java.util.Map.values:()Ljava/util/Collection;
invokespecial java.util.HashSet.<init>:(Ljava/util/Collection;)V
astore 3
start local 3 3: aload 0
getfield java.lang.module.ModuleDescriptor$Builder.strict:Z
ifeq 11
4: aload 0
getfield java.lang.module.ModuleDescriptor$Builder.name:Ljava/lang/String;
ldc "java.base"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 11
5: aload 0
getfield java.lang.module.ModuleDescriptor$Builder.requires:Ljava/util/Map;
ldc "java.base"
invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
ifne 11
6: aload 1
new java.lang.module.ModuleDescriptor$Requires
dup
getstatic java.lang.module.ModuleDescriptor$Requires$Modifier.MANDATED:Ljava/lang/module/ModuleDescriptor$Requires$Modifier;
invokestatic java.util.Set.of:(Ljava/lang/Object;)Ljava/util/Set;
7: ldc "java.base"
8: aconst_null
9: aconst_null
invokespecial java.lang.module.ModuleDescriptor$Requires.<init>:(Ljava/util/Set;Ljava/lang/String;Ljava/lang/module/ModuleDescriptor$Version;Ljava/lang/String;)V
10: invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
11: StackMap locals: java.util.Set java.util.Set java.util.Set
StackMap stack:
new java.util.HashSet
dup
aload 0
getfield java.lang.module.ModuleDescriptor$Builder.provides:Ljava/util/Map;
invokeinterface java.util.Map.values:()Ljava/util/Collection;
invokespecial java.util.HashSet.<init>:(Ljava/util/Collection;)V
astore 4
start local 4 12: new java.lang.module.ModuleDescriptor
dup
aload 0
getfield java.lang.module.ModuleDescriptor$Builder.name:Ljava/lang/String;
13: aload 0
getfield java.lang.module.ModuleDescriptor$Builder.version:Ljava/lang/module/ModuleDescriptor$Version;
14: aload 0
getfield java.lang.module.ModuleDescriptor$Builder.rawVersionString:Ljava/lang/String;
15: aload 0
getfield java.lang.module.ModuleDescriptor$Builder.modifiers:Ljava/util/Set;
16: aload 1
17: aload 2
18: aload 3
19: aload 0
getfield java.lang.module.ModuleDescriptor$Builder.uses:Ljava/util/Set;
20: aload 4
21: aload 0
getfield java.lang.module.ModuleDescriptor$Builder.packages:Ljava/util/Set;
22: aload 0
getfield java.lang.module.ModuleDescriptor$Builder.mainClass:Ljava/lang/String;
23: invokespecial java.lang.module.ModuleDescriptor.<init>:(Ljava/lang/String;Ljava/lang/module/ModuleDescriptor$Version;Ljava/lang/String;Ljava/util/Set;Ljava/util/Set;Ljava/util/Set;Ljava/util/Set;Ljava/util/Set;Ljava/util/Set;Ljava/util/Set;Ljava/lang/String;)V
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 Ljava/lang/module/ModuleDescriptor$Builder;
1 24 1 requires Ljava/util/Set<Ljava/lang/module/ModuleDescriptor$Requires;>;
2 24 2 exports Ljava/util/Set<Ljava/lang/module/ModuleDescriptor$Exports;>;
3 24 3 opens Ljava/util/Set<Ljava/lang/module/ModuleDescriptor$Opens;>;
12 24 4 provides Ljava/util/Set<Ljava/lang/module/ModuleDescriptor$Provides;>;
private void lambda$2(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield java.lang.module.ModuleDescriptor$Builder.packages:Ljava/util/Set;
aload 1
invokestatic java.lang.module.ModuleDescriptor.packageName:(Ljava/lang/String;)Ljava/lang/String;
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/lang/module/ModuleDescriptor$Builder;
0 1 1 name Ljava/lang/String;
}
SourceFile: "ModuleDescriptor.java"
NestHost: java.lang.module.ModuleDescriptor
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
public final Builder = java.lang.module.ModuleDescriptor$Builder of java.lang.module.ModuleDescriptor
public final Exports = java.lang.module.ModuleDescriptor$Exports of java.lang.module.ModuleDescriptor
public final Modifier = java.lang.module.ModuleDescriptor$Exports$Modifier of java.lang.module.ModuleDescriptor$Exports
public final Modifier = java.lang.module.ModuleDescriptor$Modifier of java.lang.module.ModuleDescriptor
public final Opens = java.lang.module.ModuleDescriptor$Opens of java.lang.module.ModuleDescriptor
public final Modifier = java.lang.module.ModuleDescriptor$Opens$Modifier of java.lang.module.ModuleDescriptor$Opens
public final Provides = java.lang.module.ModuleDescriptor$Provides of java.lang.module.ModuleDescriptor
public final Requires = java.lang.module.ModuleDescriptor$Requires of java.lang.module.ModuleDescriptor
public final Modifier = java.lang.module.ModuleDescriptor$Requires$Modifier of java.lang.module.ModuleDescriptor$Requires
public final Version = java.lang.module.ModuleDescriptor$Version of java.lang.module.ModuleDescriptor