code housekeeping

This commit is contained in:
りき萌 2025-08-26 12:46:50 +02:00
parent e1b6578b2a
commit d3c3ff8e4e
10 changed files with 108 additions and 100 deletions

View file

@ -1,6 +1,6 @@
use std::ops::Range;
use super::compiled::{CompiledSyntax, CompiledTokenTypes, TokenId, TOKEN_ID_DEFAULT};
use super::compiled::{CompiledSyntax, CompiledTokenTypes, TOKEN_ID_DEFAULT, TokenId};
pub struct Token {
pub id: TokenId,
@ -71,10 +71,10 @@ impl CompiledSyntax {
}
for token in &mut tokens {
if let Some(keyword) = self.keywords.get(&text[token.range.clone()]) {
if keyword.only_replaces.is_none() || Some(token.id) == keyword.only_replaces {
token.id = keyword.into;
}
if let Some(keyword) = self.keywords.get(&text[token.range.clone()])
&& (keyword.only_replaces.is_none() || Some(token.id) == keyword.only_replaces)
{
token.id = keyword.into;
}
}
@ -87,11 +87,11 @@ fn push_token(tokens: &mut Vec<Token>, id: TokenId, range: Range<usize>) {
return;
}
if let Some(previous_token) = tokens.last_mut() {
if previous_token.id == id {
previous_token.range.end = range.end;
return;
}
if let Some(previous_token) = tokens.last_mut()
&& previous_token.id == id
{
previous_token.range.end = range.end;
return;
}
tokens.push(Token { id, range });
}