Class ReferenceTypeImpl
- java.lang.Object
-
- com.github.javaparser.resolution.types.ResolvedReferenceType
-
- com.github.javaparser.resolution.model.typesystem.ReferenceTypeImpl
-
- All Implemented Interfaces:
ResolvedTypeParameterValueProvider,ResolvedTypeParametrized,ResolvedType
public class ReferenceTypeImpl extends ResolvedReferenceType
- Author:
- Federico Tomassetti
-
-
Field Summary
-
Fields inherited from class com.github.javaparser.resolution.types.ResolvedReferenceType
JAVA_LANG_ENUM, JAVA_LANG_OBJECT, JAVA_LANG_RECORD, typeDeclaration, typeParametersMap
-
-
Constructor Summary
Constructors Constructor Description ReferenceTypeImpl(ResolvedReferenceTypeDeclaration typeDeclaration)ReferenceTypeImpl(ResolvedReferenceTypeDeclaration typeDeclaration, List<ResolvedType> typeArguments)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description ResolvedTypeParameterDeclarationasTypeParameter()protected ResolvedReferenceTypecreate(ResolvedReferenceTypeDeclaration typeDeclaration)protected ResolvedReferenceTypecreate(ResolvedReferenceTypeDeclaration typeDeclaration, List<ResolvedType> typeParametersCorrected)ResolvedReferenceTypederiveTypeParameters(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.booleanisAssignableBy(ResolvedType other)This method checks if ThisType t = new OtherType() would compile.booleanmention(List<ResolvedTypeParameterDeclaration> typeParameters)Does this type mention at all, directly or indirectly, the given type parameters?ResolvedTypetoRawType()ResolvedTypetransformTypeParameters(ResolvedTypeTransformer transformer)Execute a transformation on all the type parameters of this element.static ResolvedReferenceTypeundeterminedParameters(ResolvedReferenceTypeDeclaration typeDeclaration)-
Methods inherited from class com.github.javaparser.resolution.types.ResolvedReferenceType
asReferenceType, compareConsideringTypeParameters, create, describe, equals, erasure, getAllClassesAncestors, getAllFieldsVisibleToInheritors, getAllInterfacesAncestors, getAllMethods, getAllMethodsVisibleToInheritors, getFieldType, getGenericParameterByName, getId, getQualifiedName, getTypeDeclaration, getTypeParametersMap, hashCode, hasName, isCorrespondingBoxingType, isJavaLangEnum, isJavaLangObject, isJavaLangRecord, isRawType, isReferenceType, isUnboxable, isUnboxableTo, replaceTypeVariables, toDescriptor, toString, toUnboxedType, typeParametersMap, typeParametersValues, typeParamValue
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface com.github.javaparser.resolution.types.ResolvedType
arrayLevel, asArrayType, asConstraintType, asPrimitive, asTypeVariable, asUnionType, asWildcard, isArray, isConstraint, isInferenceVariable, isNull, isNumericType, isPrimitive, isReference, isTypeVariable, isUnionType, isVoid, isWildcard, replaceTypeVariables, solveGenericTypes
-
Methods inherited from interface com.github.javaparser.resolution.types.parametrization.ResolvedTypeParameterValueProvider
useThisTypeParametersOnTheGivenType
-
-
-
-
Constructor Detail
-
ReferenceTypeImpl
public ReferenceTypeImpl(ResolvedReferenceTypeDeclaration typeDeclaration)
-
ReferenceTypeImpl
public ReferenceTypeImpl(ResolvedReferenceTypeDeclaration typeDeclaration, List<ResolvedType> typeArguments)
-
-
Method Detail
-
undeterminedParameters
public static ResolvedReferenceType undeterminedParameters(ResolvedReferenceTypeDeclaration typeDeclaration)
-
create
protected ResolvedReferenceType create(ResolvedReferenceTypeDeclaration typeDeclaration, List<ResolvedType> typeParametersCorrected)
- Specified by:
createin classResolvedReferenceType
-
create
protected ResolvedReferenceType create(ResolvedReferenceTypeDeclaration typeDeclaration)
- Specified by:
createin classResolvedReferenceType
-
asTypeParameter
public ResolvedTypeParameterDeclaration asTypeParameter()
-
isAssignableBy
public boolean isAssignableBy(ResolvedType other)
This method checks if ThisType t = new OtherType() would compile.- Specified by:
isAssignableByin interfaceResolvedType- Specified by:
isAssignableByin classResolvedReferenceType
-
getDeclaredMethods
public Set<MethodUsage> getDeclaredMethods()
Description copied from class:ResolvedReferenceTypeMethods declared on this type.- Specified by:
getDeclaredMethodsin classResolvedReferenceType
-
toRawType
public ResolvedType toRawType()
- Specified by:
toRawTypein classResolvedReferenceType- Returns:
- A copy of the current reference type, without type parameters.
-
mention
public boolean mention(List<ResolvedTypeParameterDeclaration> typeParameters)
Description copied from interface:ResolvedTypeDoes this type mention at all, directly or indirectly, the given type parameters?
-
transformTypeParameters
public ResolvedType transformTypeParameters(ResolvedTypeTransformer transformer)
Execute a transformation on all the type parameters of this element.- Specified by:
transformTypeParametersin classResolvedReferenceType
-
getAllAncestors
public List<ResolvedReferenceType> getAllAncestors()
Description copied from class:ResolvedReferenceTypeReturn all ancestors, that means all superclasses and interfaces. This list should always include Object (unless this is a reference to Object). The type typeParametersValues should be expressed in terms of this type typeParametersValues. The default order of presenting ancestors corresponds to a search in depth.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>.
- Specified by:
getAllAncestorsin classResolvedReferenceType
-
getAllAncestors
public List<ResolvedReferenceType> getAllAncestors(Function<ResolvedReferenceTypeDeclaration,List<ResolvedReferenceType>> traverser)
Description copied from class:ResolvedReferenceTypeReturn all ancestors, that means all superclasses and interfaces. This list should always include Object (unless this is a reference to Object). The type typeParametersValues should be expressed in terms of this type typeParametersValues.- Specified by:
getAllAncestorsin classResolvedReferenceType
-
getDirectAncestors
public List<ResolvedReferenceType> getDirectAncestors()
Description copied from class:ResolvedReferenceTypeReturn direct ancestors, that means the superclasses and interfaces implemented directly. This list should include Object if the class has no other superclass or the interface is not extending another interface. There is an exception for Object itself.- Specified by:
getDirectAncestorsin classResolvedReferenceType
-
deriveTypeParameters
public ResolvedReferenceType deriveTypeParameters(ResolvedTypeParametersMap typeParametersMap)
- Specified by:
deriveTypeParametersin classResolvedReferenceType
-
getDeclaredFields
public Set<ResolvedFieldDeclaration> getDeclaredFields()
Description copied from class:ResolvedReferenceTypeFields declared on this type.- Specified by:
getDeclaredFieldsin classResolvedReferenceType
-
-