## Uses of Class
org.codehaus.jackson.map.TypeDeserializer

- Packages that use TypeDeserializer
  Package | Description
  --- | ---
  org.codehaus.jackson.map | Contains basic mapper (conversion) functionality that allows for converting between regular streaming json content and Java objects (beans or Tree Model: support for both is via `ObjectMapper` class, as well as convenience methods included in `JsonParser`
  org.codehaus.jackson.map.deser | Contains implementation classes of deserialization part of data binding.
  org.codehaus.jackson.map.deser.impl | Contains those implementation classes of deserialization part of data binding that are not considered part of public or semi-public interfaces.
  org.codehaus.jackson.map.deser.std | Contains public standard implementations of abstraction that Jackson uses.
  org.codehaus.jackson.map.jsontype | Package that contains interfaces that define how to implement functionality for dynamically resolving type during deserialization.
  org.codehaus.jackson.map.jsontype.impl | Package that contains standard implementations for `TypeResolverBuilder` and `TypeIdResolver`.
  org.codehaus.jackson.map.module | Package that contains classes and interfaces to help implement custom extension `Module`s (which are registered using `ObjectMapper.registerModule(org.codehaus.jackson.map.Module)`.
  org.codehaus.jackson.xc | Package that contains XML Compatibility functionality for Jackson, such as handlers for JAXB annotations

- - ### Uses of TypeDeserializer in org.codehaus.jackson.map

    Methods in org.codehaus.jackson.map that return TypeDeserializer
    Modifier and Type | Method and Description
    --- | ---
    `TypeDeserializer` | ObjectMapper.DefaultTypeResolverBuilder.`buildTypeDeserializer(DeserializationConfig config, JavaType baseType, Collection<NamedType> subtypes, BeanProperty property)`
    `TypeDeserializer` | DeserializerFactory.`findTypeDeserializer(DeserializationConfig config, JavaType baseType, BeanProperty property)` Method called to find and create a type information deserializer for given base type, if one is needed.

    Methods in org.codehaus.jackson.map with parameters of type TypeDeserializer
    Modifier and Type | Method and Description
    --- | ---
    `Object` | JsonDeserializer.`deserializeWithType(JsonParser jp, DeserializationContext ctxt, TypeDeserializer typeDeserializer)` Deserialization called when type being deserialized is defined to contain additional type identifier, to allow for correctly instantiating correct subtype.
    `JsonDeserializer<?>` | Deserializers.`findArrayDeserializer(ArrayType type, DeserializationConfig config, DeserializerProvider provider, BeanProperty property, TypeDeserializer elementTypeDeserializer, JsonDeserializer<?> elementDeserializer)` Method called to locate serializer for specified array type.
    `JsonDeserializer<?>` | Deserializers.Base.`findArrayDeserializer(ArrayType type, DeserializationConfig config, DeserializerProvider provider, BeanProperty property, TypeDeserializer elementTypeDeserializer, JsonDeserializer<?> elementDeserializer)`
    `JsonDeserializer<?>` | Deserializers.`findCollectionDeserializer(CollectionType type, DeserializationConfig config, DeserializerProvider provider, BeanDescription beanDesc, BeanProperty property, TypeDeserializer elementTypeDeserializer, JsonDeserializer<?> elementDeserializer)` Method called to locate serializer for specified `Collection` (List, Set etc) type.
    `JsonDeserializer<?>` | Deserializers.Base.`findCollectionDeserializer(CollectionType type, DeserializationConfig config, DeserializerProvider provider, BeanDescription beanDesc, BeanProperty property, TypeDeserializer elementTypeDeserializer, JsonDeserializer<?> elementDeserializer)`
    `JsonDeserializer<?>` | Deserializers.`findCollectionLikeDeserializer(CollectionLikeType type, DeserializationConfig config, DeserializerProvider provider, BeanDescription beanDesc, BeanProperty property, TypeDeserializer elementTypeDeserializer, JsonDeserializer<?> elementDeserializer)` Method called to locate serializer for specified "Collection-like" type (one that acts like `Collection` but does not implement it).
    `JsonDeserializer<?>` | Deserializers.Base.`findCollectionLikeDeserializer(CollectionLikeType type, DeserializationConfig config, DeserializerProvider provider, BeanDescription beanDesc, BeanProperty property, TypeDeserializer elementTypeDeserializer, JsonDeserializer<?> elementDeserializer)`
    `JsonDeserializer<?>` | Deserializers.`findMapDeserializer(MapType type, DeserializationConfig config, DeserializerProvider provider, BeanDescription beanDesc, BeanProperty property, KeyDeserializer keyDeserializer, TypeDeserializer elementTypeDeserializer, JsonDeserializer<?> elementDeserializer)` Method called to locate deserializer for specified `Map` type.
    `JsonDeserializer<?>` | Deserializers.Base.`findMapDeserializer(MapType type, DeserializationConfig config, DeserializerProvider provider, BeanDescription beanDesc, BeanProperty property, KeyDeserializer keyDeserializer, TypeDeserializer elementTypeDeserializer, JsonDeserializer<?> elementDeserializer)`
    `JsonDeserializer<?>` | Deserializers.`findMapLikeDeserializer(MapLikeType type, DeserializationConfig config, DeserializerProvider provider, BeanDescription beanDesc, BeanProperty property, KeyDeserializer keyDeserializer, TypeDeserializer elementTypeDeserializer, JsonDeserializer<?> elementDeserializer)` Method called to locate serializer for specified "Map-like" type (one that acts like `Map` but does not implement it).
    `JsonDeserializer<?>` | Deserializers.Base.`findMapLikeDeserializer(MapLikeType type, DeserializationConfig config, DeserializerProvider provider, BeanDescription beanDesc, BeanProperty property, KeyDeserializer keyDeserializer, TypeDeserializer elementTypeDeserializer, JsonDeserializer<?> elementDeserializer)`

  - ### Uses of TypeDeserializer in org.codehaus.jackson.map.deser

    Fields in org.codehaus.jackson.map.deser declared as TypeDeserializer
    Modifier and Type | Field and Description
    --- | ---
    `protected TypeDeserializer` | SettableBeanProperty.`_valueTypeDeserializer` If value will contain type information (to support polymorphic handling), this is the type deserializer used to handle type resolution.

    Methods in org.codehaus.jackson.map.deser that return TypeDeserializer
    Modifier and Type | Method and Description
    --- | ---
    `TypeDeserializer` | BasicDeserializerFactory.`findPropertyContentTypeDeserializer(DeserializationConfig config, JavaType containerType, AnnotatedMember propertyEntity, BeanProperty property)` Method called to find and create a type information deserializer for values of given container (list, array, map) property, if one is needed.
    `TypeDeserializer` | BasicDeserializerFactory.`findPropertyTypeDeserializer(DeserializationConfig config, JavaType baseType, AnnotatedMember annotated, BeanProperty property)` Method called to create a type information deserializer for values of given non-container property, if one is needed.
    `TypeDeserializer` | BasicDeserializerFactory.`findTypeDeserializer(DeserializationConfig config, JavaType baseType, BeanProperty property)`
    `TypeDeserializer` | SettableBeanProperty.`getValueTypeDeserializer()`

    Methods in org.codehaus.jackson.map.deser with parameters of type TypeDeserializer
    Modifier and Type | Method and Description
    --- | ---
    `protected JsonDeserializer<?>` | BeanDeserializerFactory.`_findCustomArrayDeserializer(ArrayType type, DeserializationConfig config, DeserializerProvider provider, BeanProperty property, TypeDeserializer elementTypeDeserializer, JsonDeserializer<?> elementDeserializer)`
    `protected abstract JsonDeserializer<?>` | BasicDeserializerFactory.`_findCustomArrayDeserializer(ArrayType type, DeserializationConfig config, DeserializerProvider p, BeanProperty property, TypeDeserializer elementTypeDeser, JsonDeserializer<?> elementDeser)`
    `protected JsonDeserializer<?>` | BeanDeserializerFactory.`_findCustomCollectionDeserializer(CollectionType type, DeserializationConfig config, DeserializerProvider provider, BasicBeanDescription beanDesc, BeanProperty property, TypeDeserializer elementTypeDeserializer, JsonDeserializer<?> elementDeserializer)`
    `protected abstract JsonDeserializer<?>` | BasicDeserializerFactory.`_findCustomCollectionDeserializer(CollectionType type, DeserializationConfig config, DeserializerProvider p, BasicBeanDescription beanDesc, BeanProperty property, TypeDeserializer elementTypeDeser, JsonDeserializer<?> elementDeser)`
    `protected JsonDeserializer<?>` | BeanDeserializerFactory.`_findCustomCollectionLikeDeserializer(CollectionLikeType type, DeserializationConfig config, DeserializerProvider provider, BasicBeanDescription beanDesc, BeanProperty property, TypeDeserializer elementTypeDeserializer, JsonDeserializer<?> elementDeserializer)`
    `protected abstract JsonDeserializer<?>` | BasicDeserializerFactory.`_findCustomCollectionLikeDeserializer(CollectionLikeType type, DeserializationConfig config, DeserializerProvider p, BasicBeanDescription beanDesc, BeanProperty property, TypeDeserializer elementTypeDeser, JsonDeserializer<?> elementDeser)`
    `protected JsonDeserializer<?>` | BeanDeserializerFactory.`_findCustomMapDeserializer(MapType type, DeserializationConfig config, DeserializerProvider provider, BasicBeanDescription beanDesc, BeanProperty property, KeyDeserializer keyDeserializer, TypeDeserializer elementTypeDeserializer, JsonDeserializer<?> elementDeserializer)`
    `protected abstract JsonDeserializer<?>` | BasicDeserializerFactory.`_findCustomMapDeserializer(MapType type, DeserializationConfig config, DeserializerProvider p, BasicBeanDescription beanDesc, BeanProperty property, KeyDeserializer keyDeser, TypeDeserializer elementTypeDeser, JsonDeserializer<?> elementDeser)`
    `protected JsonDeserializer<?>` | BeanDeserializerFactory.`_findCustomMapLikeDeserializer(MapLikeType type, DeserializationConfig config, DeserializerProvider provider, BasicBeanDescription beanDesc, BeanProperty property, KeyDeserializer keyDeserializer, TypeDeserializer elementTypeDeserializer, JsonDeserializer<?> elementDeserializer)`
    `protected abstract JsonDeserializer<?>` | BasicDeserializerFactory.`_findCustomMapLikeDeserializer(MapLikeType type, DeserializationConfig config, DeserializerProvider p, BasicBeanDescription beanDesc, BeanProperty property, KeyDeserializer keyDeser, TypeDeserializer elementTypeDeser, JsonDeserializer<?> elementDeser)`
    `Object` | StdDeserializerProvider.WrappedDeserializer.`deserializeWithType(JsonParser jp, DeserializationContext ctxt, TypeDeserializer typeDeserializer)`
    `String` | StdDeserializer.StringDeserializer.`deserializeWithType(JsonParser jp, DeserializationContext ctxt, TypeDeserializer typeDeserializer)` Deprecated.
    `Object` | BeanDeserializer.`deserializeWithType(JsonParser jp, DeserializationContext ctxt, TypeDeserializer typeDeserializer)`
    `Object` | AbstractDeserializer.`deserializeWithType(JsonParser jp, DeserializationContext ctxt, TypeDeserializer typeDeserializer)`

    Constructors in org.codehaus.jackson.map.deser with parameters of type TypeDeserializer
    Constructor and Description
    `ArrayDeserializer(ArrayType arrayType, JsonDeserializer<Object> elemDeser, TypeDeserializer elemTypeDeser)` Deprecated.
    `CollectionDeserializer(JavaType collectionType, JsonDeserializer<Object> valueDeser, TypeDeserializer valueTypeDeser, Constructor<Collection<Object>> defCtor)` Deprecated. Since 1.9, use variant that takes ValueInstantiator
    `CollectionDeserializer(JavaType collectionType, JsonDeserializer<Object> valueDeser, TypeDeserializer valueTypeDeser, ValueInstantiator valueInstantiator)` Deprecated.
    `MapDeserializer(JavaType mapType, Constructor<Map<Object,Object>> defCtor, KeyDeserializer keyDeser, JsonDeserializer<Object> valueDeser, TypeDeserializer valueTypeDeser)` Deprecated. Since 1.9, use variant that takes ValueInstantiator
    `MapDeserializer(JavaType mapType, ValueInstantiator valueInstantiator, KeyDeserializer keyDeser, JsonDeserializer<Object> valueDeser, TypeDeserializer valueTypeDeser)` Deprecated.
    `SettableBeanProperty.FieldProperty(String name, JavaType type, TypeDeserializer typeDeser, Annotations contextAnnotations, AnnotatedField field)`
    `SettableBeanProperty.MethodProperty(String name, JavaType type, TypeDeserializer typeDeser, Annotations contextAnnotations, AnnotatedMethod method)`
    `SettableBeanProperty.SetterlessProperty(String name, JavaType type, TypeDeserializer typeDeser, Annotations contextAnnotations, AnnotatedMethod method)`
    `SettableBeanProperty(String propName, JavaType type, TypeDeserializer typeDeser, Annotations contextAnnotations)`
    `StdDeserializerProvider.WrappedDeserializer(TypeDeserializer typeDeser, JsonDeserializer<Object> deser)`

  - ### Uses of TypeDeserializer in org.codehaus.jackson.map.deser.impl

    Constructors in org.codehaus.jackson.map.deser.impl with parameters of type TypeDeserializer
    Constructor and Description
    `CreatorProperty(String name, JavaType type, TypeDeserializer typeDeser, Annotations contextAnnotations, AnnotatedParameter param, int index, Object injectableValueId)`

  - ### Uses of TypeDeserializer in org.codehaus.jackson.map.deser.std

    Fields in org.codehaus.jackson.map.deser.std declared as TypeDeserializer
    Modifier and Type | Field and Description
    --- | ---
    `protected TypeDeserializer` | ObjectArrayDeserializer.`_elementTypeDeserializer` If element instances have polymorphic type information, this is the type deserializer that can handle it
    `protected TypeDeserializer` | MapDeserializer.`_valueTypeDeserializer` If value instances have polymorphic type information, this is the type deserializer that can handle it
    `protected TypeDeserializer` | CollectionDeserializer.`_valueTypeDeserializer` If element instances have polymorphic type information, this is the type deserializer that can handle it

    Methods in org.codehaus.jackson.map.deser.std with parameters of type TypeDeserializer
    Modifier and Type | Method and Description
    --- | ---
    `Object` | UntypedObjectDeserializer.`deserializeWithType(JsonParser jp, DeserializationContext ctxt, TypeDeserializer typeDeserializer)`
    `String` | StringDeserializer.`deserializeWithType(JsonParser jp, DeserializationContext ctxt, TypeDeserializer typeDeserializer)`
    `Object` | StringCollectionDeserializer.`deserializeWithType(JsonParser jp, DeserializationContext ctxt, TypeDeserializer typeDeserializer)`
    `Object` | StdScalarDeserializer.`deserializeWithType(JsonParser jp, DeserializationContext ctxt, TypeDeserializer typeDeserializer)`
    `Object` | StdDeserializer.`deserializeWithType(JsonParser jp, DeserializationContext ctxt, TypeDeserializer typeDeserializer)` Base implementation that does not assume specific type inclusion mechanism.
    `Boolean` | StdDeserializer.BooleanDeserializer.`deserializeWithType(JsonParser jp, DeserializationContext ctxt, TypeDeserializer typeDeserializer)`
    `Integer` | StdDeserializer.IntegerDeserializer.`deserializeWithType(JsonParser jp, DeserializationContext ctxt, TypeDeserializer typeDeserializer)`
    `Double` | StdDeserializer.DoubleDeserializer.`deserializeWithType(JsonParser jp, DeserializationContext ctxt, TypeDeserializer typeDeserializer)`
    `Object` | StdDeserializer.NumberDeserializer.`deserializeWithType(JsonParser jp, DeserializationContext ctxt, TypeDeserializer typeDeserializer)` As mentioned in class Javadoc, there is additional complexity in handling potentially mixed type information here.
    `Object` | PrimitiveArrayDeserializers.`deserializeWithType(JsonParser jp, DeserializationContext ctxt, TypeDeserializer typeDeserializer)`
    `Object[]` | ObjectArrayDeserializer.`deserializeWithType(JsonParser jp, DeserializationContext ctxt, TypeDeserializer typeDeserializer)`
    `Object` | MapDeserializer.`deserializeWithType(JsonParser jp, DeserializationContext ctxt, TypeDeserializer typeDeserializer)`
    `Object` | EnumSetDeserializer.`deserializeWithType(JsonParser jp, DeserializationContext ctxt, TypeDeserializer typeDeserializer)`
    `Object` | EnumMapDeserializer.`deserializeWithType(JsonParser jp, DeserializationContext ctxt, TypeDeserializer typeDeserializer)`
    `Object` | CollectionDeserializer.`deserializeWithType(JsonParser jp, DeserializationContext ctxt, TypeDeserializer typeDeserializer)`

    Constructors in org.codehaus.jackson.map.deser.std with parameters of type TypeDeserializer
    Constructor and Description
    `CollectionDeserializer(JavaType collectionType, JsonDeserializer<Object> valueDeser, TypeDeserializer valueTypeDeser, Constructor<Collection<Object>> defCtor)` Deprecated. Since 1.9, use variant that takes ValueInstantiator
    `CollectionDeserializer(JavaType collectionType, JsonDeserializer<Object> valueDeser, TypeDeserializer valueTypeDeser, ValueInstantiator valueInstantiator)`
    `MapDeserializer(JavaType mapType, Constructor<Map<Object,Object>> defCtor, KeyDeserializer keyDeser, JsonDeserializer<Object> valueDeser, TypeDeserializer valueTypeDeser)` Deprecated. Since 1.9, use variant that takes ValueInstantiator
    `MapDeserializer(JavaType mapType, ValueInstantiator valueInstantiator, KeyDeserializer keyDeser, JsonDeserializer<Object> valueDeser, TypeDeserializer valueTypeDeser)`
    `ObjectArrayDeserializer(ArrayType arrayType, JsonDeserializer<Object> elemDeser, TypeDeserializer elemTypeDeser)`

  - ### Uses of TypeDeserializer in org.codehaus.jackson.map.jsontype

    Methods in org.codehaus.jackson.map.jsontype that return TypeDeserializer
    Modifier and Type | Method and Description
    --- | ---
    `TypeDeserializer` | TypeResolverBuilder.`buildTypeDeserializer(DeserializationConfig config, JavaType baseType, Collection<NamedType> subtypes, BeanProperty property)` Method for building type deserializer based on current configuration of this builder.

  - ### Uses of TypeDeserializer in org.codehaus.jackson.map.jsontype.impl

    Subclasses of TypeDeserializer in org.codehaus.jackson.map.jsontype.impl
    Modifier and Type | Class and Description
    --- | ---
    `class` | `AsArrayTypeDeserializer` Type deserializer used with `JsonTypeInfo.As.WRAPPER_ARRAY` inclusion mechanism.
    `class` | `AsExternalTypeDeserializer` Type deserializer used with `JsonTypeInfo.As.EXTERNAL_PROPERTY` inclusion mechanism.
    `class` | `AsPropertyTypeDeserializer` Type deserializer used with `JsonTypeInfo.As.PROPERTY` inclusion mechanism.
    `class` | `AsWrapperTypeDeserializer` Type deserializer used with `JsonTypeInfo.As.WRAPPER_OBJECT` inclusion mechanism.
    `class` | `TypeDeserializerBase`

    Methods in org.codehaus.jackson.map.jsontype.impl that return TypeDeserializer
    Modifier and Type | Method and Description
    --- | ---
    `TypeDeserializer` | StdTypeResolverBuilder.`buildTypeDeserializer(DeserializationConfig config, JavaType baseType, Collection<NamedType> subtypes, BeanProperty property)`

  - ### Uses of TypeDeserializer in org.codehaus.jackson.map.module

    Methods in org.codehaus.jackson.map.module with parameters of type TypeDeserializer
    Modifier and Type | Method and Description
    --- | ---
    `JsonDeserializer<?>` | SimpleDeserializers.`findArrayDeserializer(ArrayType type, DeserializationConfig config, DeserializerProvider provider, BeanProperty property, TypeDeserializer elementTypeDeserializer, JsonDeserializer<?> elementDeserializer)`
    `JsonDeserializer<?>` | SimpleDeserializers.`findCollectionDeserializer(CollectionType type, DeserializationConfig config, DeserializerProvider provider, BeanDescription beanDesc, BeanProperty property, TypeDeserializer elementTypeDeserializer, JsonDeserializer<?> elementDeserializer)`
    `JsonDeserializer<?>` | SimpleDeserializers.`findCollectionLikeDeserializer(CollectionLikeType type, DeserializationConfig config, DeserializerProvider provider, BeanDescription beanDesc, BeanProperty property, TypeDeserializer elementTypeDeserializer, JsonDeserializer<?> elementDeserializer)`
    `JsonDeserializer<?>` | SimpleDeserializers.`findMapDeserializer(MapType type, DeserializationConfig config, DeserializerProvider provider, BeanDescription beanDesc, BeanProperty property, KeyDeserializer keyDeserializer, TypeDeserializer elementTypeDeserializer, JsonDeserializer<?> elementDeserializer)`
    `JsonDeserializer<?>` | SimpleDeserializers.`findMapLikeDeserializer(MapLikeType type, DeserializationConfig config, DeserializerProvider provider, BeanDescription beanDesc, BeanProperty property, KeyDeserializer keyDeserializer, TypeDeserializer elementTypeDeserializer, JsonDeserializer<?> elementDeserializer)`

  - ### Uses of TypeDeserializer in org.codehaus.jackson.xc

    Methods in org.codehaus.jackson.xc with parameters of type TypeDeserializer
    Modifier and Type | Method and Description
    --- | ---
    `Object` | XmlAdapterJsonDeserializer.`deserializeWithType(JsonParser jp, DeserializationContext ctxt, TypeDeserializer typeDeserializer)`