vortex_array/arrays/struct_/vtable/
visitor.rs1use itertools::Itertools;
5
6use crate::arrays::struct_::{StructArray, StructVTable};
7use crate::vtable::{ValidityHelper, VisitorVTable};
8use crate::{ArrayBufferVisitor, ArrayChildVisitor};
9
10impl VisitorVTable<StructVTable> for StructVTable {
11 fn visit_buffers(_array: &StructArray, _visitor: &mut dyn ArrayBufferVisitor) {}
12
13 fn visit_children(array: &StructArray, visitor: &mut dyn ArrayChildVisitor) {
14 visitor.visit_validity(array.validity(), array.len());
15 for (name, field) in array.names().iter().zip_eq(array.fields().iter()) {
16 visitor.visit_child(name.as_ref(), field);
17 }
18 }
19}