Branch Coverage

blib/lib/PPIx/Regexp/Lexer.pm
Criterion Covered Total %
branch 64 80 80.0


line true false branch
91 0 332 if ref $class
93 0 332 unless (__instance($tokenizer, "PPIx::Regexp::Tokenizer"))
96 0 0 unless (my $tokenizer_class = __choose_tokenizer_class($tokenizer, \%args))
101 0 0 unless ($tokenizer = $tokenizer_class->new($tokenizer, %args))
166 8 660 unless my $token = $self->_get_token
168 336 324 unless ($token->isa("PPIx::Regexp::Token::Delimiter"))
169 324 12 if not $kind and $token->isa("PPIx::Regexp::Token::Structure")
186 24 300 if (defined $part_1_class)
190 24 4 if ($token->significant) { }
219 324 0 if ($part_0 and $part_0->can("max_capture_number"))
241 305 19 unless $part_0->find("PPIx::Regexp::Token::Backreference")
275 8 324 if defined wantarray
295 324 24 unless defined $expect_open_bracket
300 329 19 if ($expect_open_bracket) { }
301 329 0 if (my $token = $self->_get_token) { }
303 329 0 if ($token->isa('PPIx::Regexp::Token::Delimiter')) { }
317 348 1948 if ($token->isa("PPIx::Regexp::Token::Delimiter"))
321 555 1393 if ($token->isa('PPIx::Regexp::Token::Structure')) { }
324 276 279 if (my $finish = $bracket{$content}) { }
269 10 elsif ($content eq $rslt[-1][0]) { }
4 6 elsif ($content ne ')') { }
1 5 elsif ($content eq ')' and @rslt > 1 and my $recover = $unclosed{$rslt[-1][1]->content}) { }
361 13 32 if (__instance($rslt[-1][-2], "PPIx::Regexp::Token::Operator") and $rslt[-1][-2]->content eq "-" and $rslt[-1][0] eq "]")
372 5 1 if (my $recover = $unclosed{$rslt[-1][1]->content}) { }
380 348 0 if (@rslt == 1) { }
400 697 3622 if (@{$self->{'deferred'};})
404 332 3290 unless my $token = $self->{'tokenizer'}->next_token
424 270 0 if (my $method = $handler{$args[0]->content})
427 0 270 unless @node
438 29 6 if ($args->[-1] and $args->[-1]->is_quantifier) { }
6 0 elsif ($args->[-1]) { }
478 1 5 if ($self->{'_rslt'}[0][-1]->isa('PPIx::Regexp::Token::Assertion') and '\\b' eq $self->{'_rslt'}[0][-1]->content) { }
502 0 6 unless "ARRAY" eq ref $self->{'_rslt'}
506 0 6 unless @{$self->{'_rslt'};}
512 1 5 if $token
521 2 9 if (__instance($args->[0], "PPIx::Regexp::Token::Literal") and __instance($args->[1], "PPIx::Regexp::Token::Unknown") and "PPIx::Regexp::Token::Quantifier"->could_be_quantifier($args->[1]->content))
529 2 0 if (__instance($args->[2], "PPIx::Regexp::Token::Unknown") and "PPIx::Regexp::Token::Greediness"->could_be_greediness($args->[2]->content))
545 4 298 if $stack_entry->[0] eq "])"
557 4 189 if $self->_in_regex_set
561 7 182 if $self->{'tokenizer'}->modifier("n")