Branch Coverage

blib/lib/PPIx/Regexp/Token/Modifier.pm
Criterion Covered Total %
branch 55 72 76.3


line true false branch
133 0 589 unless my $self = $class->SUPER::__new($content, %arg)
138 3 586 if $content =~ / \A $capture_group_leader* \^ /msx and defined $arg{'tokenizer'}->modifier_seen("n")
168 410 0 if (defined $modifier) { }
171 0 0 if defined $_
172 0 0 if ($de_aggregate{$_}) { }
186 0 5357 unless not $wild or 1 == length $modifier
189 15 5342 if (my $bin = $aggregate{$modifier})
191 15 0 unless $wild
193 0 0 unless defined $aggr
195 0 0 unless $aggr =~ / \A ( (?: \Q$modifier\E )* ) \z /msx
199 2529 2813 if ($wild)
241 4 1 if (defined(my $val = delete $modifier{'match_semantics'}))
246 5 10 $val ? :
248 1 14 unless (defined $rslt[-1])
249 1 0 if (my $code = $self->can("_explain_$mod")) { }
256 0 5 wantarray ? :
304 565 30 unless defined(my $val = delete $mods{$bin})
308 595 0 wantarray ? :
333 0 5 unless defined $modifier
350 1 92 if $self->asserts("xx")
354 1 91 if $self->asserts("n")
359 6 85 if defined $match_semantics and $is_statement_modifier
364 1 84 if defined $match_semantics and "aa" eq $match_semantics
370 1 10 if defined $match_semantics and not $is_statement_modifier and "a" eq $match_semantics
377 10 73 if defined $match_semantics and not $is_statement_modifier
383 0 73 if not $is_statement_modifier and $content =~ / \^ /msx
387 3 70 if $self->asserts("r")
388 2 68 if $self->asserts("p")
389 2 66 if $self->content =~ / \A [(]? [?] .* - /msx
391 1 65 if $self->asserts("c")
412 8 1116 if ($content =~ / \A \^ /msx)
439 11 407 if ('-' eq $1) { }
26 381 elsif (my $bin = $aggregate{$1}) { }
445 25 1 $value ? :
482 245 43 if ($val) { }
499 3 586 if $self->{'__caret_undoes_n'}