Package net.bytebuddy.description.type
Class TypeDescription.SuperTypeLoading.ClassLoadingTypeProjection
- java.lang.Object
-
- net.bytebuddy.description.ModifierReviewable.AbstractBase
-
- net.bytebuddy.description.type.TypeDescription.Generic.AbstractBase
-
- net.bytebuddy.description.type.TypeDescription.Generic.LazyProjection
-
- net.bytebuddy.description.type.TypeDescription.SuperTypeLoading.ClassLoadingTypeProjection
-
- All Implemented Interfaces:
java.lang.Iterable<TypeDefinition>,AnnotationSource,ModifierReviewable,ModifierReviewable.ForFieldDescription,ModifierReviewable.ForMethodDescription,ModifierReviewable.ForModuleDescription,ModifierReviewable.ForModuleRequirement,ModifierReviewable.ForParameterDescription,ModifierReviewable.ForTypeDefinition,ModifierReviewable.OfAbstraction,ModifierReviewable.OfByteCodeElement,ModifierReviewable.OfEnumeration,ModifierReviewable.OfMandatable,NamedElement,TypeDefinition,TypeDescription.Generic
- Enclosing class:
- TypeDescription.SuperTypeLoading
protected static class TypeDescription.SuperTypeLoading.ClassLoadingTypeProjection extends TypeDescription.Generic.LazyProjection
A type projection that attempts to load any super type of the delegate type.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class net.bytebuddy.description.type.TypeDescription.Generic.LazyProjection
TypeDescription.Generic.LazyProjection.ForLoadedFieldType, TypeDescription.Generic.LazyProjection.ForLoadedReturnType, TypeDescription.Generic.LazyProjection.ForLoadedSuperClass, TypeDescription.Generic.LazyProjection.OfConstructorParameter, TypeDescription.Generic.LazyProjection.OfMethodParameter, TypeDescription.Generic.LazyProjection.OfRecordComponent, TypeDescription.Generic.LazyProjection.WithEagerNavigation, TypeDescription.Generic.LazyProjection.WithLazyNavigation, TypeDescription.Generic.LazyProjection.WithResolvedErasure
-
Nested classes/interfaces inherited from interface net.bytebuddy.description.annotation.AnnotationSource
AnnotationSource.Empty, AnnotationSource.Explicit
-
Nested classes/interfaces inherited from interface net.bytebuddy.description.ModifierReviewable
ModifierReviewable.AbstractBase, ModifierReviewable.ForFieldDescription, ModifierReviewable.ForMethodDescription, ModifierReviewable.ForModuleDescription, ModifierReviewable.ForModuleRequirement, ModifierReviewable.ForParameterDescription, ModifierReviewable.ForTypeDefinition, ModifierReviewable.OfAbstraction, ModifierReviewable.OfByteCodeElement, ModifierReviewable.OfEnumeration, ModifierReviewable.OfMandatable
-
Nested classes/interfaces inherited from interface net.bytebuddy.description.NamedElement
NamedElement.WithDescriptor, NamedElement.WithGenericName, NamedElement.WithOptionalName, NamedElement.WithRuntimeName
-
Nested classes/interfaces inherited from interface net.bytebuddy.description.type.TypeDefinition
TypeDefinition.Sort, TypeDefinition.SuperClassIterator
-
Nested 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
Fields Modifier and Type Field Description private java.lang.ClassLoaderclassLoaderThe class loader to use for loading types which might benullto represent the bootstrap class loader.private TypeDescription.SuperTypeLoading.ClassLoadingDelegateclassLoadingDelegateA delegate for loading a type.private TypeDescription.GenericdelegateThe delegate type description.-
Fields inherited from interface net.bytebuddy.description.ModifierReviewable
EMPTY_MASK
-
Fields inherited from interface net.bytebuddy.description.NamedElement
EMPTY_NAME, NO_NAME
-
Fields inherited from interface net.bytebuddy.description.type.TypeDefinition
RAW_TYPES_PROPERTY
-
Fields inherited from interface net.bytebuddy.description.type.TypeDescription.Generic
ANNOTATION, CLASS, OBJECT, UNDEFINED, VOID
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedClassLoadingTypeProjection(TypeDescription.Generic delegate, java.lang.ClassLoader classLoader, TypeDescription.SuperTypeLoading.ClassLoadingDelegate classLoadingDelegate)Creates a class loading type description.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description TypeDescriptionasErasure()Returns the erasure of this type.AnnotationListgetDeclaredAnnotations()Returns a list of annotations that are declared by this instance.TypeList.GenericgetInterfaces()Returns the interfaces that this type implements.TypeDescription.GenericgetSuperClass()Returns the super class of this type.java.util.Iterator<TypeDefinition>iterator()protected TypeDescription.Genericresolve()Resolves the actual generic type.-
Methods inherited from class net.bytebuddy.description.type.TypeDescription.Generic.LazyProjection
accept, equals, findBindingOf, getActualName, getComponentType, getDeclaredFields, getDeclaredMethods, getLowerBounds, getOwnerType, getRecordComponents, getSort, getStackSize, getSymbol, getTypeArguments, getTypeName, getTypeVariableSource, getUpperBounds, hashCode, isArray, isPrimitive, isRecord, represents, toString
-
Methods inherited from class net.bytebuddy.description.type.TypeDescription.Generic.AbstractBase
asGenericType, asRawType, getModifiers
-
Methods inherited from class net.bytebuddy.description.ModifierReviewable.AbstractBase
getEnumerationState, getFieldManifestation, getFieldPersistence, getMandate, getMethodManifestation, getMethodStrictness, getOpenness, getOwnership, getParameterManifestation, getProvisioningState, getRequiredPhase, getSynchronizationState, getSyntheticState, getTransitivity, getTypeManifestation, getVisibility, isAbstract, isAnnotation, isBridge, isDeprecated, isEnum, isFinal, isInterface, isMandated, isNative, isOpen, isPackagePrivate, isPrivate, isProtected, isPublic, isStatic, isStaticPhase, isStrict, isSynchronized, isSynthetic, isTransient, isTransitive, isVarArgs, isVolatile
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface net.bytebuddy.description.ModifierReviewable
getSyntheticState, isFinal, isSynthetic
-
Methods inherited from interface net.bytebuddy.description.ModifierReviewable.ForTypeDefinition
getTypeManifestation, isAnnotation, isInterface
-
Methods inherited from interface net.bytebuddy.description.ModifierReviewable.OfAbstraction
isAbstract
-
Methods inherited from interface net.bytebuddy.description.ModifierReviewable.OfByteCodeElement
getOwnership, getVisibility, isDeprecated, isPackagePrivate, isPrivate, isProtected, isPublic, isStatic
-
Methods inherited from interface net.bytebuddy.description.ModifierReviewable.OfEnumeration
getEnumerationState, isEnum
-
-
-
-
Field Detail
-
delegate
private final TypeDescription.Generic delegate
The delegate type description.
-
classLoader
@MaybeNull private final java.lang.ClassLoader classLoader
The class loader to use for loading types which might benullto represent the bootstrap class loader.
-
classLoadingDelegate
private final TypeDescription.SuperTypeLoading.ClassLoadingDelegate classLoadingDelegate
A delegate for loading a type.
-
-
Constructor Detail
-
ClassLoadingTypeProjection
protected ClassLoadingTypeProjection(TypeDescription.Generic delegate, @MaybeNull java.lang.ClassLoader classLoader, TypeDescription.SuperTypeLoading.ClassLoadingDelegate classLoadingDelegate)
Creates a class loading type description.- Parameters:
delegate- The delegate type description.classLoader- The class loader to use for loading types which might benullto represent the bootstrap class loader.classLoadingDelegate- A delegate for loading a type.
-
-
Method Detail
-
getDeclaredAnnotations
public AnnotationList getDeclaredAnnotations()
Returns a list of annotations that are declared by this instance.- Returns:
- A list of declared annotations.
-
asErasure
@Enhance("erasure") public TypeDescription asErasure()
Returns the erasure of this type. Wildcard types (TypeDefinition.Sort.WILDCARD) do not have a well-defined erasure and cause anIllegalStateExceptionto be thrown.- Returns:
- The erasure of this type.
-
resolve
protected TypeDescription.Generic resolve()
Description copied from class:TypeDescription.Generic.LazyProjectionResolves the actual generic type.- Specified by:
resolvein classTypeDescription.Generic.LazyProjection- Returns:
- An actual description of the represented generic type.
-
getSuperClass
@MaybeNull @Enhance("superClass") public TypeDescription.Generic getSuperClass()
Returns the super class of this type. A super type is only defined for non-generic types (TypeDefinition.Sort.NON_GENERIC), parameterized types (TypeDefinition.Sort.PARAMETERIZED) or generic array types (TypeDefinition.Sort.GENERIC_ARRAY) types. Interface types and theObjectclass do not define a super class wherenullis returned. Array types defineObjectas their direct super class.- Returns:
- The super class of this type or
nullif no super class exists for this type.
-
getInterfaces
@Enhance("interfaces") public TypeList.Generic getInterfaces()
Returns the interfaces that this type implements. A super type is only defined for non-generic types (TypeDefinition.Sort.NON_GENERIC), parameterized types (TypeDefinition.Sort.PARAMETERIZED) or generic array types (TypeDefinition.Sort.GENERIC_ARRAY) types.- Returns:
- The interfaces that this type implements.
-
iterator
public java.util.Iterator<TypeDefinition> iterator()
-
-