@NonNullByDefault public abstract class CustomTypeParameterSubstitutor extends TypeParameterSubstitutor<ConstraintVisitingInfo>
Modifier | Constructor and Description |
---|---|
protected |
CustomTypeParameterSubstitutor(java.util.Map<JvmTypeParameter,LightweightMergedBoundTypeArgument> typeParameterMapping,
ITypeReferenceOwner owner) |
copy, doVisitAnyTypeReference, doVisitArrayTypeReference, doVisitCompoundTypeReference, doVisitFunctionTypeReference, doVisitUnknownTypeReference, doVisitWildcardTypeReference, enhanceMapping, getBoundTypeArgument, getOwner, getTypeParameterMapping, substitute, toString, visitTypeArgument, visitTypeArgument
doVisitMultiTypeReference, doVisitSynonymTypeReference, doVisitTypeReference, doVisitUnboundTypeReference
protected CustomTypeParameterSubstitutor(java.util.Map<JvmTypeParameter,LightweightMergedBoundTypeArgument> typeParameterMapping, ITypeReferenceOwner owner)
public LightweightTypeReference doVisitParameterizedTypeReference(ParameterizedTypeReference reference, ConstraintVisitingInfo visiting)
doVisitParameterizedTypeReference
in class TypeParameterSubstitutor<ConstraintVisitingInfo>
protected LightweightTypeReference doVisitParameterizedTypeReference(ParameterizedTypeReference reference, JvmType type, ConstraintVisitingInfo visiting)
doVisitParameterizedTypeReference
in class TypeParameterSubstitutor<ConstraintVisitingInfo>
protected boolean isDeclaredTypeParameter(JvmTypeParameter typeParameter)
@Nullable protected LightweightMergedBoundTypeArgument getBoundTypeArgument(JvmTypeParameter type, ConstraintVisitingInfo info)
type
- the type parameter that is boundinfo
- the current traversal state@Nullable protected abstract LightweightTypeReference getUnmappedSubstitute(ParameterizedTypeReference reference, JvmTypeParameter type, ConstraintVisitingInfo visiting)
protected LightweightTypeReference getDeclaredUpperBound(@Nullable JvmTypeParameterDeclarator type, int parameterIndex, ConstraintVisitingInfo visiting)
protected LightweightTypeReference getObjectReference()
@Nullable protected LightweightTypeReference getDeclaredUpperBound(JvmTypeParameter typeParameter, ConstraintVisitingInfo visiting)
public LightweightTypeReference substitute(LightweightTypeReference original)
substitute
in class TypeParameterSubstitutor<ConstraintVisitingInfo>
protected ConstraintVisitingInfo createVisiting()
createVisiting
in class TypeParameterSubstitutor<ConstraintVisitingInfo>
protected ConstraintVisitingInfo createVisiting(JvmTypeParameter initialValue)