From b8d2191efd1dcffc16fd5dfc2e32498680ed8e4e Mon Sep 17 00:00:00 2001 From: fereidani Date: Tue, 23 Dec 2025 10:06:45 +0330 Subject: [PATCH] optimize eat_slash_or_comment using eat_past --- parser/src/lexer.rs | 23 ++++++++++------------- 1 file changed, 10 insertions(+), 13 deletions(-) diff --git a/parser/src/lexer.rs b/parser/src/lexer.rs index ed3b83aaa..0c05d3585 100644 --- a/parser/src/lexer.rs +++ b/parser/src/lexer.rs @@ -473,21 +473,18 @@ impl<'a> Lexer<'a> { Some(b'*') => { self.eat_and_assert(|b| b == b'*'); loop { - self.eat_while(|b| b != b'*'); - match self.peek() { - Some(b'*') => { - self.eat_and_assert(|b| b == b'*'); - match self.peek() { - Some(b'/') => { - self.eat_and_assert(|b| b == b'/'); - break; // End of block comment - } - None => break, - _ => {} + if self.eat_past(b'*') { + match self.peek() { + Some(b'/') => { + self.eat_and_assert(|b| b == b'/'); + break; // End of block comment } + None => break, + _ => {} } - None => break, - _ => unreachable!(), // We should not reach here + } else { + cold(); + break; } }