Branch Coverage

blib/lib/PPIx/Regexp/Token/Literal.pm
Criterion Covered Total %
branch 87 100 87.0


line true false branch
55 0 1275 unless my $self = $class->SUPER::__new($content, %arg)
59 1 1274 if defined $arg{'ordinal'}
82 82 176 if exists $self->{'perl_version_introduced'}
88 1 149 if $main and $content =~ / \A \\ N \{ /msx and not $main->interpolates
90 1 174 if $content =~ / \A \\ o /msx
92 1 173 if $content =~ / \A \\ N [{] U [+] /msx
94 1 172 if $content =~ / \A \\ x [{] /msx
96 1 171 if $content =~ / \A \\ N /msx
135 82 145 if exists $self->{'perl_version_removed'}
138 11 134 ($code = $removed{$self->content}) ? :
210 105 2719 if ($tokenizer->cookie('])')) { }
214 13 92 if $regex_set_operator{$character}
223 27 65 $tokenizer->cookie(']') ? :
33 59 if $accept = $tokenizer->find_regexp($tokenizer->cookie("]") ? qr/ \A [ \t] /msx : $white_space_re)
231 0 59 if $accept = _escaped($tokenizer, $character)
234 51 8 if $regex_pass_on{$character}
240 8 0 $tokenizer->cookie(']') ? :
253 178 2541 if (my $class = $double_agent{$character})
254 23 155 $tokenizer->cookie(']') ? :
262 276 2265 if ($tokenizer->modifier('x*') and not $tokenizer->cookie(']')) { }
10 2255 elsif ($tokenizer->modifier('xx') and $tokenizer->cookie(']')) { }
265 95 181 if $accept = $tokenizer->find_regexp($white_space_re)
268 8 173 if $accept = $tokenizer->find_regexp(qr/ \A \# [^\n]* (?: \n | \z) /msx)
275 3 7 if $accept = $tokenizer->find_regexp(qr/ \A [ \t] /msx)
281 53 2202 if $character eq "#" or $character =~ / \A \s \z /msx
286 77 2305 if $accept = _escaped($tokenizer, $character)
290 1072 1233 unless $extra_ordinary{$character}
375 2137 304 unless $character eq "\\"
378 8 296 if (my $accept = $tokenizer->find_regexp(qr/ \A \\ ( [ox] ) [{] ( [^}]* ) [}] /msx))
383 3 5 if $code = $special{$match}
390 3 2 unless $value =~ / $invalid /gmsx
400 1 1 if $tokenizer->strict
414 69 227 if (my $accept = $tokenizer->find_regexp(qr" \A \\ (?: [^\w\s] | # delimiters/metas [tnrfae] | # C-style escapes 0 [01234567]{0,2} | # octal # [01234567]{1,3} | # made from backref by lexer c [][\@[:alpha:]\\^_?] | # control characters ## x (?: \{ [[:xdigit:]]* \} | [[:xdigit:]]{0,2} ) | # hex ## o [{] [01234567]+ [}] | # octal as of 5.13.3 x [[:xdigit:]]{0,2} | # hex - brackets handled above ## N (?: \{ (?: [[:alpha:]] [\w\s:()-]* | # must begin w/ alpha ## U [+] [[:xdigit:]]+ ) \} ) | # unicode N (?: [{] (?= [^0-9] ) [^\}]* [}] ) # unicode ) "msx))
430 6 63 if $code = $special{$match}
534 1 16 if exists $self->{'ordinal'}
544 8 8 unless $content =~ / \A \\ /msx
546 2 6 if exists $escapes{$content}
550 1 5 if $octal{$indicator}
552 3 2 if ($indicator eq "x")
553 2 1 if $content =~ / \A \\ x \{ ( [[:xdigit:]]* ) /msx
555 1 0 if $content =~ / \A \\ x ( [[:xdigit:]]{0,2} ) \z /msx
560 0 2 if ($indicator eq "o")
561 0 0 if $content =~ / \A \\ o [{] ( [01234567]* ) \z /msx
566 2 0 if ($indicator eq "N")
567 1 1 if $content =~ / \A \\ N \{ U [+] ( [[:xdigit:]]+ ) \} \z /msx
569 1 0 _have_charnames_vianame() ? :
1 0 if $content =~ / \A \\ N [{] ( .+ ) [}] \z /msx
591 0 1 if defined $have_charnames_vianame
594 1 0 'charnames'->can('vianame') ? :
604 0 1 unless "{" eq $self->content and $prev = $self->sprevious_sibling and $prev->isa("PPIx::Regexp::Token::Literal")