summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordakkar <dakkar@thenautilus.net>2016-08-29 16:25:41 +0100
committerdakkar <dakkar@thenautilus.net>2016-08-29 16:25:41 +0100
commitff80b47a696245ff76666b4b43d7c530d8f2fad0 (patch)
tree174cde6bf631003e7728c91b8d373cd06dee6cd1
parentprepare for dzil (diff)
downloadPPIx-XPath-ff80b47a696245ff76666b4b43d7c530d8f2fad0.tar.gz
PPIx-XPath-ff80b47a696245ff76666b4b43d7c530d8f2fad0.tar.bz2
PPIx-XPath-ff80b47a696245ff76666b4b43d7c530d8f2fad0.zip
narrow the scope of a "no strict"
-rw-r--r--lib/PPIx/XPath.pm23
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};
}