vortex_vector/null/
scalar.rs1use crate::Scalar;
5use crate::ScalarOps;
6use crate::VectorMut;
7use crate::null::NullVectorMut;
8
9#[derive(Clone, Debug, PartialEq, Eq)]
11pub struct NullScalar;
12
13impl ScalarOps for NullScalar {
14 fn is_valid(&self) -> bool {
15 false
16 }
17
18 fn mask_validity(&mut self, _mask: bool) {}
19
20 fn repeat(&self, n: usize) -> VectorMut {
21 NullVectorMut::new(n).into()
22 }
23}
24
25impl From<NullScalar> for Scalar {
26 fn from(val: NullScalar) -> Self {
27 Scalar::Null(val)
28 }
29}