vortex_array/arrays/decimal/vtable/
mod.rs

1// SPDX-License-Identifier: Apache-2.0
2// SPDX-FileCopyrightText: Copyright the Vortex contributors
3
4use crate::arrays::DecimalArray;
5use crate::vtable::{NotSupported, VTable, ValidityVTableFromValidityHelper};
6use crate::{EncodingId, EncodingRef, vtable};
7
8mod array;
9mod canonical;
10mod operations;
11mod serde;
12mod validity;
13mod visitor;
14
15vtable!(Decimal);
16
17impl VTable for DecimalVTable {
18    type Array = DecimalArray;
19    type Encoding = DecimalEncoding;
20
21    type ArrayVTable = Self;
22    type CanonicalVTable = Self;
23    type OperationsVTable = Self;
24    type ValidityVTable = ValidityVTableFromValidityHelper;
25    type VisitorVTable = Self;
26    type ComputeVTable = NotSupported;
27    type EncodeVTable = NotSupported;
28    type PipelineVTable = NotSupported;
29    type SerdeVTable = Self;
30
31    fn id(_encoding: &Self::Encoding) -> EncodingId {
32        EncodingId::new_ref("vortex.decimal")
33    }
34
35    fn encoding(_array: &Self::Array) -> EncodingRef {
36        EncodingRef::new_ref(DecimalEncoding.as_ref())
37    }
38}
39
40#[derive(Clone, Debug)]
41pub struct DecimalEncoding;