# Package com.fasterxml.jackson.databind.deser

Contains implementation classes of deserialization part of data binding.

See: Description

- Interface Summary
  Interface | Description
  --- | ---
  ContextualDeserializer | Add-on interface that `JsonDeserializer`s can implement to get a callback that can be used to create contextual (context-dependent) instances of deserializer to use for handling properties of supported type.
  ContextualKeyDeserializer | Add-on interface that `KeyDeserializer`s can implement to get a callback that can be used to create contextual instances of key deserializer to use for handling Map keys of supported type.
  Deserializers | Interface that defines API for simple extensions that can provide additional deserializers for various types.
  KeyDeserializers | Interface that defines API for simple extensions that can provide additional deserializers for deserializer Map keys of various types, from JSON property names.
  ResolvableDeserializer | Interface used to indicate deserializers that want to do post-processing after construction but before being returned to caller (and possibly cached) and used.
  ValueInstantiators | Interface for providers of `ValueInstantiator` instances.

- Class Summary
  Class | Description
  --- | ---
  AbstractDeserializer | Deserializer only used for abstract types used as placeholders during polymorphic type handling deserialization.
  BasicDeserializerFactory | Abstract factory base class that can provide deserializers for standard JDK classes, including collection classes and simple heuristics for "upcasting" common collection interface types (such as `Collection`).
  BeanDeserializer | Deserializer class that can deserialize instances of arbitrary bean objects, usually from JSON Object structs,
  BeanDeserializerBase | Base class for `BeanDeserializer`.
  BeanDeserializerBuilder | Builder class used for aggregating deserialization information about a POJO, in order to build a `JsonDeserializer` for deserializing instances.
  BeanDeserializerFactory | Concrete deserializer factory class that adds full Bean deserializer construction logic using class introspection.
  BeanDeserializerModifier | Abstract class that defines API for objects that can be registered to participate in constructing `JsonDeserializer` instances (via `DeserializerFactory`).
  BuilderBasedDeserializer | Class that handles deserialization using a separate Builder class, which is used for data binding and produces actual deserialized value at the end of data binding.
  CreatorProperty | This concrete sub-class implements property that is passed via Creator (constructor or static factory method).
  DataFormatReaders | Alternative to `DataFormatDetector` that needs to be used when using data-binding.
  DataFormatReaders.Match | Result class, similar to `DataFormatMatcher`
  DefaultDeserializationContext | Complete `DeserializationContext` implementation that adds extended API for `ObjectMapper` (and `ObjectReader`) to call, as well as implements certain parts that base class has left abstract.
  DefaultDeserializationContext.Impl | Actual full concrete implementation
  DeserializationProblemHandler | This is the class that can be registered (via `DeserializationConfig` object owner by `ObjectMapper`) to get called when a potentially recoverable problem is encountered during deserialization process.
  DeserializerCache | Class that defines caching layer between callers (like `ObjectMapper`, `DeserializationContext`) and classes that construct deserializers (`DeserializerFactory`).
  DeserializerFactory | Abstract class that defines API used by `DeserializationContext` to construct actual `JsonDeserializer` instances (which are then cached by context and/or dedicated cache).
  Deserializers.Base | Basic `Deserializers` implementation that implements all methods but provides no deserializers.
  SettableAnyProperty | Class that represents a "wildcard" set method which can be used to generically set values of otherwise unmapped (aka "unknown") properties read from Json content.
  SettableBeanProperty | Base class for deserializable properties of a bean: contains both type and name definitions, and reflection-based set functionality.
  UnresolvedId | Helper class for `UnresolvedForwardReference`, to contain information about unresolved ids.
  ValueInstantiator | Class that defines simple API implemented by objects that create value instances.
  ValueInstantiator.Base | Partial `ValueInstantiator` implementation that is strongly recommended to be used instead of directly extending `ValueInstantiator` itself.
  ValueInstantiators.Base | Basic "NOP" implementation that can be used as the base class for custom implementations.

- Exception Summary
  Exception | Description
  --- | ---
  UnresolvedForwardReference | Exception thrown during deserialization when there are object id that can't be resolved.

## Package com.fasterxml.jackson.databind.deser Description

Contains implementation classes of deserialization part of data binding.