class com.sun.tools.javac.comp.Flow$SnippetBreakAnalyzer extends com.sun.tools.javac.comp.Flow$AliveAnalyzer
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: com.sun.tools.javac.comp.Flow$SnippetBreakAnalyzer
super_class: com.sun.tools.javac.comp.Flow$AliveAnalyzer
{
private final java.util.Set<com.sun.tools.javac.tree.JCTree> seenTrees;
descriptor: Ljava/util/Set;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Set<Lcom/sun/tools/javac/tree/JCTree;>;
private boolean breaksOut;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
final com.sun.tools.javac.comp.Flow this$0;
descriptor: Lcom/sun/tools/javac/comp/Flow;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
public void <init>(com.sun.tools.javac.comp.Flow);
descriptor: (Lcom/sun/tools/javac/comp/Flow;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 0: aload 0
aload 1
putfield com.sun.tools.javac.comp.Flow$SnippetBreakAnalyzer.this$0:Lcom/sun/tools/javac/comp/Flow;
aload 0
aload 1
invokespecial com.sun.tools.javac.comp.Flow$AliveAnalyzer.<init>:(Lcom/sun/tools/javac/comp/Flow;)V
1: aload 0
new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
putfield com.sun.tools.javac.comp.Flow$SnippetBreakAnalyzer.seenTrees:Ljava/util/Set;
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/tools/javac/comp/Flow$SnippetBreakAnalyzer;
MethodParameters:
Name Flags
this$0 final
public void visitLabelled(com.sun.tools.javac.tree.JCTree$JCLabeledStatement);
descriptor: (Lcom/sun/tools/javac/tree/JCTree$JCLabeledStatement;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.tools.javac.comp.Flow$SnippetBreakAnalyzer.seenTrees:Ljava/util/Set;
aload 1
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
1: aload 0
aload 1
invokespecial com.sun.tools.javac.comp.Flow$AliveAnalyzer.visitLabelled:(Lcom/sun/tools/javac/tree/JCTree$JCLabeledStatement;)V
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/tools/javac/comp/Flow$SnippetBreakAnalyzer;
0 3 1 tree Lcom/sun/tools/javac/tree/JCTree$JCLabeledStatement;
MethodParameters:
Name Flags
tree
public void visitWhileLoop(com.sun.tools.javac.tree.JCTree$JCWhileLoop);
descriptor: (Lcom/sun/tools/javac/tree/JCTree$JCWhileLoop;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.tools.javac.comp.Flow$SnippetBreakAnalyzer.seenTrees:Ljava/util/Set;
aload 1
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
1: aload 0
aload 1
invokespecial com.sun.tools.javac.comp.Flow$AliveAnalyzer.visitWhileLoop:(Lcom/sun/tools/javac/tree/JCTree$JCWhileLoop;)V
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/tools/javac/comp/Flow$SnippetBreakAnalyzer;
0 3 1 tree Lcom/sun/tools/javac/tree/JCTree$JCWhileLoop;
MethodParameters:
Name Flags
tree
public void visitForLoop(com.sun.tools.javac.tree.JCTree$JCForLoop);
descriptor: (Lcom/sun/tools/javac/tree/JCTree$JCForLoop;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.tools.javac.comp.Flow$SnippetBreakAnalyzer.seenTrees:Ljava/util/Set;
aload 1
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
1: aload 0
aload 1
invokespecial com.sun.tools.javac.comp.Flow$AliveAnalyzer.visitForLoop:(Lcom/sun/tools/javac/tree/JCTree$JCForLoop;)V
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/tools/javac/comp/Flow$SnippetBreakAnalyzer;
0 3 1 tree Lcom/sun/tools/javac/tree/JCTree$JCForLoop;
MethodParameters:
Name Flags
tree
public void visitForeachLoop(com.sun.tools.javac.tree.JCTree$JCEnhancedForLoop);
descriptor: (Lcom/sun/tools/javac/tree/JCTree$JCEnhancedForLoop;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.tools.javac.comp.Flow$SnippetBreakAnalyzer.seenTrees:Ljava/util/Set;
aload 1
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
1: aload 0
aload 1
invokespecial com.sun.tools.javac.comp.Flow$AliveAnalyzer.visitForeachLoop:(Lcom/sun/tools/javac/tree/JCTree$JCEnhancedForLoop;)V
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/tools/javac/comp/Flow$SnippetBreakAnalyzer;
0 3 1 tree Lcom/sun/tools/javac/tree/JCTree$JCEnhancedForLoop;
MethodParameters:
Name Flags
tree
public void visitDoLoop(com.sun.tools.javac.tree.JCTree$JCDoWhileLoop);
descriptor: (Lcom/sun/tools/javac/tree/JCTree$JCDoWhileLoop;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.tools.javac.comp.Flow$SnippetBreakAnalyzer.seenTrees:Ljava/util/Set;
aload 1
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
1: aload 0
aload 1
invokespecial com.sun.tools.javac.comp.Flow$AliveAnalyzer.visitDoLoop:(Lcom/sun/tools/javac/tree/JCTree$JCDoWhileLoop;)V
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/tools/javac/comp/Flow$SnippetBreakAnalyzer;
0 3 1 tree Lcom/sun/tools/javac/tree/JCTree$JCDoWhileLoop;
MethodParameters:
Name Flags
tree
public void visitBreak(com.sun.tools.javac.tree.JCTree$JCBreak);
descriptor: (Lcom/sun/tools/javac/tree/JCTree$JCBreak;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
dup
getfield com.sun.tools.javac.comp.Flow$SnippetBreakAnalyzer.breaksOut:Z
aload 0
getfield com.sun.tools.javac.comp.Flow$AliveAnalyzer.alive:Lcom/sun/tools/javac/comp/Flow$Liveness;
getstatic com.sun.tools.javac.comp.Flow$Liveness.ALIVE:Lcom/sun/tools/javac/comp/Flow$Liveness;
if_acmpne 2
1: aload 0
getfield com.sun.tools.javac.comp.Flow$SnippetBreakAnalyzer.seenTrees:Ljava/util/Set;
aload 1
getfield com.sun.tools.javac.tree.JCTree$JCBreak.target:Lcom/sun/tools/javac/tree/JCTree;
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifne 2
iconst_1
goto 3
StackMap locals: com.sun.tools.javac.comp.Flow$SnippetBreakAnalyzer com.sun.tools.javac.tree.JCTree$JCBreak
StackMap stack: com.sun.tools.javac.comp.Flow$SnippetBreakAnalyzer int
2: iconst_0
StackMap locals: com.sun.tools.javac.comp.Flow$SnippetBreakAnalyzer com.sun.tools.javac.tree.JCTree$JCBreak
StackMap stack: com.sun.tools.javac.comp.Flow$SnippetBreakAnalyzer int int
3: ior
4: putfield com.sun.tools.javac.comp.Flow$SnippetBreakAnalyzer.breaksOut:Z
5: aload 0
aload 1
invokespecial com.sun.tools.javac.comp.Flow$AliveAnalyzer.visitBreak:(Lcom/sun/tools/javac/tree/JCTree$JCBreak;)V
6: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/sun/tools/javac/comp/Flow$SnippetBreakAnalyzer;
0 7 1 tree Lcom/sun/tools/javac/tree/JCTree$JCBreak;
MethodParameters:
Name Flags
tree
public boolean breaksOut();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.tools.javac.comp.Flow$SnippetBreakAnalyzer.breaksOut:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/javac/comp/Flow$SnippetBreakAnalyzer;
}
SourceFile: "Flow.java"
NestHost: com.sun.tools.javac.comp.Flow
InnerClasses:
AliveAnalyzer = com.sun.tools.javac.comp.Flow$AliveAnalyzer of com.sun.tools.javac.comp.Flow
abstract Liveness = com.sun.tools.javac.comp.Flow$Liveness of com.sun.tools.javac.comp.Flow
SnippetBreakAnalyzer = com.sun.tools.javac.comp.Flow$SnippetBreakAnalyzer of com.sun.tools.javac.comp.Flow
public JCBreak = com.sun.tools.javac.tree.JCTree$JCBreak of com.sun.tools.javac.tree.JCTree
public JCDoWhileLoop = com.sun.tools.javac.tree.JCTree$JCDoWhileLoop of com.sun.tools.javac.tree.JCTree
public JCEnhancedForLoop = com.sun.tools.javac.tree.JCTree$JCEnhancedForLoop of com.sun.tools.javac.tree.JCTree
public JCForLoop = com.sun.tools.javac.tree.JCTree$JCForLoop of com.sun.tools.javac.tree.JCTree
public JCLabeledStatement = com.sun.tools.javac.tree.JCTree$JCLabeledStatement of com.sun.tools.javac.tree.JCTree
public JCWhileLoop = com.sun.tools.javac.tree.JCTree$JCWhileLoop of com.sun.tools.javac.tree.JCTree