Upgrade to logos 0.13

This commit is contained in:
Patrick Förster 2023-04-11 20:50:50 +02:00
parent c09e3bcbb8
commit eebfda7bf0
5 changed files with 20 additions and 15 deletions

View file

@ -7,7 +7,7 @@ edition.workspace = true
rust-version.workspace = true
[dependencies]
logos = "0.12.1"
logos = "0.13.0"
once_cell = "1.17.1"
regex = "1.7.3"
rowan = "0.15.11"

View file

@ -250,7 +250,7 @@ where
fn peek(&mut self) -> Option<(T, &'a str)> {
if self.token.is_none() {
let kind = self.lexer.next()?;
let kind = self.lexer.next()?.unwrap();
let text = self.lexer.slice();
self.token = Some((kind, text));
}
@ -274,7 +274,6 @@ enum RootToken {
Entry,
#[regex(r"[^@]+")]
#[error]
Junk,
}
@ -300,7 +299,7 @@ enum BodyToken {
#[regex(r"[^\s\(\)\{\}@,=]+")]
Name,
#[error]
#[token("@")]
Error,
}
@ -327,8 +326,7 @@ enum ValueToken {
#[regex(r"\d+", priority = 2)]
Integer,
#[regex(r#"[^\s"\{\},]+"#)]
#[error]
#[regex(r#"[^\s"\{\},#]+"#)]
Name,
}
@ -377,7 +375,6 @@ enum ContentToken {
CommandName,
#[regex(r#"[^\s"\{\}\\~,]+"#)]
#[error]
Word,
}

View file

@ -48,7 +48,7 @@ impl<'a> Lexer<'a> {
fn tokenize(input: &str) -> Vec<(Token, &str)> {
let mut lexer = Token::lexer(input);
std::iter::from_fn(move || {
let kind = lexer.next()?;
let kind = lexer.next()?.unwrap();
let text = lexer.slice();
Some((kind, text))
})

View file

@ -36,7 +36,6 @@ pub enum Token {
Eq,
#[regex(r"[^\s\\%\{\},\$\[\]\(\)=]+")]
#[error]
Word,
#[regex(r"\$\$?")]