|  line  | 
 true  | 
 false  | 
 branch  | 
 
| 
14
 | 
 1  | 
 73  | 
 if $symcache{join $;, $pkg, $ref}  | 
 
| 
19
 | 
 6  | 
 5357  | 
 if (ref $sym and $sym == $ref)  | 
 
| 
23
 | 
 11  | 
 5346  | 
 unless ref \$sym eq 'GLOB'  | 
 
| 
25
 | 
 33  | 
 5313  | 
 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        ]  | 
 
| 
 | 
 0  | 
 1  | 
 unless $was_arrayref  | 
 
| 
 | 
 1  | 
 0  | 
 $type eq 'HASH' ? :  | 
 
| 
 | 
 0  | 
 1  | 
 $type eq 'ARRAY' ? :  | 
 
| 
 | 
 0  | 
 1  | 
 $type eq 'SCALAR' ? :  | 
 
| 
 | 
 0  | 
 1  | 
 unless $was_arrayref  | 
 
| 
 | 
 0  | 
 0  | 
 $type eq 'HASH' ? :  | 
 
| 
 | 
 1  | 
 0  | 
 $type eq 'ARRAY' ? :  | 
 
| 
 | 
 0  | 
 1  | 
 $type eq 'SCALAR' ? :  | 
 
| 
 | 
 1  | 
 0  | 
 unless $was_arrayref  | 
 
| 
 | 
 0  | 
 0  | 
 $type eq 'HASH' ? :  | 
 
| 
 | 
 0  | 
 0  | 
 $type eq 'ARRAY' ? :  | 
 
| 
 | 
 1  | 
 0  | 
 $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()  |