Revert "removed unsafe code in favor of explicit assert"
[anymap] / src / lib.rs
index bcd5c231a4e0d75e156974b833835dd68657a179..de03fb6c74d0a7ea45c47cc8fcf717b6188c4d20 100644 (file)
@@ -75,6 +75,13 @@ macro_rules! impl_common_methods {
                 self.$field.clear()
             }
         }
+
+        impl<A: ?Sized + UncheckedAnyExt> Default for $t<A> {
+            #[inline]
+            fn default() -> $t<A> {
+                $t::new()
+            }
+        }
     }
 }
 
@@ -389,6 +396,12 @@ mod tests {
     test_entry!(test_entry_any, AnyMap);
     test_entry!(test_entry_cloneany, Map<CloneAny>);
 
+    #[test]
+    fn test_default() {
+        let map: AnyMap = Default::default();
+        assert_eq!(map.len(), 0);
+    }
+
     #[test]
     fn test_clone() {
         let mut map: Map<CloneAny> = Map::new();