public class com.sun.tools.sjavac.comp.dependencies.NewDependencyCollector implements com.sun.source.util.TaskListener
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.sun.tools.sjavac.comp.dependencies.NewDependencyCollector
super_class: java.lang.Object
{
private final com.sun.tools.javac.util.Context context;
descriptor: Lcom/sun/tools/javac/util/Context;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.util.Collection<javax.tools.JavaFileObject> explicitJFOs;
descriptor: Ljava/util/Collection;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Collection<Ljavax/tools/JavaFileObject;>;
private java.util.Map<java.lang.String, java.util.Map<java.lang.String, java.util.Set<java.lang.String>>> deps;
descriptor: Ljava/util/Map;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/Map<Ljava/lang/String;Ljava/util/Map<Ljava/lang/String;Ljava/util/Set<Ljava/lang/String;>;>;>;
private java.util.Map<java.lang.String, java.util.Map<java.lang.String, java.util.Set<java.lang.String>>> cpDeps;
descriptor: Ljava/util/Map;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/Map<Ljava/lang/String;Ljava/util/Map<Ljava/lang/String;Ljava/util/Set<Ljava/lang/String;>;>;>;
public void <init>(com.sun.tools.javac.util.Context, java.util.Collection<javax.tools.JavaFileObject>);
descriptor: (Lcom/sun/tools/javac/util/Context;Ljava/util/Collection;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield com.sun.tools.sjavac.comp.dependencies.NewDependencyCollector.context:Lcom/sun/tools/javac/util/Context;
2: aload 0
aload 2
putfield com.sun.tools.sjavac.comp.dependencies.NewDependencyCollector.explicitJFOs:Ljava/util/Collection;
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/tools/sjavac/comp/dependencies/NewDependencyCollector;
0 4 1 context Lcom/sun/tools/javac/util/Context;
0 4 2 explicitJFOs Ljava/util/Collection<Ljavax/tools/JavaFileObject;>;
Signature: (Lcom/sun/tools/javac/util/Context;Ljava/util/Collection<Ljavax/tools/JavaFileObject;>;)V
MethodParameters:
Name Flags
context
explicitJFOs
public void finished(com.sun.source.util.TaskEvent);
descriptor: (Lcom/sun/source/util/TaskEvent;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual com.sun.source.util.TaskEvent.getKind:()Lcom/sun/source/util/TaskEvent$Kind;
getstatic com.sun.source.util.TaskEvent$Kind.COMPILATION:Lcom/sun/source/util/TaskEvent$Kind;
if_acmpne 4
1: aload 0
aload 0
getfield com.sun.tools.sjavac.comp.dependencies.NewDependencyCollector.context:Lcom/sun/tools/javac/util/Context;
aload 0
getfield com.sun.tools.sjavac.comp.dependencies.NewDependencyCollector.explicitJFOs:Ljava/util/Collection;
invokevirtual com.sun.tools.sjavac.comp.dependencies.NewDependencyCollector.collectPubApisOfDependencies:(Lcom/sun/tools/javac/util/Context;Ljava/util/Collection;)V
2: aload 0
aload 0
aload 0
getfield com.sun.tools.sjavac.comp.dependencies.NewDependencyCollector.context:Lcom/sun/tools/javac/util/Context;
aload 0
getfield com.sun.tools.sjavac.comp.dependencies.NewDependencyCollector.explicitJFOs:Ljava/util/Collection;
iconst_0
invokevirtual com.sun.tools.sjavac.comp.dependencies.NewDependencyCollector.getDependencies:(Lcom/sun/tools/javac/util/Context;Ljava/util/Collection;Z)Ljava/util/Map;
putfield com.sun.tools.sjavac.comp.dependencies.NewDependencyCollector.deps:Ljava/util/Map;
3: aload 0
aload 0
aload 0
getfield com.sun.tools.sjavac.comp.dependencies.NewDependencyCollector.context:Lcom/sun/tools/javac/util/Context;
aload 0
getfield com.sun.tools.sjavac.comp.dependencies.NewDependencyCollector.explicitJFOs:Ljava/util/Collection;
iconst_1
invokevirtual com.sun.tools.sjavac.comp.dependencies.NewDependencyCollector.getDependencies:(Lcom/sun/tools/javac/util/Context;Ljava/util/Collection;Z)Ljava/util/Map;
putfield com.sun.tools.sjavac.comp.dependencies.NewDependencyCollector.cpDeps:Ljava/util/Map;
4: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/sun/tools/sjavac/comp/dependencies/NewDependencyCollector;
0 5 1 e Lcom/sun/source/util/TaskEvent;
MethodParameters:
Name Flags
e
public java.util.Map<java.lang.String, java.util.Map<java.lang.String, java.util.Set<java.lang.String>>> getDependencies(boolean);
descriptor: (Z)Ljava/util/Map;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: iload 1
ifeq 1
aload 0
getfield com.sun.tools.sjavac.comp.dependencies.NewDependencyCollector.cpDeps:Ljava/util/Map;
goto 2
StackMap locals:
StackMap stack:
1: aload 0
getfield com.sun.tools.sjavac.comp.dependencies.NewDependencyCollector.deps:Ljava/util/Map;
StackMap locals:
StackMap stack: java.util.Map
2: areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/tools/sjavac/comp/dependencies/NewDependencyCollector;
0 3 1 cp Z
Signature: (Z)Ljava/util/Map<Ljava/lang/String;Ljava/util/Map<Ljava/lang/String;Ljava/util/Set<Ljava/lang/String;>;>;>;
MethodParameters:
Name Flags
cp
private java.util.Set<com.sun.tools.javac.util.Dependencies$GraphDependencies$CompletionNode> getDependencyNodes(com.sun.tools.javac.util.Context, java.util.Collection<javax.tools.JavaFileObject>, boolean);
descriptor: (Lcom/sun/tools/javac/util/Context;Ljava/util/Collection;Z)Ljava/util/Set;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
invokestatic com.sun.tools.javac.util.Dependencies$GraphDependencies.instance:(Lcom/sun/tools/javac/util/Context;)Lcom/sun/tools/javac/util/Dependencies;
checkcast com.sun.tools.javac.util.Dependencies$GraphDependencies
astore 4
start local 4 1: aload 4
invokevirtual com.sun.tools.javac.util.Dependencies$GraphDependencies.getNodes:()Ljava/util/Collection;
2: invokeinterface java.util.Collection.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;
com/sun/tools/sjavac/comp/dependencies/NewDependencyCollector.lambda$0(Lcom/sun/tools/javac/util/Dependencies$GraphDependencies$Node;)Lcom/sun/tools/javac/util/Dependencies$GraphDependencies$CompletionNode; (6)
(Lcom/sun/tools/javac/util/Dependencies$GraphDependencies$Node;)Lcom/sun/tools/javac/util/Dependencies$GraphDependencies$CompletionNode;
invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
4: 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/sjavac/comp/dependencies/NewDependencyCollector.lambda$1(Lcom/sun/tools/javac/util/Dependencies$GraphDependencies$CompletionNode;)Z (6)
(Lcom/sun/tools/javac/util/Dependencies$GraphDependencies$CompletionNode;)Z
invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
5: iload 3
aload 2
invokedynamic test(ZLjava/util/Collection;)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/sjavac/comp/dependencies/NewDependencyCollector.lambda$2(ZLjava/util/Collection;Lcom/sun/tools/javac/util/Dependencies$GraphDependencies$CompletionNode;)Z (6)
(Lcom/sun/tools/javac/util/Dependencies$GraphDependencies$CompletionNode;)Z
invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
6: invokestatic java.util.stream.Collectors.toSet:()Ljava/util/stream/Collector;
invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
checkcast java.util.Set
7: areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/sun/tools/sjavac/comp/dependencies/NewDependencyCollector;
0 8 1 context Lcom/sun/tools/javac/util/Context;
0 8 2 explicitJFOs Ljava/util/Collection<Ljavax/tools/JavaFileObject;>;
0 8 3 explicits Z
1 8 4 deps Lcom/sun/tools/javac/util/Dependencies$GraphDependencies;
Signature: (Lcom/sun/tools/javac/util/Context;Ljava/util/Collection<Ljavax/tools/JavaFileObject;>;Z)Ljava/util/Set<Lcom/sun/tools/javac/util/Dependencies$GraphDependencies$CompletionNode;>;
MethodParameters:
Name Flags
context
explicitJFOs
explicits
private void collectPubApisOfDependencies(com.sun.tools.javac.util.Context, java.util.Collection<javax.tools.JavaFileObject>);
descriptor: (Lcom/sun/tools/javac/util/Context;Ljava/util/Collection;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=8, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokestatic com.sun.tools.sjavac.comp.PubAPIs.instance:(Lcom/sun/tools/javac/util/Context;)Lcom/sun/tools/sjavac/comp/PubAPIs;
astore 3
start local 3 1: aload 0
aload 1
aload 2
iconst_0
invokevirtual com.sun.tools.sjavac.comp.dependencies.NewDependencyCollector.getDependencyNodes:(Lcom/sun/tools/javac/util/Context;Ljava/util/Collection;Z)Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 5
goto 7
StackMap locals: com.sun.tools.sjavac.comp.dependencies.NewDependencyCollector com.sun.tools.javac.util.Context java.util.Collection com.sun.tools.sjavac.comp.PubAPIs top java.util.Iterator
StackMap stack:
2: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.util.Dependencies$GraphDependencies$CompletionNode
astore 4
start local 4 3: aload 4
invokevirtual com.sun.tools.javac.util.Dependencies$GraphDependencies$CompletionNode.getClassSymbol:()Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
invokevirtual com.sun.tools.javac.code.Symbol$ClassSymbol.outermostClass:()Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
astore 6
start local 6 4: aload 0
aload 6
invokevirtual com.sun.tools.sjavac.comp.dependencies.NewDependencyCollector.getLocationOf:(Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)Ljavax/tools/JavaFileManager$Location;
astore 7
start local 7 5: aload 7
getstatic javax.tools.StandardLocation.CLASS_PATH:Ljavax/tools/StandardLocation;
if_acmpeq 6
aload 7
getstatic javax.tools.StandardLocation.SOURCE_PATH:Ljavax/tools/StandardLocation;
if_acmpne 7
6: StackMap locals: com.sun.tools.sjavac.comp.dependencies.NewDependencyCollector com.sun.tools.javac.util.Context java.util.Collection com.sun.tools.sjavac.comp.PubAPIs com.sun.tools.javac.util.Dependencies$GraphDependencies$CompletionNode java.util.Iterator com.sun.tools.javac.code.Symbol$ClassSymbol javax.tools.JavaFileManager$Location
StackMap stack:
aload 3
aload 6
invokevirtual com.sun.tools.sjavac.comp.PubAPIs.visitPubapi:(Ljavax/lang/model/element/Element;)V
end local 7 end local 6 end local 4 7: StackMap locals: com.sun.tools.sjavac.comp.dependencies.NewDependencyCollector com.sun.tools.javac.util.Context java.util.Collection com.sun.tools.sjavac.comp.PubAPIs top java.util.Iterator
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
8: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lcom/sun/tools/sjavac/comp/dependencies/NewDependencyCollector;
0 9 1 context Lcom/sun/tools/javac/util/Context;
0 9 2 explicitJFOs Ljava/util/Collection<Ljavax/tools/JavaFileObject;>;
1 9 3 pubApis Lcom/sun/tools/sjavac/comp/PubAPIs;
3 7 4 cDepNode Lcom/sun/tools/javac/util/Dependencies$GraphDependencies$CompletionNode;
4 7 6 cs Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
5 7 7 loc Ljavax/tools/JavaFileManager$Location;
Signature: (Lcom/sun/tools/javac/util/Context;Ljava/util/Collection<Ljavax/tools/JavaFileObject;>;)V
MethodParameters:
Name Flags
context
explicitJFOs
private javax.tools.JavaFileManager$Location getLocationOf(com.sun.tools.javac.code.Symbol$ClassSymbol);
descriptor: (Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)Ljavax/tools/JavaFileManager$Location;
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=3, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual com.sun.tools.javac.code.Symbol$ClassSymbol.outermostClass:()Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.classfile:Ljavax/tools/JavaFileObject;
astore 2
start local 2 1: aload 2
instanceof com.sun.tools.sjavac.comp.JavaFileObjectWithLocation
ifeq 3
2: aload 2
checkcast com.sun.tools.sjavac.comp.JavaFileObjectWithLocation
invokevirtual com.sun.tools.sjavac.comp.JavaFileObjectWithLocation.getLocation:()Ljavax/tools/JavaFileManager$Location;
areturn
3: StackMap locals: javax.tools.JavaFileObject
StackMap stack:
aconst_null
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/tools/sjavac/comp/dependencies/NewDependencyCollector;
0 4 1 cs Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
1 4 2 jfo Ljavax/tools/JavaFileObject;
MethodParameters:
Name Flags
cs
private java.util.Map<java.lang.String, java.util.Map<java.lang.String, java.util.Set<java.lang.String>>> getDependencies(com.sun.tools.javac.util.Context, java.util.Collection<javax.tools.JavaFileObject>, boolean);
descriptor: (Lcom/sun/tools/javac/util/Context;Ljava/util/Collection;Z)Ljava/util/Map;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=14, args_size=4
start local 0 start local 1 start local 2 start local 3 0: new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
astore 4
start local 4 1: aload 0
aload 1
aload 2
iconst_1
invokevirtual com.sun.tools.sjavac.comp.dependencies.NewDependencyCollector.getDependencyNodes:(Lcom/sun/tools/javac/util/Context;Ljava/util/Collection;Z)Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 6
goto 26
StackMap locals: com.sun.tools.sjavac.comp.dependencies.NewDependencyCollector com.sun.tools.javac.util.Context java.util.Collection int java.util.Map top java.util.Iterator
StackMap stack:
2: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.util.Dependencies$GraphDependencies$CompletionNode
astore 5
start local 5 3: aload 5
invokevirtual com.sun.tools.javac.util.Dependencies$GraphDependencies$CompletionNode.getClassSymbol:()Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
invokevirtual com.sun.tools.javac.code.Symbol$ClassSymbol.outermostClass:()Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.flatname:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.util.Name.toString:()Ljava/lang/String;
astore 7
start local 7 4: aload 7
invokestatic com.sun.tools.sjavac.Util.pkgNameOfClassName:(Ljava/lang/String;)Ljava/lang/String;
astore 8
start local 8 5: aload 4
aload 8
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.util.Map
astore 9
start local 9 6: aload 9
ifnonnull 8
7: aload 4
aload 8
new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
dup
astore 9
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
8: StackMap locals: com.sun.tools.sjavac.comp.dependencies.NewDependencyCollector com.sun.tools.javac.util.Context java.util.Collection int java.util.Map com.sun.tools.javac.util.Dependencies$GraphDependencies$CompletionNode java.util.Iterator java.lang.String java.lang.String java.util.Map
StackMap stack:
aload 9
aload 7
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.util.Set
astore 10
start local 10 9: aload 10
ifnonnull 11
10: aload 9
aload 7
new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
dup
astore 10
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
11: StackMap locals: java.util.Set
StackMap stack:
aload 0
aload 5
invokevirtual com.sun.tools.sjavac.comp.dependencies.NewDependencyCollector.getAllDependencies:(Lcom/sun/tools/javac/util/Dependencies$GraphDependencies$CompletionNode;)Ljava/util/Collection;
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 12
goto 20
StackMap locals: com.sun.tools.sjavac.comp.dependencies.NewDependencyCollector com.sun.tools.javac.util.Context java.util.Collection int java.util.Map com.sun.tools.javac.util.Dependencies$GraphDependencies$CompletionNode java.util.Iterator java.lang.String java.lang.String java.util.Map java.util.Set top java.util.Iterator
StackMap stack:
12: aload 12
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.util.GraphUtils$Node
astore 11
start local 11 13: aload 11
checkcast com.sun.tools.javac.util.Dependencies$GraphDependencies$CompletionNode
astore 13
start local 13 14: aload 13
aload 5
if_acmpne 16
15: goto 20
16: StackMap locals: com.sun.tools.sjavac.comp.dependencies.NewDependencyCollector com.sun.tools.javac.util.Context java.util.Collection int java.util.Map com.sun.tools.javac.util.Dependencies$GraphDependencies$CompletionNode java.util.Iterator java.lang.String java.lang.String java.util.Map java.util.Set com.sun.tools.javac.util.GraphUtils$Node java.util.Iterator com.sun.tools.javac.util.Dependencies$GraphDependencies$CompletionNode
StackMap stack:
aload 13
invokevirtual com.sun.tools.javac.util.Dependencies$GraphDependencies$CompletionNode.getClassSymbol:()Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.fullname:Lcom/sun/tools/javac/util/Name;
ifnonnull 18
17: goto 20
18: StackMap locals:
StackMap stack:
aload 0
iload 3
aload 13
invokevirtual com.sun.tools.javac.util.Dependencies$GraphDependencies$CompletionNode.getClassSymbol:()Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
invokevirtual com.sun.tools.sjavac.comp.dependencies.NewDependencyCollector.isSymbolRelevant:(ZLcom/sun/tools/javac/code/Symbol$ClassSymbol;)Z
ifeq 20
19: aload 10
aload 13
invokevirtual com.sun.tools.javac.util.Dependencies$GraphDependencies$CompletionNode.getClassSymbol:()Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
invokevirtual com.sun.tools.javac.code.Symbol$ClassSymbol.outermostClass:()Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.flatname:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.util.Name.toString:()Ljava/lang/String;
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
end local 13 end local 11 20: StackMap locals: com.sun.tools.sjavac.comp.dependencies.NewDependencyCollector com.sun.tools.javac.util.Context java.util.Collection int java.util.Map com.sun.tools.javac.util.Dependencies$GraphDependencies$CompletionNode java.util.Iterator java.lang.String java.lang.String java.util.Map java.util.Set top java.util.Iterator
StackMap stack:
aload 12
invokeinterface java.util.Iterator.hasNext:()Z
ifne 12
21: aload 0
aload 5
invokevirtual com.sun.tools.javac.util.Dependencies$GraphDependencies$CompletionNode.getClassSymbol:()Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
invokevirtual com.sun.tools.sjavac.comp.dependencies.NewDependencyCollector.allSupertypes:(Lcom/sun/tools/javac/code/Symbol$TypeSymbol;)Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 12
goto 25
StackMap locals:
StackMap stack:
22: aload 12
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Symbol$ClassSymbol
astore 11
start local 11 23: aload 0
iload 3
aload 11
invokevirtual com.sun.tools.sjavac.comp.dependencies.NewDependencyCollector.isSymbolRelevant:(ZLcom/sun/tools/javac/code/Symbol$ClassSymbol;)Z
ifeq 25
24: aload 10
aload 11
invokevirtual com.sun.tools.javac.code.Symbol$ClassSymbol.outermostClass:()Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.flatname:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.util.Name.toString:()Ljava/lang/String;
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
end local 11 25: StackMap locals:
StackMap stack:
aload 12
invokeinterface java.util.Iterator.hasNext:()Z
ifne 22
end local 10 end local 9 end local 8 end local 7 end local 5 26: StackMap locals: com.sun.tools.sjavac.comp.dependencies.NewDependencyCollector com.sun.tools.javac.util.Context java.util.Collection int java.util.Map top java.util.Iterator
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
27: aload 4
areturn
end local 4 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/sjavac/comp/dependencies/NewDependencyCollector;
0 28 1 context Lcom/sun/tools/javac/util/Context;
0 28 2 explicitJFOs Ljava/util/Collection<Ljavax/tools/JavaFileObject;>;
0 28 3 cp Z
1 28 4 result Ljava/util/Map<Ljava/lang/String;Ljava/util/Map<Ljava/lang/String;Ljava/util/Set<Ljava/lang/String;>;>;>;
3 26 5 cnode Lcom/sun/tools/javac/util/Dependencies$GraphDependencies$CompletionNode;
4 26 7 fqDep Ljava/lang/String;
5 26 8 depPkg Ljava/lang/String;
6 26 9 depsForThisClass Ljava/util/Map<Ljava/lang/String;Ljava/util/Set<Ljava/lang/String;>;>;
9 26 10 fqDeps Ljava/util/Set<Ljava/lang/String;>;
13 20 11 depNode Lcom/sun/tools/javac/util/GraphUtils$Node<**>;
14 20 13 cDepNode Lcom/sun/tools/javac/util/Dependencies$GraphDependencies$CompletionNode;
23 25 11 cs Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
Signature: (Lcom/sun/tools/javac/util/Context;Ljava/util/Collection<Ljavax/tools/JavaFileObject;>;Z)Ljava/util/Map<Ljava/lang/String;Ljava/util/Map<Ljava/lang/String;Ljava/util/Set<Ljava/lang/String;>;>;>;
MethodParameters:
Name Flags
context
explicitJFOs
cp
public boolean isSymbolRelevant(boolean, com.sun.tools.javac.code.Symbol$ClassSymbol);
descriptor: (ZLcom/sun/tools/javac/code/Symbol$ClassSymbol;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 2
invokevirtual com.sun.tools.sjavac.comp.dependencies.NewDependencyCollector.getLocationOf:(Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)Ljavax/tools/JavaFileManager$Location;
astore 3
start local 3 1: iload 1
ifeq 2
getstatic javax.tools.StandardLocation.CLASS_PATH:Ljavax/tools/StandardLocation;
goto 3
StackMap locals: javax.tools.JavaFileManager$Location
StackMap stack:
2: getstatic javax.tools.StandardLocation.SOURCE_PATH:Ljavax/tools/StandardLocation;
StackMap locals:
StackMap stack: javax.tools.StandardLocation
3: astore 4
start local 4 4: aload 3
aload 4
if_acmpne 5
iconst_1
ireturn
StackMap locals: javax.tools.JavaFileManager$Location
StackMap stack:
5: iconst_0
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/sun/tools/sjavac/comp/dependencies/NewDependencyCollector;
0 6 1 cp Z
0 6 2 cs Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
1 6 3 csLoc Ljavax/tools/JavaFileManager$Location;
4 6 4 relevantLocation Ljavax/tools/JavaFileManager$Location;
MethodParameters:
Name Flags
cp
cs
private java.util.Set<com.sun.tools.javac.code.Symbol$ClassSymbol> allSupertypes(com.sun.tools.javac.code.Symbol$TypeSymbol);
descriptor: (Lcom/sun/tools/javac/code/Symbol$TypeSymbol;)Ljava/util/Set;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=6, args_size=2
start local 0 start local 1 0: aload 1
ifnull 1
aload 1
instanceof com.sun.tools.javac.code.Symbol$ClassSymbol
ifne 2
1: StackMap locals:
StackMap stack:
invokestatic java.util.Collections.emptySet:()Ljava/util/Set;
areturn
2: StackMap locals:
StackMap stack:
new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
astore 2
start local 2 3: aload 1
checkcast com.sun.tools.javac.code.Symbol$ClassSymbol
astore 3
start local 3 4: aload 2
aload 3
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
5: aload 2
aload 0
aload 3
invokevirtual com.sun.tools.javac.code.Symbol$ClassSymbol.getSuperclass:()Lcom/sun/tools/javac/code/Type;
getfield com.sun.tools.javac.code.Type.tsym:Lcom/sun/tools/javac/code/Symbol$TypeSymbol;
invokevirtual com.sun.tools.sjavac.comp.dependencies.NewDependencyCollector.allSupertypes:(Lcom/sun/tools/javac/code/Symbol$TypeSymbol;)Ljava/util/Set;
invokeinterface java.util.Set.addAll:(Ljava/util/Collection;)Z
pop
6: aload 3
invokevirtual com.sun.tools.javac.code.Symbol$ClassSymbol.getInterfaces:()Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
astore 5
goto 9
StackMap locals: com.sun.tools.sjavac.comp.dependencies.NewDependencyCollector com.sun.tools.javac.code.Symbol$TypeSymbol java.util.Set com.sun.tools.javac.code.Symbol$ClassSymbol top java.util.Iterator
StackMap stack:
7: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.code.Type
astore 4
start local 4 8: aload 2
aload 0
aload 4
getfield com.sun.tools.javac.code.Type.tsym:Lcom/sun/tools/javac/code/Symbol$TypeSymbol;
invokevirtual com.sun.tools.sjavac.comp.dependencies.NewDependencyCollector.allSupertypes:(Lcom/sun/tools/javac/code/Symbol$TypeSymbol;)Ljava/util/Set;
invokeinterface java.util.Set.addAll:(Ljava/util/Collection;)Z
pop
end local 4 9: StackMap locals:
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 7
10: aload 2
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lcom/sun/tools/sjavac/comp/dependencies/NewDependencyCollector;
0 11 1 t Lcom/sun/tools/javac/code/Symbol$TypeSymbol;
3 11 2 result Ljava/util/Set<Lcom/sun/tools/javac/code/Symbol$ClassSymbol;>;
4 11 3 cs Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
8 9 4 it Lcom/sun/tools/javac/code/Type;
Signature: (Lcom/sun/tools/javac/code/Symbol$TypeSymbol;)Ljava/util/Set<Lcom/sun/tools/javac/code/Symbol$ClassSymbol;>;
MethodParameters:
Name Flags
t
private java.util.Collection<? extends com.sun.tools.javac.util.GraphUtils$Node<?, ?>> getAllDependencies(com.sun.tools.javac.util.Dependencies$GraphDependencies$CompletionNode);
descriptor: (Lcom/sun/tools/javac/util/Dependencies$GraphDependencies$CompletionNode;)Ljava/util/Collection;
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual com.sun.tools.javac.util.Dependencies$GraphDependencies$CompletionNode.getSupportedDependencyKinds:()[Lcom/sun/tools/javac/util/GraphUtils$DependencyKind;
invokestatic java.util.stream.Stream.of:([Ljava/lang/Object;)Ljava/util/stream/Stream;
1: aload 1
invokedynamic apply(Lcom/sun/tools/javac/util/Dependencies$GraphDependencies$CompletionNode;)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/sjavac/comp/dependencies/NewDependencyCollector.lambda$3(Lcom/sun/tools/javac/util/Dependencies$GraphDependencies$CompletionNode;Lcom/sun/tools/javac/util/GraphUtils$DependencyKind;)Ljava/util/stream/Stream; (6)
(Lcom/sun/tools/javac/util/GraphUtils$DependencyKind;)Ljava/util/stream/Stream;
invokeinterface java.util.stream.Stream.flatMap:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
2: invokestatic java.util.stream.Collectors.toSet:()Ljava/util/stream/Collector;
invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
checkcast java.util.Collection
3: areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/tools/sjavac/comp/dependencies/NewDependencyCollector;
0 4 1 cnode Lcom/sun/tools/javac/util/Dependencies$GraphDependencies$CompletionNode;
Signature: (Lcom/sun/tools/javac/util/Dependencies$GraphDependencies$CompletionNode;)Ljava/util/Collection<+Lcom/sun/tools/javac/util/GraphUtils$Node<**>;>;
MethodParameters:
Name Flags
cnode
private static com.sun.tools.javac.util.Dependencies$GraphDependencies$CompletionNode lambda$0(com.sun.tools.javac.util.Dependencies$GraphDependencies$Node);
descriptor: (Lcom/sun/tools/javac/util/Dependencies$GraphDependencies$Node;)Lcom/sun/tools/javac/util/Dependencies$GraphDependencies$CompletionNode;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
checkcast com.sun.tools.javac.util.Dependencies$GraphDependencies$CompletionNode
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 n Lcom/sun/tools/javac/util/Dependencies$GraphDependencies$Node;
private static boolean lambda$1(com.sun.tools.javac.util.Dependencies$GraphDependencies$CompletionNode);
descriptor: (Lcom/sun/tools/javac/util/Dependencies$GraphDependencies$CompletionNode;)Z
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual com.sun.tools.javac.util.Dependencies$GraphDependencies$CompletionNode.getClassSymbol:()Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.fullname:Lcom/sun/tools/javac/util/Name;
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 n Lcom/sun/tools/javac/util/Dependencies$GraphDependencies$CompletionNode;
private static boolean lambda$2(boolean, java.util.Collection, com.sun.tools.javac.util.Dependencies$GraphDependencies$CompletionNode);
descriptor: (ZLjava/util/Collection;Lcom/sun/tools/javac/util/Dependencies$GraphDependencies$CompletionNode;)Z
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
start local 2 0: iload 0
aload 1
aload 2
invokevirtual com.sun.tools.javac.util.Dependencies$GraphDependencies$CompletionNode.getClassSymbol:()Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.classfile:Ljavax/tools/JavaFileObject;
invokeinterface java.util.Collection.contains:(Ljava/lang/Object;)Z
if_icmpne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: ireturn
end local 2 LocalVariableTable:
Start End Slot Name Signature
0 3 2 n Lcom/sun/tools/javac/util/Dependencies$GraphDependencies$CompletionNode;
private static java.util.stream.Stream lambda$3(com.sun.tools.javac.util.Dependencies$GraphDependencies$CompletionNode, com.sun.tools.javac.util.GraphUtils$DependencyKind);
descriptor: (Lcom/sun/tools/javac/util/Dependencies$GraphDependencies$CompletionNode;Lcom/sun/tools/javac/util/GraphUtils$DependencyKind;)Ljava/util/stream/Stream;
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 com.sun.tools.javac.util.Dependencies$GraphDependencies$CompletionNode.getDependenciesByKind:(Lcom/sun/tools/javac/util/GraphUtils$DependencyKind;)Ljava/util/Collection;
invokeinterface java.util.Collection.stream:()Ljava/util/stream/Stream;
areturn
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 1 1 dk Lcom/sun/tools/javac/util/GraphUtils$DependencyKind;
}
SourceFile: "NewDependencyCollector.java"
InnerClasses:
public final Kind = com.sun.source.util.TaskEvent$Kind of com.sun.source.util.TaskEvent
public ClassSymbol = com.sun.tools.javac.code.Symbol$ClassSymbol 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 GraphDependencies = com.sun.tools.javac.util.Dependencies$GraphDependencies of com.sun.tools.javac.util.Dependencies
public CompletionNode = com.sun.tools.javac.util.Dependencies$GraphDependencies$CompletionNode of com.sun.tools.javac.util.Dependencies$GraphDependencies
public abstract Node = com.sun.tools.javac.util.Dependencies$GraphDependencies$Node of com.sun.tools.javac.util.Dependencies$GraphDependencies
public abstract DependencyKind = com.sun.tools.javac.util.GraphUtils$DependencyKind of com.sun.tools.javac.util.GraphUtils
public abstract Node = com.sun.tools.javac.util.GraphUtils$Node of com.sun.tools.javac.util.GraphUtils
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
public abstract Location = javax.tools.JavaFileManager$Location of javax.tools.JavaFileManager