|
5 | 5 | //! |
6 | 6 | //! A batch is the set of same-length input columns supplied in one scalar-function call. A row |
7 | 7 | //! function handles typed values for one logical row. This module adds the columnar concerns around |
8 | | -//! that row function: planning the output and null strategy, preserving batch constants, |
| 8 | +//! that row function: planning the output and null handling, preserving batch constants, |
9 | 9 | //! propagating strict validity, selecting an execution strategy, and validating the finished |
10 | 10 | //! output. |
11 | 11 | //! |
@@ -46,12 +46,12 @@ pub(crate) struct Batch { |
46 | 46 | /// The input dtypes, collected with the columns and reused by both planning and execution. |
47 | 47 | arg_dtypes: SmallVec<[DType; 4]>, |
48 | 48 |
|
49 | | - /// The conjoined input validity, so a row of the output is valid iff it is valid in every |
50 | | - /// input. Conjoining is lazy, and nothing materializes it unless the null handling asks. |
| 49 | + /// The conjoined input validity. An output row is valid exactly when it is valid in every |
| 50 | + /// input. Conjoining is lazy, and null handling materializes the mask only when required. |
51 | 51 | validity: Validity, |
52 | 52 |
|
53 | | - /// The dtype the function declares for these inputs, which the kernel's output is reconciled |
54 | | - /// against. Already widened to nullable if any input is nullable. |
| 53 | + /// The declared output dtype, widened to nullable when any input is nullable. Kernel output is |
| 54 | + /// reconciled against this dtype. |
55 | 55 | result_dtype: DType, |
56 | 56 |
|
57 | 57 | /// The non-nullable dtype the dispatched output capability builds, computed while planning. |
|
0 commit comments