Add NodeHelpers::inclusively_preceding_siblings()

This commit is contained in:
Anthony Ramine 2015-04-09 14:07:42 +02:00
parent c9a413cb6e
commit 9cee765c96

View file

@ -486,6 +486,7 @@ pub trait NodeHelpers<'a> {
fn traverse_preorder(self) -> TreeIterator<'a>;
fn inclusively_following_siblings(self) -> NodeSiblingIterator;
fn inclusively_preceding_siblings(self) -> ReverseSiblingIterator;
fn to_trusted_node_address(self) -> TrustedNodeAddress;
@ -754,6 +755,12 @@ impl<'a> NodeHelpers<'a> for JSRef<'a, Node> {
}
}
fn inclusively_preceding_siblings(self) -> ReverseSiblingIterator {
ReverseSiblingIterator {
current: Some(Temporary::from_rooted(self)),
}
}
fn is_inclusive_ancestor_of(self, parent: JSRef<Node>) -> bool {
self == parent || parent.ancestors().any(|ancestor| ancestor.root().r() == self)
}