vortex_datetime_parts/compute/
is_constant.rs1use vortex_array::compute::{IsConstantKernel, IsConstantKernelAdapter, IsConstantOpts};
2use vortex_array::register_kernel;
3use vortex_error::VortexResult;
4
5use crate::{DateTimePartsArray, DateTimePartsVTable};
6
7impl IsConstantKernel for DateTimePartsVTable {
8 fn is_constant(
9 &self,
10 array: &DateTimePartsArray,
11 _opts: &IsConstantOpts,
12 ) -> VortexResult<Option<bool>> {
13 Ok(Some(
14 array.days().is_constant()
15 && array.seconds().is_constant()
16 && array.subseconds().is_constant(),
17 ))
18 }
19}
20
21register_kernel!(IsConstantKernelAdapter(DateTimePartsVTable).lift());