Skip to content

Commit 2ccbb23

Browse files
committed
removed TreeBuilderStep and moved its impl into TreeBuilder
1 parent ad8a20a commit 2ccbb23

File tree

2 files changed

+3
-23
lines changed

2 files changed

+3
-23
lines changed

html5ever/src/tree_builder/mod.rs

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@ pub use interface::{NodeOrText, AppendNode, AppendText, Attribute};
1616
pub use interface::{TreeSink, Tracer, NextParserState, create_element, ElementFlags};
1717

1818
use self::types::*;
19-
use self::rules::TreeBuilderStep;
2019

2120
use {ExpandedName, QualName, LocalName, Namespace};
2221
use tendril::StrTendril;
@@ -47,11 +46,7 @@ pub use self::PushFlag::*;
4746
mod data;
4847
mod types;
4948

50-
mod rules {
51-
//! The tree builder rules, as a single, enormous nested match expression.
52-
53-
include!(concat!(env!("OUT_DIR"), "/rules.rs"));
54-
}
49+
include!(concat!(env!("OUT_DIR"), "/rules.rs"));
5550

5651
/// Tree builder options, with an impl for Default.
5752
#[derive(Copy, Clone)]

html5ever/src/tree_builder/rules.rs

Lines changed: 2 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -9,40 +9,25 @@
99

1010
// The tree builder rules, as a single, enormous nested match expression.
1111

12-
use {ExpandedName, QualName};
13-
use interface::{Attribute, TreeSink, Quirks, AppendNode, create_element};
1412
use tree_builder::types::*;
1513
use tree_builder::tag_sets::*;
16-
use tree_builder::{NoPush, Push, html_elem};
17-
use tokenizer::{EndTag, StartTag, Tag};
1814
use tokenizer::states::{Rcdata, Rawtext, ScriptData, Plaintext};
19-
use util::str::is_ascii_whitespace;
2015

21-
use std::ascii::AsciiExt;
22-
use std::mem::replace;
23-
use std::borrow::Cow::Borrowed;
2416
use std::borrow::ToOwned;
2517

26-
use tendril::{StrTendril, SliceExt};
18+
use tendril::SliceExt;
2719

2820
fn any_not_whitespace(x: &StrTendril) -> bool {
2921
// FIXME: this might be much faster as a byte scan
3022
x.chars().any(|c| !is_ascii_whitespace(c))
3123
}
3224

33-
// This goes in a trait so that we can control visibility.
34-
pub trait TreeBuilderStep<Handle> {
35-
fn step(&mut self, mode: InsertionMode, token: Token) -> ProcessResult<Handle>;
36-
fn step_foreign(&mut self, token: Token) -> ProcessResult<Handle>;
37-
}
38-
3925
fn current_node<Handle>(open_elems: &[Handle]) -> &Handle {
4026
open_elems.last().expect("no current element")
4127
}
4228

4329
#[doc(hidden)]
44-
impl<Handle, Sink> TreeBuilderStep<Handle>
45-
for super::TreeBuilder<Handle, Sink>
30+
impl<Handle, Sink> TreeBuilder<Handle, Sink>
4631
where Handle: Clone,
4732
Sink: TreeSink<Handle=Handle>,
4833
{

0 commit comments

Comments
 (0)