#![warn(missing_docs)]
pub mod bloom;
pub mod compression;
pub mod error;
#[cfg(feature = "field-encryption")]
pub mod field_encryption;
pub mod header;
pub mod metadata;
pub mod reader;
pub mod stats;
pub mod validity;
pub mod writer;
macro_rules! to_array {
($slice:expr, $ctx:expr) => {
$slice
.try_into()
.map_err(|_| $crate::segment::error::SegmentError::CorruptFile {
detail: format!("invalid byte slice length in {}", $ctx),
})
};
}
pub(crate) use to_array;
pub use error::SegmentError;
#[cfg(feature = "field-encryption")]
pub use field_encryption::{
FieldEncryptionConfig, FieldEncryptionKey, FieldKeyProvider, StaticKeyProvider,
};
pub use header::{SegmentFooter, SegmentHeader};
pub use metadata::{ColumnBlockMeta, ColumnMeta, SegmentMetadata};
pub use reader::SegmentReader;
pub use reader::{FieldPredicate, ZoneMapOp};
pub use stats::ColumnStats;
pub use validity::{null_buffer_from_bytes, ValidityBuilder};
pub use writer::{SegmentMeta, SegmentWriter, SegmentWriterConfig};