mirror of
https://github.com/servo/servo.git
synced 2025-08-03 20:50:07 +01:00
Cleanup Node::query_selector.
This commit is contained in:
parent
ea907c1311
commit
54c0601950
1 changed files with 4 additions and 7 deletions
|
@ -738,15 +738,12 @@ impl<'a> NodeHelpers<'a> for JSRef<'a, Node> {
|
||||||
// Step 3.
|
// Step 3.
|
||||||
Ok(ref selectors) => {
|
Ok(ref selectors) => {
|
||||||
let root = self.ancestors().last().unwrap_or(self.clone());
|
let root = self.ancestors().last().unwrap_or(self.clone());
|
||||||
for node in root.traverse_preorder() {
|
Ok(root.traverse_preorder()
|
||||||
if node.is_element() && matches(selectors, &node, &mut None) {
|
.filter_map(ElementCast::to_ref)
|
||||||
let elem: JSRef<Element> = ElementCast::to_ref(node).unwrap();
|
.find(|element| matches(selectors, &NodeCast::from_ref(*element), &mut None))
|
||||||
return Ok(Some(Temporary::from_rooted(elem)));
|
.map(Temporary::from_rooted))
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Ok(None)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Get an iterator over all nodes which match a set of selectors
|
/// Get an iterator over all nodes which match a set of selectors
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue