vortex_runend/compute/
fill_null.rs1use vortex_array::compute::{FillNullKernel, FillNullKernelAdapter, fill_null};
5use vortex_array::{ArrayRef, IntoArray, register_kernel};
6use vortex_error::VortexResult;
7use vortex_scalar::Scalar;
8
9use crate::{RunEndArray, RunEndVTable};
10
11impl FillNullKernel for RunEndVTable {
12 fn fill_null(&self, array: &RunEndArray, fill_value: &Scalar) -> VortexResult<ArrayRef> {
13 unsafe {
15 Ok(RunEndArray::new_unchecked(
16 array.ends().clone(),
17 fill_null(array.values(), fill_value)?,
18 array.offset(),
19 array.len(),
20 )
21 .into_array())
22 }
23 }
24}
25
26register_kernel!(FillNullKernelAdapter(RunEndVTable).lift());