class com.sun.tools.javac.platform.JDKPlatformProvider$PlatformDescriptionImpl implements com.sun.tools.javac.platform.PlatformDescription
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: com.sun.tools.javac.platform.JDKPlatformProvider$PlatformDescriptionImpl
super_class: java.lang.Object
{
private final java.util.Map<java.nio.file.Path, java.nio.file.FileSystem> ctSym2FileSystem;
descriptor: Ljava/util/Map;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Map<Ljava/nio/file/Path;Ljava/nio/file/FileSystem;>;
private final java.lang.String sourceVersion;
descriptor: Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.lang.String ctSymVersion;
descriptor: Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
void <init>(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0000)
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putfield com.sun.tools.javac.platform.JDKPlatformProvider$PlatformDescriptionImpl.ctSym2FileSystem:Ljava/util/Map;
2: aload 0
aload 1
putfield com.sun.tools.javac.platform.JDKPlatformProvider$PlatformDescriptionImpl.sourceVersion:Ljava/lang/String;
3: aload 0
4: aload 1
invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
invokestatic java.lang.Integer.toHexString:(I)Ljava/lang/String;
invokestatic com.sun.tools.javac.util.StringUtils.toUpperCase:(Ljava/lang/String;)Ljava/lang/String;
5: putfield com.sun.tools.javac.platform.JDKPlatformProvider$PlatformDescriptionImpl.ctSymVersion:Ljava/lang/String;
6: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/sun/tools/javac/platform/JDKPlatformProvider$PlatformDescriptionImpl;
0 7 1 sourceVersion Ljava/lang/String;
MethodParameters:
Name Flags
sourceVersion
public javax.tools.JavaFileManager getFileManager();
descriptor: ()Ljavax/tools/JavaFileManager;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=21, args_size=1
start local 0 0: new com.sun.tools.javac.util.Context
dup
invokespecial com.sun.tools.javac.util.Context.<init>:()V
astore 1
start local 1 1: new java.io.PrintWriter
dup
getstatic java.lang.System.err:Ljava/io/PrintStream;
iconst_1
invokespecial java.io.PrintWriter.<init>:(Ljava/io/OutputStream;Z)V
astore 2
start local 2 2: aload 1
getstatic com.sun.tools.javac.util.Log.errKey:Lcom/sun/tools/javac/util/Context$Key;
aload 2
invokevirtual com.sun.tools.javac.util.Context.put:(Lcom/sun/tools/javac/util/Context$Key;Ljava/lang/Object;)V
3: aload 1
invokestatic com.sun.tools.javac.file.CacheFSInfo.preRegister:(Lcom/sun/tools/javac/util/Context;)V
4: new com.sun.tools.javac.platform.JDKPlatformProvider$PlatformDescriptionImpl$1
dup
aload 0
aload 1
iconst_1
aconst_null
invokespecial com.sun.tools.javac.platform.JDKPlatformProvider$PlatformDescriptionImpl$1.<init>:(Lcom/sun/tools/javac/platform/JDKPlatformProvider$PlatformDescriptionImpl;Lcom/sun/tools/javac/util/Context;ZLjava/nio/charset/Charset;)V
astore 3
start local 3 5: invokestatic com.sun.tools.javac.platform.JDKPlatformProvider.findCtSym:()Ljava/nio/file/Path;
astore 4
start local 4 6: aload 4
iconst_0
anewarray java.nio.file.LinkOption
invokestatic java.nio.file.Files.exists:(Ljava/nio/file/Path;[Ljava/nio/file/LinkOption;)Z
ifeq 99
7: aload 0
getfield com.sun.tools.javac.platform.JDKPlatformProvider$PlatformDescriptionImpl.ctSym2FileSystem:Ljava/util/Map;
aload 4
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.nio.file.FileSystem
astore 5
start local 5 8: aload 5
ifnonnull 10
9: aload 0
getfield com.sun.tools.javac.platform.JDKPlatformProvider$PlatformDescriptionImpl.ctSym2FileSystem:Ljava/util/Map;
aload 4
aload 4
aconst_null
invokestatic java.nio.file.FileSystems.newFileSystem:(Ljava/nio/file/Path;Ljava/lang/ClassLoader;)Ljava/nio/file/FileSystem;
dup
astore 5
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
10: StackMap locals: com.sun.tools.javac.platform.JDKPlatformProvider$PlatformDescriptionImpl com.sun.tools.javac.util.Context java.io.PrintWriter com.sun.tools.javac.file.JavacFileManager java.nio.file.Path java.nio.file.FileSystem
StackMap stack:
aload 5
invokevirtual java.nio.file.FileSystem.getRootDirectories:()Ljava/lang/Iterable;
invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.nio.file.Path
astore 6
start local 6 11: getstatic com.sun.tools.javac.code.Source$Feature.MODULES:Lcom/sun/tools/javac/code/Source$Feature;
aload 0
getfield com.sun.tools.javac.platform.JDKPlatformProvider$PlatformDescriptionImpl.sourceVersion:Ljava/lang/String;
invokestatic com.sun.tools.javac.code.Source.lookup:(Ljava/lang/String;)Lcom/sun/tools/javac/code/Source;
invokevirtual com.sun.tools.javac.code.Source$Feature.allowedInSource:(Lcom/sun/tools/javac/code/Source;)Z
12: istore 7
start local 7 13: aload 6
aload 0
getfield com.sun.tools.javac.platform.JDKPlatformProvider$PlatformDescriptionImpl.ctSymVersion:Ljava/lang/String;
invokeinterface java.nio.file.Path.resolve:(Ljava/lang/String;)Ljava/nio/file/Path;
ldc "system-modules"
invokeinterface java.nio.file.Path.resolve:(Ljava/lang/String;)Ljava/nio/file/Path;
astore 8
start local 8 14: ldc "UTF-8"
invokestatic java.nio.charset.Charset.forName:(Ljava/lang/String;)Ljava/nio/charset/Charset;
astore 9
start local 9 15: iload 7
ifne 44
16: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 10
start local 10 17: aconst_null
astore 11
aconst_null
astore 12
18: aload 6
invokestatic java.nio.file.Files.newDirectoryStream:(Ljava/nio/file/Path;)Ljava/nio/file/DirectoryStream;
astore 13
start local 13 19: aload 13
invokeinterface java.nio.file.DirectoryStream.iterator:()Ljava/util/Iterator;
astore 15
goto 35
StackMap locals: com.sun.tools.javac.platform.JDKPlatformProvider$PlatformDescriptionImpl com.sun.tools.javac.util.Context java.io.PrintWriter com.sun.tools.javac.file.JavacFileManager java.nio.file.Path java.nio.file.FileSystem java.nio.file.Path int java.nio.file.Path java.nio.charset.Charset java.util.List java.lang.Throwable java.lang.Throwable java.nio.file.DirectoryStream top java.util.Iterator
StackMap stack:
20: aload 15
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.nio.file.Path
astore 14
start local 14 21: aload 14
invokeinterface java.nio.file.Path.getFileName:()Ljava/nio/file/Path;
invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
aload 0
getfield com.sun.tools.javac.platform.JDKPlatformProvider$PlatformDescriptionImpl.ctSymVersion:Ljava/lang/String;
invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
ifeq 35
22: aload 14
invokeinterface java.nio.file.Path.getFileName:()Ljava/nio/file/Path;
invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
ldc "-"
invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
ifne 35
23: aconst_null
astore 16
aconst_null
astore 17
24: aload 14
invokestatic java.nio.file.Files.newDirectoryStream:(Ljava/nio/file/Path;)Ljava/nio/file/DirectoryStream;
astore 18
start local 18 25: aload 18
invokeinterface java.nio.file.DirectoryStream.iterator:()Ljava/util/Iterator;
astore 20
goto 28
StackMap locals: com.sun.tools.javac.platform.JDKPlatformProvider$PlatformDescriptionImpl com.sun.tools.javac.util.Context java.io.PrintWriter com.sun.tools.javac.file.JavacFileManager java.nio.file.Path java.nio.file.FileSystem java.nio.file.Path int java.nio.file.Path java.nio.charset.Charset java.util.List java.lang.Throwable java.lang.Throwable java.nio.file.DirectoryStream java.nio.file.Path java.util.Iterator java.lang.Throwable java.lang.Throwable java.nio.file.DirectoryStream top java.util.Iterator
StackMap stack:
26: aload 20
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.nio.file.Path
astore 19
start local 19 27: aload 10
aload 19
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 19 28: StackMap locals:
StackMap stack:
aload 20
invokeinterface java.util.Iterator.hasNext:()Z
ifne 26
29: aload 18
ifnull 35
aload 18
invokeinterface java.nio.file.DirectoryStream.close:()V
goto 35
StackMap locals: com.sun.tools.javac.platform.JDKPlatformProvider$PlatformDescriptionImpl com.sun.tools.javac.util.Context java.io.PrintWriter com.sun.tools.javac.file.JavacFileManager java.nio.file.Path java.nio.file.FileSystem java.nio.file.Path int java.nio.file.Path java.nio.charset.Charset java.util.List java.lang.Throwable java.lang.Throwable java.nio.file.DirectoryStream java.nio.file.Path java.util.Iterator java.lang.Throwable java.lang.Throwable java.nio.file.DirectoryStream
StackMap stack: java.lang.Throwable
30: astore 16
aload 18
ifnull 31
aload 18
invokeinterface java.nio.file.DirectoryStream.close:()V
end local 18 StackMap locals:
StackMap stack:
31: aload 16
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
32: astore 17
aload 16
ifnonnull 33
aload 17
astore 16
goto 34
StackMap locals:
StackMap stack:
33: aload 16
aload 17
if_acmpeq 34
aload 16
aload 17
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
34: aload 16
athrow
end local 14 35: StackMap locals: com.sun.tools.javac.platform.JDKPlatformProvider$PlatformDescriptionImpl com.sun.tools.javac.util.Context java.io.PrintWriter com.sun.tools.javac.file.JavacFileManager java.nio.file.Path java.nio.file.FileSystem java.nio.file.Path int java.nio.file.Path java.nio.charset.Charset java.util.List java.lang.Throwable java.lang.Throwable java.nio.file.DirectoryStream top java.util.Iterator
StackMap stack:
aload 15
invokeinterface java.util.Iterator.hasNext:()Z
ifne 20
36: aload 13
ifnull 42
aload 13
invokeinterface java.nio.file.DirectoryStream.close:()V
goto 42
StackMap locals: com.sun.tools.javac.platform.JDKPlatformProvider$PlatformDescriptionImpl com.sun.tools.javac.util.Context java.io.PrintWriter com.sun.tools.javac.file.JavacFileManager java.nio.file.Path java.nio.file.FileSystem java.nio.file.Path int java.nio.file.Path java.nio.charset.Charset java.util.List java.lang.Throwable java.lang.Throwable java.nio.file.DirectoryStream
StackMap stack: java.lang.Throwable
37: astore 11
aload 13
ifnull 38
aload 13
invokeinterface java.nio.file.DirectoryStream.close:()V
end local 13 StackMap locals:
StackMap stack:
38: aload 11
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
39: astore 12
aload 11
ifnonnull 40
aload 12
astore 11
goto 41
StackMap locals:
StackMap stack:
40: aload 11
aload 12
if_acmpeq 41
aload 11
aload 12
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
41: aload 11
athrow
42: StackMap locals:
StackMap stack:
aload 3
getstatic javax.tools.StandardLocation.PLATFORM_CLASS_PATH:Ljavax/tools/StandardLocation;
aload 10
invokevirtual com.sun.tools.javac.file.JavacFileManager.setLocationFromPaths:(Ljavax/tools/JavaFileManager$Location;Ljava/util/Collection;)V
end local 10 43: goto 95
StackMap locals:
StackMap stack:
44: aload 8
iconst_0
anewarray java.nio.file.LinkOption
invokestatic java.nio.file.Files.isRegularFile:(Ljava/nio/file/Path;[Ljava/nio/file/LinkOption;)Z
ifeq 61
45: aload 3
ldc "--system"
iconst_1
anewarray java.lang.String
dup
iconst_0
ldc "none"
aastore
invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
invokevirtual com.sun.tools.javac.file.JavacFileManager.handleOption:(Ljava/lang/String;Ljava/util/Iterator;)Z
pop
46: ldc "jrt:/"
invokestatic java.net.URI.create:(Ljava/lang/String;)Ljava/net/URI;
invokestatic java.nio.file.FileSystems.getFileSystem:(Ljava/net/URI;)Ljava/nio/file/FileSystem;
47: ldc "modules"
iconst_0
anewarray java.lang.String
invokevirtual java.nio.file.FileSystem.getPath:(Ljava/lang/String;[Ljava/lang/String;)Ljava/nio/file/Path;
48: astore 10
start local 10 49: aconst_null
astore 11
aconst_null
astore 12
50: aload 8
aload 9
invokestatic java.nio.file.Files.lines:(Ljava/nio/file/Path;Ljava/nio/charset/Charset;)Ljava/util/stream/Stream;
51: astore 13
start local 13 52: aload 13
aload 10
invokedynamic apply(Ljava/nio/file/Path;)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;
com/sun/tools/javac/platform/JDKPlatformProvider$PlatformDescriptionImpl.lambda$0(Ljava/nio/file/Path;Ljava/lang/String;)Ljava/nio/file/Path; (6)
(Ljava/lang/String;)Ljava/nio/file/Path;
invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
53: 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
com/sun/tools/javac/platform/JDKPlatformProvider$PlatformDescriptionImpl.lambda$1(Ljava/nio/file/Path;)Z (6)
(Ljava/nio/file/Path;)Z
invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
54: aload 3
invokedynamic accept(Lcom/sun/tools/javac/file/JavacFileManager;)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
com/sun/tools/javac/platform/JDKPlatformProvider$PlatformDescriptionImpl.lambda$2(Lcom/sun/tools/javac/file/JavacFileManager;Ljava/nio/file/Path;)V (6)
(Ljava/nio/file/Path;)V
invokeinterface java.util.stream.Stream.forEach:(Ljava/util/function/Consumer;)V
55: aload 13
ifnull 95
aload 13
invokeinterface java.util.stream.Stream.close:()V
goto 95
StackMap locals: com.sun.tools.javac.platform.JDKPlatformProvider$PlatformDescriptionImpl com.sun.tools.javac.util.Context java.io.PrintWriter com.sun.tools.javac.file.JavacFileManager java.nio.file.Path java.nio.file.FileSystem java.nio.file.Path int java.nio.file.Path java.nio.charset.Charset java.nio.file.Path java.lang.Throwable java.lang.Throwable java.util.stream.Stream
StackMap stack: java.lang.Throwable
56: astore 11
aload 13
ifnull 57
aload 13
invokeinterface java.util.stream.Stream.close:()V
end local 13 StackMap locals:
StackMap stack:
57: aload 11
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
58: astore 12
aload 11
ifnonnull 59
aload 12
astore 11
goto 60
StackMap locals:
StackMap stack:
59: aload 11
aload 12
if_acmpeq 60
aload 11
aload 12
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
60: aload 11
athrow
end local 10 61: StackMap locals:
StackMap stack:
new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
astore 10
start local 10 62: aconst_null
astore 11
aconst_null
astore 12
63: aload 6
invokestatic java.nio.file.Files.newDirectoryStream:(Ljava/nio/file/Path;)Ljava/nio/file/DirectoryStream;
astore 13
start local 13 64: aload 13
invokeinterface java.nio.file.DirectoryStream.iterator:()Ljava/util/Iterator;
astore 15
goto 80
StackMap locals: com.sun.tools.javac.platform.JDKPlatformProvider$PlatformDescriptionImpl com.sun.tools.javac.util.Context java.io.PrintWriter com.sun.tools.javac.file.JavacFileManager java.nio.file.Path java.nio.file.FileSystem java.nio.file.Path int java.nio.file.Path java.nio.charset.Charset java.util.Map java.lang.Throwable java.lang.Throwable java.nio.file.DirectoryStream top java.util.Iterator
StackMap stack:
65: aload 15
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.nio.file.Path
astore 14
start local 14 66: aload 14
invokeinterface java.nio.file.Path.getFileName:()Ljava/nio/file/Path;
invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
aload 0
getfield com.sun.tools.javac.platform.JDKPlatformProvider$PlatformDescriptionImpl.ctSymVersion:Ljava/lang/String;
invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
ifeq 80
67: aload 14
invokeinterface java.nio.file.Path.getFileName:()Ljava/nio/file/Path;
invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
ldc "-"
invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
ifne 80
68: aconst_null
astore 16
aconst_null
astore 17
69: aload 14
invokestatic java.nio.file.Files.newDirectoryStream:(Ljava/nio/file/Path;)Ljava/nio/file/DirectoryStream;
astore 18
start local 18 70: aload 18
invokeinterface java.nio.file.DirectoryStream.iterator:()Ljava/util/Iterator;
astore 20
goto 73
StackMap locals: com.sun.tools.javac.platform.JDKPlatformProvider$PlatformDescriptionImpl com.sun.tools.javac.util.Context java.io.PrintWriter com.sun.tools.javac.file.JavacFileManager java.nio.file.Path java.nio.file.FileSystem java.nio.file.Path int java.nio.file.Path java.nio.charset.Charset java.util.Map java.lang.Throwable java.lang.Throwable java.nio.file.DirectoryStream java.nio.file.Path java.util.Iterator java.lang.Throwable java.lang.Throwable java.nio.file.DirectoryStream top java.util.Iterator
StackMap stack:
71: aload 20
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.nio.file.Path
astore 19
start local 19 72: aload 10
aload 19
invokeinterface java.nio.file.Path.getFileName:()Ljava/nio/file/Path;
invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
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;
com/sun/tools/javac/platform/JDKPlatformProvider$PlatformDescriptionImpl.lambda$3(Ljava/lang/String;)Ljava/util/List; (6)
(Ljava/lang/String;)Ljava/util/List;
invokeinterface java.util.Map.computeIfAbsent:(Ljava/lang/Object;Ljava/util/function/Function;)Ljava/lang/Object;
checkcast java.util.List
aload 19
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 19 73: StackMap locals:
StackMap stack:
aload 20
invokeinterface java.util.Iterator.hasNext:()Z
ifne 71
74: aload 18
ifnull 80
aload 18
invokeinterface java.nio.file.DirectoryStream.close:()V
goto 80
StackMap locals: com.sun.tools.javac.platform.JDKPlatformProvider$PlatformDescriptionImpl com.sun.tools.javac.util.Context java.io.PrintWriter com.sun.tools.javac.file.JavacFileManager java.nio.file.Path java.nio.file.FileSystem java.nio.file.Path int java.nio.file.Path java.nio.charset.Charset java.util.Map java.lang.Throwable java.lang.Throwable java.nio.file.DirectoryStream java.nio.file.Path java.util.Iterator java.lang.Throwable java.lang.Throwable java.nio.file.DirectoryStream
StackMap stack: java.lang.Throwable
75: astore 16
aload 18
ifnull 76
aload 18
invokeinterface java.nio.file.DirectoryStream.close:()V
end local 18 StackMap locals:
StackMap stack:
76: aload 16
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
77: astore 17
aload 16
ifnonnull 78
aload 17
astore 16
goto 79
StackMap locals:
StackMap stack:
78: aload 16
aload 17
if_acmpeq 79
aload 16
aload 17
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
79: aload 16
athrow
end local 14 80: StackMap locals: com.sun.tools.javac.platform.JDKPlatformProvider$PlatformDescriptionImpl com.sun.tools.javac.util.Context java.io.PrintWriter com.sun.tools.javac.file.JavacFileManager java.nio.file.Path java.nio.file.FileSystem java.nio.file.Path int java.nio.file.Path java.nio.charset.Charset java.util.Map java.lang.Throwable java.lang.Throwable java.nio.file.DirectoryStream top java.util.Iterator
StackMap stack:
aload 15
invokeinterface java.util.Iterator.hasNext:()Z
ifne 65
81: aload 13
ifnull 87
aload 13
invokeinterface java.nio.file.DirectoryStream.close:()V
goto 87
StackMap locals: com.sun.tools.javac.platform.JDKPlatformProvider$PlatformDescriptionImpl com.sun.tools.javac.util.Context java.io.PrintWriter com.sun.tools.javac.file.JavacFileManager java.nio.file.Path java.nio.file.FileSystem java.nio.file.Path int java.nio.file.Path java.nio.charset.Charset java.util.Map java.lang.Throwable java.lang.Throwable java.nio.file.DirectoryStream
StackMap stack: java.lang.Throwable
82: astore 11
aload 13
ifnull 83
aload 13
invokeinterface java.nio.file.DirectoryStream.close:()V
end local 13 StackMap locals:
StackMap stack:
83: aload 11
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
84: astore 12
aload 11
ifnonnull 85
aload 12
astore 11
goto 86
StackMap locals:
StackMap stack:
85: aload 11
aload 12
if_acmpeq 86
aload 11
aload 12
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
86: aload 11
athrow
87: StackMap locals:
StackMap stack:
aload 3
ldc "--system"
iconst_1
anewarray java.lang.String
dup
iconst_0
ldc "none"
aastore
invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
invokevirtual com.sun.tools.javac.file.JavacFileManager.handleOption:(Ljava/lang/String;Ljava/util/Iterator;)Z
pop
88: aload 10
invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 12
goto 94
StackMap locals: com.sun.tools.javac.platform.JDKPlatformProvider$PlatformDescriptionImpl com.sun.tools.javac.util.Context java.io.PrintWriter com.sun.tools.javac.file.JavacFileManager java.nio.file.Path java.nio.file.FileSystem java.nio.file.Path int java.nio.file.Path java.nio.charset.Charset java.util.Map top java.util.Iterator
StackMap stack:
89: aload 12
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.util.Map$Entry
astore 11
start local 11 90: aload 3
getstatic javax.tools.StandardLocation.SYSTEM_MODULES:Ljavax/tools/StandardLocation;
91: aload 11
invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
checkcast java.lang.String
92: aload 11
invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
checkcast java.util.Collection
93: invokevirtual com.sun.tools.javac.file.JavacFileManager.setLocationForModule:(Ljavax/tools/JavaFileManager$Location;Ljava/lang/String;Ljava/util/Collection;)V
end local 11 94: StackMap locals:
StackMap stack:
aload 12
invokeinterface java.util.Iterator.hasNext:()Z
ifne 89
end local 10 95: StackMap locals: com.sun.tools.javac.platform.JDKPlatformProvider$PlatformDescriptionImpl com.sun.tools.javac.util.Context java.io.PrintWriter com.sun.tools.javac.file.JavacFileManager java.nio.file.Path java.nio.file.FileSystem java.nio.file.Path int java.nio.file.Path java.nio.charset.Charset
StackMap stack:
aload 3
96: areturn
end local 9 end local 8 end local 7 end local 6 end local 5 97: StackMap locals: com.sun.tools.javac.platform.JDKPlatformProvider$PlatformDescriptionImpl com.sun.tools.javac.util.Context java.io.PrintWriter com.sun.tools.javac.file.JavacFileManager java.nio.file.Path
StackMap stack: java.io.IOException
astore 5
start local 5 98: new java.lang.IllegalStateException
dup
aload 5
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 5 99: StackMap locals:
StackMap stack:
new java.lang.IllegalStateException
dup
ldc "Cannot find ct.sym!"
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 100 0 this Lcom/sun/tools/javac/platform/JDKPlatformProvider$PlatformDescriptionImpl;
1 100 1 context Lcom/sun/tools/javac/util/Context;
2 100 2 pw Ljava/io/PrintWriter;
5 100 3 fm Lcom/sun/tools/javac/file/JavacFileManager;
6 100 4 file Ljava/nio/file/Path;
8 97 5 fs Ljava/nio/file/FileSystem;
11 97 6 root Ljava/nio/file/Path;
13 97 7 hasModules Z
14 97 8 systemModules Ljava/nio/file/Path;
15 97 9 utf8 Ljava/nio/charset/Charset;
17 43 10 paths Ljava/util/List<Ljava/nio/file/Path;>;
19 38 13 dir Ljava/nio/file/DirectoryStream<Ljava/nio/file/Path;>;
21 35 14 section Ljava/nio/file/Path;
25 31 18 modules Ljava/nio/file/DirectoryStream<Ljava/nio/file/Path;>;
27 28 19 module Ljava/nio/file/Path;
49 61 10 jrtModules Ljava/nio/file/Path;
52 57 13 lines Ljava/util/stream/Stream<Ljava/lang/String;>;
62 95 10 module2Paths Ljava/util/Map<Ljava/lang/String;Ljava/util/List<Ljava/nio/file/Path;>;>;
64 83 13 dir Ljava/nio/file/DirectoryStream<Ljava/nio/file/Path;>;
66 80 14 section Ljava/nio/file/Path;
70 76 18 modules Ljava/nio/file/DirectoryStream<Ljava/nio/file/Path;>;
72 73 19 module Ljava/nio/file/Path;
90 94 11 e Ljava/util/Map$Entry<Ljava/lang/String;Ljava/util/List<Ljava/nio/file/Path;>;>;
98 99 5 ex Ljava/io/IOException;
Exception table:
from to target type
25 29 30 any
24 32 32 any
19 36 37 any
18 39 39 any
52 55 56 any
50 58 58 any
70 74 75 any
69 77 77 any
64 81 82 any
63 84 84 any
7 96 97 Class java.io.IOException
private static void setModule(javax.tools.StandardJavaFileManager, java.nio.file.Path);
descriptor: (Ljavax/tools/StandardJavaFileManager;Ljava/nio/file/Path;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getstatic javax.tools.StandardLocation.SYSTEM_MODULES:Ljavax/tools/StandardLocation;
1: aload 1
invokeinterface java.nio.file.Path.getFileName:()Ljava/nio/file/Path;
invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
2: aload 1
invokestatic java.util.Collections.singleton:(Ljava/lang/Object;)Ljava/util/Set;
3: invokeinterface javax.tools.StandardJavaFileManager.setLocationForModule:(Ljavax/tools/JavaFileManager$Location;Ljava/lang/String;Ljava/util/Collection;)V
4: goto 7
StackMap locals:
StackMap stack: java.io.IOException
5: astore 2
start local 2 6: new java.lang.IllegalStateException
dup
aload 2
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 2 7: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 fm Ljavax/tools/StandardJavaFileManager;
0 8 1 mod Ljava/nio/file/Path;
6 7 2 ex Ljava/io/IOException;
Exception table:
from to target type
0 4 5 Class java.io.IOException
MethodParameters:
Name Flags
fm
mod
public java.lang.String getSourceVersion();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.tools.javac.platform.JDKPlatformProvider$PlatformDescriptionImpl.sourceVersion:Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/javac/platform/JDKPlatformProvider$PlatformDescriptionImpl;
public java.lang.String getTargetVersion();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.tools.javac.platform.JDKPlatformProvider$PlatformDescriptionImpl.sourceVersion:Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/javac/platform/JDKPlatformProvider$PlatformDescriptionImpl;
public java.util.List<com.sun.tools.javac.platform.PlatformDescription$PluginInfo<javax.annotation.processing.Processor>> getAnnotationProcessors();
descriptor: ()Ljava/util/List;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: invokestatic java.util.Collections.emptyList:()Ljava/util/List;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/javac/platform/JDKPlatformProvider$PlatformDescriptionImpl;
Signature: ()Ljava/util/List<Lcom/sun/tools/javac/platform/PlatformDescription$PluginInfo<Ljavax/annotation/processing/Processor;>;>;
public java.util.List<com.sun.tools.javac.platform.PlatformDescription$PluginInfo<com.sun.source.util.Plugin>> getPlugins();
descriptor: ()Ljava/util/List;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: invokestatic java.util.Collections.emptyList:()Ljava/util/List;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/javac/platform/JDKPlatformProvider$PlatformDescriptionImpl;
Signature: ()Ljava/util/List<Lcom/sun/tools/javac/platform/PlatformDescription$PluginInfo<Lcom/sun/source/util/Plugin;>;>;
public java.util.List<java.lang.String> getAdditionalOptions();
descriptor: ()Ljava/util/List;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: invokestatic java.util.Collections.emptyList:()Ljava/util/List;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/javac/platform/JDKPlatformProvider$PlatformDescriptionImpl;
Signature: ()Ljava/util/List<Ljava/lang/String;>;
public void close();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=3, args_size=1
start local 0 0: aload 0
getfield com.sun.tools.javac.platform.JDKPlatformProvider$PlatformDescriptionImpl.ctSym2FileSystem:Ljava/util/Map;
invokeinterface java.util.Map.values:()Ljava/util/Collection;
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 2
goto 3
StackMap locals: com.sun.tools.javac.platform.JDKPlatformProvider$PlatformDescriptionImpl top java.util.Iterator
StackMap stack:
1: aload 2
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.nio.file.FileSystem
astore 1
start local 1 2: aload 1
invokevirtual java.nio.file.FileSystem.close:()V
end local 1 3: StackMap locals:
StackMap stack:
aload 2
invokeinterface java.util.Iterator.hasNext:()Z
ifne 1
4: aload 0
getfield com.sun.tools.javac.platform.JDKPlatformProvider$PlatformDescriptionImpl.ctSym2FileSystem:Ljava/util/Map;
invokeinterface java.util.Map.clear:()V
5: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/sun/tools/javac/platform/JDKPlatformProvider$PlatformDescriptionImpl;
2 3 1 fs Ljava/nio/file/FileSystem;
Exceptions:
throws java.io.IOException
private static java.nio.file.Path lambda$0(java.nio.file.Path, java.lang.String);
descriptor: (Ljava/nio/file/Path;Ljava/lang/String;)Ljava/nio/file/Path;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
start local 1 0: aload 0
aload 1
invokeinterface java.nio.file.Path.resolve:(Ljava/lang/String;)Ljava/nio/file/Path;
areturn
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 1 1 line Ljava/lang/String;
private static boolean lambda$1(java.nio.file.Path);
descriptor: (Ljava/nio/file/Path;)Z
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
iconst_0
anewarray java.nio.file.LinkOption
invokestatic java.nio.file.Files.exists:(Ljava/nio/file/Path;[Ljava/nio/file/LinkOption;)Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 mod Ljava/nio/file/Path;
private static void lambda$2(com.sun.tools.javac.file.JavacFileManager, java.nio.file.Path);
descriptor: (Lcom/sun/tools/javac/file/JavacFileManager;Ljava/nio/file/Path;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
start local 1 0: aload 0
aload 1
invokestatic com.sun.tools.javac.platform.JDKPlatformProvider$PlatformDescriptionImpl.setModule:(Ljavax/tools/StandardJavaFileManager;Ljava/nio/file/Path;)V
return
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 1 1 mod Ljava/nio/file/Path;
private static java.util.List lambda$3(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/util/List;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 dummy Ljava/lang/String;
}
SourceFile: "JDKPlatformProvider.java"
NestHost: com.sun.tools.javac.platform.JDKPlatformProvider
InnerClasses:
public final Feature = com.sun.tools.javac.code.Source$Feature of com.sun.tools.javac.code.Source
PlatformDescriptionImpl = com.sun.tools.javac.platform.JDKPlatformProvider$PlatformDescriptionImpl of com.sun.tools.javac.platform.JDKPlatformProvider
com.sun.tools.javac.platform.JDKPlatformProvider$PlatformDescriptionImpl$1
private SigJavaFileObject = com.sun.tools.javac.platform.JDKPlatformProvider$PlatformDescriptionImpl$SigJavaFileObject of com.sun.tools.javac.platform.JDKPlatformProvider$PlatformDescriptionImpl
public abstract PluginInfo = com.sun.tools.javac.platform.PlatformDescription$PluginInfo of com.sun.tools.javac.platform.PlatformDescription
public Key = com.sun.tools.javac.util.Context$Key of com.sun.tools.javac.util.Context
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
public abstract Entry = java.util.Map$Entry of java.util.Map
public abstract Location = javax.tools.JavaFileManager$Location of javax.tools.JavaFileManager