Package-level declarations
Types
What to do when an object is given the same field name twice.
JSON input is malformed.
Parses JSON text straight into the Variant encoding.
A Variant value has no JSON representation.
A view over one encoded Variant value.
The two-bit basic_type field that opens every Variant value byte.
Encodes Variant values.
Builds a dictionary by interning field names, and encodes it once the values that use it are written.
Base class for every failure raised by the Variant codec.
The bytes are not a Variant value this implementation can read.
What a value means, independent of how many bytes it took to say it.
The string dictionary half of a Variant: every field name used by the values that reference it.
A value together with where it is — RFC 9535's node: "the pair of a value along with its location within the query argument".
A location inside a document, as a list of steps from the root.
One step of a VariantPath: into an object field, or into an array element.
The primitive type ids carried in the upper six bits of a value header byte when VariantBasicType.PRIMITIVE is in effect.
A well-formed value was asked for a type it does not hold — longValue() on a string, or a field lookup on an array.
Properties
Nesting depth a document may reach before the parser gives up.
Top-level children a summary shows before eliding the rest.
Widest decimal the encoding can hold: decimal16 carries an int128 unscaled value.
The specification fixes the scale byte's range at [0, 38].
Characters of any one string or field name a summary shows before eliding the rest.
Functions
Appends toJsonSummaryString to out, avoiding an intermediate String.
Appends Variant.toJsonString to out, avoiding an intermediate String.
Renders this value as JSON text.
The first limit top-level children, with everything below them elided.
One line describing this value's shape and size, whatever it holds and however large it is.
Convenience for building a path from field names: variantPathOf("user", "name").