We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
2 parents ea4e6e1 + 2db46a8 commit 97f22a3Copy full SHA for 97f22a3
src/lib.rs
@@ -1531,6 +1531,16 @@ impl<K, V, S> Extend<(K, V)> for OrderMap<K, V, S>
1531
}
1532
1533
1534
+impl<'a, K, V, S> Extend<(&'a K, &'a V)> for OrderMap<K, V, S>
1535
+ where K: Hash + Eq + Copy,
1536
+ V: Copy,
1537
+ S: BuildHasher,
1538
+{
1539
+ fn extend<I: IntoIterator<Item=(&'a K, &'a V)>>(&mut self, iterable: I) {
1540
+ self.extend(iterable.into_iter().map(|(&key, &value)| (key, value)));
1541
+ }
1542
+}
1543
+
1544
impl<K, V, S> Default for OrderMap<K, V, S>
1545
where S: BuildHasher + Default,
1546
{
@@ -1769,4 +1779,12 @@ mod tests {
1769
1779
assert_ne!(map_a, map_c);
1770
1780
assert_ne!(map_c, map_a);
1771
1781
1782
1783
+ #[test]
1784
+ fn extend() {
1785
+ let mut map = OrderMap::new();
1786
+ map.extend(vec![(&1, &2), (&3, &4)]);
1787
+ map.extend(vec![(5, 6)]);
1788
+ assert_eq!(map.into_iter().collect::<Vec<_>>(), vec![(1, 2), (3, 4), (5, 6)]);
1789
1772
1790
0 commit comments