Branch Coverage

blib/lib/Regexp/Parser/Handlers.pm
Criterion Covered Total %
branch 200 304 65.7


line true false branch
29 0 0 $plus ? :
0 0 $plus ? :
34 0 0 $plus ? :
0 0 $plus ? :
39 0 0 $plus ? :
0 0 $plus ? :
45 6 4 if $cc
51 4 4 if $cc
57 6 4 if $cc
63 4 4 if $cc
69 4 4 if $cc
75 4 4 if $cc
82 0 20 &Rf & $S->FLAG_s ? :
2 20 &Rf & $S->FLAG_m ? :
92 0 8 if $cc
93 0 8 if $cc
100 0 8 if $cc
101 0 8 if $cc
108 6 8 if $cc
115 0 0 if $cc
116 0 0 if $cc
125 0 8 if $cc
132 4 8 if $cc
139 4 14 if $cc
146 0 4 if $cc
147 0 4 if $cc
154 0 21 if ($cc)
160 16 5 if (${&Rx;} =~ / \G \{ /cgx)
162 0 16 if (${&Rx;} =~ / \G ([a-zA-Z_]\w*) \} /cgx)
167 16 0 if (${&Rx;} =~ / \G (-?\d+) \} /cgx)
170 8 8 if ($num < 0) { }
171 4 4 &SIZE_ONLY ? :
172 1 7 if not &SIZE_ONLY and $abs < 1
176 1 7 if not &SIZE_ONLY and $abs > $S->{'maxpar'}
184 4 1 if (${&Rx;} =~ / \G (\d+) /cgx)
186 0 4 if not &SIZE_ONLY and $num > $S->{'maxpar'}
196 0 6 unless ${&Rx;} =~ / \G \{ /cgx
197 0 6 unless ${&Rx;} =~ / \G ([^\}]*) \} /cgx
200 0 6 if $cc
207 0 4 unless ${&Rx;} =~ / \G (.) /cgsx
210 4 0 if ($name eq "{")
211 0 4 unless ${&Rx;} =~ / \G ([^\}]*) \} /cgx
215 0 4 if $cc
222 0 4 unless ${&Rx;} =~ / \G (.) /cgsx
225 4 0 if ($name eq "{")
226 0 4 unless ${&Rx;} =~ / \G ([^\}]*) \} /cgx
230 0 4 if $cc
237 4 4 if $cc
244 4 12 if $cc
251 4 4 if $cc
258 8 10 if $cc
265 0 4 if $cc
266 0 4 if $cc
277 12 4 if ($num eq '{') { }
278 0 12 unless ${&Rx;} =~ / \G ( [^\}]* ) \} /cgx
288 12 4 $brace ? :
289 8 8 if $cc
296 0 14 &Rf & $S->FLAG_s ? :
0 14 &Rf & $S->FLAG_m ? :
306 0 4 if $cc
307 0 4 if $cc
314 0 4 if $cc
315 0 4 if $cc
401 556 2264 unless ${&Rx;} =~ / \G (.) /cgsx
405 1339 925 if $S->can($c)
429 28 0 if (${&Rx;} =~ / \G (\d+) (,?) (\d*) \} /cgx)
431 6 22 unless $range
433 0 28 if length $max and $min > $max
442 24 156 if ${&Rx;} =~ / \G \? /cgx
443 16 140 if ${&Rx;} =~ / \G \+ /cgx
459 371 0 if (${&Rx;} =~ / \G (.) /cgsx)
461 245 126 if $S->can($n)
466 66 60 &SIZE_ONLY ? :
474 2 16 &Rf & $S->FLAG_s ? :
485 311 0 if (${&Rx;} =~ / \G (.) /cgsx)
488 285 26 if $S->can($c)
490 16 10 if ($n =~ /\d/)
495 8 8 if (not &SIZE_ONLY || $cc and $n != 0)
497 0 8 if ($v > 9 and $v > $S->{'maxpar'}) { }
0 8 elsif ($v > $S->{'maxpar'}) { }
509 0 10 if $n =~ /[a-zA-Z]/
524 0 78 if (${&Rx;} =~ / \G ([:.=]) .*? \1 ] /cgx)
535 78 0 unless ${&Rx;} =~ / \G ] /cgx
542 78 147 if ${&Rx;} =~ / \G (?= ] | \z ) /cgx
548 84 79 if (${&Rx;} =~ / \G ( \\ ) /cgsx) { }
14 65 elsif (${&Rx;} =~ / \G \[ ([.=:]) (\^?) (.*?) \1 \] /cgsx) { }
65 0 elsif (${&Rx;} =~ / \G (.) /cgsx) { }
555 14 0 if ($S->can($posix)) { }
562 147 16 if ($ret == \$lhs) { }
16 0 elsif ($ret == \$rhs) { }
563 16 131 if (${&Rx;} =~ / \G (?= - (?! ] | \z ) ) /cgx)
564 0 16 if ($lhs->visual =~ /^(?:\[[:.=]|\\[dDsSwWpP])/)
576 0 16 if ($rhs->visual =~ /^(?:\[[:.=]|\\[dDsSwWpP])/) { }
0 16 elsif (ord $lhs->data > ord $rhs->data) { }
590 76 71 if &SIZE_ONLY
597 1 77 unless ${&Rx;} =~ / \G ] /cgx
612 2 351 unless ${&Rx;} =~ / \G \) /cgx
622 245 0 if (${&Rx;} =~ / \G (.) /cgsx) { }
624 128 117 if $S->can($n)
633 12 105 if (${&Rx;} =~ / \G \^ /cgx)
648 63 0 if (my $f = $S->can("FLAG_$_"))
649 63 0 if my $v = $S->$f(1)
657 105 12 unless ($caret)
658 18 87 if $off =~ s/^-//
662 18 0 if (my $f = $S->can("FLAG_$_"))
663 18 0 if my $v = $S->$f(0)
672 117 0 if (${&Rx;} =~ / \G ([:)]) /cgx)
673 96 21 $1 eq ':' ? :
674 96 21 if ($type eq "group")
678 12 105 if ($caret)
683 12 105 $caret ? :
696 0 0 unless ${&Rx;} =~ / \G \) /cgx
733 0 0 if (${&Rx;} =~ / \G (.) /cgsx)
735 0 0 if $S->can($n)
768 10 0 if (${&Rx;} =~ / \G ($nest_eval) \} \) /cgx)
780 4 0 if (${&Rx;} =~ / \G (.) /cgsx)
782 4 0 if $S->can($n)
791 4 0 if (${&Rx;} =~ / \G ($nest_logical) \} \) /cgx)
803 0 0 if (${&Rx;} =~ / \G (.) /cgsx)
805 0 0 if $S->can($n)
823 62 0 if (${&Rx;} =~ / \G (.) /cgsx)
825 0 62 if $S->can($n)
841 62 0 if (${&Rx;} =~ / \G (.) /cgsx)
843 49 13 if $S->can($n)
847 8 5 if (${&Rx;} =~ / \G ( [1-9]\d* ) /cgx)
849 2 6 unless ${&Rx;} =~ / \G \) /cgx
861 42 127 unless ${&Rx;} =~ / \G ([^|]) /cgsx
865 47 80 if $S->can($c)
872 2 41 unless ${&Rx;} =~ / \G \| /cgx
880 42 1 unless ${&Rx;} =~ / \G \| /cgx
890 37 12 if (${&Rx;} =~ / \G ( (?:
892 37 0 if $S->can($n)
906 0 6 if $cc
907 0 6 if $cc
914 0 8 if $cc
915 0 8 if $cc
922 2 8 if $cc
929 2 4 if $cc
936 2 4 if $cc
943 0 4 if $cc
951 0 8 if ($cc)
956 6 2 if (${&Rx;} =~ / \G < ([^>]+) > /cgx) { }
2 0 elsif (${&Rx;} =~ / \G ' ([^']+) ' /cgx) { }
973 12 18 if (${&Rx;} =~ / \G ([!=]) /cgsx)
975 12 0 if $S->can($n)
979 18 0 if (${&Rx;} =~ / \G ([A-Za-z_]\w*) > /cgx)
982 9 9 &SIZE_ONLY ? :
984 9 9 unless &SIZE_ONLY
995 0 0 if (${&Rx;} =~ / \G ([A-Za-z_]\w*) ' /cgx)
998 0 0 &SIZE_ONLY ? :
1000 0 0 unless &SIZE_ONLY
1011 0 0 if ${&Rx;} =~ / \G \+ /cgx