vortex_array/arrays/masked/vtable/operations.rs
1// SPDX-License-Identifier: Apache-2.0
2// SPDX-FileCopyrightText: Copyright the Vortex contributors
3
4use vortex_error::VortexResult;
5
6use crate::Array;
7use crate::arrays::MaskedVTable;
8use crate::arrays::masked::MaskedArray;
9use crate::scalar::Scalar;
10use crate::vtable::OperationsVTable;
11
12impl OperationsVTable<MaskedVTable> for MaskedVTable {
13 fn scalar_at(array: &MaskedArray, index: usize) -> VortexResult<Scalar> {
14 // Invalid indices are handled by the entrypoint function.
15 Ok(array.child.scalar_at(index)?.into_nullable())
16 }
17}