public final class jdk.tools.jlink.internal.ImageResourcesTree
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: jdk.tools.jlink.internal.ImageResourcesTree
super_class: java.lang.Object
{
private final java.util.List<java.lang.String> paths;
descriptor: Ljava/util/List;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/List<Ljava/lang/String;>;
private final jdk.tools.jlink.internal.ImageResourcesTree$LocationsAdder adder;
descriptor: Ljdk/tools/jlink/internal/ImageResourcesTree$LocationsAdder;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
public static boolean isTreeInfoResource(java.lang.String);
descriptor: (Ljava/lang/String;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
ldc "/packages"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifne 1
aload 0
ldc "/modules"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifne 1
iconst_0
ireturn
StackMap locals:
StackMap stack:
1: iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 path Ljava/lang/String;
MethodParameters:
Name Flags
path
public void <init>(long, jdk.tools.jlink.internal.BasicImageWriter, java.util.List<java.lang.String>);
descriptor: (JLjdk/tools/jlink/internal/BasicImageWriter;Ljava/util/List;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=6, args_size=4
start local 0 start local 1 start local 3 start local 4 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
putfield jdk.tools.jlink.internal.ImageResourcesTree.paths:Ljava/util/List;
2: aload 0
getfield jdk.tools.jlink.internal.ImageResourcesTree.paths:Ljava/util/List;
aload 4
invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
pop
3: aload 0
getfield jdk.tools.jlink.internal.ImageResourcesTree.paths:Ljava/util/List;
invokestatic java.util.Collections.sort:(Ljava/util/List;)V
4: new jdk.tools.jlink.internal.ImageResourcesTree$Tree
dup
aload 0
getfield jdk.tools.jlink.internal.ImageResourcesTree.paths:Ljava/util/List;
invokespecial jdk.tools.jlink.internal.ImageResourcesTree$Tree.<init>:(Ljava/util/List;)V
astore 5
start local 5 5: aload 0
new jdk.tools.jlink.internal.ImageResourcesTree$LocationsAdder
dup
aload 5
lload 1
aload 3
invokespecial jdk.tools.jlink.internal.ImageResourcesTree$LocationsAdder.<init>:(Ljdk/tools/jlink/internal/ImageResourcesTree$Tree;JLjdk/tools/jlink/internal/BasicImageWriter;)V
putfield jdk.tools.jlink.internal.ImageResourcesTree.adder:Ljdk/tools/jlink/internal/ImageResourcesTree$LocationsAdder;
6: return
end local 5 end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Ljdk/tools/jlink/internal/ImageResourcesTree;
0 7 1 offset J
0 7 3 writer Ljdk/tools/jlink/internal/BasicImageWriter;
0 7 4 paths Ljava/util/List<Ljava/lang/String;>;
5 7 5 tree Ljdk/tools/jlink/internal/ImageResourcesTree$Tree;
Signature: (JLjdk/tools/jlink/internal/BasicImageWriter;Ljava/util/List<Ljava/lang/String;>;)V
MethodParameters:
Name Flags
offset
writer
paths
public void addContent(java.io.DataOutputStream);
descriptor: (Ljava/io/DataOutputStream;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=5, args_size=2
start local 0 start local 1 0: aload 0
getfield jdk.tools.jlink.internal.ImageResourcesTree.adder:Ljdk/tools/jlink/internal/ImageResourcesTree$LocationsAdder;
invokevirtual jdk.tools.jlink.internal.ImageResourcesTree$LocationsAdder.computeContent:()Ljava/util/List;
astore 2
start local 2 1: aload 2
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 4
goto 4
StackMap locals: jdk.tools.jlink.internal.ImageResourcesTree java.io.DataOutputStream java.util.List top java.util.Iterator
StackMap stack:
2: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast byte[]
astore 3
start local 3 3: aload 1
aload 3
iconst_0
aload 3
arraylength
invokevirtual java.io.DataOutputStream.write:([BII)V
end local 3 4: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
5: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Ljdk/tools/jlink/internal/ImageResourcesTree;
0 6 1 out Ljava/io/DataOutputStream;
1 6 2 content Ljava/util/List<[B>;
3 4 3 c [B
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
out
}
SourceFile: "ImageResourcesTree.java"
NestMembers:
jdk.tools.jlink.internal.ImageResourcesTree$LocationsAdder jdk.tools.jlink.internal.ImageResourcesTree$Node jdk.tools.jlink.internal.ImageResourcesTree$PackageNode jdk.tools.jlink.internal.ImageResourcesTree$PackageNode$PackageReference jdk.tools.jlink.internal.ImageResourcesTree$ResourceNode jdk.tools.jlink.internal.ImageResourcesTree$Tree
InnerClasses:
private final LocationsAdder = jdk.tools.jlink.internal.ImageResourcesTree$LocationsAdder of jdk.tools.jlink.internal.ImageResourcesTree
private Node = jdk.tools.jlink.internal.ImageResourcesTree$Node of jdk.tools.jlink.internal.ImageResourcesTree
private PackageNode = jdk.tools.jlink.internal.ImageResourcesTree$PackageNode of jdk.tools.jlink.internal.ImageResourcesTree
private final ResourceNode = jdk.tools.jlink.internal.ImageResourcesTree$ResourceNode of jdk.tools.jlink.internal.ImageResourcesTree
private final Tree = jdk.tools.jlink.internal.ImageResourcesTree$Tree of jdk.tools.jlink.internal.ImageResourcesTree