public abstract class org.eclipse.jdt.internal.compiler.ast.Reference extends org.eclipse.jdt.internal.compiler.ast.Expression
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: org.eclipse.jdt.internal.compiler.ast.Reference
super_class: org.eclipse.jdt.internal.compiler.ast.Expression
{
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial org.eclipse.jdt.internal.compiler.ast.Expression.<init>:()V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/eclipse/jdt/internal/compiler/ast/Reference;
public abstract org.eclipse.jdt.internal.compiler.flow.FlowInfo analyseAssignment(org.eclipse.jdt.internal.compiler.lookup.BlockScope, org.eclipse.jdt.internal.compiler.flow.FlowContext, org.eclipse.jdt.internal.compiler.flow.FlowInfo, org.eclipse.jdt.internal.compiler.ast.Assignment, boolean);
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/ast/Assignment;Z)Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
currentScope
flowContext
flowInfo
assignment
isCompound
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=1, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jdt/internal/compiler/ast/Reference;
0 1 1 currentScope Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
0 1 2 flowContext Lorg/eclipse/jdt/internal/compiler/flow/FlowContext;
0 1 3 flowInfo Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
MethodParameters:
Name Flags
currentScope
flowContext
flowInfo
public boolean checkNPE(org.eclipse.jdt.internal.compiler.lookup.BlockScope, org.eclipse.jdt.internal.compiler.flow.FlowContext, org.eclipse.jdt.internal.compiler.flow.FlowInfo, int);
descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;Lorg/eclipse/jdt/internal/compiler/flow/FlowContext;Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;I)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 2
aload 0
invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowContext.isNullcheckedFieldAccess:(Lorg/eclipse/jdt/internal/compiler/ast/Reference;)Z
ifeq 2
1: iconst_1
ireturn
2: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
aload 3
iload 4
invokespecial org.eclipse.jdt.internal.compiler.ast.Expression.checkNPE:(Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;Lorg/eclipse/jdt/internal/compiler/flow/FlowContext;Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;I)Z
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/eclipse/jdt/internal/compiler/ast/Reference;
0 3 1 scope Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
0 3 2 flowContext Lorg/eclipse/jdt/internal/compiler/flow/FlowContext;
0 3 3 flowInfo Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
0 3 4 ttlForFieldCheck I
MethodParameters:
Name Flags
scope
flowContext
flowInfo
ttlForFieldCheck
protected boolean checkNullableFieldDereference(org.eclipse.jdt.internal.compiler.lookup.Scope, org.eclipse.jdt.internal.compiler.lookup.FieldBinding, long, org.eclipse.jdt.internal.compiler.flow.FlowContext, int);
descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/Scope;Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;JLorg/eclipse/jdt/internal/compiler/flow/FlowContext;I)Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=7, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 5 start local 6 0: aload 2
ifnull 12
1: iload 6
ifle 3
aload 1
invokevirtual org.eclipse.jdt.internal.compiler.lookup.Scope.compilerOptions:()Lorg/eclipse/jdt/internal/compiler/impl/CompilerOptions;
getfield org.eclipse.jdt.internal.compiler.impl.CompilerOptions.enableSyntacticNullAnalysisForFields:Z
ifeq 3
2: aload 5
aload 0
iload 6
invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowContext.recordNullCheckedFieldReference:(Lorg/eclipse/jdt/internal/compiler/ast/Reference;I)V
3: StackMap locals:
StackMap stack:
aload 2
getfield org.eclipse.jdt.internal.compiler.lookup.FieldBinding.type:Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
getfield org.eclipse.jdt.internal.compiler.lookup.TypeBinding.tagBits:J
ldc 36028797018963968
land
lconst_0
lcmp
ifeq 6
4: aload 1
invokevirtual org.eclipse.jdt.internal.compiler.lookup.Scope.problemReporter:()Lorg/eclipse/jdt/internal/compiler/problem/ProblemReporter;
lload 3
aload 1
invokevirtual org.eclipse.jdt.internal.compiler.lookup.Scope.environment:()Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
invokevirtual org.eclipse.jdt.internal.compiler.problem.ProblemReporter.dereferencingNullableExpression:(JLorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;)V
5: iconst_1
ireturn
6: StackMap locals:
StackMap stack:
aload 2
getfield org.eclipse.jdt.internal.compiler.lookup.FieldBinding.type:Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
invokevirtual org.eclipse.jdt.internal.compiler.lookup.TypeBinding.isFreeTypeVariable:()Z
ifeq 9
7: aload 1
invokevirtual org.eclipse.jdt.internal.compiler.lookup.Scope.problemReporter:()Lorg/eclipse/jdt/internal/compiler/problem/ProblemReporter;
aload 2
lload 3
invokevirtual org.eclipse.jdt.internal.compiler.problem.ProblemReporter.fieldFreeTypeVariableReference:(Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;J)V
8: iconst_1
ireturn
9: StackMap locals:
StackMap stack:
aload 2
getfield org.eclipse.jdt.internal.compiler.lookup.FieldBinding.tagBits:J
ldc 36028797018963968
land
lconst_0
lcmp
ifeq 12
10: aload 1
invokevirtual org.eclipse.jdt.internal.compiler.lookup.Scope.problemReporter:()Lorg/eclipse/jdt/internal/compiler/problem/ProblemReporter;
aload 2
lload 3
invokevirtual org.eclipse.jdt.internal.compiler.problem.ProblemReporter.nullableFieldDereference:(Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;J)V
11: iconst_1
ireturn
12: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 6 end local 5 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lorg/eclipse/jdt/internal/compiler/ast/Reference;
0 13 1 scope Lorg/eclipse/jdt/internal/compiler/lookup/Scope;
0 13 2 field Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
0 13 3 sourcePosition J
0 13 5 flowContext Lorg/eclipse/jdt/internal/compiler/flow/FlowContext;
0 13 6 ttlForFieldCheck I
MethodParameters:
Name Flags
scope
field
sourcePosition
flowContext
ttlForFieldCheck
public org.eclipse.jdt.internal.compiler.lookup.FieldBinding fieldBinding();
descriptor: ()Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jdt/internal/compiler/ast/Reference;
public void fieldStore(org.eclipse.jdt.internal.compiler.lookup.Scope, org.eclipse.jdt.internal.compiler.codegen.CodeStream, org.eclipse.jdt.internal.compiler.lookup.FieldBinding, org.eclipse.jdt.internal.compiler.lookup.MethodBinding, org.eclipse.jdt.internal.compiler.lookup.TypeBinding, boolean, boolean);
descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/Scope;Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;ZZ)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=10, 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: aload 2
getfield org.eclipse.jdt.internal.compiler.codegen.CodeStream.position:I
istore 8
start local 8 1: aload 3
invokevirtual org.eclipse.jdt.internal.compiler.lookup.FieldBinding.isStatic:()Z
ifeq 13
2: iload 7
ifeq 7
3: aload 3
getfield org.eclipse.jdt.internal.compiler.lookup.FieldBinding.type:Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
getfield org.eclipse.jdt.internal.compiler.lookup.TypeBinding.id:I
tableswitch { // 7 - 8
7: 4
8: 4
default: 6
}
4: StackMap locals: int
StackMap stack:
aload 2
invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.dup2:()V
5: goto 7
6: StackMap locals:
StackMap stack:
aload 2
invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.dup:()V
7: StackMap locals:
StackMap stack:
aload 4
ifnonnull 11
8: aload 1
aload 3
aload 5
iload 6
invokestatic org.eclipse.jdt.internal.compiler.codegen.CodeStream.getConstantPoolDeclaringClass:(Lorg/eclipse/jdt/internal/compiler/lookup/Scope;Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;Z)Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
astore 9
start local 9 9: aload 2
bipush -77
aload 3
aload 9
invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.fieldAccess:(BLorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;)V
end local 9 10: goto 23
11: StackMap locals:
StackMap stack:
aload 2
bipush -72
aload 4
aconst_null
invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.invoke:(BLorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;)V
12: goto 23
13: StackMap locals:
StackMap stack:
iload 7
ifeq 18
14: aload 3
getfield org.eclipse.jdt.internal.compiler.lookup.FieldBinding.type:Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
getfield org.eclipse.jdt.internal.compiler.lookup.TypeBinding.id:I
tableswitch { // 7 - 8
7: 15
8: 15
default: 17
}
15: StackMap locals:
StackMap stack:
aload 2
invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.dup2_x1:()V
16: goto 18
17: StackMap locals:
StackMap stack:
aload 2
invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.dup_x1:()V
18: StackMap locals:
StackMap stack:
aload 4
ifnonnull 22
19: aload 1
aload 3
aload 5
iload 6
invokestatic org.eclipse.jdt.internal.compiler.codegen.CodeStream.getConstantPoolDeclaringClass:(Lorg/eclipse/jdt/internal/compiler/lookup/Scope;Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;Z)Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
astore 9
start local 9 20: aload 2
bipush -75
aload 3
aload 9
invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.fieldAccess:(BLorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;)V
end local 9 21: goto 23
22: StackMap locals:
StackMap stack:
aload 2
bipush -72
aload 4
aconst_null
invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.invoke:(BLorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;)V
23: StackMap locals:
StackMap stack:
aload 2
iload 8
aload 0
getfield org.eclipse.jdt.internal.compiler.ast.Reference.sourceStart:I
invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.recordPositionsFrom:(II)V
24: return
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 25 0 this Lorg/eclipse/jdt/internal/compiler/ast/Reference;
0 25 1 currentScope Lorg/eclipse/jdt/internal/compiler/lookup/Scope;
0 25 2 codeStream Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;
0 25 3 fieldBinding Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
0 25 4 syntheticWriteAccessor Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
0 25 5 receiverType Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
0 25 6 isImplicitThisReceiver Z
0 25 7 valueRequired Z
1 25 8 pc I
9 10 9 constantPoolDeclaringClass Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
20 21 9 constantPoolDeclaringClass Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
MethodParameters:
Name Flags
currentScope
codeStream
fieldBinding
syntheticWriteAccessor
receiverType
isImplicitThisReceiver
valueRequired
public abstract void generateAssignment(org.eclipse.jdt.internal.compiler.lookup.BlockScope, org.eclipse.jdt.internal.compiler.codegen.CodeStream, org.eclipse.jdt.internal.compiler.ast.Assignment, boolean);
descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;Lorg/eclipse/jdt/internal/compiler/ast/Assignment;Z)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
currentScope
codeStream
assignment
valueRequired
public abstract void generateCompoundAssignment(org.eclipse.jdt.internal.compiler.lookup.BlockScope, org.eclipse.jdt.internal.compiler.codegen.CodeStream, org.eclipse.jdt.internal.compiler.ast.Expression, int, int, boolean);
descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;Lorg/eclipse/jdt/internal/compiler/ast/Expression;IIZ)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
currentScope
codeStream
expression
operator
assignmentImplicitConversion
valueRequired
public abstract void generatePostIncrement(org.eclipse.jdt.internal.compiler.lookup.BlockScope, org.eclipse.jdt.internal.compiler.codegen.CodeStream, org.eclipse.jdt.internal.compiler.ast.CompoundAssignment, boolean);
descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;Lorg/eclipse/jdt/internal/compiler/ast/CompoundAssignment;Z)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
currentScope
codeStream
postIncrement
valueRequired
public boolean isEquivalent(org.eclipse.jdt.internal.compiler.ast.Reference);
descriptor: (Lorg/eclipse/jdt/internal/compiler/ast/Reference;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jdt/internal/compiler/ast/Reference;
0 1 1 reference Lorg/eclipse/jdt/internal/compiler/ast/Reference;
MethodParameters:
Name Flags
reference
public org.eclipse.jdt.internal.compiler.lookup.FieldBinding lastFieldBinding();
descriptor: ()Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jdt/internal/compiler/ast/Reference;
public int nullStatus(org.eclipse.jdt.internal.compiler.flow.FlowInfo, org.eclipse.jdt.internal.compiler.flow.FlowContext);
descriptor: (Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;Lorg/eclipse/jdt/internal/compiler/flow/FlowContext;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.eclipse.jdt.internal.compiler.ast.Reference.implicitConversion:I
sipush 512
iand
ifeq 2
1: iconst_4
ireturn
2: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.eclipse.jdt.internal.compiler.ast.Reference.lastFieldBinding:()Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
astore 3
start local 3 3: aload 3
ifnull 12
4: aload 3
invokevirtual org.eclipse.jdt.internal.compiler.lookup.FieldBinding.isFinal:()Z
ifeq 6
aload 3
invokevirtual org.eclipse.jdt.internal.compiler.lookup.FieldBinding.constant:()Lorg/eclipse/jdt/internal/compiler/impl/Constant;
getstatic org.eclipse.jdt.internal.compiler.impl.Constant.NotAConstant:Lorg/eclipse/jdt/internal/compiler/impl/Constant;
if_acmpeq 6
5: iconst_4
ireturn
6: StackMap locals: org.eclipse.jdt.internal.compiler.lookup.FieldBinding
StackMap stack:
aload 3
invokevirtual org.eclipse.jdt.internal.compiler.lookup.FieldBinding.isNonNull:()Z
ifne 7
aload 2
aload 0
invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowContext.isNullcheckedFieldAccess:(Lorg/eclipse/jdt/internal/compiler/ast/Reference;)Z
ifeq 8
7: StackMap locals:
StackMap stack:
iconst_4
ireturn
8: StackMap locals:
StackMap stack:
aload 3
invokevirtual org.eclipse.jdt.internal.compiler.lookup.FieldBinding.isNullable:()Z
ifeq 10
9: bipush 16
ireturn
10: StackMap locals:
StackMap stack:
aload 3
getfield org.eclipse.jdt.internal.compiler.lookup.FieldBinding.type:Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
invokevirtual org.eclipse.jdt.internal.compiler.lookup.TypeBinding.isFreeTypeVariable:()Z
ifeq 12
11: bipush 48
ireturn
12: StackMap locals:
StackMap stack:
aload 0
getfield org.eclipse.jdt.internal.compiler.ast.Reference.resolvedType:Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
ifnull 14
13: aload 0
getfield org.eclipse.jdt.internal.compiler.ast.Reference.resolvedType:Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
getfield org.eclipse.jdt.internal.compiler.lookup.TypeBinding.tagBits:J
invokestatic org.eclipse.jdt.internal.compiler.flow.FlowInfo.tagBitsToNullStatus:(J)I
ireturn
14: 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 15 0 this Lorg/eclipse/jdt/internal/compiler/ast/Reference;
0 15 1 flowInfo Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
0 15 2 flowContext Lorg/eclipse/jdt/internal/compiler/flow/FlowContext;
3 15 3 fieldBinding Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
MethodParameters:
Name Flags
flowInfo
flowContext
void reportOnlyUselesslyReadPrivateField(org.eclipse.jdt.internal.compiler.lookup.BlockScope, org.eclipse.jdt.internal.compiler.lookup.FieldBinding, boolean);
descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;Z)V
flags: (0x0000)
Code:
stack=3, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: iload 3
ifeq 4
1: aload 2
iconst_0
putfield org.eclipse.jdt.internal.compiler.lookup.FieldBinding.compoundUseFlag:I
2: aload 2
dup
getfield org.eclipse.jdt.internal.compiler.lookup.FieldBinding.modifiers:I
ldc 134217728
ior
putfield org.eclipse.jdt.internal.compiler.lookup.FieldBinding.modifiers:I
3: goto 10
4: StackMap locals:
StackMap stack:
aload 2
invokevirtual org.eclipse.jdt.internal.compiler.lookup.FieldBinding.isUsedOnlyInCompound:()Z
ifeq 10
5: aload 2
dup
getfield org.eclipse.jdt.internal.compiler.lookup.FieldBinding.compoundUseFlag:I
iconst_1
isub
putfield org.eclipse.jdt.internal.compiler.lookup.FieldBinding.compoundUseFlag:I
6: aload 2
getfield org.eclipse.jdt.internal.compiler.lookup.FieldBinding.compoundUseFlag:I
ifne 10
7: aload 2
invokevirtual org.eclipse.jdt.internal.compiler.lookup.FieldBinding.isOrEnclosedByPrivateType:()Z
ifeq 10
8: aload 0
getfield org.eclipse.jdt.internal.compiler.ast.Reference.implicitConversion:I
sipush 1024
iand
ifne 10
9: aload 1
invokevirtual org.eclipse.jdt.internal.compiler.lookup.BlockScope.problemReporter:()Lorg/eclipse/jdt/internal/compiler/problem/ProblemReporter;
aload 2
invokevirtual org.eclipse.jdt.internal.compiler.lookup.FieldBinding.sourceField:()Lorg/eclipse/jdt/internal/compiler/ast/FieldDeclaration;
invokevirtual org.eclipse.jdt.internal.compiler.problem.ProblemReporter.unusedPrivateField:(Lorg/eclipse/jdt/internal/compiler/ast/FieldDeclaration;)V
10: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lorg/eclipse/jdt/internal/compiler/ast/Reference;
0 11 1 currentScope Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
0 11 2 fieldBinding Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
0 11 3 valueRequired Z
MethodParameters:
Name Flags
currentScope
fieldBinding
valueRequired
static void reportOnlyUselesslyReadLocal(org.eclipse.jdt.internal.compiler.lookup.BlockScope, org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding, boolean);
descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;Z)V
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 1
getfield org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding.declaration:Lorg/eclipse/jdt/internal/compiler/ast/LocalDeclaration;
ifnonnull 2
1: return
2: StackMap locals:
StackMap stack:
aload 1
getfield org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding.declaration:Lorg/eclipse/jdt/internal/compiler/ast/LocalDeclaration;
getfield org.eclipse.jdt.internal.compiler.ast.LocalDeclaration.bits:I
ldc 1073741824
iand
ifne 4
3: return
4: StackMap locals:
StackMap stack:
aload 1
getfield org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding.useFlag:I
iconst_1
if_icmplt 6
5: return
6: StackMap locals:
StackMap stack:
iload 2
ifeq 9
7: aload 1
iconst_1
putfield org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding.useFlag:I
8: return
9: StackMap locals:
StackMap stack:
aload 1
dup
getfield org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding.useFlag:I
iconst_1
iadd
putfield org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding.useFlag:I
10: aload 1
getfield org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding.useFlag:I
ifeq 12
11: return
12: StackMap locals:
StackMap stack:
aload 1
getfield org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding.declaration:Lorg/eclipse/jdt/internal/compiler/ast/LocalDeclaration;
instanceof org.eclipse.jdt.internal.compiler.ast.Argument
ifeq 27
13: aload 0
invokevirtual org.eclipse.jdt.internal.compiler.lookup.BlockScope.methodScope:()Lorg/eclipse/jdt/internal/compiler/lookup/MethodScope;
astore 3
start local 3 14: aload 3
ifnull 28
aload 3
invokevirtual org.eclipse.jdt.internal.compiler.lookup.MethodScope.isLambdaScope:()Z
ifne 28
15: aload 3
invokevirtual org.eclipse.jdt.internal.compiler.lookup.MethodScope.referenceContext:()Lorg/eclipse/jdt/internal/compiler/impl/ReferenceContext;
checkcast org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration
getfield org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration.binding:Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
astore 4
start local 4 16: aload 4
invokevirtual org.eclipse.jdt.internal.compiler.lookup.MethodBinding.isMain:()Z
ifeq 17
iconst_0
goto 18
StackMap locals: org.eclipse.jdt.internal.compiler.lookup.MethodScope org.eclipse.jdt.internal.compiler.lookup.MethodBinding
StackMap stack:
17: iconst_1
StackMap locals:
StackMap stack: int
18: istore 5
start local 5 19: aload 4
invokevirtual org.eclipse.jdt.internal.compiler.lookup.MethodBinding.isImplementing:()Z
ifeq 22
20: iload 5
aload 0
invokevirtual org.eclipse.jdt.internal.compiler.lookup.BlockScope.compilerOptions:()Lorg/eclipse/jdt/internal/compiler/impl/CompilerOptions;
getfield org.eclipse.jdt.internal.compiler.impl.CompilerOptions.reportUnusedParameterWhenImplementingAbstract:Z
iand
istore 5
21: goto 24
StackMap locals: int
StackMap stack:
22: aload 4
invokevirtual org.eclipse.jdt.internal.compiler.lookup.MethodBinding.isOverriding:()Z
ifeq 24
23: iload 5
aload 0
invokevirtual org.eclipse.jdt.internal.compiler.lookup.BlockScope.compilerOptions:()Lorg/eclipse/jdt/internal/compiler/impl/CompilerOptions;
getfield org.eclipse.jdt.internal.compiler.impl.CompilerOptions.reportUnusedParameterWhenOverridingConcrete:Z
iand
istore 5
24: StackMap locals:
StackMap stack:
iload 5
ifeq 28
25: aload 0
invokevirtual org.eclipse.jdt.internal.compiler.lookup.BlockScope.problemReporter:()Lorg/eclipse/jdt/internal/compiler/problem/ProblemReporter;
aload 1
getfield org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding.declaration:Lorg/eclipse/jdt/internal/compiler/ast/LocalDeclaration;
invokevirtual org.eclipse.jdt.internal.compiler.problem.ProblemReporter.unusedArgument:(Lorg/eclipse/jdt/internal/compiler/ast/LocalDeclaration;)V
end local 5 end local 4 end local 3 26: goto 28
27: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.eclipse.jdt.internal.compiler.lookup.BlockScope.problemReporter:()Lorg/eclipse/jdt/internal/compiler/problem/ProblemReporter;
aload 1
getfield org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding.declaration:Lorg/eclipse/jdt/internal/compiler/ast/LocalDeclaration;
invokevirtual org.eclipse.jdt.internal.compiler.problem.ProblemReporter.unusedLocalVariable:(Lorg/eclipse/jdt/internal/compiler/ast/LocalDeclaration;)V
28: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 29 0 currentScope Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
0 29 1 localBinding Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
0 29 2 valueRequired Z
14 26 3 methodScope Lorg/eclipse/jdt/internal/compiler/lookup/MethodScope;
16 26 4 method Lorg/eclipse/jdt/internal/compiler/lookup/MethodBinding;
19 26 5 shouldReport Z
MethodParameters:
Name Flags
currentScope
localBinding
valueRequired
}
SourceFile: "Reference.java"