Branch Coverage

blib/lib/PPI/Tokenizer.pm
Criterion Covered Total %
branch 115 142 80.9


line true false branch
186 518 16420 if (not ref $_[1]) { }
16417 3 elsif (&_SCALAR0($_[1])) { }
3 0 elsif (&_ARRAY0($_[1])) { }
188 2 516 unless ref $source
205 16932 4 if ($self->{'source_bytes'}) { }
232 10 16926 if (&List::Util::any(sub { /^__(?:DATA|END)__\s*$/; } , @{$$self{'source'};})) { }
4 16922 elsif (not defined $self->{'source'}[0]) { }
1132 15790 elsif ($self->{'source'}[-1] =~ /\s$/) { }
248 16845 0 @_ ? :
285 0 595835 if ($self->{'token_eof'} and $self->{'token_cursor'} > scalar @{$self->{'tokens'};})
292 513491 82344 if (my $token = $self->{'tokens'}[$self->{'token_cursor'}])
306 51974 21363 if (defined(my $token = $self->{'tokens'}[$self->{'token_cursor'}]))
313 1 82343 if ($@) { }
51974 30369 elsif ($rv) { }
314 1 0 if (&_INSTANCE($@, 'PPI::Exception')) { }
325 30369 0 if (defined $line_rv)
327 0 30369 if (my $token = $self->{'tokens'}[$self->{'token_cursor'}])
365 5 0 unless ($self->{'token_eof'})
368 0 5 unless (defined $rv)
377 0 5 unless ($ok)
406 0 0 if $_[0]->get_token
432 0 0 unless $self->{'token_cursor'}
450 16030 95522 unless $self->{'source'}
456 16848 78674 unless defined $line
471 32405 76758 unless (defined $line)
473 30374 2031 unless ($inscan)
517 30374 73349 unless ($rv = $self->_fill_line)
518 0 30374 unless defined $rv
527 28446 44903 unless ($rv)
529 308 28138 if (ref $self->{'source'} eq "ARRAY" and not @{$self->{'source'};})
534 28446 0 if defined $rv
540 0 44902 unless (defined $rv)
548 16623 28279 unless (ref $self->{'source'} eq "ARRAY" and @{$self->{'source'};})
571 0 703952 unless (defined $self->{'line_cursor'} and defined $self->{'line_length'})
577 44902 659050 if $self->_at_line_end
581 93701 565348 unless ($result = $self->{'class'}->__TOKENIZER__on_char($self))
583 93701 0 defined $result ? :
588 96035 469313 if ($result eq 1)
593 96035 0 if (defined $self->{'token'}) { }
596 0 0 unless defined($self->{'token'} = $self->{'class'}->new($char))
603 227979 241334 if ($self->{'class'} ne "PPI::Token::$result") { }
44568 196766 elsif (defined $self->{'token'}) { }
611 0 196766 unless defined($self->{'token'} = $self->{'class'}->new($char))
633 30376 578743 unless defined $self->{'token'}
648 63789 318186 substr($_[0], 0, 12) eq 'PPI::Token::' ? :
652 160350 221625 if defined $self->{'token'}
655 0 381975 unless defined($self->{'token'} = $class->new($_[0]))
667 71 16865 if $self->{'token'}
673 0 16936 unless (length $last_token->{'content'})
679 15519 1417 if ($self->{'source_eof_chop'})
682 13247 2272 unless (length $last_token->{'content'})
712 2701 1461 if $token->significant
728 95082 171887 unless $token->significant
730 127015 44872 if @tokens >= $count
769 120 10823 unless $p0
773 8591 2232 if defined $OBVIOUS_CLASS{$c0}
774 581 1651 if defined $OBVIOUS_CONTENT{$p0}
777 183 1468 if $p0->isa("PPI::Token::Operator")
780 0 1468 if $p0->content eq ""
790 230 928 unless @{$self->{'tokens'};}
793 0 928 unless $prev
795 162 766 if $prev->isa("PPI::Token::Word")
814 8885 24499 if (not $prev) { }
822 130 24369 if $content eq "->"
828 227 24142 if $content eq "{" and $t->{'line'} =~ /\G\s*\}/cg
837 5631 18511 if ($USUALLY_FORCES{$content})
838 10 18 if defined $word and $word =~ /^v[0-9]+$/ and $content eq 'use' || $content eq 'no'
839 5385 236 unless $prevprev
840 230 6 if not $USUALLY_FORCES{$prevprev->content} and $prevprev->content ne "->"
849 790 26606 if $t->{'line'} =~ /\G\s*=>/cg
857 37 0 $arg ? :