public final class jdk.tools.jlink.internal.ImagePluginStack
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: jdk.tools.jlink.internal.ImagePluginStack
super_class: java.lang.Object
{
private final jdk.tools.jlink.builder.ImageBuilder imageBuilder;
descriptor: Ljdk/tools/jlink/builder/ImageBuilder;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final jdk.tools.jlink.plugin.Plugin lastSorter;
descriptor: Ljdk/tools/jlink/plugin/Plugin;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.util.List<jdk.tools.jlink.plugin.Plugin> plugins;
descriptor: Ljava/util/List;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/List<Ljdk/tools/jlink/plugin/Plugin;>;
private final java.util.List<jdk.tools.jlink.internal.ResourcePrevisitor> resourcePrevisitors;
descriptor: Ljava/util/List;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/List<Ljdk/tools/jlink/internal/ResourcePrevisitor;>;
private final boolean validate;
descriptor: Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
aconst_null
invokestatic java.util.Collections.emptyList:()Ljava/util/List;
aconst_null
invokespecial jdk.tools.jlink.internal.ImagePluginStack.<init>:(Ljdk/tools/jlink/builder/ImageBuilder;Ljava/util/List;Ljdk/tools/jlink/plugin/Plugin;)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljdk/tools/jlink/internal/ImagePluginStack;
public void <init>(jdk.tools.jlink.builder.ImageBuilder, java.util.List<jdk.tools.jlink.plugin.Plugin>, jdk.tools.jlink.plugin.Plugin);
descriptor: (Ljdk/tools/jlink/builder/ImageBuilder;Ljava/util/List;Ljdk/tools/jlink/plugin/Plugin;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
aload 2
aload 3
iconst_1
invokespecial jdk.tools.jlink.internal.ImagePluginStack.<init>:(Ljdk/tools/jlink/builder/ImageBuilder;Ljava/util/List;Ljdk/tools/jlink/plugin/Plugin;Z)V
1: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljdk/tools/jlink/internal/ImagePluginStack;
0 2 1 imageBuilder Ljdk/tools/jlink/builder/ImageBuilder;
0 2 2 plugins Ljava/util/List<Ljdk/tools/jlink/plugin/Plugin;>;
0 2 3 lastSorter Ljdk/tools/jlink/plugin/Plugin;
Signature: (Ljdk/tools/jlink/builder/ImageBuilder;Ljava/util/List<Ljdk/tools/jlink/plugin/Plugin;>;Ljdk/tools/jlink/plugin/Plugin;)V
MethodParameters:
Name Flags
imageBuilder
plugins
lastSorter
public void <init>(jdk.tools.jlink.builder.ImageBuilder, java.util.List<jdk.tools.jlink.plugin.Plugin>, jdk.tools.jlink.plugin.Plugin, );
descriptor: (Ljdk/tools/jlink/builder/ImageBuilder;Ljava/util/List;Ljdk/tools/jlink/plugin/Plugin;Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=5
start local 0 start local 1 start local 2 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.ImagePluginStack.plugins:Ljava/util/List;
2: aload 0
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
putfield jdk.tools.jlink.internal.ImagePluginStack.resourcePrevisitors:Ljava/util/List;
3: aload 0
aload 1
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast jdk.tools.jlink.builder.ImageBuilder
putfield jdk.tools.jlink.internal.ImagePluginStack.imageBuilder:Ljdk/tools/jlink/builder/ImageBuilder;
4: aload 0
aload 3
putfield jdk.tools.jlink.internal.ImagePluginStack.lastSorter:Ljdk/tools/jlink/plugin/Plugin;
5: aload 0
getfield jdk.tools.jlink.internal.ImagePluginStack.plugins:Ljava/util/List;
aload 2
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.util.Collection
invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
pop
6: aload 2
invokeinterface java.util.List.stream:()Ljava/util/stream/Stream;
aload 0
invokedynamic accept(Ljdk/tools/jlink/internal/ImagePluginStack;)Ljava/util/function/Consumer;
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;)V
jdk/tools/jlink/internal/ImagePluginStack.lambda$0(Ljdk/tools/jlink/plugin/Plugin;)V (7)
(Ljdk/tools/jlink/plugin/Plugin;)V
invokeinterface java.util.stream.Stream.forEach:(Ljava/util/function/Consumer;)V
7: aload 0
iload 4
putfield jdk.tools.jlink.internal.ImagePluginStack.validate:Z
8: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Ljdk/tools/jlink/internal/ImagePluginStack;
0 9 1 imageBuilder Ljdk/tools/jlink/builder/ImageBuilder;
0 9 2 plugins Ljava/util/List<Ljdk/tools/jlink/plugin/Plugin;>;
0 9 3 lastSorter Ljdk/tools/jlink/plugin/Plugin;
0 9 4 validate Z
Signature: (Ljdk/tools/jlink/builder/ImageBuilder;Ljava/util/List<Ljdk/tools/jlink/plugin/Plugin;>;Ljdk/tools/jlink/plugin/Plugin;Z)V
MethodParameters:
Name Flags
imageBuilder
plugins
lastSorter
validate
public void operate(jdk.tools.jlink.internal.ImagePluginStack$ImageProvider);
descriptor: (Ljdk/tools/jlink/internal/ImagePluginStack$ImageProvider;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: aload 1
aload 0
invokeinterface jdk.tools.jlink.internal.ImagePluginStack$ImageProvider.retrieve:(Ljdk/tools/jlink/internal/ImagePluginStack;)Ljdk/tools/jlink/internal/ExecutableImage;
astore 2
start local 2 1: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 3
start local 3 2: aload 0
getfield jdk.tools.jlink.internal.ImagePluginStack.plugins:Ljava/util/List;
invokeinterface java.util.List.stream:()Ljava/util/stream/Stream;
3: ldc Ljdk/tools/jlink/internal/PostProcessor;
dup
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
pop
invokedynamic test(Ljava/lang/Class;)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
java/lang/Class.isInstance(Ljava/lang/Object;)Z (5)
(Ljdk/tools/jlink/plugin/Plugin;)Z
invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
4: aload 2
invokedynamic apply(Ljdk/tools/jlink/internal/ExecutableImage;)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;
jdk/tools/jlink/internal/ImagePluginStack.lambda$2(Ljdk/tools/jlink/internal/ExecutableImage;Ljdk/tools/jlink/plugin/Plugin;)Ljava/util/List; (6)
(Ljdk/tools/jlink/plugin/Plugin;)Ljava/util/List;
invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
5: 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
jdk/tools/jlink/internal/ImagePluginStack.lambda$3(Ljava/util/List;)Z (6)
(Ljava/util/List;)Z
invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
6: aload 3
invokedynamic accept(Ljava/util/List;)Ljava/util/function/Consumer;
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;)V
jdk/tools/jlink/internal/ImagePluginStack.lambda$4(Ljava/util/List;Ljava/util/List;)V (6)
(Ljava/util/List;)V
invokeinterface java.util.stream.Stream.forEach:(Ljava/util/function/Consumer;)V
7: aload 2
aload 3
invokeinterface jdk.tools.jlink.internal.ExecutableImage.storeLaunchArgs:(Ljava/util/List;)V
8: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Ljdk/tools/jlink/internal/ImagePluginStack;
0 9 1 provider Ljdk/tools/jlink/internal/ImagePluginStack$ImageProvider;
1 9 2 img Ljdk/tools/jlink/internal/ExecutableImage;
2 9 3 arguments Ljava/util/List<Ljava/lang/String;>;
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
provider
public java.io.DataOutputStream getJImageFileOutputStream();
descriptor: ()Ljava/io/DataOutputStream;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.tools.jlink.internal.ImagePluginStack.imageBuilder:Ljdk/tools/jlink/builder/ImageBuilder;
invokeinterface jdk.tools.jlink.builder.ImageBuilder.getJImageOutputStream:()Ljava/io/DataOutputStream;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/tools/jlink/internal/ImagePluginStack;
Exceptions:
throws java.io.IOException
public jdk.tools.jlink.builder.ImageBuilder getImageBuilder();
descriptor: ()Ljdk/tools/jlink/builder/ImageBuilder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.tools.jlink.internal.ImagePluginStack.imageBuilder:Ljdk/tools/jlink/builder/ImageBuilder;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/tools/jlink/internal/ImagePluginStack;
public jdk.tools.jlink.plugin.ResourcePool visitResources(jdk.tools.jlink.internal.ResourcePoolManager);
descriptor: (Ljdk/tools/jlink/internal/ResourcePoolManager;)Ljdk/tools/jlink/plugin/ResourcePool;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=10, args_size=2
start local 0 start local 1 0: aload 1
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
pop
1: aload 1
invokevirtual jdk.tools.jlink.internal.ResourcePoolManager.isEmpty:()Z
ifeq 7
2: new jdk.tools.jlink.internal.ResourcePoolManager
dup
aload 1
invokevirtual jdk.tools.jlink.internal.ResourcePoolManager.byteOrder:()Ljava/nio/ByteOrder;
3: aload 1
invokevirtual jdk.tools.jlink.internal.ResourcePoolManager.getStringTable:()Ljdk/tools/jlink/internal/StringTable;
4: invokespecial jdk.tools.jlink.internal.ResourcePoolManager.<init>:(Ljava/nio/ByteOrder;Ljdk/tools/jlink/internal/StringTable;)V
5: invokevirtual jdk.tools.jlink.internal.ResourcePoolManager.resourcePool:()Ljdk/tools/jlink/plugin/ResourcePool;
6: areturn
7: StackMap locals:
StackMap stack:
new jdk.tools.jlink.internal.ImagePluginStack$PreVisitStrings
dup
invokespecial jdk.tools.jlink.internal.ImagePluginStack$PreVisitStrings.<init>:()V
astore 2
start local 2 8: aload 0
getfield jdk.tools.jlink.internal.ImagePluginStack.resourcePrevisitors:Ljava/util/List;
invokeinterface java.util.List.stream:()Ljava/util/stream/Stream;
aload 1
aload 2
invokedynamic accept(Ljdk/tools/jlink/internal/ResourcePoolManager;Ljdk/tools/jlink/internal/ImagePluginStack$PreVisitStrings;)Ljava/util/function/Consumer;
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;)V
jdk/tools/jlink/internal/ImagePluginStack.lambda$5(Ljdk/tools/jlink/internal/ResourcePoolManager;Ljdk/tools/jlink/internal/ImagePluginStack$PreVisitStrings;Ljdk/tools/jlink/internal/ResourcePrevisitor;)V (6)
(Ljdk/tools/jlink/internal/ResourcePrevisitor;)V
invokeinterface java.util.stream.Stream.forEach:(Ljava/util/function/Consumer;)V
9: aload 2
invokevirtual jdk.tools.jlink.internal.ImagePluginStack$PreVisitStrings.getSortedStrings:()Ljava/util/List;
astore 3
start local 3 10: aload 3
invokeinterface java.util.List.stream:()Ljava/util/stream/Stream;
aload 1
invokedynamic accept(Ljdk/tools/jlink/internal/ResourcePoolManager;)Ljava/util/function/Consumer;
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;)V
jdk/tools/jlink/internal/ImagePluginStack.lambda$6(Ljdk/tools/jlink/internal/ResourcePoolManager;Ljava/lang/String;)V (6)
(Ljava/lang/String;)V
invokeinterface java.util.stream.Stream.forEach:(Ljava/util/function/Consumer;)V
11: aload 1
invokevirtual jdk.tools.jlink.internal.ResourcePoolManager.resourcePool:()Ljdk/tools/jlink/plugin/ResourcePool;
astore 4
start local 4 12: aconst_null
astore 5
start local 5 13: aload 0
getfield jdk.tools.jlink.internal.ImagePluginStack.plugins:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 7
goto 44
StackMap locals: jdk.tools.jlink.internal.ImagePluginStack jdk.tools.jlink.internal.ResourcePoolManager jdk.tools.jlink.internal.ImagePluginStack$PreVisitStrings java.util.List jdk.tools.jlink.plugin.ResourcePool java.util.List top java.util.Iterator
StackMap stack:
14: aload 7
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast jdk.tools.jlink.plugin.Plugin
astore 6
start local 6 15: aconst_null
astore 8
start local 8 16: aload 6
aload 0
getfield jdk.tools.jlink.internal.ImagePluginStack.lastSorter:Ljdk/tools/jlink/plugin/Plugin;
if_acmpne 25
17: aload 5
ifnull 21
18: new java.lang.Exception
dup
new java.lang.StringBuilder
dup
ldc "Order of resources is already frozen. Plugin "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
19: aload 6
invokeinterface jdk.tools.jlink.plugin.Plugin.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " is badly located"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
20: invokespecial java.lang.Exception.<init>:(Ljava/lang/String;)V
athrow
21: StackMap locals: jdk.tools.jlink.internal.ImagePluginStack jdk.tools.jlink.internal.ResourcePoolManager jdk.tools.jlink.internal.ImagePluginStack$PreVisitStrings java.util.List jdk.tools.jlink.plugin.ResourcePool java.util.List jdk.tools.jlink.plugin.Plugin java.util.Iterator jdk.tools.jlink.internal.ResourcePoolManager
StackMap stack:
new jdk.tools.jlink.internal.ImagePluginStack$OrderedResourcePoolManager
dup
aload 4
invokeinterface jdk.tools.jlink.plugin.ResourcePool.byteOrder:()Ljava/nio/ByteOrder;
22: aload 1
invokevirtual jdk.tools.jlink.internal.ResourcePoolManager.getStringTable:()Ljdk/tools/jlink/internal/StringTable;
23: invokespecial jdk.tools.jlink.internal.ImagePluginStack$OrderedResourcePoolManager.<init>:(Ljava/nio/ByteOrder;Ljdk/tools/jlink/internal/StringTable;)V
astore 8
24: goto 33
25: StackMap locals:
StackMap stack:
aload 5
ifnull 30
26: new jdk.tools.jlink.internal.ImagePluginStack$CheckOrderResourcePoolManager
dup
aload 4
invokeinterface jdk.tools.jlink.plugin.ResourcePool.byteOrder:()Ljava/nio/ByteOrder;
27: aload 5
aload 1
invokevirtual jdk.tools.jlink.internal.ResourcePoolManager.getStringTable:()Ljdk/tools/jlink/internal/StringTable;
28: invokespecial jdk.tools.jlink.internal.ImagePluginStack$CheckOrderResourcePoolManager.<init>:(Ljava/nio/ByteOrder;Ljava/util/List;Ljdk/tools/jlink/internal/StringTable;)V
astore 8
29: goto 33
30: StackMap locals:
StackMap stack:
new jdk.tools.jlink.internal.ResourcePoolManager
dup
aload 4
invokeinterface jdk.tools.jlink.plugin.ResourcePool.byteOrder:()Ljava/nio/ByteOrder;
31: aload 1
invokevirtual jdk.tools.jlink.internal.ResourcePoolManager.getStringTable:()Ljdk/tools/jlink/internal/StringTable;
32: invokespecial jdk.tools.jlink.internal.ResourcePoolManager.<init>:(Ljava/nio/ByteOrder;Ljdk/tools/jlink/internal/StringTable;)V
astore 8
33: StackMap locals:
StackMap stack:
aload 6
aload 4
aload 8
invokevirtual jdk.tools.jlink.internal.ResourcePoolManager.resourcePoolBuilder:()Ljdk/tools/jlink/plugin/ResourcePoolBuilder;
invokeinterface jdk.tools.jlink.plugin.Plugin.transform:(Ljdk/tools/jlink/plugin/ResourcePool;Ljdk/tools/jlink/plugin/ResourcePoolBuilder;)Ljdk/tools/jlink/plugin/ResourcePool;
astore 4
34: goto 40
StackMap locals:
StackMap stack: jdk.tools.jlink.plugin.PluginException
35: astore 9
start local 9 36: getstatic jdk.tools.jlink.internal.JlinkTask.DEBUG:Z
ifeq 39
37: getstatic java.lang.System.err:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "Plugin "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 6
invokeinterface jdk.tools.jlink.plugin.Plugin.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " threw exception during transform"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
38: aload 9
invokevirtual jdk.tools.jlink.plugin.PluginException.printStackTrace:()V
39: StackMap locals: jdk.tools.jlink.plugin.PluginException
StackMap stack:
aload 9
athrow
end local 9 40: StackMap locals:
StackMap stack:
aload 4
invokeinterface jdk.tools.jlink.plugin.ResourcePool.isEmpty:()Z
ifeq 42
41: new java.lang.Exception
dup
new java.lang.StringBuilder
dup
ldc "Invalid resource pool for plugin "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 6
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.Exception.<init>:(Ljava/lang/String;)V
athrow
42: StackMap locals:
StackMap stack:
aload 4
instanceof jdk.tools.jlink.internal.ImagePluginStack$OrderedResourcePoolManager$OrderedResourcePool
ifeq 44
43: aload 4
checkcast jdk.tools.jlink.internal.ImagePluginStack$OrderedResourcePoolManager$OrderedResourcePool
invokevirtual jdk.tools.jlink.internal.ImagePluginStack$OrderedResourcePoolManager$OrderedResourcePool.getOrderedList:()Ljava/util/List;
astore 5
end local 8 end local 6 44: StackMap locals: jdk.tools.jlink.internal.ImagePluginStack jdk.tools.jlink.internal.ResourcePoolManager jdk.tools.jlink.internal.ImagePluginStack$PreVisitStrings java.util.List jdk.tools.jlink.plugin.ResourcePool java.util.List top java.util.Iterator
StackMap stack:
aload 7
invokeinterface java.util.Iterator.hasNext:()Z
ifne 14
45: aload 4
areturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 46 0 this Ljdk/tools/jlink/internal/ImagePluginStack;
0 46 1 resources Ljdk/tools/jlink/internal/ResourcePoolManager;
8 46 2 previsit Ljdk/tools/jlink/internal/ImagePluginStack$PreVisitStrings;
10 46 3 sorted Ljava/util/List<Ljava/lang/String;>;
12 46 4 resPool Ljdk/tools/jlink/plugin/ResourcePool;
13 46 5 frozenOrder Ljava/util/List<Ljdk/tools/jlink/plugin/ResourcePoolEntry;>;
15 44 6 p Ljdk/tools/jlink/plugin/Plugin;
16 44 8 resMgr Ljdk/tools/jlink/internal/ResourcePoolManager;
36 40 9 pe Ljdk/tools/jlink/plugin/PluginException;
Exception table:
from to target type
33 34 35 Class jdk.tools.jlink.plugin.PluginException
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
resources
public void storeFiles(jdk.tools.jlink.plugin.ResourcePool, jdk.tools.jlink.plugin.ResourcePool, jdk.tools.jlink.internal.BasicImageWriter);
descriptor: (Ljdk/tools/jlink/plugin/ResourcePool;Ljdk/tools/jlink/plugin/ResourcePool;Ljdk/tools/jlink/internal/BasicImageWriter;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
pop
1: aload 2
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
pop
2: new jdk.tools.jlink.internal.ImagePluginStack$LastPoolManager
dup
aload 0
aload 2
invokespecial jdk.tools.jlink.internal.ImagePluginStack$LastPoolManager.<init>:(Ljdk/tools/jlink/internal/ImagePluginStack;Ljdk/tools/jlink/plugin/ResourcePool;)V
invokevirtual jdk.tools.jlink.internal.ImagePluginStack$LastPoolManager.resourcePool:()Ljdk/tools/jlink/plugin/ResourcePool;
astore 4
start local 4 3: aload 0
getfield jdk.tools.jlink.internal.ImagePluginStack.validate:Z
ifeq 5
4: aload 4
invokestatic jdk.tools.jlink.internal.ResourcePoolConfiguration.validate:(Ljdk/tools/jlink/plugin/ResourcePool;)Ljava/lang/module/Configuration;
pop
5: StackMap locals: jdk.tools.jlink.plugin.ResourcePool
StackMap stack:
aload 0
getfield jdk.tools.jlink.internal.ImagePluginStack.imageBuilder:Ljdk/tools/jlink/builder/ImageBuilder;
aload 4
invokeinterface jdk.tools.jlink.builder.ImageBuilder.storeFiles:(Ljdk/tools/jlink/plugin/ResourcePool;)V
6: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Ljdk/tools/jlink/internal/ImagePluginStack;
0 7 1 original Ljdk/tools/jlink/plugin/ResourcePool;
0 7 2 transformed Ljdk/tools/jlink/plugin/ResourcePool;
0 7 3 writer Ljdk/tools/jlink/internal/BasicImageWriter;
3 7 4 lastPool Ljdk/tools/jlink/plugin/ResourcePool;
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
original
transformed
writer
public jdk.tools.jlink.internal.ExecutableImage getExecutableImage();
descriptor: ()Ljdk/tools/jlink/internal/ExecutableImage;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.tools.jlink.internal.ImagePluginStack.imageBuilder:Ljdk/tools/jlink/builder/ImageBuilder;
invokeinterface jdk.tools.jlink.builder.ImageBuilder.getExecutableImage:()Ljdk/tools/jlink/internal/ExecutableImage;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/tools/jlink/internal/ImagePluginStack;
Exceptions:
throws java.io.IOException
private void lambda$0(jdk.tools.jlink.plugin.Plugin);
descriptor: (Ljdk/tools/jlink/plugin/Plugin;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
pop
1: aload 1
instanceof jdk.tools.jlink.internal.ResourcePrevisitor
ifeq 3
2: aload 0
getfield jdk.tools.jlink.internal.ImagePluginStack.resourcePrevisitors:Ljava/util/List;
aload 1
checkcast jdk.tools.jlink.internal.ResourcePrevisitor
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
3: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljdk/tools/jlink/internal/ImagePluginStack;
0 4 1 p Ljdk/tools/jlink/plugin/Plugin;
private static java.util.List lambda$2(jdk.tools.jlink.internal.ExecutableImage, jdk.tools.jlink.plugin.Plugin);
descriptor: (Ljdk/tools/jlink/internal/ExecutableImage;Ljdk/tools/jlink/plugin/Plugin;)Ljava/util/List;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
start local 1 0: aload 1
checkcast jdk.tools.jlink.internal.PostProcessor
aload 0
invokeinterface jdk.tools.jlink.internal.PostProcessor.process:(Ljdk/tools/jlink/internal/ExecutableImage;)Ljava/util/List;
areturn
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 1 1 plugin Ljdk/tools/jlink/plugin/Plugin;
private static boolean lambda$3(java.util.List);
descriptor: (Ljava/util/List;)Z
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
ifnull 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 lst Ljava/util/List<Ljava/lang/String;>;
private static void lambda$4(java.util.List, java.util.List);
descriptor: (Ljava/util/List;Ljava/util/List;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
start local 1 0: aload 0
aload 1
invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
pop
1: return
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 2 1 lst Ljava/util/List<Ljava/lang/String;>;
private static void lambda$5(jdk.tools.jlink.internal.ResourcePoolManager, jdk.tools.jlink.internal.ImagePluginStack$PreVisitStrings, jdk.tools.jlink.internal.ResourcePrevisitor);
descriptor: (Ljdk/tools/jlink/internal/ResourcePoolManager;Ljdk/tools/jlink/internal/ImagePluginStack$PreVisitStrings;Ljdk/tools/jlink/internal/ResourcePrevisitor;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
start local 2 0: aload 2
aload 0
invokevirtual jdk.tools.jlink.internal.ResourcePoolManager.resourcePool:()Ljdk/tools/jlink/plugin/ResourcePool;
aload 1
invokeinterface jdk.tools.jlink.internal.ResourcePrevisitor.previsit:(Ljdk/tools/jlink/plugin/ResourcePool;Ljdk/tools/jlink/internal/StringTable;)V
1: return
end local 2 LocalVariableTable:
Start End Slot Name Signature
0 2 2 p Ljdk/tools/jlink/internal/ResourcePrevisitor;
private static void lambda$6(jdk.tools.jlink.internal.ResourcePoolManager, java.lang.String);
descriptor: (Ljdk/tools/jlink/internal/ResourcePoolManager;Ljava/lang/String;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
start local 1 0: aload 0
invokevirtual jdk.tools.jlink.internal.ResourcePoolManager.getStringTable:()Ljdk/tools/jlink/internal/StringTable;
aload 1
invokeinterface jdk.tools.jlink.internal.StringTable.addString:(Ljava/lang/String;)I
pop
1: return
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 2 1 s Ljava/lang/String;
}
SourceFile: "ImagePluginStack.java"
NestMembers:
jdk.tools.jlink.internal.ImagePluginStack$CheckOrderResourcePoolManager jdk.tools.jlink.internal.ImagePluginStack$ImageProvider jdk.tools.jlink.internal.ImagePluginStack$LastPoolManager jdk.tools.jlink.internal.ImagePluginStack$LastPoolManager$LastModule jdk.tools.jlink.internal.ImagePluginStack$OrderedResourcePoolManager jdk.tools.jlink.internal.ImagePluginStack$OrderedResourcePoolManager$OrderedResourcePool jdk.tools.jlink.internal.ImagePluginStack$PreVisitStrings
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
private final CheckOrderResourcePoolManager = jdk.tools.jlink.internal.ImagePluginStack$CheckOrderResourcePoolManager of jdk.tools.jlink.internal.ImagePluginStack
public abstract ImageProvider = jdk.tools.jlink.internal.ImagePluginStack$ImageProvider of jdk.tools.jlink.internal.ImagePluginStack
private LastPoolManager = jdk.tools.jlink.internal.ImagePluginStack$LastPoolManager of jdk.tools.jlink.internal.ImagePluginStack
public final OrderedResourcePoolManager = jdk.tools.jlink.internal.ImagePluginStack$OrderedResourcePoolManager of jdk.tools.jlink.internal.ImagePluginStack
OrderedResourcePool = jdk.tools.jlink.internal.ImagePluginStack$OrderedResourcePoolManager$OrderedResourcePool of jdk.tools.jlink.internal.ImagePluginStack$OrderedResourcePoolManager
private final PreVisitStrings = jdk.tools.jlink.internal.ImagePluginStack$PreVisitStrings of jdk.tools.jlink.internal.ImagePluginStack