## Uses of Class
com.fasterxml.jackson.core.io.IOContext

Packages that use IOContext
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.io
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.

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

Methods in com.fasterxml.jackson.core that return IOContext
`protected IOContext` JsonFactory.`_createContext(ContentReference contentRef, boolean resourceManaged)` Overridable factory method that actually instantiates desired context object.
`protected IOContext` JsonFactory.`_createContext(Object rawContentRef, boolean resourceManaged)` Deprecated. Since 2.13
`protected IOContext` JsonFactory.`_createNonBlockingContext(Object srcRef)` Overridable factory method that actually instantiates desired context object for async (non-blocking) parsing

Methods in com.fasterxml.jackson.core with parameters of type IOContext
`protected JsonGenerator` JsonFactory.`_createGenerator(Writer out, IOContext ctxt)` Overridable factory method that actually instantiates generator for given `Writer` and context object.
`protected JsonParser` JsonFactory.`_createParser(byte[] data, int offset, int len, IOContext ctxt)` Overridable factory method that actually instantiates parser using given `Reader` object for reading content passed as raw byte array.
`protected JsonParser` JsonFactory.`_createParser(char[] data, int offset, int len, IOContext ctxt, boolean recyclable)` Overridable factory method that actually instantiates parser using given `char[]` object for accessing content.
`protected JsonParser` JsonFactory.`_createParser(DataInput input, IOContext ctxt)` Optional factory method, expected to be overridden
`protected JsonParser` JsonFactory.`_createParser(InputStream in, IOContext ctxt)` Overridable factory method that actually instantiates desired parser given `InputStream` and context object.
`protected JsonParser` JsonFactory.`_createParser(Reader r, IOContext ctxt)` Overridable factory method that actually instantiates parser using given `Reader` object for reading content.
`protected JsonGenerator` JsonFactory.`_createUTF8Generator(OutputStream out, IOContext ctxt)` Overridable factory method that actually instantiates generator for given `OutputStream` and context object, using UTF-8 encoding.
`protected Writer` JsonFactory.`_createWriter(OutputStream out, JsonEncoding enc, IOContext ctxt)`
`protected DataInput` JsonFactory.`_decorate(DataInput in, IOContext ctxt)`
`protected InputStream` JsonFactory.`_decorate(InputStream in, IOContext ctxt)`
`protected OutputStream` JsonFactory.`_decorate(OutputStream out, IOContext ctxt)`
`protected Reader` JsonFactory.`_decorate(Reader in, IOContext ctxt)`
`protected Writer` JsonFactory.`_decorate(Writer out, IOContext ctxt)`

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

Fields in com.fasterxml.jackson.core.base declared as IOContext
`protected IOContext` ParserBase.`_ioContext` I/O context for this reader.
`protected IOContext` GeneratorBase.`_ioContext`

Methods in com.fasterxml.jackson.core.base that return IOContext
`IOContext` GeneratorBase.`ioContext()` Accessor for use by `jackson-core` itself (tests in particular).

Constructors in com.fasterxml.jackson.core.base with parameters of type IOContext
Constructor and Description
`GeneratorBase(int features, ObjectCodec codec, IOContext ioContext)`
`GeneratorBase(int features, ObjectCodec codec, IOContext ioContext, JsonWriteContext jsonWriteContext)`
`ParserBase(IOContext ctxt, int features)`

### Uses of IOContext in com.fasterxml.jackson.core.io

Fields in com.fasterxml.jackson.core.io declared as IOContext
`protected IOContext` UTF32Reader.`_context`

Methods in com.fasterxml.jackson.core.io that return IOContext
`IOContext` IOContext.`markBufferRecyclerReleased()` Method to call to prevent `_bufferRecycler` release upon `close()`: called when `_bufferRecycler` life-cycle is externally managed.
`IOContext` IOContext.`withEncoding(JsonEncoding enc)`

Methods in com.fasterxml.jackson.core.io with parameters of type IOContext
`abstract InputStream` InputDecorator.`decorate(IOContext ctxt, byte[] src, int offset, int length)` Method called by `JsonFactory` instance when creating parser on given "raw" byte source.
`DataInput` InputDecorator.`decorate(IOContext ctxt, DataInput input)` Method called by `JsonFactory` instance when creating parser given an `DataInput`, when this decorator has been registered.
`abstract InputStream` InputDecorator.`decorate(IOContext ctxt, InputStream in)` Method called by `JsonFactory` instance when creating parser given an `InputStream`, when this decorator has been registered.
`abstract OutputStream` OutputDecorator.`decorate(IOContext ctxt, OutputStream out)` Method called by `JsonFactory` instance when creating generator for given `OutputStream`, when this decorator has been registered.
`abstract Reader` InputDecorator.`decorate(IOContext ctxt, Reader r)` Method called by `JsonFactory` instance when creating parser given an `Reader`, when this decorator has been registered.
`abstract Writer` OutputDecorator.`decorate(IOContext ctxt, Writer w)` Method called by `JsonFactory` instance when creating generator for given `Writer`, when this decorator has been registered.

