Branch Coverage

blib/lib/HOP/Parser.pm
Criterion Covered Total %
branch 50 78 64.1


line true false branch
175 14 2 unless defined $input
225 29 142 unless ref $wanted
228 41 656 if ref $input eq 'ARRAY'
229 64 633 unless (defined $input)
235 0 758 unless defined $wanted->[$i]
237 281 477 unless ($wanted->[$i] eq $next->[$i])
249 14 338 if &$is_node($tail) and not &$is_node($tail->[0])
302 2 2 ref $_[0] eq 'CODE' ? :
304 0 8 unless my $input = shift()
325 2 2 ref $_[0] eq 'CODE' ? :
327 0 8 unless my $input = shift()
329 4 4 if @ret
352 2 137 unless ref $_[0]
354 2 137 if @parsers == 0
355 2 135 if @parsers == 1
362 762 36 if defined $v
383 2 75 if @parsers == 0
384 0 75 if @parsers == 1
392 403 415 if ($@) { }
393 0 403 unless ref $@
423 4 8 unless defined $separator
427 12 0 $_[1] ? :
446 4 2 unless defined $separator
466 4 8 unless defined $separator
474 12 0 if (my $tail = shift())
500 4 2 unless defined $separator
539 394 0 if (my($value, $newinput) = &$parser($input)) { }
541 73 321 unless ref $value
674 12 0 if ($@)
675 12 0 ref $@ ? :
697 0 0 $result ? :
709 0 0 if 'HOP::Parser' ne caller
712 0 0 unless 'ARRAY' eq ref $fail
717 0 0 if ($position) { }
728 0 0 if defined $position
730 0 0 if ($type eq 'TOKEN') { }
0 0 elsif ($type eq 'End of input') { }
0 0 elsif ($type eq 'ALT') { }
737 0 0 $depth ? :