code: private static Conversion<?> getTypeConversion(
  			Object typeKey, Object value) {
  
  		// Check if the provided value is already of the target type
  		if (typeKey instanceof Class && ((Class)typeKey)!=Object.class
  				&& ((Class)typeKey).isInstance(value)) {
  			return IDENTITY_CONVERSION;
  		}
  
  		// Find the type conversion object
  		return (value instanceof Convertible)
  			? ((Convertible)value).getTypeConversion(typeKey)
  			: typeConversions.get(typeKey);
  	}
docs: Obtain a conversion for the specified type key and value