diff options
author | Ms2ger <ms2ger@gmail.com> | 2014-12-13 10:38:17 +0100 |
---|---|---|
committer | Ms2ger <ms2ger@gmail.com> | 2014-12-13 10:38:19 +0100 |
commit | 14e1455119fde58a9e4ab9232efa816d2585c900 (patch) | |
tree | fad9a28ae173629933492a5c15fc853bea37fc14 /components/script/dom/htmlfieldsetelement.rs | |
parent | 4a2c4b65ccbe583289bd354607ee88e4f9a09c1a (diff) | |
download | servo-14e1455119fde58a9e4ab9232efa816d2585c900.tar.gz servo-14e1455119fde58a9e4ab9232efa816d2585c900.zip |
Skip the root node in live HTMLCollections.
The root node is never included in the collection, and omitting it here
simplifies and speeds up the filter implementations.
Diffstat (limited to 'components/script/dom/htmlfieldsetelement.rs')
-rw-r--r-- | components/script/dom/htmlfieldsetelement.rs | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/components/script/dom/htmlfieldsetelement.rs b/components/script/dom/htmlfieldsetelement.rs index 1dfdaa063b9..3ed4a82200c 100644 --- a/components/script/dom/htmlfieldsetelement.rs +++ b/components/script/dom/htmlfieldsetelement.rs @@ -6,7 +6,7 @@ use dom::attr::Attr; use dom::attr::AttrHelpers; use dom::bindings::codegen::Bindings::HTMLFieldSetElementBinding; use dom::bindings::codegen::Bindings::HTMLFieldSetElementBinding::HTMLFieldSetElementMethods; -use dom::bindings::codegen::InheritTypes::{ElementCast, HTMLFieldSetElementDerived, NodeCast}; +use dom::bindings::codegen::InheritTypes::{HTMLFieldSetElementDerived, NodeCast}; use dom::bindings::codegen::InheritTypes::{HTMLElementCast, HTMLLegendElementDerived}; use dom::bindings::js::{JSRef, Temporary}; use dom::bindings::utils::{Reflectable, Reflector}; @@ -54,11 +54,10 @@ impl<'a> HTMLFieldSetElementMethods for JSRef<'a, HTMLFieldSetElement> { #[jstraceable] struct ElementsFilter; impl CollectionFilter for ElementsFilter { - fn filter<'a>(&self, elem: JSRef<'a, Element>, root: JSRef<'a, Node>) -> bool { + fn filter<'a>(&self, elem: JSRef<'a, Element>, _root: JSRef<'a, Node>) -> bool { static TAG_NAMES: StaticStringVec = &["button", "fieldset", "input", "keygen", "object", "output", "select", "textarea"]; - let root: JSRef<Element> = ElementCast::to_ref(root).unwrap(); - elem != root && TAG_NAMES.iter().any(|&tag_name| tag_name == elem.local_name().as_slice()) + TAG_NAMES.iter().any(|&tag_name| tag_name == elem.local_name().as_slice()) } } let node: JSRef<Node> = NodeCast::from_ref(self); |