public class org.eclipse.jdt.internal.compiler.ast.Block extends org.eclipse.jdt.internal.compiler.ast.Statement
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.eclipse.jdt.internal.compiler.ast.Block
super_class: org.eclipse.jdt.internal.compiler.ast.Statement
{
public org.eclipse.jdt.internal.compiler.ast.Statement[] statements;
descriptor: [Lorg/eclipse/jdt/internal/compiler/ast/Statement;
flags: (0x0001) ACC_PUBLIC
public int explicitDeclarations;
descriptor: I
flags: (0x0001) ACC_PUBLIC
public org.eclipse.jdt.internal.compiler.lookup.BlockScope scope;
descriptor: Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
flags: (0x0001) ACC_PUBLIC
public void <init>(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial org.eclipse.jdt.internal.compiler.ast.Statement.<init>:()V
1: aload 0
iload 1
putfield org.eclipse.jdt.internal.compiler.ast.Block.explicitDeclarations:I
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/eclipse/jdt/internal/compiler/ast/Block;
0 3 1 explicitDeclarations I
MethodParameters:
Name Flags
explicitDeclarations
public org.eclipse.jdt.internal.compiler.flow.FlowInfo analyseCode(org.eclipse.jdt.internal.compiler.lookup.BlockScope, org.eclipse.jdt.internal.compiler.flow.FlowContext, org.eclipse.jdt.internal.compiler.flow.FlowInfo);
descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;Lorg/eclipse/jdt/internal/compiler/flow/FlowContext;Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;)Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=9, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield org.eclipse.jdt.internal.compiler.ast.Block.statements:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
ifnonnull 1
aload 3
areturn
1: StackMap locals:
StackMap stack:
aload 3
invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.reachMode:()I
iconst_3
iand
ifeq 2
iconst_1
goto 3
StackMap locals:
StackMap stack:
2: iconst_0
StackMap locals:
StackMap stack: int
3: istore 4
start local 4 4: aload 1
invokevirtual org.eclipse.jdt.internal.compiler.lookup.BlockScope.compilerOptions:()Lorg/eclipse/jdt/internal/compiler/impl/CompilerOptions;
getfield org.eclipse.jdt.internal.compiler.impl.CompilerOptions.enableSyntacticNullAnalysisForFields:Z
istore 5
start local 5 5: iconst_0
istore 6
start local 6 6: aload 0
getfield org.eclipse.jdt.internal.compiler.ast.Block.statements:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
arraylength
istore 7
start local 7 7: goto 15
8: StackMap locals: org.eclipse.jdt.internal.compiler.ast.Block org.eclipse.jdt.internal.compiler.lookup.BlockScope org.eclipse.jdt.internal.compiler.flow.FlowContext org.eclipse.jdt.internal.compiler.flow.FlowInfo int int int int
StackMap stack:
aload 0
getfield org.eclipse.jdt.internal.compiler.ast.Block.statements:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
iload 6
aaload
astore 8
start local 8 9: aload 8
aload 3
aload 0
getfield org.eclipse.jdt.internal.compiler.ast.Block.scope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
iload 4
iconst_1
invokevirtual org.eclipse.jdt.internal.compiler.ast.Statement.complainIfUnreachable:(Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;IZ)I
dup
istore 4
iconst_2
if_icmpge 11
10: aload 8
aload 0
getfield org.eclipse.jdt.internal.compiler.ast.Block.scope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
aload 2
aload 3
invokevirtual org.eclipse.jdt.internal.compiler.ast.Statement.analyseCode:(Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;Lorg/eclipse/jdt/internal/compiler/flow/FlowContext;Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;)Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
astore 3
11: StackMap locals: org.eclipse.jdt.internal.compiler.ast.Statement
StackMap stack:
aload 2
aload 3
invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowContext.mergeFinallyNullInfo:(Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;)V
12: iload 5
ifeq 14
13: aload 2
invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowContext.expireNullCheckedFieldInfo:()V
end local 8 14: StackMap locals:
StackMap stack:
iinc 6 1
StackMap locals:
StackMap stack:
15: iload 6
iload 7
if_icmplt 8
end local 7 end local 6 16: aload 0
getfield org.eclipse.jdt.internal.compiler.ast.Block.scope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
aload 1
if_acmpeq 18
17: aload 0
getfield org.eclipse.jdt.internal.compiler.ast.Block.scope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
aload 3
aload 2
aconst_null
aconst_null
invokevirtual org.eclipse.jdt.internal.compiler.lookup.BlockScope.checkUnclosedCloseables:(Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;Lorg/eclipse/jdt/internal/compiler/flow/FlowContext;Lorg/eclipse/jdt/internal/compiler/ast/ASTNode;Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;)V
18: StackMap locals:
StackMap stack:
aload 0
getfield org.eclipse.jdt.internal.compiler.ast.Block.explicitDeclarations:I
ifle 27
19: aload 0
getfield org.eclipse.jdt.internal.compiler.ast.Block.scope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
getfield org.eclipse.jdt.internal.compiler.lookup.BlockScope.locals:[Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
astore 6
start local 6 20: aload 6
ifnull 27
21: aload 0
getfield org.eclipse.jdt.internal.compiler.ast.Block.scope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
getfield org.eclipse.jdt.internal.compiler.lookup.BlockScope.localIndex:I
istore 7
start local 7 22: iconst_0
istore 8
start local 8 23: goto 26
24: StackMap locals: org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding[] int int
StackMap stack:
aload 3
aload 6
iload 8
aaload
invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.resetAssignmentInfo:(Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)V
25: iinc 8 1
StackMap locals:
StackMap stack:
26: iload 8
iload 7
if_icmplt 24
end local 8 end local 7 end local 6 27: StackMap locals:
StackMap stack:
aload 3
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 28 0 this Lorg/eclipse/jdt/internal/compiler/ast/Block;
0 28 1 currentScope Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
0 28 2 flowContext Lorg/eclipse/jdt/internal/compiler/flow/FlowContext;
0 28 3 flowInfo Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
4 28 4 complaintLevel I
5 28 5 enableSyntacticNullAnalysisForFields Z
6 16 6 i I
7 16 7 max I
9 14 8 stat Lorg/eclipse/jdt/internal/compiler/ast/Statement;
20 27 6 locals [Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
22 27 7 numLocals I
23 27 8 i I
MethodParameters:
Name Flags
currentScope
flowContext
flowInfo
public void generateCode(org.eclipse.jdt.internal.compiler.lookup.BlockScope, org.eclipse.jdt.internal.compiler.codegen.CodeStream);
descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.eclipse.jdt.internal.compiler.ast.Block.bits:I
ldc -2147483648
iand
ifne 2
1: return
2: StackMap locals:
StackMap stack:
aload 2
getfield org.eclipse.jdt.internal.compiler.codegen.CodeStream.position:I
istore 3
start local 3 3: aload 0
getfield org.eclipse.jdt.internal.compiler.ast.Block.statements:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
ifnull 10
4: iconst_0
istore 4
start local 4 5: aload 0
getfield org.eclipse.jdt.internal.compiler.ast.Block.statements:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
arraylength
istore 5
start local 5 6: goto 9
7: StackMap locals: int int int
StackMap stack:
aload 0
getfield org.eclipse.jdt.internal.compiler.ast.Block.statements:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
iload 4
aaload
aload 0
getfield org.eclipse.jdt.internal.compiler.ast.Block.scope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
aload 2
invokevirtual org.eclipse.jdt.internal.compiler.ast.Statement.generateCode:(Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;)V
8: iinc 4 1
StackMap locals:
StackMap stack:
9: iload 4
iload 5
if_icmplt 7
end local 5 end local 4 10: StackMap locals:
StackMap stack:
aload 0
getfield org.eclipse.jdt.internal.compiler.ast.Block.scope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
aload 1
if_acmpeq 12
11: aload 2
aload 0
getfield org.eclipse.jdt.internal.compiler.ast.Block.scope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.exitUserScope:(Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;)V
12: StackMap locals:
StackMap stack:
aload 2
iload 3
aload 0
getfield org.eclipse.jdt.internal.compiler.ast.Block.sourceStart:I
invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.recordPositionsFrom:(II)V
13: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lorg/eclipse/jdt/internal/compiler/ast/Block;
0 14 1 currentScope Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
0 14 2 codeStream Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;
3 14 3 pc I
5 10 4 i I
6 10 5 max I
MethodParameters:
Name Flags
currentScope
codeStream
public boolean isEmptyBlock();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.eclipse.jdt.internal.compiler.ast.Block.statements:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
ifnonnull 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/eclipse/jdt/internal/compiler/ast/Block;
public java.lang.StringBuffer printBody(int, java.lang.StringBuffer);
descriptor: (ILjava/lang/StringBuffer;)Ljava/lang/StringBuffer;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.eclipse.jdt.internal.compiler.ast.Block.statements:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
ifnonnull 1
aload 2
areturn
1: StackMap locals:
StackMap stack:
iconst_0
istore 3
start local 3 2: goto 6
3: StackMap locals: int
StackMap stack:
aload 0
getfield org.eclipse.jdt.internal.compiler.ast.Block.statements:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
iload 3
aaload
iload 1
iconst_1
iadd
aload 2
invokevirtual org.eclipse.jdt.internal.compiler.ast.Statement.printStatement:(ILjava/lang/StringBuffer;)Ljava/lang/StringBuffer;
pop
4: aload 2
bipush 10
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
5: iinc 3 1
StackMap locals:
StackMap stack:
6: iload 3
aload 0
getfield org.eclipse.jdt.internal.compiler.ast.Block.statements:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
arraylength
if_icmplt 3
end local 3 7: aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/eclipse/jdt/internal/compiler/ast/Block;
0 8 1 indent I
0 8 2 output Ljava/lang/StringBuffer;
2 7 3 i I
MethodParameters:
Name Flags
indent
output
public java.lang.StringBuffer printStatement(int, java.lang.StringBuffer);
descriptor: (ILjava/lang/StringBuffer;)Ljava/lang/StringBuffer;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: iload 1
aload 2
invokestatic org.eclipse.jdt.internal.compiler.ast.Block.printIndent:(ILjava/lang/StringBuffer;)Ljava/lang/StringBuffer;
pop
1: aload 2
ldc "{\n"
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
2: aload 0
iload 1
aload 2
invokevirtual org.eclipse.jdt.internal.compiler.ast.Block.printBody:(ILjava/lang/StringBuffer;)Ljava/lang/StringBuffer;
pop
3: iload 1
aload 2
invokestatic org.eclipse.jdt.internal.compiler.ast.Block.printIndent:(ILjava/lang/StringBuffer;)Ljava/lang/StringBuffer;
bipush 125
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/eclipse/jdt/internal/compiler/ast/Block;
0 4 1 indent I
0 4 2 output Ljava/lang/StringBuffer;
MethodParameters:
Name Flags
indent
output
public void resolve(org.eclipse.jdt.internal.compiler.lookup.BlockScope);
descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield org.eclipse.jdt.internal.compiler.ast.Block.bits:I
bipush 8
iand
ifeq 2
1: aload 1
invokevirtual org.eclipse.jdt.internal.compiler.lookup.BlockScope.problemReporter:()Lorg/eclipse/jdt/internal/compiler/problem/ProblemReporter;
aload 0
getfield org.eclipse.jdt.internal.compiler.ast.Block.sourceStart:I
aload 0
getfield org.eclipse.jdt.internal.compiler.ast.Block.sourceEnd:I
invokevirtual org.eclipse.jdt.internal.compiler.problem.ProblemReporter.undocumentedEmptyBlock:(II)V
2: StackMap locals:
StackMap stack:
aload 0
getfield org.eclipse.jdt.internal.compiler.ast.Block.statements:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
ifnull 14
3: aload 0
4: aload 0
getfield org.eclipse.jdt.internal.compiler.ast.Block.explicitDeclarations:I
ifne 6
5: aload 1
goto 7
6: StackMap locals:
StackMap stack: org.eclipse.jdt.internal.compiler.ast.Block
new org.eclipse.jdt.internal.compiler.lookup.BlockScope
dup
aload 1
aload 0
getfield org.eclipse.jdt.internal.compiler.ast.Block.explicitDeclarations:I
invokespecial org.eclipse.jdt.internal.compiler.lookup.BlockScope.<init>:(Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;I)V
7: StackMap locals: org.eclipse.jdt.internal.compiler.ast.Block org.eclipse.jdt.internal.compiler.lookup.BlockScope
StackMap stack: org.eclipse.jdt.internal.compiler.ast.Block org.eclipse.jdt.internal.compiler.lookup.BlockScope
putfield org.eclipse.jdt.internal.compiler.ast.Block.scope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
8: iconst_0
istore 2
start local 2 9: aload 0
getfield org.eclipse.jdt.internal.compiler.ast.Block.statements:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
arraylength
istore 3
start local 3 10: goto 13
11: StackMap locals: int int
StackMap stack:
aload 0
getfield org.eclipse.jdt.internal.compiler.ast.Block.statements:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
iload 2
aaload
aload 0
getfield org.eclipse.jdt.internal.compiler.ast.Block.scope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
invokevirtual org.eclipse.jdt.internal.compiler.ast.Statement.resolve:(Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;)V
12: iinc 2 1
StackMap locals:
StackMap stack:
13: iload 2
iload 3
if_icmplt 11
end local 3 end local 2 14: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lorg/eclipse/jdt/internal/compiler/ast/Block;
0 15 1 upperScope Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
9 14 2 i I
10 14 3 length I
MethodParameters:
Name Flags
upperScope
public void resolveUsing(org.eclipse.jdt.internal.compiler.lookup.BlockScope);
descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield org.eclipse.jdt.internal.compiler.ast.Block.bits:I
bipush 8
iand
ifeq 2
1: aload 1
invokevirtual org.eclipse.jdt.internal.compiler.lookup.BlockScope.problemReporter:()Lorg/eclipse/jdt/internal/compiler/problem/ProblemReporter;
aload 0
getfield org.eclipse.jdt.internal.compiler.ast.Block.sourceStart:I
aload 0
getfield org.eclipse.jdt.internal.compiler.ast.Block.sourceEnd:I
invokevirtual org.eclipse.jdt.internal.compiler.problem.ProblemReporter.undocumentedEmptyBlock:(II)V
2: StackMap locals:
StackMap stack:
aload 0
aload 1
putfield org.eclipse.jdt.internal.compiler.ast.Block.scope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
3: aload 0
getfield org.eclipse.jdt.internal.compiler.ast.Block.statements:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
ifnull 10
4: iconst_0
istore 2
start local 2 5: aload 0
getfield org.eclipse.jdt.internal.compiler.ast.Block.statements:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
arraylength
istore 3
start local 3 6: goto 9
7: StackMap locals: int int
StackMap stack:
aload 0
getfield org.eclipse.jdt.internal.compiler.ast.Block.statements:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
iload 2
aaload
aload 0
getfield org.eclipse.jdt.internal.compiler.ast.Block.scope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
invokevirtual org.eclipse.jdt.internal.compiler.ast.Statement.resolve:(Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;)V
8: iinc 2 1
StackMap locals:
StackMap stack:
9: iload 2
iload 3
if_icmplt 7
end local 3 end local 2 10: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lorg/eclipse/jdt/internal/compiler/ast/Block;
0 11 1 givenScope Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
5 10 2 i I
6 10 3 length I
MethodParameters:
Name Flags
givenScope
public void traverse(org.eclipse.jdt.internal.compiler.ASTVisitor, org.eclipse.jdt.internal.compiler.lookup.BlockScope);
descriptor: (Lorg/eclipse/jdt/internal/compiler/ASTVisitor;Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 0
aload 2
invokevirtual org.eclipse.jdt.internal.compiler.ASTVisitor.visit:(Lorg/eclipse/jdt/internal/compiler/ast/Block;Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;)Z
ifeq 8
1: aload 0
getfield org.eclipse.jdt.internal.compiler.ast.Block.statements:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
ifnull 8
2: iconst_0
istore 3
start local 3 3: aload 0
getfield org.eclipse.jdt.internal.compiler.ast.Block.statements:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
arraylength
istore 4
start local 4 4: goto 7
5: StackMap locals: int int
StackMap stack:
aload 0
getfield org.eclipse.jdt.internal.compiler.ast.Block.statements:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
iload 3
aaload
aload 1
aload 0
getfield org.eclipse.jdt.internal.compiler.ast.Block.scope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
invokevirtual org.eclipse.jdt.internal.compiler.ast.Statement.traverse:(Lorg/eclipse/jdt/internal/compiler/ASTVisitor;Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;)V
6: iinc 3 1
StackMap locals:
StackMap stack:
7: iload 3
iload 4
if_icmplt 5
end local 4 end local 3 8: StackMap locals:
StackMap stack:
aload 1
aload 0
aload 2
invokevirtual org.eclipse.jdt.internal.compiler.ASTVisitor.endVisit:(Lorg/eclipse/jdt/internal/compiler/ast/Block;Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;)V
9: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/eclipse/jdt/internal/compiler/ast/Block;
0 10 1 visitor Lorg/eclipse/jdt/internal/compiler/ASTVisitor;
0 10 2 blockScope Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
3 8 3 i I
4 8 4 length I
MethodParameters:
Name Flags
visitor
blockScope
public void branchChainTo(org.eclipse.jdt.internal.compiler.codegen.BranchLabel);
descriptor: (Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.eclipse.jdt.internal.compiler.ast.Block.statements:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
ifnull 2
1: aload 0
getfield org.eclipse.jdt.internal.compiler.ast.Block.statements:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
aload 0
getfield org.eclipse.jdt.internal.compiler.ast.Block.statements:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
arraylength
iconst_1
isub
aaload
aload 1
invokevirtual org.eclipse.jdt.internal.compiler.ast.Statement.branchChainTo:(Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;)V
2: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/eclipse/jdt/internal/compiler/ast/Block;
0 3 1 label Lorg/eclipse/jdt/internal/compiler/codegen/BranchLabel;
MethodParameters:
Name Flags
label
public boolean doesNotCompleteNormally();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
getfield org.eclipse.jdt.internal.compiler.ast.Block.statements:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
ifnonnull 1
iconst_0
goto 2
StackMap locals:
StackMap stack:
1: aload 0
getfield org.eclipse.jdt.internal.compiler.ast.Block.statements:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
arraylength
StackMap locals:
StackMap stack: int
2: istore 1
start local 1 3: iload 1
ifle 4
aload 0
getfield org.eclipse.jdt.internal.compiler.ast.Block.statements:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
iload 1
iconst_1
isub
aaload
invokevirtual org.eclipse.jdt.internal.compiler.ast.Statement.doesNotCompleteNormally:()Z
ifeq 4
iconst_1
ireturn
StackMap locals: int
StackMap stack:
4: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/eclipse/jdt/internal/compiler/ast/Block;
3 5 1 length I
public boolean completesByContinue();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
getfield org.eclipse.jdt.internal.compiler.ast.Block.statements:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
ifnonnull 1
iconst_0
goto 2
StackMap locals:
StackMap stack:
1: aload 0
getfield org.eclipse.jdt.internal.compiler.ast.Block.statements:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
arraylength
StackMap locals:
StackMap stack: int
2: istore 1
start local 1 3: iload 1
ifle 4
aload 0
getfield org.eclipse.jdt.internal.compiler.ast.Block.statements:[Lorg/eclipse/jdt/internal/compiler/ast/Statement;
iload 1
iconst_1
isub
aaload
invokevirtual org.eclipse.jdt.internal.compiler.ast.Statement.completesByContinue:()Z
ifeq 4
iconst_1
ireturn
StackMap locals: int
StackMap stack:
4: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/eclipse/jdt/internal/compiler/ast/Block;
3 5 1 length I
}
SourceFile: "Block.java"