mirror of
https://github.com/servo/servo.git
synced 2025-07-22 23:03:42 +01:00
Refactor ServoParser Tokenizer to return TokenizerResult
This commit is contained in:
parent
7aaad0aa7e
commit
41fe94244a
4 changed files with 22 additions and 14 deletions
|
@ -272,7 +272,8 @@ impl Tokenizer {
|
|||
tokenizer
|
||||
}
|
||||
|
||||
pub fn feed(&mut self, input: &mut BufferQueue) -> Result<(), DomRoot<HTMLScriptElement>> {
|
||||
#[must_use]
|
||||
pub fn feed(&mut self, input: &mut BufferQueue) -> TokenizerResult<DomRoot<HTMLScriptElement>> {
|
||||
let mut send_tendrils = VecDeque::new();
|
||||
while let Some(str) = input.pop_front() {
|
||||
send_tendrils.push_back(SendTendril::from(str));
|
||||
|
@ -296,7 +297,7 @@ impl Tokenizer {
|
|||
ToTokenizerMsg::TokenizerResultDone { updated_input } => {
|
||||
let buffer_queue = create_buffer_queue(updated_input);
|
||||
*input = buffer_queue;
|
||||
return Ok(());
|
||||
return TokenizerResult::Done;
|
||||
},
|
||||
ToTokenizerMsg::TokenizerResultScript {
|
||||
script,
|
||||
|
@ -305,7 +306,7 @@ impl Tokenizer {
|
|||
let buffer_queue = create_buffer_queue(updated_input);
|
||||
*input = buffer_queue;
|
||||
let script = self.get_node(&script.id);
|
||||
return Err(DomRoot::from_ref(script.downcast().unwrap()));
|
||||
return TokenizerResult::Script(DomRoot::from_ref(script.downcast().unwrap()));
|
||||
},
|
||||
ToTokenizerMsg::End => unreachable!(),
|
||||
};
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue