diff options
author | Nipun Garg <nipung271@gmail.com> | 2020-01-27 23:46:37 +0530 |
---|---|---|
committer | Martin Robinson <mrobinson@igalia.com> | 2023-06-22 13:45:20 +0200 |
commit | 41fe94244a7b6442fe2e06f114a45f122dda36c4 (patch) | |
tree | b216506041010c0df93ec1b74164a97e6e098849 /components/script/dom/servoparser/xml.rs | |
parent | 7aaad0aa7eac2d0c98ff17091013fda77359397d (diff) | |
download | servo-41fe94244a7b6442fe2e06f114a45f122dda36c4.tar.gz servo-41fe94244a7b6442fe2e06f114a45f122dda36c4.zip |
Refactor ServoParser Tokenizer to return TokenizerResult
Diffstat (limited to 'components/script/dom/servoparser/xml.rs')
-rw-r--r-- | components/script/dom/servoparser/xml.rs | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/components/script/dom/servoparser/xml.rs b/components/script/dom/servoparser/xml.rs index ac900d61ce0..9b609cd7ea4 100644 --- a/components/script/dom/servoparser/xml.rs +++ b/components/script/dom/servoparser/xml.rs @@ -10,6 +10,7 @@ use crate::dom::document::Document; use crate::dom::htmlscriptelement::HTMLScriptElement; use crate::dom::node::Node; use crate::dom::servoparser::{ParsingAlgorithm, Sink}; +use html5ever::tokenizer::TokenizerResult; use js::jsapi::JSTracer; use servo_url::ServoUrl; use xml5ever::buffer_queue::BufferQueue; @@ -39,12 +40,13 @@ impl Tokenizer { Tokenizer { inner: tok } } - pub fn feed(&mut self, input: &mut BufferQueue) -> Result<(), DomRoot<HTMLScriptElement>> { + #[must_use] + pub fn feed(&mut self, input: &mut BufferQueue) -> TokenizerResult<DomRoot<HTMLScriptElement>> { self.inner.run(input); - if let Some(script) = self.inner.sink.sink.script.take() { - return Err(script); + match self.inner.sink.sink.script.take() { + Some(script) => TokenizerResult::Script(script), + None => TokenizerResult::Done, } - Ok(()) } pub fn end(&mut self) { |