public class com.sun.tools.jdeps.ModuleDotGraph
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.sun.tools.jdeps.ModuleDotGraph
super_class: java.lang.Object
{
private final com.sun.tools.jdeps.JdepsConfiguration config;
descriptor: Lcom/sun/tools/jdeps/JdepsConfiguration;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.util.Map<java.lang.String, java.lang.module.Configuration> configurations;
descriptor: Ljava/util/Map;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Map<Ljava/lang/String;Ljava/lang/module/Configuration;>;
private final boolean apiOnly;
descriptor: Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
public void <init>(com.sun.tools.jdeps.JdepsConfiguration, boolean);
descriptor: (Lcom/sun/tools/jdeps/JdepsConfiguration;Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
1: aload 1
invokevirtual com.sun.tools.jdeps.JdepsConfiguration.rootModules:()Ljava/util/Set;
invokeinterface java.util.Set.stream:()Ljava/util/stream/Stream;
2: invokedynamic apply()Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
com/sun/tools/jdeps/Module.name()Ljava/lang/String; (5)
(Lcom/sun/tools/jdeps/Module;)Ljava/lang/String;
invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
3: invokeinterface java.util.stream.Stream.sorted:()Ljava/util/stream/Stream;
4: invokestatic java.util.function.Function.identity:()Ljava/util/function/Function;
aload 1
invokedynamic apply(Lcom/sun/tools/jdeps/JdepsConfiguration;)Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
com/sun/tools/jdeps/ModuleDotGraph.lambda$1(Lcom/sun/tools/jdeps/JdepsConfiguration;Ljava/lang/String;)Ljava/lang/module/Configuration; (6)
(Ljava/lang/String;)Ljava/lang/module/Configuration;
invokestatic java.util.stream.Collectors.toMap:(Ljava/util/function/Function;Ljava/util/function/Function;)Ljava/util/stream/Collector;
invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
checkcast java.util.Map
5: iload 2
invokespecial com.sun.tools.jdeps.ModuleDotGraph.<init>:(Lcom/sun/tools/jdeps/JdepsConfiguration;Ljava/util/Map;Z)V
6: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/sun/tools/jdeps/ModuleDotGraph;
0 7 1 config Lcom/sun/tools/jdeps/JdepsConfiguration;
0 7 2 apiOnly Z
MethodParameters:
Name Flags
config
apiOnly
public void <init>(java.util.Map<java.lang.String, java.lang.module.Configuration>, );
descriptor: (Ljava/util/Map;Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aconst_null
aload 1
iload 2
invokespecial com.sun.tools.jdeps.ModuleDotGraph.<init>:(Lcom/sun/tools/jdeps/JdepsConfiguration;Ljava/util/Map;Z)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/sun/tools/jdeps/ModuleDotGraph;
0 2 1 configurations Ljava/util/Map<Ljava/lang/String;Ljava/lang/module/Configuration;>;
0 2 2 apiOnly Z
Signature: (Ljava/util/Map<Ljava/lang/String;Ljava/lang/module/Configuration;>;Z)V
MethodParameters:
Name Flags
configurations
apiOnly
private void <init>(com.sun.tools.jdeps.JdepsConfiguration, java.util.Map<java.lang.String, java.lang.module.Configuration>, );
descriptor: (Lcom/sun/tools/jdeps/JdepsConfiguration;Ljava/util/Map;Z)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 2
putfield com.sun.tools.jdeps.ModuleDotGraph.configurations:Ljava/util/Map;
2: aload 0
iload 3
putfield com.sun.tools.jdeps.ModuleDotGraph.apiOnly:Z
3: aload 0
aload 1
putfield com.sun.tools.jdeps.ModuleDotGraph.config:Lcom/sun/tools/jdeps/JdepsConfiguration;
4: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/sun/tools/jdeps/ModuleDotGraph;
0 5 1 config Lcom/sun/tools/jdeps/JdepsConfiguration;
0 5 2 configurations Ljava/util/Map<Ljava/lang/String;Ljava/lang/module/Configuration;>;
0 5 3 apiOnly Z
Signature: (Lcom/sun/tools/jdeps/JdepsConfiguration;Ljava/util/Map<Ljava/lang/String;Ljava/lang/module/Configuration;>;Z)V
MethodParameters:
Name Flags
config
configurations
apiOnly
public boolean genDotFiles(java.nio.file.Path);
descriptor: (Ljava/nio/file/Path;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
getstatic com.sun.tools.jdeps.ModuleDotGraph$DotGraphAttributes.DEFAULT:Lcom/sun/tools/jdeps/ModuleDotGraph$DotGraphAttributes;
invokevirtual com.sun.tools.jdeps.ModuleDotGraph.genDotFiles:(Ljava/nio/file/Path;Lcom/sun/tools/jdeps/ModuleDotGraph$Attributes;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/jdeps/ModuleDotGraph;
0 1 1 dir Ljava/nio/file/Path;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
dir
public boolean genDotFiles(java.nio.file.Path, com.sun.tools.jdeps.ModuleDotGraph$Attributes);
descriptor: (Ljava/nio/file/Path;Lcom/sun/tools/jdeps/ModuleDotGraph$Attributes;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 1
iconst_0
anewarray java.nio.file.attribute.FileAttribute
invokestatic java.nio.file.Files.createDirectories:(Ljava/nio/file/Path;[Ljava/nio/file/attribute/FileAttribute;)Ljava/nio/file/Path;
pop
1: aload 0
getfield com.sun.tools.jdeps.ModuleDotGraph.configurations:Ljava/util/Map;
invokeinterface java.util.Map.keySet:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 4
goto 5
StackMap locals: com.sun.tools.jdeps.ModuleDotGraph java.nio.file.Path com.sun.tools.jdeps.ModuleDotGraph$Attributes top java.util.Iterator
StackMap stack:
2: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 3
start local 3 3: aload 1
new java.lang.StringBuilder
dup
aload 0
aload 3
invokevirtual com.sun.tools.jdeps.ModuleDotGraph.toDotFileBaseName:(Ljava/lang/String;)Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ".dot"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokeinterface java.nio.file.Path.resolve:(Ljava/lang/String;)Ljava/nio/file/Path;
astore 5
start local 5 4: aload 0
aload 5
aload 3
aload 0
getfield com.sun.tools.jdeps.ModuleDotGraph.configurations:Ljava/util/Map;
aload 3
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.module.Configuration
aload 2
invokevirtual com.sun.tools.jdeps.ModuleDotGraph.genDotFile:(Ljava/nio/file/Path;Ljava/lang/String;Ljava/lang/module/Configuration;Lcom/sun/tools/jdeps/ModuleDotGraph$Attributes;)V
end local 5 end local 3 5: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
6: iconst_1
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/sun/tools/jdeps/ModuleDotGraph;
0 7 1 dir Ljava/nio/file/Path;
0 7 2 attributes Lcom/sun/tools/jdeps/ModuleDotGraph$Attributes;
3 5 3 mn Ljava/lang/String;
4 5 5 path Ljava/nio/file/Path;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
dir
attributes
private java.lang.String toDotFileBaseName(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.tools.jdeps.ModuleDotGraph.config:Lcom/sun/tools/jdeps/JdepsConfiguration;
ifnonnull 2
1: aload 1
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.jdeps.ModuleDotGraph.config:Lcom/sun/tools/jdeps/JdepsConfiguration;
aload 1
invokevirtual com.sun.tools.jdeps.JdepsConfiguration.findModule:(Ljava/lang/String;)Ljava/util/Optional;
invokedynamic apply()Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
com/sun/tools/jdeps/Archive.path()Ljava/util/Optional; (5)
(Lcom/sun/tools/jdeps/Module;)Ljava/util/Optional;
invokevirtual java.util.Optional.flatMap:(Ljava/util/function/Function;)Ljava/util/Optional;
astore 2
start local 2 3: aload 2
invokevirtual java.util.Optional.isPresent:()Z
ifeq 5
4: aload 2
invokevirtual java.util.Optional.get:()Ljava/lang/Object;
checkcast java.nio.file.Path
invokeinterface java.nio.file.Path.getFileName:()Ljava/nio/file/Path;
invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
areturn
5: StackMap locals: java.util.Optional
StackMap stack:
aload 1
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/sun/tools/jdeps/ModuleDotGraph;
0 6 1 mn Ljava/lang/String;
3 6 2 path Ljava/util/Optional<Ljava/nio/file/Path;>;
MethodParameters:
Name Flags
mn
public void genDotFile(java.nio.file.Path, java.lang.String, java.lang.module.Configuration, com.sun.tools.jdeps.ModuleDotGraph$Attributes);
descriptor: (Ljava/nio/file/Path;Ljava/lang/String;Ljava/lang/module/Configuration;Lcom/sun/tools/jdeps/ModuleDotGraph$Attributes;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=7, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
getfield com.sun.tools.jdeps.ModuleDotGraph.apiOnly:Z
ifeq 2
1: aload 0
aload 3
aload 2
invokestatic java.util.Set.of:(Ljava/lang/Object;)Ljava/util/Set;
invokevirtual com.sun.tools.jdeps.ModuleDotGraph.requiresTransitiveGraph:(Ljava/lang/module/Configuration;Ljava/util/Set;)Lcom/sun/tools/jdeps/Graph;
goto 3
2: StackMap locals:
StackMap stack:
aload 0
aload 3
invokevirtual com.sun.tools.jdeps.ModuleDotGraph.gengraph:(Ljava/lang/module/Configuration;)Lcom/sun/tools/jdeps/Graph;
3: StackMap locals:
StackMap stack: com.sun.tools.jdeps.Graph
astore 5
start local 5 4: new com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder
dup
aload 2
aload 5
aload 4
invokespecial com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder.<init>:(Ljava/lang/String;Lcom/sun/tools/jdeps/Graph;Lcom/sun/tools/jdeps/ModuleDotGraph$Attributes;)V
astore 6
start local 6 5: aload 6
ldc "se"
ldc "java"
aload 4
invokeinterface com.sun.tools.jdeps.ModuleDotGraph$Attributes.javaSubgraphColor:()Ljava/lang/String;
6: getstatic com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder.JAVA_SE_SUBGRAPH:Ljava/util/Set;
7: invokevirtual com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder.subgraph:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/Set;)Lcom/sun/tools/jdeps/ModuleDotGraph$DotGraphBuilder;
8: ldc "jdk"
ldc "jdk"
aload 4
invokeinterface com.sun.tools.jdeps.ModuleDotGraph$Attributes.jdkSubgraphColor:()Ljava/lang/String;
9: getstatic com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder.JDK_SUBGRAPH:Ljava/util/Set;
10: invokevirtual com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder.subgraph:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/Set;)Lcom/sun/tools/jdeps/ModuleDotGraph$DotGraphBuilder;
11: aload 5
invokevirtual com.sun.tools.jdeps.Graph.nodes:()Ljava/util/Set;
invokeinterface java.util.Set.stream:()Ljava/util/stream/Stream;
12: aload 3
invokedynamic apply(Ljava/lang/module/Configuration;)Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
com/sun/tools/jdeps/ModuleDotGraph.lambda$3(Ljava/lang/module/Configuration;Ljava/lang/String;)Ljava/lang/module/ModuleDescriptor; (6)
(Ljava/lang/String;)Ljava/lang/module/ModuleDescriptor;
invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
13: invokevirtual com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder.modules:(Ljava/util/stream/Stream;)Lcom/sun/tools/jdeps/ModuleDotGraph$DotGraphBuilder;
pop
14: aload 6
aload 1
invokevirtual com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder.build:(Ljava/nio/file/Path;)V
15: return
end local 6 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 16 0 this Lcom/sun/tools/jdeps/ModuleDotGraph;
0 16 1 path Ljava/nio/file/Path;
0 16 2 name Ljava/lang/String;
0 16 3 configuration Ljava/lang/module/Configuration;
0 16 4 attributes Lcom/sun/tools/jdeps/ModuleDotGraph$Attributes;
4 16 5 graph Lcom/sun/tools/jdeps/Graph<Ljava/lang/String;>;
5 16 6 builder Lcom/sun/tools/jdeps/ModuleDotGraph$DotGraphBuilder;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
path
name
configuration
attributes
private com.sun.tools.jdeps.Graph<java.lang.String> gengraph(java.lang.module.Configuration);
descriptor: (Ljava/lang/module/Configuration;)Lcom/sun/tools/jdeps/Graph;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: new com.sun.tools.jdeps.Graph$Builder
dup
invokespecial com.sun.tools.jdeps.Graph$Builder.<init>:()V
astore 2
start local 2 1: aload 1
invokevirtual java.lang.module.Configuration.modules:()Ljava/util/Set;
invokeinterface java.util.Set.stream:()Ljava/util/stream/Stream;
2: aload 2
invokedynamic accept(Lcom/sun/tools/jdeps/Graph$Builder;)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
com/sun/tools/jdeps/ModuleDotGraph.lambda$4(Lcom/sun/tools/jdeps/Graph$Builder;Ljava/lang/module/ResolvedModule;)V (6)
(Ljava/lang/module/ResolvedModule;)V
invokeinterface java.util.stream.Stream.forEach:(Ljava/util/function/Consumer;)V
3: aload 0
aload 1
aload 2
getfield com.sun.tools.jdeps.Graph$Builder.nodes:Ljava/util/Set;
invokevirtual com.sun.tools.jdeps.ModuleDotGraph.requiresTransitiveGraph:(Ljava/lang/module/Configuration;Ljava/util/Set;)Lcom/sun/tools/jdeps/Graph;
astore 3
start local 3 4: aload 2
invokevirtual com.sun.tools.jdeps.Graph$Builder.build:()Lcom/sun/tools/jdeps/Graph;
aload 3
invokevirtual com.sun.tools.jdeps.Graph.reduce:(Lcom/sun/tools/jdeps/Graph;)Lcom/sun/tools/jdeps/Graph;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/sun/tools/jdeps/ModuleDotGraph;
0 5 1 cf Ljava/lang/module/Configuration;
1 5 2 builder Lcom/sun/tools/jdeps/Graph$Builder<Ljava/lang/String;>;
4 5 3 rpg Lcom/sun/tools/jdeps/Graph<Ljava/lang/String;>;
Signature: (Ljava/lang/module/Configuration;)Lcom/sun/tools/jdeps/Graph<Ljava/lang/String;>;
MethodParameters:
Name Flags
cf
public com.sun.tools.jdeps.Graph<java.lang.String> requiresTransitiveGraph(java.lang.module.Configuration, java.util.Set<java.lang.String>);
descriptor: (Ljava/lang/module/Configuration;Ljava/util/Set;)Lcom/sun/tools/jdeps/Graph;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=7, args_size=3
start local 0 start local 1 start local 2 0: new java.util.ArrayDeque
dup
aload 2
invokespecial java.util.ArrayDeque.<init>:(Ljava/util/Collection;)V
astore 3
start local 3 1: new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
astore 4
start local 4 2: new com.sun.tools.jdeps.Graph$Builder
dup
invokespecial com.sun.tools.jdeps.Graph$Builder.<init>:()V
astore 5
start local 5 3: goto 14
4: StackMap locals: java.util.Deque java.util.Set com.sun.tools.jdeps.Graph$Builder
StackMap stack:
aload 3
invokeinterface java.util.Deque.pop:()Ljava/lang/Object;
checkcast java.lang.String
astore 6
start local 6 5: aload 4
aload 6
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifeq 7
6: goto 14
7: StackMap locals: java.lang.String
StackMap stack:
aload 4
aload 6
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
8: aload 5
aload 6
invokevirtual com.sun.tools.jdeps.Graph$Builder.addNode:(Ljava/lang/Object;)V
9: aload 1
aload 6
invokevirtual java.lang.module.Configuration.findModule:(Ljava/lang/String;)Ljava/util/Optional;
invokevirtual java.util.Optional.get:()Ljava/lang/Object;
checkcast java.lang.module.ResolvedModule
10: invokevirtual java.lang.module.ResolvedModule.reference:()Ljava/lang/module/ModuleReference;
invokevirtual java.lang.module.ModuleReference.descriptor:()Ljava/lang/module/ModuleDescriptor;
invokevirtual java.lang.module.ModuleDescriptor.requires:()Ljava/util/Set;
invokeinterface java.util.Set.stream:()Ljava/util/stream/Stream;
11: invokedynamic test()Ljava/util/function/Predicate;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Z
com/sun/tools/jdeps/ModuleDotGraph.lambda$7(Ljava/lang/module/ModuleDescriptor$Requires;)Z (6)
(Ljava/lang/module/ModuleDescriptor$Requires;)Z
invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
12: 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/lang/module/ModuleDescriptor$Requires.name()Ljava/lang/String; (5)
(Ljava/lang/module/ModuleDescriptor$Requires;)Ljava/lang/String;
invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
13: aload 3
aload 5
aload 6
invokedynamic accept(Ljava/util/Deque;Lcom/sun/tools/jdeps/Graph$Builder;Ljava/lang/String;)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
com/sun/tools/jdeps/ModuleDotGraph.lambda$9(Ljava/util/Deque;Lcom/sun/tools/jdeps/Graph$Builder;Ljava/lang/String;Ljava/lang/String;)V (6)
(Ljava/lang/String;)V
invokeinterface java.util.stream.Stream.forEach:(Ljava/util/function/Consumer;)V
end local 6 14: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Deque.peek:()Ljava/lang/Object;
ifnonnull 4
15: aload 5
invokevirtual com.sun.tools.jdeps.Graph$Builder.build:()Lcom/sun/tools/jdeps/Graph;
invokevirtual com.sun.tools.jdeps.Graph.reduce:()Lcom/sun/tools/jdeps/Graph;
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 16 0 this Lcom/sun/tools/jdeps/ModuleDotGraph;
0 16 1 cf Ljava/lang/module/Configuration;
0 16 2 roots Ljava/util/Set<Ljava/lang/String;>;
1 16 3 deque Ljava/util/Deque<Ljava/lang/String;>;
2 16 4 visited Ljava/util/Set<Ljava/lang/String;>;
3 16 5 builder Lcom/sun/tools/jdeps/Graph$Builder<Ljava/lang/String;>;
5 14 6 mn Ljava/lang/String;
Signature: (Ljava/lang/module/Configuration;Ljava/util/Set<Ljava/lang/String;>;)Lcom/sun/tools/jdeps/Graph<Ljava/lang/String;>;
MethodParameters:
Name Flags
cf
roots
private static java.lang.module.Configuration lambda$1(com.sun.tools.jdeps.JdepsConfiguration, java.lang.String);
descriptor: (Lcom/sun/tools/jdeps/JdepsConfiguration;Ljava/lang/String;)Ljava/lang/module/Configuration;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
start local 1 0: aload 0
aload 1
invokestatic java.util.Set.of:(Ljava/lang/Object;)Ljava/util/Set;
invokevirtual com.sun.tools.jdeps.JdepsConfiguration.resolve:(Ljava/util/Set;)Ljava/lang/module/Configuration;
areturn
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 1 1 mn Ljava/lang/String;
private static java.lang.module.ModuleDescriptor lambda$3(java.lang.module.Configuration, java.lang.String);
descriptor: (Ljava/lang/module/Configuration;Ljava/lang/String;)Ljava/lang/module/ModuleDescriptor;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
start local 1 0: aload 0
aload 1
invokevirtual java.lang.module.Configuration.findModule:(Ljava/lang/String;)Ljava/util/Optional;
invokevirtual java.util.Optional.get:()Ljava/lang/Object;
checkcast java.lang.module.ResolvedModule
1: invokevirtual java.lang.module.ResolvedModule.reference:()Ljava/lang/module/ModuleReference;
invokevirtual java.lang.module.ModuleReference.descriptor:()Ljava/lang/module/ModuleDescriptor;
areturn
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 2 1 mn Ljava/lang/String;
private static void lambda$4(com.sun.tools.jdeps.Graph$Builder, java.lang.module.ResolvedModule);
descriptor: (Lcom/sun/tools/jdeps/Graph$Builder;Ljava/lang/module/ResolvedModule;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=2
start local 1 0: aload 1
invokevirtual java.lang.module.ResolvedModule.name:()Ljava/lang/String;
astore 2
start local 2 1: aload 0
aload 2
invokevirtual com.sun.tools.jdeps.Graph$Builder.addNode:(Ljava/lang/Object;)V
2: aload 1
invokevirtual java.lang.module.ResolvedModule.reads:()Ljava/util/Set;
invokeinterface java.util.Set.stream:()Ljava/util/stream/Stream;
3: invokedynamic apply()Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
java/lang/module/ResolvedModule.name()Ljava/lang/String; (5)
(Ljava/lang/module/ResolvedModule;)Ljava/lang/String;
invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
4: aload 0
aload 2
invokedynamic accept(Lcom/sun/tools/jdeps/Graph$Builder;Ljava/lang/String;)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
com/sun/tools/jdeps/ModuleDotGraph.lambda$6(Lcom/sun/tools/jdeps/Graph$Builder;Ljava/lang/String;Ljava/lang/String;)V (6)
(Ljava/lang/String;)V
invokeinterface java.util.stream.Stream.forEach:(Ljava/util/function/Consumer;)V
end local 2 5: return
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 6 1 rm Ljava/lang/module/ResolvedModule;
1 5 2 mn Ljava/lang/String;
private static boolean lambda$7(java.lang.module.ModuleDescriptor$Requires);
descriptor: (Ljava/lang/module/ModuleDescriptor$Requires;)Z
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual java.lang.module.ModuleDescriptor$Requires.modifiers:()Ljava/util/Set;
getstatic java.lang.module.ModuleDescriptor$Requires$Modifier.TRANSITIVE:Ljava/lang/module/ModuleDescriptor$Requires$Modifier;
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifne 2
1: aload 0
invokevirtual java.lang.module.ModuleDescriptor$Requires.name:()Ljava/lang/String;
ldc "java.base"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 2
iconst_0
goto 3
StackMap locals:
StackMap stack:
2: iconst_1
StackMap locals:
StackMap stack: int
3: ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 d Ljava/lang/module/ModuleDescriptor$Requires;
private static void lambda$9(java.util.Deque, com.sun.tools.jdeps.Graph$Builder, java.lang.String, java.lang.String);
descriptor: (Ljava/util/Deque;Lcom/sun/tools/jdeps/Graph$Builder;Ljava/lang/String;Ljava/lang/String;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=4, args_size=4
start local 3 0: aload 0
aload 3
invokeinterface java.util.Deque.add:(Ljava/lang/Object;)Z
pop
1: aload 1
aload 2
aload 3
invokevirtual com.sun.tools.jdeps.Graph$Builder.addEdge:(Ljava/lang/Object;Ljava/lang/Object;)V
2: return
end local 3 LocalVariableTable:
Start End Slot Name Signature
0 3 3 d Ljava/lang/String;
private static void lambda$6(com.sun.tools.jdeps.Graph$Builder, java.lang.String, java.lang.String);
descriptor: (Lcom/sun/tools/jdeps/Graph$Builder;Ljava/lang/String;Ljava/lang/String;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
start local 2 0: aload 0
aload 1
aload 2
invokevirtual com.sun.tools.jdeps.Graph$Builder.addEdge:(Ljava/lang/Object;Ljava/lang/Object;)V
return
end local 2 LocalVariableTable:
Start End Slot Name Signature
0 1 2 target Ljava/lang/String;
}
SourceFile: "ModuleDotGraph.java"
NestMembers:
com.sun.tools.jdeps.ModuleDotGraph$Attributes com.sun.tools.jdeps.ModuleDotGraph$DotGraphAttributes com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder$SubGraph
InnerClasses:
Builder = com.sun.tools.jdeps.Graph$Builder of com.sun.tools.jdeps.Graph
public abstract Attributes = com.sun.tools.jdeps.ModuleDotGraph$Attributes of com.sun.tools.jdeps.ModuleDotGraph
DotGraphAttributes = com.sun.tools.jdeps.ModuleDotGraph$DotGraphAttributes of com.sun.tools.jdeps.ModuleDotGraph
private DotGraphBuilder = com.sun.tools.jdeps.ModuleDotGraph$DotGraphBuilder of com.sun.tools.jdeps.ModuleDotGraph
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
public final Requires = java.lang.module.ModuleDescriptor$Requires of java.lang.module.ModuleDescriptor
public final Modifier = java.lang.module.ModuleDescriptor$Requires$Modifier of java.lang.module.ModuleDescriptor$Requires