## Uses of Interface
org.codehaus.jackson.Versioned

- Packages that use Versioned
  Package | Description
  --- | ---
  org.codehaus.jackson | Main public API classes of the core streaming JSON processor: most importantly `JsonFactory` used for constructing JSON parser (`JsonParser`) and generator (`JsonParser`) instances.
  org.codehaus.jackson.impl | Parser and generator implementation classes that Jackson defines and uses.
  org.codehaus.jackson.jaxrs | Jackson-based JAX-RS provider that can automatically serialize and deserialize resources for JSON content type (MediaType).
  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.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.mrbean | Package that implements "interface materializer" functionality, whereby abstract classes and interfaces can be used as-is, and framework constructs implementations as needed.
  org.codehaus.jackson.node | Contains concrete `JsonNode` implementations Jackson uses for the Tree model.
  org.codehaus.jackson.smile | Package that contains experimental implementation of "Binary-Encoded JSON-Like" data format handlers (parser, generator, factory produce both, supporting constants).
  org.codehaus.jackson.util | Utility classes used by Jackson Core functionality.
  org.codehaus.jackson.xc | Package that contains XML Compatibility functionality for Jackson, such as handlers for JAXB annotations

- - ### Uses of Versioned in org.codehaus.jackson

    Classes in org.codehaus.jackson that implement Versioned
    Modifier and Type | Class and Description
    --- | ---
    `class` | `JsonFactory` The main factory class of Jackson package, used to configure and construct reader (aka parser, `JsonParser`) and writer (aka generator, `JsonGenerator`) instances.
    `class` | `JsonGenerator` Base class that defines public API for writing JSON content.
    `class` | `JsonParser` Base class that defines public API for reading JSON content.

  - ### Uses of Versioned in org.codehaus.jackson.impl

    Classes in org.codehaus.jackson.impl that implement Versioned
    Modifier and Type | Class and Description
    --- | ---
    `class` | `JsonGeneratorBase` This base class implements part of API that a JSON generator exposes to applications, adds shared internal methods that sub-classes can use and adds some abstract methods sub-classes must implement.
    `class` | `JsonNumericParserBase` Deprecated. Since 1.9.0: functionality demoted down to JsonParserBase
    `class` | `JsonParserBase` Intermediate base class used by all Jackson `JsonParser` implementations.
    `class` | `JsonParserMinimalBase` Intermediate base class used by all Jackson `JsonParser` implementations, but does not add any additional fields that depend on particular method of obtaining input.
    `class` | `ReaderBasedParser` This is a concrete implementation of `JsonParser`, which is based on a `Reader` to handle low-level character conversion tasks.
    `class` | `ReaderBasedParserBase` Deprecated. Since 1.9 sub-classes should just include code from here as is.
    `class` | `StreamBasedParserBase` Deprecated. Since 1.9, sub-classes should just embed code from here
    `class` | `Utf8Generator`
    `class` | `Utf8StreamParser` This is a concrete implementation of `JsonParser`, which is based on a `InputStream` as the input source.
    `class` | `WriterBasedGenerator` `JsonGenerator` that outputs JSON content using a `Writer` which handles character encoding.

  - ### Uses of Versioned in org.codehaus.jackson.jaxrs

    Classes in org.codehaus.jackson.jaxrs that implement Versioned
    Modifier and Type | Class and Description
    --- | ---
    `class` | `JacksonJaxbJsonProvider` JSON content type provider automatically configured to use both Jackson and JAXB annotations (in that order of priority).
    `class` | `JacksonJsonProvider` Basic implementation of JAX-RS abstractions (`MessageBodyReader`, `MessageBodyWriter`) needed for binding JSON ("application/json") content to and from Java Objects ("POJO"s).

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

    Classes in org.codehaus.jackson.map that implement Versioned
    Modifier and Type | Class and Description
    --- | ---
    `class` | `MappingJsonFactory` Sub-class of `JsonFactory` that will create a proper `ObjectCodec` to allow seamless conversions between Json content and Java objects (POJOs).
    `class` | `Module` Simple interface for extensions that can be registered with `ObjectMapper` to provide a well-defined set of extensions to default functionality; such as support for new data types.
    `class` | `ObjectMapper` This mapper (or, data binder, or codec) provides functionality for converting between Java objects (instances of JDK provided core classes, beans), and matching JSON constructs.
    `class` | `ObjectReader` Builder object that can be used for per-serialization configuration of deserialization parameters, such as root type to use or object to update (instead of constructing new instance).
    `class` | `ObjectWriter` Builder object that can be used for per-serialization configuration of serialization parameters, such as JSON View and root type to use.

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

    Classes in org.codehaus.jackson.map.module that implement Versioned
    Modifier and Type | Class and Description
    --- | ---
    `class` | `SimpleModule` Simple `Module` implementation that allows registration of serializers and deserializers, and bean serializer and deserializer modifiers.

  - ### Uses of Versioned in org.codehaus.jackson.mrbean

    Classes in org.codehaus.jackson.mrbean that implement Versioned
    Modifier and Type | Class and Description
    --- | ---
    `class` | `AbstractTypeMaterializer` Nifty class for pulling implementations of classes out of thin air.
    `class` | `MrBeanModule`

  - ### Uses of Versioned in org.codehaus.jackson.node

    Classes in org.codehaus.jackson.node that implement Versioned
    Modifier and Type | Class and Description
    --- | ---
    `class` | `TreeTraversingParser` Facade over `JsonNode` that implements `JsonParser` to allow accessing contents of JSON tree in alternate form (stream of tokens).

  - ### Uses of Versioned in org.codehaus.jackson.smile

    Classes in org.codehaus.jackson.smile that implement Versioned
    Modifier and Type | Class and Description
    --- | ---
    `class` | `SmileFactory` Factory used for constructing `SmileParser` and `SmileGenerator` instances; both of which handle Smile encoded data.
    `class` | `SmileGenerator` `JsonGenerator` implementation for the experimental "Binary JSON Infoset".
    `class` | `SmileParser`

  - ### Uses of Versioned in org.codehaus.jackson.util

    Classes in org.codehaus.jackson.util that implement Versioned
    Modifier and Type | Class and Description
    --- | ---
    `class` | `JsonGeneratorDelegate`
    `class` | `JsonParserDelegate` Helper class that implements delegation pattern for `JsonParser`, to allow for simple overridability of basic parsing functionality.
    `class` | `JsonParserSequence` Helper class that can be used to sequence multiple physical `JsonParser`s to create a single logical sequence of tokens, as a single `JsonParser`.
    `class` | `TokenBuffer` Utility class used for efficient storage of `JsonToken` sequences, needed for temporary buffering.
    `protected static class` | `TokenBuffer.Parser`

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

    Classes in org.codehaus.jackson.xc that implement Versioned
    Modifier and Type | Class and Description
    --- | ---
    `class` | `JaxbAnnotationIntrospector` Annotation introspector that leverages JAXB annotations where applicable to JSON mapping.