class com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator implements java.util.Iterator<java.util.Set<javax.tools.JavaFileManager$Location>>
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator
super_class: java.lang.Object
{
java.util.Iterator<java.nio.file.Path> pathIter;
descriptor: Ljava/util/Iterator;
flags: (0x0000)
Signature: Ljava/util/Iterator<Ljava/nio/file/Path;>;
int pathIndex;
descriptor: I
flags: (0x0000)
java.util.Set<javax.tools.JavaFileManager$Location> next;
descriptor: Ljava/util/Set;
flags: (0x0000)
Signature: Ljava/util/Set<Ljavax/tools/JavaFileManager$Location;>;
final com.sun.tools.javac.file.Locations$ModulePathLocationHandler this$1;
descriptor: Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
void <init>(com.sun.tools.javac.file.Locations$ModulePathLocationHandler);
descriptor: (Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler;)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 0: aload 0
aload 1
putfield com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator.this$1:Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler;
aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
getfield com.sun.tools.javac.file.Locations$ModulePathLocationHandler.searchPath:Ljava/util/Collection;
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
putfield com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator.pathIter:Ljava/util/Iterator;
2: aload 0
iconst_0
putfield com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator.pathIndex:I
3: aload 0
aconst_null
putfield com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator.next:Ljava/util/Set;
4: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler$ModulePathIterator;
MethodParameters:
Name Flags
this$0 final
public boolean hasNext();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
getfield com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator.next:Ljava/util/Set;
ifnull 11
1: iconst_1
ireturn
2: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator.pathIter:Ljava/util/Iterator;
invokeinterface java.util.Iterator.hasNext:()Z
ifeq 10
3: aload 0
getfield com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator.pathIter:Ljava/util/Iterator;
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.nio.file.Path
astore 1
start local 1 4: aload 1
iconst_0
anewarray java.nio.file.LinkOption
invokestatic java.nio.file.Files.isDirectory:(Ljava/nio/file/Path;[Ljava/nio/file/LinkOption;)Z
ifeq 7
5: aload 0
aload 0
aload 1
invokevirtual com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator.scanDirectory:(Ljava/nio/file/Path;)Ljava/util/Set;
putfield com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator.next:Ljava/util/Set;
6: goto 8
7: StackMap locals: java.nio.file.Path
StackMap stack:
aload 0
aload 0
aload 1
invokevirtual com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator.scanFile:(Ljava/nio/file/Path;)Ljava/util/Set;
putfield com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator.next:Ljava/util/Set;
8: StackMap locals:
StackMap stack:
aload 0
dup
getfield com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator.pathIndex:I
iconst_1
iadd
putfield com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator.pathIndex:I
end local 1 9: goto 11
10: StackMap locals:
StackMap stack:
iconst_0
ireturn
11: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator.next:Ljava/util/Set;
ifnull 2
12: iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler$ModulePathIterator;
4 9 1 path Ljava/nio/file/Path;
public java.util.Set<javax.tools.JavaFileManager$Location> next();
descriptor: ()Ljava/util/Set;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator.hasNext:()Z
pop
1: aload 0
getfield com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator.next:Ljava/util/Set;
ifnull 5
2: aload 0
getfield com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator.next:Ljava/util/Set;
astore 1
start local 1 3: aload 0
aconst_null
putfield com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator.next:Ljava/util/Set;
4: aload 1
areturn
end local 1 5: StackMap locals:
StackMap stack:
new java.util.NoSuchElementException
dup
invokespecial java.util.NoSuchElementException.<init>:()V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler$ModulePathIterator;
3 5 1 result Ljava/util/Set<Ljavax/tools/JavaFileManager$Location;>;
Signature: ()Ljava/util/Set<Ljavax/tools/JavaFileManager$Location;>;
private java.util.Set<javax.tools.JavaFileManager$Location> scanDirectory(java.nio.file.Path);
descriptor: (Ljava/nio/file/Path;)Ljava/util/Set;
flags: (0x0002) ACC_PRIVATE
Code:
stack=8, locals=13, args_size=2
start local 0 start local 1 0: new java.util.LinkedHashSet
dup
invokespecial java.util.LinkedHashSet.<init>:()V
astore 2
start local 2 1: aconst_null
astore 3
start local 3 2: aconst_null
astore 4
aconst_null
astore 5
3: aload 1
invokestatic java.nio.file.Files.newDirectoryStream:(Ljava/nio/file/Path;)Ljava/nio/file/DirectoryStream;
astore 6
start local 6 4: aload 6
invokeinterface java.nio.file.DirectoryStream.iterator:()Ljava/util/Iterator;
astore 8
goto 10
StackMap locals: com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator java.nio.file.Path java.util.Set java.nio.file.Path java.lang.Throwable java.lang.Throwable java.nio.file.DirectoryStream top java.util.Iterator
StackMap stack:
5: aload 8
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.nio.file.Path
astore 7
start local 7 6: aload 7
ldc "module-info.class"
invokeinterface java.nio.file.Path.endsWith:(Ljava/lang/String;)Z
ifeq 9
7: aload 7
astore 3
8: goto 11
9: StackMap locals: com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator java.nio.file.Path java.util.Set java.nio.file.Path java.lang.Throwable java.lang.Throwable java.nio.file.DirectoryStream java.nio.file.Path java.util.Iterator
StackMap stack:
aload 2
aload 7
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
end local 7 10: StackMap locals: com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator java.nio.file.Path java.util.Set java.nio.file.Path java.lang.Throwable java.lang.Throwable java.nio.file.DirectoryStream top java.util.Iterator
StackMap stack:
aload 8
invokeinterface java.util.Iterator.hasNext:()Z
ifne 5
11: StackMap locals: com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator java.nio.file.Path java.util.Set java.nio.file.Path java.lang.Throwable java.lang.Throwable java.nio.file.DirectoryStream
StackMap stack:
aload 6
ifnull 20
aload 6
invokeinterface java.nio.file.DirectoryStream.close:()V
goto 20
StackMap locals:
StackMap stack: java.lang.Throwable
12: astore 4
aload 6
ifnull 13
aload 6
invokeinterface java.nio.file.DirectoryStream.close:()V
end local 6 StackMap locals:
StackMap stack:
13: aload 4
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
14: astore 5
aload 4
ifnonnull 15
aload 5
astore 4
goto 16
StackMap locals:
StackMap stack:
15: aload 4
aload 5
if_acmpeq 16
aload 4
aload 5
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
16: aload 4
athrow
StackMap locals: com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator java.nio.file.Path java.util.Set java.nio.file.Path
StackMap stack: java.lang.Exception
17: pop
18: aload 0
getfield com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator.this$1:Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler;
invokestatic com.sun.tools.javac.file.Locations$ModulePathLocationHandler.access$0:(Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler;)Lcom/sun/tools/javac/file/Locations;
getfield com.sun.tools.javac.file.Locations.log:Lcom/sun/tools/javac/util/Log;
aload 1
invokestatic com.sun.tools.javac.resources.CompilerProperties$Errors.LocnCantReadDirectory:(Ljava/nio/file/Path;)Lcom/sun/tools/javac/util/JCDiagnostic$Error;
invokevirtual com.sun.tools.javac.util.Log.error:(Lcom/sun/tools/javac/util/JCDiagnostic$Error;)V
19: invokestatic java.util.Collections.emptySet:()Ljava/util/Set;
areturn
20: StackMap locals:
StackMap stack:
aload 3
ifnull 37
21: aload 0
aload 3
invokevirtual com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator.readModuleName:(Ljava/nio/file/Path;)Ljava/lang/String;
astore 4
start local 4 22: new java.lang.StringBuilder
dup
aload 0
getfield com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator.this$1:Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler;
getfield com.sun.tools.javac.file.Locations$ModulePathLocationHandler.location:Ljavax/tools/JavaFileManager$Location;
invokeinterface javax.tools.JavaFileManager$Location.getName:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
23: ldc "["
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator.pathIndex:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ":"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 4
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "]"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
24: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 5
start local 5 25: new com.sun.tools.javac.file.Locations$ModuleLocationHandler
dup
aload 0
getfield com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator.this$1:Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler;
invokestatic com.sun.tools.javac.file.Locations$ModulePathLocationHandler.access$0:(Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler;)Lcom/sun/tools/javac/file/Locations;
26: aload 0
getfield com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator.this$1:Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler;
aload 5
aload 4
27: aload 1
invokestatic java.util.Collections.singletonList:(Ljava/lang/Object;)Ljava/util/List;
iconst_0
28: invokespecial com.sun.tools.javac.file.Locations$ModuleLocationHandler.<init>:(Lcom/sun/tools/javac/file/Locations;Lcom/sun/tools/javac/file/Locations$LocationHandler;Ljava/lang/String;Ljava/lang/String;Ljava/util/Collection;Z)V
astore 6
start local 6 29: aload 6
invokestatic java.util.Collections.singleton:(Ljava/lang/Object;)Ljava/util/Set;
30: areturn
end local 6 end local 5 end local 4 31: StackMap locals:
StackMap stack: com.sun.tools.javac.jvm.ModuleNameReader$BadClassFile
pop
32: aload 0
getfield com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator.this$1:Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler;
invokestatic com.sun.tools.javac.file.Locations$ModulePathLocationHandler.access$0:(Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler;)Lcom/sun/tools/javac/file/Locations;
getfield com.sun.tools.javac.file.Locations.log:Lcom/sun/tools/javac/util/Log;
aload 1
invokestatic com.sun.tools.javac.resources.CompilerProperties$Errors.LocnBadModuleInfo:(Ljava/nio/file/Path;)Lcom/sun/tools/javac/util/JCDiagnostic$Error;
invokevirtual com.sun.tools.javac.util.Log.error:(Lcom/sun/tools/javac/util/JCDiagnostic$Error;)V
33: invokestatic java.util.Collections.emptySet:()Ljava/util/Set;
areturn
34: StackMap locals:
StackMap stack: java.io.IOException
pop
35: aload 0
getfield com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator.this$1:Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler;
invokestatic com.sun.tools.javac.file.Locations$ModulePathLocationHandler.access$0:(Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler;)Lcom/sun/tools/javac/file/Locations;
getfield com.sun.tools.javac.file.Locations.log:Lcom/sun/tools/javac/util/Log;
aload 1
invokestatic com.sun.tools.javac.resources.CompilerProperties$Errors.LocnCantReadFile:(Ljava/nio/file/Path;)Lcom/sun/tools/javac/util/JCDiagnostic$Error;
invokevirtual com.sun.tools.javac.util.Log.error:(Lcom/sun/tools/javac/util/JCDiagnostic$Error;)V
36: invokestatic java.util.Collections.emptySet:()Ljava/util/Set;
areturn
37: StackMap locals:
StackMap stack:
new java.util.LinkedHashSet
dup
invokespecial java.util.LinkedHashSet.<init>:()V
astore 4
start local 4 38: iconst_0
istore 5
start local 5 39: aload 2
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 7
goto 54
StackMap locals: com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator java.nio.file.Path java.util.Set java.nio.file.Path java.util.Set int top java.util.Iterator
StackMap stack:
40: aload 7
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.nio.file.Path
astore 6
start local 6 41: aload 0
aload 6
invokevirtual com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator.inferModuleName:(Ljava/nio/file/Path;)Lcom/sun/tools/javac/util/Pair;
astore 8
start local 8 42: aload 8
ifnonnull 44
43: goto 54
44: StackMap locals: com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator java.nio.file.Path java.util.Set java.nio.file.Path java.util.Set int java.nio.file.Path java.util.Iterator com.sun.tools.javac.util.Pair
StackMap stack:
aload 8
getfield com.sun.tools.javac.util.Pair.fst:Ljava/lang/Object;
checkcast java.lang.String
astore 9
start local 9 45: aload 8
getfield com.sun.tools.javac.util.Pair.snd:Ljava/lang/Object;
checkcast java.nio.file.Path
astore 10
start local 10 46: new java.lang.StringBuilder
dup
aload 0
getfield com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator.this$1:Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler;
getfield com.sun.tools.javac.file.Locations$ModulePathLocationHandler.location:Ljavax/tools/JavaFileManager$Location;
invokeinterface javax.tools.JavaFileManager$Location.getName:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
47: ldc "["
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator.pathIndex:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc "."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 5
iinc 5 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ":"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 9
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "]"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
48: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 11
start local 11 49: new com.sun.tools.javac.file.Locations$ModuleLocationHandler
dup
aload 0
getfield com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator.this$1:Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler;
invokestatic com.sun.tools.javac.file.Locations$ModulePathLocationHandler.access$0:(Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler;)Lcom/sun/tools/javac/file/Locations;
50: aload 0
getfield com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator.this$1:Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler;
aload 11
aload 9
51: aload 10
invokestatic java.util.Collections.singletonList:(Ljava/lang/Object;)Ljava/util/List;
iconst_0
52: invokespecial com.sun.tools.javac.file.Locations$ModuleLocationHandler.<init>:(Lcom/sun/tools/javac/file/Locations;Lcom/sun/tools/javac/file/Locations$LocationHandler;Ljava/lang/String;Ljava/lang/String;Ljava/util/Collection;Z)V
astore 12
start local 12 53: aload 4
aload 12
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
end local 12 end local 11 end local 10 end local 9 end local 8 end local 6 54: StackMap locals: com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator java.nio.file.Path java.util.Set java.nio.file.Path java.util.Set int top java.util.Iterator
StackMap stack:
aload 7
invokeinterface java.util.Iterator.hasNext:()Z
ifne 40
55: aload 4
areturn
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 56 0 this Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler$ModulePathIterator;
0 56 1 path Ljava/nio/file/Path;
1 56 2 paths Ljava/util/Set<Ljava/nio/file/Path;>;
2 56 3 moduleInfoClass Ljava/nio/file/Path;
4 13 6 stream Ljava/nio/file/DirectoryStream<Ljava/nio/file/Path;>;
6 10 7 entry Ljava/nio/file/Path;
22 31 4 moduleName Ljava/lang/String;
25 31 5 name Ljava/lang/String;
29 31 6 l Lcom/sun/tools/javac/file/Locations$ModuleLocationHandler;
38 56 4 result Ljava/util/Set<Ljavax/tools/JavaFileManager$Location;>;
39 56 5 index I
41 54 6 entry Ljava/nio/file/Path;
42 54 8 module Lcom/sun/tools/javac/util/Pair<Ljava/lang/String;Ljava/nio/file/Path;>;
45 54 9 moduleName Ljava/lang/String;
46 54 10 modulePath Ljava/nio/file/Path;
49 54 11 name Ljava/lang/String;
53 54 12 l Lcom/sun/tools/javac/file/Locations$ModuleLocationHandler;
Exception table:
from to target type
4 11 12 any
3 14 14 any
2 17 17 Class java.nio.file.DirectoryIteratorException
2 17 17 Class java.io.IOException
21 30 31 Class com.sun.tools.javac.jvm.ModuleNameReader$BadClassFile
21 30 34 Class java.io.IOException
Signature: (Ljava/nio/file/Path;)Ljava/util/Set<Ljavax/tools/JavaFileManager$Location;>;
MethodParameters:
Name Flags
path
private java.util.Set<javax.tools.JavaFileManager$Location> scanFile(java.nio.file.Path);
descriptor: (Ljava/nio/file/Path;)Ljava/util/Set;
flags: (0x0002) ACC_PRIVATE
Code:
stack=8, locals=7, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator.inferModuleName:(Ljava/nio/file/Path;)Lcom/sun/tools/javac/util/Pair;
astore 2
start local 2 1: aload 2
ifnonnull 3
2: invokestatic java.util.Collections.emptySet:()Ljava/util/Set;
areturn
3: StackMap locals: com.sun.tools.javac.util.Pair
StackMap stack:
aload 2
getfield com.sun.tools.javac.util.Pair.fst:Ljava/lang/Object;
checkcast java.lang.String
astore 3
start local 3 4: aload 2
getfield com.sun.tools.javac.util.Pair.snd:Ljava/lang/Object;
checkcast java.nio.file.Path
astore 4
start local 4 5: new java.lang.StringBuilder
dup
aload 0
getfield com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator.this$1:Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler;
getfield com.sun.tools.javac.file.Locations$ModulePathLocationHandler.location:Ljavax/tools/JavaFileManager$Location;
invokeinterface javax.tools.JavaFileManager$Location.getName:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
6: ldc "["
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator.pathIndex:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ":"
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;
7: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 5
start local 5 8: new com.sun.tools.javac.file.Locations$ModuleLocationHandler
dup
aload 0
getfield com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator.this$1:Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler;
invokestatic com.sun.tools.javac.file.Locations$ModulePathLocationHandler.access$0:(Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler;)Lcom/sun/tools/javac/file/Locations;
9: aload 0
getfield com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator.this$1:Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler;
aload 5
aload 3
10: aload 4
invokestatic java.util.Collections.singletonList:(Ljava/lang/Object;)Ljava/util/List;
iconst_0
11: invokespecial com.sun.tools.javac.file.Locations$ModuleLocationHandler.<init>:(Lcom/sun/tools/javac/file/Locations;Lcom/sun/tools/javac/file/Locations$LocationHandler;Ljava/lang/String;Ljava/lang/String;Ljava/util/Collection;Z)V
astore 6
start local 6 12: aload 6
invokestatic java.util.Collections.singleton:(Ljava/lang/Object;)Ljava/util/Set;
areturn
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 13 0 this Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler$ModulePathIterator;
0 13 1 path Ljava/nio/file/Path;
1 13 2 module Lcom/sun/tools/javac/util/Pair<Ljava/lang/String;Ljava/nio/file/Path;>;
4 13 3 moduleName Ljava/lang/String;
5 13 4 modulePath Ljava/nio/file/Path;
8 13 5 name Ljava/lang/String;
12 13 6 l Lcom/sun/tools/javac/file/Locations$ModuleLocationHandler;
Signature: (Ljava/nio/file/Path;)Ljava/util/Set<Ljavax/tools/JavaFileManager$Location;>;
MethodParameters:
Name Flags
path
private com.sun.tools.javac.util.Pair<java.lang.String, java.nio.file.Path> inferModuleName(java.nio.file.Path);
descriptor: (Ljava/nio/file/Path;)Lcom/sun/tools/javac/util/Pair;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=14, args_size=2
start local 0 start local 1 0: aload 1
iconst_0
anewarray java.nio.file.LinkOption
invokestatic java.nio.file.Files.isDirectory:(Ljava/nio/file/Path;[Ljava/nio/file/LinkOption;)Z
ifeq 6
1: aload 1
ldc "module-info.class"
invokeinterface java.nio.file.Path.resolve:(Ljava/lang/String;)Ljava/nio/file/Path;
iconst_0
anewarray java.nio.file.LinkOption
invokestatic java.nio.file.Files.exists:(Ljava/nio/file/Path;[Ljava/nio/file/LinkOption;)Z
ifeq 5
2: aload 1
invokeinterface java.nio.file.Path.getFileName:()Ljava/nio/file/Path;
invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
astore 2
start local 2 3: aload 2
invokestatic javax.lang.model.SourceVersion.isName:(Ljava/lang/CharSequence;)Z
ifeq 5
4: new com.sun.tools.javac.util.Pair
dup
aload 2
aload 1
invokespecial com.sun.tools.javac.util.Pair.<init>:(Ljava/lang/Object;Ljava/lang/Object;)V
areturn
end local 2 5: StackMap locals:
StackMap stack:
aconst_null
areturn
6: StackMap locals:
StackMap stack:
aload 1
invokeinterface java.nio.file.Path.getFileName:()Ljava/nio/file/Path;
invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
ldc ".jar"
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifeq 70
aload 0
getfield com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator.this$1:Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler;
invokestatic com.sun.tools.javac.file.Locations$ModulePathLocationHandler.access$0:(Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler;)Lcom/sun/tools/javac/file/Locations;
getfield com.sun.tools.javac.file.Locations.fsInfo:Lcom/sun/tools/javac/file/FSInfo;
aload 1
invokevirtual com.sun.tools.javac.file.FSInfo.exists:(Ljava/nio/file/Path;)Z
ifeq 70
7: aload 0
getfield com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator.this$1:Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler;
invokestatic com.sun.tools.javac.file.Locations$ModulePathLocationHandler.access$0:(Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler;)Lcom/sun/tools/javac/file/Locations;
getfield com.sun.tools.javac.file.Locations.fsInfo:Lcom/sun/tools/javac/file/FSInfo;
invokevirtual com.sun.tools.javac.file.FSInfo.getJarFSProvider:()Ljava/nio/file/spi/FileSystemProvider;
astore 2
start local 2 8: aload 2
ifnonnull 11
9: aload 0
getfield com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator.this$1:Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler;
invokestatic com.sun.tools.javac.file.Locations$ModulePathLocationHandler.access$0:(Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler;)Lcom/sun/tools/javac/file/Locations;
getfield com.sun.tools.javac.file.Locations.log:Lcom/sun/tools/javac/util/Log;
aload 1
invokestatic com.sun.tools.javac.resources.CompilerProperties$Errors.NoZipfsForArchive:(Ljava/nio/file/Path;)Lcom/sun/tools/javac/util/JCDiagnostic$Error;
invokevirtual com.sun.tools.javac.util.Log.error:(Lcom/sun/tools/javac/util/JCDiagnostic$Error;)V
10: aconst_null
areturn
11: StackMap locals: java.nio.file.spi.FileSystemProvider
StackMap stack:
aconst_null
astore 3
aconst_null
astore 4
12: aload 2
aload 1
aload 0
getfield com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator.this$1:Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler;
invokestatic com.sun.tools.javac.file.Locations$ModulePathLocationHandler.access$0:(Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler;)Lcom/sun/tools/javac/file/Locations;
getfield com.sun.tools.javac.file.Locations.fsEnv:Ljava/util/Map;
invokevirtual java.nio.file.spi.FileSystemProvider.newFileSystem:(Ljava/nio/file/Path;Ljava/util/Map;)Ljava/nio/file/FileSystem;
astore 5
start local 5 13: aload 5
ldc "module-info.class"
iconst_0
anewarray java.lang.String
invokevirtual java.nio.file.FileSystem.getPath:(Ljava/lang/String;[Ljava/lang/String;)Ljava/nio/file/Path;
astore 6
start local 6 14: aload 6
iconst_0
anewarray java.nio.file.LinkOption
invokestatic java.nio.file.Files.exists:(Ljava/nio/file/Path;[Ljava/nio/file/LinkOption;)Z
ifeq 19
15: aload 0
aload 6
invokevirtual com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator.readModuleName:(Ljava/nio/file/Path;)Ljava/lang/String;
astore 7
start local 7 16: new com.sun.tools.javac.util.Pair
dup
aload 7
aload 1
invokespecial com.sun.tools.javac.util.Pair.<init>:(Ljava/lang/Object;Ljava/lang/Object;)V
17: aload 5
ifnull 18
aload 5
invokevirtual java.nio.file.FileSystem.close:()V
18: StackMap locals: com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator java.nio.file.Path java.nio.file.spi.FileSystemProvider java.lang.Throwable java.lang.Throwable java.nio.file.FileSystem java.nio.file.Path java.lang.String
StackMap stack: com.sun.tools.javac.util.Pair
areturn
end local 7 19: StackMap locals:
StackMap stack:
aload 5
ldc "META-INF/MANIFEST.MF"
iconst_0
anewarray java.lang.String
invokevirtual java.nio.file.FileSystem.getPath:(Ljava/lang/String;[Ljava/lang/String;)Ljava/nio/file/Path;
astore 7
start local 7 20: aload 7
iconst_0
anewarray java.nio.file.LinkOption
invokestatic java.nio.file.Files.exists:(Ljava/nio/file/Path;[Ljava/nio/file/LinkOption;)Z
ifeq 43
21: aconst_null
astore 8
aconst_null
astore 9
22: aload 7
iconst_0
anewarray java.nio.file.OpenOption
invokestatic java.nio.file.Files.newInputStream:(Ljava/nio/file/Path;[Ljava/nio/file/OpenOption;)Ljava/io/InputStream;
astore 10
start local 10 23: new java.util.jar.Manifest
dup
aload 10
invokespecial java.util.jar.Manifest.<init>:(Ljava/io/InputStream;)V
astore 11
start local 11 24: aload 11
invokevirtual java.util.jar.Manifest.getMainAttributes:()Ljava/util/jar/Attributes;
astore 12
start local 12 25: aload 12
ifnull 37
26: aload 12
new java.util.jar.Attributes$Name
dup
ldc "Automatic-Module-Name"
invokespecial java.util.jar.Attributes$Name.<init>:(Ljava/lang/String;)V
invokevirtual java.util.jar.Attributes.getValue:(Ljava/util/jar/Attributes$Name;)Ljava/lang/String;
astore 13
start local 13 27: aload 13
ifnull 37
28: aload 0
getfield com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator.this$1:Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler;
aload 13
invokevirtual com.sun.tools.javac.file.Locations$ModulePathLocationHandler.isModuleName:(Ljava/lang/String;)Z
ifeq 33
29: new com.sun.tools.javac.util.Pair
dup
aload 13
aload 1
invokespecial com.sun.tools.javac.util.Pair.<init>:(Ljava/lang/Object;Ljava/lang/Object;)V
30: aload 10
ifnull 31
aload 10
invokevirtual java.io.InputStream.close:()V
31: StackMap locals: com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator java.nio.file.Path java.nio.file.spi.FileSystemProvider java.lang.Throwable java.lang.Throwable java.nio.file.FileSystem java.nio.file.Path java.nio.file.Path java.lang.Throwable java.lang.Throwable java.io.InputStream java.util.jar.Manifest java.util.jar.Attributes java.lang.String
StackMap stack: com.sun.tools.javac.util.Pair
aload 5
ifnull 32
aload 5
invokevirtual java.nio.file.FileSystem.close:()V
32: StackMap locals:
StackMap stack: com.sun.tools.javac.util.Pair
areturn
33: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator.this$1:Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler;
invokestatic com.sun.tools.javac.file.Locations$ModulePathLocationHandler.access$0:(Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler;)Lcom/sun/tools/javac/file/Locations;
getfield com.sun.tools.javac.file.Locations.log:Lcom/sun/tools/javac/util/Log;
aload 1
invokestatic com.sun.tools.javac.resources.CompilerProperties$Errors.LocnCantGetModuleNameForJar:(Ljava/nio/file/Path;)Lcom/sun/tools/javac/util/JCDiagnostic$Error;
invokevirtual com.sun.tools.javac.util.Log.error:(Lcom/sun/tools/javac/util/JCDiagnostic$Error;)V
34: aload 10
ifnull 35
aload 10
invokevirtual java.io.InputStream.close:()V
35: StackMap locals:
StackMap stack:
aload 5
ifnull 36
aload 5
invokevirtual java.nio.file.FileSystem.close:()V
36: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 13 end local 12 end local 11 37: StackMap locals:
StackMap stack:
aload 10
ifnull 43
aload 10
invokevirtual java.io.InputStream.close:()V
goto 43
StackMap locals:
StackMap stack: java.lang.Throwable
38: astore 8
aload 10
ifnull 39
aload 10
invokevirtual java.io.InputStream.close:()V
end local 10 StackMap locals:
StackMap stack:
39: aload 8
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
40: astore 9
aload 8
ifnonnull 41
aload 9
astore 8
goto 42
StackMap locals:
StackMap stack:
41: aload 8
aload 9
if_acmpeq 42
aload 8
aload 9
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
42: aload 8
athrow
end local 7 end local 6 43: StackMap locals: com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator java.nio.file.Path java.nio.file.spi.FileSystemProvider java.lang.Throwable java.lang.Throwable java.nio.file.FileSystem
StackMap stack:
aload 5
ifnull 55
aload 5
invokevirtual java.nio.file.FileSystem.close:()V
goto 55
StackMap locals:
StackMap stack: java.lang.Throwable
44: astore 3
aload 5
ifnull 45
aload 5
invokevirtual java.nio.file.FileSystem.close:()V
end local 5 StackMap locals:
StackMap stack:
45: aload 3
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
46: astore 4
aload 3
ifnonnull 47
aload 4
astore 3
goto 48
StackMap locals:
StackMap stack:
47: aload 3
aload 4
if_acmpeq 48
aload 3
aload 4
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
48: aload 3
athrow
StackMap locals: com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator java.nio.file.Path java.nio.file.spi.FileSystemProvider
StackMap stack: com.sun.tools.javac.jvm.ModuleNameReader$BadClassFile
49: pop
50: aload 0
getfield com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator.this$1:Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler;
invokestatic com.sun.tools.javac.file.Locations$ModulePathLocationHandler.access$0:(Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler;)Lcom/sun/tools/javac/file/Locations;
getfield com.sun.tools.javac.file.Locations.log:Lcom/sun/tools/javac/util/Log;
aload 1
invokestatic com.sun.tools.javac.resources.CompilerProperties$Errors.LocnBadModuleInfo:(Ljava/nio/file/Path;)Lcom/sun/tools/javac/util/JCDiagnostic$Error;
invokevirtual com.sun.tools.javac.util.Log.error:(Lcom/sun/tools/javac/util/JCDiagnostic$Error;)V
51: aconst_null
areturn
52: StackMap locals:
StackMap stack: java.io.IOException
pop
53: aload 0
getfield com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator.this$1:Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler;
invokestatic com.sun.tools.javac.file.Locations$ModulePathLocationHandler.access$0:(Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler;)Lcom/sun/tools/javac/file/Locations;
getfield com.sun.tools.javac.file.Locations.log:Lcom/sun/tools/javac/util/Log;
aload 1
invokestatic com.sun.tools.javac.resources.CompilerProperties$Errors.LocnCantReadFile:(Ljava/nio/file/Path;)Lcom/sun/tools/javac/util/JCDiagnostic$Error;
invokevirtual com.sun.tools.javac.util.Log.error:(Lcom/sun/tools/javac/util/JCDiagnostic$Error;)V
54: aconst_null
areturn
55: StackMap locals:
StackMap stack:
aload 1
invokeinterface java.nio.file.Path.getFileName:()Ljava/nio/file/Path;
invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
astore 3
start local 3 56: aload 3
iconst_0
aload 3
invokevirtual java.lang.String.length:()I
iconst_4
isub
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
astore 4
start local 4 57: ldc "-(\\d+(\\.|$))"
invokestatic java.util.regex.Pattern.compile:(Ljava/lang/String;)Ljava/util/regex/Pattern;
aload 4
invokevirtual java.util.regex.Pattern.matcher:(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
astore 5
start local 5 58: aload 5
invokevirtual java.util.regex.Matcher.find:()Z
ifeq 61
59: aload 5
invokevirtual java.util.regex.Matcher.start:()I
istore 6
start local 6 60: aload 4
iconst_0
iload 6
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
astore 4
end local 6 61: StackMap locals: java.lang.String java.lang.String java.util.regex.Matcher
StackMap stack:
aload 4
ldc "[^A-Za-z0-9]"
ldc "."
invokevirtual java.lang.String.replaceAll:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
62: ldc "(\\.)(\\1)+"
ldc "."
invokevirtual java.lang.String.replaceAll:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
63: ldc "^\\."
ldc ""
invokevirtual java.lang.String.replaceAll:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
64: ldc "\\.$"
ldc ""
invokevirtual java.lang.String.replaceAll:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
65: astore 4
66: aload 4
invokevirtual java.lang.String.isEmpty:()Z
ifne 68
67: new com.sun.tools.javac.util.Pair
dup
aload 4
aload 1
invokespecial com.sun.tools.javac.util.Pair.<init>:(Ljava/lang/Object;Ljava/lang/Object;)V
areturn
68: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator.this$1:Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler;
invokestatic com.sun.tools.javac.file.Locations$ModulePathLocationHandler.access$0:(Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler;)Lcom/sun/tools/javac/file/Locations;
getfield com.sun.tools.javac.file.Locations.log:Lcom/sun/tools/javac/util/Log;
aload 1
invokestatic com.sun.tools.javac.resources.CompilerProperties$Errors.LocnCantGetModuleNameForJar:(Ljava/nio/file/Path;)Lcom/sun/tools/javac/util/JCDiagnostic$Error;
invokevirtual com.sun.tools.javac.util.Log.error:(Lcom/sun/tools/javac/util/JCDiagnostic$Error;)V
69: aconst_null
areturn
end local 5 end local 4 end local 3 end local 2 70: StackMap locals: com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator java.nio.file.Path
StackMap stack:
aload 1
invokeinterface java.nio.file.Path.getFileName:()Ljava/nio/file/Path;
invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
ldc ".jmod"
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifeq 98
71: aload 1
invokestatic com.sun.tools.javac.util.JDK9Wrappers$JmodFile.checkMagic:(Ljava/nio/file/Path;)V
72: aload 0
getfield com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator.this$1:Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler;
invokestatic com.sun.tools.javac.file.Locations$ModulePathLocationHandler.access$0:(Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler;)Lcom/sun/tools/javac/file/Locations;
getfield com.sun.tools.javac.file.Locations.fileSystems:Ljava/util/Map;
aload 1
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.nio.file.FileSystem
astore 2
start local 2 73: aload 2
ifnonnull 98
74: aload 0
getfield com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator.this$1:Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler;
invokestatic com.sun.tools.javac.file.Locations$ModulePathLocationHandler.access$0:(Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler;)Lcom/sun/tools/javac/file/Locations;
getfield com.sun.tools.javac.file.Locations.fsInfo:Lcom/sun/tools/javac/file/FSInfo;
invokevirtual com.sun.tools.javac.file.FSInfo.getJarFSProvider:()Ljava/nio/file/spi/FileSystemProvider;
astore 3
start local 3 75: aload 3
ifnonnull 78
76: aload 0
getfield com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator.this$1:Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler;
invokestatic com.sun.tools.javac.file.Locations$ModulePathLocationHandler.access$0:(Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler;)Lcom/sun/tools/javac/file/Locations;
getfield com.sun.tools.javac.file.Locations.log:Lcom/sun/tools/javac/util/Log;
aload 1
invokestatic com.sun.tools.javac.resources.CompilerProperties$Errors.LocnCantReadFile:(Ljava/nio/file/Path;)Lcom/sun/tools/javac/util/JCDiagnostic$Error;
invokevirtual com.sun.tools.javac.util.Log.error:(Lcom/sun/tools/javac/util/JCDiagnostic$Error;)V
77: aconst_null
areturn
78: StackMap locals: java.nio.file.FileSystem java.nio.file.spi.FileSystemProvider
StackMap stack:
aload 3
aload 1
invokestatic java.util.Collections.emptyMap:()Ljava/util/Map;
invokevirtual java.nio.file.spi.FileSystemProvider.newFileSystem:(Ljava/nio/file/Path;Ljava/util/Map;)Ljava/nio/file/FileSystem;
astore 2
79: aload 2
ldc "classes/module-info.class"
iconst_0
anewarray java.lang.String
invokevirtual java.nio.file.FileSystem.getPath:(Ljava/lang/String;[Ljava/lang/String;)Ljava/nio/file/Path;
astore 4
start local 4 80: aload 0
aload 4
invokevirtual com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator.readModuleName:(Ljava/nio/file/Path;)Ljava/lang/String;
astore 5
start local 5 81: aload 2
ldc "classes"
iconst_0
anewarray java.lang.String
invokevirtual java.nio.file.FileSystem.getPath:(Ljava/lang/String;[Ljava/lang/String;)Ljava/nio/file/Path;
astore 6
start local 6 82: aload 0
getfield com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator.this$1:Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler;
invokestatic com.sun.tools.javac.file.Locations$ModulePathLocationHandler.access$0:(Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler;)Lcom/sun/tools/javac/file/Locations;
getfield com.sun.tools.javac.file.Locations.fileSystems:Ljava/util/Map;
aload 1
aload 2
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
83: aload 0
getfield com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator.this$1:Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler;
invokestatic com.sun.tools.javac.file.Locations$ModulePathLocationHandler.access$0:(Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler;)Lcom/sun/tools/javac/file/Locations;
getfield com.sun.tools.javac.file.Locations.closeables:Ljava/util/List;
aload 2
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
84: aconst_null
astore 2
85: new com.sun.tools.javac.util.Pair
dup
aload 5
aload 6
invokespecial com.sun.tools.javac.util.Pair.<init>:(Ljava/lang/Object;Ljava/lang/Object;)V
astore 8
86: aload 2
ifnull 88
87: aload 2
invokevirtual java.nio.file.FileSystem.close:()V
88: StackMap locals: com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator java.nio.file.Path java.nio.file.FileSystem java.nio.file.spi.FileSystemProvider java.nio.file.Path java.lang.String java.nio.file.Path top com.sun.tools.javac.util.Pair
StackMap stack:
aload 8
areturn
end local 6 end local 5 end local 4 89: StackMap locals: com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator java.nio.file.Path java.nio.file.FileSystem java.nio.file.spi.FileSystemProvider
StackMap stack: java.lang.Throwable
astore 7
90: aload 2
ifnull 92
91: aload 2
invokevirtual java.nio.file.FileSystem.close:()V
92: StackMap locals: com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator java.nio.file.Path java.nio.file.FileSystem java.nio.file.spi.FileSystemProvider top top top java.lang.Throwable
StackMap stack:
aload 7
athrow
end local 3 end local 2 93: StackMap locals: com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator java.nio.file.Path
StackMap stack: com.sun.tools.javac.jvm.ModuleNameReader$BadClassFile
pop
94: aload 0
getfield com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator.this$1:Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler;
invokestatic com.sun.tools.javac.file.Locations$ModulePathLocationHandler.access$0:(Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler;)Lcom/sun/tools/javac/file/Locations;
getfield com.sun.tools.javac.file.Locations.log:Lcom/sun/tools/javac/util/Log;
aload 1
invokestatic com.sun.tools.javac.resources.CompilerProperties$Errors.LocnBadModuleInfo:(Ljava/nio/file/Path;)Lcom/sun/tools/javac/util/JCDiagnostic$Error;
invokevirtual com.sun.tools.javac.util.Log.error:(Lcom/sun/tools/javac/util/JCDiagnostic$Error;)V
goto 98
95: StackMap locals:
StackMap stack: java.io.IOException
pop
96: aload 0
getfield com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator.this$1:Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler;
invokestatic com.sun.tools.javac.file.Locations$ModulePathLocationHandler.access$0:(Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler;)Lcom/sun/tools/javac/file/Locations;
getfield com.sun.tools.javac.file.Locations.log:Lcom/sun/tools/javac/util/Log;
aload 1
invokestatic com.sun.tools.javac.resources.CompilerProperties$Errors.LocnCantReadFile:(Ljava/nio/file/Path;)Lcom/sun/tools/javac/util/JCDiagnostic$Error;
invokevirtual com.sun.tools.javac.util.Log.error:(Lcom/sun/tools/javac/util/JCDiagnostic$Error;)V
97: aconst_null
areturn
98: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 99 0 this Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler$ModulePathIterator;
0 99 1 p Ljava/nio/file/Path;
3 5 2 name Ljava/lang/String;
8 70 2 jarFSProvider Ljava/nio/file/spi/FileSystemProvider;
13 45 5 fs Ljava/nio/file/FileSystem;
14 43 6 moduleInfoClass Ljava/nio/file/Path;
16 19 7 moduleName Ljava/lang/String;
20 43 7 mf Ljava/nio/file/Path;
23 39 10 in Ljava/io/InputStream;
24 37 11 man Ljava/util/jar/Manifest;
25 37 12 attrs Ljava/util/jar/Attributes;
27 37 13 moduleName Ljava/lang/String;
56 70 3 fn Ljava/lang/String;
57 70 4 mn Ljava/lang/String;
58 70 5 matcher Ljava/util/regex/Matcher;
60 61 6 start I
73 93 2 fs Ljava/nio/file/FileSystem;
75 93 3 jarFSProvider Ljava/nio/file/spi/FileSystemProvider;
80 89 4 moduleInfoClass Ljava/nio/file/Path;
81 89 5 moduleName Ljava/lang/String;
82 89 6 modulePath Ljava/nio/file/Path;
Exception table:
from to target type
23 30 38 any
33 34 38 any
22 31 40 any
33 35 40 any
37 40 40 any
13 17 44 any
19 31 44 any
33 35 44 any
37 43 44 any
12 18 46 any
19 32 46 any
33 36 46 any
37 46 46 any
11 18 49 Class com.sun.tools.javac.jvm.ModuleNameReader$BadClassFile
19 32 49 Class com.sun.tools.javac.jvm.ModuleNameReader$BadClassFile
33 36 49 Class com.sun.tools.javac.jvm.ModuleNameReader$BadClassFile
37 49 49 Class com.sun.tools.javac.jvm.ModuleNameReader$BadClassFile
11 18 52 Class java.io.IOException
19 32 52 Class java.io.IOException
33 36 52 Class java.io.IOException
37 49 52 Class java.io.IOException
79 86 89 any
71 77 93 Class com.sun.tools.javac.jvm.ModuleNameReader$BadClassFile
78 88 93 Class com.sun.tools.javac.jvm.ModuleNameReader$BadClassFile
89 93 93 Class com.sun.tools.javac.jvm.ModuleNameReader$BadClassFile
71 77 95 Class java.io.IOException
78 88 95 Class java.io.IOException
89 93 95 Class java.io.IOException
Signature: (Ljava/nio/file/Path;)Lcom/sun/tools/javac/util/Pair<Ljava/lang/String;Ljava/nio/file/Path;>;
MethodParameters:
Name Flags
p
private java.lang.String readModuleName(java.nio.file.Path);
descriptor: (Ljava/nio/file/Path;)Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator.this$1:Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler;
invokestatic com.sun.tools.javac.file.Locations$ModulePathLocationHandler.access$0:(Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler;)Lcom/sun/tools/javac/file/Locations;
getfield com.sun.tools.javac.file.Locations.moduleNameReader:Lcom/sun/tools/javac/jvm/ModuleNameReader;
ifnonnull 2
1: aload 0
getfield com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator.this$1:Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler;
invokestatic com.sun.tools.javac.file.Locations$ModulePathLocationHandler.access$0:(Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler;)Lcom/sun/tools/javac/file/Locations;
new com.sun.tools.javac.jvm.ModuleNameReader
dup
invokespecial com.sun.tools.javac.jvm.ModuleNameReader.<init>:()V
putfield com.sun.tools.javac.file.Locations.moduleNameReader:Lcom/sun/tools/javac/jvm/ModuleNameReader;
2: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator.this$1:Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler;
invokestatic com.sun.tools.javac.file.Locations$ModulePathLocationHandler.access$0:(Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler;)Lcom/sun/tools/javac/file/Locations;
getfield com.sun.tools.javac.file.Locations.moduleNameReader:Lcom/sun/tools/javac/jvm/ModuleNameReader;
aload 1
invokevirtual com.sun.tools.javac.jvm.ModuleNameReader.readModuleName:(Ljava/nio/file/Path;)Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/tools/javac/file/Locations$ModulePathLocationHandler$ModulePathIterator;
0 3 1 path Ljava/nio/file/Path;
Exceptions:
throws java.io.IOException, com.sun.tools.javac.jvm.ModuleNameReader$BadClassFile
MethodParameters:
Name Flags
path
public java.lang.Object next();
descriptor: ()Ljava/lang/Object;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
invokevirtual com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator.next:()Ljava/util/Set;
areturn
LocalVariableTable:
Start End Slot Name Signature
}
Signature: Ljava/lang/Object;Ljava/util/Iterator<Ljava/util/Set<Ljavax/tools/JavaFileManager$Location;>;>;
SourceFile: "Locations.java"
NestHost: com.sun.tools.javac.file.Locations
InnerClasses:
protected abstract LocationHandler = com.sun.tools.javac.file.Locations$LocationHandler of com.sun.tools.javac.file.Locations
private ModuleLocationHandler = com.sun.tools.javac.file.Locations$ModuleLocationHandler of com.sun.tools.javac.file.Locations
private ModulePathLocationHandler = com.sun.tools.javac.file.Locations$ModulePathLocationHandler of com.sun.tools.javac.file.Locations
ModulePathIterator = com.sun.tools.javac.file.Locations$ModulePathLocationHandler$ModulePathIterator of com.sun.tools.javac.file.Locations$ModulePathLocationHandler
public BadClassFile = com.sun.tools.javac.jvm.ModuleNameReader$BadClassFile of com.sun.tools.javac.jvm.ModuleNameReader
public Errors = com.sun.tools.javac.resources.CompilerProperties$Errors of com.sun.tools.javac.resources.CompilerProperties
public final Error = com.sun.tools.javac.util.JCDiagnostic$Error of com.sun.tools.javac.util.JCDiagnostic
public final JmodFile = com.sun.tools.javac.util.JDK9Wrappers$JmodFile of com.sun.tools.javac.util.JDK9Wrappers
public Name = java.util.jar.Attributes$Name of java.util.jar.Attributes
public abstract Location = javax.tools.JavaFileManager$Location of javax.tools.JavaFileManager