Branch Coverage

blib/lib/String/Interpolate.pm
Criterion Covered Total %
branch 47 144 32.6


line true false branch
113 0 0 unless ref $@
139 0 0 $dbgpkg{caller()} ? :
181 0 1 if (ref $class) { }
184 0 0 if $$$self{'tmppkg'}
185 0 0 if $$$self{'implicit_safe'}
222 0 0 unless ref $self
420 0 5 unless ref $self
424 0 5 if (ref $_ eq 'ARRAY') { }
2 3 elsif (ref $_ eq 'HASH') { }
0 3 elsif (ref $_ eq 'SCALAR') { }
0 3 elsif (ref $_ eq 'GLOB' or ref \$_ eq 'GLOB') { }
0 3 elsif (ref $_ and $_->isa('Safe::Hole')) { }
0 3 elsif (ref $_ and $_->isa('Safe')) { }
428 0 1 if (not $seenmap++ and $$map and @$$map)
445 0 0 unless defined $$$self{'trap'}
451 2 3 unless defined wantarray
462 0 3 if ($$$self{'implicit_safe'} and not $safe)
469 3 0 if (defined $string and not $code or $pos)
470 2 1 unless $pos
474 1 2 if $pos
478 0 3 if ($pkg and $pkg eq 'Safe')
483 0 3 if $safe
485 0 0 %_ ? :
0 3 if $safe and not $$$self{'unsafe_underscore'}
495 0 3 if ($$$self{'lexicals'})
503 0 0 unless $k =~ s/^([\@%\$])//
505 0 0 if ref $v eq 'GLOB'
515 1 7 if (ref $v eq 'HASH') { }
2 5 elsif (ref $v eq 'CODE') { }
1 4 elsif (ref $v eq 'ARRAY') { }
2 2 elsif (ref $v eq 'SCALAR') { }
516 0 1 if ($safe_symbols) { }
523 0 2 if (defined $p and not $p) { }
1 1 elsif ($p and $p ne '$') { }
548 0 1 if ($safe_symbols) { }
563 0 2 if ($safe_symbols) { }
576 0 2 if ($safe_symbols) { }
587 2 0 unless ($code)
588 0 2 unless (defined $string)
594 0 2 if ($safe) { }
612 0 2 if ($@)
613 0 0 if $$$self{'trap'}
621 0 2 if ($safe) { }
626 0 0 if ($@)
627 0 0 if $$$self{'trap'}
631 0 2 $$$self{'trap'} ? :
637 0 2 if $$$self{'lexicals'}
700 0 0 unless ref $self
702 0 0 defined $trap ? :
723 0 0 unless ref $self
725 0 0 defined $unsafe_underscore ? :
747 0 0 unless ref $self
749 0 0 defined $unsafe_symbols ? :
785 0 0 unless ref $self
787 0 0 defined $lexicals ? :
0 0 if ($$$self{'lexicals'} = defined $lexicals ? $lexicals : 1)
819 0 0 unless ref $self
821 0 0 if ref $pkg eq 'GLOB'
822 0 0 unless ($pkg) = $pkg =~ /^\*?(?:main::(?!$))*(.*?)(?:::)?$/
863 0 0 unless ref $self
865 0 0 unless (UNIVERSAL::isa($safe_hole, 'Safe::Hole'))
866 0 0 if ($safe_hole or not defined $safe_hole) { }
867 0 0 unless (eval { do { require Safe::Hole; 1 } })
871 0 0 $Safe::Hole::VERSION > 0.09 ? :
917 0 0 unless ref $self
921 0 0 if ($method) { }
924 0 0 if (defined $un and not $un)
944 0 1 if $$$self{'implicit_safe'}
945 0 1 if ($$$self{'tmppkg'})
971 0 4 unless $$$self{'map'}
1011 0 0 unless my $action = $$actions{shift()}
1016 0 0 unless $String::Interpolate::safe_hole