Package net.bytebuddy.pool
Class TypePool.Default.LazyTypeDescription.GenericTypeToken.ForTypeVariable.Formal.LazyTypeVariable
java.lang.Object
net.bytebuddy.description.ModifierReviewable.AbstractBase
net.bytebuddy.description.type.TypeDescription.Generic.AbstractBase
net.bytebuddy.description.type.TypeDescription.Generic.OfTypeVariable
net.bytebuddy.pool.TypePool.Default.LazyTypeDescription.GenericTypeToken.ForTypeVariable.Formal.LazyTypeVariable
- All Implemented Interfaces:
Iterable<TypeDefinition>,AnnotationSource,ModifierReviewable,ModifierReviewable.ForFieldDescription,ModifierReviewable.ForMethodDescription,ModifierReviewable.ForParameterDescription,ModifierReviewable.ForTypeDefinition,ModifierReviewable.OfAbstraction,ModifierReviewable.OfByteCodeElement,ModifierReviewable.OfEnumeration,NamedElement,TypeDefinition,TypeDescription.Generic
protected static class TypePool.Default.LazyTypeDescription.GenericTypeToken.ForTypeVariable.Formal.LazyTypeVariable
extends TypeDescription.Generic.OfTypeVariable
A type description that represents a type variable with bounds that are resolved lazily.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprotected static classA list representing a formal type variable's bounds.Nested classes/interfaces inherited from class net.bytebuddy.description.type.TypeDescription.Generic.OfTypeVariable
TypeDescription.Generic.OfTypeVariable.ForLoadedType, TypeDescription.Generic.OfTypeVariable.Symbolic, TypeDescription.Generic.OfTypeVariable.WithAnnotationOverlayNested classes/interfaces inherited from interface net.bytebuddy.description.annotation.AnnotationSource
AnnotationSource.Empty, AnnotationSource.ExplicitNested classes/interfaces inherited from interface net.bytebuddy.description.ModifierReviewable
ModifierReviewable.AbstractBase, ModifierReviewable.ForFieldDescription, ModifierReviewable.ForMethodDescription, ModifierReviewable.ForParameterDescription, ModifierReviewable.ForTypeDefinition, ModifierReviewable.OfAbstraction, ModifierReviewable.OfByteCodeElement, ModifierReviewable.OfEnumerationNested classes/interfaces inherited from interface net.bytebuddy.description.NamedElement
NamedElement.WithDescriptor, NamedElement.WithGenericName, NamedElement.WithOptionalName, NamedElement.WithRuntimeNameNested classes/interfaces inherited from interface net.bytebuddy.description.type.TypeDefinition
TypeDefinition.Sort, TypeDefinition.SuperClassIteratorNested classes/interfaces inherited from interface net.bytebuddy.description.type.TypeDescription.Generic
TypeDescription.Generic.AbstractBase, TypeDescription.Generic.AnnotationReader, TypeDescription.Generic.Builder, TypeDescription.Generic.LazyProjection, TypeDescription.Generic.LazyProxy, TypeDescription.Generic.OfGenericArray, TypeDescription.Generic.OfNonGenericType, TypeDescription.Generic.OfParameterizedType, TypeDescription.Generic.OfTypeVariable, TypeDescription.Generic.OfWildcardType, TypeDescription.Generic.Visitor<T> -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final Map<String, List<TypePool.Default.LazyTypeDescription.AnnotationToken>> The type variable's type annotation tokens.A mapping of the type variable bounds' type annotation tokens by their indices.private final List<TypePool.Default.LazyTypeDescription.GenericTypeToken> Tokenized representations of the type variables bound types.private final StringThe type variable's symbol.private final TypePoolThe type pool to use for locating type descriptions.private final TypeVariableSourceThe type variable source to use for locating type variables.Fields inherited from interface net.bytebuddy.description.ModifierReviewable
EMPTY_MASKFields inherited from interface net.bytebuddy.description.NamedElement
EMPTY_NAME, NO_NAMEFields inherited from interface net.bytebuddy.description.type.TypeDefinition
RAW_TYPES_PROPERTYFields inherited from interface net.bytebuddy.description.type.TypeDescription.Generic
ANNOTATION, CLASS, OBJECT, UNDEFINED, VOID -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedLazyTypeVariable(TypePool typePool, TypeVariableSource typeVariableSource, Map<String, List<TypePool.Default.LazyTypeDescription.AnnotationToken>> annotationTokens, Map<Integer, Map<String, List<TypePool.Default.LazyTypeDescription.AnnotationToken>>> boundaryAnnotationTokens, String symbol, List<TypePool.Default.LazyTypeDescription.GenericTypeToken> boundTypeTokens) Creates a lazy type description of a type variables. -
Method Summary
Modifier and TypeMethodDescriptionReturns a list of annotations that are declared by this instance.Returns the symbol of this type variable.Returns the source of this type variable.Returns the upper bounds of this type.Methods inherited from class net.bytebuddy.description.type.TypeDescription.Generic.OfTypeVariable
accept, asErasure, equals, findBindingOf, getActualName, getComponentType, getDeclaredFields, getDeclaredMethods, getInterfaces, getLowerBounds, getOwnerType, getRecordComponents, getSort, getStackSize, getSuperClass, getTypeArguments, getTypeName, hashCode, isArray, isPrimitive, isRecord, iterator, represents, toStringMethods inherited from class net.bytebuddy.description.type.TypeDescription.Generic.AbstractBase
asGenericType, asRawType, getModifiersMethods inherited from class net.bytebuddy.description.ModifierReviewable.AbstractBase
getEnumerationState, getFieldManifestation, getFieldPersistence, getMethodManifestation, getMethodStrictness, getOwnership, getParameterManifestation, getProvisioningState, getSynchronizationState, getSyntheticState, getTypeManifestation, getVisibility, isAbstract, isAnnotation, isBridge, isDeprecated, isEnum, isFinal, isInterface, isMandated, isNative, isPackagePrivate, isPrivate, isProtected, isPublic, isStatic, isStrict, isSynchronized, isSynthetic, isTransient, isVarArgs, isVolatileMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface java.lang.Iterable
forEach, spliteratorMethods inherited from interface net.bytebuddy.description.ModifierReviewable
getSyntheticState, isFinal, isSyntheticMethods inherited from interface net.bytebuddy.description.ModifierReviewable.ForTypeDefinition
getTypeManifestation, isAnnotation, isInterfaceMethods inherited from interface net.bytebuddy.description.ModifierReviewable.OfAbstraction
isAbstractMethods inherited from interface net.bytebuddy.description.ModifierReviewable.OfByteCodeElement
getOwnership, getVisibility, isDeprecated, isPackagePrivate, isPrivate, isProtected, isPublic, isStaticMethods inherited from interface net.bytebuddy.description.ModifierReviewable.OfEnumeration
getEnumerationState, isEnum
-
Field Details
-
typePool
The type pool to use for locating type descriptions. -
typeVariableSource
The type variable source to use for locating type variables. -
annotationTokens
private final Map<String,List<TypePool.Default.LazyTypeDescription.AnnotationToken>> annotationTokensThe type variable's type annotation tokens. -
boundaryAnnotationTokens
private final Map<Integer,Map<String, boundaryAnnotationTokensList<TypePool.Default.LazyTypeDescription.AnnotationToken>>> A mapping of the type variable bounds' type annotation tokens by their indices. -
symbol
The type variable's symbol. -
boundTypeTokens
Tokenized representations of the type variables bound types.
-
-
Constructor Details
-
LazyTypeVariable
protected LazyTypeVariable(TypePool typePool, TypeVariableSource typeVariableSource, Map<String, List<TypePool.Default.LazyTypeDescription.AnnotationToken>> annotationTokens, Map<Integer, Map<String, List<TypePool.Default.LazyTypeDescription.AnnotationToken>>> boundaryAnnotationTokens, String symbol, List<TypePool.Default.LazyTypeDescription.GenericTypeToken> boundTypeTokens) Creates a lazy type description of a type variables.- Parameters:
typePool- The type pool to use for locating type descriptions.typeVariableSource- The type variable source to use for locating type variables.annotationTokens- The type variable's type annotation tokens.boundaryAnnotationTokens- A mapping of the type variable bounds' type annotation tokens by their indices.symbol- The type variable's symbol.boundTypeTokens- Tokenized representations of the type variables bound types.
-
-
Method Details
-
getUpperBounds
Returns the upper bounds of this type. Any type with a well-defined upper bound is bound by at least one type. If no such type is defined, the bound is implicitly
Object.Only non-symbolic type variables (
TypeDefinition.Sort.VARIABLE, and wildcard types (TypeDefinition.Sort.WILDCARD) have well-defined upper bounds. For other types, anIllegalStateExceptionis thrown.- Returns:
- The upper bounds of this type.
-
getTypeVariableSource
Returns the source of this type variable. A type variable source is only well-defined for an attached type variable (TypeDefinition.Sort.VARIABLE. For other types, this method throws anIllegalStateException.- Returns:
- This type's type variable source.
-
getSymbol
Returns the symbol of this type variable. A symbol is only well-defined for type variables (TypeDefinition.Sort.VARIABLE,TypeDefinition.Sort.VARIABLE_SYMBOLIC). For other types, this method throws anIllegalStateException.- Returns:
- This type's type variable symbol.
-
getDeclaredAnnotations
Returns a list of annotations that are declared by this instance.- Returns:
- A list of declared annotations.
-