Branch Coverage

blib/lib/Pegex/Pegex/AST.pm
Criterion Covered Total %
branch 33 98 33.6


line true false branch
32 0 0 if (defined $old) { }
33 0 0 if (ref $old) { }
51 0 33 if $name eq 'TOP'
67 0 40 unless @$list
68 30 10 if @$list == 1
75 0 37 unless @$list
76 34 3 if @$list == 1
84 0 343 unless my $ref = ref $it
85 101 242 if ($ref eq 'HASH') { }
242 0 elsif ($ref eq 'ARRAY') { }
101 0 61 if @$sep
111 7 30 if (my $regex = $self->atoms->{$ref})
143 0 0 $got eq '+' ? :
150 0 18 if (@$got == 2)
156 19 25 if (ref $_) { }
158 3 16 if (defined($part = $_->{'.rgx'})) { }
16 0 elsif (defined($part = $_->{'.ref'})) { }
175 0 18 if $modifier
182 0 1 if ($got =~ /^\~{1,2}$/) { }
1 0 elsif ($got =~ /^\-{1,2}$/) { }
0 0 elsif ($got eq '+') { }
204 40 1 unless $modifier
205 0 1 if ($modifier eq '=') { }
1 0 elsif ($modifier eq '!') { }
0 0 elsif ($modifier eq '.') { }
0 0 elsif ($modifier eq '+') { }
0 0 elsif ($modifier eq '-') { }
227 39 2 unless $quantity
228 1 1 if ($quantity eq '?') { }
0 1 elsif ($quantity eq '*') { }
1 0 elsif ($quantity eq '+') { }
0 0 elsif ($quantity =~ /^(\d+)$/) { }
0 0 elsif ($quantity =~ /^(\d+)-(\d+)$/) { }
0 0 elsif ($quantity =~ /^(\d+)\+$/) { }
256 0 0 if (not defined $rule->{'+max'} || defined $rule->{'+min'}) { }
0 0 elsif (defined $rule->{'+max'} and defined $rule->{'+min'}) { }
0 0 elsif (not defined $rule->{'+max'}) { }
257 0 0 if $extra
263 0 0 if $min > 0
264 0 0 if $max > 0
296 0 0 if ($rule->{'+min'} == 0) { }
0 0 elsif ($rule->{'+min'} == 1) { }
305 0 0 if $min > 0
310 0 0 if ($rule->{'+max'} == 1) { }
316 0 0 if ($extra)
325 0 0 if ($extra)
334 0 0 ref $v ? :
335 0 0 ref $_ ? :
0 0 ref $o eq 'HASH' ? :