final class jdk.nashorn.tools.jjs.PackagesHelper
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: jdk.nashorn.tools.jjs.PackagesHelper
super_class: java.lang.Object
{
private static final javax.tools.JavaCompiler compiler;
descriptor: Ljavax/tools/JavaCompiler;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private final jdk.nashorn.internal.runtime.Context context;
descriptor: Ljdk/nashorn/internal/runtime/Context;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final boolean modulePathSet;
descriptor: Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final javax.tools.StandardJavaFileManager fm;
descriptor: Ljavax/tools/StandardJavaFileManager;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.util.Set<javax.tools.JavaFileObject$Kind> fileKinds;
descriptor: Ljava/util/Set;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Set<Ljavax/tools/JavaFileObject$Kind;>;
private final java.nio.file.FileSystem jrtfs;
descriptor: Ljava/nio/file/FileSystem;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.util.LinkedHashMap<java.lang.String, java.util.List<java.lang.String>> propsCache;
descriptor: Ljava/util/LinkedHashMap;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/LinkedHashMap<Ljava/lang/String;Ljava/util/List<Ljava/lang/String;>;>;
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: invokestatic java.lang.System.getSecurityManager:()Ljava/lang/SecurityManager;
ifnonnull 1
invokestatic javax.tools.ToolProvider.getSystemJavaCompiler:()Ljavax/tools/JavaCompiler;
goto 2
StackMap locals:
StackMap stack:
1: aconst_null
StackMap locals:
StackMap stack: javax.tools.JavaCompiler
2: putstatic jdk.nashorn.tools.jjs.PackagesHelper.compiler:Ljavax/tools/JavaCompiler;
3: return
LocalVariableTable:
Start End Slot Name Signature
private static boolean isJavacAvailable();
descriptor: ()Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: getstatic jdk.nashorn.tools.jjs.PackagesHelper.compiler:Ljavax/tools/JavaCompiler;
ifnull 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
LocalVariableTable:
Start End Slot Name Signature
void <init>(jdk.nashorn.internal.runtime.Context);
descriptor: (Ljdk/nashorn/internal/runtime/Context;)V
flags: (0x0000)
Code:
stack=7, locals=4, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
2: new jdk.nashorn.tools.jjs.PackagesHelper$1
dup
aload 0
bipush 32
ldc 0.75
iconst_1
invokespecial jdk.nashorn.tools.jjs.PackagesHelper$1.<init>:(Ljdk/nashorn/tools/jjs/PackagesHelper;IFZ)V
putfield jdk.nashorn.tools.jjs.PackagesHelper.propsCache:Ljava/util/LinkedHashMap;
3: aload 0
aload 1
putfield jdk.nashorn.tools.jjs.PackagesHelper.context:Ljdk/nashorn/internal/runtime/Context;
4: aload 1
invokevirtual jdk.nashorn.internal.runtime.Context.getEnv:()Ljdk/nashorn/internal/runtime/ScriptEnvironment;
getfield jdk.nashorn.internal.runtime.ScriptEnvironment._module_path:Ljava/lang/String;
astore 2
start local 2 5: aload 0
aload 2
ifnull 6
aload 2
invokevirtual java.lang.String.isEmpty:()Z
ifne 6
iconst_1
goto 7
StackMap locals: jdk.nashorn.tools.jjs.PackagesHelper jdk.nashorn.internal.runtime.Context java.lang.String
StackMap stack: jdk.nashorn.tools.jjs.PackagesHelper
6: iconst_0
StackMap locals: jdk.nashorn.tools.jjs.PackagesHelper jdk.nashorn.internal.runtime.Context java.lang.String
StackMap stack: jdk.nashorn.tools.jjs.PackagesHelper int
7: putfield jdk.nashorn.tools.jjs.PackagesHelper.modulePathSet:Z
8: invokestatic jdk.nashorn.tools.jjs.PackagesHelper.isJavacAvailable:()Z
ifeq 20
9: aload 1
invokevirtual jdk.nashorn.internal.runtime.Context.getEnv:()Ljdk/nashorn/internal/runtime/ScriptEnvironment;
getfield jdk.nashorn.internal.runtime.ScriptEnvironment._classpath:Ljava/lang/String;
astore 3
start local 3 10: aload 0
getstatic jdk.nashorn.tools.jjs.PackagesHelper.compiler:Ljavax/tools/JavaCompiler;
aconst_null
aconst_null
aconst_null
invokeinterface javax.tools.JavaCompiler.getStandardFileManager:(Ljavax/tools/DiagnosticListener;Ljava/util/Locale;Ljava/nio/charset/Charset;)Ljavax/tools/StandardJavaFileManager;
putfield jdk.nashorn.tools.jjs.PackagesHelper.fm:Ljavax/tools/StandardJavaFileManager;
11: aload 0
getstatic javax.tools.JavaFileObject$Kind.CLASS:Ljavax/tools/JavaFileObject$Kind;
invokestatic java.util.EnumSet.of:(Ljava/lang/Enum;)Ljava/util/EnumSet;
putfield jdk.nashorn.tools.jjs.PackagesHelper.fileKinds:Ljava/util/Set;
12: aload 0
getfield jdk.nashorn.tools.jjs.PackagesHelper.modulePathSet:Z
ifeq 14
13: aload 0
getfield jdk.nashorn.tools.jjs.PackagesHelper.fm:Ljavax/tools/StandardJavaFileManager;
getstatic javax.tools.StandardLocation.MODULE_PATH:Ljavax/tools/StandardLocation;
aload 2
invokestatic jdk.nashorn.tools.jjs.PackagesHelper.getFiles:(Ljava/lang/String;)Ljava/util/List;
invokeinterface javax.tools.StandardJavaFileManager.setLocation:(Ljavax/tools/JavaFileManager$Location;Ljava/lang/Iterable;)V
14: StackMap locals: java.lang.String
StackMap stack:
aload 3
ifnull 17
aload 3
invokevirtual java.lang.String.isEmpty:()Z
ifne 17
15: aload 0
getfield jdk.nashorn.tools.jjs.PackagesHelper.fm:Ljavax/tools/StandardJavaFileManager;
getstatic javax.tools.StandardLocation.CLASS_PATH:Ljavax/tools/StandardLocation;
aload 3
invokestatic jdk.nashorn.tools.jjs.PackagesHelper.getFiles:(Ljava/lang/String;)Ljava/util/List;
invokeinterface javax.tools.StandardJavaFileManager.setLocation:(Ljavax/tools/JavaFileManager$Location;Ljava/lang/Iterable;)V
16: goto 18
17: StackMap locals:
StackMap stack:
aload 0
getfield jdk.nashorn.tools.jjs.PackagesHelper.fm:Ljavax/tools/StandardJavaFileManager;
getstatic javax.tools.StandardLocation.CLASS_PATH:Ljavax/tools/StandardLocation;
invokestatic java.util.Collections.emptyList:()Ljava/util/List;
invokeinterface javax.tools.StandardJavaFileManager.setLocation:(Ljavax/tools/JavaFileManager$Location;Ljava/lang/Iterable;)V
18: StackMap locals:
StackMap stack:
aload 0
aconst_null
putfield jdk.nashorn.tools.jjs.PackagesHelper.jrtfs:Ljava/nio/file/FileSystem;
end local 3 19: goto 23
20: StackMap locals:
StackMap stack:
aload 0
aconst_null
putfield jdk.nashorn.tools.jjs.PackagesHelper.fm:Ljavax/tools/StandardJavaFileManager;
21: aload 0
aconst_null
putfield jdk.nashorn.tools.jjs.PackagesHelper.fileKinds:Ljava/util/Set;
22: aload 0
ldc "jrt:/"
invokestatic java.net.URI.create:(Ljava/lang/String;)Ljava/net/URI;
invokestatic java.nio.file.FileSystems.getFileSystem:(Ljava/net/URI;)Ljava/nio/file/FileSystem;
putfield jdk.nashorn.tools.jjs.PackagesHelper.jrtfs:Ljava/nio/file/FileSystem;
23: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 24 0 this Ljdk/nashorn/tools/jjs/PackagesHelper;
0 24 1 context Ljdk/nashorn/internal/runtime/Context;
5 24 2 modulePath Ljava/lang/String;
10 19 3 classPath Ljava/lang/String;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
context final
java.util.List<java.lang.String> getPackageProperties(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/util/List;
flags: (0x0000)
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield jdk.nashorn.tools.jjs.PackagesHelper.propsCache:Ljava/util/LinkedHashMap;
aload 1
invokevirtual java.util.LinkedHashMap.containsKey:(Ljava/lang/Object;)Z
ifeq 2
1: aload 0
getfield jdk.nashorn.tools.jjs.PackagesHelper.propsCache:Ljava/util/LinkedHashMap;
aload 1
invokevirtual java.util.LinkedHashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.util.List
areturn
2: StackMap locals:
StackMap stack:
new java.util.ArrayList
dup
aload 0
aload 1
invokevirtual jdk.nashorn.tools.jjs.PackagesHelper.listPackage:(Ljava/lang/String;)Ljava/util/Set;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 2
start local 2 3: aload 2
invokestatic java.util.Collections.sort:(Ljava/util/List;)V
4: aload 0
getfield jdk.nashorn.tools.jjs.PackagesHelper.propsCache:Ljava/util/LinkedHashMap;
aload 1
aload 2
invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
5: aload 2
6: areturn
end local 2 7: StackMap locals:
StackMap stack: java.io.IOException
astore 2
start local 2 8: getstatic jdk.nashorn.tools.jjs.Main.DEBUG:Z
ifeq 10
9: aload 2
invokevirtual java.io.IOException.printStackTrace:()V
10: StackMap locals: java.io.IOException
StackMap stack:
invokestatic java.util.Collections.emptyList:()Ljava/util/List;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Ljdk/nashorn/tools/jjs/PackagesHelper;
0 11 1 pkg Ljava/lang/String;
3 7 2 props Ljava/util/List<Ljava/lang/String;>;
8 11 2 exp Ljava/io/IOException;
Exception table:
from to target type
2 6 7 Class java.io.IOException
Signature: (Ljava/lang/String;)Ljava/util/List<Ljava/lang/String;>;
MethodParameters:
Name Flags
pkg final
public void close();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.nashorn.tools.jjs.PackagesHelper.fm:Ljavax/tools/StandardJavaFileManager;
ifnull 2
1: aload 0
getfield jdk.nashorn.tools.jjs.PackagesHelper.fm:Ljavax/tools/StandardJavaFileManager;
invokeinterface javax.tools.StandardJavaFileManager.close:()V
2: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljdk/nashorn/tools/jjs/PackagesHelper;
Exceptions:
throws java.io.IOException
private java.util.Set<java.lang.String> listPackage(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/util/Set;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=18, args_size=2
start local 0 start local 1 0: new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
astore 2
start local 2 1: aload 0
getfield jdk.nashorn.tools.jjs.PackagesHelper.fm:Ljavax/tools/StandardJavaFileManager;
ifnull 13
2: aload 0
getstatic javax.tools.StandardLocation.PLATFORM_CLASS_PATH:Ljavax/tools/StandardLocation;
aload 1
aload 2
invokevirtual jdk.nashorn.tools.jjs.PackagesHelper.listPackage:(Ljavax/tools/JavaFileManager$Location;Ljava/lang/String;Ljava/util/Set;)V
3: aload 0
getfield jdk.nashorn.tools.jjs.PackagesHelper.modulePathSet:Z
ifeq 11
4: aload 0
getfield jdk.nashorn.tools.jjs.PackagesHelper.fm:Ljavax/tools/StandardJavaFileManager;
getstatic javax.tools.StandardLocation.MODULE_PATH:Ljavax/tools/StandardLocation;
invokeinterface javax.tools.StandardJavaFileManager.listLocationsForModules:(Ljavax/tools/JavaFileManager$Location;)Ljava/lang/Iterable;
invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
astore 4
goto 10
StackMap locals: jdk.nashorn.tools.jjs.PackagesHelper java.lang.String java.util.Set top java.util.Iterator
StackMap stack:
5: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.util.Set
astore 3
start local 3 6: aload 3
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 6
goto 9
StackMap locals: jdk.nashorn.tools.jjs.PackagesHelper java.lang.String java.util.Set java.util.Set java.util.Iterator top java.util.Iterator
StackMap stack:
7: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast javax.tools.JavaFileManager$Location
astore 5
start local 5 8: aload 0
aload 5
aload 1
aload 2
invokevirtual jdk.nashorn.tools.jjs.PackagesHelper.listPackage:(Ljavax/tools/JavaFileManager$Location;Ljava/lang/String;Ljava/util/Set;)V
end local 5 9: StackMap locals:
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 7
end local 3 10: StackMap locals: jdk.nashorn.tools.jjs.PackagesHelper java.lang.String java.util.Set top java.util.Iterator
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 5
11: StackMap locals: jdk.nashorn.tools.jjs.PackagesHelper java.lang.String java.util.Set
StackMap stack:
aload 0
getstatic javax.tools.StandardLocation.CLASS_PATH:Ljavax/tools/StandardLocation;
aload 1
aload 2
invokevirtual jdk.nashorn.tools.jjs.PackagesHelper.listPackage:(Ljavax/tools/JavaFileManager$Location;Ljava/lang/String;Ljava/util/Set;)V
12: goto 48
StackMap locals:
StackMap stack:
13: aload 0
getfield jdk.nashorn.tools.jjs.PackagesHelper.jrtfs:Ljava/nio/file/FileSystem;
ifnull 48
14: aload 0
getfield jdk.nashorn.tools.jjs.PackagesHelper.jrtfs:Ljava/nio/file/FileSystem;
new java.lang.StringBuilder
dup
ldc "/packages/"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
iconst_0
anewarray java.lang.String
invokevirtual java.nio.file.FileSystem.getPath:(Ljava/lang/String;[Ljava/lang/String;)Ljava/nio/file/Path;
astore 3
start local 3 15: aload 3
iconst_0
anewarray java.nio.file.LinkOption
invokestatic java.nio.file.Files.exists:(Ljava/nio/file/Path;[Ljava/nio/file/LinkOption;)Z
ifeq 48
16: aload 1
bipush 46
bipush 47
invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
astore 4
start local 4 17: aconst_null
astore 5
aconst_null
astore 6
18: aload 3
invokestatic java.nio.file.Files.newDirectoryStream:(Ljava/nio/file/Path;)Ljava/nio/file/DirectoryStream;
astore 7
start local 7 19: aload 7
invokeinterface java.nio.file.DirectoryStream.iterator:()Ljava/util/Iterator;
astore 9
goto 41
StackMap locals: jdk.nashorn.tools.jjs.PackagesHelper java.lang.String java.util.Set java.nio.file.Path java.lang.String java.lang.Throwable java.lang.Throwable java.nio.file.DirectoryStream top java.util.Iterator
StackMap stack:
20: aload 9
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.nio.file.Path
astore 8
start local 8 21: aload 0
getfield jdk.nashorn.tools.jjs.PackagesHelper.jrtfs:Ljava/nio/file/FileSystem;
new java.lang.StringBuilder
dup
aload 8
invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "/"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 4
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
iconst_0
anewarray java.lang.String
invokevirtual java.nio.file.FileSystem.getPath:(Ljava/lang/String;[Ljava/lang/String;)Ljava/nio/file/Path;
astore 10
start local 10 22: aconst_null
astore 11
aconst_null
astore 12
23: aload 10
invokestatic java.nio.file.Files.newDirectoryStream:(Ljava/nio/file/Path;)Ljava/nio/file/DirectoryStream;
astore 13
start local 13 24: aload 13
invokeinterface java.nio.file.DirectoryStream.iterator:()Ljava/util/Iterator;
astore 15
goto 34
StackMap locals: jdk.nashorn.tools.jjs.PackagesHelper java.lang.String java.util.Set java.nio.file.Path java.lang.String java.lang.Throwable java.lang.Throwable java.nio.file.DirectoryStream java.nio.file.Path java.util.Iterator java.nio.file.Path java.lang.Throwable java.lang.Throwable java.nio.file.DirectoryStream top java.util.Iterator
StackMap stack:
25: aload 15
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.nio.file.Path
astore 14
start local 14 26: aload 14
invokeinterface java.nio.file.Path.getFileName:()Ljava/nio/file/Path;
invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
astore 16
start local 16 27: aload 16
ldc ".class"
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifeq 32
28: aload 16
iconst_0
aload 16
invokevirtual java.lang.String.length:()I
ldc ".class"
invokevirtual java.lang.String.length:()I
isub
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
astore 17
start local 17 29: aload 17
bipush 36
invokevirtual java.lang.String.indexOf:(I)I
iconst_m1
if_icmpne 34
aload 0
new java.lang.StringBuilder
dup
aload 1
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 17
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual jdk.nashorn.tools.jjs.PackagesHelper.isClassAccessible:(Ljava/lang/String;)Z
ifeq 34
30: aload 2
aload 16
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
end local 17 31: goto 34
StackMap locals: jdk.nashorn.tools.jjs.PackagesHelper java.lang.String java.util.Set java.nio.file.Path java.lang.String java.lang.Throwable java.lang.Throwable java.nio.file.DirectoryStream java.nio.file.Path java.util.Iterator java.nio.file.Path java.lang.Throwable java.lang.Throwable java.nio.file.DirectoryStream java.nio.file.Path java.util.Iterator java.lang.String
StackMap stack:
32: aload 0
new java.lang.StringBuilder
dup
aload 1
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 16
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual jdk.nashorn.tools.jjs.PackagesHelper.isPackageAccessible:(Ljava/lang/String;)Z
ifeq 34
33: aload 2
aload 16
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
end local 16 end local 14 34: StackMap locals: jdk.nashorn.tools.jjs.PackagesHelper java.lang.String java.util.Set java.nio.file.Path java.lang.String java.lang.Throwable java.lang.Throwable java.nio.file.DirectoryStream java.nio.file.Path java.util.Iterator java.nio.file.Path java.lang.Throwable java.lang.Throwable java.nio.file.DirectoryStream top java.util.Iterator
StackMap stack:
aload 15
invokeinterface java.util.Iterator.hasNext:()Z
ifne 25
35: aload 13
ifnull 41
aload 13
invokeinterface java.nio.file.DirectoryStream.close:()V
goto 41
StackMap locals: jdk.nashorn.tools.jjs.PackagesHelper java.lang.String java.util.Set java.nio.file.Path java.lang.String java.lang.Throwable java.lang.Throwable java.nio.file.DirectoryStream java.nio.file.Path java.util.Iterator java.nio.file.Path java.lang.Throwable java.lang.Throwable java.nio.file.DirectoryStream
StackMap stack: java.lang.Throwable
36: astore 11
aload 13
ifnull 37
aload 13
invokeinterface java.nio.file.DirectoryStream.close:()V
end local 13 StackMap locals:
StackMap stack:
37: aload 11
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
38: astore 12
aload 11
ifnonnull 39
aload 12
astore 11
goto 40
StackMap locals:
StackMap stack:
39: aload 11
aload 12
if_acmpeq 40
aload 11
aload 12
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
40: aload 11
athrow
end local 10 end local 8 41: StackMap locals: jdk.nashorn.tools.jjs.PackagesHelper java.lang.String java.util.Set java.nio.file.Path java.lang.String java.lang.Throwable java.lang.Throwable java.nio.file.DirectoryStream top java.util.Iterator
StackMap stack:
aload 9
invokeinterface java.util.Iterator.hasNext:()Z
ifne 20
42: aload 7
ifnull 48
aload 7
invokeinterface java.nio.file.DirectoryStream.close:()V
goto 48
StackMap locals: jdk.nashorn.tools.jjs.PackagesHelper java.lang.String java.util.Set java.nio.file.Path java.lang.String java.lang.Throwable java.lang.Throwable java.nio.file.DirectoryStream
StackMap stack: java.lang.Throwable
43: astore 5
aload 7
ifnull 44
aload 7
invokeinterface java.nio.file.DirectoryStream.close:()V
end local 7 StackMap locals:
StackMap stack:
44: aload 5
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
45: astore 6
aload 5
ifnonnull 46
aload 6
astore 5
goto 47
StackMap locals:
StackMap stack:
46: aload 5
aload 6
if_acmpeq 47
aload 5
aload 6
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
47: aload 5
athrow
end local 4 end local 3 48: StackMap locals: jdk.nashorn.tools.jjs.PackagesHelper java.lang.String java.util.Set
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 49 0 this Ljdk/nashorn/tools/jjs/PackagesHelper;
0 49 1 pkg Ljava/lang/String;
1 49 2 props Ljava/util/Set<Ljava/lang/String;>;
6 10 3 locs Ljava/util/Set<Ljavax/tools/JavaFileManager$Location;>;
8 9 5 loc Ljavax/tools/JavaFileManager$Location;
15 48 3 pkgDir Ljava/nio/file/Path;
17 48 4 pkgSlashName Ljava/lang/String;
19 44 7 ds Ljava/nio/file/DirectoryStream<Ljava/nio/file/Path;>;
21 41 8 mod Ljava/nio/file/Path;
22 41 10 pkgUnderMod Ljava/nio/file/Path;
24 37 13 ds2 Ljava/nio/file/DirectoryStream<Ljava/nio/file/Path;>;
26 34 14 p Ljava/nio/file/Path;
27 34 16 str Ljava/lang/String;
29 31 17 clsName Ljava/lang/String;
Exception table:
from to target type
24 35 36 any
23 38 38 any
19 42 43 any
18 45 45 any
Exceptions:
throws java.io.IOException
Signature: (Ljava/lang/String;)Ljava/util/Set<Ljava/lang/String;>;
MethodParameters:
Name Flags
pkg final
private void listPackage(javax.tools.JavaFileManager$Location, java.lang.String, java.util.Set<java.lang.String>);
descriptor: (Ljavax/tools/JavaFileManager$Location;Ljava/lang/String;Ljava/util/Set;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=10, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield jdk.nashorn.tools.jjs.PackagesHelper.fm:Ljavax/tools/StandardJavaFileManager;
aload 1
aload 2
aload 0
getfield jdk.nashorn.tools.jjs.PackagesHelper.fileKinds:Ljava/util/Set;
iconst_1
invokeinterface javax.tools.StandardJavaFileManager.list:(Ljavax/tools/JavaFileManager$Location;Ljava/lang/String;Ljava/util/Set;Z)Ljava/lang/Iterable;
invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
astore 5
goto 15
StackMap locals: jdk.nashorn.tools.jjs.PackagesHelper javax.tools.JavaFileManager$Location java.lang.String java.util.Set top java.util.Iterator
StackMap stack:
1: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast javax.tools.JavaFileObject
astore 4
start local 4 2: aload 0
getfield jdk.nashorn.tools.jjs.PackagesHelper.fm:Ljavax/tools/StandardJavaFileManager;
aload 1
aload 4
invokeinterface javax.tools.StandardJavaFileManager.inferBinaryName:(Ljavax/tools/JavaFileManager$Location;Ljavax/tools/JavaFileObject;)Ljava/lang/String;
astore 6
start local 6 3: aload 6
new java.lang.StringBuilder
dup
aload 2
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifne 5
4: goto 15
5: StackMap locals: jdk.nashorn.tools.jjs.PackagesHelper javax.tools.JavaFileManager$Location java.lang.String java.util.Set javax.tools.JavaFileObject java.util.Iterator java.lang.String
StackMap stack:
aload 6
bipush 46
aload 2
invokevirtual java.lang.String.length:()I
iconst_1
iadd
invokevirtual java.lang.String.indexOf:(II)I
istore 7
start local 7 6: aload 2
invokevirtual java.lang.String.length:()I
iconst_1
iadd
istore 8
start local 8 7: iload 7
iconst_m1
if_icmpeq 12
8: aload 6
iload 8
iload 7
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
pop
9: aload 0
aload 6
iconst_0
iload 7
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
invokevirtual jdk.nashorn.tools.jjs.PackagesHelper.isPackageAccessible:(Ljava/lang/String;)Z
ifeq 15
10: aload 3
aload 6
iload 8
iload 7
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
11: goto 15
12: StackMap locals: int int
StackMap stack:
aload 6
iload 8
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
astore 9
start local 9 13: aload 9
bipush 36
invokevirtual java.lang.String.indexOf:(I)I
iconst_m1
if_icmpne 15
aload 0
aload 6
invokevirtual jdk.nashorn.tools.jjs.PackagesHelper.isClassAccessible:(Ljava/lang/String;)Z
ifeq 15
14: aload 3
aload 9
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
end local 9 end local 8 end local 7 end local 6 end local 4 15: StackMap locals: jdk.nashorn.tools.jjs.PackagesHelper javax.tools.JavaFileManager$Location java.lang.String java.util.Set top java.util.Iterator
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 1
16: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Ljdk/nashorn/tools/jjs/PackagesHelper;
0 17 1 loc Ljavax/tools/JavaFileManager$Location;
0 17 2 pkg Ljava/lang/String;
0 17 3 props Ljava/util/Set<Ljava/lang/String;>;
2 15 4 file Ljavax/tools/JavaFileObject;
3 15 6 binaryName Ljava/lang/String;
6 15 7 nextDot I
7 15 8 start I
13 15 9 clsName Ljava/lang/String;
Exceptions:
throws java.io.IOException
Signature: (Ljavax/tools/JavaFileManager$Location;Ljava/lang/String;Ljava/util/Set<Ljava/lang/String;>;)V
MethodParameters:
Name Flags
loc final
pkg final
props final
private static java.util.List<java.io.File> getFiles(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/util/List;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getstatic java.io.File.pathSeparator:Ljava/lang/String;
invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
invokestatic java.util.stream.Stream.of:([Ljava/lang/Object;)Ljava/util/stream/Stream;
1: invokedynamic apply()Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
java/io/File.<init>(Ljava/lang/String;)V (8)
(Ljava/lang/String;)Ljava/io/File;
invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
2: invokestatic java.util.stream.Collectors.toList:()Ljava/util/stream/Collector;
invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
checkcast java.util.List
3: areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 classPath Ljava/lang/String;
Signature: (Ljava/lang/String;)Ljava/util/List<Ljava/io/File;>;
MethodParameters:
Name Flags
classPath final
private boolean isClassAccessible(java.lang.String);
descriptor: (Ljava/lang/String;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield jdk.nashorn.tools.jjs.PackagesHelper.context:Ljdk/nashorn/internal/runtime/Context;
aload 1
invokevirtual jdk.nashorn.internal.runtime.Context.findClass:(Ljava/lang/String;)Ljava/lang/Class;
astore 2
start local 2 1: aload 2
invokevirtual java.lang.Class.getModifiers:()I
invokestatic java.lang.reflect.Modifier.isPublic:(I)Z
2: ireturn
end local 2 3: StackMap locals:
StackMap stack: java.lang.ClassNotFoundException
pop
4: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljdk/nashorn/tools/jjs/PackagesHelper;
0 5 1 className Ljava/lang/String;
1 3 2 clz Ljava/lang/Class<*>;
Exception table:
from to target type
0 2 3 Class java.lang.ClassNotFoundException
MethodParameters:
Name Flags
className final
private boolean isPackageAccessible(java.lang.String);
descriptor: (Ljava/lang/String;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokestatic jdk.nashorn.internal.runtime.Context.checkPackageAccess:(Ljava/lang/String;)V
1: iconst_1
ireturn
2: StackMap locals:
StackMap stack: java.lang.SecurityException
pop
3: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljdk/nashorn/tools/jjs/PackagesHelper;
0 4 1 pkgName Ljava/lang/String;
Exception table:
from to target type
0 1 2 Class java.lang.SecurityException
MethodParameters:
Name Flags
pkgName final
}
SourceFile: "PackagesHelper.java"
NestMembers:
jdk.nashorn.tools.jjs.PackagesHelper$1
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
public abstract Location = javax.tools.JavaFileManager$Location of javax.tools.JavaFileManager
public final Kind = javax.tools.JavaFileObject$Kind of javax.tools.JavaFileObject
jdk.nashorn.tools.jjs.PackagesHelper$1