aboutsummaryrefslogtreecommitdiffstats
path: root/components/layout/flow.rs
diff options
context:
space:
mode:
Diffstat (limited to 'components/layout/flow.rs')
-rw-r--r--components/layout/flow.rs109
1 files changed, 0 insertions, 109 deletions
diff --git a/components/layout/flow.rs b/components/layout/flow.rs
index c6fc65407e5..e2d4e5cd99c 100644
--- a/components/layout/flow.rs
+++ b/components/layout/flow.rs
@@ -535,28 +535,6 @@ pub trait ImmutableFlowUtils {
}
pub trait MutableFlowUtils {
- // Traversals
-
- /// Traverses the tree in preorder.
- fn traverse_preorder<T: PreorderFlowTraversal>(self, traversal: &T);
-
- /// Traverses the tree in postorder.
- fn traverse_postorder<T: PostorderFlowTraversal>(self, traversal: &T);
-
- /// Traverses the tree in-order.
- fn traverse_inorder<T: InorderFlowTraversal>(self, traversal: &mut T, level: u32);
-
- /// Traverse the Absolute flow tree in preorder.
- ///
- /// Traverse all your direct absolute descendants, who will then traverse
- /// their direct absolute descendants.
- ///
- /// Return true if the traversal is to continue or false to stop.
- fn traverse_preorder_absolute_flows<T>(&mut self, traversal: &mut T)
- where T: PreorderFlowTraversal;
-
- // Mutators
-
/// Calls `repair_style` and `bubble_inline_sizes`. You should use this method instead of
/// calling them individually, since there is no reason not to perform both operations.
fn repair_style_and_bubble_inline_sizes(self, style: &::ServoArc<ComputedValues>);
@@ -608,42 +586,6 @@ impl FlowClass {
}
}
-/// A top-down traversal.
-pub trait PreorderFlowTraversal {
- /// The operation to perform. Return true to continue or false to stop.
- fn process(&self, flow: &mut Flow);
-
- /// Returns true if this node must be processed in-order. If this returns false,
- /// we skip the operation for this node, but continue processing the descendants.
- /// This is called *after* parent nodes are visited.
- fn should_process(&self, _flow: &mut Flow) -> bool {
- true
- }
-}
-
-/// A bottom-up traversal, with a optional in-order pass.
-pub trait PostorderFlowTraversal {
- /// The operation to perform. Return true to continue or false to stop.
- fn process(&self, flow: &mut Flow);
-
- /// Returns false if this node must be processed in-order. If this returns false, we skip the
- /// operation for this node, but continue processing the ancestors. This is called *after*
- /// child nodes are visited.
- fn should_process(&self, _flow: &mut Flow) -> bool {
- true
- }
-}
-
-/// An in-order (sequential only) traversal.
-pub trait InorderFlowTraversal {
- /// The operation to perform. Returns the level of the tree we're at.
- fn process(&mut self, flow: &mut Flow, level: u32);
-
- /// Returns true if this node should be processed and false if neither this node nor its
- /// descendants should be processed.
- fn should_process_subtree(&mut self, flow: &mut Flow) -> bool;
-}
-
bitflags! {
#[doc = "Flags used in flows."]
pub flags FlowFlags: u32 {
@@ -1354,41 +1296,6 @@ impl<'a> ImmutableFlowUtils for &'a Flow {
}
impl<'a> MutableFlowUtils for &'a mut Flow {
- /// Traverses the tree in preorder.
- fn traverse_preorder<T: PreorderFlowTraversal>(self, traversal: &T) {
- if traversal.should_process(self) {
- traversal.process(self);
- }
-
- for kid in child_iter_mut(self) {
- kid.traverse_preorder(traversal);
- }
- }
-
- /// Traverses the tree in postorder.
- fn traverse_postorder<T: PostorderFlowTraversal>(self, traversal: &T) {
- for kid in child_iter_mut(self) {
- kid.traverse_postorder(traversal);
- }
-
- if traversal.should_process(self) {
- traversal.process(self)
- }
- }
-
- /// Traverses the tree in-order.
- fn traverse_inorder<T: InorderFlowTraversal>(self, traversal: &mut T, level: u32) {
- if !traversal.should_process_subtree(self) {
- return;
- }
-
- traversal.process(self, level);
-
- for kid in child_iter_mut(self) {
- kid.traverse_inorder(traversal, level + 1);
- }
- }
-
/// Calls `repair_style` and `bubble_inline_sizes`. You should use this method instead of
/// calling them individually, since there is no reason not to perform both operations.
fn repair_style_and_bubble_inline_sizes(self, style: &::ServoArc<ComputedValues>) {
@@ -1396,22 +1303,6 @@ impl<'a> MutableFlowUtils for &'a mut Flow {
mut_base(self).update_flags_if_needed(style);
self.bubble_inline_sizes();
}
-
- /// Traverse the Absolute flow tree in preorder.
- ///
- /// Traverse all your direct absolute descendants, who will then traverse
- /// their direct absolute descendants.
- ///
- /// Return true if the traversal is to continue or false to stop.
- fn traverse_preorder_absolute_flows<T>(&mut self, traversal: &mut T)
- where T: PreorderFlowTraversal {
- traversal.process(*self);
-
- let descendant_offset_iter = mut_base(*self).abs_descendants.iter();
- for ref mut descendant_link in descendant_offset_iter {
- descendant_link.traverse_preorder_absolute_flows(traversal)
- }
- }
}
impl MutableOwnedFlowUtils for FlowRef {