#[stable(feature = "rust1", since = "1.0.0")]
impl<T: Ord> Extend<T> for BinaryHeap<T> {
- fn extend<I: IntoIterator<Item = T>>(&mut self, iterable: I) {
- let iter = iterable.into_iter();
- let (lower, _) = iter.size_hint();
+ fn extend<I: IntoIterator<Item = T>>(&mut self, iter: I) {
+ let iterator = iter.into_iter();
+ let (lower, _) = iterator.size_hint();
self.reserve(lower);
- for elem in iter {
+ for elem in iterator {
self.push(elem);
}
}
#[stable(feature = "rust1", since = "1.0.0")]
impl FromIterator<char> for String {
- fn from_iter<I: IntoIterator<Item = char>>(iterable: I) -> String {
+ fn from_iter<I: IntoIterator<Item = char>>(iter: I) -> String {
let mut buf = String::new();
- buf.extend(iterable);
+ buf.extend(iter);
buf
}
}
#[stable(feature = "rust1", since = "1.0.0")]
impl<'a> FromIterator<&'a str> for String {
- fn from_iter<I: IntoIterator<Item = &'a str>>(iterable: I) -> String {
+ fn from_iter<I: IntoIterator<Item = &'a str>>(iter: I) -> String {
let mut buf = String::new();
- buf.extend(iterable);
+ buf.extend(iter);
buf
}
}
#[stable(feature = "extend_string", since = "1.4.0")]
impl FromIterator<String> for String {
- fn from_iter<I: IntoIterator<Item = String>>(iterable: I) -> String {
+ fn from_iter<I: IntoIterator<Item = String>>(iter: I) -> String {
let mut buf = String::new();
- buf.extend(iterable);
+ buf.extend(iter);
buf
}
}
#[stable(feature = "rust1", since = "1.0.0")]
impl Extend<char> for String {
- fn extend<I: IntoIterator<Item = char>>(&mut self, iterable: I) {
- let iterator = iterable.into_iter();
+ fn extend<I: IntoIterator<Item = char>>(&mut self, iter: I) {
+ let iterator = iter.into_iter();
let (lower_bound, _) = iterator.size_hint();
self.reserve(lower_bound);
for ch in iterator {
#[stable(feature = "extend_ref", since = "1.2.0")]
impl<'a> Extend<&'a char> for String {
- fn extend<I: IntoIterator<Item = &'a char>>(&mut self, iterable: I) {
- self.extend(iterable.into_iter().cloned());
+ fn extend<I: IntoIterator<Item = &'a char>>(&mut self, iter: I) {
+ self.extend(iter.into_iter().cloned());
}
}
#[stable(feature = "rust1", since = "1.0.0")]
impl<'a> Extend<&'a str> for String {
- fn extend<I: IntoIterator<Item = &'a str>>(&mut self, iterable: I) {
- for s in iterable {
+ fn extend<I: IntoIterator<Item = &'a str>>(&mut self, iter: I) {
+ for s in iter {
self.push_str(s)
}
}
#[stable(feature = "extend_string", since = "1.4.0")]
impl Extend<String> for String {
- fn extend<I: IntoIterator<Item = String>>(&mut self, iterable: I) {
- for s in iterable {
+ fn extend<I: IntoIterator<Item = String>>(&mut self, iter: I) {
+ for s in iter {
self.push_str(&s)
}
}
#[stable(feature = "rust1", since = "1.0.0")]
impl<T> FromIterator<T> for Vec<T> {
#[inline]
- fn from_iter<I: IntoIterator<Item = T>>(iterable: I) -> Vec<T> {
+ fn from_iter<I: IntoIterator<Item = T>>(iter: I) -> Vec<T> {
// Unroll the first iteration, as the vector is going to be
// expanded on this iteration in every case when the iterable is not
// empty, but the loop in extend_desugared() is not going to see the
// vector being full in the few subsequent loop iterations.
// So we get better branch prediction.
- let mut iterator = iterable.into_iter();
+ let mut iterator = iter.into_iter();
let mut vector = match iterator.next() {
None => return Vec::new(),
Some(element) => {
#[stable(feature = "rust1", since = "1.0.0")]
impl<T> Extend<T> for Vec<T> {
#[inline]
- fn extend<I: IntoIterator<Item = T>>(&mut self, iterable: I) {
- self.extend_desugared(iterable.into_iter())
+ fn extend<I: IntoIterator<Item = T>>(&mut self, iter: I) {
+ self.extend_desugared(iter.into_iter())
}
}
#[stable(feature = "rust1", since = "1.0.0")]
impl<A> FromIterator<A> for VecDeque<A> {
- fn from_iter<T: IntoIterator<Item = A>>(iterable: T) -> VecDeque<A> {
- let iterator = iterable.into_iter();
+ fn from_iter<T: IntoIterator<Item = A>>(iter: T) -> VecDeque<A> {
+ let iterator = iter.into_iter();
let (lower, _) = iterator.size_hint();
let mut deq = VecDeque::with_capacity(lower);
deq.extend(iterator);
///
/// // and we'll implement FromIterator
/// impl FromIterator<i32> for MyCollection {
-/// fn from_iter<I: IntoIterator<Item=i32>>(iterator: I) -> Self {
+/// fn from_iter<I: IntoIterator<Item=i32>>(iter: I) -> Self {
/// let mut c = MyCollection::new();
///
-/// for i in iterator {
+/// for i in iter {
/// c.add(i);
/// }
///
/// assert_eq!(v, vec![5, 5, 5, 5, 5]);
/// ```
#[stable(feature = "rust1", since = "1.0.0")]
- fn from_iter<T: IntoIterator<Item=A>>(iterator: T) -> Self;
+ fn from_iter<T: IntoIterator<Item=A>>(iter: T) -> Self;
}
/// Conversion into an `Iterator`.
/// // This is a bit simpler with the concrete type signature: we can call
/// // extend on anything which can be turned into an Iterator which gives
/// // us i32s. Because we need i32s to put into MyCollection.
-/// fn extend<T: IntoIterator<Item=i32>>(&mut self, iterable: T) {
+/// fn extend<T: IntoIterator<Item=i32>>(&mut self, iter: T) {
///
/// // The implementation is very straightforward: loop through the
/// // iterator, and add() each element to ourselves.
-/// for elem in iterable {
+/// for elem in iter {
/// self.add(elem);
/// }
/// }
/// assert_eq!("abcdef", &message);
/// ```
#[stable(feature = "rust1", since = "1.0.0")]
- fn extend<T: IntoIterator<Item=A>>(&mut self, iterable: T);
+ fn extend<T: IntoIterator<Item=A>>(&mut self, iter: T);
}
/// An iterator able to yield elements from both ends.
buf: Option<u16>,
}
-/// Create an iterator over the UTF-16 encoded code points in `iterable`,
+/// Create an iterator over the UTF-16 encoded code points in `iter`,
/// returning unpaired surrogates as `Err`s.
///
/// # Examples
/// ```
#[unstable(feature = "decode_utf16", reason = "recently exposed", issue = "27830")]
#[inline]
-pub fn decode_utf16<I: IntoIterator<Item = u16>>(iterable: I) -> DecodeUtf16<I::IntoIter> {
+pub fn decode_utf16<I: IntoIterator<Item = u16>>(iter: I) -> DecodeUtf16<I::IntoIter> {
DecodeUtf16 {
- iter: iterable.into_iter(),
+ iter: iter.into_iter(),
buf: None,
}
}
impl<K, V, S> FromIterator<(K, V)> for HashMap<K, V, S>
where K: Eq + Hash, S: BuildHasher + Default
{
- fn from_iter<T: IntoIterator<Item=(K, V)>>(iterable: T) -> HashMap<K, V, S> {
- let iter = iterable.into_iter();
- let lower = iter.size_hint().0;
+ fn from_iter<T: IntoIterator<Item=(K, V)>>(iter: T) -> HashMap<K, V, S> {
+ let iterator = iter.into_iter();
+ let lower = iterator.size_hint().0;
let mut map = HashMap::with_capacity_and_hasher(lower, Default::default());
- map.extend(iter);
+ map.extend(iterator);
map
}
}
where T: Eq + Hash,
S: BuildHasher + Default,
{
- fn from_iter<I: IntoIterator<Item=T>>(iterable: I) -> HashSet<T, S> {
- let iter = iterable.into_iter();
- let lower = iter.size_hint().0;
+ fn from_iter<I: IntoIterator<Item=T>>(iter: I) -> HashSet<T, S> {
+ let iterator = iter.into_iter();
+ let lower = iterator.size_hint().0;
let mut set = HashSet::with_capacity_and_hasher(lower, Default::default());
- set.extend(iter);
+ set.extend(iterator);
set
}
}
/// This replaces surrogate code point pairs with supplementary code points,
/// like concatenating ill-formed UTF-16 strings effectively would.
impl Extend<CodePoint> for Wtf8Buf {
- fn extend<T: IntoIterator<Item=CodePoint>>(&mut self, iterable: T) {
- let iterator = iterable.into_iter();
+ fn extend<T: IntoIterator<Item=CodePoint>>(&mut self, iter: T) {
+ let iterator = iter.into_iter();
let (low, _high) = iterator.size_hint();
// Lower bound of one byte per code point (ASCII only)
self.bytes.reserve(low);