# Uses of Interface
com.fasterxml.jackson.core.Versioned

Packages that use Versioned
Package
Description
com.fasterxml.jackson.core
Main public API classes of the core streaming JSON processor: most importantly `JsonFactory` used for constructing JSON parser (`JsonParser`) and generator (`JsonGenerator`) instances.
com.fasterxml.jackson.core.base
Base classes used by concrete Parser and Generator implementations; contain functionality that is not specific to JSON or input abstraction (byte vs char).
com.fasterxml.jackson.core.filter
com.fasterxml.jackson.core.json
JSON-specific parser and generator implementation classes that Jackson defines and uses.
com.fasterxml.jackson.core.json.async
Non-blocking ("async") JSON parser implementation.
com.fasterxml.jackson.core.util
Utility classes used by Jackson Core functionality.

## Uses of Versioned in com.fasterxml.jackson.core

Classes in com.fasterxml.jackson.core that implement Versioned
Modifier and Type
Class
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.
`class`
`ObjectCodec`
Abstract class that defines the interface that `JsonParser` and `JsonGenerator` use to serialize and deserialize regular Java objects (POJOs aka Beans).
`class`
`TokenStreamFactory`
Intermediate base class for actual format-specific factories for constructing parsers (reading) and generators (writing).

## Uses of Versioned in com.fasterxml.jackson.core.base

Classes in com.fasterxml.jackson.core.base that implement Versioned
Modifier and Type
Class
Description
`class`
`GeneratorBase`
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`
`ParserBase`
Intermediate base class used by all Jackson `JsonParser` implementations.
`class`
`ParserMinimalBase`
Intermediate base class used by all Jackson `JsonParser` implementations, but does not add any additional fields that depend on particular method of obtaining input.

## Uses of Versioned in com.fasterxml.jackson.core.filter

Classes in com.fasterxml.jackson.core.filter that implement Versioned
Modifier and Type
Class
Description
`class`
`FilteringGeneratorDelegate`
Specialized `JsonGeneratorDelegate` that allows use of `TokenFilter` for outputting a subset of content that caller tries to generate.
`class`
`FilteringParserDelegate`
Specialized `JsonParserDelegate` that allows use of `TokenFilter` for outputting a subset of content that is visible to caller

## Uses of Versioned in com.fasterxml.jackson.core.json

Classes in com.fasterxml.jackson.core.json that implement Versioned
Modifier and Type
Class
Description
`class`
`JsonGeneratorImpl`
Intermediate base class shared by JSON-backed generators like `UTF8JsonGenerator` and `WriterBasedJsonGenerator`.
`final class`
`PackageVersion`
Automatically generated from PackageVersion.java.in during packageVersion-generate execution of maven-replacer-plugin in pom.xml.
`class`
`ReaderBasedJsonParser`
This is a concrete implementation of `JsonParser`, which is based on a `Reader` to handle low-level character conversion tasks.
`class`
`UTF8DataInputJsonParser`
This is a concrete implementation of `JsonParser`, which is based on a `DataInput` as the input source.
`class`
`UTF8JsonGenerator`
`class`
`UTF8StreamJsonParser`
This is a concrete implementation of `JsonParser`, which is based on a `InputStream` as the input source.
`class`
`WriterBasedJsonGenerator`
`JsonGenerator` that outputs JSON content using a `Writer` which handles character encoding.

## Uses of Versioned in com.fasterxml.jackson.core.json.async

Classes in com.fasterxml.jackson.core.json.async that implement Versioned
Modifier and Type
Class
Description
`class`
`NonBlockingByteBufferJsonParser`
Non-blocking parser implementation for JSON content that takes its input via `ByteBuffer` instance(s) passed.
`class`
`NonBlockingJsonParser`
Non-blocking parser implementation for JSON content that takes its input via `byte[]` passed.
`class`
`NonBlockingJsonParserBase`
Intermediate base class for non-blocking JSON parsers.
`class`
`NonBlockingUtf8JsonParserBase`
Non-blocking parser base implementation for JSON content.

## Uses of Versioned in com.fasterxml.jackson.core.util

Classes in com.fasterxml.jackson.core.util that implement Versioned
Modifier and Type
Class
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`.