Constructors in com.fasterxml.jackson.core.io with parameters of type IOContext
Constructor and Description
`MergedStream(IOContext ctxt, InputStream in, byte[] buf, int start, int end)`
`UTF32Reader(IOContext ctxt, InputStream in, byte[] buf, int ptr, int len, boolean isBigEndian)`
`UTF8Writer(IOContext ctxt, OutputStream out)`

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

Constructors in com.fasterxml.jackson.core.json with parameters of type IOContext
Constructor and Description
`ByteSourceJsonBootstrapper(IOContext ctxt, byte[] inputBuffer, int inputStart, int inputLen)`
`ByteSourceJsonBootstrapper(IOContext ctxt, InputStream in)`
`JsonGeneratorImpl(IOContext ctxt, int features, ObjectCodec codec)`
`JsonParserBase(IOContext ioCtxt, int features, ObjectCodec codec)`
`ReaderBasedJsonParser(IOContext ctxt, int features, Reader r, ObjectCodec codec, CharsToNameCanonicalizer st)` Constructor called when input comes as a `Reader`, and buffer allocation can be done using default mechanism.
`ReaderBasedJsonParser(IOContext ctxt, int features, Reader r, ObjectCodec codec, CharsToNameCanonicalizer st, char[] inputBuffer, int start, int end, boolean bufferRecyclable)` Constructor called when caller wants to provide input buffer directly (or needs to, in case of bootstrapping having read some of contents) and it may or may not be recyclable use standard recycle context.
`UTF8DataInputJsonParser(IOContext ctxt, int features, DataInput inputData, ObjectCodec codec, ByteQuadsCanonicalizer sym, int firstByte)`
`UTF8JsonGenerator(IOContext ctxt, int features, ObjectCodec codec, OutputStream out)` Deprecated.
`UTF8JsonGenerator(IOContext ctxt, int features, ObjectCodec codec, OutputStream out, byte[] outputBuffer, int outputOffset, boolean bufferRecyclable)` Deprecated.
`UTF8JsonGenerator(IOContext ctxt, int features, ObjectCodec codec, OutputStream out, char quoteChar)`
`UTF8JsonGenerator(IOContext ctxt, int features, ObjectCodec codec, OutputStream out, char quoteChar, byte[] outputBuffer, int outputOffset, boolean bufferRecyclable)`
`UTF8StreamJsonParser(IOContext ctxt, int features, InputStream in, ObjectCodec codec, ByteQuadsCanonicalizer sym, byte[] inputBuffer, int start, int end, boolean bufferRecyclable)` Deprecated. Since 2.10

`UTF8StreamJsonParser(IOContext ctxt, int features, InputStream in, ObjectCodec codec, ByteQuadsCanonicalizer sym, byte[] inputBuffer, int start, int end, int bytesPreProcessed, boolean bufferRecyclable)`
Constructor called when caller wants to provide input buffer directly (or needs to, in case of bootstrapping having read some of contents) and it may or may not be recyclable use standard recycle context.

`WriterBasedJsonGenerator(IOContext ctxt, int features, ObjectCodec codec, Writer w)` Deprecated.
`WriterBasedJsonGenerator(IOContext ctxt, int features, ObjectCodec codec, Writer w, char quoteChar)`

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

Constructors in com.fasterxml.jackson.core.json.async with parameters of type IOContext
Constructor and Description
`NonBlockingByteBufferJsonParser(IOContext ctxt, int parserFeatures, ByteQuadsCanonicalizer sym)`
`NonBlockingJsonParser(IOContext ctxt, int parserFeatures, ByteQuadsCanonicalizer sym)`
`NonBlockingJsonParserBase(IOContext ctxt, int parserFeatures, ByteQuadsCanonicalizer sym)`
`NonBlockingUtf8JsonParserBase(IOContext ctxt, int parserFeatures, ByteQuadsCanonicalizer sym)`