Class TypeDeclaration
java.lang.Object
org.aspectj.org.eclipse.jdt.internal.compiler.ast.ASTNode
org.aspectj.org.eclipse.jdt.internal.compiler.ast.Statement
org.aspectj.org.eclipse.jdt.internal.compiler.ast.TypeDeclaration
- All Implemented Interfaces:
ReferenceContext
,TypeConstants
,TypeIds
,ProblemSeverities
- Direct Known Subclasses:
AspectDeclaration
,CodeSnippetTypeDeclaration
,CompletionOnAnnotationOfType
,IntertypeMemberClassDeclaration
-
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 final int
int
int
static final int
int
int
static final int
int
int
boolean
static final int
int
int
int
char[]
int
static final int
int
Fields inherited from class org.aspectj.org.eclipse.jdt.internal.compiler.ast.Statement
COMPLAINED_FAKE_REACHABLE, COMPLAINED_UNREACHABLE, NOT_COMPLAINED
Fields inherited from class org.aspectj.org.eclipse.jdt.internal.compiler.ast.ASTNode
Bit1, 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, inModule, InsideExpressionStatement, InsideJavadoc, INVOCATION_ARGUMENT_OK, INVOCATION_ARGUMENT_UNCHECKED, INVOCATION_ARGUMENT_WILDCARD, IsAdditionalDeclarator, IsAnnotationDefaultValue, IsAnonymousType, IsAnySubRoutineEscaping, IsArgument, IsCanonicalConstructor, IsCapturedOuterLocal, IsCompoundAssigned, IsDefaultConstructor, IsDiamond, IsElseIfStatement, IsElseStatementUnreachable, IsForeachElementVariable, IsImplicit, IsImplicitThis, IsImplicitUnit, IsLocalDeclarationReachable, IsLocalType, IsMemberType, IsNonNull, IsReachable, IsRecovered, IsReturnedValue, IsSecondaryType, IsSecretYieldValueUsage, IsStrictlyAssigned, IsSubRoutineEscaping, IsSuperType, IsSynchronized, IsSynthetic, IsThenStatementUnreachable, IsTryBlockExiting, IsTypeElided, IsUnionType, IsUsedInPatternGuard, IsUsefulEmptyStatement, IsVarArgs, LabelUsed, NeededScope, NeedFreeReturn, NeedReceiverGenericCast, NO_ARGUMENTS, NO_RECORD_COMPONENTS, NO_TYPE_PATTERNS, NO_VARIABLES, OnDemand, OperatorMASK, OperatorSHIFT, OverridingMethodWithSupercall, ParenthesizedMASK, ParenthesizedSHIFT, ResolveJavadoc, RestrictiveFlagMASK, ReturnTypeIDMASK, ShadowsOuterLocal, sourceEnd, sourceStart, SuperAccess, ThenExit, Unchecked, UndocumentedEmptyBlock, UnnecessaryCast, UnsafeCast, Used
Fields inherited from interface org.aspectj.org.eclipse.jdt.internal.compiler.problem.ProblemSeverities
Abort, AbortCompilation, AbortCompilationUnit, AbortMethod, AbortType, CoreSeverityMASK, Error, Fatal, Ignore, Info, InternalError, Optional, SecondaryError, Warning
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, FILTER, 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, JAKARTA, JAKARTA_ANNOTATION_INJECT_INJECT, 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_CONSTANT_CLASSDESC, JAVA_LANG_DEPRECATED, JAVA_LANG_DOUBLE, JAVA_LANG_ENUM, JAVA_LANG_ENUM_ENUMDESC, 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_CONSTANTBOOTSTRAP, JAVA_LANG_INVOKE_LAMBDAMETAFACTORY, JAVA_LANG_INVOKE_METHODHANDLE, JAVA_LANG_INVOKE_METHODHANDLE_$_POLYMORPHICSIGNATURE, JAVA_LANG_INVOKE_METHODHANDLE_POLYMORPHICSIGNATURE, JAVA_LANG_INVOKE_METHODHANDLES, JAVA_LANG_INVOKE_SERIALIZEDLAMBDA, JAVA_LANG_INVOKE_STRING_CONCAT_FACTORY, JAVA_LANG_INVOKE_VARHANDLE, 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_RUNTIME_TEMPLATERUNTIME, JAVA_LANG_RUNTIMEEXCEPTION, JAVA_LANG_SAFEVARARGS, JAVA_LANG_SHORT, JAVA_LANG_STRING, JAVA_LANG_STRING_TEMPLATE_STR, JAVA_LANG_STRINGBUFFER, JAVA_LANG_STRINGBUILDER, JAVA_LANG_STRINGTEMPLATE, JAVA_LANG_STRINGTEMPLATE_PROCESSOR, 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_STREAM__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, STRING_CONCAT_MARKER_1, 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, BitNotOwningAnnotation, BitNullableAnnotation, BitOwningAnnotation, 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
abort
(int abortLevel, CategorizedProblem problem) final void
This method is responsible for adding a<clinit>
method declaration to the type method collections.addMissingAbstractMethodFor
(MethodBinding methodBinding) char[]
analyseCode
(BlockScope currentScope, FlowContext flowContext, FlowInfo flowInfo) Flow analysis for a local innertypevoid
analyseCode
(ClassScope enclosingClassScope) Flow analysis for a member innertypevoid
analyseCode
(ClassScope currentScope, FlowContext flowContext, FlowInfo flowInfo) Flow analysis for a local member innertypevoid
analyseCode
(CompilationUnitScope unitScope) Flow analysis for a package member typeboolean
checkConstructors
(Parser parser) Check for constructor vs.createDefaultConstructor
(boolean needExplicitConstructorCall, boolean needToInsert) createDefaultConstructorForRecord
(boolean needExplicitConstructorCall, boolean needToInsert) createDefaultConstructorWithBinding
(MethodBinding inheritedConstructorBinding, boolean eraseThrownExceptions) declarationOf
(FieldBinding fieldBinding) Find the matching parse node, answers null if nothing founddeclarationOf
(MemberTypeBinding memberTypeBinding) Find the matching parse node, answers null if nothing founddeclarationOf
(MethodBinding methodBinding) Find the matching parse node, answers null if nothing founddeclarationOf
(RecordComponentBinding recordComponentBinding) Find the matching parse node, answers null if nothing founddeclarationOfType
(char[][] typeName) Finds the matching type amoung this type's member types.protected void
generateAttributes
(ClassFile classFile) void
generateCode
(ClassFile enclosingClassFile) Generic bytecode generation for typevoid
generateCode
(BlockScope blockScope, CodeStream codeStream) Bytecode generation for a local inner type (API as a normal statement code gen)void
generateCode
(ClassScope classScope, ClassFile enclosingClassFile) Bytecode generation for a member inner typevoid
generateCode
(CompilationUnitScope unitScope) Bytecode generation for a package membergetConstructor
(Parser parser) This is applicable only for records - ideally get the canonical constructor, if not get a constructor and at the client side tentatively marked as canonical constructor which gets checked at the binding time.char[]
boolean
boolean
boolean
isRecord()
boolean
Returns whether the type is a secondary one or not.static final int
kind
(int flags) void
manageEnclosingInstanceAccessIfNecessary
(BlockScope currentScope, FlowInfo flowInfo) void
manageEnclosingInstanceAccessIfNecessary
(ClassScope currentScope, FlowInfo flowInfo) Access emulation for a local member type force to emulation of access to direct enclosing instance.boolean
A<clinit>
will be requested as soon as static fields or assertions are present.void
parseMethods
(Parser parser, CompilationUnitDeclaration unit) print
(int indent, StringBuilder output) printBody
(int indent, StringBuilder output) printHeader
(int indent, StringBuilder output) printStatement
(int tab, StringBuilder output) int
record
(FunctionalExpression expression) void
void
resolve()
void
resolve
(BlockScope blockScope) Resolve a local type declarationvoid
resolve
(ClassScope upperScope) Resolve a member type declaration (can be a local member)void
resolve
(CompilationUnitScope upperScope) Resolve a top level type declarationvoid
void
tagAsHavingIgnoredMandatoryErrors
(int problemId) void
traverse
(ASTVisitor visitor, BlockScope blockScope) Iteration for a local inner typevoid
traverse
(ASTVisitor visitor, ClassScope classScope) Iteration for a member innertypevoid
traverse
(ASTVisitor visitor, CompilationUnitScope unitScope) Iteration for a package member typevoid
updateSupertypesWithAnnotations
(Map<ReferenceBinding, ReferenceBinding> outerUpdates) protected ReferenceBinding
updateWithAnnotations
(TypeReference typeRef, ReferenceBinding previousType, Map<ReferenceBinding, ReferenceBinding> outerUpdates, Map<ReferenceBinding, ReferenceBinding> updates) Methods inherited from class org.aspectj.org.eclipse.jdt.internal.compiler.ast.Statement
analyseArguments, bindingsWhenComplete, bindingsWhenFalse, bindingsWhenTrue, branchChainTo, breaksOut, canCompleteNormally, checkAgainstNullTypeAnnotation, complainIfUnreachable, completesByContinue, containsPatternVariable, continueCompletes, continuesAtOuterLabel, doesNotCompleteNormally, doNotReportUnreachable, expectedType, findConstructorBinding, generateArguments, getExpressionContext, invocationTargetType, isBoxingCompatible, isEmptyBlock, isKnowDeadCodePattern, isValidJavaStatement, resolveExpressionType, resolveWithBindings
Methods inherited from class org.aspectj.org.eclipse.jdt.internal.compiler.ast.ASTNode
acceptPotentiallyCompatibleMethods, checkingPotentialCompatibility, checkInvocationArguments, concreteStatement, copyRecordComponentAnnotations, copySE8AnnotationsToType, getRelevantAnnotations, handleNonNullByDefault, isFieldUseDeprecated, isImplicitThis, isMethodUseDeprecated, isQualifiedSuper, isSuper, isThis, isType, isTypeUseDeprecated, isUnqualifiedSuper, printAnnotations, printIndent, printModifiers, receiverIsImplicitThis, resolveAnnotations, resolveAnnotations, resolveAnnotations, resolveDeprecatedAnnotations, resolvePolyExpressionArguments, resolveStatements, sourceEnd, sourceStart, toString
-
Field Details
-
CLASS_DECL
public static final int CLASS_DECL- See Also:
-
INTERFACE_DECL
public static final int INTERFACE_DECL- See Also:
-
ENUM_DECL
public static final int ENUM_DECL- See Also:
-
ANNOTATION_TYPE_DECL
public static final int ANNOTATION_TYPE_DECL- See Also:
-
RECORD_DECL
public static final int RECORD_DECL- See Also:
-
modifiers
public int modifiers -
modifiersSourceStart
public int modifiersSourceStart -
functionalExpressionsCount
public int functionalExpressionsCount -
annotations
-
originalAnnotations
-
name
public char[] name -
superclass
-
superInterfaces
-
fields
-
methods
-
memberTypes
-
binding
-
scope
-
initializerScope
-
staticInitializerScope
-
ignoreFurtherInvestigation
public boolean ignoreFurtherInvestigation -
maxFieldCount
public int maxFieldCount -
declarationSourceStart
public int declarationSourceStart -
declarationSourceEnd
public int declarationSourceEnd -
restrictedIdentifierStart
public int restrictedIdentifierStart -
bodyStart
public int bodyStart -
bodyEnd
public int bodyEnd -
compilationResult
-
missingAbstractMethods
-
javadoc
-
allocation
-
enclosingType
-
enumValuesSyntheticfield
-
enumConstantsCounter
public int enumConstantsCounter -
typeParameters
-
recordComponents
-
nRecordComponents
public int nRecordComponents -
disallowedComponentNames
-
permittedTypes
-
-
Constructor Details
-
TypeDeclaration
-
-
Method Details
-
abort
- Specified by:
abort
in interfaceReferenceContext
-
addClinit
public final void addClinit()This method is responsible for adding a<clinit>
method declaration to the type method collections. Note that this implementation is inserting it in first place (as VAJ or javac), and that this impacts the behavior of the method ConstantPool.resetForClinit(int. int), in so far as the latter will have to reset the constant pool state accordingly (if it was added first, it does not need to preserve some of the method specific cached entries since this will be the first method). inserts the clinit method declaration in the first position.- See Also:
-
addMissingAbstractMethodFor
-
analyseCode
Flow analysis for a local innertype- Specified by:
analyseCode
in classStatement
-
analyseCode
Flow analysis for a member innertype -
analyseCode
Flow analysis for a local member innertype -
analyseCode
Flow analysis for a package member type -
checkConstructors
Check for constructor vs. method with no return type. Answers true if at least one constructor is defined -
compilationResult
- Specified by:
compilationResult
in interfaceReferenceContext
-
createDefaultConstructorForRecord
public ConstructorDeclaration createDefaultConstructorForRecord(boolean needExplicitConstructorCall, boolean needToInsert) -
createDefaultConstructor
public ConstructorDeclaration createDefaultConstructor(boolean needExplicitConstructorCall, boolean needToInsert) -
createDefaultConstructorWithBinding
public MethodBinding createDefaultConstructorWithBinding(MethodBinding inheritedConstructorBinding, boolean eraseThrownExceptions) -
declarationOf
Find the matching parse node, answers null if nothing found -
declarationOf
Find the matching parse node, answers null if nothing found -
declarationOf
Find the matching parse node, answers null if nothing found -
declarationOf
Find the matching parse node, answers null if nothing found -
declarationOfType
Finds the matching type amoung this type's member types. Returns null if no type with this name is found. The type name is a compound name relative to this type e.g. if this type is X and we're looking for Y.X.A.B then a type name would be {X, A, B} -
getCompilationUnitDeclaration
- Specified by:
getCompilationUnitDeclaration
in interfaceReferenceContext
-
getConstructor
This is applicable only for records - ideally get the canonical constructor, if not get a constructor and at the client side tentatively marked as canonical constructor which gets checked at the binding time. If there are no constructors, then null is returned. -
generateCode
Generic bytecode generation for type -
generateAttributes
-
rememberAnnotations
public void rememberAnnotations() -
generateCode
Bytecode generation for a local inner type (API as a normal statement code gen)- Specified by:
generateCode
in classStatement
-
generateCode
Bytecode generation for a member inner type -
generateCode
Bytecode generation for a package member -
hasErrors
public boolean hasErrors()- Specified by:
hasErrors
in interfaceReferenceContext
-
kind
public static final int kind(int flags) -
isRecord
public boolean isRecord() -
manageEnclosingInstanceAccessIfNecessary
-
manageEnclosingInstanceAccessIfNecessary
Access emulation for a local member type force to emulation of access to direct enclosing instance. By using the initializer scope, we actually only request an argument emulation, the field is not added until actually used. However we will force allocations to be qualified with an enclosing instance. Local member cannot be static. -
needClassInitMethod
public boolean needClassInitMethod()A<clinit>
will be requested as soon as static fields or assertions are present. It will be eliminated during classfile creation if no bytecode was actually produced based on some optimizations/compiler settings. -
parseMethods
-
print
-
printBody
-
printHeader
-
printStatement
- Specified by:
printStatement
in classStatement
-
record
-
resolve
public void resolve() -
resolve
Resolve a local type declaration -
resolve
Resolve a member type declaration (can be a local member) -
resolve
Resolve a top level type declaration -
tagAsHavingErrors
public void tagAsHavingErrors()- Specified by:
tagAsHavingErrors
in interfaceReferenceContext
-
tagAsHavingIgnoredMandatoryErrors
public void tagAsHavingIgnoredMandatoryErrors(int problemId) - Specified by:
tagAsHavingIgnoredMandatoryErrors
in interfaceReferenceContext
-
traverse
Iteration for a package member type -
traverse
Iteration for a local inner type -
traverse
Iteration for a member innertype -
isPackageInfo
public boolean isPackageInfo() -
isSecondary
public boolean isSecondary()Returns whether the type is a secondary one or not. -
updateSupertypesWithAnnotations
-
updateWithAnnotations
protected ReferenceBinding updateWithAnnotations(TypeReference typeRef, ReferenceBinding previousType, Map<ReferenceBinding, ReferenceBinding> outerUpdates, Map<ReferenceBinding, ReferenceBinding> updates) -
alternativeName
public char[] alternativeName() -
getLocalTypeNameSuffix
public char[] getLocalTypeNameSuffix()
-