cc2p/lib.rs
1//! # CC2P - Convert CSV to Parquet
2//!
3//! A library for converting CSV files to Parquet format with support for
4//! asynchronous operations, custom delimiters, and schema inference.
5//!
6//! ## Features
7//!
8//! - Asynchronous file operations
9//! - Custom delimiters
10//! - Schema inference
11//! - Header detection
12//! - Duplicate column handling
13//! - Parallel processing
14//!
15//! ## Example
16//!
17//! ```rust
18//! use std::path::PathBuf;
19//! use cc2p::conversion::convert_to_parquet;
20//!
21//! #[tokio::main]
22//! async fn main() -> cc2p::error::Result<()> {
23//! let file_path = PathBuf::from("testdata/sample.csv");
24//! let delimiter = ',';
25//! let has_header = true;
26//! let sampling_size = 10;
27//!
28//! convert_to_parquet(&file_path, delimiter, has_header, sampling_size).await?;
29//!
30//! Ok(())
31//! }
32//! ```
33
34pub mod conversion;
35pub mod error;
36pub mod utils;
37
38// Re-export commonly used items
39pub use conversion::convert_to_parquet;
40pub use conversion::remove_deduplicate_columns;
41pub use utils::clean_column_name;
42pub use utils::find_files;