| line |
true |
false |
branch |
|
13
|
0 |
0 |
if $Tie::InSecureHash::strict and $Tie::InSecureHash::fast |
|
40
|
308 |
156 |
if ($key =~ /\A([\w:]*)::((_{0,2})[^:]+)\Z/) { } |
|
|
21 |
135 |
elsif ($key =~ /\A(__[^:]+)\Z/) { } |
|
|
135 |
0 |
elsif ($key =~ /\A((_?)[^:]+)\Z/) { } |
|
43
|
18 |
290 |
unless ($classname) |
|
48
|
108 |
200 |
if ($mode eq '__') { } |
|
|
96 |
104 |
elsif ($mode eq '_') { } |
|
50
|
99 |
9 |
if (exists $$self{'fullkeys'}{$key}) { } |
|
55
|
0 |
9 |
if ($delete) { } |
|
63
|
49 |
259 |
unless (exists $$self{'fullkeys'}{$key}) |
|
65
|
2 |
47 |
if ($delete) { } |
|
81
|
11 |
10 |
unless (exists $$self{'fullkeys'}{"${caller}::$key"}) |
|
85
|
10 |
11 |
if (exists $$self{'fullkeys'}{$key}) |
|
95
|
26 |
109 |
if (exists $$self{'fullkeys'}{$fullkey}) { } |
|
101
|
86 |
23 |
unless $$self{'keylist'}{$key} |
|
104
|
22 |
87 |
if (@classes) { } |
|
118
|
3 |
461 |
if ($delete) |
|
132
|
1 |
0 |
unless $Tie::InSecureHash::fast |
|
135
|
0 |
1 |
if (@_) |
|
141
|
0 |
0 |
if $ancestor eq $blessclass |
|
146
|
0 |
0 |
$key =~ /::/ ? : |
|
147
|
0 |
0 |
if ($Tie::InSecureHash::fast) { } |
|
155
|
0 |
0 |
if $key =~ /\A__/ |
|
170
|
0 |
0 |
unless $self |
|
188
|
0 |
0 |
if (eval {
do {
_access($self, $shortkey, $caller, $file);
1
}
}) { } |
|
|
0 |
0 |
elsif ($@ =~ /\AAmbiguous key/) { } |
|
203
|
0 |
0 |
if ($shortkey =~ /\A__/ and $@ =~ /file/) { } |
|
|
0 |
0 |
elsif ($shortkey =~ /\A__/) { } |
|
218
|
0 |
0 |
if (defined $val) { } |
|
221
|
0 |
0 |
if $explanation |
|
259
|
0 |
1 |
if ($Tie::InSecureHash::strict) { } |
|
|
0 |
1 |
elsif ($Tie::InSecureHash::fast) { } |
|
261
|
0 |
0 |
unless (caller 1)[3] =~ /\A(.*?)::([^:]*)\Z/ and $2 eq 'new' and $1->isa('Tie::SecureHash') |
|
279
|
205 |
0 |
if $entry |
|
287
|
54 |
0 |
if $entry |
|
305
|
0 |
2 |
if @inaccessibles |
|
314
|
50 |
0 |
eval {
do {
_access($self, $key, @context);
1
}
} ? : |
|
331
|
96 |
0 |
if eval {
do {
_access($self, $key, @context)
}
} |