Path: blob/main/crates/polars-arrow/src/array/binview/fmt.rs
6939 views
use std::fmt::{Debug, Formatter, Result, Write};12use super::super::fmt::write_vec;3use super::BinaryViewArrayGeneric;4use crate::array::binview::ViewType;5use crate::array::{Array, BinaryViewArray, Utf8ViewArray};67pub fn write_value<'a, T: ViewType + ?Sized, W: Write>(8array: &'a BinaryViewArrayGeneric<T>,9index: usize,10f: &mut W,11) -> Result12where13&'a T: Debug,14{15let bytes = array.value(index).to_bytes();16let writer = |f: &mut W, index| write!(f, "{}", bytes[index]);1718write_vec(f, writer, None, bytes.len(), "None", false)19}2021impl Debug for BinaryViewArray {22fn fmt(&self, f: &mut Formatter<'_>) -> Result {23let writer = |f: &mut Formatter, index| write_value(self, index, f);24write!(f, "BinaryViewArray")?;25write_vec(f, writer, self.validity(), self.len(), "None", false)26}27}2829impl Debug for Utf8ViewArray {30fn fmt(&self, f: &mut Formatter<'_>) -> Result {31let writer = |f: &mut Formatter, index| write!(f, "{}", self.value(index));32write!(f, "Utf8ViewArray")?;33write_vec(f, writer, self.validity(), self.len(), "None", false)34}35}363738