style: Add TNode::children_and_traversal_children_might_differ.

This will be used to optimize out traversing the real DOM children when
propagating restyle hints.
This commit is contained in:
Cameron McCormack 2017-06-09 13:43:52 +08:00
parent c533097e20
commit 719709f0d5
3 changed files with 15 additions and 0 deletions

View file

@ -126,6 +126,10 @@ pub trait TNode : Sized + Copy + Clone + Debug + NodeInfo {
/// Get this node's children from the perspective of a restyle traversal.
fn traversal_children(&self) -> LayoutIterator<Self::ConcreteChildrenIterator>;
/// Returns whether `children()` and `traversal_children()` might return
/// iterators over different nodes.
fn children_and_traversal_children_might_differ(&self) -> bool;
/// Converts self into an `OpaqueNode`.
fn opaque(&self) -> OpaqueNode;