| line | % | coverage | branch |
| 187 | 100 | T | F | unless defined $regex |
| 190 | 100 | T | F | ref $regex eq 'Regexp' ? : |
| 220 | 100 | T | F | if (defined $str and $str =~ /^$regex$/u) |
| 225 | 0 | T | F | if ($ENV{'DEBUG_REGEX_GEN'} and $@) |
| 232 | 100 | T | F | if $str =~ /^$regex$/u |
| 246 | 50 | T | F | if ($regex_str =~ /\\d/u or $regex_str =~ /\[0-9\]/u or $regex_str =~ /\[\^[^\]]*[A-Za-z]/u) { } |
| 50 | T | F | elsif ($regex_str =~ /\[A-Z\]/u or $regex_str =~ /\[A-Z[^\]]*\]/u) { } |
| 50 | T | F | elsif ($regex_str =~ /\[a-z\]/u or $regex_str =~ /\[a-z[^\]]*\]/u) { } |
| 50 | T | F | elsif ($regex_str =~ /\\w/u or $regex_str =~ /\[a-zA-Z0-9_\]/u) { } |
| 316 | 100 | T | F | unless defined $count and $count > 0 |
| 320 | 100 | T | F | if ($unique) { } |
| 332 | 100 | T | F | if (keys %seen < $count) |
| 368 | 100 | T | F | unless defined $seed |
| 398 | 100 | T | F | if ($info->{'complexity'} eq "very_complex") |
| 411 | 50 | T | F | if ($info->{'features'}{'has_backreferences'} and $pattern =~ /(\(\w+\)).*\\\d+/u) |
| 425 | 100 | T | F | if ($pattern =~ /\{(\d+),(\d+)\}/u) |
| 427 | 100 | T | F | if ($max - $min > 10) |
| 443 | 100 | T | F | if ($info->{'features'}{'has_alternation'}) |
| 445 | 100 | T | F | if (@alts > 10) |
| 458 | 50 | T | F | if ($pattern =~ /\(([a-zA-Z])\|([a-zA-Z])\|([a-zA-Z])\)/u) |
| 474 | 100 | T | F | if ($info->{'features'}{'has_lookahead'} or $info->{'features'}{'has_lookbehind'}) |
| 479 | 50 | T | F | if ($simpler ne $pattern) |
| 492 | 100 | T | F | if ($info->{'features'}{'has_unicode'} and $pattern =~ /\\p\{L\}/u) |
| 506 | 50 | T | F | if ($pattern =~ /([a-zA-Z]{20,})/u) |
| 536 | 100 | T | F | unless defined $string |
| 563 | 100 | T | F | if $self->{'_pattern_info_cache'} |
| 571 | 100 | T | F | $pattern =~ /\|/u ? : |
| 100 | T | F | $pattern =~ /(\\[1-9]|\\k<)/u ? : |
| 100 | T | F | $pattern =~ /\\p\{/u ? : |
| 100 | T | F | $pattern =~ /\(\?[=!]/u ? : |
| 100 | T | F | $pattern =~ /\(\?<[=!]/u ? : |
| 100 | T | F | $pattern =~ /\(\?</u ? : |
| 100 | T | F | $pattern =~ /(?:[+*?]\+|\{\d+(?:,\d*)?\}\+)/u ? : |
| 609 | 100 | T | F | if (defined $1 or defined $2 and $2) { } |
| 100 | T | F | elsif (defined $3) { } |
| 614 | 100 | T | F | if ($last_was_atom) { } |
| 617 | 100 | T | F | defined $4 ? : |
| 622 | 100 | T | F | defined $4 ? : |
| 636 | 50 | T | F | if $min < 0 |
| 637 | 50 | T | F | if $max < $min |
| 651 | 100 | T | F | if $features->{'has_alternation'} |
| 652 | 100 | T | F | if $features->{'has_backreferences'} |
| 653 | 100 | T | F | if $features->{'has_unicode'} |
| 654 | 100 | T | F | if $features->{'has_lookahead'} |
| 655 | 100 | T | F | if $features->{'has_lookbehind'} |
| 656 | 100 | T | F | if $features->{'has_named_groups'} |
| 657 | 100 | T | F | if $features->{'has_possessive'} |
| 660 | 100 | T | F | if $score < 3 |
| 661 | 100 | T | F | if $score < 7 |
| 662 | 100 | T | F | if $score < 12 |
| 695 | 100 | T | F | if ($char eq '\\') { } |
| 100 | T | F | elsif ($char eq '[') { } |
| 100 | T | F | elsif ($char eq '(') { } |
| 100 | T | F | elsif ($char eq '.') { } |
| 50 | T | F | elsif ($char eq '|') { } |
| 100 | T | F | elsif ($char =~ /[+*?]/u or $char eq '{') { } |
| 100 | T | F | elsif ($char =~ /[\w ]/u) { } |
| 700 | 100 | T | F | if ($next =~ /[1-9]/u) { } |
| 100 | T | F | elsif ($next eq 'k' and substr($pattern, $i + 1, 1) eq '<') { } |
| 100 | T | F | elsif ($next eq 'p' and substr($pattern, $i + 1, 1) eq '{') { } |
| 100 | T | F | elsif ($next eq 'd') { } |
| 100 | T | F | elsif ($next eq 'w') { } |
| 100 | T | F | elsif ($next eq 's') { } |
| 100 | T | F | elsif ($next eq 'D') { } |
| 100 | T | F | elsif ($next eq 'W') { } |
| 100 | T | F | elsif ($next eq 't') { } |
| 100 | T | F | elsif ($next eq 'n') { } |
| 50 | T | F | elsif ($next eq 'r') { } |
| 703 | 50 | T | F | if (exists $self->{'backrefs'}{$ref_num}) { } |
| 712 | 50 | T | F | if (exists $self->{'named_refs'}{$name}) { } |
| 769 | 50 | T | F | if $end == -1 |
| 780 | 50 | T | F | if $end == -1 |
| 791 | 100 | T | F | if ($group_content =~ /^\?:/u) { } |
| 100 | T | F | elsif ($group_content =~ /^\?<([^>]+)>/u) { } |
| 100 | T | F | elsif ($group_content =~ /^\?=/u) { } |
| 100 | T | F | elsif ($group_content =~ /^\?!/u) { } |
| 100 | T | F | elsif ($group_content =~ /^\?<=/u) { } |
| 100 | T | F | elsif ($group_content =~ /^\?<!/u) { } |
| 824 | 100 | T | F | if ($is_lookahead) { } |
| 100 | T | F | elsif ($is_lookbehind) { } |
| 827 | 100 | T | F | unless ($is_negative) |
| 843 | 100 | T | F | if ($group_content =~ /\|/u) { } |
| 850 | 100 | T | F | if ($is_capturing) |
| 854 | 100 | T | F | if (defined $group_name) |
| 901 | 100 | T | F | if ($check_possessive and $pos + 2 < length $pattern) |
| 903 | 100 | T | F | if ($next =~ /[+*?]/u || $next eq '}' and $after_next eq "+") |
| 908 | 100 | T | F | if ($next eq '{') { } |
| 100 | T | F | elsif ($next eq '+') { } |
| 100 | T | F | elsif ($next eq '*') { } |
| 100 | T | F | elsif ($next eq '?') { } |
| 910 | 50 | T | F | if $end == -1 |
| 914 | 100 | T | F | if ($check_possessive and $end + 1 < length $pattern and substr($pattern, $end + 1, 1) eq "+") |
| 920 | 100 | T | F | if ($quant =~ /^(\d+)$/u) { } |
| 50 | T | F | elsif ($quant =~ /^(\d+),(\d+)$/u) { } |
| 0 | T | F | elsif ($quant =~ /^(\d+),$/u) { } |
| 936 | 100 | T | F | if ($is_possessive) |
| 946 | 100 | T | F | if ($is_possessive) |
| 956 | 100 | T | F | if ($is_possessive) |
| 959 | 50 | T | F | rand() < 0.5 ? : |
| 976 | 100 | T | F | if ($char eq '(') { } |
| 100 | T | F | elsif ($char eq ')') { } |
| 100 | T | F | elsif ($char eq '|' and $depth == 0) { } |
| 989 | 50 | T | F | if length $current |
| 1002 | 100 | T | F | if ($char eq '[' and $i == $start || substr($pattern, $i - 1, 1) ne '\\') { } |
| 100 | T | F | elsif ($char eq ']' and substr($pattern, $i - 1, 1) ne '\\') { } |
| 1006 | 50 | T | F | if $depth == 0 |
| 1018 | 100 | T | F | $i > 0 ? : |
| 1020 | 100 | T | F | if ($char eq '(' and $prev ne '\\') { } |
| 100 | T | F | elsif ($char eq ')' and $prev ne '\\') { } |
| 1024 | 100 | T | F | if $depth == 0 |
| 1037 | 50 | T | F | if $ENV{'DEBUG_REGEX_GEN'} |
| 1041 | 100 | T | F | if (substr($class, 0, 1) eq "^") |
| 1051 | 50 | T | F | if $ENV{'DEBUG_REGEX_GEN'} |
| 1053 | 100 | T | F | if ($char eq '\\') { } |
| 100 | T | F | elsif ($i + 2 < length $class and substr($class, $i + 1, 1) eq '-') { } |
| 1056 | 50 | T | F | if $ENV{'DEBUG_REGEX_GEN'} |
| 1057 | 100 | T | F | if ($next eq 'd') { } |
| 100 | T | F | elsif ($next eq 'w') { } |
| 50 | T | F | elsif ($next eq 's') { } |
| 100 | T | F | elsif ($next eq 'p' and substr($class, $i + 1, 1) eq '{') { } |
| 1078 | 50 | T | F | if ($end_char eq '\\' or $end_char eq ']') { } |
| 50 | T | F | elsif (ord $end_char >= ord $char) { } |
| 1097 | 50 | T | F | if $ENV{'DEBUG_REGEX_GEN'} |
| 1099 | 100 | T | F | if ($negate) |
| 1104 | 50 | T | F | @chars ? : |
| 1110 | 50 | T | F | @chars ? : |
| 1117 | 100 | T | F | if ($prop eq 'L' or $prop eq 'Letter') { } |
| 100 | T | F | elsif ($prop eq 'N' or $prop eq 'Number') { } |
| 100 | T | F | elsif ($prop eq 'Lu' or $prop eq 'Uppercase_Letter') { } |
| 50 | T | F | elsif ($prop eq 'Ll' or $prop eq 'Lowercase_Letter') { } |
| 0 | T | F | elsif ($prop eq 'P' or $prop eq 'Punctuation') { } |
| 0 | T | F | elsif ($prop eq 'S' or $prop eq 'Symbol') { } |
| 0 | T | F | elsif ($prop eq 'Z' or $prop eq 'Separator') { } |
| 0 | T | F | elsif ($prop eq 'Nd' or $prop eq 'Decimal_Number') { } |