use std::starts_with instead of iterator logic

This commit is contained in:
Folkert 2024-06-05 17:14:06 +02:00
parent 86726e03e3
commit 2cabe6546c
No known key found for this signature in database
GPG key ID: 1F17F6FFD112B97C
3 changed files with 5 additions and 8 deletions

View file

@ -255,7 +255,7 @@ impl AnalyzedDocument {
let is_module_completion = symbol_prefix
.split('.')
.nth_back(1) // second to last
.and_then(|str| str.chars().nth(0).map(|c| c.is_uppercase()))
.map(|str| str.starts_with(|c: char| c.is_uppercase()))
.unwrap_or(false);
if is_module_completion {
@ -279,10 +279,8 @@ impl AnalyzedDocument {
)
}
} else {
let is_module_or_type_completion = symbol_prefix
.chars()
.nth(0)
.map_or(false, |c| c.is_uppercase());
let is_module_or_type_completion =
symbol_prefix.starts_with(|c: char| c.is_uppercase());
if is_module_or_type_completion {
info!("Getting module completion...");

View file

@ -92,7 +92,7 @@ impl HasToken for ModuleName<'_> {
impl HasToken for &str {
fn token(&self) -> Token {
if self.chars().next().unwrap().is_uppercase() {
if self.starts_with(|c: char| c.is_uppercase()) {
Token::Type
} else {
Token::Variable