Package spoon.support.reflect.reference
Class CtIntersectionTypeReferenceImpl<T>
java.lang.Object
spoon.support.reflect.declaration.CtElementImpl
spoon.support.reflect.reference.CtReferenceImpl
spoon.support.reflect.reference.CtTypeReferenceImpl<T>
spoon.support.reflect.reference.CtIntersectionTypeReferenceImpl<T>
- All Implemented Interfaces:
Serializable,Cloneable,FactoryAccessor,SourcePositionHolder,CtElement,CtShadowable,CtTypeInformation,CtActualTypeContainer,CtIntersectionTypeReference<T>,CtReference,CtTypeReference<T>,CtQueryable,CtVisitable
public class CtIntersectionTypeReferenceImpl<T>
extends CtTypeReferenceImpl<T>
implements CtIntersectionTypeReference<T>
- See Also:
-
Field Summary
Fields inherited from class spoon.support.reflect.reference.CtReferenceImpl
simplenameFields inherited from class spoon.support.reflect.declaration.CtElementImpl
ERROR_MESSAGE_TO_STRING, factory, LOGGER, parentFields inherited from interface spoon.reflect.reference.CtTypeReference
NULL_TYPE_NAME, OMITTED_TYPE_ARG_NAME -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidAccepts a visitor<C extends CtIntersectionTypeReference>
CaddBound(CtTypeReference<?> bound) Adds a bound.clone()Clone the element which calls this method in a new object.List<CtTypeReference<?>>Gets the bounds of the intersection type.This method returns a reference to the erased type.booleanbooleanremoveBound(CtTypeReference<?> bound) Removes a bound.<C extends CtIntersectionTypeReference>
CsetBounds(List<CtTypeReference<?>> bounds) Sets the bounds of the intersection type.setSimplyQualified(boolean isSimplyQualified) Methods inherited from class spoon.support.reflect.reference.CtTypeReferenceImpl
addActualTypeArgument, asCtIntersectionTypeReference, box, canAccess, canAccess, findClass, getAccessType, getActualAnnotatedElement, getActualClass, getActualTypeArguments, getAllExecutables, getAllFields, getDeclaration, getDeclaredExecutables, getDeclaredField, getDeclaredFields, getDeclaredOrInheritedField, getDeclaringType, getModifiers, getPackage, getQualifiedName, getSuperclass, getSuperInterfaces, getTopLevelType, getTypeDeclaration, getTypeParameterDeclaration, isAnnotationType, isAnonymous, isArray, isClass, isEnum, isGenerics, isInterface, isLocalType, isParameterized, isPrimitive, isShadow, isSubtypeOf, removeActualTypeArgument, setActualTypeArguments, setDeclaringType, setPackage, setShadow, unboxMethods inherited from class spoon.support.reflect.reference.CtReferenceImpl
equals, getSimpleName, setComments, setSimpleNameMethods inherited from class spoon.support.reflect.declaration.CtElementImpl
addAnnotation, addComment, asIterable, comment, delete, descendantIterator, emptyList, emptySet, 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, setDocComment, setFactory, setImplicit, setParent, setPosition, setPositions, setValueByRole, toString, toStringDebug, unmodifiableList, updateAllParentsBelowMethods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface spoon.reflect.reference.CtActualTypeContainer
addActualTypeArgument, getActualTypeArguments, removeActualTypeArgument, setActualTypeArgumentsMethods 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, setDocComment, setImplicit, setParent, setPosition, setPositions, setValueByRole, toString, toStringDebug, updateAllParentsBelowMethods inherited from interface spoon.reflect.visitor.chain.CtQueryable
filterChildren, map, mapMethods inherited from interface spoon.reflect.reference.CtReference
setComments, setSimpleNameMethods inherited from interface spoon.reflect.declaration.CtShadowable
isShadow, setShadowMethods inherited from interface spoon.reflect.declaration.CtTypeInformation
getAllExecutables, getAllFields, getDeclaredExecutables, getDeclaredField, getDeclaredFields, getDeclaredOrInheritedField, getQualifiedName, isAnnotationType, isAnonymous, isArray, isClass, isEnum, isGenerics, isInterface, isLocalType, isParameterized, isPrimitive, isSubtypeOfMethods inherited from interface spoon.reflect.reference.CtTypeReference
asCtIntersectionTypeReference, box, canAccess, canAccess, getAccessType, getActualClass, getDeclaration, getDeclaringType, getModifiers, getPackage, getSimpleName, getSuperclass, getSuperInterfaces, getTopLevelType, getTypeDeclaration, getTypeParameterDeclaration, setDeclaringType, setPackage, unboxMethods inherited from interface spoon.processing.FactoryAccessor
getFactory, setFactory
-
Constructor Details
-
CtIntersectionTypeReferenceImpl
public CtIntersectionTypeReferenceImpl()
-
-
Method Details
-
accept
Description copied from interface:CtVisitableAccepts a visitor- Specified by:
acceptin interfaceCtVisitable- Overrides:
acceptin classCtTypeReferenceImpl<T>
-
getBounds
Description copied from interface:CtIntersectionTypeReferenceGets the bounds of the intersection type. Note that the first bound correspond to the current intersection type.T extends Interface1 & Interface2 // CtTypeParameterReference#getBoundingType == Interface1 and getBounds().get(0) == Interface1- Specified by:
getBoundsin interfaceCtIntersectionTypeReference<T>
-
setBounds
Description copied from interface:CtIntersectionTypeReferenceSets the bounds of the intersection type.- Specified by:
setBoundsin interfaceCtIntersectionTypeReference<T>
-
addBound
Description copied from interface:CtIntersectionTypeReferenceAdds a bound.- Specified by:
addBoundin interfaceCtIntersectionTypeReference<T>
-
removeBound
Description copied from interface:CtIntersectionTypeReferenceRemoves a bound.- Specified by:
removeBoundin interfaceCtIntersectionTypeReference<T>
-
getTypeErasure
Description copied from interface:CtTypeInformationThis method returns a reference to the erased type.For example, this will return
ListforList<String>, orEnumfor the type parameterEin the enum declaration.- Specified by:
getTypeErasurein interfaceCtTypeInformation- Overrides:
getTypeErasurein classCtTypeReferenceImpl<T>- Returns:
- a reference to the erased type
- See Also:
-
clone
Description copied from interface:CtElementClone 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:
clonein interfaceCtElement- Specified by:
clonein interfaceCtIntersectionTypeReference<T>- Specified by:
clonein interfaceCtReference- Specified by:
clonein interfaceCtTypeReference<T>- Overrides:
clonein classCtTypeReferenceImpl<T>- Returns:
- a clone of this element. All children are cloned, but the parent of the returned clone is set to null.
-
isSimplyQualified
public boolean isSimplyQualified()- Specified by:
isSimplyQualifiedin interfaceCtTypeReference<T>- Overrides:
isSimplyQualifiedin classCtTypeReferenceImpl<T>- Returns:
- false then fully qualified name is printed. true then type simple name is printed.
-
setSimplyQualified
- Specified by:
setSimplyQualifiedin interfaceCtTypeReference<T>- Overrides:
setSimplyQualifiedin classCtTypeReferenceImpl<T>- Parameters:
isSimplyQualified- false then the reference is printed fully qualified name. true then only the type name is printed.
-