vortex_dict/compute/optimize.rs
1use vortex_array::compute::OptimizeFn;
2use vortex_array::{Array, ArrayRef};
3use vortex_error::VortexResult;
4
5use crate::builders::dict_encode;
6use crate::{DictArray, DictEncoding};
7
8impl OptimizeFn<&DictArray> for DictEncoding {
9 fn optimize(&self, array: &DictArray) -> VortexResult<ArrayRef> {
10 Ok(dict_encode(array.to_canonical()?.as_ref())?.into_array())
11 }
12}