pub trait ComputeVTable<V: VTable> {
// Required method
fn invoke(
array: &V::Array,
compute_fn: &ComputeFn,
args: &InvocationArgs<'_>,
) -> VortexResult<Option<Output>>;
}
Required Methods§
Sourcefn invoke(
array: &V::Array,
compute_fn: &ComputeFn,
args: &InvocationArgs<'_>,
) -> VortexResult<Option<Output>>
fn invoke( array: &V::Array, compute_fn: &ComputeFn, args: &InvocationArgs<'_>, ) -> VortexResult<Option<Output>>
Dynamically invokes the given compute function on the array.
Returns None
if the compute function is not supported by this array, otherwise attempts
to invoke the function.
This can be useful to support compute functions based on some property of the function, without knowing at compile-time what that function is. For example, any elementwise function can be pushed-down over a dictionary array and evaluated only on the unique values.
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.