| line |
true |
false |
branch |
|
14
|
1 |
73 |
if $symcache{join $;, $pkg, $ref} |
|
19
|
6 |
4658 |
if (ref $sym and $sym == $ref) |
|
23
|
10 |
4648 |
unless ref \$sym eq 'GLOB' |
|
25
|
33 |
4615 |
if *{$sym;}{$type} and *{$sym;}{$type} == $ref |
|
60
|
0 |
5 |
unless $class eq 'Attribute::Handlers' |
|
63
|
1 |
0 |
if ($cmd =~ /^autotie((?:ref)?)$/) { } |
|
64
|
0 |
1 |
$1 ? : |
|
66
|
0 |
1 |
unless ref $mapping eq 'HASH' |
|
70
|
0 |
3 |
unless $attr =~ /$qual_id/ and $tieclass =~ /$qual_id/ and eval "use base q\000$tieclass\000; 1" |
|
73
|
0 |
3 |
if ($tieclass->isa('Exporter')) |
|
78
|
1 |
2 |
unless $attr =~ /::/ |
|
79
|
0 |
3 |
unless eval qq[\n\t sub $attr : ATTR(VAR) {\n\t\t\tmy (\$ref, \$data) = \@_[2,4];\n\t\t\tmy \$was_arrayref = ref \$data eq 'ARRAY';\n\t\t\t\$data = [ \$data ] unless \$was_arrayref;\n\t\t\tmy \$type = ref(\$ref)||"value (".(\$ref||"").")";\n\t\t\t (\$type eq 'SCALAR')? tie \$\$ref,'${tieclass}',$tiedata\n\t\t\t:(\$type eq 'ARRAY') ? tie \@\$ref,'${tieclass}',$tiedata\n\t\t\t:(\$type eq 'HASH') ? tie %\$ref,'${tieclass}',$tiedata\n\t\t\t: die "Can't autotie a \$type\n"\n\t } 1\n\t ] |
|
|
1 |
0 |
unless $was_arrayref |
|
|
0 |
0 |
$type eq 'HASH' ? : |
|
|
0 |
0 |
$type eq 'ARRAY' ? : |
|
|
1 |
0 |
$type eq 'SCALAR' ? : |
|
|
0 |
1 |
unless $was_arrayref |
|
|
0 |
0 |
$type eq 'HASH' ? : |
|
|
1 |
0 |
$type eq 'ARRAY' ? : |
|
|
0 |
1 |
$type eq 'SCALAR' ? : |
|
|
0 |
1 |
unless $was_arrayref |
|
|
1 |
0 |
$type eq 'HASH' ? : |
|
|
0 |
1 |
$type eq 'ARRAY' ? : |
|
|
0 |
1 |
$type eq 'SCALAR' ? : |
|
122
|
0 |
21 |
unless $lastattr{'ref'} |
|
123
|
0 |
21 |
unless my $sym = findsym(@lastattr{'pkg', 'ref'}) |
|
126
|
0 |
21 |
if $^W and not $name =~ /[A-Z]/ |
|
136
|
0 |
0 |
if $Attribute::Handlers::AUTOLOAD =~ /::DESTROY$/ |
|
138
|
0 |
0 |
unless $Attribute::Handlers::AUTOLOAD =~ /_ATTR_(.*?)_(.*)/ |
|
147
|
0 |
76 |
if &_delayed_name_resolution() |
|
151
|
0 |
77 |
unless my($attr, $data) = /^([a-z_]\w*)(?:[(](.*)[)])?$/is |
|
152
|
21 |
56 |
if ($attr eq 'ATTR') { } |
|
156
|
2 |
19 |
if $data =~ s/\s*,?\s*(BEGIN)\s*,?\s*// |
|
158
|
1 |
20 |
if $data =~ s/\s*,?\s*(INIT)\s*,?\s*// |
|
160
|
1 |
20 |
if $data =~ s/\s*,?\s*(END)\s*,?\s*// |
|
164
|
16 |
5 |
if $data =~ s/\s*,?\s*(CHECK)\s*,?\s*// or not keys %{$phase{$ref};} |
|
166
|
0 |
21 |
if keys %lastattr |
|
170
|
0 |
21 |
unless $validtype{$data} |
|
172
|
21 |
0 |
unless &_delayed_name_resolution() |
|
177
|
2 |
54 |
unless $handler |
|
182
|
124 |
92 |
if $global_phases{$gphase} <= $global_phase |
|
184
|
35 |
19 |
if ($global_phase != 0) { } |
|
191
|
1 |
34 |
if $phase{$handler}{'END'} |
|
199
|
2 |
74 |
if defined $_ |
|
214
|
128 |
53 |
unless $handlerphase->{$phase} |
|
219
|
0 |
34 |
$type eq 'CODE' ? : |
|
221
|
45 |
8 |
if (not $raw and defined $data) |
|
222
|
45 |
0 |
if ($data ne '') { } |
|
225
|
43 |
2 |
unless $@ |
|
230
|
19 |
34 |
ref $sym eq 'GLOB' ? : |
|
244
|
0 |
4 |
if &_delayed_name_resolution() |