diff options
| author | ljedrz <ljedrz@gmail.com> | 2018-11-18 10:41:40 +0100 |
|---|---|---|
| committer | ljedrz <ljedrz@gmail.com> | 2018-12-10 14:03:25 +0100 |
| commit | 875ce5f851c3773cea3fb4af8d9e771e3e68dbc5 (patch) | |
| tree | 9aeebd28582d7dde5388effd0465dac9033e57fe | |
| parent | 286dc37d1bd30ecd419e889c7f3888575deac5fc (diff) | |
| download | rust-875ce5f851c3773cea3fb4af8d9e771e3e68dbc5.tar.gz rust-875ce5f851c3773cea3fb4af8d9e771e3e68dbc5.zip | |
sorted_map: change From<Iterator<I>> to FromIterator<I>
| -rw-r--r-- | src/librustc_data_structures/sorted_map.rs | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/librustc_data_structures/sorted_map.rs b/src/librustc_data_structures/sorted_map.rs index 29d99a6aef3..212c83894a6 100644 --- a/src/librustc_data_structures/sorted_map.rs +++ b/src/librustc_data_structures/sorted_map.rs @@ -10,7 +10,7 @@ use std::borrow::Borrow; use std::cmp::Ordering; -use std::convert::From; +use std::iter::FromIterator; use std::mem; use std::ops::{RangeBounds, Bound, Index, IndexMut}; @@ -272,9 +272,9 @@ impl<K: Ord, V, Q: Borrow<K>> IndexMut<Q> for SortedMap<K, V> { } } -impl<K: Ord, V, I: Iterator<Item=(K, V)>> From<I> for SortedMap<K, V> { - fn from(data: I) -> Self { - let mut data: Vec<(K, V)> = data.collect(); +impl<K: Ord, V> FromIterator<(K, V)> for SortedMap<K, V> { + fn from_iter<T: IntoIterator<Item = (K, V)>>(iter: T) -> Self { + let mut data: Vec<(K, V)> = iter.into_iter().collect(); data.sort_unstable_by(|&(ref k1, _), &(ref k2, _)| k1.cmp(k2)); data.dedup_by(|&mut (ref k1, _), &mut (ref k2, _)| { k1.cmp(k2) == Ordering::Equal |
