(
rows: &[Vec<Value>],
indices: &[usize],
column_index: &HashMap<String, usize>,
spec: &WindowFuncSpec,
)
| 375 | // ── Offset functions ────────────────────────────────────────────────────────── |
| 376 | |
| 377 | fn collect_arg_values( |
| 378 | rows: &[Vec<Value>], |
| 379 | indices: &[usize], |
| 380 | column_index: &HashMap<String, usize>, |
| 381 | spec: &WindowFuncSpec, |
| 382 | ) -> Vec<Value> { |
| 383 | indices |
| 384 | .iter() |
| 385 | .map(|&i| { |
| 386 | rows.get(i) |
| 387 | .map(|row| { |
| 388 | spec.args |
| 389 | .first() |
| 390 | .map(|expr| eval_arg_for_row(expr, row, column_index)) |
| 391 | .unwrap_or(Value::Null) |
| 392 | }) |
| 393 | .unwrap_or(Value::Null) |
| 394 | }) |
| 395 | .collect() |
| 396 | } |
| 397 | |
| 398 | fn apply_v_lag( |
| 399 | rows: &mut [Vec<Value>], |
no test coverage detected