Path: blob/main/crates/polars-parquet/src/parquet/write/mod.rs
6940 views
mod column_chunk;1mod compression;2mod file;3mod indexes;4pub(crate) mod page;5mod row_group;6mod statistics;78#[cfg(feature = "async")]9mod stream;10#[cfg(feature = "async")]11#[cfg_attr(docsrs, doc(cfg(feature = "async")))]12pub use stream::FileStreamer;1314mod dyn_iter;15pub use compression::{Compressor, compress};16pub use dyn_iter::{DynIter, DynStreamingIterator};17pub use file::{FileWriter, write_metadata_sidecar};18pub use row_group::ColumnOffsetsMetadata;1920use crate::parquet::page::CompressedPage;2122pub type RowGroupIterColumns<'a, E> =23DynIter<'a, Result<DynStreamingIterator<'a, CompressedPage, E>, E>>;2425pub type RowGroupIter<'a, E> = DynIter<'a, RowGroupIterColumns<'a, E>>;2627/// Write options of different interfaces on this crate28#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]29pub struct WriteOptions {30/// Whether to write statistics, including indexes31pub write_statistics: bool,32/// Which Parquet version to use33pub version: Version,34}3536/// The parquet version to use37#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]38pub enum Version {39V1,40V2,41}4243/// Used to recall the state of the parquet writer - whether sync or async.44#[derive(PartialEq)]45enum State {46Initialised,47Started,48Finished,49}5051impl From<Version> for i32 {52fn from(version: Version) -> Self {53match version {54Version::V1 => 1,55Version::V2 => 2,56}57}58}596061