public class jdk.tools.jmod.JmodTask
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: jdk.tools.jmod.JmodTask
super_class: java.lang.Object
{
private static final java.lang.String PROGNAME;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "jmod"
private static final java.lang.String MODULE_INFO;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "module-info.class"
private static final java.nio.file.Path CWD;
descriptor: Ljava/nio/file/Path;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private jdk.tools.jmod.JmodTask$Options options;
descriptor: Ljdk/tools/jmod/JmodTask$Options;
flags: (0x0002) ACC_PRIVATE
private java.io.PrintWriter out;
descriptor: Ljava/io/PrintWriter;
flags: (0x0002) ACC_PRIVATE
static final int EXIT_OK;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 0
static final int EXIT_ERROR;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 1
static final int EXIT_CMDERR;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 2
static final int EXIT_SYSERR;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 3
static final int EXIT_ABNORMAL;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 4
private static final java.lang.String CMD_FILENAME;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "@<filename>"
private final jdk.internal.joptsimple.OptionParser parser;
descriptor: Ljdk/internal/joptsimple/OptionParser;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private static volatile int[] $SWITCH_TABLE$jdk$tools$jmod$JmodTask$Mode;
descriptor: [I
flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: ldc ""
iconst_0
anewarray java.lang.String
invokestatic java.nio.file.Paths.get:(Ljava/lang/String;[Ljava/lang/String;)Ljava/nio/file/Path;
putstatic jdk.tools.jmod.JmodTask.CWD:Ljava/nio/file/Path;
1: return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new java.io.PrintWriter
dup
getstatic java.lang.System.out:Ljava/io/PrintStream;
iconst_1
invokespecial java.io.PrintWriter.<init>:(Ljava/io/OutputStream;Z)V
putfield jdk.tools.jmod.JmodTask.out:Ljava/io/PrintWriter;
2: aload 0
new jdk.internal.joptsimple.OptionParser
dup
ldc "hp"
invokespecial jdk.internal.joptsimple.OptionParser.<init>:(Ljava/lang/String;)V
putfield jdk.tools.jmod.JmodTask.parser:Ljdk/internal/joptsimple/OptionParser;
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljdk/tools/jmod/JmodTask;
void setLog(java.io.PrintWriter, java.io.PrintWriter);
descriptor: (Ljava/io/PrintWriter;Ljava/io/PrintWriter;)V
flags: (0x0000)
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
putfield jdk.tools.jmod.JmodTask.out:Ljava/io/PrintWriter;
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljdk/tools/jmod/JmodTask;
0 2 1 out Ljava/io/PrintWriter;
0 2 2 err Ljava/io/PrintWriter;
MethodParameters:
Name Flags
out
err
public int run(java.lang.String[]);
descriptor: ([Ljava/lang/String;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual jdk.tools.jmod.JmodTask.handleOptions:([Ljava/lang/String;)V
1: aload 0
getfield jdk.tools.jmod.JmodTask.options:Ljdk/tools/jmod/JmodTask$Options;
ifnonnull 5
2: aload 0
invokevirtual jdk.tools.jmod.JmodTask.showUsageSummary:()V
3: aload 0
getfield jdk.tools.jmod.JmodTask.out:Ljava/io/PrintWriter;
invokevirtual java.io.PrintWriter.flush:()V
4: iconst_2
ireturn
5: StackMap locals:
StackMap stack:
aload 0
getfield jdk.tools.jmod.JmodTask.options:Ljdk/tools/jmod/JmodTask$Options;
getfield jdk.tools.jmod.JmodTask$Options.help:Z
ifne 6
aload 0
getfield jdk.tools.jmod.JmodTask.options:Ljdk/tools/jmod/JmodTask$Options;
getfield jdk.tools.jmod.JmodTask$Options.helpExtra:Z
ifeq 9
6: StackMap locals:
StackMap stack:
aload 0
invokevirtual jdk.tools.jmod.JmodTask.showHelp:()V
7: aload 0
getfield jdk.tools.jmod.JmodTask.out:Ljava/io/PrintWriter;
invokevirtual java.io.PrintWriter.flush:()V
8: iconst_0
ireturn
9: StackMap locals:
StackMap stack:
aload 0
getfield jdk.tools.jmod.JmodTask.options:Ljdk/tools/jmod/JmodTask$Options;
getfield jdk.tools.jmod.JmodTask$Options.version:Z
ifeq 13
10: aload 0
invokevirtual jdk.tools.jmod.JmodTask.showVersion:()V
11: aload 0
getfield jdk.tools.jmod.JmodTask.out:Ljava/io/PrintWriter;
invokevirtual java.io.PrintWriter.flush:()V
12: iconst_0
ireturn
13: StackMap locals:
StackMap stack:
invokestatic jdk.tools.jmod.JmodTask.$SWITCH_TABLE$jdk$tools$jmod$JmodTask$Mode:()[I
aload 0
getfield jdk.tools.jmod.JmodTask.options:Ljdk/tools/jmod/JmodTask$Options;
getfield jdk.tools.jmod.JmodTask$Options.mode:Ljdk/tools/jmod/JmodTask$Mode;
invokevirtual jdk.tools.jmod.JmodTask$Mode.ordinal:()I
iaload
tableswitch { // 1 - 5
1: 14
2: 16
3: 18
4: 20
5: 22
default: 24
}
14: StackMap locals:
StackMap stack:
aload 0
invokevirtual jdk.tools.jmod.JmodTask.create:()Z
istore 2
start local 2 15: goto 25
end local 2 16: StackMap locals:
StackMap stack:
aload 0
invokevirtual jdk.tools.jmod.JmodTask.extract:()Z
istore 2
start local 2 17: goto 25
end local 2 18: StackMap locals:
StackMap stack:
aload 0
invokevirtual jdk.tools.jmod.JmodTask.list:()Z
istore 2
start local 2 19: goto 25
end local 2 20: StackMap locals:
StackMap stack:
aload 0
invokevirtual jdk.tools.jmod.JmodTask.describe:()Z
istore 2
start local 2 21: goto 25
end local 2 22: StackMap locals:
StackMap stack:
aload 0
invokevirtual jdk.tools.jmod.JmodTask.hashModules:()Z
istore 2
start local 2 23: goto 25
end local 2 24: StackMap locals:
StackMap stack:
new java.lang.AssertionError
dup
new java.lang.StringBuilder
dup
ldc "Unknown mode: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield jdk.tools.jmod.JmodTask.options:Ljdk/tools/jmod/JmodTask$Options;
getfield jdk.tools.jmod.JmodTask$Options.mode:Ljdk/tools/jmod/JmodTask$Mode;
invokevirtual jdk.tools.jmod.JmodTask$Mode.name:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
start local 2 25: StackMap locals: int
StackMap stack:
iload 2
ifeq 26
iconst_0
goto 27
StackMap locals:
StackMap stack:
26: iconst_1
StackMap locals:
StackMap stack: int
27: istore 4
28: aload 0
getfield jdk.tools.jmod.JmodTask.out:Ljava/io/PrintWriter;
invokevirtual java.io.PrintWriter.flush:()V
29: iload 4
ireturn
end local 2 30: StackMap locals: jdk.tools.jmod.JmodTask java.lang.String[]
StackMap stack: jdk.tools.jmod.JmodTask$CommandException
astore 2
start local 2 31: aload 0
aload 2
invokevirtual jdk.tools.jmod.JmodTask$CommandException.getMessage:()Ljava/lang/String;
invokevirtual jdk.tools.jmod.JmodTask.reportError:(Ljava/lang/String;)V
32: aload 2
getfield jdk.tools.jmod.JmodTask$CommandException.showUsage:Z
ifeq 34
33: aload 0
invokevirtual jdk.tools.jmod.JmodTask.showUsageSummary:()V
34: StackMap locals: jdk.tools.jmod.JmodTask$CommandException
StackMap stack:
aload 0
getfield jdk.tools.jmod.JmodTask.out:Ljava/io/PrintWriter;
invokevirtual java.io.PrintWriter.flush:()V
35: iconst_2
ireturn
end local 2 36: StackMap locals: jdk.tools.jmod.JmodTask java.lang.String[]
StackMap stack: java.lang.Exception
astore 2
start local 2 37: aload 0
aload 2
invokevirtual java.lang.Exception.getMessage:()Ljava/lang/String;
invokevirtual jdk.tools.jmod.JmodTask.reportError:(Ljava/lang/String;)V
38: aload 2
invokevirtual java.lang.Exception.printStackTrace:()V
39: aload 0
getfield jdk.tools.jmod.JmodTask.out:Ljava/io/PrintWriter;
invokevirtual java.io.PrintWriter.flush:()V
40: iconst_4
ireturn
end local 2 41: StackMap locals:
StackMap stack: java.lang.Throwable
astore 3
42: aload 0
getfield jdk.tools.jmod.JmodTask.out:Ljava/io/PrintWriter;
invokevirtual java.io.PrintWriter.flush:()V
43: aload 3
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 44 0 this Ljdk/tools/jmod/JmodTask;
0 44 1 args [Ljava/lang/String;
15 16 2 ok Z
17 18 2 ok Z
19 20 2 ok Z
21 22 2 ok Z
23 24 2 ok Z
25 30 2 ok Z
31 36 2 e Ljdk/tools/jmod/JmodTask$CommandException;
37 41 2 x Ljava/lang/Exception;
Exception table:
from to target type
0 3 30 Class jdk.tools.jmod.JmodTask$CommandException
5 7 30 Class jdk.tools.jmod.JmodTask$CommandException
9 11 30 Class jdk.tools.jmod.JmodTask$CommandException
13 28 30 Class jdk.tools.jmod.JmodTask$CommandException
0 3 36 Class java.lang.Exception
5 7 36 Class java.lang.Exception
9 11 36 Class java.lang.Exception
13 28 36 Class java.lang.Exception
0 3 41 any
5 7 41 any
9 11 41 any
13 28 41 any
30 34 41 any
36 39 41 any
MethodParameters:
Name Flags
args
private boolean list();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=4, args_size=1
start local 0 0: aconst_null
astore 1
start local 1 1: new java.util.zip.ZipFile
dup
aload 0
getfield jdk.tools.jmod.JmodTask.options:Ljdk/tools/jmod/JmodTask$Options;
getfield jdk.tools.jmod.JmodTask$Options.jmodFile:Ljava/nio/file/Path;
invokeinterface java.nio.file.Path.toFile:()Ljava/io/File;
invokespecial java.util.zip.ZipFile.<init>:(Ljava/io/File;)V
astore 1
2: goto 5
StackMap locals: jdk.tools.jmod.JmodTask java.util.zip.ZipFile
StackMap stack: java.io.IOException
3: astore 2
start local 2 4: new java.io.IOException
dup
ldc "error opening jmod file"
aload 2
invokespecial java.io.IOException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 2 5: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.util.zip.ZipFile.stream:()Ljava/util/stream/Stream;
aload 0
invokedynamic accept(Ljdk/tools/jmod/JmodTask;)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/jmod/JmodTask.lambda$0(Ljava/util/zip/ZipEntry;)V (7)
(Ljava/util/zip/ZipEntry;)V
invokeinterface java.util.stream.Stream.forEach:(Ljava/util/function/Consumer;)V
6: aload 1
ifnull 8
7: aload 1
invokevirtual java.util.zip.ZipFile.close:()V
8: StackMap locals:
StackMap stack:
iconst_1
ireturn
9: StackMap locals:
StackMap stack: java.lang.Throwable
astore 3
10: aload 1
ifnull 12
11: aload 1
invokevirtual java.util.zip.ZipFile.close:()V
12: StackMap locals: jdk.tools.jmod.JmodTask java.util.zip.ZipFile top java.lang.Throwable
StackMap stack:
aload 3
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Ljdk/tools/jmod/JmodTask;
1 13 1 zip Ljava/util/zip/ZipFile;
4 5 2 x Ljava/io/IOException;
Exception table:
from to target type
1 2 3 Class java.io.IOException
1 6 9 any
Exceptions:
throws java.io.IOException
private boolean ();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=5, args_size=1
start local 0 0: aload 0
getfield jdk.tools.jmod.JmodTask.options:Ljdk/tools/jmod/JmodTask$Options;
getfield jdk.tools.jmod.JmodTask$Options.extractDir:Ljava/nio/file/Path;
ifnull 1
aload 0
getfield jdk.tools.jmod.JmodTask.options:Ljdk/tools/jmod/JmodTask$Options;
getfield jdk.tools.jmod.JmodTask$Options.extractDir:Ljava/nio/file/Path;
goto 2
StackMap locals:
StackMap stack:
1: getstatic jdk.tools.jmod.JmodTask.CWD:Ljava/nio/file/Path;
StackMap locals:
StackMap stack: java.nio.file.Path
2: astore 1
start local 1 3: aconst_null
astore 2
aconst_null
astore 3
4: new jdk.internal.jmod.JmodFile
dup
aload 0
getfield jdk.tools.jmod.JmodTask.options:Ljdk/tools/jmod/JmodTask$Options;
getfield jdk.tools.jmod.JmodTask$Options.jmodFile:Ljava/nio/file/Path;
invokespecial jdk.internal.jmod.JmodFile.<init>:(Ljava/nio/file/Path;)V
astore 4
start local 4 5: aload 4
invokevirtual jdk.internal.jmod.JmodFile.stream:()Ljava/util/stream/Stream;
aload 1
aload 4
invokedynamic accept(Ljava/nio/file/Path;Ljdk/internal/jmod/JmodFile;)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/jmod/JmodTask.lambda$1(Ljava/nio/file/Path;Ljdk/internal/jmod/JmodFile;Ljdk/internal/jmod/JmodFile$Entry;)V (6)
(Ljdk/internal/jmod/JmodFile$Entry;)V
invokeinterface java.util.stream.Stream.forEach:(Ljava/util/function/Consumer;)V
6: aload 4
ifnull 7
aload 4
invokevirtual jdk.internal.jmod.JmodFile.close:()V
7: StackMap locals: jdk.tools.jmod.JmodTask java.nio.file.Path java.lang.Throwable java.lang.Throwable jdk.internal.jmod.JmodFile
StackMap stack:
iconst_1
ireturn
StackMap locals:
StackMap stack: java.lang.Throwable
8: astore 2
9: aload 4
ifnull 10
aload 4
invokevirtual jdk.internal.jmod.JmodFile.close:()V
end local 4 StackMap locals:
StackMap stack:
10: aload 2
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
11: astore 3
aload 2
ifnonnull 12
aload 3
astore 2
goto 13
StackMap locals:
StackMap stack:
12: aload 2
aload 3
if_acmpeq 13
aload 2
aload 3
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
13: aload 2
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Ljdk/tools/jmod/JmodTask;
3 14 1 dir Ljava/nio/file/Path;
5 10 4 jf Ljdk/internal/jmod/JmodFile;
Exception table:
from to target type
5 6 8 any
4 7 11 any
8 11 11 any
Exceptions:
throws java.io.IOException
private boolean hashModules();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=2, args_size=1
start local 0 0: aload 0
getfield jdk.tools.jmod.JmodTask.options:Ljdk/tools/jmod/JmodTask$Options;
getfield jdk.tools.jmod.JmodTask$Options.dryrun:Z
ifeq 2
1: aload 0
getfield jdk.tools.jmod.JmodTask.out:Ljava/io/PrintWriter;
ldc "Dry run:"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
2: StackMap locals:
StackMap stack:
new jdk.tools.jmod.JmodTask$Hasher
dup
aload 0
aload 0
getfield jdk.tools.jmod.JmodTask.options:Ljdk/tools/jmod/JmodTask$Options;
getfield jdk.tools.jmod.JmodTask$Options.moduleFinder:Ljava/lang/module/ModuleFinder;
invokespecial jdk.tools.jmod.JmodTask$Hasher.<init>:(Ljdk/tools/jmod/JmodTask;Ljava/lang/module/ModuleFinder;)V
astore 1
start local 1 3: aload 1
invokevirtual jdk.tools.jmod.JmodTask$Hasher.computeHashes:()Ljava/util/Map;
aload 0
aload 1
invokedynamic accept(Ljdk/tools/jmod/JmodTask;Ljdk/tools/jmod/JmodTask$Hasher;)Ljava/util/function/BiConsumer;
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;Ljava/lang/Object;)V
jdk/tools/jmod/JmodTask.lambda$2(Ljdk/tools/jmod/JmodTask$Hasher;Ljava/lang/String;Ljdk/internal/module/ModuleHashes;)V (7)
(Ljava/lang/String;Ljdk/internal/module/ModuleHashes;)V
invokeinterface java.util.Map.forEach:(Ljava/util/function/BiConsumer;)V
4: iconst_1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljdk/tools/jmod/JmodTask;
3 5 1 hasher Ljdk/tools/jmod/JmodTask$Hasher;
private boolean describe();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=8, args_size=1
start local 0 0: aconst_null
astore 1
aconst_null
astore 2
1: new jdk.internal.jmod.JmodFile
dup
aload 0
getfield jdk.tools.jmod.JmodTask.options:Ljdk/tools/jmod/JmodTask$Options;
getfield jdk.tools.jmod.JmodTask$Options.jmodFile:Ljava/nio/file/Path;
invokespecial jdk.internal.jmod.JmodFile.<init>:(Ljava/nio/file/Path;)V
astore 3
start local 3 2: aconst_null
astore 4
aconst_null
astore 5
3: aload 3
getstatic jdk.internal.jmod.JmodFile$Section.CLASSES:Ljdk/internal/jmod/JmodFile$Section;
ldc "module-info.class"
invokevirtual jdk.internal.jmod.JmodFile.getInputStream:(Ljdk/internal/jmod/JmodFile$Section;Ljava/lang/String;)Ljava/io/InputStream;
astore 6
start local 6 4: aload 6
aconst_null
invokestatic jdk.internal.module.ModuleInfo.read:(Ljava/io/InputStream;Ljava/util/function/Supplier;)Ljdk/internal/module/ModuleInfo$Attributes;
astore 7
start local 7 5: aload 0
aload 7
invokevirtual jdk.internal.module.ModuleInfo$Attributes.descriptor:()Ljava/lang/module/ModuleDescriptor;
6: aload 7
invokevirtual jdk.internal.module.ModuleInfo$Attributes.target:()Ljdk/internal/module/ModuleTarget;
7: aload 7
invokevirtual jdk.internal.module.ModuleInfo$Attributes.recordedHashes:()Ljdk/internal/module/ModuleHashes;
8: invokevirtual jdk.tools.jmod.JmodTask.describeModule:(Ljava/lang/module/ModuleDescriptor;Ljdk/internal/module/ModuleTarget;Ljdk/internal/module/ModuleHashes;)V
9: aload 6
ifnull 10
aload 6
invokevirtual java.io.InputStream.close:()V
10: StackMap locals: jdk.tools.jmod.JmodTask java.lang.Throwable java.lang.Throwable jdk.internal.jmod.JmodFile java.lang.Throwable java.lang.Throwable java.io.InputStream jdk.internal.module.ModuleInfo$Attributes
StackMap stack:
aload 3
ifnull 11
aload 3
invokevirtual jdk.internal.jmod.JmodFile.close:()V
11: StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 7 StackMap locals: jdk.tools.jmod.JmodTask java.lang.Throwable java.lang.Throwable jdk.internal.jmod.JmodFile java.lang.Throwable java.lang.Throwable java.io.InputStream
StackMap stack: java.lang.Throwable
12: astore 4
13: aload 6
ifnull 14
aload 6
invokevirtual java.io.InputStream.close:()V
end local 6 StackMap locals:
StackMap stack:
14: aload 4
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
15: astore 5
aload 4
ifnonnull 16
aload 5
astore 4
goto 17
StackMap locals:
StackMap stack:
16: aload 4
aload 5
if_acmpeq 17
aload 4
aload 5
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
17: aload 4
athrow
StackMap locals: jdk.tools.jmod.JmodTask java.lang.Throwable java.lang.Throwable jdk.internal.jmod.JmodFile
StackMap stack: java.io.IOException
18: pop
19: new jdk.tools.jmod.JmodTask$CommandException
dup
ldc "err.module.descriptor.not.found"
iconst_0
anewarray java.lang.Object
invokespecial jdk.tools.jmod.JmodTask$CommandException.<init>:(Ljava/lang/String;[Ljava/lang/Object;)V
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
20: astore 1
21: aload 3
ifnull 22
aload 3
invokevirtual jdk.internal.jmod.JmodFile.close:()V
end local 3 StackMap locals:
StackMap stack:
22: aload 1
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
23: astore 2
aload 1
ifnonnull 24
aload 2
astore 1
goto 25
StackMap locals:
StackMap stack:
24: aload 1
aload 2
if_acmpeq 25
aload 1
aload 2
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
25: aload 1
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 26 0 this Ljdk/tools/jmod/JmodTask;
2 22 3 jf Ljdk/internal/jmod/JmodFile;
4 14 6 in Ljava/io/InputStream;
5 12 7 attrs Ljdk/internal/module/ModuleInfo$Attributes;
Exception table:
from to target type
4 9 12 any
3 10 15 any
12 15 15 any
2 10 18 Class java.io.IOException
12 18 18 Class java.io.IOException
2 10 20 any
12 20 20 any
1 11 23 any
12 23 23 any
Exceptions:
throws java.io.IOException
static <T> java.lang.String toString(java.util.Collection<T>);
descriptor: (Ljava/util/Collection;)Ljava/lang/String;
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
invokeinterface java.util.Collection.isEmpty:()Z
ifeq 1
ldc ""
areturn
1: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
ldc " "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokeinterface java.util.Collection.stream:()Ljava/util/stream/Stream;
invokedynamic apply()Ljava/util/function/Function;
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;)Ljava/lang/Object;
jdk/tools/jmod/JmodTask.lambda$4(Ljava/lang/Object;)Ljava/lang/String; (6)
(Ljava/lang/Object;)Ljava/lang/String;
invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
2: invokeinterface java.util.stream.Stream.sorted:()Ljava/util/stream/Stream;
ldc " "
invokestatic java.util.stream.Collectors.joining:(Ljava/lang/CharSequence;)Ljava/util/stream/Collector;
invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
checkcast java.lang.String
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
3: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 c Ljava/util/Collection<TT;>;
Signature: <T:Ljava/lang/Object;>(Ljava/util/Collection<TT;>;)Ljava/lang/String;
MethodParameters:
Name Flags
c
private void describeModule(java.lang.module.ModuleDescriptor, jdk.internal.module.ModuleTarget, jdk.internal.module.ModuleHashes);
descriptor: (Ljava/lang/module/ModuleDescriptor;Ljdk/internal/module/ModuleTarget;Ljdk/internal/module/ModuleHashes;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=9, args_size=4
start local 0 start local 1 start local 2 start local 3 0: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 4
start local 4 1: aload 4
aload 1
invokevirtual java.lang.module.ModuleDescriptor.toNameAndVersion:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
2: aload 1
invokevirtual java.lang.module.ModuleDescriptor.isOpen:()Z
ifeq 4
3: aload 4
ldc " open"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
4: StackMap locals: java.lang.StringBuilder
StackMap stack:
aload 1
invokevirtual java.lang.module.ModuleDescriptor.isAutomatic:()Z
ifeq 6
5: aload 4
ldc " automatic"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
6: StackMap locals:
StackMap stack:
aload 4
ldc "\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
7: aload 1
invokevirtual java.lang.module.ModuleDescriptor.exports:()Ljava/util/Set;
invokeinterface java.util.Set.stream:()Ljava/util/stream/Stream;
8: invokedynamic apply()Ljava/util/function/Function;
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;)Ljava/lang/Object;
java/lang/module/ModuleDescriptor$Exports.source()Ljava/lang/String; (5)
(Ljava/lang/module/ModuleDescriptor$Exports;)Ljava/lang/String;
invokestatic java.util.Comparator.comparing:(Ljava/util/function/Function;)Ljava/util/Comparator;
invokeinterface java.util.stream.Stream.sorted:(Ljava/util/Comparator;)Ljava/util/stream/Stream;
9: invokedynamic test()Ljava/util/function/Predicate;
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;)Z
jdk/tools/jmod/JmodTask.lambda$6(Ljava/lang/module/ModuleDescriptor$Exports;)Z (6)
(Ljava/lang/module/ModuleDescriptor$Exports;)Z
invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
10: aload 4
invokedynamic accept(Ljava/lang/StringBuilder;)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/jmod/JmodTask.lambda$7(Ljava/lang/StringBuilder;Ljava/lang/module/ModuleDescriptor$Exports;)V (6)
(Ljava/lang/module/ModuleDescriptor$Exports;)V
invokeinterface java.util.stream.Stream.forEach:(Ljava/util/function/Consumer;)V
11: aload 1
invokevirtual java.lang.module.ModuleDescriptor.requires:()Ljava/util/Set;
invokeinterface java.util.Set.stream:()Ljava/util/stream/Stream;
invokeinterface java.util.stream.Stream.sorted:()Ljava/util/stream/Stream;
12: aload 4
invokedynamic accept(Ljava/lang/StringBuilder;)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/jmod/JmodTask.lambda$8(Ljava/lang/StringBuilder;Ljava/lang/module/ModuleDescriptor$Requires;)V (6)
(Ljava/lang/module/ModuleDescriptor$Requires;)V
invokeinterface java.util.stream.Stream.forEach:(Ljava/util/function/Consumer;)V
13: aload 1
invokevirtual java.lang.module.ModuleDescriptor.uses:()Ljava/util/Set;
invokeinterface java.util.Set.stream:()Ljava/util/stream/Stream;
invokeinterface java.util.stream.Stream.sorted:()Ljava/util/stream/Stream;
14: aload 4
invokedynamic accept(Ljava/lang/StringBuilder;)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/jmod/JmodTask.lambda$9(Ljava/lang/StringBuilder;Ljava/lang/String;)V (6)
(Ljava/lang/String;)V
invokeinterface java.util.stream.Stream.forEach:(Ljava/util/function/Consumer;)V
15: aload 1
invokevirtual java.lang.module.ModuleDescriptor.provides:()Ljava/util/Set;
invokeinterface java.util.Set.stream:()Ljava/util/stream/Stream;
16: invokedynamic apply()Ljava/util/function/Function;
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;)Ljava/lang/Object;
java/lang/module/ModuleDescriptor$Provides.service()Ljava/lang/String; (5)
(Ljava/lang/module/ModuleDescriptor$Provides;)Ljava/lang/String;
invokestatic java.util.Comparator.comparing:(Ljava/util/function/Function;)Ljava/util/Comparator;
invokeinterface java.util.stream.Stream.sorted:(Ljava/util/Comparator;)Ljava/util/stream/Stream;
17: aload 4
invokedynamic accept(Ljava/lang/StringBuilder;)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/jmod/JmodTask.lambda$11(Ljava/lang/StringBuilder;Ljava/lang/module/ModuleDescriptor$Provides;)V (6)
(Ljava/lang/module/ModuleDescriptor$Provides;)V
invokeinterface java.util.stream.Stream.forEach:(Ljava/util/function/Consumer;)V
18: aload 1
invokevirtual java.lang.module.ModuleDescriptor.exports:()Ljava/util/Set;
invokeinterface java.util.Set.stream:()Ljava/util/stream/Stream;
19: invokedynamic apply()Ljava/util/function/Function;
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;)Ljava/lang/Object;
java/lang/module/ModuleDescriptor$Exports.source()Ljava/lang/String; (5)
(Ljava/lang/module/ModuleDescriptor$Exports;)Ljava/lang/String;
invokestatic java.util.Comparator.comparing:(Ljava/util/function/Function;)Ljava/util/Comparator;
invokeinterface java.util.stream.Stream.sorted:(Ljava/util/Comparator;)Ljava/util/stream/Stream;
20: invokedynamic test()Ljava/util/function/Predicate;
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;)Z
java/lang/module/ModuleDescriptor$Exports.isQualified()Z (5)
(Ljava/lang/module/ModuleDescriptor$Exports;)Z
invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
21: aload 4
invokedynamic accept(Ljava/lang/StringBuilder;)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/jmod/JmodTask.lambda$14(Ljava/lang/StringBuilder;Ljava/lang/module/ModuleDescriptor$Exports;)V (6)
(Ljava/lang/module/ModuleDescriptor$Exports;)V
invokeinterface java.util.stream.Stream.forEach:(Ljava/util/function/Consumer;)V
22: aload 1
invokevirtual java.lang.module.ModuleDescriptor.opens:()Ljava/util/Set;
invokeinterface java.util.Set.stream:()Ljava/util/stream/Stream;
23: invokedynamic apply()Ljava/util/function/Function;
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;)Ljava/lang/Object;
java/lang/module/ModuleDescriptor$Opens.source()Ljava/lang/String; (5)
(Ljava/lang/module/ModuleDescriptor$Opens;)Ljava/lang/String;
invokestatic java.util.Comparator.comparing:(Ljava/util/function/Function;)Ljava/util/Comparator;
invokeinterface java.util.stream.Stream.sorted:(Ljava/util/Comparator;)Ljava/util/stream/Stream;
24: invokedynamic test()Ljava/util/function/Predicate;
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;)Z
jdk/tools/jmod/JmodTask.lambda$16(Ljava/lang/module/ModuleDescriptor$Opens;)Z (6)
(Ljava/lang/module/ModuleDescriptor$Opens;)Z
invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
25: aload 4
invokedynamic accept(Ljava/lang/StringBuilder;)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/jmod/JmodTask.lambda$17(Ljava/lang/StringBuilder;Ljava/lang/module/ModuleDescriptor$Opens;)V (6)
(Ljava/lang/module/ModuleDescriptor$Opens;)V
invokeinterface java.util.stream.Stream.forEach:(Ljava/util/function/Consumer;)V
26: aload 1
invokevirtual java.lang.module.ModuleDescriptor.opens:()Ljava/util/Set;
invokeinterface java.util.Set.stream:()Ljava/util/stream/Stream;
27: invokedynamic apply()Ljava/util/function/Function;
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;)Ljava/lang/Object;
java/lang/module/ModuleDescriptor$Opens.source()Ljava/lang/String; (5)
(Ljava/lang/module/ModuleDescriptor$Opens;)Ljava/lang/String;
invokestatic java.util.Comparator.comparing:(Ljava/util/function/Function;)Ljava/util/Comparator;
invokeinterface java.util.stream.Stream.sorted:(Ljava/util/Comparator;)Ljava/util/stream/Stream;
28: invokedynamic test()Ljava/util/function/Predicate;
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;)Z
java/lang/module/ModuleDescriptor$Opens.isQualified()Z (5)
(Ljava/lang/module/ModuleDescriptor$Opens;)Z
invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
29: aload 4
invokedynamic accept(Ljava/lang/StringBuilder;)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/jmod/JmodTask.lambda$20(Ljava/lang/StringBuilder;Ljava/lang/module/ModuleDescriptor$Opens;)V (6)
(Ljava/lang/module/ModuleDescriptor$Opens;)V
invokeinterface java.util.stream.Stream.forEach:(Ljava/util/function/Consumer;)V
30: new java.util.TreeSet
dup
aload 1
invokevirtual java.lang.module.ModuleDescriptor.packages:()Ljava/util/Set;
invokespecial java.util.TreeSet.<init>:(Ljava/util/Collection;)V
astore 5
start local 5 31: aload 1
invokevirtual java.lang.module.ModuleDescriptor.exports:()Ljava/util/Set;
invokeinterface java.util.Set.stream:()Ljava/util/stream/Stream;
invokedynamic apply()Ljava/util/function/Function;
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;)Ljava/lang/Object;
java/lang/module/ModuleDescriptor$Exports.source()Ljava/lang/String; (5)
(Ljava/lang/module/ModuleDescriptor$Exports;)Ljava/lang/String;
invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
aload 5
dup
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
pop
invokedynamic accept(Ljava/util/Set;)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/util/Set.remove(Ljava/lang/Object;)Z (9 itf)
(Ljava/lang/String;)V
invokeinterface java.util.stream.Stream.forEach:(Ljava/util/function/Consumer;)V
32: aload 1
invokevirtual java.lang.module.ModuleDescriptor.opens:()Ljava/util/Set;
invokeinterface java.util.Set.stream:()Ljava/util/stream/Stream;
invokedynamic apply()Ljava/util/function/Function;
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;)Ljava/lang/Object;
java/lang/module/ModuleDescriptor$Opens.source()Ljava/lang/String; (5)
(Ljava/lang/module/ModuleDescriptor$Opens;)Ljava/lang/String;
invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
aload 5
dup
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
pop
invokedynamic accept(Ljava/util/Set;)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/util/Set.remove(Ljava/lang/Object;)Z (9 itf)
(Ljava/lang/String;)V
invokeinterface java.util.stream.Stream.forEach:(Ljava/util/function/Consumer;)V
33: aload 5
aload 4
invokedynamic accept(Ljava/lang/StringBuilder;)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/jmod/JmodTask.lambda$25(Ljava/lang/StringBuilder;Ljava/lang/String;)V (6)
(Ljava/lang/String;)V
invokeinterface java.util.Set.forEach:(Ljava/util/function/Consumer;)V
34: aload 1
invokevirtual java.lang.module.ModuleDescriptor.mainClass:()Ljava/util/Optional;
aload 4
invokedynamic accept(Ljava/lang/StringBuilder;)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/jmod/JmodTask.lambda$26(Ljava/lang/StringBuilder;Ljava/lang/String;)V (6)
(Ljava/lang/String;)V
invokevirtual java.util.Optional.ifPresent:(Ljava/util/function/Consumer;)V
35: aload 2
ifnull 39
36: aload 2
invokevirtual jdk.internal.module.ModuleTarget.targetPlatform:()Ljava/lang/String;
astore 8
start local 8 37: aload 8
invokevirtual java.lang.String.isEmpty:()Z
ifne 39
38: aload 4
ldc "platform "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 8
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
end local 8 39: StackMap locals: java.util.Set
StackMap stack:
aload 3
ifnull 43
40: aload 3
invokevirtual jdk.internal.module.ModuleHashes.names:()Ljava/util/Set;
invokeinterface java.util.Set.stream:()Ljava/util/stream/Stream;
invokeinterface java.util.stream.Stream.sorted:()Ljava/util/stream/Stream;
41: aload 0
aload 4
aload 3
invokedynamic accept(Ljdk/tools/jmod/JmodTask;Ljava/lang/StringBuilder;Ljdk/internal/module/ModuleHashes;)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/jmod/JmodTask.lambda$27(Ljava/lang/StringBuilder;Ljdk/internal/module/ModuleHashes;Ljava/lang/String;)V (7)
(Ljava/lang/String;)V
42: invokeinterface java.util.stream.Stream.forEach:(Ljava/util/function/Consumer;)V
43: StackMap locals:
StackMap stack:
aload 0
getfield jdk.tools.jmod.JmodTask.out:Ljava/io/PrintWriter;
aload 4
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
44: return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 45 0 this Ljdk/tools/jmod/JmodTask;
0 45 1 md Ljava/lang/module/ModuleDescriptor;
0 45 2 target Ljdk/internal/module/ModuleTarget;
0 45 3 hashes Ljdk/internal/module/ModuleHashes;
1 45 4 sb Ljava/lang/StringBuilder;
31 45 5 concealed Ljava/util/Set<Ljava/lang/String;>;
37 39 8 targetPlatform Ljava/lang/String;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
md
target
hashes
private java.lang.String toHex(byte[]);
descriptor: ([B)Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=7, args_size=2
start local 0 start local 1 0: new java.lang.StringBuilder
dup
aload 1
arraylength
invokespecial java.lang.StringBuilder.<init>:(I)V
astore 2
start local 2 1: aload 1
dup
astore 6
arraylength
istore 5
iconst_0
istore 4
goto 5
StackMap locals: jdk.tools.jmod.JmodTask byte[] java.lang.StringBuilder top int int byte[]
StackMap stack:
2: aload 6
iload 4
baload
istore 3
start local 3 3: aload 2
ldc "%02x"
iconst_1
anewarray java.lang.Object
dup
iconst_0
iload 3
sipush 255
iand
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
end local 3 4: iinc 4 1
StackMap locals:
StackMap stack:
5: iload 4
iload 5
if_icmplt 2
6: aload 2
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Ljdk/tools/jmod/JmodTask;
0 7 1 ba [B
1 7 2 sb Ljava/lang/StringBuilder;
3 4 3 b B
MethodParameters:
Name Flags
ba
private boolean create();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=7, args_size=1
start local 0 0: new jdk.tools.jmod.JmodTask$JmodFileWriter
dup
aload 0
invokespecial jdk.tools.jmod.JmodTask$JmodFileWriter.<init>:(Ljdk/tools/jmod/JmodTask;)V
astore 1
start local 1 1: aload 0
getfield jdk.tools.jmod.JmodTask.options:Ljdk/tools/jmod/JmodTask$Options;
getfield jdk.tools.jmod.JmodTask$Options.jmodFile:Ljava/nio/file/Path;
astore 2
start local 2 2: aload 2
invokestatic jdk.tools.jmod.JmodTask.jmodTempFilePath:(Ljava/nio/file/Path;)Ljava/nio/file/Path;
astore 3
start local 3 3: aconst_null
astore 4
aconst_null
astore 5
4: aload 3
invokestatic jdk.tools.jmod.JmodOutputStream.newOutputStream:(Ljava/nio/file/Path;)Ljdk/tools/jmod/JmodOutputStream;
astore 6
start local 6 5: aload 1
aload 6
invokevirtual jdk.tools.jmod.JmodTask$JmodFileWriter.write:(Ljdk/tools/jmod/JmodOutputStream;)V
6: aload 6
ifnull 12
aload 6
invokevirtual jdk.tools.jmod.JmodOutputStream.close:()V
goto 12
StackMap locals: jdk.tools.jmod.JmodTask jdk.tools.jmod.JmodTask$JmodFileWriter java.nio.file.Path java.nio.file.Path java.lang.Throwable java.lang.Throwable jdk.tools.jmod.JmodOutputStream
StackMap stack: java.lang.Throwable
7: astore 4
aload 6
ifnull 8
aload 6
invokevirtual jdk.tools.jmod.JmodOutputStream.close:()V
end local 6 StackMap locals:
StackMap stack:
8: aload 4
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
9: astore 5
aload 4
ifnonnull 10
aload 5
astore 4
goto 11
StackMap locals:
StackMap stack:
10: aload 4
aload 5
if_acmpeq 11
aload 4
aload 5
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
11: aload 4
athrow
12: StackMap locals:
StackMap stack:
aload 3
aload 2
iconst_0
anewarray java.nio.file.CopyOption
invokestatic java.nio.file.Files.move:(Ljava/nio/file/Path;Ljava/nio/file/Path;[Ljava/nio/file/CopyOption;)Ljava/nio/file/Path;
pop
13: goto 20
StackMap locals:
StackMap stack: java.lang.Exception
14: astore 4
start local 4 15: aload 3
invokestatic java.nio.file.Files.deleteIfExists:(Ljava/nio/file/Path;)Z
pop
16: goto 19
StackMap locals: jdk.tools.jmod.JmodTask jdk.tools.jmod.JmodTask$JmodFileWriter java.nio.file.Path java.nio.file.Path java.lang.Exception
StackMap stack: java.io.IOException
17: astore 5
start local 5 18: aload 4
aload 5
invokevirtual java.lang.Exception.addSuppressed:(Ljava/lang/Throwable;)V
end local 5 19: StackMap locals:
StackMap stack:
aload 4
athrow
end local 4 20: StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 this Ljdk/tools/jmod/JmodTask;
1 21 1 jmod Ljdk/tools/jmod/JmodTask$JmodFileWriter;
2 21 2 target Ljava/nio/file/Path;
3 21 3 tempTarget Ljava/nio/file/Path;
5 8 6 jos Ljdk/tools/jmod/JmodOutputStream;
15 20 4 e Ljava/lang/Exception;
18 19 5 ioe Ljava/io/IOException;
Exception table:
from to target type
5 6 7 any
4 9 9 any
3 13 14 Class java.lang.Exception
15 16 17 Class java.io.IOException
Exceptions:
throws java.io.IOException
private static java.nio.file.Path jmodTempFilePath(java.nio.file.Path);
descriptor: (Ljava/nio/file/Path;)Ljava/nio/file/Path;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
new java.lang.StringBuilder
dup
ldc "."
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokeinterface java.nio.file.Path.getFileName:()Ljava/nio/file/Path;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc ".tmp"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokeinterface java.nio.file.Path.resolveSibling:(Ljava/lang/String;)Ljava/nio/file/Path;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 target Ljava/nio/file/Path;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
target
private void handleOptions(java.lang.String[]);
descriptor: ([Ljava/lang/String;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=9, locals=27, args_size=2
start local 0 start local 1 0: aload 0
new jdk.tools.jmod.JmodTask$Options
dup
invokespecial jdk.tools.jmod.JmodTask$Options.<init>:()V
putfield jdk.tools.jmod.JmodTask.options:Ljdk/tools/jmod/JmodTask$Options;
1: aload 0
getfield jdk.tools.jmod.JmodTask.parser:Ljdk/internal/joptsimple/OptionParser;
new jdk.tools.jmod.JmodTask$JmodHelpFormatter
dup
aload 0
getfield jdk.tools.jmod.JmodTask.options:Ljdk/tools/jmod/JmodTask$Options;
invokespecial jdk.tools.jmod.JmodTask$JmodHelpFormatter.<init>:(Ljdk/tools/jmod/JmodTask$Options;)V
invokevirtual jdk.internal.joptsimple.OptionParser.formatHelpWith:(Ljdk/internal/joptsimple/HelpFormatter;)V
2: aload 0
getfield jdk.tools.jmod.JmodTask.parser:Ljdk/internal/joptsimple/OptionParser;
ldc "class-path"
ldc "main.opt.class-path"
iconst_0
anewarray java.lang.Object
invokestatic jdk.tools.jmod.JmodTask.getMessage:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokevirtual jdk.internal.joptsimple.OptionParser.accepts:(Ljava/lang/String;Ljava/lang/String;)Ljdk/internal/joptsimple/OptionSpecBuilder;
3: invokevirtual jdk.internal.joptsimple.OptionSpecBuilder.withRequiredArg:()Ljdk/internal/joptsimple/ArgumentAcceptingOptionSpec;
4: getstatic jdk.tools.jmod.JmodTask$ClassPathConverter.INSTANCE:Ljdk/internal/joptsimple/ValueConverter;
invokevirtual jdk.internal.joptsimple.ArgumentAcceptingOptionSpec.withValuesConvertedBy:(Ljdk/internal/joptsimple/ValueConverter;)Ljdk/internal/joptsimple/ArgumentAcceptingOptionSpec;
5: astore 2
start local 2 6: aload 0
getfield jdk.tools.jmod.JmodTask.parser:Ljdk/internal/joptsimple/OptionParser;
ldc "cmds"
ldc "main.opt.cmds"
iconst_0
anewarray java.lang.Object
invokestatic jdk.tools.jmod.JmodTask.getMessage:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokevirtual jdk.internal.joptsimple.OptionParser.accepts:(Ljava/lang/String;Ljava/lang/String;)Ljdk/internal/joptsimple/OptionSpecBuilder;
7: invokevirtual jdk.internal.joptsimple.OptionSpecBuilder.withRequiredArg:()Ljdk/internal/joptsimple/ArgumentAcceptingOptionSpec;
8: getstatic jdk.tools.jmod.JmodTask$DirPathConverter.INSTANCE:Ljdk/internal/joptsimple/ValueConverter;
invokevirtual jdk.internal.joptsimple.ArgumentAcceptingOptionSpec.withValuesConvertedBy:(Ljdk/internal/joptsimple/ValueConverter;)Ljdk/internal/joptsimple/ArgumentAcceptingOptionSpec;
9: astore 3
start local 3 10: aload 0
getfield jdk.tools.jmod.JmodTask.parser:Ljdk/internal/joptsimple/OptionParser;
ldc "config"
ldc "main.opt.config"
iconst_0
anewarray java.lang.Object
invokestatic jdk.tools.jmod.JmodTask.getMessage:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokevirtual jdk.internal.joptsimple.OptionParser.accepts:(Ljava/lang/String;Ljava/lang/String;)Ljdk/internal/joptsimple/OptionSpecBuilder;
11: invokevirtual jdk.internal.joptsimple.OptionSpecBuilder.withRequiredArg:()Ljdk/internal/joptsimple/ArgumentAcceptingOptionSpec;
12: getstatic jdk.tools.jmod.JmodTask$DirPathConverter.INSTANCE:Ljdk/internal/joptsimple/ValueConverter;
invokevirtual jdk.internal.joptsimple.ArgumentAcceptingOptionSpec.withValuesConvertedBy:(Ljdk/internal/joptsimple/ValueConverter;)Ljdk/internal/joptsimple/ArgumentAcceptingOptionSpec;
13: astore 4
start local 4 14: aload 0
getfield jdk.tools.jmod.JmodTask.parser:Ljdk/internal/joptsimple/OptionParser;
ldc "dir"
ldc "main.opt.extractDir"
iconst_0
anewarray java.lang.Object
invokestatic jdk.tools.jmod.JmodTask.getMessage:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokevirtual jdk.internal.joptsimple.OptionParser.accepts:(Ljava/lang/String;Ljava/lang/String;)Ljdk/internal/joptsimple/OptionSpecBuilder;
15: invokevirtual jdk.internal.joptsimple.OptionSpecBuilder.withRequiredArg:()Ljdk/internal/joptsimple/ArgumentAcceptingOptionSpec;
16: new jdk.tools.jmod.JmodTask$ExtractDirPathConverter
dup
invokespecial jdk.tools.jmod.JmodTask$ExtractDirPathConverter.<init>:()V
invokevirtual jdk.internal.joptsimple.ArgumentAcceptingOptionSpec.withValuesConvertedBy:(Ljdk/internal/joptsimple/ValueConverter;)Ljdk/internal/joptsimple/ArgumentAcceptingOptionSpec;
17: astore 5
start local 5 18: aload 0
getfield jdk.tools.jmod.JmodTask.parser:Ljdk/internal/joptsimple/OptionParser;
ldc "dry-run"
ldc "main.opt.dry-run"
iconst_0
anewarray java.lang.Object
invokestatic jdk.tools.jmod.JmodTask.getMessage:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokevirtual jdk.internal.joptsimple.OptionParser.accepts:(Ljava/lang/String;Ljava/lang/String;)Ljdk/internal/joptsimple/OptionSpecBuilder;
19: astore 6
start local 6 20: aload 0
getfield jdk.tools.jmod.JmodTask.parser:Ljdk/internal/joptsimple/OptionParser;
ldc "exclude"
ldc "main.opt.exclude"
iconst_0
anewarray java.lang.Object
invokestatic jdk.tools.jmod.JmodTask.getMessage:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokevirtual jdk.internal.joptsimple.OptionParser.accepts:(Ljava/lang/String;Ljava/lang/String;)Ljdk/internal/joptsimple/OptionSpecBuilder;
21: invokevirtual jdk.internal.joptsimple.OptionSpecBuilder.withRequiredArg:()Ljdk/internal/joptsimple/ArgumentAcceptingOptionSpec;
22: new jdk.tools.jmod.JmodTask$PathMatcherConverter
dup
invokespecial jdk.tools.jmod.JmodTask$PathMatcherConverter.<init>:()V
invokevirtual jdk.internal.joptsimple.ArgumentAcceptingOptionSpec.withValuesConvertedBy:(Ljdk/internal/joptsimple/ValueConverter;)Ljdk/internal/joptsimple/ArgumentAcceptingOptionSpec;
23: astore 7
start local 7 24: aload 0
getfield jdk.tools.jmod.JmodTask.parser:Ljdk/internal/joptsimple/OptionParser;
ldc "hash-modules"
ldc "main.opt.hash-modules"
iconst_0
anewarray java.lang.Object
invokestatic jdk.tools.jmod.JmodTask.getMessage:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokevirtual jdk.internal.joptsimple.OptionParser.accepts:(Ljava/lang/String;Ljava/lang/String;)Ljdk/internal/joptsimple/OptionSpecBuilder;
25: invokevirtual jdk.internal.joptsimple.OptionSpecBuilder.withRequiredArg:()Ljdk/internal/joptsimple/ArgumentAcceptingOptionSpec;
26: new jdk.tools.jmod.JmodTask$PatternConverter
dup
invokespecial jdk.tools.jmod.JmodTask$PatternConverter.<init>:()V
invokevirtual jdk.internal.joptsimple.ArgumentAcceptingOptionSpec.withValuesConvertedBy:(Ljdk/internal/joptsimple/ValueConverter;)Ljdk/internal/joptsimple/ArgumentAcceptingOptionSpec;
27: astore 8
start local 8 28: aload 0
getfield jdk.tools.jmod.JmodTask.parser:Ljdk/internal/joptsimple/OptionParser;
ldc "h"
ldc "help"
invokestatic java.util.Set.of:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/util/Set;
ldc "main.opt.help"
iconst_0
anewarray java.lang.Object
invokestatic jdk.tools.jmod.JmodTask.getMessage:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokevirtual jdk.internal.joptsimple.OptionParser.acceptsAll:(Ljava/util/Collection;Ljava/lang/String;)Ljdk/internal/joptsimple/OptionSpecBuilder;
29: invokevirtual jdk.internal.joptsimple.OptionSpecBuilder.forHelp:()Ljdk/internal/joptsimple/AbstractOptionSpec;
30: astore 9
start local 9 31: aload 0
getfield jdk.tools.jmod.JmodTask.parser:Ljdk/internal/joptsimple/OptionParser;
ldc "help-extra"
ldc "main.opt.help-extra"
iconst_0
anewarray java.lang.Object
invokestatic jdk.tools.jmod.JmodTask.getMessage:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokevirtual jdk.internal.joptsimple.OptionParser.accepts:(Ljava/lang/String;Ljava/lang/String;)Ljdk/internal/joptsimple/OptionSpecBuilder;
32: astore 10
start local 10 33: aload 0
getfield jdk.tools.jmod.JmodTask.parser:Ljdk/internal/joptsimple/OptionParser;
ldc "header-files"
ldc "main.opt.header-files"
iconst_0
anewarray java.lang.Object
invokestatic jdk.tools.jmod.JmodTask.getMessage:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokevirtual jdk.internal.joptsimple.OptionParser.accepts:(Ljava/lang/String;Ljava/lang/String;)Ljdk/internal/joptsimple/OptionSpecBuilder;
34: invokevirtual jdk.internal.joptsimple.OptionSpecBuilder.withRequiredArg:()Ljdk/internal/joptsimple/ArgumentAcceptingOptionSpec;
35: getstatic jdk.tools.jmod.JmodTask$DirPathConverter.INSTANCE:Ljdk/internal/joptsimple/ValueConverter;
invokevirtual jdk.internal.joptsimple.ArgumentAcceptingOptionSpec.withValuesConvertedBy:(Ljdk/internal/joptsimple/ValueConverter;)Ljdk/internal/joptsimple/ArgumentAcceptingOptionSpec;
36: astore 11
start local 11 37: aload 0
getfield jdk.tools.jmod.JmodTask.parser:Ljdk/internal/joptsimple/OptionParser;
ldc "libs"
ldc "main.opt.libs"
iconst_0
anewarray java.lang.Object
invokestatic jdk.tools.jmod.JmodTask.getMessage:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokevirtual jdk.internal.joptsimple.OptionParser.accepts:(Ljava/lang/String;Ljava/lang/String;)Ljdk/internal/joptsimple/OptionSpecBuilder;
38: invokevirtual jdk.internal.joptsimple.OptionSpecBuilder.withRequiredArg:()Ljdk/internal/joptsimple/ArgumentAcceptingOptionSpec;
39: getstatic jdk.tools.jmod.JmodTask$DirPathConverter.INSTANCE:Ljdk/internal/joptsimple/ValueConverter;
invokevirtual jdk.internal.joptsimple.ArgumentAcceptingOptionSpec.withValuesConvertedBy:(Ljdk/internal/joptsimple/ValueConverter;)Ljdk/internal/joptsimple/ArgumentAcceptingOptionSpec;
40: astore 12
start local 12 41: aload 0
getfield jdk.tools.jmod.JmodTask.parser:Ljdk/internal/joptsimple/OptionParser;
ldc "legal-notices"
ldc "main.opt.legal-notices"
iconst_0
anewarray java.lang.Object
invokestatic jdk.tools.jmod.JmodTask.getMessage:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokevirtual jdk.internal.joptsimple.OptionParser.accepts:(Ljava/lang/String;Ljava/lang/String;)Ljdk/internal/joptsimple/OptionSpecBuilder;
42: invokevirtual jdk.internal.joptsimple.OptionSpecBuilder.withRequiredArg:()Ljdk/internal/joptsimple/ArgumentAcceptingOptionSpec;
43: getstatic jdk.tools.jmod.JmodTask$DirPathConverter.INSTANCE:Ljdk/internal/joptsimple/ValueConverter;
invokevirtual jdk.internal.joptsimple.ArgumentAcceptingOptionSpec.withValuesConvertedBy:(Ljdk/internal/joptsimple/ValueConverter;)Ljdk/internal/joptsimple/ArgumentAcceptingOptionSpec;
44: astore 13
start local 13 45: aload 0
getfield jdk.tools.jmod.JmodTask.parser:Ljdk/internal/joptsimple/OptionParser;
ldc "main-class"
ldc "main.opt.main-class"
iconst_0
anewarray java.lang.Object
invokestatic jdk.tools.jmod.JmodTask.getMessage:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokevirtual jdk.internal.joptsimple.OptionParser.accepts:(Ljava/lang/String;Ljava/lang/String;)Ljdk/internal/joptsimple/OptionSpecBuilder;
46: invokevirtual jdk.internal.joptsimple.OptionSpecBuilder.withRequiredArg:()Ljdk/internal/joptsimple/ArgumentAcceptingOptionSpec;
47: ldc "main.opt.main-class.arg"
iconst_0
anewarray java.lang.Object
invokestatic jdk.tools.jmod.JmodTask.getMessage:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokevirtual jdk.internal.joptsimple.ArgumentAcceptingOptionSpec.describedAs:(Ljava/lang/String;)Ljdk/internal/joptsimple/ArgumentAcceptingOptionSpec;
48: astore 14
start local 14 49: aload 0
getfield jdk.tools.jmod.JmodTask.parser:Ljdk/internal/joptsimple/OptionParser;
ldc "man-pages"
ldc "main.opt.man-pages"
iconst_0
anewarray java.lang.Object
invokestatic jdk.tools.jmod.JmodTask.getMessage:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokevirtual jdk.internal.joptsimple.OptionParser.accepts:(Ljava/lang/String;Ljava/lang/String;)Ljdk/internal/joptsimple/OptionSpecBuilder;
50: invokevirtual jdk.internal.joptsimple.OptionSpecBuilder.withRequiredArg:()Ljdk/internal/joptsimple/ArgumentAcceptingOptionSpec;
51: getstatic jdk.tools.jmod.JmodTask$DirPathConverter.INSTANCE:Ljdk/internal/joptsimple/ValueConverter;
invokevirtual jdk.internal.joptsimple.ArgumentAcceptingOptionSpec.withValuesConvertedBy:(Ljdk/internal/joptsimple/ValueConverter;)Ljdk/internal/joptsimple/ArgumentAcceptingOptionSpec;
52: astore 15
start local 15 53: aload 0
getfield jdk.tools.jmod.JmodTask.parser:Ljdk/internal/joptsimple/OptionParser;
ldc "p"
ldc "module-path"
invokestatic java.util.Set.of:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/util/Set;
54: ldc "main.opt.module-path"
iconst_0
anewarray java.lang.Object
invokestatic jdk.tools.jmod.JmodTask.getMessage:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
55: invokevirtual jdk.internal.joptsimple.OptionParser.acceptsAll:(Ljava/util/Collection;Ljava/lang/String;)Ljdk/internal/joptsimple/OptionSpecBuilder;
56: invokevirtual jdk.internal.joptsimple.OptionSpecBuilder.withRequiredArg:()Ljdk/internal/joptsimple/ArgumentAcceptingOptionSpec;
57: getstatic jdk.tools.jmod.JmodTask$DirPathConverter.INSTANCE:Ljdk/internal/joptsimple/ValueConverter;
invokevirtual jdk.internal.joptsimple.ArgumentAcceptingOptionSpec.withValuesConvertedBy:(Ljdk/internal/joptsimple/ValueConverter;)Ljdk/internal/joptsimple/ArgumentAcceptingOptionSpec;
58: astore 16
start local 16 59: aload 0
getfield jdk.tools.jmod.JmodTask.parser:Ljdk/internal/joptsimple/OptionParser;
ldc "module-version"
ldc "main.opt.module-version"
iconst_0
anewarray java.lang.Object
invokestatic jdk.tools.jmod.JmodTask.getMessage:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokevirtual jdk.internal.joptsimple.OptionParser.accepts:(Ljava/lang/String;Ljava/lang/String;)Ljdk/internal/joptsimple/OptionSpecBuilder;
60: invokevirtual jdk.internal.joptsimple.OptionSpecBuilder.withRequiredArg:()Ljdk/internal/joptsimple/ArgumentAcceptingOptionSpec;
61: new jdk.tools.jmod.JmodTask$ModuleVersionConverter
dup
invokespecial jdk.tools.jmod.JmodTask$ModuleVersionConverter.<init>:()V
invokevirtual jdk.internal.joptsimple.ArgumentAcceptingOptionSpec.withValuesConvertedBy:(Ljdk/internal/joptsimple/ValueConverter;)Ljdk/internal/joptsimple/ArgumentAcceptingOptionSpec;
62: astore 17
start local 17 63: aload 0
getfield jdk.tools.jmod.JmodTask.parser:Ljdk/internal/joptsimple/OptionParser;
ldc "target-platform"
ldc "main.opt.target-platform"
iconst_0
anewarray java.lang.Object
invokestatic jdk.tools.jmod.JmodTask.getMessage:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokevirtual jdk.internal.joptsimple.OptionParser.accepts:(Ljava/lang/String;Ljava/lang/String;)Ljdk/internal/joptsimple/OptionSpecBuilder;
64: invokevirtual jdk.internal.joptsimple.OptionSpecBuilder.withRequiredArg:()Ljdk/internal/joptsimple/ArgumentAcceptingOptionSpec;
65: ldc "main.opt.target-platform.arg"
iconst_0
anewarray java.lang.Object
invokestatic jdk.tools.jmod.JmodTask.getMessage:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokevirtual jdk.internal.joptsimple.ArgumentAcceptingOptionSpec.describedAs:(Ljava/lang/String;)Ljdk/internal/joptsimple/ArgumentAcceptingOptionSpec;
66: astore 18
start local 18 67: aload 0
getfield jdk.tools.jmod.JmodTask.parser:Ljdk/internal/joptsimple/OptionParser;
ldc "do-not-resolve-by-default"
68: ldc "main.opt.do-not-resolve-by-default"
iconst_0
anewarray java.lang.Object
invokestatic jdk.tools.jmod.JmodTask.getMessage:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
69: invokevirtual jdk.internal.joptsimple.OptionParser.accepts:(Ljava/lang/String;Ljava/lang/String;)Ljdk/internal/joptsimple/OptionSpecBuilder;
70: astore 19
start local 19 71: aload 0
getfield jdk.tools.jmod.JmodTask.parser:Ljdk/internal/joptsimple/OptionParser;
ldc "warn-if-resolved"
ldc "main.opt.warn-if-resolved"
iconst_0
anewarray java.lang.Object
invokestatic jdk.tools.jmod.JmodTask.getMessage:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokevirtual jdk.internal.joptsimple.OptionParser.accepts:(Ljava/lang/String;Ljava/lang/String;)Ljdk/internal/joptsimple/OptionSpecBuilder;
72: invokevirtual jdk.internal.joptsimple.OptionSpecBuilder.withRequiredArg:()Ljdk/internal/joptsimple/ArgumentAcceptingOptionSpec;
73: new jdk.tools.jmod.JmodTask$WarnIfResolvedReasonConverter
dup
invokespecial jdk.tools.jmod.JmodTask$WarnIfResolvedReasonConverter.<init>:()V
invokevirtual jdk.internal.joptsimple.ArgumentAcceptingOptionSpec.withValuesConvertedBy:(Ljdk/internal/joptsimple/ValueConverter;)Ljdk/internal/joptsimple/ArgumentAcceptingOptionSpec;
74: astore 20
start local 20 75: aload 0
getfield jdk.tools.jmod.JmodTask.parser:Ljdk/internal/joptsimple/OptionParser;
ldc "version"
ldc "main.opt.version"
iconst_0
anewarray java.lang.Object
invokestatic jdk.tools.jmod.JmodTask.getMessage:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokevirtual jdk.internal.joptsimple.OptionParser.accepts:(Ljava/lang/String;Ljava/lang/String;)Ljdk/internal/joptsimple/OptionSpecBuilder;
76: astore 21
start local 21 77: aload 0
getfield jdk.tools.jmod.JmodTask.parser:Ljdk/internal/joptsimple/OptionParser;
invokevirtual jdk.internal.joptsimple.OptionParser.nonOptions:()Ljdk/internal/joptsimple/NonOptionArgumentSpec;
78: astore 22
start local 22 79: aload 0
getfield jdk.tools.jmod.JmodTask.parser:Ljdk/internal/joptsimple/OptionParser;
aload 1
invokevirtual jdk.internal.joptsimple.OptionParser.parse:([Ljava/lang/String;)Ljdk/internal/joptsimple/OptionSet;
astore 23
start local 23 80: aload 23
aload 9
invokevirtual jdk.internal.joptsimple.OptionSet.has:(Ljdk/internal/joptsimple/OptionSpec;)Z
ifne 81
aload 23
aload 10
invokevirtual jdk.internal.joptsimple.OptionSet.has:(Ljdk/internal/joptsimple/OptionSpec;)Z
ifne 81
aload 23
aload 21
invokevirtual jdk.internal.joptsimple.OptionSet.has:(Ljdk/internal/joptsimple/OptionSpec;)Z
ifeq 85
81: StackMap locals: jdk.tools.jmod.JmodTask java.lang.String[] jdk.internal.joptsimple.OptionSpec jdk.internal.joptsimple.OptionSpec jdk.internal.joptsimple.OptionSpec jdk.internal.joptsimple.OptionSpec jdk.internal.joptsimple.OptionSpec jdk.internal.joptsimple.OptionSpec jdk.internal.joptsimple.OptionSpec jdk.internal.joptsimple.OptionSpec jdk.internal.joptsimple.OptionSpec jdk.internal.joptsimple.OptionSpec jdk.internal.joptsimple.OptionSpec jdk.internal.joptsimple.OptionSpec jdk.internal.joptsimple.OptionSpec jdk.internal.joptsimple.OptionSpec jdk.internal.joptsimple.OptionSpec jdk.internal.joptsimple.OptionSpec jdk.internal.joptsimple.OptionSpec jdk.internal.joptsimple.OptionSpec jdk.internal.joptsimple.OptionSpec jdk.internal.joptsimple.OptionSpec jdk.internal.joptsimple.NonOptionArgumentSpec jdk.internal.joptsimple.OptionSet
StackMap stack:
aload 0
getfield jdk.tools.jmod.JmodTask.options:Ljdk/tools/jmod/JmodTask$Options;
aload 23
aload 9
invokevirtual jdk.internal.joptsimple.OptionSet.has:(Ljdk/internal/joptsimple/OptionSpec;)Z
putfield jdk.tools.jmod.JmodTask$Options.help:Z
82: aload 0
getfield jdk.tools.jmod.JmodTask.options:Ljdk/tools/jmod/JmodTask$Options;
aload 23
aload 10
invokevirtual jdk.internal.joptsimple.OptionSet.has:(Ljdk/internal/joptsimple/OptionSpec;)Z
putfield jdk.tools.jmod.JmodTask$Options.helpExtra:Z
83: aload 0
getfield jdk.tools.jmod.JmodTask.options:Ljdk/tools/jmod/JmodTask$Options;
aload 23
aload 21
invokevirtual jdk.internal.joptsimple.OptionSet.has:(Ljdk/internal/joptsimple/OptionSpec;)Z
putfield jdk.tools.jmod.JmodTask$Options.version:Z
84: return
85: StackMap locals:
StackMap stack:
aload 23
aload 22
invokevirtual jdk.internal.joptsimple.OptionSet.valuesOf:(Ljdk/internal/joptsimple/OptionSpec;)Ljava/util/List;
astore 24
start local 24 86: aload 24
invokeinterface java.util.List.isEmpty:()Z
ifeq 88
87: new jdk.tools.jmod.JmodTask$CommandException
dup
ldc "err.missing.mode"
iconst_0
anewarray java.lang.Object
invokespecial jdk.tools.jmod.JmodTask$CommandException.<init>:(Ljava/lang/String;[Ljava/lang/Object;)V
iconst_1
invokevirtual jdk.tools.jmod.JmodTask$CommandException.showUsage:(Z)Ljdk/tools/jmod/JmodTask$CommandException;
athrow
88: StackMap locals: java.util.List
StackMap stack:
aload 24
iconst_0
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast java.lang.String
astore 25
start local 25 89: aload 0
getfield jdk.tools.jmod.JmodTask.options:Ljdk/tools/jmod/JmodTask$Options;
ldc Ljdk/tools/jmod/JmodTask$Mode;
aload 25
invokevirtual java.lang.String.toUpperCase:()Ljava/lang/String;
invokestatic java.lang.Enum.valueOf:(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Enum;
checkcast jdk.tools.jmod.JmodTask$Mode
putfield jdk.tools.jmod.JmodTask$Options.mode:Ljdk/tools/jmod/JmodTask$Mode;
90: goto 93
StackMap locals: jdk.tools.jmod.JmodTask java.lang.String[] jdk.internal.joptsimple.OptionSpec jdk.internal.joptsimple.OptionSpec jdk.internal.joptsimple.OptionSpec jdk.internal.joptsimple.OptionSpec jdk.internal.joptsimple.OptionSpec jdk.internal.joptsimple.OptionSpec jdk.internal.joptsimple.OptionSpec jdk.internal.joptsimple.OptionSpec jdk.internal.joptsimple.OptionSpec jdk.internal.joptsimple.OptionSpec jdk.internal.joptsimple.OptionSpec jdk.internal.joptsimple.OptionSpec jdk.internal.joptsimple.OptionSpec jdk.internal.joptsimple.OptionSpec jdk.internal.joptsimple.OptionSpec jdk.internal.joptsimple.OptionSpec jdk.internal.joptsimple.OptionSpec jdk.internal.joptsimple.OptionSpec jdk.internal.joptsimple.OptionSpec jdk.internal.joptsimple.OptionSpec jdk.internal.joptsimple.NonOptionArgumentSpec jdk.internal.joptsimple.OptionSet java.util.List java.lang.String
StackMap stack: java.lang.IllegalArgumentException
91: pop
92: new jdk.tools.jmod.JmodTask$CommandException
dup
ldc "err.invalid.mode"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 25
aastore
invokespecial jdk.tools.jmod.JmodTask$CommandException.<init>:(Ljava/lang/String;[Ljava/lang/Object;)V
iconst_1
invokevirtual jdk.tools.jmod.JmodTask$CommandException.showUsage:(Z)Ljdk/tools/jmod/JmodTask$CommandException;
athrow
93: StackMap locals:
StackMap stack:
aload 23
aload 2
invokevirtual jdk.internal.joptsimple.OptionSet.has:(Ljdk/internal/joptsimple/OptionSpec;)Z
ifeq 95
94: aload 0
getfield jdk.tools.jmod.JmodTask.options:Ljdk/tools/jmod/JmodTask$Options;
aload 23
aload 2
invokevirtual jdk.internal.joptsimple.OptionSet.valuesOf:(Ljdk/internal/joptsimple/OptionSpec;)Ljava/util/List;
invokestatic jdk.tools.jmod.JmodTask.getLastElement:(Ljava/util/List;)Ljava/lang/Object;
checkcast java.util.List
putfield jdk.tools.jmod.JmodTask$Options.classpath:Ljava/util/List;
95: StackMap locals:
StackMap stack:
aload 23
aload 3
invokevirtual jdk.internal.joptsimple.OptionSet.has:(Ljdk/internal/joptsimple/OptionSpec;)Z
ifeq 97
96: aload 0
getfield jdk.tools.jmod.JmodTask.options:Ljdk/tools/jmod/JmodTask$Options;
aload 23
aload 3
invokevirtual jdk.internal.joptsimple.OptionSet.valuesOf:(Ljdk/internal/joptsimple/OptionSpec;)Ljava/util/List;
invokestatic jdk.tools.jmod.JmodTask.getLastElement:(Ljava/util/List;)Ljava/lang/Object;
checkcast java.util.List
putfield jdk.tools.jmod.JmodTask$Options.cmds:Ljava/util/List;
97: StackMap locals:
StackMap stack:
aload 23
aload 4
invokevirtual jdk.internal.joptsimple.OptionSet.has:(Ljdk/internal/joptsimple/OptionSpec;)Z
ifeq 99
98: aload 0
getfield jdk.tools.jmod.JmodTask.options:Ljdk/tools/jmod/JmodTask$Options;
aload 23
aload 4
invokevirtual jdk.internal.joptsimple.OptionSet.valuesOf:(Ljdk/internal/joptsimple/OptionSpec;)Ljava/util/List;
invokestatic jdk.tools.jmod.JmodTask.getLastElement:(Ljava/util/List;)Ljava/lang/Object;
checkcast java.util.List
putfield jdk.tools.jmod.JmodTask$Options.configs:Ljava/util/List;
99: StackMap locals:
StackMap stack:
aload 23
aload 5
invokevirtual jdk.internal.joptsimple.OptionSet.has:(Ljdk/internal/joptsimple/OptionSpec;)Z
ifeq 101
100: aload 0
getfield jdk.tools.jmod.JmodTask.options:Ljdk/tools/jmod/JmodTask$Options;
aload 23
aload 5
invokevirtual jdk.internal.joptsimple.OptionSet.valuesOf:(Ljdk/internal/joptsimple/OptionSpec;)Ljava/util/List;
invokestatic jdk.tools.jmod.JmodTask.getLastElement:(Ljava/util/List;)Ljava/lang/Object;
checkcast java.nio.file.Path
putfield jdk.tools.jmod.JmodTask$Options.extractDir:Ljava/nio/file/Path;
101: StackMap locals:
StackMap stack:
aload 23
aload 6
invokevirtual jdk.internal.joptsimple.OptionSet.has:(Ljdk/internal/joptsimple/OptionSpec;)Z
ifeq 103
102: aload 0
getfield jdk.tools.jmod.JmodTask.options:Ljdk/tools/jmod/JmodTask$Options;
iconst_1
putfield jdk.tools.jmod.JmodTask$Options.dryrun:Z
103: StackMap locals:
StackMap stack:
aload 23
aload 7
invokevirtual jdk.internal.joptsimple.OptionSet.has:(Ljdk/internal/joptsimple/OptionSpec;)Z
ifeq 105
104: aload 0
getfield jdk.tools.jmod.JmodTask.options:Ljdk/tools/jmod/JmodTask$Options;
aload 23
aload 7
invokevirtual jdk.internal.joptsimple.OptionSet.valuesOf:(Ljdk/internal/joptsimple/OptionSpec;)Ljava/util/List;
putfield jdk.tools.jmod.JmodTask$Options.excludes:Ljava/util/List;
105: StackMap locals:
StackMap stack:
aload 23
aload 12
invokevirtual jdk.internal.joptsimple.OptionSet.has:(Ljdk/internal/joptsimple/OptionSpec;)Z
ifeq 107
106: aload 0
getfield jdk.tools.jmod.JmodTask.options:Ljdk/tools/jmod/JmodTask$Options;
aload 23
aload 12
invokevirtual jdk.internal.joptsimple.OptionSet.valuesOf:(Ljdk/internal/joptsimple/OptionSpec;)Ljava/util/List;
invokestatic jdk.tools.jmod.JmodTask.getLastElement:(Ljava/util/List;)Ljava/lang/Object;
checkcast java.util.List
putfield jdk.tools.jmod.JmodTask$Options.libs:Ljava/util/List;
107: StackMap locals:
StackMap stack:
aload 23
aload 11
invokevirtual jdk.internal.joptsimple.OptionSet.has:(Ljdk/internal/joptsimple/OptionSpec;)Z
ifeq 109
108: aload 0
getfield jdk.tools.jmod.JmodTask.options:Ljdk/tools/jmod/JmodTask$Options;
aload 23
aload 11
invokevirtual jdk.internal.joptsimple.OptionSet.valuesOf:(Ljdk/internal/joptsimple/OptionSpec;)Ljava/util/List;
invokestatic jdk.tools.jmod.JmodTask.getLastElement:(Ljava/util/List;)Ljava/lang/Object;
checkcast java.util.List
putfield jdk.tools.jmod.JmodTask$Options.headerFiles:Ljava/util/List;
109: StackMap locals:
StackMap stack:
aload 23
aload 15
invokevirtual jdk.internal.joptsimple.OptionSet.has:(Ljdk/internal/joptsimple/OptionSpec;)Z
ifeq 111
110: aload 0
getfield jdk.tools.jmod.JmodTask.options:Ljdk/tools/jmod/JmodTask$Options;
aload 23
aload 15
invokevirtual jdk.internal.joptsimple.OptionSet.valuesOf:(Ljdk/internal/joptsimple/OptionSpec;)Ljava/util/List;
invokestatic jdk.tools.jmod.JmodTask.getLastElement:(Ljava/util/List;)Ljava/lang/Object;
checkcast java.util.List
putfield jdk.tools.jmod.JmodTask$Options.manPages:Ljava/util/List;
111: StackMap locals:
StackMap stack:
aload 23
aload 13
invokevirtual jdk.internal.joptsimple.OptionSet.has:(Ljdk/internal/joptsimple/OptionSpec;)Z
ifeq 113
112: aload 0
getfield jdk.tools.jmod.JmodTask.options:Ljdk/tools/jmod/JmodTask$Options;
aload 23
aload 13
invokevirtual jdk.internal.joptsimple.OptionSet.valuesOf:(Ljdk/internal/joptsimple/OptionSpec;)Ljava/util/List;
invokestatic jdk.tools.jmod.JmodTask.getLastElement:(Ljava/util/List;)Ljava/lang/Object;
checkcast java.util.List
putfield jdk.tools.jmod.JmodTask$Options.legalNotices:Ljava/util/List;
113: StackMap locals:
StackMap stack:
aload 23
aload 16
invokevirtual jdk.internal.joptsimple.OptionSet.has:(Ljdk/internal/joptsimple/OptionSpec;)Z
ifeq 116
114: aload 23
aload 16
invokevirtual jdk.internal.joptsimple.OptionSet.valuesOf:(Ljdk/internal/joptsimple/OptionSpec;)Ljava/util/List;
invokestatic jdk.tools.jmod.JmodTask.getLastElement:(Ljava/util/List;)Ljava/lang/Object;
checkcast java.util.List
iconst_0
anewarray java.nio.file.Path
invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
checkcast java.nio.file.Path[]
astore 26
start local 26 115: aload 0
getfield jdk.tools.jmod.JmodTask.options:Ljdk/tools/jmod/JmodTask$Options;
invokestatic java.lang.Runtime.version:()Ljava/lang/Runtime$Version;
iconst_1
aload 26
invokestatic jdk.internal.module.ModulePath.of:(Ljava/lang/Runtime$Version;Z[Ljava/nio/file/Path;)Ljava/lang/module/ModuleFinder;
putfield jdk.tools.jmod.JmodTask$Options.moduleFinder:Ljava/lang/module/ModuleFinder;
end local 26 116: StackMap locals:
StackMap stack:
aload 23
aload 17
invokevirtual jdk.internal.joptsimple.OptionSet.has:(Ljdk/internal/joptsimple/OptionSpec;)Z
ifeq 118
117: aload 0
getfield jdk.tools.jmod.JmodTask.options:Ljdk/tools/jmod/JmodTask$Options;
aload 23
aload 17
invokevirtual jdk.internal.joptsimple.OptionSet.valuesOf:(Ljdk/internal/joptsimple/OptionSpec;)Ljava/util/List;
invokestatic jdk.tools.jmod.JmodTask.getLastElement:(Ljava/util/List;)Ljava/lang/Object;
checkcast java.lang.module.ModuleDescriptor$Version
putfield jdk.tools.jmod.JmodTask$Options.moduleVersion:Ljava/lang/module/ModuleDescriptor$Version;
118: StackMap locals:
StackMap stack:
aload 23
aload 14
invokevirtual jdk.internal.joptsimple.OptionSet.has:(Ljdk/internal/joptsimple/OptionSpec;)Z
ifeq 120
119: aload 0
getfield jdk.tools.jmod.JmodTask.options:Ljdk/tools/jmod/JmodTask$Options;
aload 23
aload 14
invokevirtual jdk.internal.joptsimple.OptionSet.valuesOf:(Ljdk/internal/joptsimple/OptionSpec;)Ljava/util/List;
invokestatic jdk.tools.jmod.JmodTask.getLastElement:(Ljava/util/List;)Ljava/lang/Object;
checkcast java.lang.String
putfield jdk.tools.jmod.JmodTask$Options.mainClass:Ljava/lang/String;
120: StackMap locals:
StackMap stack:
aload 23
aload 18
invokevirtual jdk.internal.joptsimple.OptionSet.has:(Ljdk/internal/joptsimple/OptionSpec;)Z
ifeq 122
121: aload 0
getfield jdk.tools.jmod.JmodTask.options:Ljdk/tools/jmod/JmodTask$Options;
aload 23
aload 18
invokevirtual jdk.internal.joptsimple.OptionSet.valuesOf:(Ljdk/internal/joptsimple/OptionSpec;)Ljava/util/List;
invokestatic jdk.tools.jmod.JmodTask.getLastElement:(Ljava/util/List;)Ljava/lang/Object;
checkcast java.lang.String
putfield jdk.tools.jmod.JmodTask$Options.targetPlatform:Ljava/lang/String;
122: StackMap locals:
StackMap stack:
aload 23
aload 20
invokevirtual jdk.internal.joptsimple.OptionSet.has:(Ljdk/internal/joptsimple/OptionSpec;)Z
ifeq 124
123: aload 0
getfield jdk.tools.jmod.JmodTask.options:Ljdk/tools/jmod/JmodTask$Options;
aload 23
aload 20
invokevirtual jdk.internal.joptsimple.OptionSet.valuesOf:(Ljdk/internal/joptsimple/OptionSpec;)Ljava/util/List;
invokestatic jdk.tools.jmod.JmodTask.getLastElement:(Ljava/util/List;)Ljava/lang/Object;
checkcast jdk.internal.module.ModuleResolution
putfield jdk.tools.jmod.JmodTask$Options.moduleResolution:Ljdk/internal/module/ModuleResolution;
124: StackMap locals:
StackMap stack:
aload 23
aload 19
invokevirtual jdk.internal.joptsimple.OptionSet.has:(Ljdk/internal/joptsimple/OptionSpec;)Z
ifeq 128
125: aload 0
getfield jdk.tools.jmod.JmodTask.options:Ljdk/tools/jmod/JmodTask$Options;
getfield jdk.tools.jmod.JmodTask$Options.moduleResolution:Ljdk/internal/module/ModuleResolution;
ifnonnull 127
126: aload 0
getfield jdk.tools.jmod.JmodTask.options:Ljdk/tools/jmod/JmodTask$Options;
invokestatic jdk.internal.module.ModuleResolution.empty:()Ljdk/internal/module/ModuleResolution;
putfield jdk.tools.jmod.JmodTask$Options.moduleResolution:Ljdk/internal/module/ModuleResolution;
127: StackMap locals:
StackMap stack:
aload 0
getfield jdk.tools.jmod.JmodTask.options:Ljdk/tools/jmod/JmodTask$Options;
aload 0
getfield jdk.tools.jmod.JmodTask.options:Ljdk/tools/jmod/JmodTask$Options;
getfield jdk.tools.jmod.JmodTask$Options.moduleResolution:Ljdk/internal/module/ModuleResolution;
invokevirtual jdk.internal.module.ModuleResolution.withDoNotResolveByDefault:()Ljdk/internal/module/ModuleResolution;
putfield jdk.tools.jmod.JmodTask$Options.moduleResolution:Ljdk/internal/module/ModuleResolution;
128: StackMap locals:
StackMap stack:
aload 23
aload 8
invokevirtual jdk.internal.joptsimple.OptionSet.has:(Ljdk/internal/joptsimple/OptionSpec;)Z
ifeq 134
129: aload 0
getfield jdk.tools.jmod.JmodTask.options:Ljdk/tools/jmod/JmodTask$Options;
aload 23
aload 8
invokevirtual jdk.internal.joptsimple.OptionSet.valuesOf:(Ljdk/internal/joptsimple/OptionSpec;)Ljava/util/List;
invokestatic jdk.tools.jmod.JmodTask.getLastElement:(Ljava/util/List;)Ljava/lang/Object;
checkcast java.util.regex.Pattern
putfield jdk.tools.jmod.JmodTask$Options.modulesToHash:Ljava/util/regex/Pattern;
130: aload 0
getfield jdk.tools.jmod.JmodTask.options:Ljdk/tools/jmod/JmodTask$Options;
getfield jdk.tools.jmod.JmodTask$Options.moduleFinder:Ljava/lang/module/ModuleFinder;
ifnonnull 134
131: new jdk.tools.jmod.JmodTask$CommandException
dup
ldc "err.modulepath.must.be.specified"
iconst_0
anewarray java.lang.Object
invokespecial jdk.tools.jmod.JmodTask$CommandException.<init>:(Ljava/lang/String;[Ljava/lang/Object;)V
132: iconst_1
invokevirtual jdk.tools.jmod.JmodTask$CommandException.showUsage:(Z)Ljdk/tools/jmod/JmodTask$CommandException;
133: athrow
134: StackMap locals:
StackMap stack:
aload 0
getfield jdk.tools.jmod.JmodTask.options:Ljdk/tools/jmod/JmodTask$Options;
getfield jdk.tools.jmod.JmodTask$Options.mode:Ljdk/tools/jmod/JmodTask$Mode;
getstatic jdk.tools.jmod.JmodTask$Mode.HASH:Ljdk/tools/jmod/JmodTask$Mode;
invokevirtual jdk.tools.jmod.JmodTask$Mode.equals:(Ljava/lang/Object;)Z
ifeq 139
135: aload 0
getfield jdk.tools.jmod.JmodTask.options:Ljdk/tools/jmod/JmodTask$Options;
getfield jdk.tools.jmod.JmodTask$Options.moduleFinder:Ljava/lang/module/ModuleFinder;
ifnull 136
aload 0
getfield jdk.tools.jmod.JmodTask.options:Ljdk/tools/jmod/JmodTask$Options;
getfield jdk.tools.jmod.JmodTask$Options.modulesToHash:Ljava/util/regex/Pattern;
ifnonnull 158
136: StackMap locals:
StackMap stack:
new jdk.tools.jmod.JmodTask$CommandException
dup
ldc "err.modulepath.must.be.specified"
iconst_0
anewarray java.lang.Object
invokespecial jdk.tools.jmod.JmodTask$CommandException.<init>:(Ljava/lang/String;[Ljava/lang/Object;)V
137: iconst_1
invokevirtual jdk.tools.jmod.JmodTask$CommandException.showUsage:(Z)Ljdk/tools/jmod/JmodTask$CommandException;
138: athrow
139: StackMap locals:
StackMap stack:
aload 24
invokeinterface java.util.List.size:()I
iconst_1
if_icmpgt 141
140: new jdk.tools.jmod.JmodTask$CommandException
dup
ldc "err.jmod.must.be.specified"
iconst_0
anewarray java.lang.Object
invokespecial jdk.tools.jmod.JmodTask$CommandException.<init>:(Ljava/lang/String;[Ljava/lang/Object;)V
iconst_1
invokevirtual jdk.tools.jmod.JmodTask$CommandException.showUsage:(Z)Ljdk/tools/jmod/JmodTask$CommandException;
athrow
141: StackMap locals:
StackMap stack:
aload 24
iconst_1
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast java.lang.String
iconst_0
anewarray java.lang.String
invokestatic java.nio.file.Paths.get:(Ljava/lang/String;[Ljava/lang/String;)Ljava/nio/file/Path;
astore 26
start local 26 142: aload 0
getfield jdk.tools.jmod.JmodTask.options:Ljdk/tools/jmod/JmodTask$Options;
getfield jdk.tools.jmod.JmodTask$Options.mode:Ljdk/tools/jmod/JmodTask$Mode;
getstatic jdk.tools.jmod.JmodTask$Mode.CREATE:Ljdk/tools/jmod/JmodTask$Mode;
invokevirtual jdk.tools.jmod.JmodTask$Mode.equals:(Ljava/lang/Object;)Z
ifeq 144
aload 26
iconst_0
anewarray java.nio.file.LinkOption
invokestatic java.nio.file.Files.exists:(Ljava/nio/file/Path;[Ljava/nio/file/LinkOption;)Z
ifeq 144
143: new jdk.tools.jmod.JmodTask$CommandException
dup
ldc "err.file.already.exists"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 26
aastore
invokespecial jdk.tools.jmod.JmodTask$CommandException.<init>:(Ljava/lang/String;[Ljava/lang/Object;)V
athrow
144: StackMap locals: java.nio.file.Path
StackMap stack:
aload 0
getfield jdk.tools.jmod.JmodTask.options:Ljdk/tools/jmod/JmodTask$Options;
getfield jdk.tools.jmod.JmodTask$Options.mode:Ljdk/tools/jmod/JmodTask$Mode;
getstatic jdk.tools.jmod.JmodTask$Mode.LIST:Ljdk/tools/jmod/JmodTask$Mode;
invokevirtual jdk.tools.jmod.JmodTask$Mode.equals:(Ljava/lang/Object;)Z
ifne 147
145: aload 0
getfield jdk.tools.jmod.JmodTask.options:Ljdk/tools/jmod/JmodTask$Options;
getfield jdk.tools.jmod.JmodTask$Options.mode:Ljdk/tools/jmod/JmodTask$Mode;
getstatic jdk.tools.jmod.JmodTask$Mode.DESCRIBE:Ljdk/tools/jmod/JmodTask$Mode;
invokevirtual jdk.tools.jmod.JmodTask$Mode.equals:(Ljava/lang/Object;)Z
ifne 147
146: aload 0
getfield jdk.tools.jmod.JmodTask.options:Ljdk/tools/jmod/JmodTask$Options;
getfield jdk.tools.jmod.JmodTask$Options.mode:Ljdk/tools/jmod/JmodTask$Mode;
getstatic jdk.tools.jmod.JmodTask$Mode.EXTRACT:Ljdk/tools/jmod/JmodTask$Mode;
invokevirtual jdk.tools.jmod.JmodTask$Mode.equals:(Ljava/lang/Object;)Z
ifeq 149
147: StackMap locals:
StackMap stack:
aload 26
iconst_0
anewarray java.nio.file.LinkOption
invokestatic java.nio.file.Files.notExists:(Ljava/nio/file/Path;[Ljava/nio/file/LinkOption;)Z
ifeq 149
148: new jdk.tools.jmod.JmodTask$CommandException
dup
ldc "err.jmod.not.found"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 26
aastore
invokespecial jdk.tools.jmod.JmodTask$CommandException.<init>:(Ljava/lang/String;[Ljava/lang/Object;)V
athrow
149: StackMap locals:
StackMap stack:
aload 0
getfield jdk.tools.jmod.JmodTask.options:Ljdk/tools/jmod/JmodTask$Options;
getfield jdk.tools.jmod.JmodTask$Options.dryrun:Z
ifeq 151
150: new jdk.tools.jmod.JmodTask$CommandException
dup
ldc "err.invalid.dryrun.option"
iconst_0
anewarray java.lang.Object
invokespecial jdk.tools.jmod.JmodTask$CommandException.<init>:(Ljava/lang/String;[Ljava/lang/Object;)V
athrow
151: StackMap locals:
StackMap stack:
aload 0
getfield jdk.tools.jmod.JmodTask.options:Ljdk/tools/jmod/JmodTask$Options;
aload 26
putfield jdk.tools.jmod.JmodTask$Options.jmodFile:Ljava/nio/file/Path;
152: aload 24
invokeinterface java.util.List.size:()I
iconst_2
if_icmple 158
153: new jdk.tools.jmod.JmodTask$CommandException
dup
ldc "err.unknown.option"
iconst_1
anewarray java.lang.Object
dup
iconst_0
154: aload 24
iconst_2
aload 24
invokeinterface java.util.List.size:()I
invokeinterface java.util.List.subList:(II)Ljava/util/List;
155: aastore
invokespecial jdk.tools.jmod.JmodTask$CommandException.<init>:(Ljava/lang/String;[Ljava/lang/Object;)V
156: iconst_1
invokevirtual jdk.tools.jmod.JmodTask$CommandException.showUsage:(Z)Ljdk/tools/jmod/JmodTask$CommandException;
157: athrow
end local 26 158: StackMap locals:
StackMap stack:
aload 0
getfield jdk.tools.jmod.JmodTask.options:Ljdk/tools/jmod/JmodTask$Options;
getfield jdk.tools.jmod.JmodTask$Options.mode:Ljdk/tools/jmod/JmodTask$Mode;
getstatic jdk.tools.jmod.JmodTask$Mode.CREATE:Ljdk/tools/jmod/JmodTask$Mode;
invokevirtual jdk.tools.jmod.JmodTask$Mode.equals:(Ljava/lang/Object;)Z
ifeq 160
aload 0
getfield jdk.tools.jmod.JmodTask.options:Ljdk/tools/jmod/JmodTask$Options;
getfield jdk.tools.jmod.JmodTask$Options.classpath:Ljava/util/List;
ifnonnull 160
159: new jdk.tools.jmod.JmodTask$CommandException
dup
ldc "err.classpath.must.be.specified"
iconst_0
anewarray java.lang.Object
invokespecial jdk.tools.jmod.JmodTask$CommandException.<init>:(Ljava/lang/String;[Ljava/lang/Object;)V
iconst_1
invokevirtual jdk.tools.jmod.JmodTask$CommandException.showUsage:(Z)Ljdk/tools/jmod/JmodTask$CommandException;
athrow
160: StackMap locals:
StackMap stack:
aload 0
getfield jdk.tools.jmod.JmodTask.options:Ljdk/tools/jmod/JmodTask$Options;
getfield jdk.tools.jmod.JmodTask$Options.mainClass:Ljava/lang/String;
ifnull 162
aload 0
getfield jdk.tools.jmod.JmodTask.options:Ljdk/tools/jmod/JmodTask$Options;
getfield jdk.tools.jmod.JmodTask$Options.mainClass:Ljava/lang/String;
invokestatic jdk.tools.jmod.JmodTask.isValidJavaIdentifier:(Ljava/lang/String;)Z
ifne 162
161: new jdk.tools.jmod.JmodTask$CommandException
dup
ldc "err.invalid.main-class"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 0
getfield jdk.tools.jmod.JmodTask.options:Ljdk/tools/jmod/JmodTask$Options;
getfield jdk.tools.jmod.JmodTask$Options.mainClass:Ljava/lang/String;
aastore
invokespecial jdk.tools.jmod.JmodTask$CommandException.<init>:(Ljava/lang/String;[Ljava/lang/Object;)V
athrow
162: StackMap locals:
StackMap stack:
aload 0
getfield jdk.tools.jmod.JmodTask.options:Ljdk/tools/jmod/JmodTask$Options;
getfield jdk.tools.jmod.JmodTask$Options.mode:Ljdk/tools/jmod/JmodTask$Mode;
getstatic jdk.tools.jmod.JmodTask$Mode.EXTRACT:Ljdk/tools/jmod/JmodTask$Mode;
invokevirtual jdk.tools.jmod.JmodTask$Mode.equals:(Ljava/lang/Object;)Z
ifeq 169
aload 0
getfield jdk.tools.jmod.JmodTask.options:Ljdk/tools/jmod/JmodTask$Options;
getfield jdk.tools.jmod.JmodTask$Options.extractDir:Ljava/nio/file/Path;
ifnull 169
163: aload 0
getfield jdk.tools.jmod.JmodTask.options:Ljdk/tools/jmod/JmodTask$Options;
getfield jdk.tools.jmod.JmodTask$Options.extractDir:Ljava/nio/file/Path;
iconst_0
anewarray java.nio.file.attribute.FileAttribute
invokestatic java.nio.file.Files.createDirectories:(Ljava/nio/file/Path;[Ljava/nio/file/attribute/FileAttribute;)Ljava/nio/file/Path;
pop
164: goto 169
StackMap locals:
StackMap stack: java.io.IOException
165: pop
166: new jdk.tools.jmod.JmodTask$CommandException
dup
ldc "err.cannot.create.dir"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 0
getfield jdk.tools.jmod.JmodTask.options:Ljdk/tools/jmod/JmodTask$Options;
getfield jdk.tools.jmod.JmodTask$Options.extractDir:Ljava/nio/file/Path;
aastore
invokespecial jdk.tools.jmod.JmodTask$CommandException.<init>:(Ljava/lang/String;[Ljava/lang/Object;)V
athrow
end local 25 end local 24 end local 23 167: StackMap locals: jdk.tools.jmod.JmodTask java.lang.String[] jdk.internal.joptsimple.OptionSpec jdk.internal.joptsimple.OptionSpec jdk.internal.joptsimple.OptionSpec jdk.internal.joptsimple.OptionSpec jdk.internal.joptsimple.OptionSpec jdk.internal.joptsimple.OptionSpec jdk.internal.joptsimple.OptionSpec jdk.internal.joptsimple.OptionSpec jdk.internal.joptsimple.OptionSpec jdk.internal.joptsimple.OptionSpec jdk.internal.joptsimple.OptionSpec jdk.internal.joptsimple.OptionSpec jdk.internal.joptsimple.OptionSpec jdk.internal.joptsimple.OptionSpec jdk.internal.joptsimple.OptionSpec jdk.internal.joptsimple.OptionSpec jdk.internal.joptsimple.OptionSpec jdk.internal.joptsimple.OptionSpec jdk.internal.joptsimple.OptionSpec jdk.internal.joptsimple.OptionSpec jdk.internal.joptsimple.NonOptionArgumentSpec
StackMap stack: jdk.internal.joptsimple.OptionException
astore 23
start local 23 168: new jdk.tools.jmod.JmodTask$CommandException
dup
aload 23
invokevirtual jdk.internal.joptsimple.OptionException.getMessage:()Ljava/lang/String;
iconst_0
anewarray java.lang.Object
invokespecial jdk.tools.jmod.JmodTask$CommandException.<init>:(Ljava/lang/String;[Ljava/lang/Object;)V
athrow
end local 23 169: StackMap locals:
StackMap stack:
return
end local 22 end local 21 end local 20 end local 19 end local 18 end local 17 end local 16 end local 15 end local 14 end local 13 end local 12 end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 170 0 this Ljdk/tools/jmod/JmodTask;
0 170 1 args [Ljava/lang/String;
6 170 2 classPath Ljdk/internal/joptsimple/OptionSpec<Ljava/util/List<Ljava/nio/file/Path;>;>;
10 170 3 cmds Ljdk/internal/joptsimple/OptionSpec<Ljava/util/List<Ljava/nio/file/Path;>;>;
14 170 4 config Ljdk/internal/joptsimple/OptionSpec<Ljava/util/List<Ljava/nio/file/Path;>;>;
18 170 5 dir Ljdk/internal/joptsimple/OptionSpec<Ljava/nio/file/Path;>;
20 170 6 dryrun Ljdk/internal/joptsimple/OptionSpec<Ljava/lang/Void;>;
24 170 7 excludes Ljdk/internal/joptsimple/OptionSpec<Ljava/nio/file/PathMatcher;>;
28 170 8 hashModules Ljdk/internal/joptsimple/OptionSpec<Ljava/util/regex/Pattern;>;
31 170 9 help Ljdk/internal/joptsimple/OptionSpec<Ljava/lang/Void;>;
33 170 10 helpExtra Ljdk/internal/joptsimple/OptionSpec<Ljava/lang/Void;>;
37 170 11 headerFiles Ljdk/internal/joptsimple/OptionSpec<Ljava/util/List<Ljava/nio/file/Path;>;>;
41 170 12 libs Ljdk/internal/joptsimple/OptionSpec<Ljava/util/List<Ljava/nio/file/Path;>;>;
45 170 13 legalNotices Ljdk/internal/joptsimple/OptionSpec<Ljava/util/List<Ljava/nio/file/Path;>;>;
49 170 14 mainClass Ljdk/internal/joptsimple/OptionSpec<Ljava/lang/String;>;
53 170 15 manPages Ljdk/internal/joptsimple/OptionSpec<Ljava/util/List<Ljava/nio/file/Path;>;>;
59 170 16 modulePath Ljdk/internal/joptsimple/OptionSpec<Ljava/util/List<Ljava/nio/file/Path;>;>;
63 170 17 moduleVersion Ljdk/internal/joptsimple/OptionSpec<Ljava/lang/module/ModuleDescriptor$Version;>;
67 170 18 targetPlatform Ljdk/internal/joptsimple/OptionSpec<Ljava/lang/String;>;
71 170 19 doNotResolveByDefault Ljdk/internal/joptsimple/OptionSpec<Ljava/lang/Void;>;
75 170 20 warnIfResolved Ljdk/internal/joptsimple/OptionSpec<Ljdk/internal/module/ModuleResolution;>;
77 170 21 version Ljdk/internal/joptsimple/OptionSpec<Ljava/lang/Void;>;
79 170 22 nonOptions Ljdk/internal/joptsimple/NonOptionArgumentSpec<Ljava/lang/String;>;
80 167 23 opts Ljdk/internal/joptsimple/OptionSet;
86 167 24 words Ljava/util/List<Ljava/lang/String;>;
89 167 25 verb Ljava/lang/String;
115 116 26 dirs [Ljava/nio/file/Path;
142 158 26 path Ljava/nio/file/Path;
168 169 23 e Ljdk/internal/joptsimple/OptionException;
Exception table:
from to target type
89 90 91 Class java.lang.IllegalArgumentException
163 164 165 Class java.io.IOException
79 84 167 Class jdk.internal.joptsimple.OptionException
85 167 167 Class jdk.internal.joptsimple.OptionException
MethodParameters:
Name Flags
args
static boolean isValidJavaIdentifier(java.lang.String);
descriptor: (Ljava/lang/String;)Z
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=4, args_size=1
start local 0 0: aload 0
invokevirtual java.lang.String.length:()I
ifne 2
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 0
iconst_0
invokevirtual java.lang.String.charAt:(I)C
invokestatic java.lang.Character.isJavaIdentifierStart:(C)Z
ifne 4
3: iconst_0
ireturn
4: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.lang.String.length:()I
istore 1
start local 1 5: iconst_1
istore 2
start local 2 6: goto 11
7: StackMap locals: int int
StackMap stack:
aload 0
iload 2
invokevirtual java.lang.String.charAt:(I)C
istore 3
start local 3 8: iload 3
invokestatic java.lang.Character.isJavaIdentifierPart:(C)Z
ifne 10
iload 3
bipush 46
if_icmpeq 10
9: iconst_0
ireturn
end local 3 10: StackMap locals:
StackMap stack:
iinc 2 1
StackMap locals:
StackMap stack:
11: iload 2
iload 1
if_icmplt 7
end local 2 12: aload 0
iload 1
iconst_1
isub
invokevirtual java.lang.String.charAt:(I)C
bipush 46
if_icmpne 14
13: iconst_0
ireturn
14: StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 mainClass Ljava/lang/String;
5 15 1 n I
6 12 2 i I
8 10 3 c C
MethodParameters:
Name Flags
mainClass
static <E> E getLastElement(java.util.List<E>);
descriptor: (Ljava/util/List;)Ljava/lang/Object;
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
invokeinterface java.util.List.size:()I
ifne 2
1: new java.lang.InternalError
dup
ldc "Unexpected 0 list size"
invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
aload 0
invokeinterface java.util.List.size:()I
iconst_1
isub
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 list Ljava/util/List<TE;>;
Signature: <E:Ljava/lang/Object;>(Ljava/util/List<TE;>;)TE;
MethodParameters:
Name Flags
list
private void reportError(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield jdk.tools.jmod.JmodTask.out:Ljava/io/PrintWriter;
new java.lang.StringBuilder
dup
ldc "error.prefix"
iconst_0
anewarray java.lang.Object
invokestatic jdk.tools.jmod.JmodTask.getMessage:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
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 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljdk/tools/jmod/JmodTask;
0 2 1 message Ljava/lang/String;
MethodParameters:
Name Flags
message
private void warning(java.lang.String, java.lang.Object[]);
descriptor: (Ljava/lang/String;[Ljava/lang/Object;)V
flags: (0x0082) ACC_PRIVATE, ACC_VARARGS
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield jdk.tools.jmod.JmodTask.out:Ljava/io/PrintWriter;
new java.lang.StringBuilder
dup
ldc "warn.prefix"
iconst_0
anewarray java.lang.Object
invokestatic jdk.tools.jmod.JmodTask.getMessage:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
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 1
aload 2
invokestatic jdk.tools.jmod.JmodTask.getMessage:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljdk/tools/jmod/JmodTask;
0 2 1 key Ljava/lang/String;
0 2 2 args [Ljava/lang/Object;
MethodParameters:
Name Flags
key
args
private void showUsageSummary();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.tools.jmod.JmodTask.out:Ljava/io/PrintWriter;
ldc "main.usage.summary"
iconst_1
anewarray java.lang.Object
dup
iconst_0
ldc "jmod"
aastore
invokestatic jdk.tools.jmod.JmodTask.getMessage:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljdk/tools/jmod/JmodTask;
private void showHelp();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=2, args_size=1
start local 0 0: aload 0
getfield jdk.tools.jmod.JmodTask.out:Ljava/io/PrintWriter;
ldc "main.usage"
iconst_1
anewarray java.lang.Object
dup
iconst_0
ldc "jmod"
aastore
invokestatic jdk.tools.jmod.JmodTask.getMessage:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
1: aload 0
getfield jdk.tools.jmod.JmodTask.parser:Ljdk/internal/joptsimple/OptionParser;
aload 0
getfield jdk.tools.jmod.JmodTask.out:Ljava/io/PrintWriter;
invokevirtual jdk.internal.joptsimple.OptionParser.printHelpOn:(Ljava/io/Writer;)V
2: goto 5
StackMap locals:
StackMap stack: java.io.IOException
3: astore 1
start local 1 4: new java.lang.AssertionError
dup
aload 1
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
end local 1 5: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Ljdk/tools/jmod/JmodTask;
4 5 1 x Ljava/io/IOException;
Exception table:
from to target type
1 2 3 Class java.io.IOException
private void showVersion();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.tools.jmod.JmodTask.out:Ljava/io/PrintWriter;
aload 0
invokevirtual jdk.tools.jmod.JmodTask.version:()Ljava/lang/String;
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljdk/tools/jmod/JmodTask;
private java.lang.String version();
descriptor: ()Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 0: ldc "java.version"
invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/tools/jmod/JmodTask;
private static java.lang.String getMessage(java.lang.String, java.lang.Object[]);
descriptor: (Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
flags: (0x008a) ACC_PRIVATE, ACC_STATIC, ACC_VARARGS
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: getstatic jdk.tools.jmod.JmodTask$ResourceBundleHelper.bundle:Ljava/util/ResourceBundle;
aload 0
invokevirtual java.util.ResourceBundle.getString:(Ljava/lang/String;)Ljava/lang/String;
aload 1
invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
1: areturn
2: StackMap locals:
StackMap stack: java.util.MissingResourceException
pop
3: new java.lang.InternalError
dup
new java.lang.StringBuilder
dup
ldc "Missing message: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 key Ljava/lang/String;
0 4 1 args [Ljava/lang/Object;
Exception table:
from to target type
0 1 2 Class java.util.MissingResourceException
MethodParameters:
Name Flags
key
args
static int[] $SWITCH_TABLE$jdk$tools$jmod$JmodTask$Mode();
descriptor: ()[I
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=0
0: getstatic jdk.tools.jmod.JmodTask.$SWITCH_TABLE$jdk$tools$jmod$JmodTask$Mode:[I
dup
ifnull 1
areturn
StackMap locals:
StackMap stack: int[]
1: pop
invokestatic jdk.tools.jmod.JmodTask$Mode.values:()[Ljdk/tools/jmod/JmodTask$Mode;
arraylength
newarray 10
astore 0
2: aload 0
getstatic jdk.tools.jmod.JmodTask$Mode.CREATE:Ljdk/tools/jmod/JmodTask$Mode;
invokevirtual jdk.tools.jmod.JmodTask$Mode.ordinal:()I
iconst_1
iastore
3: goto 5
StackMap locals: int[]
StackMap stack: java.lang.NoSuchFieldError
4: pop
StackMap locals:
StackMap stack:
5: aload 0
getstatic jdk.tools.jmod.JmodTask$Mode.DESCRIBE:Ljdk/tools/jmod/JmodTask$Mode;
invokevirtual jdk.tools.jmod.JmodTask$Mode.ordinal:()I
iconst_4
iastore
6: goto 8
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
7: pop
StackMap locals:
StackMap stack:
8: aload 0
getstatic jdk.tools.jmod.JmodTask$Mode.EXTRACT:Ljdk/tools/jmod/JmodTask$Mode;
invokevirtual jdk.tools.jmod.JmodTask$Mode.ordinal:()I
iconst_2
iastore
9: goto 11
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
10: pop
StackMap locals:
StackMap stack:
11: aload 0
getstatic jdk.tools.jmod.JmodTask$Mode.HASH:Ljdk/tools/jmod/JmodTask$Mode;
invokevirtual jdk.tools.jmod.JmodTask$Mode.ordinal:()I
iconst_5
iastore
12: goto 14
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
13: pop
StackMap locals:
StackMap stack:
14: aload 0
getstatic jdk.tools.jmod.JmodTask$Mode.LIST:Ljdk/tools/jmod/JmodTask$Mode;
invokevirtual jdk.tools.jmod.JmodTask$Mode.ordinal:()I
iconst_3
iastore
15: goto 17
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
16: pop
StackMap locals:
StackMap stack:
17: aload 0
dup
putstatic jdk.tools.jmod.JmodTask.$SWITCH_TABLE$jdk$tools$jmod$JmodTask$Mode:[I
areturn
LocalVariableTable:
Start End Slot Name Signature
Exception table:
from to target type
2 3 4 Class java.lang.NoSuchFieldError
5 6 7 Class java.lang.NoSuchFieldError
8 9 10 Class java.lang.NoSuchFieldError
11 12 13 Class java.lang.NoSuchFieldError
14 15 16 Class java.lang.NoSuchFieldError
private void lambda$0(java.util.zip.ZipEntry);
descriptor: (Ljava/util/zip/ZipEntry;)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 jdk.tools.jmod.JmodTask.out:Ljava/io/PrintWriter;
aload 1
invokevirtual java.util.zip.ZipEntry.getName:()Ljava/lang/String;
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/tools/jmod/JmodTask;
0 1 1 e Ljava/util/zip/ZipEntry;
private static void lambda$1(java.nio.file.Path, jdk.internal.jmod.JmodFile, jdk.internal.jmod.JmodFile$Entry);
descriptor: (Ljava/nio/file/Path;Ljdk/internal/jmod/JmodFile;Ljdk/internal/jmod/JmodFile$Entry;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=4, locals=9, args_size=3
start local 2 0: aload 2
invokevirtual jdk.internal.jmod.JmodFile$Entry.zipEntry:()Ljava/util/zip/ZipEntry;
astore 3
start local 3 1: aload 3
invokevirtual java.util.zip.ZipEntry.getName:()Ljava/lang/String;
astore 4
start local 4 2: aload 4
ldc "/"
invokevirtual java.lang.String.lastIndexOf:(Ljava/lang/String;)I
istore 5
start local 5 3: iload 5
iconst_m1
if_icmpeq 7
4: aload 0
aload 4
iconst_0
iload 5
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
invokeinterface java.nio.file.Path.resolve:(Ljava/lang/String;)Ljava/nio/file/Path;
astore 6
start local 6 5: aload 6
iconst_0
anewarray java.nio.file.LinkOption
invokestatic java.nio.file.Files.notExists:(Ljava/nio/file/Path;[Ljava/nio/file/LinkOption;)Z
ifeq 7
6: aload 6
iconst_0
anewarray java.nio.file.attribute.FileAttribute
invokestatic java.nio.file.Files.createDirectories:(Ljava/nio/file/Path;[Ljava/nio/file/attribute/FileAttribute;)Ljava/nio/file/Path;
pop
end local 6 7: StackMap locals: java.util.zip.ZipEntry java.lang.String int
StackMap stack:
aconst_null
astore 6
aconst_null
astore 7
8: aload 0
aload 4
invokeinterface java.nio.file.Path.resolve:(Ljava/lang/String;)Ljava/nio/file/Path;
iconst_0
anewarray java.nio.file.OpenOption
invokestatic java.nio.file.Files.newOutputStream:(Ljava/nio/file/Path;[Ljava/nio/file/OpenOption;)Ljava/io/OutputStream;
astore 8
start local 8 9: aload 1
aload 2
invokevirtual jdk.internal.jmod.JmodFile.getInputStream:(Ljdk/internal/jmod/JmodFile$Entry;)Ljava/io/InputStream;
aload 8
invokevirtual java.io.InputStream.transferTo:(Ljava/io/OutputStream;)J
pop2
10: aload 8
ifnull 18
aload 8
invokevirtual java.io.OutputStream.close:()V
goto 18
StackMap locals: java.nio.file.Path jdk.internal.jmod.JmodFile jdk.internal.jmod.JmodFile$Entry java.util.zip.ZipEntry java.lang.String int java.lang.Throwable java.lang.Throwable java.io.OutputStream
StackMap stack: java.lang.Throwable
11: astore 6
aload 8
ifnull 12
aload 8
invokevirtual java.io.OutputStream.close:()V
end local 8 StackMap locals:
StackMap stack:
12: aload 6
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
13: astore 7
aload 6
ifnonnull 14
aload 7
astore 6
goto 15
StackMap locals:
StackMap stack:
14: aload 6
aload 7
if_acmpeq 15
aload 6
aload 7
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
15: aload 6
athrow
end local 5 end local 4 end local 3 16: StackMap locals: java.nio.file.Path jdk.internal.jmod.JmodFile jdk.internal.jmod.JmodFile$Entry
StackMap stack: java.io.IOException
astore 3
start local 3 17: new java.io.UncheckedIOException
dup
aload 3
invokespecial java.io.UncheckedIOException.<init>:(Ljava/io/IOException;)V
athrow
end local 3 18: StackMap locals:
StackMap stack:
return
end local 2 LocalVariableTable:
Start End Slot Name Signature
0 19 2 e Ljdk/internal/jmod/JmodFile$Entry;
1 16 3 entry Ljava/util/zip/ZipEntry;
2 16 4 name Ljava/lang/String;
3 16 5 index I
5 7 6 p Ljava/nio/file/Path;
9 12 8 os Ljava/io/OutputStream;
17 18 3 x Ljava/io/IOException;
Exception table:
from to target type
9 10 11 any
8 13 13 any
0 16 16 Class java.io.IOException
private void lambda$2(jdk.tools.jmod.JmodTask$Hasher, java.lang.String, jdk.internal.module.ModuleHashes);
descriptor: (Ljdk/tools/jmod/JmodTask$Hasher;Ljava/lang/String;Ljdk/internal/module/ModuleHashes;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=6, locals=5, args_size=4
start local 0 start local 2 start local 3 0: aload 0
getfield jdk.tools.jmod.JmodTask.options:Ljdk/tools/jmod/JmodTask$Options;
getfield jdk.tools.jmod.JmodTask$Options.dryrun:Z
ifeq 6
1: aload 0
getfield jdk.tools.jmod.JmodTask.out:Ljava/io/PrintWriter;
ldc "%s%n"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 2
aastore
invokevirtual java.io.PrintWriter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintWriter;
pop
2: aload 3
invokevirtual jdk.internal.module.ModuleHashes.names:()Ljava/util/Set;
invokeinterface java.util.Set.stream:()Ljava/util/stream/Stream;
3: invokeinterface java.util.stream.Stream.sorted:()Ljava/util/stream/Stream;
4: aload 0
aload 3
invokedynamic accept(Ljdk/tools/jmod/JmodTask;Ljdk/internal/module/ModuleHashes;)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/jmod/JmodTask.lambda$3(Ljdk/internal/module/ModuleHashes;Ljava/lang/String;)V (7)
(Ljava/lang/String;)V
invokeinterface java.util.stream.Stream.forEach:(Ljava/util/function/Consumer;)V
5: goto 10
6: StackMap locals:
StackMap stack:
aload 1
aload 2
aload 3
invokevirtual jdk.tools.jmod.JmodTask$Hasher.updateModuleInfo:(Ljava/lang/String;Ljdk/internal/module/ModuleHashes;)V
7: goto 10
StackMap locals:
StackMap stack: java.io.IOException
8: astore 4
start local 4 9: new java.io.UncheckedIOException
dup
aload 4
invokespecial java.io.UncheckedIOException.<init>:(Ljava/io/IOException;)V
athrow
end local 4 10: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Ljdk/tools/jmod/JmodTask;
0 11 2 mn Ljava/lang/String;
0 11 3 hashes Ljdk/internal/module/ModuleHashes;
9 10 4 ex Ljava/io/IOException;
Exception table:
from to target type
6 7 8 Class java.io.IOException
private static java.lang.String lambda$4(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/lang/String;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual java.lang.Object.toString:()Ljava/lang/String;
getstatic java.util.Locale.ROOT:Ljava/util/Locale;
invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 e TT;
private static boolean lambda$6(java.lang.module.ModuleDescriptor$Exports);
descriptor: (Ljava/lang/module/ModuleDescriptor$Exports;)Z
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual java.lang.module.ModuleDescriptor$Exports.isQualified:()Z
ifeq 1
iconst_0
goto 2
StackMap locals:
StackMap stack:
1: iconst_1
StackMap locals:
StackMap stack: int
2: ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 e Ljava/lang/module/ModuleDescriptor$Exports;
private static void lambda$7(java.lang.StringBuilder, java.lang.module.ModuleDescriptor$Exports);
descriptor: (Ljava/lang/StringBuilder;Ljava/lang/module/ModuleDescriptor$Exports;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
start local 1 0: aload 0
ldc "exports "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual java.lang.module.ModuleDescriptor$Exports.source:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
1: aload 1
invokevirtual java.lang.module.ModuleDescriptor$Exports.modifiers:()Ljava/util/Set;
invokestatic jdk.tools.jmod.JmodTask.toString:(Ljava/util/Collection;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
return
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 2 1 e Ljava/lang/module/ModuleDescriptor$Exports;
private static void lambda$8(java.lang.StringBuilder, java.lang.module.ModuleDescriptor$Requires);
descriptor: (Ljava/lang/StringBuilder;Ljava/lang/module/ModuleDescriptor$Requires;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
start local 1 0: aload 0
ldc "requires "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual java.lang.module.ModuleDescriptor$Requires.name:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
1: aload 1
invokevirtual java.lang.module.ModuleDescriptor$Requires.modifiers:()Ljava/util/Set;
invokestatic jdk.tools.jmod.JmodTask.toString:(Ljava/util/Collection;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
return
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 2 1 r Ljava/lang/module/ModuleDescriptor$Requires;
private static void lambda$9(java.lang.StringBuilder, java.lang.String);
descriptor: (Ljava/lang/StringBuilder;Ljava/lang/String;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
start local 1 0: aload 0
ldc "uses "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
return
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 1 1 s Ljava/lang/String;
private static void lambda$11(java.lang.StringBuilder, java.lang.module.ModuleDescriptor$Provides);
descriptor: (Ljava/lang/StringBuilder;Ljava/lang/module/ModuleDescriptor$Provides;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
start local 1 0: aload 0
ldc "provides "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual java.lang.module.ModuleDescriptor$Provides.service:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
1: ldc " with"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
2: aload 1
invokevirtual java.lang.module.ModuleDescriptor$Provides.providers:()Ljava/util/List;
invokestatic jdk.tools.jmod.JmodTask.toString:(Ljava/util/Collection;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
3: ldc "\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
return
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 4 1 p Ljava/lang/module/ModuleDescriptor$Provides;
private static void lambda$14(java.lang.StringBuilder, java.lang.module.ModuleDescriptor$Exports);
descriptor: (Ljava/lang/StringBuilder;Ljava/lang/module/ModuleDescriptor$Exports;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
start local 1 0: aload 0
ldc "qualified exports "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual java.lang.module.ModuleDescriptor$Exports.source:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
1: ldc " to"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual java.lang.module.ModuleDescriptor$Exports.targets:()Ljava/util/Set;
invokestatic jdk.tools.jmod.JmodTask.toString:(Ljava/util/Collection;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
2: ldc "\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
return
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 3 1 e Ljava/lang/module/ModuleDescriptor$Exports;
private static boolean lambda$16(java.lang.module.ModuleDescriptor$Opens);
descriptor: (Ljava/lang/module/ModuleDescriptor$Opens;)Z
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual java.lang.module.ModuleDescriptor$Opens.isQualified:()Z
ifeq 1
iconst_0
goto 2
StackMap locals:
StackMap stack:
1: iconst_1
StackMap locals:
StackMap stack: int
2: ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 o Ljava/lang/module/ModuleDescriptor$Opens;
private static void lambda$17(java.lang.StringBuilder, java.lang.module.ModuleDescriptor$Opens);
descriptor: (Ljava/lang/StringBuilder;Ljava/lang/module/ModuleDescriptor$Opens;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
start local 1 0: aload 0
ldc "opens "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual java.lang.module.ModuleDescriptor$Opens.source:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
1: aload 1
invokevirtual java.lang.module.ModuleDescriptor$Opens.modifiers:()Ljava/util/Set;
invokestatic jdk.tools.jmod.JmodTask.toString:(Ljava/util/Collection;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
2: ldc "\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
return
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 3 1 o Ljava/lang/module/ModuleDescriptor$Opens;
private static void lambda$20(java.lang.StringBuilder, java.lang.module.ModuleDescriptor$Opens);
descriptor: (Ljava/lang/StringBuilder;Ljava/lang/module/ModuleDescriptor$Opens;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
start local 1 0: aload 0
ldc "qualified opens "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual java.lang.module.ModuleDescriptor$Opens.source:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
1: aload 1
invokevirtual java.lang.module.ModuleDescriptor$Opens.modifiers:()Ljava/util/Set;
invokestatic jdk.tools.jmod.JmodTask.toString:(Ljava/util/Collection;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
2: ldc " to"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual java.lang.module.ModuleDescriptor$Opens.targets:()Ljava/util/Set;
invokestatic jdk.tools.jmod.JmodTask.toString:(Ljava/util/Collection;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
3: ldc "\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
return
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 4 1 o Ljava/lang/module/ModuleDescriptor$Opens;
private static void lambda$25(java.lang.StringBuilder, java.lang.String);
descriptor: (Ljava/lang/StringBuilder;Ljava/lang/String;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
start local 1 0: aload 0
ldc "contains "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
return
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 1 1 p Ljava/lang/String;
private static void lambda$26(java.lang.StringBuilder, java.lang.String);
descriptor: (Ljava/lang/StringBuilder;Ljava/lang/String;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
start local 1 0: aload 0
ldc "main-class "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
return
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 1 1 v Ljava/lang/String;
private void lambda$27(java.lang.StringBuilder, jdk.internal.module.ModuleHashes, java.lang.String);
descriptor: (Ljava/lang/StringBuilder;Ljdk/internal/module/ModuleHashes;Ljava/lang/String;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=4, locals=4, args_size=4
start local 0 start local 3 0: aload 1
ldc "hashes "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
1: aload 2
invokevirtual jdk.internal.module.ModuleHashes.algorithm:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
2: aload 0
aload 2
aload 3
invokevirtual jdk.internal.module.ModuleHashes.hashFor:(Ljava/lang/String;)[B
invokevirtual jdk.tools.jmod.JmodTask.toHex:([B)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
3: ldc "\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
return
end local 3 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljdk/tools/jmod/JmodTask;
0 4 3 mod Ljava/lang/String;
private void lambda$3(jdk.internal.module.ModuleHashes, java.lang.String);
descriptor: (Ljdk/internal/module/ModuleHashes;Ljava/lang/String;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=8, locals=3, args_size=3
start local 0 start local 2 0: aload 0
getfield jdk.tools.jmod.JmodTask.out:Ljava/io/PrintWriter;
ldc " hashes %s %s %s%n"
iconst_3
anewarray java.lang.Object
dup
iconst_0
1: aload 2
aastore
dup
iconst_1
aload 1
invokevirtual jdk.internal.module.ModuleHashes.algorithm:()Ljava/lang/String;
aastore
dup
iconst_2
aload 0
aload 1
aload 2
invokevirtual jdk.internal.module.ModuleHashes.hashFor:(Ljava/lang/String;)[B
invokevirtual jdk.tools.jmod.JmodTask.toHex:([B)Ljava/lang/String;
aastore
2: invokevirtual java.io.PrintWriter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintWriter;
3: return
end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljdk/tools/jmod/JmodTask;
0 4 2 name Ljava/lang/String;
}
SourceFile: "JmodTask.java"
NestMembers:
jdk.tools.jmod.JmodTask$AbstractPathConverter jdk.tools.jmod.JmodTask$ClassPathConverter jdk.tools.jmod.JmodTask$CommandException jdk.tools.jmod.JmodTask$DirPathConverter jdk.tools.jmod.JmodTask$ExtractDirPathConverter jdk.tools.jmod.JmodTask$Hasher jdk.tools.jmod.JmodTask$JmodFileWriter jdk.tools.jmod.JmodTask$JmodFileWriter$1 jdk.tools.jmod.JmodTask$JmodFileWriter$2 jdk.tools.jmod.JmodTask$JmodFileWriter$3 jdk.tools.jmod.JmodTask$JmodFileWriter$JarEntryConsumer jdk.tools.jmod.JmodTask$JmodHelpFormatter jdk.tools.jmod.JmodTask$JmodHelpFormatter$1 jdk.tools.jmod.JmodTask$Mode jdk.tools.jmod.JmodTask$ModuleVersionConverter jdk.tools.jmod.JmodTask$Options jdk.tools.jmod.JmodTask$PathMatcherConverter jdk.tools.jmod.JmodTask$PatternConverter jdk.tools.jmod.JmodTask$ResourceBundleHelper jdk.tools.jmod.JmodTask$WarnIfResolvedReasonConverter
InnerClasses:
public final Version = java.lang.Runtime$Version of java.lang.Runtime
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
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 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
public Entry = jdk.internal.jmod.JmodFile$Entry of jdk.internal.jmod.JmodFile
public final Section = jdk.internal.jmod.JmodFile$Section of jdk.internal.jmod.JmodFile
public final Attributes = jdk.internal.module.ModuleInfo$Attributes of jdk.internal.module.ModuleInfo
abstract AbstractPathConverter = jdk.tools.jmod.JmodTask$AbstractPathConverter of jdk.tools.jmod.JmodTask
ClassPathConverter = jdk.tools.jmod.JmodTask$ClassPathConverter of jdk.tools.jmod.JmodTask
CommandException = jdk.tools.jmod.JmodTask$CommandException of jdk.tools.jmod.JmodTask
DirPathConverter = jdk.tools.jmod.JmodTask$DirPathConverter of jdk.tools.jmod.JmodTask
ExtractDirPathConverter = jdk.tools.jmod.JmodTask$ExtractDirPathConverter of jdk.tools.jmod.JmodTask
private Hasher = jdk.tools.jmod.JmodTask$Hasher of jdk.tools.jmod.JmodTask
private JmodFileWriter = jdk.tools.jmod.JmodTask$JmodFileWriter of jdk.tools.jmod.JmodTask
private final JmodHelpFormatter = jdk.tools.jmod.JmodTask$JmodHelpFormatter of jdk.tools.jmod.JmodTask
final Mode = jdk.tools.jmod.JmodTask$Mode of jdk.tools.jmod.JmodTask
ModuleVersionConverter = jdk.tools.jmod.JmodTask$ModuleVersionConverter of jdk.tools.jmod.JmodTask
Options = jdk.tools.jmod.JmodTask$Options of jdk.tools.jmod.JmodTask
PathMatcherConverter = jdk.tools.jmod.JmodTask$PathMatcherConverter of jdk.tools.jmod.JmodTask
PatternConverter = jdk.tools.jmod.JmodTask$PatternConverter of jdk.tools.jmod.JmodTask
private ResourceBundleHelper = jdk.tools.jmod.JmodTask$ResourceBundleHelper of jdk.tools.jmod.JmodTask
WarnIfResolvedReasonConverter = jdk.tools.jmod.JmodTask$WarnIfResolvedReasonConverter of jdk.tools.jmod.JmodTask