pub trait FilterKernel: VTable {
// Required method
fn filter(
array: &Self::Array,
mask: &Mask,
ctx: &mut ExecutionCtx,
) -> VortexResult<Option<ArrayRef>>;
}Required Methods§
Sourcefn filter(
array: &Self::Array,
mask: &Mask,
ctx: &mut ExecutionCtx,
) -> VortexResult<Option<ArrayRef>>
fn filter( array: &Self::Array, mask: &Mask, ctx: &mut ExecutionCtx, ) -> VortexResult<Option<ArrayRef>>
Filter an array with the provided mask, potentially reading buffers.
Unlike FilterReduce, this trait is for filter implementations that may need to read
and execute on the underlying buffers to produce the filtered result.
§Preconditions
The mask is guaranteed to have the same length as the array.
Additionally, the mask is guaranteed to be a Mask::Values variant (i.e., neither
Mask::AllTrue nor Mask::AllFalse).
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.