Path: blob/main/crates/polars-parquet/src/arrow/read/deserialize/binview/optional.rs
8503 views
use arrow::array::MutableBinaryViewArray;1use arrow::bitmap::Bitmap;23use super::decode_plain_generic;4use crate::parquet::error::ParquetResult;56pub fn decode(7num_expected_values: usize,8values: &[u8],9target: &mut MutableBinaryViewArray<[u8]>,10page_validity: &Bitmap,1112verify_utf8: bool,13) -> ParquetResult<()> {14if page_validity.unset_bits() == 0 {15return super::required::decode(16num_expected_values,17values,18Some(page_validity.len()),19target,20verify_utf8,21);22}2324let mut validity_iter = page_validity.iter();25decode_plain_generic(26values,27target,28page_validity.len(),29|| Some((validity_iter.next()?, true)),30verify_utf8,31)32}333435