Trait Extend
trait Extend<A>
Extend a collection with the contents of an iterator.
Iterators produce a series of values, and collections can also be thought
of as a series of values. The Extend trait bridges this gap, allowing you
to extend a collection by including the contents of that iterator. When
extending a collection with an already existing key, that entry is updated
or, in the case of collections that permit multiple entries with equal
keys, that entry is inserted.
Examples
Basic usage:
// You can extend a String with some chars:
let mut message = Stringfrom;
message.extend;
assert_eq!;
Implementing Extend:
// A sample collection, that's just a wrapper over Vec<T>
;
// Let's give it some methods so we can create one and add things
// to it.
// since MyCollection has a list of i32s, we implement Extend for i32
let mut c = new;
c.add;
c.add;
c.add;
// let's extend our collection with three more numbers
c.extend;
// we've added these elements onto the end
assert_eq!;
Required Methods
fn extend<T: IntoIterator<Item = A>>(self: &mut Self, iter: T)Extends a collection with the contents of an iterator.
As this is the only required method for this trait, the trait-level docs contain more details.
Examples
// You can extend a String with some chars: let mut message = Stringfrom; message.extend; assert_eq!;
Provided Methods
fn extend_one(self: &mut Self, item: A)Extends a collection with exactly one element.
fn extend_reserve(self: &mut Self, additional: usize)Reserves capacity in a collection for the given number of additional elements.
The default implementation does nothing.
Implementors
impl<T, ExtendT> Extend for (ExtendT)impl Extend for ()