vortex_array/arrays/list/vtable/array.rs
1// SPDX-License-Identifier: Apache-2.0
2// SPDX-FileCopyrightText: Copyright the Vortex contributors
3
4use vortex_dtype::DType;
5
6use crate::arrays::{ListArray, ListVTable};
7use crate::stats::StatsSetRef;
8use crate::vtable::ArrayVTable;
9
10impl ArrayVTable<ListVTable> for ListVTable {
11 fn len(array: &ListArray) -> usize {
12 array.offsets.len().saturating_sub(1)
13 }
14
15 fn dtype(array: &ListArray) -> &DType {
16 &array.dtype
17 }
18
19 fn stats(array: &ListArray) -> StatsSetRef<'_> {
20 array.stats_set.to_ref(array.as_ref())
21 }
22}