mirror of
https://github.com/n0-computer/noq.git
synced 2026-09-24 12:13:05 +00:00
Simplify BTreeMap RangeSet min/max getters for Rust 1.66
This commit is contained in:
@@ -177,10 +177,11 @@ impl RangeSet {
|
||||
}
|
||||
|
||||
pub fn min(&self) -> Option<u64> {
|
||||
self.iter().next().map(|x| x.start)
|
||||
self.0.first_key_value().map(|(&start, _)| start)
|
||||
}
|
||||
|
||||
pub fn max(&self) -> Option<u64> {
|
||||
self.iter().next_back().map(|x| x.end - 1)
|
||||
self.0.last_key_value().map(|(_, &end)| end - 1)
|
||||
}
|
||||
|
||||
pub fn len(&self) -> usize {
|
||||
|
||||
@@ -149,6 +149,16 @@ macro_rules! common_set_tests {
|
||||
}
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn min_max() {
|
||||
let mut set = $set_type::new();
|
||||
set.insert(1..3);
|
||||
set.insert(4..5);
|
||||
set.insert(6..10);
|
||||
assert_eq!(set.min(), Some(1));
|
||||
assert_eq!(set.max(), Some(9));
|
||||
}
|
||||
|
||||
fn create_initial_sets(max_range: u64) -> ($set_type, RefRangeSet) {
|
||||
let mut set = $set_type::new();
|
||||
let mut reference = RefRangeSet::new(max_range as usize);
|
||||
|
||||
Reference in New Issue
Block a user