abstract class com.sun.tools.javac.api.JavacTaskImpl$Filter
minor version: 0
major version: 59
flags: flags: (0x0420) ACC_SUPER, ACC_ABSTRACT
this_class: com.sun.tools.javac.api.JavacTaskImpl$Filter
super_class: java.lang.Object
{
final com.sun.tools.javac.api.JavacTaskImpl this$0;
descriptor: Lcom/sun/tools/javac/api/JavacTaskImpl;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
void <init>(com.sun.tools.javac.api.JavacTaskImpl);
descriptor: (Lcom/sun/tools/javac/api/JavacTaskImpl;)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 0: aload 0
aload 1
putfield com.sun.tools.javac.api.JavacTaskImpl$Filter.this$0:Lcom/sun/tools/javac/api/JavacTaskImpl;
aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/javac/api/JavacTaskImpl$Filter;
MethodParameters:
Name Flags
this$0 final
void run(java.util.Queue<com.sun.tools.javac.comp.Env<com.sun.tools.javac.comp.AttrContext>>, java.lang.Iterable<? extends javax.lang.model.element.Element>);
descriptor: (Ljava/util/Queue;Ljava/lang/Iterable;)V
flags: (0x0000)
Code:
stack=2, locals=8, args_size=3
start local 0 start local 1 start local 2 0: new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
astore 3
start local 3 1: aload 2
invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
astore 5
goto 4
StackMap locals: com.sun.tools.javac.api.JavacTaskImpl$Filter java.util.Queue java.lang.Iterable java.util.Set top java.util.Iterator
StackMap stack:
2: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast javax.lang.model.element.Element
astore 4
start local 4 3: aload 3
aload 4
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
end local 4 4: StackMap locals:
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
5: new com.sun.tools.javac.util.ListBuffer
dup
invokespecial com.sun.tools.javac.util.ListBuffer.<init>:()V
astore 4
start local 4 6: goto 21
7: StackMap locals: com.sun.tools.javac.api.JavacTaskImpl$Filter java.util.Queue java.lang.Iterable java.util.Set com.sun.tools.javac.util.ListBuffer
StackMap stack:
aload 1
invokeinterface java.util.Queue.remove:()Ljava/lang/Object;
checkcast com.sun.tools.javac.comp.Env
astore 5
start local 5 8: aconst_null
astore 6
start local 6 9: aload 5
getfield com.sun.tools.javac.comp.Env.tree:Lcom/sun/tools/javac/tree/JCTree;
getstatic com.sun.tools.javac.tree.JCTree$Tag.MODULEDEF:Lcom/sun/tools/javac/tree/JCTree$Tag;
invokevirtual com.sun.tools.javac.tree.JCTree.hasTag:(Lcom/sun/tools/javac/tree/JCTree$Tag;)Z
ifeq 12
10: aload 5
getfield com.sun.tools.javac.comp.Env.tree:Lcom/sun/tools/javac/tree/JCTree;
checkcast com.sun.tools.javac.tree.JCTree$JCModuleDecl
getfield com.sun.tools.javac.tree.JCTree$JCModuleDecl.sym:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
astore 6
11: goto 18
StackMap locals: com.sun.tools.javac.comp.Env com.sun.tools.javac.code.Symbol
StackMap stack:
12: aload 5
getfield com.sun.tools.javac.comp.Env.tree:Lcom/sun/tools/javac/tree/JCTree;
getstatic com.sun.tools.javac.tree.JCTree$Tag.PACKAGEDEF:Lcom/sun/tools/javac/tree/JCTree$Tag;
invokevirtual com.sun.tools.javac.tree.JCTree.hasTag:(Lcom/sun/tools/javac/tree/JCTree$Tag;)Z
ifeq 15
13: aload 5
getfield com.sun.tools.javac.comp.Env.toplevel:Lcom/sun/tools/javac/tree/JCTree$JCCompilationUnit;
getfield com.sun.tools.javac.tree.JCTree$JCCompilationUnit.packge:Lcom/sun/tools/javac/code/Symbol$PackageSymbol;
astore 6
14: goto 18
15: StackMap locals:
StackMap stack:
aload 5
getfield com.sun.tools.javac.comp.Env.enclClass:Lcom/sun/tools/javac/tree/JCTree$JCClassDecl;
getfield com.sun.tools.javac.tree.JCTree$JCClassDecl.sym:Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
astore 7
start local 7 16: aload 7
ifnull 18
17: aload 7
invokevirtual com.sun.tools.javac.code.Symbol$ClassSymbol.outermostClass:()Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
astore 6
end local 7 18: StackMap locals:
StackMap stack:
aload 6
ifnull 20
aload 3
aload 6
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifeq 20
19: aload 0
aload 5
invokevirtual com.sun.tools.javac.api.JavacTaskImpl$Filter.process:(Lcom/sun/tools/javac/comp/Env;)V
goto 21
20: StackMap locals:
StackMap stack:
aload 4
aload 5
invokevirtual com.sun.tools.javac.util.ListBuffer.append:(Ljava/lang/Object;)Lcom/sun/tools/javac/util/ListBuffer;
astore 4
end local 6 end local 5 21: StackMap locals:
StackMap stack:
aload 1
invokeinterface java.util.Queue.peek:()Ljava/lang/Object;
ifnonnull 7
22: aload 1
aload 4
invokeinterface java.util.Queue.addAll:(Ljava/util/Collection;)Z
pop
23: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 24 0 this Lcom/sun/tools/javac/api/JavacTaskImpl$Filter;
0 24 1 list Ljava/util/Queue<Lcom/sun/tools/javac/comp/Env<Lcom/sun/tools/javac/comp/AttrContext;>;>;
0 24 2 elements Ljava/lang/Iterable<+Ljavax/lang/model/element/Element;>;
1 24 3 set Ljava/util/Set<Ljavax/lang/model/element/Element;>;
3 4 4 item Ljavax/lang/model/element/Element;
6 24 4 defer Lcom/sun/tools/javac/util/ListBuffer<Lcom/sun/tools/javac/comp/Env<Lcom/sun/tools/javac/comp/AttrContext;>;>;
8 21 5 env Lcom/sun/tools/javac/comp/Env<Lcom/sun/tools/javac/comp/AttrContext;>;
9 21 6 test Lcom/sun/tools/javac/code/Symbol;
16 18 7 csym Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
Signature: (Ljava/util/Queue<Lcom/sun/tools/javac/comp/Env<Lcom/sun/tools/javac/comp/AttrContext;>;>;Ljava/lang/Iterable<+Ljavax/lang/model/element/Element;>;)V
MethodParameters:
Name Flags
list
elements
abstract void process(com.sun.tools.javac.comp.Env<com.sun.tools.javac.comp.AttrContext>);
descriptor: (Lcom/sun/tools/javac/comp/Env;)V
flags: (0x0400) ACC_ABSTRACT
Signature: (Lcom/sun/tools/javac/comp/Env<Lcom/sun/tools/javac/comp/AttrContext;>;)V
MethodParameters:
Name Flags
env
}
SourceFile: "JavacTaskImpl.java"
NestHost: com.sun.tools.javac.api.JavacTaskImpl
InnerClasses:
abstract Filter = com.sun.tools.javac.api.JavacTaskImpl$Filter of com.sun.tools.javac.api.JavacTaskImpl
public ClassSymbol = com.sun.tools.javac.code.Symbol$ClassSymbol of com.sun.tools.javac.code.Symbol
public JCClassDecl = com.sun.tools.javac.tree.JCTree$JCClassDecl of com.sun.tools.javac.tree.JCTree
public JCCompilationUnit = com.sun.tools.javac.tree.JCTree$JCCompilationUnit of com.sun.tools.javac.tree.JCTree
public JCModuleDecl = com.sun.tools.javac.tree.JCTree$JCModuleDecl of com.sun.tools.javac.tree.JCTree
public final Tag = com.sun.tools.javac.tree.JCTree$Tag of com.sun.tools.javac.tree.JCTree