public class com.sun.tools.javac.code.ModuleFinder
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.sun.tools.javac.code.ModuleFinder
super_class: java.lang.Object
{
protected static final com.sun.tools.javac.util.Context$Key<com.sun.tools.javac.code.ModuleFinder> moduleFinderKey;
descriptor: Lcom/sun/tools/javac/util/Context$Key;
flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
Signature: Lcom/sun/tools/javac/util/Context$Key<Lcom/sun/tools/javac/code/ModuleFinder;>;
private final com.sun.tools.javac.util.Log log;
descriptor: Lcom/sun/tools/javac/util/Log;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final com.sun.tools.javac.code.Symtab syms;
descriptor: Lcom/sun/tools/javac/code/Symtab;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final com.sun.tools.javac.util.Names names;
descriptor: Lcom/sun/tools/javac/util/Names;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final com.sun.tools.javac.code.ClassFinder classFinder;
descriptor: Lcom/sun/tools/javac/code/ClassFinder;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final javax.tools.JavaFileManager fileManager;
descriptor: Ljavax/tools/JavaFileManager;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final com.sun.tools.javac.util.JCDiagnostic$Factory diags;
descriptor: Lcom/sun/tools/javac/util/JCDiagnostic$Factory;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final com.sun.tools.javac.code.DeferredCompletionFailureHandler dcfh;
descriptor: Lcom/sun/tools/javac/code/DeferredCompletionFailureHandler;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private com.sun.tools.javac.jvm.ModuleNameReader moduleNameReader;
descriptor: Lcom/sun/tools/javac/jvm/ModuleNameReader;
flags: (0x0002) ACC_PRIVATE
public com.sun.tools.javac.code.ModuleFinder$ModuleNameFromSourceReader moduleNameFromSourceReader;
descriptor: Lcom/sun/tools/javac/code/ModuleFinder$ModuleNameFromSourceReader;
flags: (0x0001) ACC_PUBLIC
com.sun.tools.javac.code.ModuleFinder$ModuleLocationIterator moduleLocationIterator;
descriptor: Lcom/sun/tools/javac/code/ModuleFinder$ModuleLocationIterator;
flags: (0x0000)
private static volatile int[] $SWITCH_TABLE$javax$tools$JavaFileObject$Kind;
descriptor: [I
flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC
private static volatile int[] $SWITCH_TABLE$javax$tools$StandardLocation;
descriptor: [I
flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: new com.sun.tools.javac.util.Context$Key
dup
invokespecial com.sun.tools.javac.util.Context$Key.<init>:()V
putstatic com.sun.tools.javac.code.ModuleFinder.moduleFinderKey:Lcom/sun/tools/javac/util/Context$Key;
return
LocalVariableTable:
Start End Slot Name Signature
public static com.sun.tools.javac.code.ModuleFinder instance(com.sun.tools.javac.util.Context);
descriptor: (Lcom/sun/tools/javac/util/Context;)Lcom/sun/tools/javac/code/ModuleFinder;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
getstatic com.sun.tools.javac.code.ModuleFinder.moduleFinderKey:Lcom/sun/tools/javac/util/Context$Key;
invokevirtual com.sun.tools.javac.util.Context.get:(Lcom/sun/tools/javac/util/Context$Key;)Ljava/lang/Object;
checkcast com.sun.tools.javac.code.ModuleFinder
astore 1
start local 1 1: aload 1
ifnonnull 3
2: new com.sun.tools.javac.code.ModuleFinder
dup
aload 0
invokespecial com.sun.tools.javac.code.ModuleFinder.<init>:(Lcom/sun/tools/javac/util/Context;)V
astore 1
3: StackMap locals: com.sun.tools.javac.code.ModuleFinder
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 context Lcom/sun/tools/javac/util/Context;
1 4 1 instance Lcom/sun/tools/javac/code/ModuleFinder;
MethodParameters:
Name Flags
context
protected void <init>(com.sun.tools.javac.util.Context);
descriptor: (Lcom/sun/tools/javac/util/Context;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new com.sun.tools.javac.code.ModuleFinder$ModuleLocationIterator
dup
aload 0
invokespecial com.sun.tools.javac.code.ModuleFinder$ModuleLocationIterator.<init>:(Lcom/sun/tools/javac/code/ModuleFinder;)V
putfield com.sun.tools.javac.code.ModuleFinder.moduleLocationIterator:Lcom/sun/tools/javac/code/ModuleFinder$ModuleLocationIterator;
2: aload 1
getstatic com.sun.tools.javac.code.ModuleFinder.moduleFinderKey:Lcom/sun/tools/javac/util/Context$Key;
aload 0
invokevirtual com.sun.tools.javac.util.Context.put:(Lcom/sun/tools/javac/util/Context$Key;Ljava/lang/Object;)V
3: aload 0
aload 1
invokestatic com.sun.tools.javac.util.Names.instance:(Lcom/sun/tools/javac/util/Context;)Lcom/sun/tools/javac/util/Names;
putfield com.sun.tools.javac.code.ModuleFinder.names:Lcom/sun/tools/javac/util/Names;
4: aload 0
aload 1
invokestatic com.sun.tools.javac.code.Symtab.instance:(Lcom/sun/tools/javac/util/Context;)Lcom/sun/tools/javac/code/Symtab;
putfield com.sun.tools.javac.code.ModuleFinder.syms:Lcom/sun/tools/javac/code/Symtab;
5: aload 0
aload 1
ldc Ljavax/tools/JavaFileManager;
invokevirtual com.sun.tools.javac.util.Context.get:(Ljava/lang/Class;)Ljava/lang/Object;
checkcast javax.tools.JavaFileManager
putfield com.sun.tools.javac.code.ModuleFinder.fileManager:Ljavax/tools/JavaFileManager;
6: aload 0
aload 1
invokestatic com.sun.tools.javac.util.Log.instance:(Lcom/sun/tools/javac/util/Context;)Lcom/sun/tools/javac/util/Log;
putfield com.sun.tools.javac.code.ModuleFinder.log:Lcom/sun/tools/javac/util/Log;
7: aload 0
aload 1
invokestatic com.sun.tools.javac.code.ClassFinder.instance:(Lcom/sun/tools/javac/util/Context;)Lcom/sun/tools/javac/code/ClassFinder;
putfield com.sun.tools.javac.code.ModuleFinder.classFinder:Lcom/sun/tools/javac/code/ClassFinder;
8: aload 0
aload 1
invokestatic com.sun.tools.javac.util.JCDiagnostic$Factory.instance:(Lcom/sun/tools/javac/util/Context;)Lcom/sun/tools/javac/util/JCDiagnostic$Factory;
putfield com.sun.tools.javac.code.ModuleFinder.diags:Lcom/sun/tools/javac/util/JCDiagnostic$Factory;
9: aload 0
aload 1
invokestatic com.sun.tools.javac.code.DeferredCompletionFailureHandler.instance:(Lcom/sun/tools/javac/util/Context;)Lcom/sun/tools/javac/code/DeferredCompletionFailureHandler;
putfield com.sun.tools.javac.code.ModuleFinder.dcfh:Lcom/sun/tools/javac/code/DeferredCompletionFailureHandler;
10: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lcom/sun/tools/javac/code/ModuleFinder;
0 11 1 context Lcom/sun/tools/javac/util/Context;
MethodParameters:
Name Flags
context
public com.sun.tools.javac.code.Symbol$ModuleSymbol findModule(com.sun.tools.javac.util.Name);
descriptor: (Lcom/sun/tools/javac/util/Name;)Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 0
getfield com.sun.tools.javac.code.ModuleFinder.syms:Lcom/sun/tools/javac/code/Symtab;
aload 1
invokevirtual com.sun.tools.javac.code.Symtab.enterModule:(Lcom/sun/tools/javac/util/Name;)Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
invokevirtual com.sun.tools.javac.code.ModuleFinder.findModule:(Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/javac/code/ModuleFinder;
0 1 1 name Lcom/sun/tools/javac/util/Name;
MethodParameters:
Name Flags
name
public com.sun.tools.javac.code.Symbol$ModuleSymbol findModule(com.sun.tools.javac.code.Symbol$ModuleSymbol);
descriptor: (Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 1
getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.kind:Lcom/sun/tools/javac/code/Kinds$Kind;
getstatic com.sun.tools.javac.code.Kinds$Kind.ERR:Lcom/sun/tools/javac/code/Kinds$Kind;
if_acmpeq 4
aload 1
getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.sourceLocation:Ljavax/tools/JavaFileManager$Location;
ifnonnull 4
aload 1
getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.classLocation:Ljavax/tools/JavaFileManager$Location;
ifnonnull 4
1: aload 0
aload 1
invokevirtual com.sun.tools.javac.code.ModuleFinder.scanModulePath:(Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)Lcom/sun/tools/javac/util/List;
astore 2
start local 2 2: aload 2
invokevirtual com.sun.tools.javac.util.List.isEmpty:()Z
ifeq 4
3: aload 1
getstatic com.sun.tools.javac.code.Kinds$Kind.ERR:Lcom/sun/tools/javac/code/Kinds$Kind;
putfield com.sun.tools.javac.code.Symbol$ModuleSymbol.kind:Lcom/sun/tools/javac/code/Kinds$Kind;
end local 2 4: StackMap locals:
StackMap stack:
aload 1
getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.kind:Lcom/sun/tools/javac/code/Kinds$Kind;
getstatic com.sun.tools.javac.code.Kinds$Kind.ERR:Lcom/sun/tools/javac/code/Kinds$Kind;
if_acmpeq 6
aload 1
getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.module_info:Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.sourcefile:Ljavax/tools/JavaFileObject;
ifnonnull 6
aload 1
getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.module_info:Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.classfile:Ljavax/tools/JavaFileObject;
ifnonnull 6
5: aload 0
aload 1
invokevirtual com.sun.tools.javac.code.ModuleFinder.findModuleInfo:(Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)V
6: StackMap locals:
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/sun/tools/javac/code/ModuleFinder;
0 7 1 msym Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
2 4 2 list Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;
MethodParameters:
Name Flags
msym
public com.sun.tools.javac.util.List<com.sun.tools.javac.code.Symbol$ModuleSymbol> findAllModules();
descriptor: ()Lcom/sun/tools/javac/util/List;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=1
start local 0 0: aload 0
aconst_null
invokevirtual com.sun.tools.javac.code.ModuleFinder.scanModulePath:(Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)Lcom/sun/tools/javac/util/List;
astore 1
start local 1 1: aload 1
invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
astore 3
goto 5
StackMap locals: com.sun.tools.javac.code.ModuleFinder com.sun.tools.javac.util.List top java.util.Iterator
StackMap stack:
2: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Symbol$ModuleSymbol
astore 2
start local 2 3: aload 2
getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.kind:Lcom/sun/tools/javac/code/Kinds$Kind;
getstatic com.sun.tools.javac.code.Kinds$Kind.ERR:Lcom/sun/tools/javac/code/Kinds$Kind;
if_acmpeq 5
aload 2
getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.module_info:Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.sourcefile:Ljavax/tools/JavaFileObject;
ifnonnull 5
aload 2
getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.module_info:Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.classfile:Ljavax/tools/JavaFileObject;
ifnonnull 5
4: aload 0
aload 2
invokevirtual com.sun.tools.javac.code.ModuleFinder.findModuleInfo:(Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)V
end local 2 5: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
6: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/sun/tools/javac/code/ModuleFinder;
1 7 1 list Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;
3 5 2 msym Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
Signature: ()Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;
public com.sun.tools.javac.code.Symbol$ModuleSymbol findSingleModule();
descriptor: ()Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=1
start local 0 0: aload 0
getstatic javax.tools.StandardLocation.SOURCE_PATH:Ljavax/tools/StandardLocation;
getstatic javax.tools.JavaFileObject$Kind.SOURCE:Ljavax/tools/JavaFileObject$Kind;
invokevirtual com.sun.tools.javac.code.ModuleFinder.getModuleInfoFromLocation:(Ljavax/tools/JavaFileManager$Location;Ljavax/tools/JavaFileObject$Kind;)Ljavax/tools/JavaFileObject;
astore 1
start local 1 1: aload 0
getstatic javax.tools.StandardLocation.CLASS_OUTPUT:Ljavax/tools/StandardLocation;
getstatic javax.tools.JavaFileObject$Kind.CLASS:Ljavax/tools/JavaFileObject$Kind;
invokevirtual com.sun.tools.javac.code.ModuleFinder.getModuleInfoFromLocation:(Ljavax/tools/JavaFileManager$Location;Ljavax/tools/JavaFileObject$Kind;)Ljavax/tools/JavaFileObject;
astore 2
start local 2 2: aload 1
ifnonnull 3
aload 2
goto 5
3: StackMap locals: javax.tools.JavaFileObject javax.tools.JavaFileObject
StackMap stack:
aload 2
ifnonnull 4
aload 1
goto 5
4: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.code.ModuleFinder.classFinder:Lcom/sun/tools/javac/code/ClassFinder;
aload 1
aload 2
invokevirtual com.sun.tools.javac.code.ClassFinder.preferredFileObject:(Ljavax/tools/JavaFileObject;Ljavax/tools/JavaFileObject;)Ljavax/tools/JavaFileObject;
5: StackMap locals:
StackMap stack: javax.tools.JavaFileObject
astore 3
start local 3 6: aload 3
ifnonnull 9
7: aload 0
getfield com.sun.tools.javac.code.ModuleFinder.syms:Lcom/sun/tools/javac/code/Symtab;
getfield com.sun.tools.javac.code.Symtab.unnamedModule:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
astore 4
start local 4 8: goto 10
end local 4 9: StackMap locals: javax.tools.JavaFileObject
StackMap stack:
aload 0
aload 3
invokevirtual com.sun.tools.javac.code.ModuleFinder.readModule:(Ljavax/tools/JavaFileObject;)Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
astore 4
start local 4 10: StackMap locals: com.sun.tools.javac.code.Symbol$ModuleSymbol
StackMap stack:
aload 4
getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.patchLocation:Ljavax/tools/JavaFileManager$Location;
ifnonnull 13
11: aload 4
getstatic javax.tools.StandardLocation.CLASS_OUTPUT:Ljavax/tools/StandardLocation;
putfield com.sun.tools.javac.code.Symbol$ModuleSymbol.classLocation:Ljavax/tools/JavaFileManager$Location;
12: goto 14
13: StackMap locals:
StackMap stack:
aload 4
getstatic javax.tools.StandardLocation.CLASS_OUTPUT:Ljavax/tools/StandardLocation;
putfield com.sun.tools.javac.code.Symbol$ModuleSymbol.patchOutputLocation:Ljavax/tools/JavaFileManager$Location;
14: StackMap locals:
StackMap stack:
aload 4
15: areturn
end local 4 end local 3 end local 2 end local 1 16: StackMap locals: com.sun.tools.javac.code.ModuleFinder
StackMap stack: java.io.IOException
astore 1
start local 1 17: new java.lang.Error
dup
aload 1
invokespecial java.lang.Error.<init>:(Ljava/lang/Throwable;)V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lcom/sun/tools/javac/code/ModuleFinder;
1 16 1 src_fo Ljavax/tools/JavaFileObject;
2 16 2 class_fo Ljavax/tools/JavaFileObject;
6 16 3 fo Ljavax/tools/JavaFileObject;
8 9 4 msym Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
10 16 4 msym Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
17 18 1 e Ljava/io/IOException;
Exception table:
from to target type
0 15 16 Class java.io.IOException
private com.sun.tools.javac.code.Symbol$ModuleSymbol readModule(javax.tools.JavaFileObject);
descriptor: (Ljavax/tools/JavaFileObject;)Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=5, args_size=2
start local 0 start local 1 0: invokestatic com.sun.tools.javac.code.ModuleFinder.$SWITCH_TABLE$javax$tools$JavaFileObject$Kind:()[I
aload 1
invokeinterface javax.tools.JavaFileObject.getKind:()Ljavax/tools/JavaFileObject$Kind;
invokevirtual javax.tools.JavaFileObject$Kind.ordinal:()I
iaload
tableswitch { // 1 - 2
1: 1
2: 7
default: 12
}
1: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.code.ModuleFinder.moduleNameFromSourceReader:Lcom/sun/tools/javac/code/ModuleFinder$ModuleNameFromSourceReader;
aload 1
invokeinterface com.sun.tools.javac.code.ModuleFinder$ModuleNameFromSourceReader.readModuleName:(Ljavax/tools/JavaFileObject;)Lcom/sun/tools/javac/util/Name;
astore 2
start local 2 2: aload 2
ifnonnull 14
3: aload 0
getfield com.sun.tools.javac.code.ModuleFinder.diags:Lcom/sun/tools/javac/util/JCDiagnostic$Factory;
getstatic com.sun.tools.javac.resources.CompilerProperties$Fragments.FileDoesNotContainModule:Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;
invokevirtual com.sun.tools.javac.util.JCDiagnostic$Factory.fragment:(Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;)Lcom/sun/tools/javac/util/JCDiagnostic;
4: astore 3
start local 3 5: aload 0
getfield com.sun.tools.javac.code.ModuleFinder.syms:Lcom/sun/tools/javac/code/Symtab;
aload 0
getfield com.sun.tools.javac.code.ModuleFinder.names:Lcom/sun/tools/javac/util/Names;
getfield com.sun.tools.javac.util.Names.module_info:Lcom/sun/tools/javac/util/Name;
aload 0
getfield com.sun.tools.javac.code.ModuleFinder.syms:Lcom/sun/tools/javac/code/Symtab;
getfield com.sun.tools.javac.code.Symtab.errModule:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
invokevirtual com.sun.tools.javac.code.Symtab.defineClass:(Lcom/sun/tools/javac/util/Name;Lcom/sun/tools/javac/code/Symbol;)Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
astore 4
start local 4 6: new com.sun.tools.javac.code.ClassFinder$BadClassFile
dup
aload 4
aload 1
aload 3
aload 0
getfield com.sun.tools.javac.code.ModuleFinder.diags:Lcom/sun/tools/javac/util/JCDiagnostic$Factory;
aload 0
getfield com.sun.tools.javac.code.ModuleFinder.dcfh:Lcom/sun/tools/javac/code/DeferredCompletionFailureHandler;
invokespecial com.sun.tools.javac.code.ClassFinder$BadClassFile.<init>:(Lcom/sun/tools/javac/code/Symbol$TypeSymbol;Ljavax/tools/JavaFileObject;Lcom/sun/tools/javac/util/JCDiagnostic;Lcom/sun/tools/javac/util/JCDiagnostic$Factory;Lcom/sun/tools/javac/code/DeferredCompletionFailureHandler;)V
athrow
end local 4 end local 3 end local 2 7: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.code.ModuleFinder.names:Lcom/sun/tools/javac/util/Names;
aload 0
aload 1
invokevirtual com.sun.tools.javac.code.ModuleFinder.readModuleName:(Ljavax/tools/JavaFileObject;)Ljava/lang/String;
invokevirtual com.sun.tools.javac.util.Names.fromString:(Ljava/lang/String;)Lcom/sun/tools/javac/util/Name;
astore 2
start local 2 8: goto 14
end local 2 StackMap locals:
StackMap stack: java.lang.Exception
9: pop
10: aload 0
getfield com.sun.tools.javac.code.ModuleFinder.names:Lcom/sun/tools/javac/util/Names;
getfield com.sun.tools.javac.util.Names.error:Lcom/sun/tools/javac/util/Name;
astore 2
start local 2 11: goto 14
end local 2 12: StackMap locals:
StackMap stack:
invokestatic com.sun.tools.javac.util.Assert.error:()V
13: aload 0
getfield com.sun.tools.javac.code.ModuleFinder.names:Lcom/sun/tools/javac/util/Names;
getfield com.sun.tools.javac.util.Names.error:Lcom/sun/tools/javac/util/Name;
astore 2
start local 2 14: StackMap locals: com.sun.tools.javac.util.Name
StackMap stack:
aload 0
getfield com.sun.tools.javac.code.ModuleFinder.syms:Lcom/sun/tools/javac/code/Symtab;
aload 2
invokevirtual com.sun.tools.javac.code.Symtab.enterModule:(Lcom/sun/tools/javac/util/Name;)Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
astore 3
start local 3 15: aload 3
getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.module_info:Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.classfile:Ljavax/tools/JavaFileObject;
ifnonnull 27
16: aload 3
getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.module_info:Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
aload 1
putfield com.sun.tools.javac.code.Symbol$ClassSymbol.classfile:Ljavax/tools/JavaFileObject;
17: aload 0
getfield com.sun.tools.javac.code.ModuleFinder.fileManager:Ljavax/tools/JavaFileManager;
getstatic javax.tools.StandardLocation.PATCH_MODULE_PATH:Ljavax/tools/StandardLocation;
invokeinterface javax.tools.JavaFileManager.hasLocation:(Ljavax/tools/JavaFileManager$Location;)Z
ifeq 25
aload 2
aload 0
getfield com.sun.tools.javac.code.ModuleFinder.names:Lcom/sun/tools/javac/util/Names;
getfield com.sun.tools.javac.util.Names.error:Lcom/sun/tools/javac/util/Name;
if_acmpeq 25
18: aload 3
aload 0
getfield com.sun.tools.javac.code.ModuleFinder.fileManager:Ljavax/tools/JavaFileManager;
getstatic javax.tools.StandardLocation.PATCH_MODULE_PATH:Ljavax/tools/StandardLocation;
aload 2
invokevirtual com.sun.tools.javac.util.Name.toString:()Ljava/lang/String;
invokeinterface javax.tools.JavaFileManager.getLocationForModule:(Ljavax/tools/JavaFileManager$Location;Ljava/lang/String;)Ljavax/tools/JavaFileManager$Location;
putfield com.sun.tools.javac.code.Symbol$ModuleSymbol.patchLocation:Ljavax/tools/JavaFileManager$Location;
19: aload 3
getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.patchLocation:Ljavax/tools/JavaFileManager$Location;
ifnull 25
20: aload 0
getstatic javax.tools.StandardLocation.CLASS_OUTPUT:Ljavax/tools/StandardLocation;
getstatic javax.tools.JavaFileObject$Kind.CLASS:Ljavax/tools/JavaFileObject$Kind;
invokevirtual com.sun.tools.javac.code.ModuleFinder.getModuleInfoFromLocation:(Ljavax/tools/JavaFileManager$Location;Ljavax/tools/JavaFileObject$Kind;)Ljavax/tools/JavaFileObject;
astore 4
start local 4 21: aload 0
aload 0
aload 3
getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.patchLocation:Ljavax/tools/JavaFileManager$Location;
getstatic javax.tools.JavaFileObject$Kind.CLASS:Ljavax/tools/JavaFileObject$Kind;
invokevirtual com.sun.tools.javac.code.ModuleFinder.getModuleInfoFromLocation:(Ljavax/tools/JavaFileManager$Location;Ljavax/tools/JavaFileObject$Kind;)Ljavax/tools/JavaFileObject;
aload 4
invokevirtual com.sun.tools.javac.code.ModuleFinder.preferredFileObject:(Ljavax/tools/JavaFileObject;Ljavax/tools/JavaFileObject;)Ljavax/tools/JavaFileObject;
astore 4
22: aload 0
aload 0
aload 3
getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.patchLocation:Ljavax/tools/JavaFileManager$Location;
getstatic javax.tools.JavaFileObject$Kind.SOURCE:Ljavax/tools/JavaFileObject$Kind;
invokevirtual com.sun.tools.javac.code.ModuleFinder.getModuleInfoFromLocation:(Ljavax/tools/JavaFileManager$Location;Ljavax/tools/JavaFileObject$Kind;)Ljavax/tools/JavaFileObject;
aload 4
invokevirtual com.sun.tools.javac.code.ModuleFinder.preferredFileObject:(Ljavax/tools/JavaFileObject;Ljavax/tools/JavaFileObject;)Ljavax/tools/JavaFileObject;
astore 4
23: aload 4
ifnull 25
24: aload 3
getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.module_info:Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
aload 4
putfield com.sun.tools.javac.code.Symbol$ClassSymbol.classfile:Ljavax/tools/JavaFileObject;
end local 4 25: StackMap locals: com.sun.tools.javac.code.Symbol$ModuleSymbol
StackMap stack:
aload 3
getstatic com.sun.tools.javac.code.Symbol$Completer.NULL_COMPLETER:Lcom/sun/tools/javac/code/Symbol$Completer;
putfield com.sun.tools.javac.code.Symbol$ModuleSymbol.completer:Lcom/sun/tools/javac/code/Symbol$Completer;
26: aload 0
getfield com.sun.tools.javac.code.ModuleFinder.classFinder:Lcom/sun/tools/javac/code/ClassFinder;
aload 3
getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.module_info:Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
invokevirtual com.sun.tools.javac.code.ClassFinder.fillIn:(Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)V
27: StackMap locals:
StackMap stack:
aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 28 0 this Lcom/sun/tools/javac/code/ModuleFinder;
0 28 1 fo Ljavax/tools/JavaFileObject;
2 7 2 name Lcom/sun/tools/javac/util/Name;
8 9 2 name Lcom/sun/tools/javac/util/Name;
11 12 2 name Lcom/sun/tools/javac/util/Name;
14 28 2 name Lcom/sun/tools/javac/util/Name;
5 7 3 diag Lcom/sun/tools/javac/util/JCDiagnostic;
6 7 4 errModuleInfo Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
15 28 3 msym Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
21 25 4 patchFO Ljavax/tools/JavaFileObject;
Exception table:
from to target type
7 8 9 Class com.sun.tools.javac.jvm.ModuleNameReader$BadClassFile
7 8 9 Class java.io.IOException
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
fo
private java.lang.String readModuleName(javax.tools.JavaFileObject);
descriptor: (Ljavax/tools/JavaFileObject;)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.code.ModuleFinder.moduleNameReader:Lcom/sun/tools/javac/jvm/ModuleNameReader;
ifnonnull 2
1: aload 0
new com.sun.tools.javac.jvm.ModuleNameReader
dup
invokespecial com.sun.tools.javac.jvm.ModuleNameReader.<init>:()V
putfield com.sun.tools.javac.code.ModuleFinder.moduleNameReader:Lcom/sun/tools/javac/jvm/ModuleNameReader;
2: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.code.ModuleFinder.moduleNameReader:Lcom/sun/tools/javac/jvm/ModuleNameReader;
aload 1
invokevirtual com.sun.tools.javac.jvm.ModuleNameReader.readModuleName:(Ljavax/tools/JavaFileObject;)Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/tools/javac/code/ModuleFinder;
0 3 1 jfo Ljavax/tools/JavaFileObject;
Exceptions:
throws java.io.IOException, com.sun.tools.javac.jvm.ModuleNameReader$BadClassFile
MethodParameters:
Name Flags
jfo
private javax.tools.JavaFileObject getModuleInfoFromLocation(javax.tools.JavaFileManager$Location, javax.tools.JavaFileObject$Kind);
descriptor: (Ljavax/tools/JavaFileManager$Location;Ljavax/tools/JavaFileObject$Kind;)Ljavax/tools/JavaFileObject;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
ifnull 1
aload 0
getfield com.sun.tools.javac.code.ModuleFinder.fileManager:Ljavax/tools/JavaFileManager;
aload 1
invokeinterface javax.tools.JavaFileManager.hasLocation:(Ljavax/tools/JavaFileManager$Location;)Z
ifne 2
1: StackMap locals:
StackMap stack:
aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.code.ModuleFinder.fileManager:Ljavax/tools/JavaFileManager;
aload 1
3: aload 0
getfield com.sun.tools.javac.code.ModuleFinder.names:Lcom/sun/tools/javac/util/Names;
getfield com.sun.tools.javac.util.Names.module_info:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.util.Name.toString:()Ljava/lang/String;
4: aload 2
5: invokeinterface javax.tools.JavaFileManager.getJavaFileForInput:(Ljavax/tools/JavaFileManager$Location;Ljava/lang/String;Ljavax/tools/JavaFileObject$Kind;)Ljavax/tools/JavaFileObject;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/sun/tools/javac/code/ModuleFinder;
0 6 1 location Ljavax/tools/JavaFileManager$Location;
0 6 2 kind Ljavax/tools/JavaFileObject$Kind;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
location
kind
private com.sun.tools.javac.util.List<com.sun.tools.javac.code.Symbol$ModuleSymbol> scanModulePath(com.sun.tools.javac.code.Symbol$ModuleSymbol);
descriptor: (Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)Lcom/sun/tools/javac/util/List;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=10, args_size=2
start local 0 start local 1 0: new com.sun.tools.javac.util.ListBuffer
dup
invokespecial com.sun.tools.javac.util.ListBuffer.<init>:()V
astore 2
start local 2 1: new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
astore 3
start local 3 2: aload 0
getfield com.sun.tools.javac.code.ModuleFinder.fileManager:Ljavax/tools/JavaFileManager;
getstatic javax.tools.StandardLocation.MODULE_SOURCE_PATH:Ljavax/tools/StandardLocation;
invokeinterface javax.tools.JavaFileManager.hasLocation:(Ljavax/tools/JavaFileManager$Location;)Z
istore 4
start local 4 3: goto 53
4: StackMap locals: com.sun.tools.javac.util.ListBuffer java.util.Map int
StackMap stack:
aload 0
getfield com.sun.tools.javac.code.ModuleFinder.moduleLocationIterator:Lcom/sun/tools/javac/code/ModuleFinder$ModuleLocationIterator;
invokevirtual com.sun.tools.javac.code.ModuleFinder$ModuleLocationIterator.next:()Ljava/util/Set;
astore 5
start local 5 5: aload 3
invokeinterface java.util.Map.clear:()V
6: aload 5
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 7
goto 50
StackMap locals: com.sun.tools.javac.code.ModuleFinder com.sun.tools.javac.code.Symbol$ModuleSymbol com.sun.tools.javac.util.ListBuffer java.util.Map int java.util.Set top java.util.Iterator
StackMap stack:
7: aload 7
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast javax.tools.JavaFileManager$Location
astore 6
start local 6 8: aload 0
getfield com.sun.tools.javac.code.ModuleFinder.names:Lcom/sun/tools/javac/util/Names;
aload 0
getfield com.sun.tools.javac.code.ModuleFinder.fileManager:Ljavax/tools/JavaFileManager;
aload 6
invokeinterface javax.tools.JavaFileManager.inferModuleName:(Ljavax/tools/JavaFileManager$Location;)Ljava/lang/String;
invokevirtual com.sun.tools.javac.util.Names.fromString:(Ljava/lang/String;)Lcom/sun/tools/javac/util/Name;
astore 8
start local 8 9: aload 3
aload 8
aload 6
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
ifnonnull 45
10: aload 0
getfield com.sun.tools.javac.code.ModuleFinder.syms:Lcom/sun/tools/javac/code/Symtab;
aload 8
invokevirtual com.sun.tools.javac.code.Symtab.enterModule:(Lcom/sun/tools/javac/util/Name;)Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
astore 9
start local 9 11: aload 9
getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.sourceLocation:Ljavax/tools/JavaFileManager$Location;
ifnonnull 50
aload 9
getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.classLocation:Ljavax/tools/JavaFileManager$Location;
ifnull 13
12: goto 50
13: StackMap locals: com.sun.tools.javac.code.ModuleFinder com.sun.tools.javac.code.Symbol$ModuleSymbol com.sun.tools.javac.util.ListBuffer java.util.Map int java.util.Set javax.tools.JavaFileManager$Location java.util.Iterator com.sun.tools.javac.util.Name com.sun.tools.javac.code.Symbol$ModuleSymbol
StackMap stack:
aload 0
getfield com.sun.tools.javac.code.ModuleFinder.fileManager:Ljavax/tools/JavaFileManager;
getstatic javax.tools.StandardLocation.PATCH_MODULE_PATH:Ljavax/tools/StandardLocation;
invokeinterface javax.tools.JavaFileManager.hasLocation:(Ljavax/tools/JavaFileManager$Location;)Z
ifeq 28
14: aload 9
getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.patchLocation:Ljavax/tools/JavaFileManager$Location;
ifnonnull 28
15: aload 9
16: aload 0
getfield com.sun.tools.javac.code.ModuleFinder.fileManager:Ljavax/tools/JavaFileManager;
getstatic javax.tools.StandardLocation.PATCH_MODULE_PATH:Ljavax/tools/StandardLocation;
17: aload 9
getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.name:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.util.Name.toString:()Ljava/lang/String;
18: invokeinterface javax.tools.JavaFileManager.getLocationForModule:(Ljavax/tools/JavaFileManager$Location;Ljava/lang/String;)Ljavax/tools/JavaFileManager$Location;
19: putfield com.sun.tools.javac.code.Symbol$ModuleSymbol.patchLocation:Ljavax/tools/JavaFileManager$Location;
20: aload 9
getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.patchLocation:Ljavax/tools/JavaFileManager$Location;
ifnull 28
21: iload 4
ifeq 28
22: aload 0
getfield com.sun.tools.javac.code.ModuleFinder.fileManager:Ljavax/tools/JavaFileManager;
getstatic javax.tools.StandardLocation.CLASS_OUTPUT:Ljavax/tools/StandardLocation;
invokeinterface javax.tools.JavaFileManager.hasLocation:(Ljavax/tools/JavaFileManager$Location;)Z
ifeq 28
23: aload 9
24: aload 0
getfield com.sun.tools.javac.code.ModuleFinder.fileManager:Ljavax/tools/JavaFileManager;
getstatic javax.tools.StandardLocation.CLASS_OUTPUT:Ljavax/tools/StandardLocation;
25: aload 9
getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.name:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.util.Name.toString:()Ljava/lang/String;
26: invokeinterface javax.tools.JavaFileManager.getLocationForModule:(Ljavax/tools/JavaFileManager$Location;Ljava/lang/String;)Ljavax/tools/JavaFileManager$Location;
27: putfield com.sun.tools.javac.code.Symbol$ModuleSymbol.patchOutputLocation:Ljavax/tools/JavaFileManager$Location;
28: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.code.ModuleFinder.moduleLocationIterator:Lcom/sun/tools/javac/code/ModuleFinder$ModuleLocationIterator;
getfield com.sun.tools.javac.code.ModuleFinder$ModuleLocationIterator.outer:Ljavax/tools/StandardLocation;
getstatic javax.tools.StandardLocation.MODULE_SOURCE_PATH:Ljavax/tools/StandardLocation;
if_acmpne 37
29: aload 9
aload 6
putfield com.sun.tools.javac.code.Symbol$ModuleSymbol.sourceLocation:Ljavax/tools/JavaFileManager$Location;
30: aload 0
getfield com.sun.tools.javac.code.ModuleFinder.fileManager:Ljavax/tools/JavaFileManager;
getstatic javax.tools.StandardLocation.CLASS_OUTPUT:Ljavax/tools/StandardLocation;
invokeinterface javax.tools.JavaFileManager.hasLocation:(Ljavax/tools/JavaFileManager$Location;)Z
ifeq 38
31: aload 9
32: aload 0
getfield com.sun.tools.javac.code.ModuleFinder.fileManager:Ljavax/tools/JavaFileManager;
getstatic javax.tools.StandardLocation.CLASS_OUTPUT:Ljavax/tools/StandardLocation;
33: aload 9
getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.name:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.util.Name.toString:()Ljava/lang/String;
34: invokeinterface javax.tools.JavaFileManager.getLocationForModule:(Ljavax/tools/JavaFileManager$Location;Ljava/lang/String;)Ljavax/tools/JavaFileManager$Location;
35: putfield com.sun.tools.javac.code.Symbol$ModuleSymbol.classLocation:Ljavax/tools/JavaFileManager$Location;
36: goto 38
37: StackMap locals:
StackMap stack:
aload 9
aload 6
putfield com.sun.tools.javac.code.Symbol$ModuleSymbol.classLocation:Ljavax/tools/JavaFileManager$Location;
38: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.code.ModuleFinder.moduleLocationIterator:Lcom/sun/tools/javac/code/ModuleFinder$ModuleLocationIterator;
getfield com.sun.tools.javac.code.ModuleFinder$ModuleLocationIterator.outer:Ljavax/tools/StandardLocation;
getstatic javax.tools.StandardLocation.SYSTEM_MODULES:Ljavax/tools/StandardLocation;
if_acmpeq 40
39: aload 0
getfield com.sun.tools.javac.code.ModuleFinder.moduleLocationIterator:Lcom/sun/tools/javac/code/ModuleFinder$ModuleLocationIterator;
getfield com.sun.tools.javac.code.ModuleFinder$ModuleLocationIterator.outer:Ljavax/tools/StandardLocation;
getstatic javax.tools.StandardLocation.UPGRADE_MODULE_PATH:Ljavax/tools/StandardLocation;
if_acmpne 41
40: StackMap locals:
StackMap stack:
aload 9
dup
getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.flags_field:J
ldc 9007199254740992
lor
putfield com.sun.tools.javac.code.Symbol$ModuleSymbol.flags_field:J
41: StackMap locals:
StackMap stack:
aload 1
ifnull 43
42: aload 1
aload 9
if_acmpne 50
aload 9
getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.sourceLocation:Ljavax/tools/JavaFileManager$Location;
ifnonnull 43
aload 9
getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.classLocation:Ljavax/tools/JavaFileManager$Location;
ifnull 50
43: StackMap locals:
StackMap stack:
aload 2
aload 9
invokevirtual com.sun.tools.javac.util.ListBuffer.add:(Ljava/lang/Object;)Z
pop
end local 9 44: goto 50
45: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.code.ModuleFinder.log:Lcom/sun/tools/javac/util/Log;
46: aload 0
aload 0
getfield com.sun.tools.javac.code.ModuleFinder.moduleLocationIterator:Lcom/sun/tools/javac/code/ModuleFinder$ModuleLocationIterator;
getfield com.sun.tools.javac.code.ModuleFinder$ModuleLocationIterator.outer:Ljavax/tools/StandardLocation;
invokevirtual com.sun.tools.javac.code.ModuleFinder.getDescription:(Ljavax/tools/StandardLocation;)Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;
aload 8
47: invokestatic com.sun.tools.javac.resources.CompilerProperties$Errors.DuplicateModuleOnPath:(Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;Lcom/sun/tools/javac/util/Name;)Lcom/sun/tools/javac/util/JCDiagnostic$Error;
invokevirtual com.sun.tools.javac.util.Log.error:(Lcom/sun/tools/javac/util/JCDiagnostic$Error;)V
end local 8 48: goto 50
StackMap locals: com.sun.tools.javac.code.ModuleFinder com.sun.tools.javac.code.Symbol$ModuleSymbol com.sun.tools.javac.util.ListBuffer java.util.Map int java.util.Set javax.tools.JavaFileManager$Location java.util.Iterator
StackMap stack: java.io.IOException
49: pop
end local 6 50: StackMap locals: com.sun.tools.javac.code.ModuleFinder com.sun.tools.javac.code.Symbol$ModuleSymbol com.sun.tools.javac.util.ListBuffer java.util.Map int java.util.Set top java.util.Iterator
StackMap stack:
aload 7
invokeinterface java.util.Iterator.hasNext:()Z
ifne 7
51: aload 1
ifnull 53
aload 2
invokevirtual com.sun.tools.javac.util.ListBuffer.nonEmpty:()Z
ifeq 53
52: aload 2
invokevirtual com.sun.tools.javac.util.ListBuffer.toList:()Lcom/sun/tools/javac/util/List;
areturn
end local 5 53: StackMap locals: com.sun.tools.javac.code.ModuleFinder com.sun.tools.javac.code.Symbol$ModuleSymbol com.sun.tools.javac.util.ListBuffer java.util.Map int
StackMap stack:
aload 0
getfield com.sun.tools.javac.code.ModuleFinder.moduleLocationIterator:Lcom/sun/tools/javac/code/ModuleFinder$ModuleLocationIterator;
invokevirtual com.sun.tools.javac.code.ModuleFinder$ModuleLocationIterator.hasNext:()Z
ifne 4
54: aload 2
invokevirtual com.sun.tools.javac.util.ListBuffer.toList:()Lcom/sun/tools/javac/util/List;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 55 0 this Lcom/sun/tools/javac/code/ModuleFinder;
0 55 1 toFind Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
1 55 2 results Lcom/sun/tools/javac/util/ListBuffer<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;
2 55 3 namesInSet Ljava/util/Map<Lcom/sun/tools/javac/util/Name;Ljavax/tools/JavaFileManager$Location;>;
3 55 4 multiModuleMode Z
5 53 5 locns Ljava/util/Set<Ljavax/tools/JavaFileManager$Location;>;
8 50 6 l Ljavax/tools/JavaFileManager$Location;
9 48 8 n Lcom/sun/tools/javac/util/Name;
11 44 9 msym Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
Exception table:
from to target type
8 12 49 Class java.io.IOException
13 48 49 Class java.io.IOException
Signature: (Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;
MethodParameters:
Name Flags
toFind
private void findModuleInfo(com.sun.tools.javac.code.Symbol$ModuleSymbol);
descriptor: (Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=4, args_size=2
start local 0 start local 1 0: aload 0
aload 1
getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.patchOutputLocation:Ljavax/tools/JavaFileManager$Location;
getstatic javax.tools.JavaFileObject$Kind.CLASS:Ljavax/tools/JavaFileObject$Kind;
invokevirtual com.sun.tools.javac.code.ModuleFinder.getModuleInfoFromLocation:(Ljavax/tools/JavaFileManager$Location;Ljavax/tools/JavaFileObject$Kind;)Ljavax/tools/JavaFileObject;
astore 2
start local 2 1: aload 0
aload 0
aload 1
getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.patchLocation:Ljavax/tools/JavaFileManager$Location;
getstatic javax.tools.JavaFileObject$Kind.CLASS:Ljavax/tools/JavaFileObject$Kind;
invokevirtual com.sun.tools.javac.code.ModuleFinder.getModuleInfoFromLocation:(Ljavax/tools/JavaFileManager$Location;Ljavax/tools/JavaFileObject$Kind;)Ljavax/tools/JavaFileObject;
aload 2
invokevirtual com.sun.tools.javac.code.ModuleFinder.preferredFileObject:(Ljavax/tools/JavaFileObject;Ljavax/tools/JavaFileObject;)Ljavax/tools/JavaFileObject;
astore 2
2: aload 0
aload 0
aload 1
getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.patchLocation:Ljavax/tools/JavaFileManager$Location;
getstatic javax.tools.JavaFileObject$Kind.SOURCE:Ljavax/tools/JavaFileObject$Kind;
invokevirtual com.sun.tools.javac.code.ModuleFinder.getModuleInfoFromLocation:(Ljavax/tools/JavaFileManager$Location;Ljavax/tools/JavaFileObject$Kind;)Ljavax/tools/JavaFileObject;
aload 2
invokevirtual com.sun.tools.javac.code.ModuleFinder.preferredFileObject:(Ljavax/tools/JavaFileObject;Ljavax/tools/JavaFileObject;)Ljavax/tools/JavaFileObject;
astore 2
3: aload 2
ifnonnull 6
4: aload 0
aload 1
getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.classLocation:Ljavax/tools/JavaFileManager$Location;
getstatic javax.tools.JavaFileObject$Kind.CLASS:Ljavax/tools/JavaFileObject$Kind;
invokevirtual com.sun.tools.javac.code.ModuleFinder.getModuleInfoFromLocation:(Ljavax/tools/JavaFileManager$Location;Ljavax/tools/JavaFileObject$Kind;)Ljavax/tools/JavaFileObject;
astore 2
5: aload 0
aload 0
aload 1
getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.sourceLocation:Ljavax/tools/JavaFileManager$Location;
getstatic javax.tools.JavaFileObject$Kind.SOURCE:Ljavax/tools/JavaFileObject$Kind;
invokevirtual com.sun.tools.javac.code.ModuleFinder.getModuleInfoFromLocation:(Ljavax/tools/JavaFileManager$Location;Ljavax/tools/JavaFileObject$Kind;)Ljavax/tools/JavaFileObject;
aload 2
invokevirtual com.sun.tools.javac.code.ModuleFinder.preferredFileObject:(Ljavax/tools/JavaFileObject;Ljavax/tools/JavaFileObject;)Ljavax/tools/JavaFileObject;
astore 2
6: StackMap locals: javax.tools.JavaFileObject
StackMap stack:
aload 2
ifnonnull 17
7: aload 1
getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.sourceLocation:Ljavax/tools/JavaFileManager$Location;
ifnonnull 9
aload 1
getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.classLocation:Ljavax/tools/JavaFileManager$Location;
ifnull 9
8: aload 0
getfield com.sun.tools.javac.code.ModuleFinder.fileManager:Ljavax/tools/JavaFileManager;
aload 1
getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.classLocation:Ljavax/tools/JavaFileManager$Location;
invokeinterface javax.tools.JavaFileManager.inferModuleName:(Ljavax/tools/JavaFileManager$Location;)Ljava/lang/String;
goto 10
StackMap locals:
StackMap stack:
9: aconst_null
10: StackMap locals:
StackMap stack: java.lang.String
astore 3
start local 3 11: aload 3
ifnull 15
12: aload 1
getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.module_info:Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
aconst_null
putfield com.sun.tools.javac.code.Symbol$ClassSymbol.classfile:Ljavax/tools/JavaFileObject;
13: aload 1
dup
getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.flags_field:J
ldc 4503599627370496
lor
putfield com.sun.tools.javac.code.Symbol$ModuleSymbol.flags_field:J
14: goto 22
15: StackMap locals: java.lang.String
StackMap stack:
aload 1
getstatic com.sun.tools.javac.code.Kinds$Kind.ERR:Lcom/sun/tools/javac/code/Kinds$Kind;
putfield com.sun.tools.javac.code.Symbol$ModuleSymbol.kind:Lcom/sun/tools/javac/code/Kinds$Kind;
end local 3 16: goto 22
17: StackMap locals:
StackMap stack:
aload 1
getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.module_info:Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
aload 2
putfield com.sun.tools.javac.code.Symbol$ClassSymbol.classfile:Ljavax/tools/JavaFileObject;
18: aload 1
getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.module_info:Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
new com.sun.tools.javac.code.ModuleFinder$1
dup
aload 0
aload 1
invokespecial com.sun.tools.javac.code.ModuleFinder$1.<init>:(Lcom/sun/tools/javac/code/ModuleFinder;Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)V
putfield com.sun.tools.javac.code.Symbol$ClassSymbol.completer:Lcom/sun/tools/javac/code/Symbol$Completer;
end local 2 19: goto 22
StackMap locals: com.sun.tools.javac.code.ModuleFinder com.sun.tools.javac.code.Symbol$ModuleSymbol
StackMap stack: java.io.IOException
20: pop
21: aload 1
getstatic com.sun.tools.javac.code.Kinds$Kind.ERR:Lcom/sun/tools/javac/code/Kinds$Kind;
putfield com.sun.tools.javac.code.Symbol$ModuleSymbol.kind:Lcom/sun/tools/javac/code/Kinds$Kind;
22: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 23 0 this Lcom/sun/tools/javac/code/ModuleFinder;
0 23 1 msym Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
1 19 2 fo Ljavax/tools/JavaFileObject;
11 16 3 moduleName Ljava/lang/String;
Exception table:
from to target type
0 19 20 Class java.io.IOException
MethodParameters:
Name Flags
msym
private javax.tools.JavaFileObject preferredFileObject(javax.tools.JavaFileObject, javax.tools.JavaFileObject);
descriptor: (Ljavax/tools/JavaFileObject;Ljavax/tools/JavaFileObject;)Ljavax/tools/JavaFileObject;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
ifnonnull 1
aload 2
areturn
1: StackMap locals:
StackMap stack:
aload 2
ifnonnull 2
aload 1
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.code.ModuleFinder.classFinder:Lcom/sun/tools/javac/code/ClassFinder;
aload 1
aload 2
invokevirtual com.sun.tools.javac.code.ClassFinder.preferredFileObject:(Ljavax/tools/JavaFileObject;Ljavax/tools/JavaFileObject;)Ljavax/tools/JavaFileObject;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/tools/javac/code/ModuleFinder;
0 3 1 fo1 Ljavax/tools/JavaFileObject;
0 3 2 fo2 Ljavax/tools/JavaFileObject;
MethodParameters:
Name Flags
fo1
fo2
com.sun.tools.javac.util.JCDiagnostic$Fragment getDescription(javax.tools.StandardLocation);
descriptor: (Ljavax/tools/StandardLocation;)Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: invokestatic com.sun.tools.javac.code.ModuleFinder.$SWITCH_TABLE$javax$tools$StandardLocation:()[I
aload 1
invokevirtual javax.tools.StandardLocation.ordinal:()I
iaload
tableswitch { // 9 - 12
9: 2
10: 4
11: 3
12: 1
default: 5
}
1: StackMap locals:
StackMap stack:
getstatic com.sun.tools.javac.resources.CompilerProperties$Fragments.LocnModule_path:Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;
areturn
2: StackMap locals:
StackMap stack:
getstatic com.sun.tools.javac.resources.CompilerProperties$Fragments.LocnModule_source_path:Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;
areturn
3: StackMap locals:
StackMap stack:
getstatic com.sun.tools.javac.resources.CompilerProperties$Fragments.LocnSystem_modules:Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;
areturn
4: StackMap locals:
StackMap stack:
getstatic com.sun.tools.javac.resources.CompilerProperties$Fragments.LocnUpgrade_module_path:Lcom/sun/tools/javac/util/JCDiagnostic$Fragment;
areturn
5: StackMap locals:
StackMap stack:
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/sun/tools/javac/code/ModuleFinder;
0 6 1 l Ljavax/tools/StandardLocation;
MethodParameters:
Name Flags
l
static int[] $SWITCH_TABLE$javax$tools$JavaFileObject$Kind();
descriptor: ()[I
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=0
0: getstatic com.sun.tools.javac.code.ModuleFinder.$SWITCH_TABLE$javax$tools$JavaFileObject$Kind:[I
dup
ifnull 1
areturn
StackMap locals:
StackMap stack: int[]
1: pop
invokestatic javax.tools.JavaFileObject$Kind.values:()[Ljavax/tools/JavaFileObject$Kind;
arraylength
newarray 10
astore 0
2: aload 0
getstatic javax.tools.JavaFileObject$Kind.CLASS:Ljavax/tools/JavaFileObject$Kind;
invokevirtual javax.tools.JavaFileObject$Kind.ordinal:()I
iconst_2
iastore
3: goto 5
StackMap locals: int[]
StackMap stack: java.lang.NoSuchFieldError
4: pop
StackMap locals:
StackMap stack:
5: aload 0
getstatic javax.tools.JavaFileObject$Kind.HTML:Ljavax/tools/JavaFileObject$Kind;
invokevirtual javax.tools.JavaFileObject$Kind.ordinal:()I
iconst_3
iastore
6: goto 8
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
7: pop
StackMap locals:
StackMap stack:
8: aload 0
getstatic javax.tools.JavaFileObject$Kind.OTHER:Ljavax/tools/JavaFileObject$Kind;
invokevirtual javax.tools.JavaFileObject$Kind.ordinal:()I
iconst_4
iastore
9: goto 11
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
10: pop
StackMap locals:
StackMap stack:
11: aload 0
getstatic javax.tools.JavaFileObject$Kind.SOURCE:Ljavax/tools/JavaFileObject$Kind;
invokevirtual javax.tools.JavaFileObject$Kind.ordinal:()I
iconst_1
iastore
12: goto 14
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
13: pop
StackMap locals:
StackMap stack:
14: aload 0
dup
putstatic com.sun.tools.javac.code.ModuleFinder.$SWITCH_TABLE$javax$tools$JavaFileObject$Kind:[I
areturn
LocalVariableTable:
Start End Slot Name Signature
Exception table:
from to target type
2 3 4 Class java.lang.NoSuchFieldError
5 6 7 Class java.lang.NoSuchFieldError
8 9 10 Class java.lang.NoSuchFieldError
11 12 13 Class java.lang.NoSuchFieldError
static int[] $SWITCH_TABLE$javax$tools$StandardLocation();
descriptor: ()[I
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=0
0: getstatic com.sun.tools.javac.code.ModuleFinder.$SWITCH_TABLE$javax$tools$StandardLocation:[I
dup
ifnull 1
areturn
StackMap locals:
StackMap stack: int[]
1: pop
invokestatic javax.tools.StandardLocation.values:()[Ljavax/tools/StandardLocation;
arraylength
newarray 10
astore 0
2: aload 0
getstatic javax.tools.StandardLocation.ANNOTATION_PROCESSOR_MODULE_PATH:Ljavax/tools/StandardLocation;
invokevirtual javax.tools.StandardLocation.ordinal:()I
bipush 6
iastore
3: goto 5
StackMap locals: int[]
StackMap stack: java.lang.NoSuchFieldError
4: pop
StackMap locals:
StackMap stack:
5: aload 0
getstatic javax.tools.StandardLocation.ANNOTATION_PROCESSOR_PATH:Ljavax/tools/StandardLocation;
invokevirtual javax.tools.StandardLocation.ordinal:()I
iconst_5
iastore
6: goto 8
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
7: pop
StackMap locals:
StackMap stack:
8: aload 0
getstatic javax.tools.StandardLocation.CLASS_OUTPUT:Ljavax/tools/StandardLocation;
invokevirtual javax.tools.StandardLocation.ordinal:()I
iconst_1
iastore
9: goto 11
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
10: pop
StackMap locals:
StackMap stack:
11: aload 0
getstatic javax.tools.StandardLocation.CLASS_PATH:Ljavax/tools/StandardLocation;
invokevirtual javax.tools.StandardLocation.ordinal:()I
iconst_3
iastore
12: goto 14
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
13: pop
StackMap locals:
StackMap stack:
14: aload 0
getstatic javax.tools.StandardLocation.MODULE_PATH:Ljavax/tools/StandardLocation;
invokevirtual javax.tools.StandardLocation.ordinal:()I
bipush 12
iastore
15: goto 17
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
16: pop
StackMap locals:
StackMap stack:
17: aload 0
getstatic javax.tools.StandardLocation.MODULE_SOURCE_PATH:Ljavax/tools/StandardLocation;
invokevirtual javax.tools.StandardLocation.ordinal:()I
bipush 9
iastore
18: goto 20
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
19: pop
StackMap locals:
StackMap stack:
20: aload 0
getstatic javax.tools.StandardLocation.NATIVE_HEADER_OUTPUT:Ljavax/tools/StandardLocation;
invokevirtual javax.tools.StandardLocation.ordinal:()I
bipush 8
iastore
21: goto 23
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
22: pop
StackMap locals:
StackMap stack:
23: aload 0
getstatic javax.tools.StandardLocation.PATCH_MODULE_PATH:Ljavax/tools/StandardLocation;
invokevirtual javax.tools.StandardLocation.ordinal:()I
bipush 13
iastore
24: goto 26
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
25: pop
StackMap locals:
StackMap stack:
26: aload 0
getstatic javax.tools.StandardLocation.PLATFORM_CLASS_PATH:Ljavax/tools/StandardLocation;
invokevirtual javax.tools.StandardLocation.ordinal:()I
bipush 7
iastore
27: goto 29
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
28: pop
StackMap locals:
StackMap stack:
29: aload 0
getstatic javax.tools.StandardLocation.SOURCE_OUTPUT:Ljavax/tools/StandardLocation;
invokevirtual javax.tools.StandardLocation.ordinal:()I
iconst_2
iastore
30: goto 32
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
31: pop
StackMap locals:
StackMap stack:
32: aload 0
getstatic javax.tools.StandardLocation.SOURCE_PATH:Ljavax/tools/StandardLocation;
invokevirtual javax.tools.StandardLocation.ordinal:()I
iconst_4
iastore
33: goto 35
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
34: pop
StackMap locals:
StackMap stack:
35: aload 0
getstatic javax.tools.StandardLocation.SYSTEM_MODULES:Ljavax/tools/StandardLocation;
invokevirtual javax.tools.StandardLocation.ordinal:()I
bipush 11
iastore
36: goto 38
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
37: pop
StackMap locals:
StackMap stack:
38: aload 0
getstatic javax.tools.StandardLocation.UPGRADE_MODULE_PATH:Ljavax/tools/StandardLocation;
invokevirtual javax.tools.StandardLocation.ordinal:()I
bipush 10
iastore
39: goto 41
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
40: pop
StackMap locals:
StackMap stack:
41: aload 0
dup
putstatic com.sun.tools.javac.code.ModuleFinder.$SWITCH_TABLE$javax$tools$StandardLocation:[I
areturn
LocalVariableTable:
Start End Slot Name Signature
Exception table:
from to target type
2 3 4 Class java.lang.NoSuchFieldError
5 6 7 Class java.lang.NoSuchFieldError
8 9 10 Class java.lang.NoSuchFieldError
11 12 13 Class java.lang.NoSuchFieldError
14 15 16 Class java.lang.NoSuchFieldError
17 18 19 Class java.lang.NoSuchFieldError
20 21 22 Class java.lang.NoSuchFieldError
23 24 25 Class java.lang.NoSuchFieldError
26 27 28 Class java.lang.NoSuchFieldError
29 30 31 Class java.lang.NoSuchFieldError
32 33 34 Class java.lang.NoSuchFieldError
35 36 37 Class java.lang.NoSuchFieldError
38 39 40 Class java.lang.NoSuchFieldError
}
SourceFile: "ModuleFinder.java"
NestMembers:
com.sun.tools.javac.code.ModuleFinder$1 com.sun.tools.javac.code.ModuleFinder$ModuleLocationIterator com.sun.tools.javac.code.ModuleFinder$ModuleNameFromSourceReader
InnerClasses:
public BadClassFile = com.sun.tools.javac.code.ClassFinder$BadClassFile of com.sun.tools.javac.code.ClassFinder
public final Kind = com.sun.tools.javac.code.Kinds$Kind of com.sun.tools.javac.code.Kinds
com.sun.tools.javac.code.ModuleFinder$1
ModuleLocationIterator = com.sun.tools.javac.code.ModuleFinder$ModuleLocationIterator of com.sun.tools.javac.code.ModuleFinder
public abstract ModuleNameFromSourceReader = com.sun.tools.javac.code.ModuleFinder$ModuleNameFromSourceReader of com.sun.tools.javac.code.ModuleFinder
public ClassSymbol = com.sun.tools.javac.code.Symbol$ClassSymbol of com.sun.tools.javac.code.Symbol
public abstract Completer = com.sun.tools.javac.code.Symbol$Completer of com.sun.tools.javac.code.Symbol
public ModuleSymbol = com.sun.tools.javac.code.Symbol$ModuleSymbol of com.sun.tools.javac.code.Symbol
public abstract TypeSymbol = com.sun.tools.javac.code.Symbol$TypeSymbol of com.sun.tools.javac.code.Symbol
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 Fragments = com.sun.tools.javac.resources.CompilerProperties$Fragments of com.sun.tools.javac.resources.CompilerProperties
public Key = com.sun.tools.javac.util.Context$Key of com.sun.tools.javac.util.Context
public final Error = com.sun.tools.javac.util.JCDiagnostic$Error of com.sun.tools.javac.util.JCDiagnostic
public Factory = com.sun.tools.javac.util.JCDiagnostic$Factory of com.sun.tools.javac.util.JCDiagnostic
public final Fragment = com.sun.tools.javac.util.JCDiagnostic$Fragment of com.sun.tools.javac.util.JCDiagnostic
public abstract Location = javax.tools.JavaFileManager$Location of javax.tools.JavaFileManager
public final Kind = javax.tools.JavaFileObject$Kind of javax.tools.JavaFileObject