diff options
author | dakkar <dakkar@thenautilus.net> | 2016-08-29 16:25:41 +0100 |
---|---|---|
committer | dakkar <dakkar@thenautilus.net> | 2016-08-29 16:25:41 +0100 |
commit | ff80b47a696245ff76666b4b43d7c530d8f2fad0 (patch) | |
tree | 174cde6bf631003e7728c91b8d373cd06dee6cd1 /lib/PPIx | |
parent | prepare for dzil (diff) | |
download | PPIx-XPath-ff80b47a696245ff76666b4b43d7c530d8f2fad0.tar.gz PPIx-XPath-ff80b47a696245ff76666b4b43d7c530d8f2fad0.tar.bz2 PPIx-XPath-ff80b47a696245ff76666b4b43d7c530d8f2fad0.zip |
narrow the scope of a "no strict"
Diffstat (limited to 'lib/PPIx')
-rw-r--r-- | lib/PPIx/XPath.pm | 23 |
1 files changed, 13 insertions, 10 deletions
diff --git a/lib/PPIx/XPath.pm b/lib/PPIx/XPath.pm index 0873b07..05e8743 100644 --- a/lib/PPIx/XPath.pm +++ b/lib/PPIx/XPath.pm @@ -34,27 +34,30 @@ sub new { # this collides with the axis specification of proper XPath. # Here we change the "old-style" node names into the new names { -my $legacy_names_rx;my %new_name_for; -sub clean_xpath_expr { - my (undef,$expr)=@_; + my $legacy_names_rx;my %new_name_for; + sub clean_xpath_expr { + my (undef,$expr)=@_; - $expr =~ s{$legacy_names_rx}{$new_name_for{$1}}ge; + $expr =~ s{$legacy_names_rx}{$new_name_for{$1}}ge; - return $expr; -} + return $expr; + } my @PPI_Packs; # taken from Devel::Symdump my @packages=('PPI'); while (my $pack=shift(@packages)) { - no strict 'refs'; - while (my ($key,$val)=each(%{*{"$pack\::"}})) { + my %pack_symbols = do { + no strict 'refs'; ## no critic(ProhibitNoStrict) + %{*{"$pack\::"}} + }; + while (my ($key,$val)=each(%pack_symbols)) { local *ENTRY=$val; if (defined $val && defined *ENTRY{HASH} && $key=~/::$/ && $key !~ /^::/ && $key ne 'main::' && $key ne '<none>::') { - my $p = "$pack\::$key";$p =~ s{::$}{}; #}{}; + my $p = "$pack\::$key";$p =~ s{::$}{}; push @packages,$p; $p =~ s{^PPI::}{}; @@ -68,7 +71,7 @@ sub clean_xpath_expr { } } $legacy_names_rx='\b('.join('|', - sort {length($b) <=> length($a)} @PPI_Packs + sort {length($b) <=> length($a)} @PPI_Packs ).')\b'; $legacy_names_rx=qr{$legacy_names_rx}; } |