Skip to main content

vortex_array/display/extractors/
metadata.rs

1// SPDX-License-Identifier: Apache-2.0
2// SPDX-FileCopyrightText: Copyright the Vortex contributors
3
4use std::fmt;
5
6use crate::ArrayRef;
7use crate::display::extractor::IndentedFormatter;
8use crate::display::extractor::TreeContext;
9use crate::display::extractor::TreeExtractor;
10
11/// Extractor that adds a `metadata: ...` detail line.
12pub struct MetadataExtractor;
13
14impl TreeExtractor for MetadataExtractor {
15    fn write_details(
16        &self,
17        array: &ArrayRef,
18        _ctx: &TreeContext,
19        f: &mut IndentedFormatter<'_, '_>,
20    ) -> fmt::Result {
21        let (indent, f) = f.parts();
22        write!(f, "{indent}metadata: ")?;
23        array.metadata_fmt(f)?;
24        writeln!(f)
25    }
26}