Branch Coverage

blib/lib/Array/PatternMatcher.pm
Criterion Covered Total %
branch 56 66 84.8


line true false branch
369 25 1 if (not $binding) { }
0 1 elsif ($binding eq $input) { }
386 5 4 defined $end ? :
398 1 3 if (ref $pat eq 'ARRAY')
407 52 54 if (ref $p) { }
420 3 1 unless defined $start
426 3 1 if (atomic($pattern) and not is_variable($pattern)) { }
1 0 elsif ($start < @$input) { }
429 3 5 if ($pattern eq $$input[$i])
444 28 66 if (@$aref == 1)
448 66 0 if (@$aref > 1)
461 0 4 if (not defined $pat) { }
468 0 4 if (not defined $pos) { }
474 1 3 !$pos ? :
477 4 0 if ($b2) { }
518 0 2 if (not defined $new_bindings && defined &$pred($input)) { }
524 1 1 if ($result) { }
538 0 1 if ($o) { }
553 1 6 if (not defined $pattern or scalar @$pattern == 0)
557 5 1 if (not defined $new_bindings) { }
570 0 4 unless (defined $bindings)
571 1 3 unless (defined $meta_pattern and @$meta_pattern)
638 45 29 if (is_array_ref($term_aref)) { }
652 52 29 $a ? :
655 71 10 unless $a and $a2
663 7 3 if ($s) { }
680 6 103 unless (defined $bindings)
681 22 81 if (is_variable($pattern))
682 7 74 if (my $segment_matcher = is_segment_pattern($pattern))
686 5 69 if (my $single_matcher = is_single_pattern($pattern))
687 2 3 if ($$pattern[0] eq 'AND?' or $$pattern[0] eq 'OR?')
695 39 0 if (ref $pattern eq 'ARRAY' and ref $input eq 'ARRAY' and @$pattern and @$input)
707 25 5 if ($pattern eq $input)