class com.sun.tools.javac.file.Locations$ModuleTable
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: com.sun.tools.javac.file.Locations$ModuleTable
super_class: java.lang.Object
{
private final java.util.Map<java.lang.String, com.sun.tools.javac.file.Locations$ModuleLocationHandler> nameMap;
descriptor: Ljava/util/Map;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Map<Ljava/lang/String;Lcom/sun/tools/javac/file/Locations$ModuleLocationHandler;>;
private final java.util.Map<java.nio.file.Path, com.sun.tools.javac.file.Locations$ModuleLocationHandler> pathMap;
descriptor: Ljava/util/Map;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Map<Ljava/nio/file/Path;Lcom/sun/tools/javac/file/Locations$ModuleLocationHandler;>;
final com.sun.tools.javac.file.Locations this$0;
descriptor: Lcom/sun/tools/javac/file/Locations;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
private void <init>(com.sun.tools.javac.file.Locations);
descriptor: (Lcom/sun/tools/javac/file/Locations;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=2, args_size=2
start local 0 0: aload 0
aload 1
putfield com.sun.tools.javac.file.Locations$ModuleTable.this$0:Lcom/sun/tools/javac/file/Locations;
aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new java.util.LinkedHashMap
dup
invokespecial java.util.LinkedHashMap.<init>:()V
putfield com.sun.tools.javac.file.Locations$ModuleTable.nameMap:Ljava/util/Map;
2: aload 0
new java.util.LinkedHashMap
dup
invokespecial java.util.LinkedHashMap.<init>:()V
putfield com.sun.tools.javac.file.Locations$ModuleTable.pathMap:Ljava/util/Map;
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/tools/javac/file/Locations$ModuleTable;
MethodParameters:
Name Flags
this$0 final
void add(com.sun.tools.javac.file.Locations$ModuleLocationHandler);
descriptor: (Lcom/sun/tools/javac/file/Locations$ModuleLocationHandler;)V
flags: (0x0000)
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.tools.javac.file.Locations$ModuleTable.nameMap:Ljava/util/Map;
aload 1
getfield com.sun.tools.javac.file.Locations$ModuleLocationHandler.moduleName:Ljava/lang/String;
aload 1
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
1: aload 1
getfield com.sun.tools.javac.file.Locations$ModuleLocationHandler.searchPath:Ljava/util/Collection;
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 3
goto 4
StackMap locals: com.sun.tools.javac.file.Locations$ModuleTable com.sun.tools.javac.file.Locations$ModuleLocationHandler top java.util.Iterator
StackMap stack:
2: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.nio.file.Path
astore 2
start local 2 3: aload 0
getfield com.sun.tools.javac.file.Locations$ModuleTable.pathMap:Ljava/util/Map;
aload 2
invokestatic com.sun.tools.javac.file.Locations.normalize:(Ljava/nio/file/Path;)Ljava/nio/file/Path;
aload 1
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 2 4: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
5: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/sun/tools/javac/file/Locations$ModuleTable;
0 6 1 h Lcom/sun/tools/javac/file/Locations$ModuleLocationHandler;
3 4 2 p Ljava/nio/file/Path;
MethodParameters:
Name Flags
h
void updatePaths(com.sun.tools.javac.file.Locations$ModuleLocationHandler);
descriptor: (Lcom/sun/tools/javac/file/Locations$ModuleLocationHandler;)V
flags: (0x0000)
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.tools.javac.file.Locations$ModuleTable.pathMap:Ljava/util/Map;
invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 2
start local 2 1: goto 5
2: StackMap locals: java.util.Iterator
StackMap stack:
aload 2
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.util.Map$Entry
astore 3
start local 3 3: aload 3
invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
aload 1
if_acmpne 5
4: aload 2
invokeinterface java.util.Iterator.remove:()V
end local 3 5: StackMap locals:
StackMap stack:
aload 2
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
end local 2 6: aload 1
getfield com.sun.tools.javac.file.Locations$ModuleLocationHandler.searchPath:Ljava/util/Collection;
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 3
goto 9
StackMap locals: com.sun.tools.javac.file.Locations$ModuleTable com.sun.tools.javac.file.Locations$ModuleLocationHandler top java.util.Iterator
StackMap stack:
7: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.nio.file.Path
astore 2
start local 2 8: aload 0
getfield com.sun.tools.javac.file.Locations$ModuleTable.pathMap:Ljava/util/Map;
aload 2
invokestatic com.sun.tools.javac.file.Locations.normalize:(Ljava/nio/file/Path;)Ljava/nio/file/Path;
aload 1
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 2 9: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 7
10: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lcom/sun/tools/javac/file/Locations$ModuleTable;
0 11 1 h Lcom/sun/tools/javac/file/Locations$ModuleLocationHandler;
1 6 2 iter Ljava/util/Iterator<Ljava/util/Map$Entry<Ljava/nio/file/Path;Lcom/sun/tools/javac/file/Locations$ModuleLocationHandler;>;>;
3 5 3 e Ljava/util/Map$Entry<Ljava/nio/file/Path;Lcom/sun/tools/javac/file/Locations$ModuleLocationHandler;>;
8 9 2 p Ljava/nio/file/Path;
MethodParameters:
Name Flags
h
com.sun.tools.javac.file.Locations$ModuleLocationHandler get(java.lang.String);
descriptor: (Ljava/lang/String;)Lcom/sun/tools/javac/file/Locations$ModuleLocationHandler;
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.tools.javac.file.Locations$ModuleTable.nameMap:Ljava/util/Map;
aload 1
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.sun.tools.javac.file.Locations$ModuleLocationHandler
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/javac/file/Locations$ModuleTable;
0 1 1 name Ljava/lang/String;
MethodParameters:
Name Flags
name
com.sun.tools.javac.file.Locations$ModuleLocationHandler get(java.nio.file.Path);
descriptor: (Ljava/nio/file/Path;)Lcom/sun/tools/javac/file/Locations$ModuleLocationHandler;
flags: (0x0000)
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: goto 5
1: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.file.Locations$ModuleTable.pathMap:Ljava/util/Map;
aload 1
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.sun.tools.javac.file.Locations$ModuleLocationHandler
astore 2
start local 2 2: aload 2
ifnull 4
3: aload 2
areturn
4: StackMap locals: com.sun.tools.javac.file.Locations$ModuleLocationHandler
StackMap stack:
aload 1
invokeinterface java.nio.file.Path.getParent:()Ljava/nio/file/Path;
astore 1
end local 2 5: StackMap locals:
StackMap stack:
aload 1
ifnonnull 1
6: aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/sun/tools/javac/file/Locations$ModuleTable;
0 7 1 path Ljava/nio/file/Path;
2 5 2 l Lcom/sun/tools/javac/file/Locations$ModuleLocationHandler;
MethodParameters:
Name Flags
path
void clear();
descriptor: ()V
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.tools.javac.file.Locations$ModuleTable.nameMap:Ljava/util/Map;
invokeinterface java.util.Map.clear:()V
1: aload 0
getfield com.sun.tools.javac.file.Locations$ModuleTable.pathMap:Ljava/util/Map;
invokeinterface java.util.Map.clear:()V
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/tools/javac/file/Locations$ModuleTable;
boolean isEmpty();
descriptor: ()Z
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.tools.javac.file.Locations$ModuleTable.nameMap:Ljava/util/Map;
invokeinterface java.util.Map.isEmpty:()Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/javac/file/Locations$ModuleTable;
boolean contains(java.nio.file.Path);
descriptor: (Ljava/nio/file/Path;)Z
flags: (0x0000)
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.tools.javac.file.Locations$ModuleTable.this$0:Lcom/sun/tools/javac/file/Locations;
aload 0
getfield com.sun.tools.javac.file.Locations$ModuleTable.pathMap:Ljava/util/Map;
invokeinterface java.util.Map.keySet:()Ljava/util/Set;
aload 1
invokevirtual com.sun.tools.javac.file.Locations.contains:(Ljava/util/Collection;Ljava/nio/file/Path;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/javac/file/Locations$ModuleTable;
0 1 1 file Ljava/nio/file/Path;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
file
java.util.Set<javax.tools.JavaFileManager$Location> locations();
descriptor: ()Ljava/util/Set;
flags: (0x0000)
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.tools.javac.file.Locations$ModuleTable.nameMap:Ljava/util/Map;
invokeinterface java.util.Map.values:()Ljava/util/Collection;
invokeinterface java.util.Collection.stream:()Ljava/util/stream/Stream;
invokestatic java.util.stream.Collectors.toSet:()Ljava/util/stream/Collector;
invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
checkcast java.util.Set
invokestatic java.util.Collections.unmodifiableSet:(Ljava/util/Set;)Ljava/util/Set;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/javac/file/Locations$ModuleTable;
Signature: ()Ljava/util/Set<Ljavax/tools/JavaFileManager$Location;>;
java.util.Set<javax.tools.JavaFileManager$Location> explicitLocations();
descriptor: ()Ljava/util/Set;
flags: (0x0000)
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.tools.javac.file.Locations$ModuleTable.nameMap:Ljava/util/Map;
invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
1: invokeinterface java.util.Set.stream:()Ljava/util/stream/Stream;
2: 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/file/Locations$ModuleTable.lambda$0(Ljava/util/Map$Entry;)Z (6)
(Ljava/util/Map$Entry;)Z
invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
3: 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/file/Locations$ModuleTable.lambda$1(Ljava/util/Map$Entry;)Lcom/sun/tools/javac/file/Locations$ModuleLocationHandler; (6)
(Ljava/util/Map$Entry;)Lcom/sun/tools/javac/file/Locations$ModuleLocationHandler;
invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
4: invokestatic java.util.stream.Collectors.toSet:()Ljava/util/stream/Collector;
invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
checkcast java.util.Set
5: invokestatic java.util.Collections.unmodifiableSet:(Ljava/util/Set;)Ljava/util/Set;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/sun/tools/javac/file/Locations$ModuleTable;
Signature: ()Ljava/util/Set<Ljavax/tools/JavaFileManager$Location;>;
private static boolean lambda$0(java.util.Map$Entry);
descriptor: (Ljava/util/Map$Entry;)Z
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
checkcast com.sun.tools.javac.file.Locations$ModuleLocationHandler
getfield com.sun.tools.javac.file.Locations$ModuleLocationHandler.explicit:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 e Ljava/util/Map$Entry<Ljava/lang/String;Lcom/sun/tools/javac/file/Locations$ModuleLocationHandler;>;
private static com.sun.tools.javac.file.Locations$ModuleLocationHandler lambda$1(java.util.Map$Entry);
descriptor: (Ljava/util/Map$Entry;)Lcom/sun/tools/javac/file/Locations$ModuleLocationHandler;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
checkcast com.sun.tools.javac.file.Locations$ModuleLocationHandler
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 e Ljava/util/Map$Entry<Ljava/lang/String;Lcom/sun/tools/javac/file/Locations$ModuleLocationHandler;>;
}
SourceFile: "Locations.java"
NestHost: com.sun.tools.javac.file.Locations
InnerClasses:
private ModuleLocationHandler = com.sun.tools.javac.file.Locations$ModuleLocationHandler of com.sun.tools.javac.file.Locations
private ModuleTable = com.sun.tools.javac.file.Locations$ModuleTable of com.sun.tools.javac.file.Locations
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