vortex_array/arrays/varbin/vtable/
mod.rs1use crate::arrays::varbin::VarBinArray;
5use crate::vtable::{NotSupported, VTable, ValidityVTableFromValidityHelper};
6use crate::{EncodingId, EncodingRef, vtable};
7
8mod array;
9mod canonical;
10mod operations;
11mod operator;
12mod serde;
13mod validity;
14mod visitor;
15
16vtable!(VarBin);
17
18impl VTable for VarBinVTable {
19 type Array = VarBinArray;
20 type Encoding = VarBinEncoding;
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 OperatorVTable = Self;
29 type SerdeVTable = Self;
30
31 fn id(_encoding: &Self::Encoding) -> EncodingId {
32 EncodingId::new_ref("vortex.varbin")
33 }
34
35 fn encoding(_array: &Self::Array) -> EncodingRef {
36 EncodingRef::new_ref(VarBinEncoding.as_ref())
37 }
38}
39
40#[derive(Clone, Debug)]
41pub struct VarBinEncoding;