Pass a RootedVec to NodeList::new_simple_list()

This commit is contained in:
Anthony Ramine 2015-04-11 12:36:19 +02:00
parent 9d027bab0a
commit c026825e69
3 changed files with 19 additions and 17 deletions

View file

@ -6,6 +6,7 @@ use dom::bindings::codegen::Bindings::NodeListBinding;
use dom::bindings::codegen::Bindings::NodeListBinding::NodeListMethods;
use dom::bindings::global::GlobalRef;
use dom::bindings::js::{JS, JSRef, Temporary};
use dom::bindings::trace::RootedVec;
use dom::bindings::utils::{Reflector, reflect_dom_object};
use dom::node::{Node, NodeHelpers};
use dom::window::Window;
@ -38,8 +39,8 @@ impl NodeList {
GlobalRef::Window(window), NodeListBinding::Wrap)
}
pub fn new_simple_list(window: JSRef<Window>, elements: Vec<JSRef<Node>>) -> Temporary<NodeList> {
NodeList::new(window, NodeListType::Simple(elements.iter().map(|element| JS::from_rooted(*element)).collect()))
pub fn new_simple_list(window: JSRef<Window>, elements: &RootedVec<JS<Node>>) -> Temporary<NodeList> {
NodeList::new(window, NodeListType::Simple((**elements).clone()))
}
pub fn new_child_list(window: JSRef<Window>, node: JSRef<Node>) -> Temporary<NodeList> {