use rawdb::Database;
mod from;
use crate::Version;
#[derive(Clone, Copy)]
pub struct ImportOptions<'a> {
pub db: &'a Database,
pub name: &'a str,
pub version: Version,
pub saved_stamped_changes: u16,
pub initial_capacity: Option<usize>,
pub max_compression_chunk_size: Option<usize>,
}
impl<'a> ImportOptions<'a> {
pub fn new(db: &'a Database, name: &'a str, version: Version) -> Self {
Self {
db,
name,
version,
saved_stamped_changes: 0,
initial_capacity: None,
max_compression_chunk_size: None,
}
}
pub fn with_saved_stamped_changes(mut self, num: u16) -> Self {
self.saved_stamped_changes = num;
self
}
pub fn with_initial_capacity(mut self, capacity: usize) -> Self {
self.initial_capacity = Some(capacity);
self
}
pub fn with_max_compression_chunk_size(mut self, bytes: usize) -> Self {
self.max_compression_chunk_size = Some(bytes);
self
}
}