diff options
author | Corey Farwell <coreyf@rwell.org> | 2017-06-24 18:51:50 -0400 |
---|---|---|
committer | Corey Farwell <coreyf@rwell.org> | 2017-06-25 00:29:08 -0400 |
commit | 011ff28aee34f59eb1e788de2666062c7b6dbff4 (patch) | |
tree | 7bfeb1a11067cf2a0a54242fa25585f7cc747650 /components/script/dom/servoparser | |
parent | a29261dec196ab5c887655e479e503ca6cbb9229 (diff) | |
download | servo-011ff28aee34f59eb1e788de2666062c7b6dbff4.tar.gz servo-011ff28aee34f59eb1e788de2666062c7b6dbff4.zip |
Merge explicit node iterator structures into single generic structure.
Diffstat (limited to 'components/script/dom/servoparser')
-rw-r--r-- | components/script/dom/servoparser/mod.rs | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/components/script/dom/servoparser/mod.rs b/components/script/dom/servoparser/mod.rs index 6d6edb6d7a8..f6e1efc5977 100644 --- a/components/script/dom/servoparser/mod.rs +++ b/components/script/dom/servoparser/mod.rs @@ -24,7 +24,7 @@ use dom::htmlformelement::{FormControlElementHelpers, HTMLFormElement}; use dom::htmlimageelement::HTMLImageElement; use dom::htmlscriptelement::{HTMLScriptElement, ScriptResult}; use dom::htmltemplateelement::HTMLTemplateElement; -use dom::node::{Node, NodeSiblingIterator}; +use dom::node::Node; use dom::processinginstruction::ProcessingInstruction; use dom::text::Text; use dom::virtualmethods::vtable_for; @@ -119,7 +119,7 @@ impl ServoParser { } // https://html.spec.whatwg.org/multipage/#parsing-html-fragments - pub fn parse_html_fragment(context: &Element, input: DOMString) -> FragmentParsingResult { + pub fn parse_html_fragment(context: &Element, input: DOMString) -> impl Iterator<Item=Root<Node>> { let context_node = context.upcast::<Node>(); let context_document = context_node.owner_doc(); let window = context_document.window(); @@ -468,11 +468,15 @@ impl ServoParser { } } -pub struct FragmentParsingResult { - inner: NodeSiblingIterator, +struct FragmentParsingResult<I> + where I: Iterator<Item=Root<Node>> +{ + inner: I, } -impl Iterator for FragmentParsingResult { +impl<I> Iterator for FragmentParsingResult<I> + where I: Iterator<Item=Root<Node>> +{ type Item = Root<Node>; fn next(&mut self) -> Option<Root<Node>> { |