org.springframework.expression

## Interface TypeConverter

- All Known Implementing Classes:
    StandardTypeConverter

      public interface TypeConverter

  A type converter can convert values between different types encountered during expression evaluation. This is an SPI for the expression parser; see `ConversionService` for the primary user API to Spring's conversion facilities.
  Since:
    3.0
  Author:
    Andy Clement, Juergen Hoeller

- - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `canConvert(TypeDescriptor sourceType, TypeDescriptor targetType)` Return true if the type converter can convert the specified type to the desired target type.
    `Object` | `convertValue(Object value, TypeDescriptor sourceType, TypeDescriptor targetType)` Convert (may coerce) a value from one type to another, for example from a boolean to a string.

- - ### Method Detail

    - #### canConvert

          boolean canConvert(TypeDescriptor sourceType,
                           TypeDescriptor targetType)

      Return true if the type converter can convert the specified type to the desired target type.
      Parameters:
        `sourceType` - a type descriptor that describes the source type
        `targetType` - a type descriptor that describes the requested result type
      Returns:
        true if that conversion can be performed

    - #### convertValue

          Object convertValue(Object value,
                            TypeDescriptor sourceType,
                            TypeDescriptor targetType)

      Convert (may coerce) a value from one type to another, for example from a boolean to a string. The typeDescriptor parameter enables support for typed collections - if the caller really wishes they can have a List<Integer> for example, rather than simply a List.
      Parameters:
        `value` - the value to be converted
        `sourceType` - a type descriptor that supplies extra information about the source object
        `targetType` - a type descriptor that supplies extra information about the requested result type
      Returns:
        the converted value
      Throws:
        `EvaluationException` - if conversion is not possible