Making it more idiomatic

This commit is contained in:
Augusto 2020-10-26 16:54:41 +01:00
parent 5536b3b9e2
commit 664564f004
2 changed files with 1 additions and 15 deletions

View File

@ -66,11 +66,6 @@ impl Extensions {
pub fn extend(&mut self, other: Extensions) {
self.map.extend(other.map);
}
/// Returns `true` if no extension is registered
pub fn is_empty(&self) -> bool {
self.map.is_empty()
}
}
impl fmt::Debug for Extensions {
@ -98,8 +93,6 @@ mod tests {
fn test_clear() {
let mut map = Extensions::new();
assert!(map.is_empty());
map.insert::<i8>(8);
map.insert::<i16>(16);
map.insert::<i32>(32);
@ -107,14 +100,12 @@ mod tests {
assert!(map.contains::<i8>());
assert!(map.contains::<i16>());
assert!(map.contains::<i32>());
assert!(!map.is_empty());
map.clear();
assert!(!map.contains::<i8>());
assert!(!map.contains::<i16>());
assert!(!map.contains::<i32>());
assert!(map.is_empty());
map.insert::<i8>(10);
assert_eq!(*map.get::<i8>().unwrap(), 10);

View File

@ -209,12 +209,7 @@ where
self.data = Some(data);
}
if !cfg.extensions.is_empty() {
let mut data = self.data.unwrap_or_else(Extensions::new);
data.extend(cfg.extensions);
self.data = Some(data);
}
self.data.get_or_insert_with(Extensions::new).extend(cfg.extensions);
self
}