vortex-array 0.62.0

Vortex in memory columnar data format
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
// SPDX-License-Identifier: Apache-2.0
// SPDX-FileCopyrightText: Copyright the Vortex contributors

use vortex_error::VortexResult;

use crate::arrays::PrimitiveVTable;
use crate::arrays::primitive::vtable::PrimitiveArray;
use crate::match_each_native_ptype;
use crate::scalar::Scalar;
use crate::vtable::OperationsVTable;

impl OperationsVTable<PrimitiveVTable> for PrimitiveVTable {
    fn scalar_at(array: &PrimitiveArray, index: usize) -> VortexResult<Scalar> {
        Ok(match_each_native_ptype!(array.ptype(), |T| {
            Scalar::primitive(array.as_slice::<T>()[index], array.dtype().nullability())
        }))
    }
}