class com.sun.tools.javac.comp.Analyzer$2 implements com.sun.tools.javac.comp.Analyzer$DeferredAnalysisHelper
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: com.sun.tools.javac.comp.Analyzer$2
super_class: java.lang.Object
{
java.util.Map<com.sun.tools.javac.code.Symbol$ClassSymbol, java.util.Queue<com.sun.tools.javac.comp.Analyzer$RewritingContext>> Q;
descriptor: Ljava/util/Map;
flags: (0x0000)
Signature: Ljava/util/Map<Lcom/sun/tools/javac/code/Symbol$ClassSymbol;Ljava/util/Queue<Lcom/sun/tools/javac/comp/Analyzer$RewritingContext;>;>;
final com.sun.tools.javac.comp.Analyzer this$0;
descriptor: Lcom/sun/tools/javac/comp/Analyzer;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
void <init>(com.sun.tools.javac.comp.Analyzer);
descriptor: (Lcom/sun/tools/javac/comp/Analyzer;)V
flags: (0x0000)
Code:
stack=3, locals=2, args_size=2
start local 0 0: aload 0
aload 1
putfield com.sun.tools.javac.comp.Analyzer$2.this$0:Lcom/sun/tools/javac/comp/Analyzer;
aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putfield com.sun.tools.javac.comp.Analyzer$2.Q:Ljava/util/Map;
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/tools/javac/comp/Analyzer$2;
MethodParameters:
Name Flags
this$0 final
public void queue(com.sun.tools.javac.comp.Analyzer$RewritingContext);
descriptor: (Lcom/sun/tools/javac/comp/Analyzer$RewritingContext;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.tools.javac.comp.Analyzer$2.Q:Ljava/util/Map;
aload 1
getfield com.sun.tools.javac.comp.Analyzer$RewritingContext.env:Lcom/sun/tools/javac/comp/Env;
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;
invokevirtual com.sun.tools.javac.code.Symbol$ClassSymbol.outermostClass:()Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
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/javac/comp/Analyzer$2.lambda$0(Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)Ljava/util/Queue; (6)
(Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)Ljava/util/Queue;
invokeinterface java.util.Map.computeIfAbsent:(Ljava/lang/Object;Ljava/util/function/Function;)Ljava/lang/Object;
checkcast java.util.Queue
astore 2
start local 2 1: aload 2
aload 1
invokeinterface java.util.Queue.add:(Ljava/lang/Object;)Z
pop
2: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/tools/javac/comp/Analyzer$2;
0 3 1 rewriting Lcom/sun/tools/javac/comp/Analyzer$RewritingContext;
1 3 2 s Ljava/util/Queue<Lcom/sun/tools/javac/comp/Analyzer$RewritingContext;>;
MethodParameters:
Name Flags
rewriting
public void flush(com.sun.tools.javac.comp.Env<com.sun.tools.javac.comp.AttrContext>);
descriptor: (Lcom/sun/tools/javac/comp/Env;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=5, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.tools.javac.comp.Analyzer$2.Q:Ljava/util/Map;
invokeinterface java.util.Map.isEmpty:()Z
ifne 12
1: aload 0
getfield com.sun.tools.javac.comp.Analyzer$2.this$0:Lcom/sun/tools/javac/comp/Analyzer;
getfield com.sun.tools.javac.comp.Analyzer.deferredAnalysisHelper:Lcom/sun/tools/javac/comp/Analyzer$DeferredAnalysisHelper;
astore 2
start local 2 2: aload 0
getfield com.sun.tools.javac.comp.Analyzer$2.this$0:Lcom/sun/tools/javac/comp/Analyzer;
aload 0
getfield com.sun.tools.javac.comp.Analyzer$2.this$0:Lcom/sun/tools/javac/comp/Analyzer;
getfield com.sun.tools.javac.comp.Analyzer.flushDeferredHelper:Lcom/sun/tools/javac/comp/Analyzer$DeferredAnalysisHelper;
putfield com.sun.tools.javac.comp.Analyzer.deferredAnalysisHelper:Lcom/sun/tools/javac/comp/Analyzer$DeferredAnalysisHelper;
3: aload 0
getfield com.sun.tools.javac.comp.Analyzer$2.Q:Ljava/util/Map;
aload 1
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;
invokevirtual com.sun.tools.javac.code.Symbol$ClassSymbol.outermostClass:()Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.util.Queue
astore 3
start local 3 4: goto 6
5: StackMap locals: com.sun.tools.javac.comp.Analyzer$DeferredAnalysisHelper java.util.Queue
StackMap stack:
aload 0
getfield com.sun.tools.javac.comp.Analyzer$2.this$0:Lcom/sun/tools/javac/comp/Analyzer;
aload 3
invokeinterface java.util.Queue.remove:()Ljava/lang/Object;
checkcast com.sun.tools.javac.comp.Analyzer$RewritingContext
invokevirtual com.sun.tools.javac.comp.Analyzer.doAnalysis:(Lcom/sun/tools/javac/comp/Analyzer$RewritingContext;)V
6: StackMap locals:
StackMap stack:
aload 3
ifnull 11
aload 3
invokeinterface java.util.Queue.isEmpty:()Z
ifeq 5
end local 3 7: goto 11
StackMap locals: com.sun.tools.javac.comp.Analyzer$2 com.sun.tools.javac.comp.Env com.sun.tools.javac.comp.Analyzer$DeferredAnalysisHelper
StackMap stack: java.lang.Throwable
8: astore 4
9: aload 0
getfield com.sun.tools.javac.comp.Analyzer$2.this$0:Lcom/sun/tools/javac/comp/Analyzer;
aload 2
putfield com.sun.tools.javac.comp.Analyzer.deferredAnalysisHelper:Lcom/sun/tools/javac/comp/Analyzer$DeferredAnalysisHelper;
10: aload 4
athrow
11: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.comp.Analyzer$2.this$0:Lcom/sun/tools/javac/comp/Analyzer;
aload 2
putfield com.sun.tools.javac.comp.Analyzer.deferredAnalysisHelper:Lcom/sun/tools/javac/comp/Analyzer$DeferredAnalysisHelper;
end local 2 12: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lcom/sun/tools/javac/comp/Analyzer$2;
0 13 1 flushEnv Lcom/sun/tools/javac/comp/Env<Lcom/sun/tools/javac/comp/AttrContext;>;
2 12 2 prevHelper Lcom/sun/tools/javac/comp/Analyzer$DeferredAnalysisHelper;
4 7 3 rewritings Ljava/util/Queue<Lcom/sun/tools/javac/comp/Analyzer$RewritingContext;>;
Exception table:
from to target type
2 8 8 any
Signature: (Lcom/sun/tools/javac/comp/Env<Lcom/sun/tools/javac/comp/AttrContext;>;)V
MethodParameters:
Name Flags
flushEnv
private static java.util.Queue lambda$0(com.sun.tools.javac.code.Symbol$ClassSymbol);
descriptor: (Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)Ljava/util/Queue;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: new java.util.ArrayDeque
dup
invokespecial java.util.ArrayDeque.<init>:()V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 k Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
}
SourceFile: "Analyzer.java"
EnclosingMethod: com.sun.tools.javac.comp.Analyzer
NestHost: com.sun.tools.javac.comp.Analyzer
InnerClasses:
public ClassSymbol = com.sun.tools.javac.code.Symbol$ClassSymbol of com.sun.tools.javac.code.Symbol
com.sun.tools.javac.comp.Analyzer$2
abstract DeferredAnalysisHelper = com.sun.tools.javac.comp.Analyzer$DeferredAnalysisHelper of com.sun.tools.javac.comp.Analyzer
RewritingContext = com.sun.tools.javac.comp.Analyzer$RewritingContext of com.sun.tools.javac.comp.Analyzer
public JCClassDecl = com.sun.tools.javac.tree.JCTree$JCClassDecl of com.sun.tools.javac.tree.JCTree
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles