Hoist the style parts of sequential.rs into style/.

This commit is contained in:
Bobby Holley 2016-01-06 19:15:00 -08:00
parent 57d2a0b0db
commit 136c0938a2
3 changed files with 30 additions and 18 deletions

View file

@ -18,24 +18,7 @@ use traversal::{AssignBSizesAndStoreOverflow, AssignISizes};
use traversal::{BubbleISizes, BuildDisplayList, ComputeAbsolutePositions, PostorderNodeMutTraversal};
use util::opts;
pub fn traverse_dom_preorder<'ln, N, C>(root: N,
shared: &C::SharedContext)
where N: TNode<'ln>,
C: DomTraversalContext<'ln, N> {
fn doit<'a, 'ln, N, C>(context: &'a C, node: N)
where N: TNode<'ln>, C: DomTraversalContext<'ln, N> {
context.process_preorder(node);
for kid in node.children() {
doit::<N, C>(context, kid);
}
context.process_postorder(node);
}
let context = C::new(shared, root.opaque());
doit::<N, C>(&context, root);
}
pub use style::sequential::traverse_dom_preorder;
pub fn resolve_generated_content(root: &mut FlowRef, shared_layout_context: &SharedLayoutContext) {
fn doit(flow: &mut Flow, level: u32, traversal: &mut ResolveGeneratedContent) {

View file

@ -57,6 +57,7 @@ pub mod parallel;
pub mod parser;
pub mod restyle_hints;
pub mod selector_matching;
pub mod sequential;
pub mod stylesheets;
pub mod traversal;
#[macro_use]

View file

@ -0,0 +1,28 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
//! Implements sequential traversal over the DOM tree.
use dom::TNode;
use traversal::DomTraversalContext;
pub fn traverse_dom_preorder<'ln, N, C>(root: N,
shared: &C::SharedContext)
where N: TNode<'ln>,
C: DomTraversalContext<'ln, N> {
fn doit<'a, 'ln, N, C>(context: &'a C, node: N)
where N: TNode<'ln>, C: DomTraversalContext<'ln, N> {
context.process_preorder(node);
for kid in node.children() {
doit::<N, C>(context, kid);
}
context.process_postorder(node);
}
let context = C::new(shared, root.opaque());
doit::<N, C>(&context, root);
}