Mailboxes: add FromIterator impl and optimize Extend impl (#782)
This commit is contained in:
@@ -315,6 +315,18 @@ impl From<Mailboxes> for Vec<Mailbox> {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
impl FromIterator<Mailbox> for Mailboxes {
|
||||||
|
fn from_iter<T: IntoIterator<Item = Mailbox>>(iter: T) -> Self {
|
||||||
|
Self(Vec::from_iter(iter))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
impl Extend<Mailbox> for Mailboxes {
|
||||||
|
fn extend<T: IntoIterator<Item = Mailbox>>(&mut self, iter: T) {
|
||||||
|
self.0.extend(iter);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
impl IntoIterator for Mailboxes {
|
impl IntoIterator for Mailboxes {
|
||||||
type Item = Mailbox;
|
type Item = Mailbox;
|
||||||
type IntoIter = ::std::vec::IntoIter<Mailbox>;
|
type IntoIter = ::std::vec::IntoIter<Mailbox>;
|
||||||
@@ -324,14 +336,6 @@ impl IntoIterator for Mailboxes {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
impl Extend<Mailbox> for Mailboxes {
|
|
||||||
fn extend<T: IntoIterator<Item = Mailbox>>(&mut self, iter: T) {
|
|
||||||
for elem in iter {
|
|
||||||
self.0.push(elem);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
impl Display for Mailboxes {
|
impl Display for Mailboxes {
|
||||||
fn fmt(&self, f: &mut Formatter<'_>) -> FmtResult {
|
fn fmt(&self, f: &mut Formatter<'_>) -> FmtResult {
|
||||||
let mut iter = self.iter();
|
let mut iter = self.iter();
|
||||||
|
|||||||
Reference in New Issue
Block a user