From 81b8ab3f677f35c822e967a90f7478cfd3749c90 Mon Sep 17 00:00:00 2001 From: Chris Mikkelson Date: Mon, 16 Sep 2024 00:17:58 -0500 Subject: [PATCH] Various API tweaks Avoid need to import memmap, expose fileset --- src/fileset.rs | 10 +++++----- src/lib.rs | 3 ++- src/reader/mod.rs | 2 ++ 3 files changed, 9 insertions(+), 6 deletions(-) diff --git a/src/fileset.rs b/src/fileset.rs index 36a8ea4..0280302 100644 --- a/src/fileset.rs +++ b/src/fileset.rs @@ -1,8 +1,8 @@ #![allow(dead_code)] -use memmap::Mmap; +//use memmap::Mmap; use crate::merger::Merger; -use crate::reader::Reader; +use crate::reader::FileReader; use crate::Result; use std::collections::HashMap; use std::path::{Path, PathBuf}; @@ -13,7 +13,7 @@ pub struct Fileset { fs_path: PathBuf, last_reload: SystemTime, reload_interval: Duration, - readers: Mutex, SystemTime)>>, + readers: Mutex>, } fn load_fs_file(f: impl AsRef) -> Result> { @@ -79,13 +79,13 @@ impl Fileset { Ok(()) } - pub fn readers(&mut self) -> Result>> { + pub fn readers(&mut self) -> Result> { self.reload()?; let readers = self.readers.lock().unwrap(); Ok(readers.iter().map(|(_, (r, _))| r.clone()).collect()) } - pub fn merger(&mut self) -> Result>> { + pub fn merger(&mut self) -> Result> { Ok(Merger::from(self.readers()?)) } } diff --git a/src/lib.rs b/src/lib.rs index 7d61f5b..f9b4240 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -12,7 +12,8 @@ mod writer; pub use compression::Compression; pub use entry::Entry; -use iter::Iter; +pub use fileset::Fileset; +pub use iter::Iter; pub use merger::Merger; pub use reader::Reader; pub use source::Source; diff --git a/src/reader/mod.rs b/src/reader/mod.rs index cf2873c..a38d949 100644 --- a/src/reader/mod.rs +++ b/src/reader/mod.rs @@ -68,6 +68,8 @@ pub struct Reader> { metadata: Metadata, } +pub type FileReader = Reader; + impl> Clone for Reader { fn clone(&self) -> Self { Self { -- 2.50.1