From 43ecedaf93fc6914b5306c4bf20140d914c2fe6f Mon Sep 17 00:00:00 2001 From: Steve Hancock Date: Thu, 1 Feb 2024 15:51:13 -0800 Subject: [PATCH] optimization to avoid regex --- lib/Perl/Tidy/Formatter.pm | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/lib/Perl/Tidy/Formatter.pm b/lib/Perl/Tidy/Formatter.pm index d6f9ba39..74140f30 100644 --- a/lib/Perl/Tidy/Formatter.pm +++ b/lib/Perl/Tidy/Formatter.pm @@ -3929,10 +3929,16 @@ EOM my $tokenr_leading_ch = substr( $tokenr, 0, 1 ); my $tokenr_leading_ch2 = substr( $tokenr, 0, 2 ); - my $tokenr_is_bareword = $tokenr =~ /^[^\d\W]/; my $tokenr_is_open_paren = $tokenr eq '('; my $token_joined = $tokenl . $tokenr; my $tokenl_is_dash = $tokenl eq '-'; + my $tokenr_is_bareword = ord($tokenr_leading_ch) > ORD_PRINTABLE_MAX + + # always correct but slow + ? $tokenr =~ /^[^\d\W]/ + + # fast but ascii only + : ( $tokenr_leading_ch =~ tr/a-zA-Z_/a-zA-Z_/ ); #------------------- # Must do full check -- 2.39.5