From 3d800b12e831eeb6700cf58d0a90e26a4208a879 Mon Sep 17 00:00:00 2001 From: Delyan Angelov Date: Fri, 29 Oct 2021 16:18:34 +0300 Subject: [PATCH] scanner: small optimisation of the ident_name hot loop --- vlib/v/scanner/scanner.v | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/vlib/v/scanner/scanner.v b/vlib/v/scanner/scanner.v index 14f43f8a90..c8ad180e48 100644 --- a/vlib/v/scanner/scanner.v +++ b/vlib/v/scanner/scanner.v @@ -222,10 +222,11 @@ fn (mut s Scanner) ident_name() string { s.pos++ for s.pos < s.text.len { c := s.text[s.pos] - if !(util.is_name_char(c) || c.is_digit()) { - break + if (c >= `a` && c <= `z`) || (c >= `A` && c <= `Z`) || (c >= `0` && c <= `9`) || c == `_` { + s.pos++ + continue } - s.pos++ + break } name := s.text[start..s.pos] s.pos--