Interface RecordComponentDescription
- All Superinterfaces:
AnnotationSource, ByteCodeElement.TypeDependant<RecordComponentDescription.InDefinedShape, RecordComponentDescription.Token>, DeclaredByType, DeclaredByType.WithMandatoryDeclaration, NamedElement, NamedElement.WithDescriptor
- All Known Subinterfaces:
RecordComponentDescription.InDefinedShape, RecordComponentDescription.InGenericShape
- All Known Implementing Classes:
RecordComponentDescription.AbstractBase, RecordComponentDescription.ForLoadedRecordComponent, RecordComponentDescription.InDefinedShape.AbstractBase, RecordComponentDescription.Latent, RecordComponentDescription.TypeSubstituting, TypePool.Default.LazyTypeDescription.LazyRecordComponentDescription
public interface RecordComponentDescription
extends DeclaredByType.WithMandatoryDeclaration, NamedElement.WithDescriptor, AnnotationSource, ByteCodeElement.TypeDependant<RecordComponentDescription.InDefinedShape, RecordComponentDescription.Token>
Represents a component of a Java record.
-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic classAn abstract base implementation for a record component description.static classRepresents a loaded record component.static interfaceA description of a record component in its defined shape.static interfaceA description of a record component in generic shape.static classA latent record component description.static classA token representing a record component's properties detached from a type.static classA type substituting representation of a record component description.Nested classes/interfaces inherited from interface AnnotationSource
AnnotationSource.Empty, AnnotationSource.ExplicitNested classes/interfaces inherited from interface DeclaredByType
DeclaredByType.WithMandatoryDeclarationNested classes/interfaces inherited from interface NamedElement
NamedElement.WithDescriptor, NamedElement.WithGenericName, NamedElement.WithOptionalName, NamedElement.WithRuntimeName -
Field Summary
Fields inherited from interface NamedElement
EMPTY_NAME, NO_NAMEFields inherited from interface NamedElement.WithDescriptor
NON_GENERIC_SIGNATURE -
Method Summary
Modifier and TypeMethodDescriptionasToken(ElementMatcher<? super TypeDescription> matcher) Resolves this record component to a token where all types are detached.Returns the accessor for this record component.getType()Returns the type of the record.Methods inherited from interface AnnotationSource
getDeclaredAnnotationsMethods inherited from interface ByteCodeElement.TypeDependant
asDefinedMethods inherited from interface DeclaredByType.WithMandatoryDeclaration
getDeclaringTypeMethods inherited from interface NamedElement
getActualNameMethods inherited from interface NamedElement.WithDescriptor
getDescriptor, getGenericSignature
-
Method Details
-
getType
-
getAccessor
MethodDescription getAccessor()Returns the accessor for this record component.- Returns:
- The accessor for this record component.
-
asToken
Resolves this record component to a token where all types are detached.- Specified by:
asTokenin interfaceByteCodeElement.TypeDependant<RecordComponentDescription.InDefinedShape, RecordComponentDescription.Token>- Parameters:
matcher- The matcher to apply for detachment.- Returns:
- An appropriate token.
-