Class ASTNode
java.lang.Object
org.aspectj.org.eclipse.jdt.internal.compiler.ast.ASTNode
- All Implemented Interfaces:
TypeConstants
,TypeIds
- Direct Known Subclasses:
AbstractMethodDeclaration
,AssistNodeParentAnnotationArrayInitializer
,CompilationUnitDeclaration
,ImportReference
,Javadoc
,MemberValuePair
,ModuleDeclaration
,ModuleReference
,ModuleStatement
,PointcutDesignator
,PseudoToken
,PseudoTokens
,Statement
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.aspectj.org.eclipse.jdt.internal.compiler.lookup.TypeConstants
TypeConstants.BoundCheckStatus, TypeConstants.CloseMethodRecord, TypeConstants.DangerousMethod
-
Field Summary
Modifier and TypeFieldDescriptionstatic int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static long
static long
static long
static long
static long
static long
static long
static long
static int
static long
static long
static long
static long
static long
static long
static long
static long
static long
static long
static int
static long
static long
static long
static long
static long
static long
static long
static long
static long
static long
static int
static long
static long
static long
static long
static long
static int
static int
static int
int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
static Argument[]
static RecordComponent[]
static int
static int
static int
static int
static int
static int
static int
static int
static int
static int
int
int
static int
static int
static int
static int
static int
static int
static int
Fields inherited from interface org.aspectj.org.eclipse.jdt.internal.compiler.lookup.TypeConstants
ANNOTATION, ANNOTATION_PREFIX, ANNOTATION_SUFFIX, ANONYM_PREFIX, ANONYM_SUFFIX, ANONYMOUS_METHOD, APACHE, APACHE_DBUTILS, APACHE_IOUTILS, API, ASSERT_CLASS, ASSERT_FALSE, ASSERT_NOTNULL, ASSERT_NULL, ASSERT_TRUE, ASSERTIONS_CLASS, AUTOMATIC_MODULE_NAME, AUTOWIRED, BEANS, BOOLEAN, BYTE, CAPTURE18, CHANNELS, 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, CharArray_JAVA_LANG_RECORD, CharArray_JAVA_LANG_RECORD_SLASH, 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, CONTAINS, CONTAINS_ALL, CONTAINS_KEY, CONTAINS_VALUE, 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, ESSENTIAL_API, FACTORY, FLOAT, FLUENT_RESOURCE_CLASSES, FOR_REMOVAL, FRAMEWORK, GET, GETCLASS, GOOGLE, GUAVA_CLOSEABLES, HASHCODE, IMPLEMENTS, INDEX_OF, INIT, INJECT_PACKAGE, INJECT_TYPE, INT, INTERNAL, INVOKE, IO, IS_INSTANCE, IS_NOTNULL, IS_NULL, IS_TRUE, ITYPEBINDING, JAVA, JAVA_BASE, 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, 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_INCOMPATIBLECLASSCHANGEERROR, 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_NOSUCHFIELDERROR, JAVA_LANG_OBJECT, JAVA_LANG_OVERRIDE, JAVA_LANG_RECORD, JAVA_LANG_REFLECT_CONSTRUCTOR, JAVA_LANG_REFLECT_FIELD, JAVA_LANG_REFLECT_METHOD, JAVA_LANG_RUNTIME_OBJECTMETHODS, JAVA_LANG_RUNTIME_SWITCHBOOTSTRAPS, 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_ARRAYS, JAVA_UTIL_COLLECTION, JAVA_UTIL_ITERATOR, JAVA_UTIL_LIST, JAVA_UTIL_MAP, JAVA_UTIL_OBJECTS, JAVA_UTIL_STREAM, JAVA_UTIL_ZIP_WRAPPER_CLOSEABLES, JAVAC, JAVAX, JAVAX_ANNOTATION_INJECT_INJECT, JAVAX_RMI_CORBA_STUB, JDK, JDK_INTERNAL_JAVAC_PREVIEW_FEATURE, JDK_INTERNAL_PREVIEW_FEATURE, JDK_INTERNAL_VALUEBASED, JDT, JUNIT, JUNIT_FRAMEWORK_ASSERT, JUPITER, KEYWORD_EXTENDS, LAMBDA_TYPE, LANG, LANG3, LAST_INDEX_OF, LENGTH, LONG, LOOKUP, MAIN, META_INF_MANIFEST_MF, METHOD_SOURCE, MODULE_INFO_CLASS_NAME, MODULE_INFO_CLASS_NAME_STRING, MODULE_INFO_FILE_NAME, MODULE_INFO_FILE_NAME_STRING, MODULE_INFO_NAME, MODULE_INFO_NAME_STRING, NEXT, NIO, NON_NULL, NOT_NULL, NULL, OBJECT, ONE_UTIL_STREAMEX, 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_JUNIT_JUPITER_API_ASSERTIONS, ORG_JUNIT_METHOD_SOURCE, ORG_SPRING_AUTOWIRED, OTHER_WRAPPER_CLOSEABLES, PACKAGE_INFO_NAME, PARAMS, PERMITS, PROVIDER, READOBJECT, READRESOLVE, RECORD_CLASS, RECORD_RESTRICTED_IDENTIFIER, REFLECT, REMOVE, REMOVE_ALL, REQUIRE_NON_NULL, REQUIRED, RESOURCE_FREE_CLOSEABLE_J_U_STREAMS, RESOURCE_FREE_CLOSEABLE_STREAMEX, RETAIN_ALL, RUNTIME, SEALED, SERIALPERSISTENTFIELDS, SERIALVERSIONUID, SHORT, SINCE, 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, TOSTRING, TYPE, TYPE_PARAMETER_TARGET, TYPE_USE_TARGET, TYPEBINDING, UPPER_ANNOTATION_TYPE, UPPER_CLASS, UPPER_CONSTRUCTOR, UPPER_FIELD, UPPER_LOCAL_VARIABLE, UPPER_METHOD, UPPER_MODULE, UPPER_PACKAGE, UPPER_PARAMETER, UPPER_RECORD_COMPONENT, UPPER_RUNTIME, UPPER_SOURCE, UTIL, VALIDATE_CLASS, VALUE, VALUEOF, VALUES, VAR, 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, YIELD, ZIP
Fields inherited from interface org.aspectj.org.eclipse.jdt.internal.compiler.lookup.TypeIds
BitAnyNullAnnotation, BitAutoCloseable, BitCloseable, BitCollection, BitList, BitMap, BitNonNullAnnotation, BitNonNullByDefaultAnnotation, BitNullableAnnotation, 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_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_JavaLangRecord, 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_JavaUtilList, T_JavaUtilMap, T_JavaUtilObjects, T_JavaxInjectInject, T_JdkInternalPreviewFeature, T_JunitFrameworkAssert, T_LastWellKnownTypeId, T_long, T_null, T_OrgApacheCommonsLang3Validate, T_OrgApacheCommonsLangValidate, T_OrgEclipseCoreRuntimeAssert, T_OrgJunitAssert, T_OrgJunitJupiterApiAssertions, T_OrgJunitJupiterParamsProviderMethodSource, T_OrgSpringframeworkBeansFactoryAnnotationAutowired, T_short, T_undefined, T_void, UNBOXING
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
acceptPotentiallyCompatibleMethods(MethodBinding[] methods)
boolean
static boolean
checkInvocationArguments(BlockScope scope, Expression receiver, TypeBinding receiverType, MethodBinding method, Expression[] arguments, TypeBinding[] argumentTypes, boolean argsContainCast, InvocationSite invocationSite)
static Annotation[]
copyRecordComponentAnnotations(Scope scope, Binding recipient, Annotation[] annotations)
static void
copySE8AnnotationsToType(BlockScope scope, Binding recipient, Annotation[] annotations, boolean annotatingEnumerator)
static Annotation[]
getRelevantAnnotations(Annotation[] annotations, long rcMask, List<AnnotationBinding> relevantAnnotations)
static void
handleNonNullByDefault(BlockScope scope, Annotation[] sourceAnnotations, LocalDeclaration localDeclaration)
"early" handling of NonNullByDefault because for local variables annotations are resolved after their type because of bug 96991.boolean
isFieldUseDeprecated(FieldBinding field, Scope scope, int filteredBits)
boolean
boolean
isMethodUseDeprecated(MethodBinding method, Scope scope, boolean isExplicitUse, InvocationSite invocation)
boolean
boolean
isSuper()
boolean
isThis()
boolean
isType()
Returns whether this node represents a binding of typeBinding.TYPE
boolean
isTypeUseDeprecated(TypeBinding type, Scope scope)
boolean
abstract StringBuffer
print(int indent, StringBuffer output)
static StringBuffer
printAnnotations(Annotation[] annotations, StringBuffer output)
static StringBuffer
printIndent(int indent, StringBuffer output)
static StringBuffer
printModifiers(int modifiers, StringBuffer output)
boolean
static TypeBinding
resolveAnnotations(BlockScope scope, Annotation[][] sourceAnnotations, TypeBinding type)
Resolve JSR308 annotations on a type reference, array creation expression or a wildcard.static void
resolveAnnotations(BlockScope scope, Annotation[] sourceAnnotations, Binding recipient)
static AnnotationBinding[]
resolveAnnotations(BlockScope scope, Annotation[] sourceAnnotations, Binding recipient, boolean copySE8AnnotationsToType)
Resolve annotations, and check duplicates, answers combined tagBits for recognized standard annotations.static void
resolveDeprecatedAnnotations(BlockScope scope, Annotation[] annotations, Binding recipient)
Figures if @Deprecated annotation is specified, do not resolve entire annotations.static MethodBinding
resolvePolyExpressionArguments(Invocation invocation, MethodBinding method, TypeBinding[] argumentTypes, BlockScope scope)
After method lookup has produced 'methodBinding' but when poly expressions have been seen as arguments, inspect the arguments to trigger another round of resolving with improved target types from the methods parameters.int
int
toString()
void
traverse(ASTVisitor visitor, BlockScope scope)
-
Field Details
-
sourceStart
public int sourceStart -
sourceEnd
public int sourceEnd -
Bit1
public static final int Bit1- See Also:
- Constant Field Values
-
Bit2
public static final int Bit2- See Also:
- Constant Field Values
-
Bit3
public static final int Bit3- See Also:
- Constant Field Values
-
Bit4
public static final int Bit4- See Also:
- Constant Field Values
-
Bit5
public static final int Bit5- See Also:
- Constant Field Values
-
Bit6
public static final int Bit6- See Also:
- Constant Field Values
-
Bit7
public static final int Bit7- See Also:
- Constant Field Values
-
Bit8
public static final int Bit8- See Also:
- Constant Field Values
-
Bit9
public static final int Bit9- See Also:
- Constant Field Values
-
Bit10
public static final int Bit10- See Also:
- Constant Field Values
-
Bit11
public static final int Bit11- See Also:
- Constant Field Values
-
Bit12
public static final int Bit12- See Also:
- Constant Field Values
-
Bit13
public static final int Bit13- See Also:
- Constant Field Values
-
Bit14
public static final int Bit14- See Also:
- Constant Field Values
-
Bit15
public static final int Bit15- See Also:
- Constant Field Values
-
Bit16
public static final int Bit16- See Also:
- Constant Field Values
-
Bit17
public static final int Bit17- See Also:
- Constant Field Values
-
Bit18
public static final int Bit18- See Also:
- Constant Field Values
-
Bit19
public static final int Bit19- See Also:
- Constant Field Values
-
Bit20
public static final int Bit20- See Also:
- Constant Field Values
-
Bit21
public static final int Bit21- See Also:
- Constant Field Values
-
Bit22
public static final int Bit22- See Also:
- Constant Field Values
-
Bit23
public static final int Bit23- See Also:
- Constant Field Values
-
Bit24
public static final int Bit24- See Also:
- Constant Field Values
-
Bit25
public static final int Bit25- See Also:
- Constant Field Values
-
Bit26
public static final int Bit26- See Also:
- Constant Field Values
-
Bit27
public static final int Bit27- See Also:
- Constant Field Values
-
Bit28
public static final int Bit28- See Also:
- Constant Field Values
-
Bit29
public static final int Bit29- See Also:
- Constant Field Values
-
Bit30
public static final int Bit30- See Also:
- Constant Field Values
-
Bit31
public static final int Bit31- See Also:
- Constant Field Values
-
Bit32
public static final int Bit32- See Also:
- Constant Field Values
-
Bit32L
public static final long Bit32L- See Also:
- Constant Field Values
-
Bit33L
public static final long Bit33L- See Also:
- Constant Field Values
-
Bit34L
public static final long Bit34L- See Also:
- Constant Field Values
-
Bit35L
public static final long Bit35L- See Also:
- Constant Field Values
-
Bit36L
public static final long Bit36L- See Also:
- Constant Field Values
-
Bit37L
public static final long Bit37L- See Also:
- Constant Field Values
-
Bit38L
public static final long Bit38L- See Also:
- Constant Field Values
-
Bit39L
public static final long Bit39L- See Also:
- Constant Field Values
-
Bit40L
public static final long Bit40L- See Also:
- Constant Field Values
-
Bit41L
public static final long Bit41L- See Also:
- Constant Field Values
-
Bit42L
public static final long Bit42L- See Also:
- Constant Field Values
-
Bit43L
public static final long Bit43L- See Also:
- Constant Field Values
-
Bit44L
public static final long Bit44L- See Also:
- Constant Field Values
-
Bit45L
public static final long Bit45L- See Also:
- Constant Field Values
-
Bit46L
public static final long Bit46L- See Also:
- Constant Field Values
-
Bit47L
public static final long Bit47L- See Also:
- Constant Field Values
-
Bit48L
public static final long Bit48L- See Also:
- Constant Field Values
-
Bit49L
public static final long Bit49L- See Also:
- Constant Field Values
-
Bit50L
public static final long Bit50L- See Also:
- Constant Field Values
-
Bit51L
public static final long Bit51L- See Also:
- Constant Field Values
-
Bit52L
public static final long Bit52L- See Also:
- Constant Field Values
-
Bit53L
public static final long Bit53L- See Also:
- Constant Field Values
-
Bit54L
public static final long Bit54L- See Also:
- Constant Field Values
-
Bit55L
public static final long Bit55L- See Also:
- Constant Field Values
-
Bit56L
public static final long Bit56L- See Also:
- Constant Field Values
-
Bit57L
public static final long Bit57L- See Also:
- Constant Field Values
-
Bit58L
public static final long Bit58L- See Also:
- Constant Field Values
-
Bit59L
public static final long Bit59L- See Also:
- Constant Field Values
-
Bit60L
public static final long Bit60L- See Also:
- Constant Field Values
-
Bit61L
public static final long Bit61L- See Also:
- Constant Field Values
-
Bit62L
public static final long Bit62L- See Also:
- Constant Field Values
-
Bit63L
public static final long Bit63L- See Also:
- Constant Field Values
-
Bit64L
public static final long Bit64L- See Also:
- Constant Field Values
-
bits
public int bits -
ReturnTypeIDMASK
public static final int ReturnTypeIDMASK- See Also:
- Constant Field Values
-
OperatorSHIFT
public static final int OperatorSHIFT- See Also:
- Constant Field Values
-
OperatorMASK
public static final int OperatorMASK- See Also:
- Constant Field Values
-
IsReturnedValue
public static final int IsReturnedValue- See Also:
- Constant Field Values
-
UnnecessaryCast
public static final int UnnecessaryCast- See Also:
- Constant Field Values
-
DisableUnnecessaryCastCheck
public static final int DisableUnnecessaryCastCheck- See Also:
- Constant Field Values
-
GenerateCheckcast
public static final int GenerateCheckcast- See Also:
- Constant Field Values
-
UnsafeCast
public static final int UnsafeCast- See Also:
- Constant Field Values
-
RestrictiveFlagMASK
public static final int RestrictiveFlagMASK- See Also:
- Constant Field Values
-
IsTypeElided
public static final int IsTypeElided- See Also:
- Constant Field Values
-
IsArgument
public static final int IsArgument- See Also:
- Constant Field Values
-
IsLocalDeclarationReachable
public static final int IsLocalDeclarationReachable- See Also:
- Constant Field Values
-
IsForeachElementVariable
public static final int IsForeachElementVariable- See Also:
- Constant Field Values
-
ShadowsOuterLocal
public static final int ShadowsOuterLocal- See Also:
- Constant Field Values
-
IsAdditionalDeclarator
public static final int IsAdditionalDeclarator- See Also:
- Constant Field Values
-
FirstAssignmentToLocal
public static final int FirstAssignmentToLocal- See Also:
- Constant Field Values
-
NeedReceiverGenericCast
public static final int NeedReceiverGenericCast- See Also:
- Constant Field Values
-
IsImplicitThis
public static final int IsImplicitThis- See Also:
- Constant Field Values
-
DepthSHIFT
public static final int DepthSHIFT- See Also:
- Constant Field Values
-
DepthMASK
public static final int DepthMASK- See Also:
- Constant Field Values
-
IsCapturedOuterLocal
public static final int IsCapturedOuterLocal- See Also:
- Constant Field Values
-
IsUsedInPatternGuard
public static final int IsUsedInPatternGuard- See Also:
- Constant Field Values
-
IsSecretYieldValueUsage
public static final int IsSecretYieldValueUsage- See Also:
- Constant Field Values
-
IsReachable
public static final int IsReachable- See Also:
- Constant Field Values
-
LabelUsed
public static final int LabelUsed- See Also:
- Constant Field Values
-
DocumentedFallthrough
public static final int DocumentedFallthrough- See Also:
- Constant Field Values
-
DocumentedCasesOmitted
public static final int DocumentedCasesOmitted- See Also:
- Constant Field Values
-
IsSubRoutineEscaping
public static final int IsSubRoutineEscaping- See Also:
- Constant Field Values
-
IsTryBlockExiting
public static final int IsTryBlockExiting- See Also:
- Constant Field Values
-
ContainsAssertion
public static final int ContainsAssertion- See Also:
- Constant Field Values
-
IsLocalType
public static final int IsLocalType- See Also:
- Constant Field Values
-
IsAnonymousType
public static final int IsAnonymousType- See Also:
- Constant Field Values
-
IsMemberType
public static final int IsMemberType- See Also:
- Constant Field Values
-
HasAbstractMethods
public static final int HasAbstractMethods- See Also:
- Constant Field Values
-
IsSecondaryType
public static final int IsSecondaryType- See Also:
- Constant Field Values
-
HasBeenGenerated
public static final int HasBeenGenerated- See Also:
- Constant Field Values
-
HasLocalType
public static final int HasLocalType- See Also:
- Constant Field Values
-
HasBeenResolved
public static final int HasBeenResolved- See Also:
- Constant Field Values
-
ParenthesizedSHIFT
public static final int ParenthesizedSHIFT- See Also:
- Constant Field Values
-
ParenthesizedMASK
public static final int ParenthesizedMASK- See Also:
- Constant Field Values
-
IgnoreNoEffectAssignCheck
public static final int IgnoreNoEffectAssignCheck- See Also:
- Constant Field Values
-
IsStrictlyAssigned
public static final int IsStrictlyAssigned- See Also:
- Constant Field Values
-
IsCompoundAssigned
public static final int IsCompoundAssigned- See Also:
- Constant Field Values
-
DiscardEnclosingInstance
public static final int DiscardEnclosingInstance- See Also:
- Constant Field Values
-
Unchecked
public static final int Unchecked- See Also:
- Constant Field Values
-
ResolveJavadoc
public static final int ResolveJavadoc- See Also:
- Constant Field Values
-
IsUsefulEmptyStatement
public static final int IsUsefulEmptyStatement- See Also:
- Constant Field Values
-
UndocumentedEmptyBlock
public static final int UndocumentedEmptyBlock- See Also:
- Constant Field Values
-
OverridingMethodWithSupercall
public static final int OverridingMethodWithSupercall- See Also:
- Constant Field Values
-
CanBeStatic
public static final int CanBeStatic- See Also:
- Constant Field Values
-
ErrorInSignature
public static final int ErrorInSignature- See Also:
- Constant Field Values
-
NeedFreeReturn
public static final int NeedFreeReturn- See Also:
- Constant Field Values
-
IsDefaultConstructor
public static final int IsDefaultConstructor- See Also:
- Constant Field Values
-
IsCanonicalConstructor
public static final int IsCanonicalConstructor- See Also:
- Constant Field Values
-
IsImplicit
public static final int IsImplicit- See Also:
- Constant Field Values
-
HasAllMethodBodies
public static final int HasAllMethodBodies- See Also:
- Constant Field Values
-
IsImplicitUnit
public static final int IsImplicitUnit- See Also:
- Constant Field Values
-
InsideJavadoc
public static final int InsideJavadoc- See Also:
- Constant Field Values
-
SuperAccess
public static final int SuperAccess- See Also:
- Constant Field Values
-
Empty
public static final int Empty- See Also:
- Constant Field Values
-
IsElseIfStatement
public static final int IsElseIfStatement- See Also:
- Constant Field Values
-
ThenExit
public static final int ThenExit- See Also:
- Constant Field Values
-
IsElseStatementUnreachable
public static final int IsElseStatementUnreachable- See Also:
- Constant Field Values
-
IsThenStatementUnreachable
public static final int IsThenStatementUnreachable- See Also:
- Constant Field Values
-
IsSuperType
public static final int IsSuperType- See Also:
- Constant Field Values
-
IsVarArgs
public static final int IsVarArgs- See Also:
- Constant Field Values
-
IgnoreRawTypeCheck
public static final int IgnoreRawTypeCheck- See Also:
- Constant Field Values
-
IsAnnotationDefaultValue
public static final int IsAnnotationDefaultValue- See Also:
- Constant Field Values
-
IsNonNull
public static final int IsNonNull- See Also:
- Constant Field Values
-
NeededScope
public static final int NeededScope- See Also:
- Constant Field Values
-
OnDemand
public static final int OnDemand- See Also:
- Constant Field Values
-
Used
public static final int Used- See Also:
- Constant Field Values
-
inModule
public static final int inModule- See Also:
- Constant Field Values
-
DidResolve
public static final int DidResolve- See Also:
- Constant Field Values
-
IsAnySubRoutineEscaping
public static final int IsAnySubRoutineEscaping- See Also:
- Constant Field Values
-
IsSynchronized
public static final int IsSynchronized- See Also:
- Constant Field Values
-
BlockExit
public static final int BlockExit- See Also:
- Constant Field Values
-
IsRecovered
public static final int IsRecovered- See Also:
- Constant Field Values
-
HasSyntaxErrors
public static final int HasSyntaxErrors- See Also:
- Constant Field Values
-
INVOCATION_ARGUMENT_OK
public static final int INVOCATION_ARGUMENT_OK- See Also:
- Constant Field Values
-
INVOCATION_ARGUMENT_UNCHECKED
public static final int INVOCATION_ARGUMENT_UNCHECKED- See Also:
- Constant Field Values
-
INVOCATION_ARGUMENT_WILDCARD
public static final int INVOCATION_ARGUMENT_WILDCARD- See Also:
- Constant Field Values
-
HasTypeAnnotations
public static final int HasTypeAnnotations- See Also:
- Constant Field Values
-
IsUnionType
public static final int IsUnionType- See Also:
- Constant Field Values
-
IsDiamond
public static final int IsDiamond- See Also:
- Constant Field Values
-
InsideExpressionStatement
public static final int InsideExpressionStatement- See Also:
- Constant Field Values
-
IsSynthetic
public static final int IsSynthetic- See Also:
- Constant Field Values
-
HasFunctionalInterfaceTypes
public static final int HasFunctionalInterfaceTypes- See Also:
- Constant Field Values
-
NO_ARGUMENTS
-
NO_RECORD_COMPONENTS
-
-
Constructor Details
-
ASTNode
public ASTNode()
-
-
Method Details
-
checkInvocationArguments
public static boolean checkInvocationArguments(BlockScope scope, Expression receiver, TypeBinding receiverType, MethodBinding method, Expression[] arguments, TypeBinding[] argumentTypes, boolean argsContainCast, InvocationSite invocationSite) -
concreteStatement
-
isFieldUseDeprecated
-
isImplicitThis
public boolean isImplicitThis() -
receiverIsImplicitThis
public boolean receiverIsImplicitThis() -
isMethodUseDeprecated
public final boolean isMethodUseDeprecated(MethodBinding method, Scope scope, boolean isExplicitUse, InvocationSite invocation) -
isSuper
public boolean isSuper() -
isQualifiedSuper
public boolean isQualifiedSuper() -
isThis
public boolean isThis() -
isUnqualifiedSuper
public boolean isUnqualifiedSuper() -
isTypeUseDeprecated
-
isType
public boolean isType()Returns whether this node represents a binding of typeBinding.TYPE
- Returns:
true
if the node represents aBinding.TYPE
binding type.
-
print
-
printAnnotations
-
printIndent
-
printModifiers
-
resolvePolyExpressionArguments
public static MethodBinding resolvePolyExpressionArguments(Invocation invocation, MethodBinding method, TypeBinding[] argumentTypes, BlockScope scope)After method lookup has produced 'methodBinding' but when poly expressions have been seen as arguments, inspect the arguments to trigger another round of resolving with improved target types from the methods parameters. If this resolving produces better types for any arguments, update the 'argumentTypes' array in-place as an intended side effect that will feed better type information in checkInvocationArguments() and others.- Parameters:
invocation
- the outer invocation which is being resolvedmethod
- the method produced by lookup (possibly involving type inference).argumentTypes
- the argument types as collected from first resolving the invocation arguments and as used for the method lookup.scope
- scope for resolution.- Returns:
- either the original method or a problem method
-
resolveAnnotations
public static void resolveAnnotations(BlockScope scope, Annotation[] sourceAnnotations, Binding recipient) -
resolveAnnotations
public static AnnotationBinding[] resolveAnnotations(BlockScope scope, Annotation[] sourceAnnotations, Binding recipient, boolean copySE8AnnotationsToType)Resolve annotations, and check duplicates, answers combined tagBits for recognized standard annotations. Return null if nothing new is resolved. -
resolveAnnotations
public static TypeBinding resolveAnnotations(BlockScope scope, Annotation[][] sourceAnnotations, TypeBinding type)Resolve JSR308 annotations on a type reference, array creation expression or a wildcard. Type parameters go directly to the subroutine, By construction the bindings associated with QTR, PQTR etc get resolved first and then annotations for different levels get resolved and applied at one go. Likewise for multidimensional arrays. -
handleNonNullByDefault
public static void handleNonNullByDefault(BlockScope scope, Annotation[] sourceAnnotations, LocalDeclaration localDeclaration)"early" handling of NonNullByDefault because for local variables annotations are resolved after their type because of bug 96991.- Parameters:
localDeclaration
-
-
copySE8AnnotationsToType
public static void copySE8AnnotationsToType(BlockScope scope, Binding recipient, Annotation[] annotations, boolean annotatingEnumerator) -
getRelevantAnnotations
public static Annotation[] getRelevantAnnotations(Annotation[] annotations, long rcMask, List<AnnotationBinding> relevantAnnotations) -
copyRecordComponentAnnotations
public static Annotation[] copyRecordComponentAnnotations(Scope scope, Binding recipient, Annotation[] annotations) -
resolveDeprecatedAnnotations
public static void resolveDeprecatedAnnotations(BlockScope scope, Annotation[] annotations, Binding recipient)Figures if @Deprecated annotation is specified, do not resolve entire annotations. -
checkingPotentialCompatibility
public boolean checkingPotentialCompatibility() -
acceptPotentiallyCompatibleMethods
-
sourceStart
public int sourceStart() -
sourceEnd
public int sourceEnd() -
toString
-
traverse
-