From: Steve Hancock Date: Thu, 1 Feb 2024 23:51:13 +0000 (-0800) Subject: optimization to avoid regex X-Git-Tag: 20240202.01~15 X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=43ecedaf93fc6914b5306c4bf20140d914c2fe6f;p=perltidy.git optimization to avoid regex --- 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