Expand description
Experimental support for strict scalar functions computed one row at a time.
This module is experimental and has no compatibility guarantees. External users must enable
the unstable_row_fns Cargo feature before importing it.
A RowFn describes the typed operation while the framework owns columnar concerns such as
decoding, constant handling, null propagation, allocation, and validity. Its
RowFn::dispatch implementation uses a RowVisitor to select an ElementTuple and
either an OutputElement or OutputSink for each supported dtype combination.
Unlike a general strict function, a RowFn cannot produce null from valid inputs.
A partially valid batch contains both valid and invalid rows. Skip-invalid runs the kernel only for valid rows without changing row positions.
Prepared visits move work derived from constant operands outside the hot loop. Deferred visits reduce compact failure evidence without constructing errors in that loop.
Structs§
- Initialized
Element - Proof that one uninitialized element row was initialized.
- Uninit
Element Sink - An element sink that leaves dense output uninitialized before the row loop.
Traits§
- Element
Tuple - Typed argument tuples for arities zero through twelve.
- Failure
Evidence - Compact failure evidence that can be OR-reduced across rows.
- Indexed
Element Tuple - An argument tuple that supports a validated dense indexed traversal.
- Input
Element - An element type that can be read row-wise out of an input column.
- Output
Element - An owned row value that can be built into an all-valid column.
- Output
Sink - A column allocated once per batch that a row closure writes into, one row at a time.
- RowFn
- A strict scalar function whose row kernel cannot produce null from valid inputs.
- RowVisitor
- A planning or execution visit at concrete input and output types.
- Sink
Result - The result of writing one row: success or an immediate error.
- ViewLen
- The number of rows addressable through a row-loop view.
Functions§
- execute_
rows - Execute a
RowFnwithout using its blanketScalarFnVTableimplementation. - row_
fn_ return_ dtype - Compute the return dtype of a
RowFnkernel without invoking its blanket vtable.