use omena_syntax::SyntaxKind;
pub(super) fn static_scss_identifier_char(ch: char) -> bool {
ch.is_ascii_alphanumeric() || matches!(ch, '_' | '-')
}
pub(super) fn static_scss_use_rule_semicolon(
tokens: &[omena_parser::LexedToken],
at_use_index: usize,
) -> Option<usize> {
let mut index = at_use_index + 1;
while index < tokens.len() {
match tokens[index].kind {
SyntaxKind::Semicolon => return Some(index),
SyntaxKind::LeftBrace | SyntaxKind::RightBrace => return None,
_ => index += 1,
}
}
None
}
pub(super) fn static_scss_module_rule_source_name(
tokens: &[omena_parser::LexedToken],
start_index: usize,
end_index: usize,
) -> Option<String> {
tokens[start_index..end_index]
.iter()
.find(|token| matches!(token.kind, SyntaxKind::String | SyntaxKind::Url))
.map(|token| token.text.trim_matches('"').trim_matches('\'').to_string())
}