Relax TreeMap value bounds, fix warnings, simplify cmp

This commit is contained in:
Nathan Sobo 2021-12-10 23:35:24 -07:00
parent 49d1c9d1ba
commit 0639c8331c

View file

@ -5,7 +5,7 @@ use crate::{Bias, Dimension, Item, KeyedItem, SeekTarget, SumTree, Summary};
pub struct TreeMap<K, V>(SumTree<MapEntry<K, V>>)
where
K: Clone + Debug + Default,
V: Clone + Debug + Default;
V: Clone + Debug;
#[derive(Clone)]
pub struct MapEntry<K, V> {
@ -81,7 +81,7 @@ where
{
type Context = ();
fn add_summary(&mut self, summary: &Self, cx: &()) {
fn add_summary(&mut self, summary: &Self, _: &()) {
*self = summary.clone()
}
}
@ -99,11 +99,7 @@ impl<'a, K> SeekTarget<'a, MapKey<K>, MapKeyRef<'a, K>> for MapKeyRef<'_, K>
where
K: Clone + Debug + Default + Ord,
{
fn cmp(&self, cursor_location: &MapKeyRef<K>, cx: &()) -> Ordering {
if let Some(key) = cursor_location.0 {
self.0.cmp(&cursor_location.0)
} else {
Ordering::Greater
}
fn cmp(&self, cursor_location: &MapKeyRef<K>, _: &()) -> Ordering {
self.0.cmp(&cursor_location.0)
}
}