public abstract class org.eclipse.jdt.internal.compiler.flow.FlowInfo
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: org.eclipse.jdt.internal.compiler.flow.FlowInfo
super_class: java.lang.Object
{
public int tagBits;
descriptor: I
flags: (0x0001) ACC_PUBLIC
public static final int REACHABLE;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 0
public static final int UNREACHABLE_OR_DEAD;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 1
public static final int UNREACHABLE_BY_NULLANALYSIS;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 2
public static final int UNREACHABLE;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 3
public static final int NULL_FLAG_MASK;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 4
public static final int UNKNOWN;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 1
public static final int NULL;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 2
public static final int NON_NULL;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 4
public static final int POTENTIALLY_UNKNOWN;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 8
public static final int POTENTIALLY_NULL;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 16
public static final int POTENTIALLY_NON_NULL;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 32
public static final int UNROOTED;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 64
public static final int FREE_TYPEVARIABLE;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 48
public static final org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo DEAD_END;
descriptor: Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: new org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo
dup
invokespecial org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo.<init>:()V
putstatic org.eclipse.jdt.internal.compiler.flow.FlowInfo.DEAD_END:Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
1: getstatic org.eclipse.jdt.internal.compiler.flow.FlowInfo.DEAD_END:Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
iconst_3
putfield org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo.tagBits:I
2: return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
public abstract org.eclipse.jdt.internal.compiler.flow.FlowInfo addInitializationsFrom(org.eclipse.jdt.internal.compiler.flow.FlowInfo);
descriptor: (Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;)Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
otherInits
public abstract org.eclipse.jdt.internal.compiler.flow.FlowInfo addNullInfoFrom(org.eclipse.jdt.internal.compiler.flow.FlowInfo);
descriptor: (Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;)Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
otherInits
public abstract org.eclipse.jdt.internal.compiler.flow.FlowInfo addPotentialInitializationsFrom(org.eclipse.jdt.internal.compiler.flow.FlowInfo);
descriptor: (Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;)Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
otherInits
public org.eclipse.jdt.internal.compiler.flow.FlowInfo asNegatedCondition();
descriptor: ()Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
public static org.eclipse.jdt.internal.compiler.flow.FlowInfo conditional(org.eclipse.jdt.internal.compiler.flow.FlowInfo, org.eclipse.jdt.internal.compiler.flow.FlowInfo);
descriptor: (Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;)Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
if_acmpne 1
aload 0
areturn
1: StackMap locals:
StackMap stack:
new org.eclipse.jdt.internal.compiler.flow.ConditionalFlowInfo
dup
aload 0
aload 1
invokespecial org.eclipse.jdt.internal.compiler.flow.ConditionalFlowInfo.<init>:(Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 initsWhenTrue Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
0 2 1 initsWhenFalse Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
MethodParameters:
Name Flags
initsWhenTrue
initsWhenFalse
public boolean cannotBeDefinitelyNullOrNonNull(org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding);
descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.isPotentiallyUnknown:(Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)Z
ifne 3
1: aload 0
aload 1
invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.isPotentiallyNonNull:(Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)Z
ifeq 2
aload 0
aload 1
invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.isPotentiallyNull:(Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)Z
ifne 3
2: StackMap locals:
StackMap stack:
iconst_0
ireturn
StackMap locals:
StackMap stack:
3: iconst_1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
0 4 1 local Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
MethodParameters:
Name Flags
local
public boolean cannotBeNull(org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding);
descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.isDefinitelyNonNull:(Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)Z
ifne 1
aload 0
aload 1
invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.isProtectedNonNull:(Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)Z
ifne 1
iconst_0
ireturn
StackMap locals:
StackMap stack:
1: iconst_1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
0 2 1 local Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
MethodParameters:
Name Flags
local
public boolean canOnlyBeNull(org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding);
descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.isDefinitelyNull:(Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)Z
ifne 1
aload 0
aload 1
invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.isProtectedNull:(Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)Z
ifne 1
iconst_0
ireturn
StackMap locals:
StackMap stack:
1: iconst_1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
0 2 1 local Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
MethodParameters:
Name Flags
local
public abstract org.eclipse.jdt.internal.compiler.flow.FlowInfo copy();
descriptor: ()Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public static org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo initial(int);
descriptor: (I)Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: new org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo
dup
invokespecial org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo.<init>:()V
astore 1
start local 1 1: aload 1
iload 0
putfield org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo.maxFieldCount:I
2: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 maxFieldCount I
1 3 1 info Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
MethodParameters:
Name Flags
maxFieldCount
public abstract org.eclipse.jdt.internal.compiler.flow.FlowInfo initsWhenFalse();
descriptor: ()Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public abstract org.eclipse.jdt.internal.compiler.flow.FlowInfo initsWhenTrue();
descriptor: ()Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public abstract boolean isDefinitelyAssigned(org.eclipse.jdt.internal.compiler.lookup.FieldBinding);
descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;)Z
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
field
public abstract boolean isDefinitelyAssigned(org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding);
descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)Z
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
local
public abstract boolean isDefinitelyNonNull(org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding);
descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)Z
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
local
public abstract boolean isDefinitelyNull(org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding);
descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)Z
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
local
public abstract boolean isDefinitelyUnknown(org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding);
descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)Z
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
local
public abstract boolean hasNullInfoFor(org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding);
descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)Z
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
local
public abstract boolean isPotentiallyAssigned(org.eclipse.jdt.internal.compiler.lookup.FieldBinding);
descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;)Z
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
field
public abstract boolean isPotentiallyAssigned(org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding);
descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)Z
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
field
public abstract boolean isPotentiallyNonNull(org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding);
descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)Z
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
local
public abstract boolean isPotentiallyNull(org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding);
descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)Z
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
local
public abstract boolean isPotentiallyUnknown(org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding);
descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)Z
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
local
public abstract boolean isProtectedNonNull(org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding);
descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)Z
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
local
public abstract boolean isProtectedNull(org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding);
descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)Z
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
local
public abstract void markAsComparedEqualToNonNull(org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding);
descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
local
public abstract void markAsComparedEqualToNull(org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding);
descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
local
public abstract void markAsDefinitelyAssigned(org.eclipse.jdt.internal.compiler.lookup.FieldBinding);
descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
field
public abstract void markAsDefinitelyNonNull(org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding);
descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
local
public abstract void markAsDefinitelyNull(org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding);
descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
local
public abstract void resetNullInfo(org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding);
descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
local
public abstract void markPotentiallyUnknownBit(org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding);
descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
local
public abstract void markPotentiallyNullBit(org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding);
descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
local
public abstract void markPotentiallyNonNullBit(org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding);
descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
local
public abstract void markAsDefinitelyAssigned(org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding);
descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
local
public abstract void markAsDefinitelyUnknown(org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding);
descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
local
public void markNullStatus(org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding, int);
descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: iload 2
tableswitch { // 1 - 4
1: 1
2: 3
3: 7
4: 5
default: 7
}
1: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.markAsDefinitelyUnknown:(Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)V
2: goto 16
3: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.markAsDefinitelyNull:(Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)V
4: goto 16
5: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.markAsDefinitelyNonNull:(Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)V
6: goto 16
7: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.resetNullInfo:(Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)V
8: iload 2
bipush 8
iand
ifeq 10
9: aload 0
aload 1
invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.markPotentiallyUnknownBit:(Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)V
10: StackMap locals:
StackMap stack:
iload 2
bipush 16
iand
ifeq 12
11: aload 0
aload 1
invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.markPotentiallyNullBit:(Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)V
12: StackMap locals:
StackMap stack:
iload 2
bipush 32
iand
ifeq 14
13: aload 0
aload 1
invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.markPotentiallyNonNullBit:(Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)V
14: StackMap locals:
StackMap stack:
iload 2
bipush 56
iand
ifne 16
15: aload 0
aload 1
invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.markAsDefinitelyUnknown:(Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)V
16: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
0 17 1 local Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
0 17 2 nullStatus I
MethodParameters:
Name Flags
local
nullStatus
public int nullStatus(org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding);
descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.isDefinitelyUnknown:(Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)Z
ifeq 2
1: iconst_1
ireturn
2: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.isDefinitelyNull:(Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)Z
ifeq 4
3: iconst_2
ireturn
4: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.isDefinitelyNonNull:(Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)Z
ifeq 6
5: iconst_4
ireturn
6: StackMap locals:
StackMap stack:
iconst_0
istore 2
start local 2 7: aload 0
aload 1
invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.isPotentiallyUnknown:(Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)Z
ifeq 9
8: iload 2
bipush 8
ior
istore 2
9: StackMap locals: int
StackMap stack:
aload 0
aload 1
invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.isPotentiallyNull:(Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)Z
ifeq 11
10: iload 2
bipush 16
ior
istore 2
11: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.isPotentiallyNonNull:(Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)Z
ifeq 13
12: iload 2
bipush 32
ior
istore 2
13: StackMap locals:
StackMap stack:
iload 2
ifle 15
14: iload 2
ireturn
15: StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
0 16 1 local Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
7 16 2 status I
MethodParameters:
Name Flags
local
public static int mergeNullStatus(int, int);
descriptor: (II)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=4, args_size=2
start local 0 start local 1 0: iconst_0
istore 2
start local 2 1: iconst_0
istore 3
start local 3 2: iload 0
lookupswitch { // 4
2: 4
4: 7
16: 3
32: 6
default: 8
}
3: StackMap locals: int int
StackMap stack:
iconst_1
istore 3
4: StackMap locals:
StackMap stack:
iconst_1
istore 2
5: goto 8
6: StackMap locals:
StackMap stack:
iconst_1
istore 2
7: StackMap locals:
StackMap stack:
iconst_1
istore 3
8: StackMap locals:
StackMap stack:
iload 1
lookupswitch { // 4
2: 10
4: 13
16: 9
32: 12
default: 14
}
9: StackMap locals:
StackMap stack:
iconst_1
istore 3
10: StackMap locals:
StackMap stack:
iconst_1
istore 2
11: goto 14
12: StackMap locals:
StackMap stack:
iconst_1
istore 2
13: StackMap locals:
StackMap stack:
iconst_1
istore 3
14: StackMap locals:
StackMap stack:
iload 2
ifeq 18
15: iload 3
ifeq 17
16: bipush 16
ireturn
17: StackMap locals:
StackMap stack:
iconst_2
ireturn
18: StackMap locals:
StackMap stack:
iload 3
ifeq 20
19: iconst_4
ireturn
20: StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 nullStatus1 I
0 21 1 nullStatus2 I
1 21 2 canBeNull Z
2 21 3 canBeNonNull Z
MethodParameters:
Name Flags
nullStatus1
nullStatus2
public static org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo mergedOptimizedBranches(org.eclipse.jdt.internal.compiler.flow.FlowInfo, boolean, org.eclipse.jdt.internal.compiler.flow.FlowInfo, boolean, boolean);
descriptor: (Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;ZLorg/eclipse/jdt/internal/compiler/flow/FlowInfo;ZZ)Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=6, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: iload 1
ifeq 12
1: aload 0
getstatic org.eclipse.jdt.internal.compiler.flow.FlowInfo.DEAD_END:Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
if_acmpne 6
iload 4
ifeq 6
2: aload 2
iconst_1
invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.setReachMode:(I)Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
3: invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.unconditionalInits:()Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
4: astore 5
start local 5 5: goto 27
end local 5 6: StackMap locals:
StackMap stack:
aload 0
aload 2
7: invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.nullInfoLessUnconditionalCopy:()Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
8: invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.addPotentialInitializationsFrom:(Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;)Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
9: invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.unconditionalInits:()Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
10: astore 5
start local 5 11: goto 27
end local 5 12: StackMap locals:
StackMap stack:
iload 3
ifeq 24
13: aload 2
getstatic org.eclipse.jdt.internal.compiler.flow.FlowInfo.DEAD_END:Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
if_acmpne 18
iload 4
ifeq 18
14: aload 0
iconst_1
invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.setReachMode:(I)Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
15: invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.unconditionalInits:()Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
16: astore 5
start local 5 17: goto 27
end local 5 18: StackMap locals:
StackMap stack:
aload 2
aload 0
19: invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.nullInfoLessUnconditionalCopy:()Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
20: invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.addPotentialInitializationsFrom:(Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;)Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
21: invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.unconditionalInits:()Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
22: astore 5
start local 5 23: goto 27
end local 5 24: StackMap locals:
StackMap stack:
aload 0
25: aload 2
invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.unconditionalInits:()Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.mergedWith:(Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;)Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
26: astore 5
start local 5 27: StackMap locals: org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo
StackMap stack:
aload 5
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 initsWhenTrue Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
0 28 1 isOptimizedTrue Z
0 28 2 initsWhenFalse Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
0 28 3 isOptimizedFalse Z
0 28 4 allowFakeDeadBranch Z
5 6 5 mergedInfo Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
11 12 5 mergedInfo Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
17 18 5 mergedInfo Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
23 24 5 mergedInfo Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
27 28 5 mergedInfo Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
MethodParameters:
Name Flags
initsWhenTrue
isOptimizedTrue
initsWhenFalse
isOptimizedFalse
allowFakeDeadBranch
public static org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo mergedOptimizedBranchesIfElse(org.eclipse.jdt.internal.compiler.flow.FlowInfo, boolean, org.eclipse.jdt.internal.compiler.flow.FlowInfo, boolean, boolean, org.eclipse.jdt.internal.compiler.flow.FlowInfo, org.eclipse.jdt.internal.compiler.ast.IfStatement, boolean);
descriptor: (Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;ZLorg/eclipse/jdt/internal/compiler/flow/FlowInfo;ZZLorg/eclipse/jdt/internal/compiler/flow/FlowInfo;Lorg/eclipse/jdt/internal/compiler/ast/IfStatement;Z)Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=9, args_size=8
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 0: iload 1
ifeq 20
1: aload 0
getstatic org.eclipse.jdt.internal.compiler.flow.FlowInfo.DEAD_END:Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
if_acmpne 14
iload 4
ifeq 14
2: iload 7
ifne 10
3: aload 6
getfield org.eclipse.jdt.internal.compiler.ast.IfStatement.elseStatement:Lorg/eclipse/jdt/internal/compiler/ast/Statement;
ifnonnull 6
4: aload 5
invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.unconditionalInits:()Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
astore 8
start local 8 5: goto 70
end local 8 6: StackMap locals:
StackMap stack:
aload 2
invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.unconditionalInits:()Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
astore 8
start local 8 7: aload 2
getstatic org.eclipse.jdt.internal.compiler.flow.FlowInfo.DEAD_END:Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
if_acmpeq 70
8: aload 8
aload 5
invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.reachMode:()I
invokevirtual org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo.setReachMode:(I)Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
pop
9: goto 70
end local 8 10: StackMap locals:
StackMap stack:
aload 2
iconst_1
invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.setReachMode:(I)Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
11: invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.unconditionalInits:()Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
12: astore 8
start local 8 13: goto 70
end local 8 14: StackMap locals:
StackMap stack:
aload 0
aload 2
15: invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.nullInfoLessUnconditionalCopy:()Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
16: invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.addPotentialInitializationsFrom:(Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;)Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
17: invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.unconditionalInits:()Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
18: astore 8
start local 8 19: goto 70
end local 8 20: StackMap locals:
StackMap stack:
iload 3
ifeq 40
21: aload 2
getstatic org.eclipse.jdt.internal.compiler.flow.FlowInfo.DEAD_END:Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
if_acmpne 34
iload 4
ifeq 34
22: iload 7
ifne 30
23: aload 6
getfield org.eclipse.jdt.internal.compiler.ast.IfStatement.thenStatement:Lorg/eclipse/jdt/internal/compiler/ast/Statement;
ifnonnull 26
24: aload 5
invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.unconditionalInits:()Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
astore 8
start local 8 25: goto 70
end local 8 26: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.unconditionalInits:()Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
astore 8
start local 8 27: aload 0
getstatic org.eclipse.jdt.internal.compiler.flow.FlowInfo.DEAD_END:Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
if_acmpeq 70
28: aload 8
aload 5
invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.reachMode:()I
invokevirtual org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo.setReachMode:(I)Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
pop
29: goto 70
end local 8 30: StackMap locals:
StackMap stack:
aload 0
iconst_1
invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.setReachMode:(I)Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
31: invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.unconditionalInits:()Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
32: astore 8
start local 8 33: goto 70
end local 8 34: StackMap locals:
StackMap stack:
aload 2
aload 0
35: invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.nullInfoLessUnconditionalCopy:()Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
36: invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.addPotentialInitializationsFrom:(Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;)Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
37: invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.unconditionalInits:()Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
38: astore 8
start local 8 39: goto 70
end local 8 40: StackMap locals:
StackMap stack:
aload 5
getfield org.eclipse.jdt.internal.compiler.flow.FlowInfo.tagBits:I
iconst_3
iand
ifne 54
41: aload 6
getfield org.eclipse.jdt.internal.compiler.ast.IfStatement.bits:I
sipush 128
iand
ifeq 54
42: aload 0
getstatic org.eclipse.jdt.internal.compiler.flow.FlowInfo.DEAD_END:Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
if_acmpeq 54
43: aload 2
getstatic org.eclipse.jdt.internal.compiler.flow.FlowInfo.DEAD_END:Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
if_acmpeq 54
44: aload 0
aload 2
45: invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.nullInfoLessUnconditionalCopy:()Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
46: invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.addPotentialInitializationsFrom:(Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;)Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
47: invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.unconditionalInits:()Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
48: astore 8
start local 8 49: aload 8
aload 2
invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.unconditionalCopy:()Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
invokevirtual org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo.mergeDefiniteInitsWith:(Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;)Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
pop
50: aload 8
getfield org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo.tagBits:I
iconst_1
iand
ifeq 70
aload 2
getfield org.eclipse.jdt.internal.compiler.flow.FlowInfo.tagBits:I
iconst_3
iand
iconst_2
if_icmpne 70
51: aload 8
dup
getfield org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo.tagBits:I
bipush -2
iand
putfield org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo.tagBits:I
52: aload 8
dup
getfield org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo.tagBits:I
iconst_2
ior
putfield org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo.tagBits:I
53: goto 70
end local 8 54: StackMap locals:
StackMap stack:
aload 5
getfield org.eclipse.jdt.internal.compiler.flow.FlowInfo.tagBits:I
iconst_3
iand
ifne 67
55: aload 6
getfield org.eclipse.jdt.internal.compiler.ast.IfStatement.bits:I
sipush 256
iand
ifeq 67
aload 0
getstatic org.eclipse.jdt.internal.compiler.flow.FlowInfo.DEAD_END:Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
if_acmpeq 67
56: aload 2
getstatic org.eclipse.jdt.internal.compiler.flow.FlowInfo.DEAD_END:Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
if_acmpeq 67
57: aload 2
aload 0
58: invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.nullInfoLessUnconditionalCopy:()Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
59: invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.addPotentialInitializationsFrom:(Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;)Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
60: invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.unconditionalInits:()Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
61: astore 8
start local 8 62: aload 8
aload 0
invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.unconditionalCopy:()Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
invokevirtual org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo.mergeDefiniteInitsWith:(Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;)Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
pop
63: aload 8
getfield org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo.tagBits:I
iconst_1
iand
ifeq 70
aload 0
getfield org.eclipse.jdt.internal.compiler.flow.FlowInfo.tagBits:I
iconst_3
iand
iconst_2
if_icmpne 70
64: aload 8
dup
getfield org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo.tagBits:I
bipush -2
iand
putfield org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo.tagBits:I
65: aload 8
dup
getfield org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo.tagBits:I
iconst_2
ior
putfield org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo.tagBits:I
66: goto 70
end local 8 67: StackMap locals:
StackMap stack:
aload 0
68: aload 2
invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.unconditionalInits:()Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.mergedWith:(Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;)Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
69: astore 8
start local 8 70: StackMap locals: org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo
StackMap stack:
aload 8
areturn
end local 8 end local 7 end local 6 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 71 0 initsWhenTrue Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
0 71 1 isOptimizedTrue Z
0 71 2 initsWhenFalse Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
0 71 3 isOptimizedFalse Z
0 71 4 allowFakeDeadBranch Z
0 71 5 flowInfo Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
0 71 6 ifStatement Lorg/eclipse/jdt/internal/compiler/ast/IfStatement;
0 71 7 reportDeadCodeInKnownPattern Z
5 6 8 mergedInfo Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
7 10 8 mergedInfo Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
13 14 8 mergedInfo Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
19 20 8 mergedInfo Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
25 26 8 mergedInfo Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
27 30 8 mergedInfo Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
33 34 8 mergedInfo Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
39 40 8 mergedInfo Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
49 54 8 mergedInfo Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
62 67 8 mergedInfo Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
70 71 8 mergedInfo Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
MethodParameters:
Name Flags
initsWhenTrue
isOptimizedTrue
initsWhenFalse
isOptimizedFalse
allowFakeDeadBranch
flowInfo
ifStatement
reportDeadCodeInKnownPattern
public int reachMode();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.eclipse.jdt.internal.compiler.flow.FlowInfo.tagBits:I
iconst_3
iand
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
public abstract org.eclipse.jdt.internal.compiler.flow.FlowInfo safeInitsWhenTrue();
descriptor: ()Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public abstract org.eclipse.jdt.internal.compiler.flow.FlowInfo setReachMode(int);
descriptor: (I)Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
reachMode
public abstract org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo mergedWith(org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo);
descriptor: (Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;)Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
otherInits
public abstract org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo mergeDefiniteInitsWith(org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo);
descriptor: (Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;)Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
otherInits
public abstract org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo nullInfoLessUnconditionalCopy();
descriptor: ()Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getstatic org.eclipse.jdt.internal.compiler.flow.FlowInfo.DEAD_END:Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
if_acmpne 2
1: ldc "FlowInfo.DEAD_END"
areturn
2: StackMap locals:
StackMap stack:
aload 0
invokespecial java.lang.Object.toString:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
public abstract org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo unconditionalCopy();
descriptor: ()Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public abstract org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo unconditionalFieldLessCopy();
descriptor: ()Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public abstract org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo unconditionalInits();
descriptor: ()Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public abstract org.eclipse.jdt.internal.compiler.flow.UnconditionalFlowInfo unconditionalInitsWithoutSideEffect();
descriptor: ()Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public abstract void resetAssignmentInfo(org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding);
descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
local
public static int tagBitsToNullStatus(long);
descriptor: (J)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: lload 0
ldc 72057594037927936
land
lconst_0
lcmp
ifeq 2
1: iconst_4
ireturn
2: StackMap locals:
StackMap stack:
lload 0
ldc 36028797018963968
land
lconst_0
lcmp
ifeq 4
3: bipush 24
ireturn
4: StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 tagBits J
MethodParameters:
Name Flags
tagBits
}
SourceFile: "FlowInfo.java"