vortex_array/arrays/listview/vtable/
mod.rs1use crate::arrays::ListViewArray;
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!(ListView);
17
18#[derive(Clone, Debug)]
19pub struct ListViewEncoding;
20
21impl VTable for ListViewVTable {
22 type Array = ListViewArray;
23 type Encoding = ListViewEncoding;
24
25 type ArrayVTable = Self;
26 type CanonicalVTable = Self;
27 type OperationsVTable = Self;
28 type ValidityVTable = ValidityVTableFromValidityHelper;
29 type VisitorVTable = Self;
30 type ComputeVTable = NotSupported;
31 type EncodeVTable = NotSupported;
32 type OperatorVTable = Self;
33 type SerdeVTable = Self;
34
35 fn id(_encoding: &Self::Encoding) -> EncodingId {
36 EncodingId::new_ref("vortex.listview")
37 }
38
39 fn encoding(_array: &Self::Array) -> EncodingRef {
40 EncodingRef::new_ref(ListViewEncoding.as_ref())
41 }
42}