Branch Coverage

blib/lib/PPI/Tokenizer.pm
Criterion Covered Total %
branch 112 140 80.0


line true false branch
183 0 16792 if (not defined $_[1]) { }
495 16297 elsif (not ref $_[1]) { }
16297 0 elsif (&_SCALAR0($_[1])) { }
0 0 elsif (&_ARRAY0($_[1])) { }
189 495 0 if (ref $source) { }
210 16788 4 if ($self->{'source_bytes'}) { }
237 10 16782 if (&List::Util::any(sub { /^__(?:DATA|END)__\s*$/; } , @{$$self{'source'};})) { }
4 16778 elsif (not defined $self->{'source'}[0]) { }
1061 15717 elsif ($self->{'source'}[-1] =~ /\s$/) { }
285 0 379456 if ($self->{'token_eof'} and $self->{'token_cursor'} > scalar @{$self->{'tokens'};})
292 303147 76309 if (my $token = $self->{'tokens'}[$self->{'token_cursor'}])
306 46314 20732 if (defined(my $token = $self->{'tokens'}[$self->{'token_cursor'}]))
313 1 76308 if ($@) { }
46314 29994 elsif ($rv) { }
314 1 0 if (&_INSTANCE($@, 'PPI::Exception')) { }
325 29994 0 if (defined $line_rv)
327 0 29994 if (my $token = $self->{'tokens'}[$self->{'token_cursor'}])
365 4 0 unless ($self->{'token_eof'})
368 0 4 unless (defined $rv)
377 0 4 unless ($ok)
406 0 0 if $_[0]->get_token
432 0 0 unless $self->{'token_cursor'}
450 15790 89130 unless $self->{'source'}
456 16706 72424 unless defined $line
471 32023 70591 unless (defined $line)
473 29998 2025 unless ($inscan)
517 29998 67057 unless ($rv = $self->_fill_line)
518 0 29998 unless defined $rv
527 27737 39320 unless ($rv)
529 307 27430 if (ref $self->{'source'} eq "ARRAY" and not @{$self->{'source'};})
534 27737 0 if defined $rv
540 0 39319 unless (defined $rv)
548 16480 22839 unless (ref $self->{'source'} eq "ARRAY" and @{$self->{'source'};})
571 0 432915 unless (defined $self->{'line_cursor'} and defined $self->{'line_length'})
577 39319 393596 if ++$self->{'line_cursor'} >= $self->{'line_length'}
581 76004 317591 unless ($result = $self->{'class'}->__TOKENIZER__on_char($self))
583 76004 0 defined $result ? :
588 57466 260125 if ($result eq 1)
593 57466 0 if (defined $self->{'token'}) { }
596 0 0 unless defined($self->{'token'} = $self->{'class'}->new($char))
603 101228 158897 if ($self->{'class'} ne "PPI::Token::$result") { }
29445 129452 elsif (defined $self->{'token'}) { }
611 0 129452 unless defined($self->{'token'} = $self->{'class'}->new($char))
628 30000 362681 unless defined $self->{'token'}
643 9419 223808 substr($_[0], 0, 12) eq 'PPI::Token::' ? :
647 98278 134949 if defined $self->{'token'}
650 0 233227 unless defined($self->{'token'} = $class->new($_[0]))
662 76 16715 if $self->{'token'}
668 0 16791 unless (length $last_token->{'content'})
674 15444 1347 if ($self->{'source_eof_chop'})
677 13192 2252 unless (length $last_token->{'content'})
707 2709 1419 if $token->significant
723 83986 154344 unless $token->significant
725 110994 43350 if @tokens >= $count
764 121 6793 unless $p0
768 4578 2215 if defined $OBVIOUS_CLASS{$c0}
769 561 1654 if defined $OBVIOUS_CONTENT{$p0}
772 202 1452 if $p0->isa("PPI::Token::Operator")
775 0 1452 if $p0->content eq ""
785 206 928 unless @{$self->{'tokens'};}
788 2 926 unless $prev
790 164 762 if $prev->isa("PPI::Token::Word")
809 8908 23636 if (not $prev) { }
817 127 23509 if $content eq "->"
823 229 23280 if $content eq "{" and $t->{'line'} =~ /\G\s*\}/cg
832 5631 17649 if ($USUALLY_FORCES{$content})
833 10 18 if defined $word and $word =~ /^v[0-9]+$/ and $content eq 'use' || $content eq 'no'
834 5385 236 unless $prevprev
835 230 6 if not $USUALLY_FORCES{$prevprev->content} and $prevprev->content ne "->"
844 791 25766 if $t->{'line'} =~ /\G\s*=>/cg