vortex_array/arrays/constant/compute/
invert.rs

1use vortex_error::VortexResult;
2
3use crate::arrays::{ConstantArray, ConstantEncoding};
4use crate::compute::InvertFn;
5use crate::{Array, ArrayRef};
6
7impl InvertFn<&ConstantArray> for ConstantEncoding {
8    fn invert(&self, array: &ConstantArray) -> VortexResult<ArrayRef> {
9        match array.scalar().as_bool().value() {
10            None => Ok(array.to_array().into_array()),
11            Some(b) => Ok(ConstantArray::new(!b, array.len()).into_array()),
12        }
13    }
14}