Table of Contents

Namespace Apache.Arrow.Scalars.Variant

Classes

VariantBuilder

Encodes a VariantValue into the binary variant format, producing metadata and value byte arrays.

VariantMetadataBuilder

Collects unique field names and builds the sorted binary metadata dictionary used by variant objects.

VariantValueWriter

Streams variant value bytes directly from primitive calls, without requiring an intermediate VariantValue. Use this to implement encoders from arbitrary input formats (JSON, CBOR, etc.).

Structs

VariantArrayReader

Zero-copy reader for a variant array value.

VariantMetadata

Zero-copy reader for variant metadata: a header byte followed by a string dictionary used to look up field names in variant objects.

VariantObjectReader

Zero-copy reader for a variant object value. Provides access to field names (via the metadata dictionary) and field values.

VariantReader

Zero-copy reader for a single variant value. Provides type inspection and typed accessors for primitives, short strings, objects, and arrays.

VariantValue

Represents a materialized variant value as a discriminated union. Preserves exact type information from the variant encoding.

Enums

VariantBasicType

The basic type stored in the lowest 2 bits of a variant value header byte.

VariantPrimitiveType

Primitive type IDs stored in bits 2-7 of the value header byte when the basic type is Primitive.