| Modifier and Type | Method and Description |
|---|---|
void |
TypeReference.aboutToResolve(Scope scope) |
void |
ParameterizedQualifiedTypeReference.checkBounds(ReferenceBinding type,
Scope scope,
int index) |
void |
ParameterizedSingleTypeReference.checkBounds(Scope scope) |
void |
TypeReference.checkBounds(Scope scope) |
void |
TypeParameter.checkBounds(Scope scope) |
void |
ParameterizedQualifiedTypeReference.checkBounds(Scope scope) |
boolean |
Expression.checkCastTypesCompatibility(Scope scope,
TypeBinding castType,
TypeBinding expressionType,
Expression expression)
Returns false if cast is not legal.
|
protected boolean |
Reference.checkNullableFieldDereference(Scope scope,
FieldBinding field,
long sourcePosition) |
boolean |
CastExpression.checkUnsafeCast(Scope scope,
TypeBinding castType,
TypeBinding expressionType,
TypeBinding match,
boolean isNarrowing) |
boolean |
Expression.checkUnsafeCast(Scope scope,
TypeBinding castType,
TypeBinding expressionType,
TypeBinding match,
boolean isNarrowing) |
void |
QualifiedNameReference.computeConversion(Scope scope,
TypeBinding runtimeTimeType,
TypeBinding compileTimeType) |
void |
Expression.computeConversion(Scope scope,
TypeBinding runtimeType,
TypeBinding compileTimeType)
Base types need that the widening is explicitly done by the compiler using some bytecode like i2f.
|
void |
FieldReference.computeConversion(Scope scope,
TypeBinding runtimeTimeType,
TypeBinding compileTimeType) |
void |
MessageSend.computeConversion(Scope scope,
TypeBinding runtimeTimeType,
TypeBinding compileTimeType) |
void |
SingleNameReference.computeConversion(Scope scope,
TypeBinding runtimeTimeType,
TypeBinding compileTimeType) |
void |
Reference.fieldStore(Scope currentScope,
CodeStream codeStream,
FieldBinding fieldBinding,
MethodBinding syntheticWriteAccessor,
TypeBinding receiverType,
boolean isImplicitThisReceiver,
boolean valueRequired) |
protected TypeBinding |
QualifiedTypeReference.findNextTypeBinding(int tokenIndex,
Scope scope,
PackageBinding packageBinding) |
protected TypeBinding |
ParameterizedSingleTypeReference.getTypeBinding(Scope scope) |
protected TypeBinding |
ArrayQualifiedTypeReference.getTypeBinding(Scope scope) |
protected TypeBinding |
UnionTypeReference.getTypeBinding(Scope scope) |
protected TypeBinding |
SingleTypeReference.getTypeBinding(Scope scope) |
protected TypeBinding |
ArrayTypeReference.getTypeBinding(Scope scope) |
protected TypeBinding |
JavadocImplicitTypeReference.getTypeBinding(Scope scope) |
protected abstract TypeBinding |
TypeReference.getTypeBinding(Scope scope) |
protected TypeBinding |
QualifiedTypeReference.getTypeBinding(Scope scope) |
protected TypeBinding |
ParameterizedQualifiedTypeReference.getTypeBinding(Scope scope) |
protected TypeBinding |
JavadocFieldReference.internalResolveType(Scope scope) |
protected TypeBinding |
JavadocSingleTypeReference.internalResolveType(Scope scope) |
protected TypeBinding |
JavadocImplicitTypeReference.internalResolveType(Scope scope) |
protected TypeBinding |
TypeReference.internalResolveType(Scope scope) |
protected boolean |
Statement.isBoxingCompatible(TypeBinding expressionType,
TypeBinding targetType,
Expression expression,
Scope scope) |
boolean |
ASTNode.isFieldUseDeprecated(FieldBinding field,
Scope scope,
int filteredBits) |
boolean |
ASTNode.isMethodUseDeprecated(MethodBinding method,
Scope scope,
boolean isExplicitUse) |
boolean |
ASTNode.isTypeUseDeprecated(TypeBinding type,
Scope scope) |
TypeBinding |
QualifiedNameReference.postConversionType(Scope scope) |
TypeBinding |
Expression.postConversionType(Scope scope)
Returns the type of the expression after required implicit conversions.
|
TypeBinding |
FieldReference.postConversionType(Scope scope) |
TypeBinding |
MessageSend.postConversionType(Scope scope) |
TypeBinding |
SingleNameReference.postConversionType(Scope scope) |
void |
Annotation.recordSuppressWarnings(Scope scope,
int startSuppresss,
int endSuppress,
boolean isSuppressingWarnings) |
protected void |
JavadocSingleTypeReference.reportDeprecatedType(TypeBinding type,
Scope scope) |
protected void |
JavadocImplicitTypeReference.reportDeprecatedType(TypeBinding type,
Scope scope) |
protected void |
JavadocQualifiedTypeReference.reportDeprecatedType(TypeBinding type,
Scope scope) |
protected void |
TypeReference.reportDeprecatedType(TypeBinding type,
Scope scope) |
protected void |
JavadocArraySingleTypeReference.reportDeprecatedType(TypeBinding type,
Scope scope) |
protected void |
JavadocArrayQualifiedTypeReference.reportDeprecatedType(TypeBinding type,
Scope scope) |
protected void |
JavadocQualifiedTypeReference.reportDeprecatedType(TypeBinding type,
Scope scope,
int index) |
protected void |
TypeReference.reportDeprecatedType(TypeBinding type,
Scope scope,
int index) |
protected void |
JavadocSingleTypeReference.reportInvalidType(Scope scope) |
protected void |
JavadocImplicitTypeReference.reportInvalidType(Scope scope) |
protected void |
JavadocQualifiedTypeReference.reportInvalidType(Scope scope) |
protected void |
TypeReference.reportInvalidType(Scope scope) |
protected void |
JavadocArraySingleTypeReference.reportInvalidType(Scope scope) |
protected void |
JavadocArrayQualifiedTypeReference.reportInvalidType(Scope scope) |
boolean |
FakedTrackingVariable.reportRecordedErrors(Scope scope,
int mergedStatus) |
void |
CastExpression.tagAsUnnecessaryCast(Scope scope,
TypeBinding castType) |
void |
Expression.tagAsUnnecessaryCast(Scope scope,
TypeBinding castType)
Record the fact a cast expression got detected as being unnecessary.
|
void |
InstanceOfExpression.tagAsUnnecessaryCast(Scope scope,
TypeBinding castType) |
| Modifier and Type | Method and Description |
|---|---|
void |
CodeStream.addDefinitelyAssignedVariables(Scope scope,
int initStateIndex) |
void |
StackMapFrameCodeStream.addDefinitelyAssignedVariables(Scope scope,
int initStateIndex) |
void |
CodeStream.generateEmulationForConstructor(Scope scope,
MethodBinding methodBinding) |
void |
CodeStream.generateEmulationForMethod(Scope scope,
MethodBinding methodBinding) |
void |
CodeStream.generateOuterAccess(Object[] mappingSequence,
ASTNode invocationSite,
Binding target,
Scope scope) |
void |
StackMapFrameCodeStream.generateOuterAccess(Object[] mappingSequence,
ASTNode invocationSite,
Binding target,
Scope scope) |
static TypeBinding |
CodeStream.getConstantPoolDeclaringClass(Scope currentScope,
FieldBinding codegenBinding,
TypeBinding actualReceiverType,
boolean isImplicitThisReceiver)
Returns the type that should be substituted to original binding declaring class as the proper receiver type
|
static TypeBinding |
CodeStream.getConstantPoolDeclaringClass(Scope currentScope,
MethodBinding codegenBinding,
TypeBinding actualReceiverType,
boolean isImplicitThisReceiver)
Returns the type that should be substituted to original binding declaring class as the proper receiver type
|
boolean |
CodeStream.isDefinitelyAssigned(Scope scope,
int initStateIndex,
LocalVariableBinding local) |
void |
CodeStream.removeNotDefinitelyAssignedVariables(Scope scope,
int initStateIndex) |
void |
StackMapFrameCodeStream.removeNotDefinitelyAssignedVariables(Scope scope,
int initStateIndex) |
| Modifier and Type | Method and Description |
|---|---|
protected void |
FlowContext.checkUnboxing(Scope scope,
Expression expression,
FlowInfo flowInfo)
During deferred checking re-visit a previously recording unboxing situation.
|
void |
LoopingFlowContext.recordUnboxing(Scope scope,
Expression expression,
int nullStatus,
FlowInfo flowInfo) |
void |
FlowContext.recordUnboxing(Scope scope,
Expression expression,
int nullStatus,
FlowInfo flowInfo)
Either AST analysis or checking of a child flow context has encountered an unboxing situation.
|
void |
FinallyFlowContext.recordUnboxing(Scope scope,
Expression expression,
int nullStatus,
FlowInfo flowInfo) |
void |
LoopingFlowContext.recordUsingNullReference(Scope scope,
LocalVariableBinding local,
ASTNode location,
int checkType,
FlowInfo flowInfo) |
void |
FlowContext.recordUsingNullReference(Scope scope,
LocalVariableBinding local,
ASTNode location,
int checkType,
FlowInfo flowInfo)
Record a null reference for use by deferred checks.
|
void |
FinallyFlowContext.recordUsingNullReference(Scope scope,
LocalVariableBinding local,
ASTNode location,
int checkType,
FlowInfo flowInfo) |
| Constructor and Description |
|---|
LoopingFlowContext(FlowContext parent,
FlowInfo upstreamNullFlowInfo,
ASTNode associatedNode,
BranchLabel breakLabel,
BranchLabel continueLabel,
Scope associatedScope,
boolean isPreTest) |
| Modifier and Type | Class and Description |
|---|---|
class |
BlockScope |
class |
ClassScope |
class |
CompilationUnitScope |
class |
MethodScope
Specific block scope used for methods, constructors or clinits, representing
its outermost blockscope.
|
| Modifier and Type | Field and Description |
|---|---|
Scope |
Scope.parent |
Scope[] |
BlockScope.subscopes |
| Modifier and Type | Method and Description |
|---|---|
void |
BlockScope.addSubscope(Scope childScope) |
void |
ParameterizedTypeBinding.boundCheck(Scope scope,
TypeReference[] argumentReferences)
Iterate type arguments, and validate them according to corresponding variable bounds.
|
int |
TypeVariableBinding.boundCheck(Substitution substitution,
TypeBinding argumentType,
Scope scope)
Returns true if the argument type satisfies all bounds of the type parameter
|
boolean |
MethodBinding.canBeSeenBy(InvocationSite invocationSite,
Scope scope) |
boolean |
ReferenceBinding.canBeSeenBy(Scope scope)
Answer true if the receiver is visible to the type provided by the scope.
|
boolean |
FieldBinding.canBeSeenBy(TypeBinding receiverType,
InvocationSite invocationSite,
Scope scope) |
boolean |
MethodBinding.canBeSeenBy(TypeBinding receiverType,
InvocationSite invocationSite,
Scope scope) |
TypeBinding |
TypeBinding.capture(Scope scope,
int position)
Perform capture conversion on a given type (only effective on parameterized type with wildcards)
|
TypeBinding |
ParameterizedTypeBinding.capture(Scope scope,
int position)
Perform capture conversion for a parameterized type with wildcard arguments
|
void |
ImplicitNullAnnotationVerifier.checkImplicitNullAnnotations(MethodBinding currentMethod,
AbstractMethodDeclaration srcMethod,
boolean complain,
Scope scope)
Check and fill in implicit annotations from overridden methods and from default.
|
void |
TypeBinding.collectSubstitutes(Scope scope,
TypeBinding actualType,
InferenceContext inferenceContext,
int constraint)
Collect the substitutes into a map for certain type variables inside the receiver type
e.g.
|
void |
WildcardBinding.collectSubstitutes(Scope scope,
TypeBinding actualType,
InferenceContext inferenceContext,
int constraint)
Collect the substitutes into a map for certain type variables inside the receiver type
e.g.
|
void |
ArrayBinding.collectSubstitutes(Scope scope,
TypeBinding actualType,
InferenceContext inferenceContext,
int constraint)
Collect the substitutes into a map for certain type variables inside the receiver type
e.g.
|
void |
ParameterizedTypeBinding.collectSubstitutes(Scope scope,
TypeBinding actualType,
InferenceContext inferenceContext,
int constraint)
Collect the substitutes into a map for certain type variables inside the receiver type
e.g.
|
void |
TypeVariableBinding.collectSubstitutes(Scope scope,
TypeBinding actualType,
InferenceContext inferenceContext,
int constraint)
Collect the substitutes into a map for certain type variables inside the receiver type
e.g.
|
static MethodBinding |
ParameterizedGenericMethodBinding.computeCompatibleMethod(MethodBinding originalMethod,
TypeBinding[] arguments,
Scope scope,
InvocationSite invocationSite)
Perform inference of generic method type parameters and/or expected type
|
ParameterizedMethodBinding |
LookupEnvironment.createGetClassMethod(TypeBinding receiverType,
MethodBinding originalMethod,
Scope scope) |
void |
FieldBinding.fillInDefaultNonNullness(FieldDeclaration sourceField,
Scope scope) |
ReferenceBinding |
LookupEnvironment.getResolvedType(char[][] compoundName,
Scope scope) |
static TypeBinding[] |
Scope.greaterLowerBound(TypeBinding[] types,
Scope scope) |
void |
CaptureBinding.initializeBounds(Scope scope,
ParameterizedTypeBinding capturedParameterizedType)
Initialize capture bounds using substituted supertypes
e.g.
|
static ParameterizedMethodBinding |
ParameterizedMethodBinding.instantiateGetClass(TypeBinding receiverType,
MethodBinding originalMethod,
Scope scope)
The type of x.getClass() is substituted from 'Class extends Object>' into: 'Class extends raw(X)>
|
boolean |
BaseTypeBinding.isCompatibleWith(TypeBinding left,
Scope captureScope) |
abstract boolean |
TypeBinding.isCompatibleWith(TypeBinding right,
Scope scope) |
boolean |
ReferenceBinding.isCompatibleWith(TypeBinding otherType,
Scope captureScope)
Answer true if the receiver type can be assigned to the argument type (right)
In addition to improving performance, caching also ensures there is no infinite regression
since per nature, the compatibility check is recursive through parameterized type arguments (122775)
|
boolean |
ArrayBinding.isCompatibleWith(TypeBinding otherType,
Scope captureScope) |
protected void |
ImplicitNullAnnotationVerifier.recordDeferredInheritedNullness(Scope scope,
ASTNode location,
MethodBinding inheritedMethod,
Boolean inheritedNonNullness,
org.eclipse.jdt.internal.compiler.lookup.ImplicitNullAnnotationVerifier.InheritedNonNullnessInfo nullnessInfo) |
void |
LocalVariableBinding.setAnnotations(AnnotationBinding[] annotations,
Scope scope) |
static TypeBinding |
TypeBinding.wellKnownType(Scope scope,
int id)
Match a well-known type id to its binding
|
| Constructor and Description |
|---|
BlockScope(int kind,
Scope parent) |
ClassScope(Scope parent,
TypeDeclaration context) |
Scope(int kind,
Scope parent) |
| Modifier and Type | Method and Description |
|---|---|
void |
ProblemReporter.javadocHiddenReference(int sourceStart,
int sourceEnd,
Scope scope,
int modifiers) |
void |
ProblemReporter.unsafeCast(CastExpression castExpression,
Scope scope) |
Copyright © 2013. All rights reserved.