Condition Coverage

blib/lib/String/Interpolate.pm
Criterion Covered Total %
condition 20 59 33.9


and 3 conditions

line !l l&&!r l&&r condition
424 3 0 0 ref $_ and $_->isa('Safe::Hole')
3 0 0 ref $_ and $_->isa('Safe')
428 1 0 1 not $seenmap++ and $$map
1 1 0 not $seenmap++ and $$map and @$$map
462 3 0 0 $$$self{'implicit_safe'} and not $safe
469 0 0 3 defined $string and not $code
478 0 3 0 $pkg and $pkg eq 'Safe'
485 3 0 0 $safe and not $$$self{'unsafe_underscore'}
489 3 0 0 $safe && !$$$self{'unsafe_symbols'}
523 1 1 0 defined $p and not $p
1 0 1 $p and $p ne '$'
924 0 0 0 defined $un and not $un

or 2 conditions

line l !l condition
474 1 0 join($dlm, @$pos) =~ /^@{[join($dlm, ('(.*)') x @$pos)];}$/ or die 'Unexpected pattern match failure initialising $1 et al'

or 3 conditions

line l !l&&r !l&&!r condition
424 0 0 3 ref $_ eq 'GLOB' or ref \$_ eq 'GLOB'
469 3 0 0 defined $string and not $code or $pos
511 0 0 0 $$$self{'tmppkg'} ||= 'String::Interpolate::' . ++$pkgcount
4 0 0 $pkg ||= ($$$self{'tmppkg'} ||= 'String::Interpolate::' . ++$pkgcount)
609 2 0 0 $pkg ||= $$$self{'defpgk'}
866 0 0 0 $safe_hole or not defined $safe_hole
931 0 0 0 $preset_pragma{$pragma} || $pragma