diff options
| author | Jan Tuomi <jan@jantuomi.fi> | 2024-11-08 19:31:45 +0200 |
|---|---|---|
| committer | Jan Tuomi <jan@jantuomi.fi> | 2024-11-08 21:06:03 +0200 |
| commit | e2d68847e00e58ddb646fa281ec4dfa7b67489cf (patch) | |
| tree | d0ec2f46aed810d389919934d69c6c15e489f04d /log_db/src/common.rs | |
| parent | 52d3d69035e80bb3889cf720324aa813df1f7f80 (diff) | |
Fix: set active files after rotation
Diffstat (limited to 'log_db/src/common.rs')
| -rw-r--r-- | log_db/src/common.rs | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/log_db/src/common.rs b/log_db/src/common.rs index cbb36a8..347b851 100644 --- a/log_db/src/common.rs +++ b/log_db/src/common.rs @@ -72,6 +72,27 @@ impl LogKeySet { LogKeySet { set } } + pub fn from_slice(keys: &[LogKey]) -> Self { + assert!( + !keys.is_empty(), + "LogKeySet::from_slice must be supplied a non-empty slice" + ); + let mut set = HashSet::with_capacity(keys.len()); + keys.iter().for_each(|key| { + set.insert(key.clone()); + }); + LogKeySet { set } + } + + pub fn iter(&self) -> std::collections::hash_set::Iter<'_, LogKey> { + self.set.iter() + } + + /// The number of LogKeys in the set. + pub fn len(&self) -> usize { + self.set.len() + } + /// Insert a LogKey into the set. pub fn insert(&mut self, key: LogKey) { self.set.insert(key); |
