public class org.eclipse.jdt.internal.compiler.ast.InstanceOfExpression extends org.eclipse.jdt.internal.compiler.ast.OperatorExpression
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.eclipse.jdt.internal.compiler.ast.InstanceOfExpression
super_class: org.eclipse.jdt.internal.compiler.ast.OperatorExpression
{
public org.eclipse.jdt.internal.compiler.ast.Expression expression;
descriptor: Lorg/eclipse/jdt/internal/compiler/ast/Expression;
flags: (0x0001) ACC_PUBLIC
public org.eclipse.jdt.internal.compiler.ast.TypeReference type;
descriptor: Lorg/eclipse/jdt/internal/compiler/ast/TypeReference;
flags: (0x0001) ACC_PUBLIC
public void <init>(org.eclipse.jdt.internal.compiler.ast.Expression, org.eclipse.jdt.internal.compiler.ast.TypeReference);
descriptor: (Lorg/eclipse/jdt/internal/compiler/ast/Expression;Lorg/eclipse/jdt/internal/compiler/ast/TypeReference;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial org.eclipse.jdt.internal.compiler.ast.OperatorExpression.<init>:()V
1: aload 0
aload 1
putfield org.eclipse.jdt.internal.compiler.ast.InstanceOfExpression.expression:Lorg/eclipse/jdt/internal/compiler/ast/Expression;
2: aload 0
aload 2
putfield org.eclipse.jdt.internal.compiler.ast.InstanceOfExpression.type:Lorg/eclipse/jdt/internal/compiler/ast/TypeReference;
3: aload 2
dup
getfield org.eclipse.jdt.internal.compiler.ast.TypeReference.bits:I
ldc 1073741824
ior
putfield org.eclipse.jdt.internal.compiler.ast.TypeReference.bits:I
4: aload 0
dup
getfield org.eclipse.jdt.internal.compiler.ast.InstanceOfExpression.bits:I
sipush 1984
ior
putfield org.eclipse.jdt.internal.compiler.ast.InstanceOfExpression.bits:I
5: aload 0
aload 1
getfield org.eclipse.jdt.internal.compiler.ast.Expression.sourceStart:I
putfield org.eclipse.jdt.internal.compiler.ast.InstanceOfExpression.sourceStart:I
6: aload 0
aload 2
getfield org.eclipse.jdt.internal.compiler.ast.TypeReference.sourceEnd:I
putfield org.eclipse.jdt.internal.compiler.ast.InstanceOfExpression.sourceEnd:I
7: return
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/InstanceOfExpression;
0 8 1 expression Lorg/eclipse/jdt/internal/compiler/ast/Expression;
0 8 2 type Lorg/eclipse/jdt/internal/compiler/ast/TypeReference;
MethodParameters:
Name Flags
expression
type
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=6, locals=6, 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.InstanceOfExpression.expression:Lorg/eclipse/jdt/internal/compiler/ast/Expression;
invokevirtual org.eclipse.jdt.internal.compiler.ast.Expression.localVariableBinding:()Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
astore 4
start local 4 1: aload 4
ifnull 11
aload 4
getfield org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding.type:Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
getfield org.eclipse.jdt.internal.compiler.lookup.TypeBinding.tagBits:J
ldc 2
land
lconst_0
lcmp
ifne 11
2: aload 0
getfield org.eclipse.jdt.internal.compiler.ast.InstanceOfExpression.expression:Lorg/eclipse/jdt/internal/compiler/ast/Expression;
aload 1
aload 2
aload 3
invokevirtual org.eclipse.jdt.internal.compiler.ast.Expression.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;
3: invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.unconditionalInits:()Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
4: astore 3
5: aload 3
invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.copy:()Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
astore 5
start local 5 6: aload 5
aload 4
invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.markAsComparedEqualToNonNull:(Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;)V
7: aload 2
aload 1
aload 4
8: aload 0
getfield org.eclipse.jdt.internal.compiler.ast.InstanceOfExpression.expression:Lorg/eclipse/jdt/internal/compiler/ast/Expression;
sipush 1025
aload 3
9: invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowContext.recordUsingNullReference:(Lorg/eclipse/jdt/internal/compiler/lookup/Scope;Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;Lorg/eclipse/jdt/internal/compiler/ast/ASTNode;ILorg/eclipse/jdt/internal/compiler/flow/FlowInfo;)V
10: aload 5
aload 3
invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.copy:()Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
invokestatic org.eclipse.jdt.internal.compiler.flow.FlowInfo.conditional:(Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;)Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
areturn
end local 5 11: StackMap locals: org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding
StackMap stack:
aload 0
getfield org.eclipse.jdt.internal.compiler.ast.InstanceOfExpression.expression:Lorg/eclipse/jdt/internal/compiler/ast/Expression;
instanceof org.eclipse.jdt.internal.compiler.ast.Reference
ifeq 15
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
ifeq 15
12: aload 0
getfield org.eclipse.jdt.internal.compiler.ast.InstanceOfExpression.expression:Lorg/eclipse/jdt/internal/compiler/ast/Expression;
checkcast org.eclipse.jdt.internal.compiler.ast.Reference
invokevirtual org.eclipse.jdt.internal.compiler.ast.Reference.lastFieldBinding:()Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
astore 5
start local 5 13: aload 5
ifnull 15
aload 5
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 2
land
lconst_0
lcmp
ifne 15
14: aload 2
aload 0
getfield org.eclipse.jdt.internal.compiler.ast.InstanceOfExpression.expression:Lorg/eclipse/jdt/internal/compiler/ast/Expression;
checkcast org.eclipse.jdt.internal.compiler.ast.Reference
iconst_1
invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowContext.recordNullCheckedFieldReference:(Lorg/eclipse/jdt/internal/compiler/ast/Reference;I)V
end local 5 15: StackMap locals:
StackMap stack:
aload 0
getfield org.eclipse.jdt.internal.compiler.ast.InstanceOfExpression.expression:Lorg/eclipse/jdt/internal/compiler/ast/Expression;
aload 1
aload 2
aload 3
invokevirtual org.eclipse.jdt.internal.compiler.ast.Expression.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;
16: invokevirtual org.eclipse.jdt.internal.compiler.flow.FlowInfo.unconditionalInits:()Lorg/eclipse/jdt/internal/compiler/flow/UnconditionalFlowInfo;
17: areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lorg/eclipse/jdt/internal/compiler/ast/InstanceOfExpression;
0 18 1 currentScope Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
0 18 2 flowContext Lorg/eclipse/jdt/internal/compiler/flow/FlowContext;
0 18 3 flowInfo Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
1 18 4 local Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
6 11 5 initsWhenTrue Lorg/eclipse/jdt/internal/compiler/flow/FlowInfo;
13 15 5 field Lorg/eclipse/jdt/internal/compiler/lookup/FieldBinding;
MethodParameters:
Name Flags
currentScope
flowContext
flowInfo
public void generateCode(org.eclipse.jdt.internal.compiler.lookup.BlockScope, org.eclipse.jdt.internal.compiler.codegen.CodeStream, boolean);
descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 2
getfield org.eclipse.jdt.internal.compiler.codegen.CodeStream.position:I
istore 4
start local 4 1: aload 0
getfield org.eclipse.jdt.internal.compiler.ast.InstanceOfExpression.expression:Lorg/eclipse/jdt/internal/compiler/ast/Expression;
aload 1
aload 2
iconst_1
invokevirtual org.eclipse.jdt.internal.compiler.ast.Expression.generateCode:(Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;Z)V
2: aload 2
aload 0
getfield org.eclipse.jdt.internal.compiler.ast.InstanceOfExpression.type:Lorg/eclipse/jdt/internal/compiler/ast/TypeReference;
aload 0
getfield org.eclipse.jdt.internal.compiler.ast.InstanceOfExpression.type:Lorg/eclipse/jdt/internal/compiler/ast/TypeReference;
getfield org.eclipse.jdt.internal.compiler.ast.TypeReference.resolvedType:Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.instance_of:(Lorg/eclipse/jdt/internal/compiler/ast/TypeReference;Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;)V
3: iload 3
ifeq 6
4: aload 2
aload 0
getfield org.eclipse.jdt.internal.compiler.ast.InstanceOfExpression.implicitConversion:I
invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.generateImplicitConversion:(I)V
5: goto 7
6: StackMap locals: int
StackMap stack:
aload 2
invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.pop:()V
7: StackMap locals:
StackMap stack:
aload 2
iload 4
aload 0
getfield org.eclipse.jdt.internal.compiler.ast.InstanceOfExpression.sourceStart:I
invokevirtual org.eclipse.jdt.internal.compiler.codegen.CodeStream.recordPositionsFrom:(II)V
8: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/eclipse/jdt/internal/compiler/ast/InstanceOfExpression;
0 9 1 currentScope Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
0 9 2 codeStream Lorg/eclipse/jdt/internal/compiler/codegen/CodeStream;
0 9 3 valueRequired Z
1 9 4 pc I
MethodParameters:
Name Flags
currentScope
codeStream
valueRequired
public java.lang.StringBuffer printExpressionNoParenthesis(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: aload 0
getfield org.eclipse.jdt.internal.compiler.ast.InstanceOfExpression.expression:Lorg/eclipse/jdt/internal/compiler/ast/Expression;
iload 1
aload 2
invokevirtual org.eclipse.jdt.internal.compiler.ast.Expression.printExpression:(ILjava/lang/StringBuffer;)Ljava/lang/StringBuffer;
ldc " instanceof "
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
1: aload 0
getfield org.eclipse.jdt.internal.compiler.ast.InstanceOfExpression.type:Lorg/eclipse/jdt/internal/compiler/ast/TypeReference;
iconst_0
aload 2
invokevirtual org.eclipse.jdt.internal.compiler.ast.TypeReference.print:(ILjava/lang/StringBuffer;)Ljava/lang/StringBuffer;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/eclipse/jdt/internal/compiler/ast/InstanceOfExpression;
0 2 1 indent I
0 2 2 output Ljava/lang/StringBuffer;
MethodParameters:
Name Flags
indent
output
public org.eclipse.jdt.internal.compiler.lookup.TypeBinding resolveType(org.eclipse.jdt.internal.compiler.lookup.BlockScope);
descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;)Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getstatic org.eclipse.jdt.internal.compiler.impl.Constant.NotAConstant:Lorg/eclipse/jdt/internal/compiler/impl/Constant;
putfield org.eclipse.jdt.internal.compiler.ast.InstanceOfExpression.constant:Lorg/eclipse/jdt/internal/compiler/impl/Constant;
1: aload 0
getfield org.eclipse.jdt.internal.compiler.ast.InstanceOfExpression.type:Lorg/eclipse/jdt/internal/compiler/ast/TypeReference;
aload 1
iconst_1
invokevirtual org.eclipse.jdt.internal.compiler.ast.TypeReference.resolveType:(Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;Z)Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
astore 2
start local 2 2: aload 0
getfield org.eclipse.jdt.internal.compiler.ast.InstanceOfExpression.expression:Lorg/eclipse/jdt/internal/compiler/ast/Expression;
instanceof org.eclipse.jdt.internal.compiler.ast.CastExpression
ifeq 4
3: aload 0
getfield org.eclipse.jdt.internal.compiler.ast.InstanceOfExpression.expression:Lorg/eclipse/jdt/internal/compiler/ast/Expression;
checkcast org.eclipse.jdt.internal.compiler.ast.CastExpression
aload 2
invokevirtual org.eclipse.jdt.internal.compiler.ast.CastExpression.setInstanceofType:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;)V
4: StackMap locals: org.eclipse.jdt.internal.compiler.lookup.TypeBinding
StackMap stack:
aload 0
getfield org.eclipse.jdt.internal.compiler.ast.InstanceOfExpression.expression:Lorg/eclipse/jdt/internal/compiler/ast/Expression;
aload 1
invokevirtual org.eclipse.jdt.internal.compiler.ast.Expression.resolveType:(Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;)Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
astore 3
start local 3 5: aload 3
ifnull 8
aload 2
ifnull 8
aload 0
getfield org.eclipse.jdt.internal.compiler.ast.InstanceOfExpression.type:Lorg/eclipse/jdt/internal/compiler/ast/TypeReference;
getstatic org.eclipse.jdt.internal.compiler.ast.TypeReference$AnnotationPosition.ANY:Lorg/eclipse/jdt/internal/compiler/ast/TypeReference$AnnotationPosition;
invokevirtual org.eclipse.jdt.internal.compiler.ast.TypeReference.hasNullTypeAnnotation:(Lorg/eclipse/jdt/internal/compiler/ast/TypeReference$AnnotationPosition;)Z
ifeq 8
6: aload 3
aload 2
invokevirtual org.eclipse.jdt.internal.compiler.lookup.TypeBinding.isCompatibleWith:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;)Z
ifeq 7
aload 2
aload 3
iconst_m1
invokestatic org.eclipse.jdt.internal.compiler.ast.NullAnnotationMatching.analyse:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;I)Lorg/eclipse/jdt/internal/compiler/ast/NullAnnotationMatching;
invokevirtual org.eclipse.jdt.internal.compiler.ast.NullAnnotationMatching.isAnyMismatch:()Z
ifeq 8
7: StackMap locals: org.eclipse.jdt.internal.compiler.lookup.TypeBinding
StackMap stack:
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.InstanceOfExpression.type:Lorg/eclipse/jdt/internal/compiler/ast/TypeReference;
invokevirtual org.eclipse.jdt.internal.compiler.problem.ProblemReporter.nullAnnotationUnsupportedLocation:(Lorg/eclipse/jdt/internal/compiler/ast/TypeReference;)V
8: StackMap locals:
StackMap stack:
aload 3
ifnull 9
aload 2
ifnonnull 10
9: StackMap locals:
StackMap stack:
aconst_null
areturn
10: StackMap locals:
StackMap stack:
aload 2
invokevirtual org.eclipse.jdt.internal.compiler.lookup.TypeBinding.isReifiable:()Z
ifne 13
11: aload 1
invokevirtual org.eclipse.jdt.internal.compiler.lookup.BlockScope.problemReporter:()Lorg/eclipse/jdt/internal/compiler/problem/ProblemReporter;
aload 2
aload 0
invokevirtual org.eclipse.jdt.internal.compiler.problem.ProblemReporter.illegalInstanceOfGenericType:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;Lorg/eclipse/jdt/internal/compiler/ast/ASTNode;)V
12: goto 17
StackMap locals:
StackMap stack:
13: aload 2
invokevirtual org.eclipse.jdt.internal.compiler.lookup.TypeBinding.isValidBinding:()Z
ifeq 17
14: aload 3
getstatic org.eclipse.jdt.internal.compiler.lookup.TypeBinding.NULL:Lorg/eclipse/jdt/internal/compiler/lookup/NullTypeBinding;
if_acmpeq 15
aload 3
invokevirtual org.eclipse.jdt.internal.compiler.lookup.TypeBinding.isBaseType:()Z
ifne 16
15: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
aload 3
aconst_null
invokevirtual org.eclipse.jdt.internal.compiler.ast.InstanceOfExpression.checkCastTypesCompatibility:(Lorg/eclipse/jdt/internal/compiler/lookup/Scope;Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;Lorg/eclipse/jdt/internal/compiler/ast/Expression;)Z
ifne 17
16: StackMap locals:
StackMap stack:
aload 1
invokevirtual org.eclipse.jdt.internal.compiler.lookup.BlockScope.problemReporter:()Lorg/eclipse/jdt/internal/compiler/problem/ProblemReporter;
aload 0
aload 3
aload 2
invokevirtual org.eclipse.jdt.internal.compiler.problem.ProblemReporter.notCompatibleTypesError:(Lorg/eclipse/jdt/internal/compiler/ast/InstanceOfExpression;Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;)V
17: StackMap locals:
StackMap stack:
aload 0
getstatic org.eclipse.jdt.internal.compiler.lookup.TypeBinding.BOOLEAN:Lorg/eclipse/jdt/internal/compiler/lookup/BaseTypeBinding;
dup_x1
putfield org.eclipse.jdt.internal.compiler.ast.InstanceOfExpression.resolvedType:Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lorg/eclipse/jdt/internal/compiler/ast/InstanceOfExpression;
0 18 1 scope Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
2 18 2 checkedType Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
5 18 3 expressionType Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
MethodParameters:
Name Flags
scope
public void tagAsUnnecessaryCast(org.eclipse.jdt.internal.compiler.lookup.Scope, org.eclipse.jdt.internal.compiler.lookup.TypeBinding);
descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/Scope;Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.eclipse.jdt.internal.compiler.ast.InstanceOfExpression.expression:Lorg/eclipse/jdt/internal/compiler/ast/Expression;
getfield org.eclipse.jdt.internal.compiler.ast.Expression.resolvedType:Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
getstatic org.eclipse.jdt.internal.compiler.lookup.TypeBinding.NULL:Lorg/eclipse/jdt/internal/compiler/lookup/NullTypeBinding;
if_acmpeq 2
1: aload 1
invokevirtual org.eclipse.jdt.internal.compiler.lookup.Scope.problemReporter:()Lorg/eclipse/jdt/internal/compiler/problem/ProblemReporter;
aload 0
aload 2
invokevirtual org.eclipse.jdt.internal.compiler.problem.ProblemReporter.unnecessaryInstanceof:(Lorg/eclipse/jdt/internal/compiler/ast/InstanceOfExpression;Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;)V
2: StackMap locals:
StackMap stack:
return
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/InstanceOfExpression;
0 3 1 scope Lorg/eclipse/jdt/internal/compiler/lookup/Scope;
0 3 2 castType Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
MethodParameters:
Name Flags
scope
castType
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=3, 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/InstanceOfExpression;Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;)Z
ifeq 3
1: aload 0
getfield org.eclipse.jdt.internal.compiler.ast.InstanceOfExpression.expression:Lorg/eclipse/jdt/internal/compiler/ast/Expression;
aload 1
aload 2
invokevirtual org.eclipse.jdt.internal.compiler.ast.Expression.traverse:(Lorg/eclipse/jdt/internal/compiler/ASTVisitor;Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;)V
2: aload 0
getfield org.eclipse.jdt.internal.compiler.ast.InstanceOfExpression.type:Lorg/eclipse/jdt/internal/compiler/ast/TypeReference;
aload 1
aload 2
invokevirtual org.eclipse.jdt.internal.compiler.ast.TypeReference.traverse:(Lorg/eclipse/jdt/internal/compiler/ASTVisitor;Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;)V
3: StackMap locals:
StackMap stack:
aload 1
aload 0
aload 2
invokevirtual org.eclipse.jdt.internal.compiler.ASTVisitor.endVisit:(Lorg/eclipse/jdt/internal/compiler/ast/InstanceOfExpression;Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;)V
4: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/eclipse/jdt/internal/compiler/ast/InstanceOfExpression;
0 5 1 visitor Lorg/eclipse/jdt/internal/compiler/ASTVisitor;
0 5 2 scope Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
MethodParameters:
Name Flags
visitor
scope
}
SourceFile: "InstanceOfExpression.java"
InnerClasses:
public final AnnotationPosition = org.eclipse.jdt.internal.compiler.ast.TypeReference$AnnotationPosition of org.eclipse.jdt.internal.compiler.ast.TypeReference