vortex_array/vtable/
operations.rs1use vortex_error::VortexResult;
5use vortex_error::vortex_bail;
6
7use crate::scalar::Scalar;
8use crate::vtable::NotSupported;
9use crate::vtable::VTable;
10
11pub trait OperationsVTable<V: VTable> {
12 fn scalar_at(array: &V::Array, index: usize) -> VortexResult<Scalar>;
19}
20
21impl<V: VTable> OperationsVTable<V> for NotSupported {
22 fn scalar_at(array: &V::Array, _index: usize) -> VortexResult<Scalar> {
23 vortex_bail!(
24 "Legacy scalar_at operation is not supported for {} arrays",
25 array.encoding_id()
26 )
27 }
28}