Module vortex_flatbuffers::array

source ·
Expand description

A serialized array without its buffer (i.e. data).

array.fbs:

include "vortex-scalar/scalar.fbs";

/// An ArrayData describes the hierarchy of an array as well as the locations of the data buffers that appear
/// immediately after the message in the byte stream.
table ArrayData {
    /// The array's hierarchical definition.
    array: Array;
    /// The row count of the array.
    row_count: uint64;
    /// The locations of the data buffers of the array, in ascending order of offset.
    buffers: [Buffer];
}

table Array {
    encoding: uint16;
    metadata: [ubyte];
    children: [Array];
    buffers: [uint16];
    stats: ArrayStats;
}

table ArrayStats {
    min: ScalarValue;
    max: ScalarValue;
    is_sorted: bool = null;
    is_strict_sorted: bool = null;
    is_constant: bool = null;
    run_count: uint64 = null;
    true_count: uint64 = null;
    null_count: uint64 = null;
    bit_width_freq: [uint64];
    trailing_zero_freq: [uint64];
    uncompressed_size_in_bytes: uint64 = null;
}

table Buffer {
    /// The length of the buffer in bytes.
    length: uint64;
    /// The length of any padding bytes written immediately following the buffer.
    padding: uint16;
}

root_type Array;
root_type ArrayData;

Structs§

Enums§

Functions§

  • Verifies that a buffer of bytes contains a ArrayData 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_array_data_unchecked.
  • Assumes, without verification, that a buffer of bytes contains a ArrayData and returns it.
  • Verifies, with the given options, that a buffer of bytes contains a ArrayData 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_array_data_unchecked.
  • Verifies that a buffer of bytes contains a size prefixed ArrayData 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_array_data_unchecked.
  • Assumes, without verification, that a buffer of bytes contains a size prefixed ArrayData and returns it.
  • Verifies, with the given verifier options, that a buffer of bytes contains a size prefixed ArrayData 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_array_data_unchecked.