Auto merge of #14027 - frewsxcv:htmlcollection-iter-refactor, r=emilio

Remove unnecessary `Box` around `HTMLCollectionElementsIter::node_iter`.

<!-- Reviewable:start -->
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/14027)
<!-- Reviewable:end -->
This commit is contained in:
bors-servo 2016-11-03 16:05:14 -05:00 committed by GitHub
commit 74a3ea9135
2 changed files with 26 additions and 23 deletions

View file

@ -853,22 +853,23 @@ impl Node {
let tr = new_child();
let after_node = if index == -1 {
None
} else {
match get_items().elements_iter()
.map(Root::upcast::<Node>)
.map(Some)
.chain(iter::once(None))
.nth(index as usize) {
None => return Err(Error::IndexSize),
Some(node) => node,
}
};
{
let tr_node = tr.upcast::<Node>();
try!(self.InsertBefore(tr_node, after_node.r()));
if index == -1 {
try!(self.InsertBefore(tr_node, None));
} else {
let items = get_items();
let node = match items.elements_iter()
.map(Root::upcast::<Node>)
.map(Some)
.chain(iter::once(None))
.nth(index as usize) {
None => return Err(Error::IndexSize),
Some(node) => node,
};
try!(self.InsertBefore(tr_node, node.r()));
}
}
Ok(Root::upcast::<HTMLElement>(tr))