Class CtAnnotationTypeImpl<T extends Annotation>
java.lang.Object
spoon.support.reflect.declaration.CtElementImpl
spoon.support.reflect.declaration.CtNamedElementImpl
spoon.support.reflect.declaration.CtTypeImpl<T>
spoon.support.reflect.declaration.CtAnnotationTypeImpl<T>
- All Implemented Interfaces:
Serializable
,Cloneable
,FactoryAccessor
,SourcePositionHolder
,CtAnnotationType<T>
,CtElement
,CtFormalTypeDeclarer
,CtModifiable
,CtNamedElement
,CtShadowable
,CtType<T>
,CtTypeInformation
,CtTypeMember
,CtQueryable
,CtVisitable
public class CtAnnotationTypeImpl<T extends Annotation>
extends CtTypeImpl<T>
implements CtAnnotationType<T>
The implementation for
CtAnnotationType
.- Author:
- Renaud Pawlak
- See Also:
- Serialized Form
-
Field Summary
Fields inherited from class spoon.support.reflect.declaration.CtElementImpl
ERROR_MESSAGE_TO_STRING, factory, LOGGER, parent
Fields inherited from interface spoon.reflect.declaration.CtType
INNERTTYPE_SEPARATOR, NAME_UNKNOWN
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
Accepts a visitorAdds a method to this type.clone()
Clone the element which calls this method in a new object.Returns the formal type parameters of this generic element.Returns a reference to the type directly extended by this type.Set<CtTypeReference<?>>
Returns the interface types directly implemented by this class or extended by this interface.boolean
Returns true if this type is an annotation type.boolean
isSubtypeOf(CtTypeReference<?> type)
Checks if this type is a subtype of the given type.<C extends CtFormalTypeDeclarer>
CsetFormalCtTypeParameters(List<CtTypeParameter> formalTypeParameters)
Sets the type parameters of this generic element.setSuperclass(CtTypeReference<?> superClass)
Sets the superclass type.setSuperInterfaces(Set<CtTypeReference<?>> interfaces)
Sets the super interfaces of this type.Methods inherited from class spoon.support.reflect.declaration.CtTypeImpl
addField, addField, addFieldAtTop, addFormalCtTypeParameter, addFormalCtTypeParameterAt, addModifier, addNestedType, addSuperInterface, addTypeMember, addTypeMemberAt, compileAndReplaceSnippets, copyType, getActualClass, getAllExecutables, getAllFields, getAllMethods, getDeclaredExecutables, getDeclaredField, getDeclaredFields, getDeclaredOrInheritedField, getDeclaringType, getExtendedModifiers, getField, getFields, getMethod, getMethod, getMethods, getMethodsAnnotatedWith, getMethodsByName, getModifiers, getNestedType, getNestedTypes, getPackage, getQualifiedName, getReference, getTopLevelType, getTypeErasure, getTypeMembers, getUsedTypes, getVisibility, hasMethod, hasModifier, hasSameParameters, isAbstract, isAnonymous, isArray, isClass, isEnum, isFinal, isGenerics, isInterface, isLocalType, isNative, isParameterized, isPrimitive, isPrivate, isProtected, isPublic, isShadow, isStatic, isStrictfp, isSynchronized, isTopLevel, isTransient, isVolatile, removeField, removeFormalCtTypeParameter, removeMethod, removeModifier, removeNestedType, removeSuperInterface, removeTypeMember, setExtendedModifiers, setFields, setMethods, setModifiers, setNestedTypes, setShadow, setSimpleName, setTypeMembers, setVisibility, toStringWithImports
Methods inherited from class spoon.support.reflect.declaration.CtNamedElementImpl
getSimpleName
Methods inherited from class spoon.support.reflect.declaration.CtElementImpl
addAnnotation, addComment, asIterable, comment, delete, descendantIterator, emptyList, emptySet, equals, filterChildren, getAllMetadata, getAnnotatedChildren, getAnnotation, getAnnotation, getAnnotations, getComments, getDirectChildren, getDocComment, getElements, getFactory, getMetadata, getMetadataKeys, getOriginalSourceFragment, getParent, getParent, getParent, getPath, getPosition, getReferencedTypes, getRoleInParent, getShortRepresentation, getValueByRole, hasAnnotation, hashCode, hasParent, isImplicit, isParentInitialized, map, map, prettyprint, putMetadata, removeAnnotation, removeComment, replace, replace, setAllMetadata, setAnnotations, setComments, setDocComment, setFactory, setImplicit, setParent, setPosition, setPositions, setValueByRole, toString, toStringDebug, unmodifiableList, updateAllParentsBelow
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface spoon.reflect.declaration.CtAnnotationType
setMethods
Methods inherited from interface spoon.reflect.declaration.CtElement
addAnnotation, addComment, asIterable, delete, descendantIterator, getAllMetadata, getAnnotatedChildren, getAnnotation, getAnnotation, getAnnotations, getComments, getDirectChildren, getDocComment, getElements, getMetadata, getMetadataKeys, getOriginalSourceFragment, getParent, getParent, getParent, getPath, getPosition, getReferencedTypes, getRoleInParent, getShortRepresentation, getValueByRole, hasAnnotation, hasParent, isImplicit, isParentInitialized, prettyprint, putMetadata, removeAnnotation, removeComment, replace, replace, setAllMetadata, setAnnotations, setComments, setDocComment, setImplicit, setParent, setPosition, setPositions, setValueByRole, toString, toStringDebug, updateAllParentsBelow
Methods inherited from interface spoon.reflect.declaration.CtFormalTypeDeclarer
addFormalCtTypeParameter, addFormalCtTypeParameterAt, removeFormalCtTypeParameter
Methods inherited from interface spoon.reflect.declaration.CtModifiable
addModifier, getExtendedModifiers, getModifiers, getVisibility, hasModifier, isAbstract, isFinal, isNative, isPrivate, isProtected, isPublic, isStatic, isStrictfp, isSynchronized, isTransient, isVolatile, removeModifier, setExtendedModifiers, setModifiers, setVisibility
Methods inherited from interface spoon.reflect.declaration.CtNamedElement
setSimpleName
Methods inherited from interface spoon.reflect.visitor.chain.CtQueryable
filterChildren, map, map
Methods inherited from interface spoon.reflect.declaration.CtShadowable
isShadow, setShadow
Methods inherited from interface spoon.reflect.declaration.CtType
addField, addField, addFieldAtTop, addNestedType, addSuperInterface, addTypeMember, addTypeMemberAt, compileAndReplaceSnippets, copyType, getActualClass, getAllMethods, getField, getFields, getMethod, getMethod, getMethods, getMethodsAnnotatedWith, getMethodsByName, getNestedType, getNestedTypes, getPackage, getReference, getSimpleName, getTypeMembers, getUsedTypes, hasMethod, isTopLevel, removeField, removeMethod, removeNestedType, removeSuperInterface, removeTypeMember, setFields, setNestedTypes, setTypeMembers, toStringWithImports
Methods inherited from interface spoon.reflect.declaration.CtTypeInformation
getAllExecutables, getAllFields, getDeclaredExecutables, getDeclaredField, getDeclaredFields, getDeclaredOrInheritedField, getModifiers, getQualifiedName, getTypeErasure, isAnonymous, isArray, isClass, isEnum, isGenerics, isInterface, isLocalType, isParameterized, isPrimitive
Methods inherited from interface spoon.reflect.declaration.CtTypeMember
getDeclaringType, getTopLevelType
Methods inherited from interface spoon.processing.FactoryAccessor
getFactory, setFactory
-
Constructor Details
-
CtAnnotationTypeImpl
public CtAnnotationTypeImpl()
-
-
Method Details
-
accept
Description copied from interface:CtVisitable
Accepts a visitor- Specified by:
accept
in interfaceCtVisitable
-
isAnnotationType
public boolean isAnnotationType()Description copied from interface:CtTypeInformation
Returns true if this type is an annotation type.- Specified by:
isAnnotationType
in interfaceCtTypeInformation
- Overrides:
isAnnotationType
in classCtTypeImpl<T extends Annotation>
-
getSuperInterfaces
Description copied from interface:CtTypeInformation
Returns the interface types directly implemented by this class or extended by this interface.- Specified by:
getSuperInterfaces
in interfaceCtTypeInformation
- Overrides:
getSuperInterfaces
in classCtTypeImpl<T extends Annotation>
-
getSuperclass
Description copied from interface:CtTypeInformation
Returns a reference to the type directly extended by this type.To get the
CtType
of the super class, useCtTypeReference.getDeclaration()
orCtTypeReference.getTypeDeclaration()
on theCtTypeReference
returned by this method.- Specified by:
getSuperclass
in interfaceCtTypeInformation
- Overrides:
getSuperclass
in classCtTypeImpl<T extends Annotation>
- Returns:
- the type explicitly extended by this type, or
null
if there is none or if the super type is not in the classpath (in noclasspath mode). If a class does not explicitly extend another classnull
is returned (notObject
). For types like enums that implicitly extend a superclass likeEnum
, this method returns that class.
-
setSuperclass
Description copied from interface:CtType
Sets the superclass type.- Specified by:
setSuperclass
in interfaceCtAnnotationType<T extends Annotation>
- Specified by:
setSuperclass
in interfaceCtType<T extends Annotation>
- Overrides:
setSuperclass
in classCtTypeImpl<T extends Annotation>
-
setSuperInterfaces
Description copied from interface:CtType
Sets the super interfaces of this type.- Specified by:
setSuperInterfaces
in interfaceCtAnnotationType<T extends Annotation>
- Specified by:
setSuperInterfaces
in interfaceCtType<T extends Annotation>
- Overrides:
setSuperInterfaces
in classCtTypeImpl<T extends Annotation>
-
getFormalCtTypeParameters
Description copied from interface:CtFormalTypeDeclarer
Returns the formal type parameters of this generic element.- Specified by:
getFormalCtTypeParameters
in interfaceCtFormalTypeDeclarer
- Overrides:
getFormalCtTypeParameters
in classCtTypeImpl<T extends Annotation>
-
setFormalCtTypeParameters
public <C extends CtFormalTypeDeclarer> C setFormalCtTypeParameters(List<CtTypeParameter> formalTypeParameters)Description copied from interface:CtFormalTypeDeclarer
Sets the type parameters of this generic element.- Specified by:
setFormalCtTypeParameters
in interfaceCtAnnotationType<T extends Annotation>
- Specified by:
setFormalCtTypeParameters
in interfaceCtFormalTypeDeclarer
- Overrides:
setFormalCtTypeParameters
in classCtTypeImpl<T extends Annotation>
-
isSubtypeOf
Description copied from interface:CtTypeInformation
Checks if this type is a subtype of the given type.- Specified by:
isSubtypeOf
in interfaceCtTypeInformation
- Parameters:
type
- the type that might be a parent of this type.- Returns:
true
if the referenced type is a subtype of the given type, otherwisefalse
. If this type is the same as the given type (typeX.isSubtypeOf(typeX)
), this method returnstrue
.
-
clone
Description copied from interface:CtElement
Clone the element which calls this method in a new object. Note that that references are kept as is, and thus, so if you clone whole classes or methods, some parts of the cloned element (eg executable references) may still point to the initial element. In this case, consider using methodsRefactoring.copyType(CtType)
andRefactoring.copyMethod(CtMethod)
instead which does additional work beyond cloning.- Specified by:
clone
in interfaceCtAnnotationType<T extends Annotation>
- Specified by:
clone
in interfaceCtElement
- Specified by:
clone
in interfaceCtNamedElement
- Specified by:
clone
in interfaceCtType<T extends Annotation>
- Overrides:
clone
in classCtTypeImpl<T extends Annotation>
-
getAnnotationMethods
- Specified by:
getAnnotationMethods
in interfaceCtAnnotationType<T extends Annotation>
-
addMethod
Description copied from interface:CtType
Adds a method to this type.- Specified by:
addMethod
in interfaceCtAnnotationType<T extends Annotation>
- Specified by:
addMethod
in interfaceCtType<T extends Annotation>
- Overrides:
addMethod
in classCtTypeImpl<T extends Annotation>
-