Top Description Constructors Methods
com.fasterxml.jackson.databind.introspect

pack-priv final Class MethodGenericTypeResolver

extends Object
Class Inheritance
Imports
com.fasterxml.jackson.databind.JavaType, com.fasterxml.jackson.databind.type.TypeBindings, .TypeFactory, java.lang.reflect.Method, .ParameterizedType, .Type, .TypeVariable, .WildcardType, java.util.ArrayList, .Objects

Internal utility functionality to handle type resolution for method type variables based on the requested result type: this is needed to work around the problem of static factory methods not being able to use class type variable bindings (see [databind#2895] for more).
Since
2.12

Constructor Summary

AccessConstructor and Description
pack-priv

Method Summary

Modifier and TypeMethod and Description
pack-priv static TypeBindings
bindMethodTypeParameters(Method candidate, JavaType requestedType, TypeResolutionContext emptyTypeResCtxt)

Returns TypeBindings with additional type information based on requestedType if possible, otherwise null.

private static TypeVariable<?>
findByName(TypeVariable<?>[] typeVariables, String name)

private static ParameterizedType
private static TypeVariable<?>
public static TypeResolutionContext
narrowMethodTypeParameters(Method candidate, JavaType requestedType, TypeFactory typeFactory, TypeResolutionContext emptyTypeResCtxt)

private static boolean
private static boolean
Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Constructor Detail

MethodGenericTypeResolverback to summary
pack-priv MethodGenericTypeResolver()

Method Detail

bindMethodTypeParametersback to summary
pack-priv static TypeBindings bindMethodTypeParameters(Method candidate, JavaType requestedType, TypeResolutionContext emptyTypeResCtxt)

Returns TypeBindings with additional type information based on requestedType if possible, otherwise null.

findByNameback to summary
private static TypeVariable<?> findByName(TypeVariable<?>[] typeVariables, String name)
maybeGetParameterizedTypeback to summary
private static ParameterizedType maybeGetParameterizedType(Type type)
maybeGetTypeVariableback to summary
private static TypeVariable<?> maybeGetTypeVariable(Type type)
narrowMethodTypeParametersback to summary
public static TypeResolutionContext narrowMethodTypeParameters(Method candidate, JavaType requestedType, TypeFactory typeFactory, TypeResolutionContext emptyTypeResCtxt)
pessimisticallyValidateBoundback to summary
private static boolean pessimisticallyValidateBound(TypeResolutionContext context, JavaType boundType, Type type)
pessimisticallyValidateBoundsback to summary
private static boolean pessimisticallyValidateBounds(TypeResolutionContext context, JavaType boundType, Type[] upperBound)