Opaque binary data
Date is either a 32-bit or 64-bit signed integer type representing an
elapsed time since UNIX epoch (1970-01-01), stored in either of two units:
Exact decimal value represented as an integer value in two’s
complement. Currently only 128-bit (16-byte) and 256-bit (32-byte) integers
are used. The representation uses the endianness indicated
in the Schema.
Represents Arrow Features that might not have full support
within implementations. This is intended to be used in
two scenarios:
Same as Binary, but with 64-bit offsets, allowing to represent
extremely large data values.
Same as List, but with 64-bit offsets, allowing to represent
extremely large data values.
Same as Utf8, but with 64-bit offsets, allowing to represent
extremely large data values.
A Map is a logical nested type that is represented as
These are stored in the flatbuffer in the Type union below
Contains two child arrays, run_ends and values.
The run_ends child array must be a 16/32/64-bit integer array
which encodes the indices at which the run with the value in
each corresponding index in the values child array ends.
Like list/struct types, the value array can be of any type.
A Struct_ in the flatbuffer metadata is the same as an Arrow Struct
(according to the physical memory layout). We used Struct_ here as
Struct is a reserved word in Flatbuffers
Time is either a 32-bit or 64-bit signed integer type representing an
elapsed time since midnight, stored in either of four units: seconds,
milliseconds, microseconds or nanoseconds.
Timestamp is a 64-bit signed integer representing an elapsed time since a
fixed epoch, stored in either of four units: seconds, milliseconds,
microseconds or nanoseconds, and is optionally annotated with a timezone.
A union is a complex type with children in Field
By default ids in the type vector refer to the offsets in the children
optionally typeIds provides an indirection between the child offset and the type id
for each child typeIds[offset]
is the id used in the type vector
Unicode with UTF-8 encoding
Verifies that a buffer of bytes contains a Schema
and returns it.
Note that verification is still experimental and may not
catch every error, or be maximally performant. For the
previous, unchecked, behavior use
root_as_schema_unchecked
.
Assumes, without verification, that a buffer of bytes contains a Schema and returns it.
Verifies, with the given options, that a buffer of bytes
contains a Schema
and returns it.
Note that verification is still experimental and may not
catch every error, or be maximally performant. For the
previous, unchecked, behavior use
root_as_schema_unchecked
.
Verifies that a buffer of bytes contains a size prefixed
Schema
and returns it.
Note that verification is still experimental and may not
catch every error, or be maximally performant. For the
previous, unchecked, behavior use
size_prefixed_root_as_schema_unchecked
.
Assumes, without verification, that a buffer of bytes contains a size prefixed Schema and returns it.
Verifies, with the given verifier options, that a buffer of
bytes contains a size prefixed Schema
and returns
it. Note that verification is still experimental and may not
catch every error, or be maximally performant. For the
previous, unchecked, behavior use
root_as_schema_unchecked
.