diff --git a/actix-http/src/extensions.rs b/actix-http/src/extensions.rs index e1d9a9dc0..09f1b711f 100644 --- a/actix-http/src/extensions.rs +++ b/actix-http/src/extensions.rs @@ -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::(8); map.insert::(16); map.insert::(32); @@ -107,14 +100,12 @@ mod tests { assert!(map.contains::()); assert!(map.contains::()); assert!(map.contains::()); - assert!(!map.is_empty()); map.clear(); assert!(!map.contains::()); assert!(!map.contains::()); assert!(!map.contains::()); - assert!(map.is_empty()); map.insert::(10); assert_eq!(*map.get::().unwrap(), 10); diff --git a/src/scope.rs b/src/scope.rs index 9a7cd5279..ee0b92467 100644 --- a/src/scope.rs +++ b/src/scope.rs @@ -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 }