Skip to main content

Module value_vector

Module value_vector 

Source
Expand description

ValueVector — columnar value container that preserves flat byte buffers.

Instead of converting ColumnChunk’s flat bytes into Vec (~32 bytes per tagged enum), ValueVector keeps the native representation: flat byte buffers for fixed-size types, packed bits for booleans, and SmolStr vecs for strings. Values are extracted on-demand via get_value(), avoiding upfront materialization.

Structs§

BoolVector
Packed 1-bit boolean values + separate null mask.
FlatVector
Fixed-size values stored in a flat byte buffer with a separate null mask. For i64 columns: 8 bytes/value vs 32 bytes for TypedValue::Int64.
SelectionVector
Logical selection over a ValueVector / DataChunk. None indices = identity selection [0, 1, 2, …, N-1].
StringVector
Variable-length string values.

Enums§

ValueVector
A column of values: either backed by a flat byte buffer (from storage), packed bits (booleans), SmolStr vec (strings), or owned TypedValues (computed by operators).