public abstract class TypeReference extends Expression
| Modifier and Type | Class and Description |
|---|---|
static class |
TypeReference.AnnotationPosition
Simplified specification of where in a (possibly complex) type reference
we are looking for type annotations.
|
TypeConstants.CloseMethodRecord| Modifier and Type | Field and Description |
|---|---|
Annotation[][] |
annotations |
static TypeReference[] |
NO_TYPE_ARGUMENTS |
constant, implicitConversion, resolvedType, statementEndCOMPLAINED_FAKE_REACHABLE, COMPLAINED_UNREACHABLE, NOT_COMPLAINEDBit1, Bit10, Bit11, Bit12, Bit13, Bit14, Bit15, Bit16, Bit17, Bit18, Bit19, Bit2, Bit20, Bit21, Bit22, Bit23, Bit24, Bit25, Bit26, Bit27, Bit28, Bit29, Bit3, Bit30, Bit31, Bit32, Bit32L, Bit33L, Bit34L, Bit35L, Bit36L, Bit37L, Bit38L, Bit39L, Bit4, Bit40L, Bit41L, Bit42L, Bit43L, Bit44L, Bit45L, Bit46L, Bit47L, Bit48L, Bit49L, Bit5, Bit50L, Bit51L, Bit52L, Bit53L, Bit54L, Bit55L, Bit56L, Bit57L, Bit58L, Bit59L, Bit6, Bit60L, Bit61L, Bit62L, Bit63L, Bit64L, Bit7, Bit8, Bit9, bits, BlockExit, CanBeStatic, ContainsAssertion, DepthMASK, DepthSHIFT, DidResolve, DisableUnnecessaryCastCheck, DiscardEnclosingInstance, DocumentedCasesOmitted, DocumentedFallthrough, Empty, ErrorInSignature, FirstAssignmentToLocal, GenerateCheckcast, HasAbstractMethods, HasAllMethodBodies, HasBeenGenerated, HasBeenResolved, HasFunctionalInterfaceTypes, HasLocalType, HasSyntaxErrors, HasTypeAnnotations, IgnoreNoEffectAssignCheck, IgnoreRawTypeCheck, InsideExpressionStatement, InsideJavadoc, INVOCATION_ARGUMENT_OK, INVOCATION_ARGUMENT_UNCHECKED, INVOCATION_ARGUMENT_WILDCARD, IsAnnotationDefaultValue, IsAnonymousType, IsAnySubRoutineEscaping, IsArgument, IsCapturedOuterLocal, IsCompoundAssigned, IsDefaultConstructor, IsDiamond, IsElseIfStatement, IsElseStatementUnreachable, IsForeachElementVariable, IsImplicitThis, IsImplicitUnit, IsLocalDeclarationReachable, IsLocalType, IsMemberType, IsNonNull, IsReachable, IsRecovered, IsReturnedValue, IsSecondaryType, IsStrictlyAssigned, IsSubRoutineEscaping, IsSuperType, IsSynchronized, IsSynthetic, IsThenStatementUnreachable, IsTryBlockExiting, IsTypeElided, IsUnionType, IsUsefulEmptyStatement, IsVarArgs, LabelUsed, NeededScope, NeedFreeReturn, NeedReceiverGenericCast, NO_ARGUMENTS, OnDemand, OperatorMASK, OperatorSHIFT, OverridingMethodWithSupercall, ParenthesizedMASK, ParenthesizedSHIFT, ResolveJavadoc, RestrictiveFlagMASK, ReturnTypeIDMASK, ShadowsOuterLocal, sourceEnd, sourceStart, SuperAccess, ThenExit, Unchecked, UndocumentedEmptyBlock, UnnecessaryCast, UnsafeCast, UsedANNOTATION, ANNOTATION_PREFIX, ANNOTATION_SUFFIX, ANONYM_PREFIX, ANONYM_SUFFIX, ANONYMOUS_METHOD, APACHE, APACHE_DBUTILS, APACHE_IOUTILS, ASSERT_CLASS, ASSERT_FALSE, ASSERT_NOTNULL, ASSERT_NULL, ASSERT_TRUE, AUTOWIRED, BEANS, BOOLEAN, BYTE, CAPTURE18, CHAR, CharArray_JAVA_IO_OBJECTINPUTSTREAM, CharArray_JAVA_IO_OBJECTOUTPUTSTREAM, CharArray_JAVA_IO_OBJECTSTREAMFIELD, CharArray_JAVA_LANG_ANNOTATION_ANNOTATION, CharArray_JAVA_LANG_ENUM, CharArray_JAVA_LANG_OBJECT, CHECK_ARGUMENT, CHECK_NOT_NULL, CHECK_STATE, CLINIT, CLONE, CLOSE, CLOSE_QUIETLY, closeMethods, COM, COM_GOOGLE_COMMON_BASE_PRECONDITIONS, COM_GOOGLE_INJECT_INJECT, COMMONS, COMPILER, CONSTRAINT_EQUAL, CONSTRAINT_EXTENDS, CONSTRAINT_SUPER, CORE, DEFAULT_LOCATION__ARRAY_CONTENTS, DEFAULT_LOCATION__FIELD, DEFAULT_LOCATION__PARAMETER, DEFAULT_LOCATION__RETURN_TYPE, DEFAULT_LOCATION__TYPE_ARGUMENT, DEFAULT_LOCATION__TYPE_BOUND, DEFAULT_LOCATION__TYPE_PARAMETER, DESERIALIZE_LAMBDA, DOM, DOUBLE, ECLIPSE, EQUALS, FACTORY, FLOAT, FRAMEWORK, GETCLASS, GOOGLE, GUAVA_CLOSEABLES, HASHCODE, INIT, INJECT_PACKAGE, INJECT_TYPE, INT, INTERNAL, INVOKE, IO, IS_NOTNULL, IS_TRUE, ITYPEBINDING, JAVA, JAVA_IO, JAVA_IO_CLOSEABLE, JAVA_IO_EXTERNALIZABLE, JAVA_IO_IOEXCEPTION, JAVA_IO_OBJECTINPUTSTREAM, JAVA_IO_OBJECTOUTPUTSTREAM, JAVA_IO_OBJECTSTREAMEXCEPTION, JAVA_IO_PRINTSTREAM, JAVA_IO_RESOURCE_FREE_CLOSEABLES, JAVA_IO_SERIALIZABLE, JAVA_IO_WRAPPER_CLOSEABLES, JAVA_LANG, JAVA_LANG_ANNOTATION_ANNOTATION, JAVA_LANG_ANNOTATION_DOCUMENTED, JAVA_LANG_ANNOTATION_ELEMENTTYPE, JAVA_LANG_ANNOTATION_INHERITED, JAVA_LANG_ANNOTATION_REPEATABLE, JAVA_LANG_ANNOTATION_RETENTION, JAVA_LANG_ANNOTATION_RETENTIONPOLICY, JAVA_LANG_ANNOTATION_TARGET, JAVA_LANG_ASSERTIONERROR, JAVA_LANG_AUTOCLOSEABLE, JAVA_LANG_BOOLEAN, JAVA_LANG_BYTE, JAVA_LANG_CHARACTER, JAVA_LANG_CLASS, JAVA_LANG_CLASSNOTFOUNDEXCEPTION, JAVA_LANG_CLONEABLE, JAVA_LANG_DEPRECATED, JAVA_LANG_DOUBLE, JAVA_LANG_ENUM, JAVA_LANG_ERROR, JAVA_LANG_EXCEPTION, JAVA_LANG_FLOAT, JAVA_LANG_FUNCTIONAL_INTERFACE, JAVA_LANG_ILLEGALARGUMENTEXCEPTION, JAVA_LANG_INTEGER, JAVA_LANG_INVOKE_LAMBDAMETAFACTORY, JAVA_LANG_INVOKE_METHODHANDLE_$_POLYMORPHICSIGNATURE, JAVA_LANG_INVOKE_METHODHANDLE_POLYMORPHICSIGNATURE, JAVA_LANG_INVOKE_METHODHANDLES, JAVA_LANG_INVOKE_SERIALIZEDLAMBDA, JAVA_LANG_ITERABLE, JAVA_LANG_LONG, JAVA_LANG_NOCLASSDEFERROR, JAVA_LANG_OBJECT, JAVA_LANG_OVERRIDE, JAVA_LANG_REFLECT_CONSTRUCTOR, JAVA_LANG_REFLECT_FIELD, JAVA_LANG_REFLECT_METHOD, JAVA_LANG_RUNTIMEEXCEPTION, JAVA_LANG_SAFEVARARGS, JAVA_LANG_SHORT, JAVA_LANG_STRING, JAVA_LANG_STRINGBUFFER, JAVA_LANG_STRINGBUILDER, JAVA_LANG_SUPPRESSWARNINGS, JAVA_LANG_SYSTEM, JAVA_LANG_THROWABLE, JAVA_LANG_VOID, JAVA_NIO_FILE_FILES, JAVA_UTIL_COLLECTION, JAVA_UTIL_ITERATOR, JAVA_UTIL_OBJECTS, JAVA_UTIL_ZIP_WRAPPER_CLOSEABLES, JAVAX, JAVAX_ANNOTATION_INJECT_INJECT, JAVAX_RMI_CORBA_STUB, JDT, JUNIT, JUNIT_FRAMEWORK_ASSERT, LAMBDA_TYPE, LANG, LANG3, LENGTH, LONG, LOOKUP, MAIN, MISMATCH, NOT_NULL, NULL, OBJECT, OK, OPTIONAL, ORG, ORG_APACHE_COMMONS_LANG_VALIDATE, ORG_APACHE_COMMONS_LANG3_VALIDATE, ORG_ECLIPSE_CORE_RUNTIME_ASSERT, ORG_ECLIPSE_JDT_CORE_DOM_ITYPEBINDING, ORG_ECLIPSE_JDT_INTERNAL_COMPILER_LOOKUP_TYPEBINDING, ORG_JUNIT_ASSERT, ORG_SPRING_AUTOWIRED, OTHER_WRAPPER_CLOSEABLES, PACKAGE_INFO_NAME, READOBJECT, READRESOLVE, REFLECT, REQUIRE_NON_NULL, REQUIRED, RESOURCE_FREE_CLOSEABLE_STREAM, RUNTIME, SERIALPERSISTENTFIELDS, SERIALVERSIONUID, SHORT, SPRING, SYNTHETIC_ACCESS_METHOD_PREFIX, SYNTHETIC_ASSERT_DISABLED, SYNTHETIC_CLASS, SYNTHETIC_ENCLOSING_INSTANCE_PREFIX, SYNTHETIC_ENUM_CONSTANT_INITIALIZATION_METHOD_PREFIX, SYNTHETIC_ENUM_VALUES, SYNTHETIC_OUTER_LOCAL_PREFIX, SYNTHETIC_STATIC_FACTORY, SYNTHETIC_SWITCH_ENUM_TABLE, TYPE, TYPE_PARAMETER_TARGET, TYPE_USE_TARGET, TYPEBINDING, UNCHECKED, UPPER_ANNOTATION_TYPE, UPPER_CLASS, UPPER_CONSTRUCTOR, UPPER_FIELD, UPPER_LOCAL_VARIABLE, UPPER_METHOD, UPPER_PACKAGE, UPPER_PARAMETER, UPPER_RUNTIME, UPPER_SOURCE, UTIL, VALIDATE_CLASS, VALUE, VALUEOF, VALUES, VOID, WILDCARD_CAPTURE, WILDCARD_CAPTURE_NAME_PREFIX, WILDCARD_CAPTURE_NAME_SUFFIX, WILDCARD_CAPTURE_SIGNABLE_NAME_SUFFIX, WILDCARD_EXTENDS, WILDCARD_MINUS, WILDCARD_NAME, WILDCARD_PLUS, WILDCARD_STAR, WILDCARD_SUPER, WRITEOBJECT, WRITEREPLACE, ZIPBitAutoCloseable, BitCloseable, BitResourceFreeCloseable, BitUninitialized, BitUninternedType, BitWrapperCloseable, Boolean2Boolean, Boolean2Int, Boolean2String, BOXING, Byte2Byte, Byte2Char, Byte2Double, Byte2Float, Byte2Int, Byte2Long, Byte2Short, Byte2String, Char2Byte, Char2Char, Char2Double, Char2Float, Char2Int, Char2Long, Char2Short, Char2String, COMPILE_TYPE_MASK, Double2Byte, Double2Char, Double2Double, Double2Float, Double2Int, Double2Long, Double2Short, Double2String, Float2Byte, Float2Char, Float2Double, Float2Float, Float2Int, Float2Long, Float2Short, Float2String, IMPLICIT_CONVERSION_MASK, InheritableBits, Int2Byte, Int2Char, Int2Double, Int2Float, Int2Int, Int2Long, Int2Short, Int2String, Long2Byte, Long2Char, Long2Double, Long2Float, Long2Int, Long2Long, Long2Short, Long2String, NoId, Null2Null, Null2String, Object2boolean, Object2byte, Object2char, Object2double, Object2float, Object2int, Object2long, Object2Object, Object2short, Object2String, Short2Byte, Short2Char, Short2Double, Short2Float, Short2Int, Short2Long, Short2Short, Short2String, String2String, T_boolean, T_byte, T_char, T_ComGoogleCommonBasePreconditions, T_ComGoogleInjectInject, T_ConfiguredAnnotationNonNull, T_ConfiguredAnnotationNonNullByDefault, T_ConfiguredAnnotationNullable, T_double, T_float, T_int, T_JavaIoException, T_JavaIoExternalizable, T_JavaIoObjectStreamException, T_JavaIoPrintStream, T_JavaIoSerializable, T_JavaLangAnnotationAnnotation, T_JavaLangAnnotationDocumented, T_JavaLangAnnotationElementType, T_JavaLangAnnotationInherited, T_JavaLangAnnotationRepeatable, T_JavaLangAnnotationRetention, T_JavaLangAnnotationRetentionPolicy, T_JavaLangAnnotationTarget, T_JavaLangAssertionError, T_JavaLangAutoCloseable, T_JavaLangBoolean, T_JavaLangByte, T_JavaLangCharacter, T_JavaLangClass, T_JavaLangClassNotFoundException, T_JavaLangCloneable, T_JavaLangDeprecated, T_JavaLangDouble, T_JavaLangEnum, T_JavaLangError, T_JavaLangException, T_JavaLangFloat, T_JavaLangFunctionalInterface, T_JavaLangIllegalArgumentException, T_JavaLangInteger, T_JavaLangInvokeMethodHandlePolymorphicSignature, T_JavaLangIterable, T_JavaLangLong, T_JavaLangNoClassDefError, T_JavaLangObject, T_JavaLangOverride, T_JavaLangReflectConstructor, T_JavaLangReflectField, T_JavaLangReflectMethod, T_JavaLangRuntimeException, T_JavaLangSafeVarargs, T_JavaLangShort, T_JavaLangString, T_JavaLangStringBuffer, T_JavaLangStringBuilder, T_JavaLangSuppressWarnings, T_JavaLangSystem, T_JavaLangThrowable, T_JavaLangVoid, T_JavaUtilCollection, T_JavaUtilIterator, T_JavaUtilObjects, T_JavaxInjectInject, T_JunitFrameworkAssert, T_LastWellKnownTypeId, T_long, T_null, T_OrgApacheCommonsLang3Validate, T_OrgApacheCommonsLangValidate, T_OrgEclipseCoreRuntimeAssert, T_OrgJunitAssert, T_OrgSpringframeworkBeansFactoryAnnotationAutowired, T_short, T_undefined, T_void, UNBOXING| Constructor and Description |
|---|
TypeReference() |
| Modifier and Type | Method and Description |
|---|---|
void |
aboutToResolve(Scope scope) |
FlowInfo |
analyseCode(BlockScope currentScope,
FlowContext flowContext,
FlowInfo flowInfo) |
abstract TypeReference |
augmentTypeWithAdditionalDimensions(int additionalDimensions,
Annotation[][] additionalAnnotations,
boolean isVarargs) |
static TypeReference |
baseTypeReference(int baseType,
int dim) |
static TypeReference |
baseTypeReference(int baseType,
int dim,
Annotation[][] dimAnnotations) |
void |
checkBounds(Scope scope) |
protected void |
checkNullConstraints(Scope scope,
TypeBinding[] variables,
int rank)
Check whether this type reference conforms to the null constraints defined for the corresponding type variable.
|
protected void |
checkNullConstraints(Scope scope,
TypeReference[] typeArguments)
Check all typeArguments against null constraints on their corresponding type variables.
|
static boolean |
containsNullAnnotation(Annotation[] annotations) |
int |
dimensions() |
int |
extraDimensions()
This method is used to return the array dimension declared after the
name of a local or a field declaration.
|
Annotation |
findAnnotation(long nullTagBits)
Retrieve the null annotation that has been translated to the given nullTagBits.
|
AnnotationContext[] |
getAllAnnotationContexts(int targetType) |
void |
getAllAnnotationContexts(int targetType,
int info,
int typeIndex,
java.util.List allAnnotationContexts) |
void |
getAllAnnotationContexts(int targetType,
int info,
java.util.List allAnnotationContexts)
info can be either a type index (superclass/superinterfaces) or a pc into the bytecode
|
void |
getAllAnnotationContexts(int targetType,
int info,
java.util.List allAnnotationContexts,
Annotation[] se7Annotations) |
void |
getAllAnnotationContexts(int targetType,
int info,
java.util.List allAnnotationContexts,
Annotation[][] annotationsOnDimensions,
int dimensions)
info can be either a type index (superclass/superinterfaces) or a pc into the bytecode
|
void |
getAllAnnotationContexts(int targetType,
java.util.List allAnnotationContexts) |
int |
getAnnotatableLevels() |
Annotation[][] |
getAnnotationsOnDimensions() |
Annotation[][] |
getAnnotationsOnDimensions(boolean useSourceOrder) |
abstract char[] |
getLastToken() |
protected Annotation[][] |
getMergedAnnotationsOnDimensions(int additionalDimensions,
Annotation[][] additionalAnnotations) |
char[][] |
getParameterizedTypeName() |
TypeReference[][] |
getTypeArguments() |
protected abstract TypeBinding |
getTypeBinding(Scope scope) |
TypeBinding |
getTypeBindingPublic(Scope scope) |
abstract char[][] |
getTypeName() |
TypeReference[] |
getTypeReferences() |
boolean |
hasNullTypeAnnotation(TypeReference.AnnotationPosition position) |
protected TypeBinding |
internalResolveType(Scope scope,
int location) |
boolean |
isBaseTypeReference() |
boolean |
isParameterizedTypeReference() |
boolean |
isTypeReference() |
boolean |
isUnionType() |
boolean |
isVarargs() |
boolean |
isWildcard() |
protected void |
reportDeprecatedType(TypeBinding type,
Scope scope) |
protected void |
reportDeprecatedType(TypeBinding type,
Scope scope,
int index) |
protected void |
reportInvalidType(Scope scope) |
protected void |
resolveAnnotations(Scope scope,
int location) |
TypeBinding |
resolveSuperType(ClassScope scope) |
TypeBinding |
resolveType(BlockScope blockScope)
Resolve the type of this expression in the context of a blockScope
|
TypeBinding |
resolveType(BlockScope scope,
boolean checkBounds) |
TypeBinding |
resolveType(BlockScope scope,
boolean checkBounds,
int location) |
TypeBinding |
resolveType(ClassScope scope)
Resolve the type of this expression in the context of a classScope
|
TypeBinding |
resolveType(ClassScope scope,
int location) |
TypeBinding |
resolveTypeArgument(BlockScope blockScope,
ReferenceBinding genericType,
int rank) |
TypeBinding |
resolveTypeArgument(ClassScope classScope,
ReferenceBinding genericType,
int rank) |
void |
setAnnotationsOnDimensions(Annotation[][] annotationsOnDimensions) |
abstract void |
traverse(ASTVisitor visitor,
BlockScope scope)
Traverse an expression in the context of a blockScope
|
abstract void |
traverse(ASTVisitor visitor,
ClassScope scope)
Traverse an expression in the context of a classScope
|
analyseCode, checkCastTypesCompatibility, checkNPE, checkNPEbyUnboxing, checkUnsafeCast, computeConversion, forcedToBeRaw, generateCode, generateCode, generateOptimizedBoolean, generateOptimizedStringConcatenation, generateOptimizedStringConcatenationCreation, getDirectBinding, getPolyExpressions, isBoxingCompatibleWith, isCompactableOperation, isCompatibleWith, isConstantValueOfTypeAssignableToType, isConstantValueRepresentable, isExactMethodReference, isFunctionalType, isPertinentToApplicability, isPolyExpression, isPolyExpression, isPotentiallyCompatibleWith, localVariableBinding, markAsNonNull, nullAnnotatedVariableBinding, nullStatus, optimizedBooleanConstant, postConversionType, print, printExpression, printStatement, resolve, resolveExpressionExpecting, resolveTypeExpecting, reusableJSRTarget, setExpectedType, setExpressionContext, sIsMoreSpecific, statementExpression, tagAsNeedCheckCast, tagAsUnnecessaryCast, toTypeReferenceanalyseArguments, branchChainTo, breaksOut, checkAgainstNullTypeAnnotation, complainIfUnreachable, completesByContinue, continuesAtOuterLabel, doesNotCompleteNormally, expectedType, findConstructorBinding, generateArguments, getExpressionContext, invocationTargetType, isBoxingCompatible, isEmptyBlock, isKnowDeadCodePattern, isValidJavaStatement, resolveCaseacceptPotentiallyCompatibleMethods, checkingPotentialCompatibility, checkInvocationArguments, concreteStatement, copySE8AnnotationsToType, isFieldUseDeprecated, isImplicitThis, isMethodUseDeprecated, isQualifiedSuper, isSuper, isThis, isTypeUseDeprecated, isUnqualifiedSuper, printAnnotations, printIndent, printModifiers, receiverIsImplicitThis, resolveAnnotations, resolveAnnotations, resolveAnnotations, resolveDeprecatedAnnotations, resolvePolyExpressionArguments, sourceEnd, sourceStart, toStringpublic static final TypeReference[] NO_TYPE_ARGUMENTS
public Annotation[][] annotations
public static final TypeReference baseTypeReference(int baseType, int dim, Annotation[][] dimAnnotations)
public static final TypeReference baseTypeReference(int baseType, int dim)
public void aboutToResolve(Scope scope)
public FlowInfo analyseCode(BlockScope currentScope, FlowContext flowContext, FlowInfo flowInfo)
analyseCode in class Expressionpublic void checkBounds(Scope scope)
public abstract TypeReference augmentTypeWithAdditionalDimensions(int additionalDimensions, Annotation[][] additionalAnnotations, boolean isVarargs)
protected Annotation[][] getMergedAnnotationsOnDimensions(int additionalDimensions, Annotation[][] additionalAnnotations)
public int dimensions()
public int extraDimensions()
public AnnotationContext[] getAllAnnotationContexts(int targetType)
public void getAllAnnotationContexts(int targetType,
int info,
java.util.List allAnnotationContexts)
targetType - info - allAnnotationContexts - public void getAllAnnotationContexts(int targetType,
int info,
java.util.List allAnnotationContexts,
Annotation[] se7Annotations)
public void getAllAnnotationContexts(int targetType,
int info,
java.util.List allAnnotationContexts,
Annotation[][] annotationsOnDimensions,
int dimensions)
public void getAllAnnotationContexts(int targetType,
int info,
int typeIndex,
java.util.List allAnnotationContexts)
public void getAllAnnotationContexts(int targetType,
java.util.List allAnnotationContexts)
public Annotation[][] getAnnotationsOnDimensions()
public TypeReference[][] getTypeArguments()
public Annotation[][] getAnnotationsOnDimensions(boolean useSourceOrder)
useSourceOrder - if true annotations on dimensions are returned in source order, otherwise they are returned per
how they ought to be interpreted by a type system, or external persistence view. For example, given the following:
int @Nullable [] f @NonNull [] ==> f is really a @NonNull array of @Nullable arrays of ints. This is the type system
view since extended dimensions bind more readily than type components that precede the identifier. This is how it ought
to be encoded in bindings and how it ought to be persisted in class files. However for DOM/AST construction, we need the
dimensions in source order, so we provide a way for the clients to ask what they want.public void setAnnotationsOnDimensions(Annotation[][] annotationsOnDimensions)
public abstract char[] getLastToken()
public char[][] getParameterizedTypeName()
public TypeBinding getTypeBindingPublic(Scope scope)
protected abstract TypeBinding getTypeBinding(Scope scope)
public abstract char[][] getTypeName()
protected TypeBinding internalResolveType(Scope scope, int location)
public boolean isTypeReference()
isTypeReference in class Expressionpublic boolean isWildcard()
public boolean isUnionType()
public boolean isVarargs()
public boolean isParameterizedTypeReference()
protected void reportDeprecatedType(TypeBinding type, Scope scope, int index)
protected void reportDeprecatedType(TypeBinding type, Scope scope)
protected void reportInvalidType(Scope scope)
public TypeBinding resolveSuperType(ClassScope scope)
public final TypeBinding resolveType(BlockScope blockScope)
ExpressionresolveType in class Expressionpublic TypeBinding resolveType(BlockScope scope, boolean checkBounds)
public TypeBinding resolveType(BlockScope scope, boolean checkBounds, int location)
public TypeBinding resolveType(ClassScope scope)
ExpressionresolveType in class Expressionpublic TypeBinding resolveType(ClassScope scope, int location)
public TypeBinding resolveTypeArgument(BlockScope blockScope, ReferenceBinding genericType, int rank)
public TypeBinding resolveTypeArgument(ClassScope classScope, ReferenceBinding genericType, int rank)
public abstract void traverse(ASTVisitor visitor, BlockScope scope)
Expressiontraverse in class Expressionpublic abstract void traverse(ASTVisitor visitor, ClassScope scope)
Expressiontraverse in class Expressionprotected void resolveAnnotations(Scope scope, int location)
public int getAnnotatableLevels()
protected void checkNullConstraints(Scope scope, TypeReference[] typeArguments)
protected void checkNullConstraints(Scope scope, TypeBinding[] variables, int rank)
public Annotation findAnnotation(long nullTagBits)
public boolean hasNullTypeAnnotation(TypeReference.AnnotationPosition position)
public static boolean containsNullAnnotation(Annotation[] annotations)
public TypeReference[] getTypeReferences()
public boolean isBaseTypeReference()