vortex_dict/compute/
is_constant.rs

1use vortex_array::compute::{
2    IsConstantKernel, IsConstantKernelAdapter, IsConstantOpts, is_constant_opts,
3};
4use vortex_array::register_kernel;
5use vortex_error::VortexResult;
6
7use crate::{DictArray, DictVTable};
8
9impl IsConstantKernel for DictVTable {
10    fn is_constant(&self, array: &DictArray, opts: &IsConstantOpts) -> VortexResult<Option<bool>> {
11        if is_constant_opts(array.codes(), opts)? == Some(true) {
12            return Ok(Some(true));
13        }
14
15        is_constant_opts(array.values(), opts)
16    }
17}
18
19register_kernel!(IsConstantKernelAdapter(DictVTable).lift());