Skip to main content

Module vtable

Module vtable 

Source
Expand description

This module contains the VTable definitions for a Vortex encoding.

A Vortex array encoding is implemented by a small static vtable type plus an associated TypedArrayData value stored in each array instance. The vtable owns behavior such as validation, serialization, execution, child traversal, scalar access, and validity access.

The public ArrayRef API performs common precondition checks before calling into these traits. Implementations should focus on encoding-specific work and uphold the documented postconditions.

Structs§

EmptyArrayData
Empty array metadata struct for encodings with no per-array metadata.
NotSupported
Placeholder type used to indicate when a particular vtable is not supported by the encoding.
ValidityVTableFromChild
An implementation of the ValidityVTable for arrays that delegate validity entirely to a child array.
ValidityVTableFromChildSliceHelper
An implementation of the ValidityVTable for arrays that hold an unsliced validity and a slice into it.

Traits§

ArrayPlugin
Registry trait for ID-based deserialization of arrays.
ArrayVTable
Alias for migration — downstream code can start using ArrayVTable. The array VTable encapsulates logic for an Array type within Vortex.
OperationsVTable
Element-level operations for an array encoding.
VTable
The array VTable encapsulates logic for an Array type within Vortex.
ValidityChild
Helper trait for encodings whose validity is exactly one child slot.
ValidityChildSliceHelper
Helper for encodings that keep an unsliced validity child plus a local slice range.
ValidityVTable
Validity access for nullable instances of an encoding.

Functions§

child_to_validity
Reconstruct a Validity from an optional child array and nullability.
patches_child
Returns the child at the given index within a patches component.
patches_child_name
Returns the name of the child at the given index within a patches component.
patches_nchildren
Returns the number of children produced by patches.
unsupported_buffer_replacement
Reject buffer replacement for encodings whose exposed buffers are not runtime backing buffers.
validity_nchildren
Returns 1 if validity produces a child, 0 otherwise.
validity_to_child
Returns the validity as a child array if it produces one.
with_empty_buffers
Rebuild an array that has no top-level buffers.

Type Aliases§

ArrayPluginRef
Reference-counted array plugin.