Branch Coverage

blib/lib/Pod/Simple/PullParser.pm
Criterion Covered Total %
branch 76 102 74.5


line true false branch
13 10 0 unless defined &Pod::Simple::PullParser::DEBUG
27 0 0 unless ref $self
29 0 0 unless defined $source
56 0 0 if ('Pod::Simple::PullParser' eq (ref $_[0] || $_[0])) { }
83 0 89 unless $self
111 79 508 if ($self->{'source_dead'}) { }
23 485 elsif (exists $self->{'source_fh'}) { }
2 483 elsif (exists $self->{'source_arrayref'}) { }
483 0 elsif (exists $self->{'source_scalar_ref'}) { }
127 17 281 unless (defined $lines[-1])
163 2 0 unless (@{$self->{'source_arrayref'};})
178 427 56 if (${$self->{'source_scalar_ref'};} =~ /([^\n\r]*)((?:\r?\n)?)/g) { }
185 158 56 if length $1 or length $2 or pos ${$$self{"source_scalar_ref"};} != length ${$self->{'source_scalar_ref'};}
211 0 656 unless defined $t
213 0 656 unless ref $t
215 0 656 unless UNIVERSAL::can($t, "type")
231 0 90 unless @_
233 1 89 if $self->{'source_fh'} or $self->{'source_scalar_ref'} or $self->{'source_arrayref'}
235 0 89 if (not defined $_[0]) { }
1 88 elsif (ref \$_[0] eq 'GLOB') { }
70 18 elsif (ref $_[0] eq 'SCALAR') { }
2 16 elsif (ref $_[0] eq 'ARRAY') { }
2 14 elsif (ref $_[0]) { }
0 14 elsif (not length $_[0]) { }
258 0 14 unless open PODSOURCE, "<$_[0]"
278 13 8 if $title =~ /^(\S{1,60})\s+--?\s+./s
307 1 1 unless $this->_get_titled_section("AUTHOR", "max_token", 10000, @_)
322 42 10 unless defined $max_content_length
324 0 0 1 == keys %options ? :
0 52 if keys %options
331 3 49 if ($accept_verbatim)
342 0 52 unless defined $titlename and $titlename =~ /^[A-Z ]{1,60}$/s
356 276 287 if ($state == 0) { }
131 156 elsif ($state == 1) { }
36 120 elsif ($state == 2) { }
120 0 elsif ($state == 3) { }
357 62 214 if ($token->is_start and $token->tagname eq "head1")
365 65 66 if ($token->is_text) { }
2 64 elsif ($token->is_tagname('X')) { }
62 3 elsif ($token->is_end and $token->tagname eq 'head1') { }
366 64 1 unless ($skipX)
376 1 61 if $nocase
377 6 0 $max_content_length ? :
36 26 if ($head1_text_content eq $titlename or $head1_text_content =~ /\($titlename_re\)/s) { }
6 20 elsif ($desperate_for_title and $head1_text_content =~ /\S/ and not $head1_text_content =~ /^[ A-Z]+$/s and not $head1_text_content =~ /\((?: NAME | TITLE | VERSION | AUTHORS? | DESCRIPTION | SYNOPSIS | COPYRIGHT | LICENSE | NOTES? | FUNCTIONS? | METHODS? | CAVEATS? | BUGS? | SEE\ ALSO | SWITCHES | ENVIRONMENT )\)/sx and $max_content_length ? length $head1_text_content <= $max_content_length : 1) { }
414 36 0 if ($token->is_start and $content_containers{$token->tagname}) { }
427 60 60 if ($token->is_text) { }
36 36 elsif ($token->is_end and $content_containers{$token->tagname}) { }
436 36 0 $max_content_length ? :
36 0 if ($para_text_content =~ /\S/ and $max_content_length ? length $para_text_content <= $max_content_length : 1) { }
467 10 42 unless defined $title