public class ReferenceTypeImpl extends ResolvedReferenceType
JAVA_LANG_ENUM, JAVA_LANG_OBJECT, typeDeclaration, typeParametersMap
Constructor and Description |
---|
ReferenceTypeImpl(ResolvedReferenceTypeDeclaration typeDeclaration) |
ReferenceTypeImpl(ResolvedReferenceTypeDeclaration typeDeclaration,
List<ResolvedType> typeArguments) |
Modifier and Type | Method and Description |
---|---|
ResolvedTypeParameterDeclaration |
asTypeParameter() |
protected ResolvedReferenceType |
create(ResolvedReferenceTypeDeclaration typeDeclaration) |
protected ResolvedReferenceType |
create(ResolvedReferenceTypeDeclaration typeDeclaration,
List<ResolvedType> typeParametersCorrected) |
ResolvedReferenceType |
deriveTypeParameters(ResolvedTypeParametersMap typeParametersMap) |
List<ResolvedReferenceType> |
getAllAncestors()
Return all ancestors, that means all superclasses and interfaces.
|
List<ResolvedReferenceType> |
getAllAncestors(Function<ResolvedReferenceTypeDeclaration,List<ResolvedReferenceType>> traverser)
Return all ancestors, that means all superclasses and interfaces.
|
Set<ResolvedFieldDeclaration> |
getDeclaredFields()
Fields declared on this type.
|
Set<MethodUsage> |
getDeclaredMethods()
Methods declared on this type.
|
List<ResolvedReferenceType> |
getDirectAncestors()
Return direct ancestors, that means the superclasses and interfaces implemented directly.
|
boolean |
isAssignableBy(ResolvedType other)
This method checks if ThisType t = new OtherType() would compile.
|
boolean |
mention(List<ResolvedTypeParameterDeclaration> typeParameters)
Does this type mention at all, directly or indirectly, the given type parameters?
|
ResolvedType |
toRawType() |
ResolvedType |
transformTypeParameters(ResolvedTypeTransformer transformer)
Execute a transformation on all the type parameters of this element.
|
static ResolvedReferenceType |
undeterminedParameters(ResolvedReferenceTypeDeclaration typeDeclaration) |
asReferenceType, compareConsideringTypeParameters, create, describe, equals, erasure, getAllClassesAncestors, getAllFieldsVisibleToInheritors, getAllInterfacesAncestors, getAllMethods, getAllMethodsVisibleToInheritors, getFieldType, getGenericParameterByName, getId, getQualifiedName, getTypeDeclaration, getTypeParametersMap, hashCode, hasName, isCorrespondingBoxingType, isJavaLangEnum, isJavaLangObject, isRawType, isReferenceType, isUnboxable, isUnboxableTo, replaceTypeVariables, toDescriptor, toString, toUnboxedType, typeParametersMap, typeParametersValues, typeParamValue
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
arrayLevel, asArrayType, asConstraintType, asPrimitive, asTypeVariable, asUnionType, asWildcard, isArray, isConstraint, isInferenceVariable, isNull, isNumericType, isPrimitive, isReference, isTypeVariable, isUnionType, isVoid, isWildcard, replaceTypeVariables, solveGenericTypes
useThisTypeParametersOnTheGivenType
public ReferenceTypeImpl(ResolvedReferenceTypeDeclaration typeDeclaration)
public ReferenceTypeImpl(ResolvedReferenceTypeDeclaration typeDeclaration, List<ResolvedType> typeArguments)
public static ResolvedReferenceType undeterminedParameters(ResolvedReferenceTypeDeclaration typeDeclaration)
protected ResolvedReferenceType create(ResolvedReferenceTypeDeclaration typeDeclaration, List<ResolvedType> typeParametersCorrected)
create
in class ResolvedReferenceType
protected ResolvedReferenceType create(ResolvedReferenceTypeDeclaration typeDeclaration)
create
in class ResolvedReferenceType
public ResolvedTypeParameterDeclaration asTypeParameter()
public boolean isAssignableBy(ResolvedType other)
isAssignableBy
in interface ResolvedType
isAssignableBy
in class ResolvedReferenceType
public Set<MethodUsage> getDeclaredMethods()
ResolvedReferenceType
getDeclaredMethods
in class ResolvedReferenceType
public ResolvedType toRawType()
toRawType
in class ResolvedReferenceType
public boolean mention(List<ResolvedTypeParameterDeclaration> typeParameters)
ResolvedType
public ResolvedType transformTypeParameters(ResolvedTypeTransformer transformer)
transformTypeParameters
in class ResolvedReferenceType
public List<ResolvedReferenceType> getAllAncestors()
ResolvedReferenceType
For example, given:
class Foo<A, B> {} class Bar<C> extends Foo<C, String> {}
a call to getAllAncestors on a reference to Bar having type parameter Boolean should include Foo<Boolean, String>.
getAllAncestors
in class ResolvedReferenceType
public List<ResolvedReferenceType> getAllAncestors(Function<ResolvedReferenceTypeDeclaration,List<ResolvedReferenceType>> traverser)
ResolvedReferenceType
getAllAncestors
in class ResolvedReferenceType
public List<ResolvedReferenceType> getDirectAncestors()
ResolvedReferenceType
getDirectAncestors
in class ResolvedReferenceType
public ResolvedReferenceType deriveTypeParameters(ResolvedTypeParametersMap typeParametersMap)
deriveTypeParameters
in class ResolvedReferenceType
public Set<ResolvedFieldDeclaration> getDeclaredFields()
ResolvedReferenceType
getDeclaredFields
in class ResolvedReferenceType
Copyright © 2007–2024. All rights reserved.