pub trait MaskReduce: VTable {
// Required method
fn mask(
array: &Self::Array,
mask: &ArrayRef,
) -> VortexResult<Option<ArrayRef>>;
}Expand description
Mask an array without reading buffers.
This trait is for mask implementations that can operate purely on array metadata and
structure without needing to read or execute on the underlying buffers. Implementations
should return None if masking requires buffer access.
The mask parameter is a boolean array where true=keep/valid, false=null-out.
§Preconditions
The mask is guaranteed to have the same length as the array. Trivial cases
(AllValid, AllInvalid, NonNullable) are handled by the caller before dispatch.
Required Methods§
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.