vortex_fastlanes/rle/vtable/validity.rs
1// SPDX-License-Identifier: Apache-2.0
2// SPDX-FileCopyrightText: Copyright the Vortex contributors
3
4use vortex_array::ArrayView;
5use vortex_array::vtable::ValidityVTable;
6use vortex_error::VortexResult;
7
8use crate::rle::RLE;
9use crate::rle::RLEArrayExt;
10use crate::rle::RLEArraySlotsExt;
11
12impl ValidityVTable<RLE> for RLE {
13 fn validity(array: ArrayView<'_, RLE>) -> VortexResult<vortex_array::validity::Validity> {
14 let start = array.offset();
15 let stop = start + array.len();
16 array.indices().slice(start..stop)?.validity()
17 }
18}