vortex_array/arrays/constant/vtable/validity.rs
1// SPDX-License-Identifier: Apache-2.0
2// SPDX-FileCopyrightText: Copyright the Vortex contributors
3
4use vortex_error::VortexResult;
5
6use crate::array::ArrayView;
7use crate::array::ValidityVTable;
8use crate::arrays::Constant;
9use crate::validity::Validity;
10
11impl ValidityVTable<Constant> for Constant {
12 fn validity(array: ArrayView<'_, Constant>) -> VortexResult<Validity> {
13 debug_assert!(array.dtype().is_nullable());
14 Ok(if array.scalar().is_null() {
15 Validity::AllInvalid
16 } else {
17 Validity::AllValid
18 })
19 }
20}