Class InferenceVariable
java.lang.Object
com.github.javaparser.symbolsolver.resolution.typeinference.InferenceVariable
- All Implemented Interfaces:
com.github.javaparser.resolution.types.ResolvedType
public class InferenceVariable
extends Object
implements com.github.javaparser.resolution.types.ResolvedType
Are meta-variables for types - that is, they are special names that allow abstract reasoning about types.
To distinguish them from type variables, inference variables are represented with Greek letters, principally α.
See JLS 18
- Author:
- Federico Tomassetti
-
Constructor Summary
ConstructorsConstructorDescriptionInferenceVariable(String name, com.github.javaparser.resolution.declarations.ResolvedTypeParameterDeclaration typeParameterDeclaration) -
Method Summary
Modifier and TypeMethodDescriptiondescribe()booleancom.github.javaparser.resolution.declarations.ResolvedTypeParameterDeclarationinthashCode()static List<InferenceVariable> instantiate(List<com.github.javaparser.resolution.declarations.ResolvedTypeParameterDeclaration> typeParameterDeclarations) booleanisAssignableBy(com.github.javaparser.resolution.types.ResolvedType other) booleanbooleanmention(List<com.github.javaparser.resolution.declarations.ResolvedTypeParameterDeclaration> typeParameters) toString()static InferenceVariableunnamed(com.github.javaparser.resolution.declarations.ResolvedTypeParameterDeclaration typeParameterDeclaration) Methods inherited from interface com.github.javaparser.resolution.types.ResolvedType
arrayLevel, asArrayType, asConstraintType, asPrimitive, asReferenceType, asTypeParameter, asTypeVariable, asUnionType, asWildcard, erasure, isArray, isConstraint, isNull, isNumericType, isPrimitive, isReference, isReferenceType, isTypeVariable, isUnionType, isVoid, isWildcard, replaceTypeVariables, replaceTypeVariables, solveGenericTypes, toDescriptor
-
Constructor Details
-
InferenceVariable
public InferenceVariable(String name, com.github.javaparser.resolution.declarations.ResolvedTypeParameterDeclaration typeParameterDeclaration)
-
-
Method Details
-
instantiate
public static List<InferenceVariable> instantiate(List<com.github.javaparser.resolution.declarations.ResolvedTypeParameterDeclaration> typeParameterDeclarations) -
unnamed
public static InferenceVariable unnamed(com.github.javaparser.resolution.declarations.ResolvedTypeParameterDeclaration typeParameterDeclaration) -
isInferenceVariable
public boolean isInferenceVariable()- Specified by:
isInferenceVariablein interfacecom.github.javaparser.resolution.types.ResolvedType
-
describe
- Specified by:
describein interfacecom.github.javaparser.resolution.types.ResolvedType
-
equals
-
hashCode
-
isAssignableBy
public boolean isAssignableBy(com.github.javaparser.resolution.types.ResolvedType other) - Specified by:
isAssignableByin interfacecom.github.javaparser.resolution.types.ResolvedType
-
getTypeParameterDeclaration
public com.github.javaparser.resolution.declarations.ResolvedTypeParameterDeclaration getTypeParameterDeclaration() -
toString
-
mention
public boolean mention(List<com.github.javaparser.resolution.declarations.ResolvedTypeParameterDeclaration> typeParameters) - Specified by:
mentionin interfacecom.github.javaparser.resolution.types.ResolvedType
-