Branch Coverage

blib/lib/PPI/Tokenizer.pm
Criterion Covered Total %
branch 118 144 81.9


line true false branch
186 518 16421 if (not ref $_[1]) { }
16418 3 elsif (&_SCALAR0($_[1])) { }
3 0 elsif (&_ARRAY0($_[1])) { }
188 2 516 unless ref $source
194 1 16417 if &_SCALAR0($self->{'source'} = ${$_[1];})
206 16932 4 if ($self->{'source_bytes'}) { }
233 10 16926 if (&List::Util::any(sub { /^__(?:DATA|END)__\s*$/; } , @{$$self{'source'};})) { }
4 16922 elsif (not defined $self->{'source'}[0]) { }
1128 15794 elsif ($self->{'source'}[-1] =~ /\s$/) { }
249 16845 0 @_ ? :
286 0 597242 if ($self->{'token_eof'} and $self->{'token_cursor'} > scalar @{$self->{'tokens'};})
293 514738 82504 if (my $token = $self->{'tokens'}[$self->{'token_cursor'}])
307 52042 21361 if (defined(my $token = $self->{'tokens'}[$self->{'token_cursor'}]))
314 1 82503 if ($@) { }
52042 30461 elsif ($rv) { }
315 1 0 if (&_INSTANCE($@, 'PPI::Exception')) { }
326 30461 0 if (defined $line_rv)
328 0 30461 if (my $token = $self->{'tokens'}[$self->{'token_cursor'}])
366 5 0 unless ($self->{'token_eof'})
369 0 5 unless (defined $rv)
378 0 5 unless ($ok)
407 0 0 if $_[0]->get_token
433 0 0 unless $self->{'token_cursor'}
451 16145 95605 unless $self->{'source'}
457 16848 78757 unless defined $line
472 32520 76837 unless (defined $line)
474 30466 2054 unless ($inscan)
518 30466 73415 unless ($rv = $self->_fill_line)
519 0 30466 unless defined $rv
528 28445 44970 unless ($rv)
530 308 28137 if (ref $self->{'source'} eq "ARRAY" and not @{$self->{'source'};})
535 28445 0 if defined $rv
541 0 44969 unless (defined $rv)
549 16623 28346 unless (ref $self->{'source'} eq "ARRAY" and @{$self->{'source'};})
572 0 705254 unless (defined $self->{'line_cursor'} and defined $self->{'line_length'})
578 44969 660285 if $self->_at_line_end
582 94068 566216 unless ($result = $self->{'class'}->__TOKENIZER__on_char($self))
584 94068 0 defined $result ? :
589 96222 469994 if ($result eq 1)
594 96222 0 if (defined $self->{'token'}) { }
597 0 0 unless defined($self->{'token'} = $self->{'class'}->new($char))
604 228473 241521 if ($self->{'class'} ne "PPI::Token::$result") { }
44589 196932 elsif (defined $self->{'token'}) { }
612 0 196932 unless defined($self->{'token'} = $self->{'class'}->new($char))
634 30468 580047 unless defined $self->{'token'}
649 63827 319286 substr($_[0], 0, 12) eq 'PPI::Token::' ? :
653 160503 222610 if defined $self->{'token'}
656 0 383113 unless defined($self->{'token'} = $class->new($_[0]))
668 74 16862 if $self->{'token'}
674 0 16936 unless (length $last_token->{'content'})
680 15521 1415 if ($self->{'source_eof_chop'})
683 13236 2285 unless (length $last_token->{'content'})
713 2725 1470 if $token->significant
729 95149 172714 unless $token->significant
731 127792 44922 if @tokens >= $count
770 118 10912 unless $p0
774 8591 2321 if defined $OBVIOUS_CLASS{$c0}
775 588 1733 if defined $OBVIOUS_CONTENT{$p0}
778 224 1509 if $p0->isa("PPI::Token::Operator")
781 0 1509 if $p0->content eq ""
791 198 915 unless @{$self->{'tokens'};}
794 1 914 unless $prev
796 166 748 if $prev->isa("PPI::Token::Word")
815 8860 24541 if (not $prev) { }
823 130 24411 if $content eq "->"
829 230 24181 if $content eq "{" and $t->{'line'} =~ /\G\s*\}/cg
838 5631 18550 if ($USUALLY_FORCES{$content})
839 10 18 if defined $word and $word =~ /^v[0-9]+$/ and $content eq 'use' || $content eq 'no'
840 5385 236 unless $prevprev
841 230 6 if not $USUALLY_FORCES{$prevprev->content} and $prevprev->content ne "->"
850 791 26619 if $t->{'line'} =~ /\G\s*=>/cg
858 37 0 $arg ? :