Branch Coverage

blib/lib/CAM/PDF.pm
Criterion Covered Total %
branch 421 1028 40.9


line true false branch
284 4 23 if (ref $_[0]) { }
287 0 4 if (ref $options ne 'HASH')
301 17 10 if ($content =~ / \A%PDF-([\d.]+) /msx) { }
304 13 4 if ($ver and $ver > $pdfversion)
311 10 0 if (1024 > length $content)
314 0 10 if ($file eq '-') { }
327 9 1 if (open my $fh, '<', $file) { }
331 0 9 if ($size != read($fh, $content, $size))
335 0 9 unless (close $fh)
347 9 0 if ($content =~ / \A%PDF-([\d.]+) /msx) { }
350 7 2 if ($ver and $ver > $pdfversion)
384 0 26 unless ($self->_startdoc)
388 24 2 if ($$self{'trailer'}{'ID'})
391 24 0 if (ref $id)
405 8 4 unless ($$self{'crypt'} or $$self{'options'}{'fault_tolerant'})
424 4 4 if ($self->needsSave)
441 0 0 @_ == 0 ? :
491 26 0 if ($doc_length > 1024) { }
501 0 26 unless ($startxref)
511 0 26 unless (defined $$self{'trailer'})
518 0 58 unless ($self->_index_objstream($objstreamref))
527 0 26 unless (exists $$self{'trailer'}{'Root'})
533 0 26 if (not $root or ref $root ne 'HASH')
540 0 26 unless (exists $$root{'Pages'})
546 0 26 if (not $pages or ref $pages ne 'HASH')
554 0 26 if (not $$self{'PageCount'} or $$self{'PageCount'} < 1)
575 24 4 if ('xref' eq substr($$self{'content'}, $startxref, 4)) { }
578 0 24 if ($trailer and exists $$trailer{'XRefStm'})
580 0 0 unless ($self->_buildxref_pdf15($$trailer{'XRefStm'}{'value'}, $index, $versions, $objstreamrefs))
591 2 26 if ($trailer and exists $$trailer{'Prev'})
593 0 2 unless ($self->_buildxref($$trailer{'Prev'}{'value'}, $index, $versions, $objstreamrefs))
609 0 0 if (0 == $i % 15) { }
0 0 elsif (0 == $i % 3) { }
630 0 4 unless ($trailer)
643 2 2 if (exists $$trailer{'Index'})
664 276 0 if ($w > $pos)
673 0 92 if exists $$index{$objnum}
689 32 60 if ($values{'type'} == 1) { }
58 2 elsif ($values{'type'} == 2) { }
701 2 2 if ($end - 1 > $$self{'maxobj'})
722 0 0 if ($offset >= length $$self{'content'})
731 0 4 unless ($xrefstream)
737 0 4 unless ($trailer)
742 0 4 if ('HASH' ne ref $trailer)
748 0 4 if (not exists $$trailer{'Type'} or 'XRef' ne $$trailer{'Type'}{'value'})
755 0 4 unless ($stream)
770 0 58 unless ($objstream)
775 46 12 if ($$objstream{'_indexed'}++)
780 0 12 unless ($stream)
793 58 0 if ($lookup =~ /\G\s*(\d+)\s+(\d+)/cgmsx) { }
798 58 0 if (exists $$self{'xref'}{$objnum})
800 0 58 unless ref $$self{'xref'}{$objnum}
801 0 58 if $$self{'xref'}{$objnum}{'objstream'}
832 0 24 if ($trailerpos > 0 and $trailerpos < $startxref)
840 0 24 unless ($end =~ s/ \A xref\s+ //msx)
856 0 2066 if exists $$index{$objnum}
860 0 2066 unless ($indexnum)
865 818 1248 if ($type eq 'n')
867 818 0 if ($indexnum != 0)
873 2042 24 if ($objnum > $$self{'maxobj'})
883 0 24 if ($sxrefpos > 0 and $sxrefpos < $trailerpos)
890 0 24 unless ($end =~ s/ \A trailer\s* //msx)
934 0 12 if (not $pagenum or $pagenum eq 'All')
944 0 0 if ($$objnode{'value'}{'type'} eq 'dictionary')
947 0 0 if ($$dict{'Name'})
957 6 6 if exists $$self{'Names'}{$pagenum}
964 6 6 if (exists $$page{'Resources'})
969 8 4 if (exists $$r{$key})
972 8 0 if (ref $x eq 'HASH')
982 6 6 if ($page)
1033 0 297 unless (${$c;} =~ / \G\s*(\d+)\s+(\d+)\s+obj\s* /cgmsx)
1044 297 0 if (${$c;} =~ / \G(.*?)endobj\s* /cgmsx) { }
1048 66 231 if ($string =~ / \Gstream /msx)
1050 0 66 if ($$objnode{'type'} ne 'dictionary')
1084 0 3 unless (${$c;} =~ / \GBI\b /msx)
1153 0 69 unless (${$c;} =~ / \G$begin /cgmsx)
1161 2 67 if (not defined $l) { }
1163 0 2 if ($begin =~ / \Gstream /msx)
1167 2 0 if (${$c;} =~ / \G$begin(.*?)$end /cgmsx) { }
1184 0 67 unless (${$c;} =~ / \G$end /cgmsx)
1190 66 3 if (ref $self)
1196 50 16 if ($$self{'crypt'})
1230 350 0 if (${$c;} =~ / \G$begin /cgmsx)
1267 173 0 if (${$c;} =~ / \G\[\s* /cgmsx)
1300 2605 0 if (${$c;} =~ m( \G/([^\s<>/\[\]()]+)\s* )cgmsx) { }
1332 412 0 if (${$c;} =~ / \G(\d+)\s+\d+\s+R\s* /cgmsx) { }
1364 17935 0 if (${$c;} =~ / \G([\d.+-]+)\s* /cgmsx) { }
1396 1709 0 if (${$c;} =~ / \G [(] /cgmsx) { }
1403 1744 0 if (${$c;} =~ / \G ([^()]*) ([()]) /cgmsx) { }
1411 33 1711 if ($string =~ / (\\+) \z/msx and 1 == length($1) % 2) { }
1 1710 elsif ($delim eq '(') { }
1 1709 elsif (--$depth > 0) { }
1460 99 1610 if (ref $pkg_or_doc)
1463 31 68 if ($$self{'crypt'})
1492 70 0 if (${$c;} =~ / \G<([\da-fA-F\s]*)>\s* /cgmsx) { }
1497 1 69 if ($len % 2 == 1)
1508 64 6 if (ref $pkg_or_doc)
1511 6 58 if ($$self{'crypt'})
1540 21 0 if (${$c;} =~ / \G(true|false)\s* /cgimsx) { }
1573 1 0 if (${$c;} =~ / \Gnull\s* /cgimsx) { }
1613 0 0 ${$c;} =~ / \G null /imsx ? :
18 0 ${$c;} =~ / \G (true|false) /imsx ? :
17935 18 ${$c;} =~ / \G [\d.+-]+ /msx ? :
67 17953 ${$c;} =~ / \G < /msx ? :
1692 18020 ${$c;} =~ / \G [(] /msx ? :
173 19712 ${$c;} =~ / \G \[ /msx ? :
323 19885 ${$c;} =~ / \G << /msx ? :
1108 20208 ${$c;} =~ m[ \G / ]msx ? :
412 21316 ${$c;} =~ / \G \d+\s+\d+\s+R\b /msx ? :
1640 4 3835 unless ref $objnode
1644 1638 1638 if ($$objnode{'type'} eq 'reference') { }
1638 0 elsif ($$objnode{'type'} eq 'object') { }
1653 0 3276 unless ref $objnode
1697 0 4103 if ($key =~ s[ \A/ ][]msx)
1702 0 0 unless defined $key
1704 0 0 if (ref $key ne 'CAM::PDF::Node')
1712 293 3810 unless (exists $$self{'objcache'}{$key})
1718 0 293 unless ($pos)
1725 44 249 if (ref $pos) { }
1733 0 249 unless (exists $$self{'endxref'})
1738 0 249 if (not defined $endpos or $endpos < $pos)
1771 0 0 unless defined $props
1782 0 0 unless defined $props
1783 0 0 unless defined $name
1804 0 0 unless $objnode
1807 0 0 if ($dict and $$dict{'Type'} and $$dict{'Type'}{'value'} eq 'Font') { }
1833 0 0 if ($list)
1838 0 0 if ($dict and $$dict{'Type'} and $$dict{'Type'}{'value'} eq 'Font')
1864 0 0 if ($list)
1869 0 0 if ($dict and $$dict{'Type'} and $$dict{'Type'}{'value'} eq 'Font')
1900 0 0 if ($dict and $$dict{'Type'} and $$dict{'Type'}{'value'} eq 'Font' and $$dict{'BaseFont'} and $$dict{'BaseFont'}{'value'} eq $fontname)
1946 0 164 if ($$props{'Font'})
1951 164 0 if ($$props{$fontname}) { }
1954 164 0 if ($fontdict and $$fontdict{'Type'} and $$fontdict{'Type'}{'value'} eq 'Font') { }
2000 0 0 if (exists $$page{'Resources'})
2003 0 0 if (exists $$r{'Font'})
2006 0 0 if (exists $$f{$label})
2022 0 0 if ($fontmetrics) { }
2027 0 0 unless ($$dict{'value'}{$key})
2043 0 0 unless (exists $$page{'Resources'})
2048 0 0 unless (exists $$r{'Font'})
2097 0 0 if ($font) { }
2128 0 0 if ($font) { }
2146 0 0 if ($basefont)
2174 0 0 if (defined $_[0] and ref $_[0]) { }
2195 0 0 if ($w <= $width) { }
2202 0 0 if ($s =~ s/ \A(\s*) //msx)
2206 0 0 $cur eq '' ? :
2210 0 0 if ($s =~ s/ \A(\s*)(\S*) //msx)
2214 0 0 $wd eq '' ? :
2215 0 0 if ($curw == 0) { }
2222 0 0 $sp eq '' ? :
2223 0 0 if ($curw + $wsp + $wwd <= $width) { }
2236 0 0 if (0 < length $cur)
2260 0 795 if (not defined $string or $string eq '')
2266 795 0 if ($fontmetrics)
2268 792 3 if ($$fontmetrics{'Widths'}) { }
3 0 elsif ($$fontmetrics{'BaseFont'}) { }
2277 3637 0 if ($char >= $firstc and $char <= $lastc)
2283 0 0 unless (defined $missing_width)
2285 0 0 exists $$fontmetrics{'FontDescriptor'} ? :
2287 0 0 $fd && exists $$fd{'MissingWidth'} ? :
2298 1 2 unless (exists $$self{'fontmetrics'}{$fontname})
2306 3 0 if ($$self{'fontmetrics'}{$fontname})
2317 0 795 if ($width == 0)
2352 0 96 if ($pagenum < 1 or $pagenum > $$self{'PageCount'})
2358 32 64 unless (exists $$self{'pagecache'}{$pagenum})
2365 0 92 if (ref $kids ne 'ARRAY')
2370 52 40 if (@{$kids;} == 1) { }
2386 2 38 if $pagenum == $nodestart
2390 16 22 if ($$sub{'Type'}{'value'} ne 'Pages') { }
2400 8 14 if $nodestart + $count - 1 >= $pagenum
2410 0 92 unless (ref $node)
2438 0 40 unless $page
2440 0 40 unless ($anyobj)
2444 24 16 if (wantarray) { }
2467 0 6 unless ($pagetree)
2490 0 12 unless defined $content
2496 12 0 if ($$page{'MediaBox'})
2527 0 30 unless ($page and exists $$page{'Contents'})
2534 0 30 if (not ref $contents) { }
30 0 elsif (ref $contents eq 'HASH') { }
0 0 elsif (ref $contents eq 'ARRAY') { }
2549 0 0 if (not ref $streamdata) { }
0 0 elsif (ref $streamdata eq 'HASH') { }
2592 0 0 unless ($pagedict)
2595 0 0 unless ($pagedict)
2601 0 0 if (exists $$pagedict{'MediaBox'}) { }
0 0 elsif (exists $$pagedict{'Parent'}) { }
2634 0 0 if ($$objnode{'value'}{'type'} eq 'dictionary')
2637 0 0 if (exists $$dict{'Name'})
2679 28 20 if (exists $$self{'crypt'}{'P'})
2752 0 0 defined $parentname ? :
2755 0 0 if (defined $parentname and $parentname ne '') { }
2758 0 0 unless $parent
2760 0 0 unless exists $$dict{'Kids'}
2766 0 0 unless $root
2768 0 0 unless exists $$parent{'Fields'}
2775 0 0 if (not ref $kid or ref $kid ne 'CAM::PDF::Node' or $$kid{'type'} ne 'reference')
2782 0 0 if (exists $$dict{'T'})
2788 0 0 if (exists $$dict{'TU'})
2794 0 0 if (@kidnames > 0)
2819 0 0 unless defined $fieldname
2821 0 0 unless (exists $$self{'formcache'}{$fieldname})
2825 0 0 if ($fieldname =~ / [.] /msx) { }
2828 0 0 if ($fieldname =~ s/ \A(.*)[.]([.]+)\z /$2/msx)
2832 0 0 unless $parentname
2834 0 0 unless $parent
2836 0 0 unless exists $$dict{'Kids'}
2842 0 0 unless $root
2844 0 0 unless $parent
2846 0 0 unless exists $$dict{'Fields'}
2856 0 0 if (exists $$dict{'T'})
2860 0 0 if (exists $$dict{'TU'})
2886 0 0 unless defined $field
2889 0 0 if ($$field{'formparent'})
2895 0 0 if ($$olddict{'DR'})
2902 0 0 if ($$dr{$key}) { }
2904 0 0 if ($key eq 'Font') { }
2927 0 0 if ($$olddict{$prop})
2987 0 0 if ($name and $$objnode{'value'}{'type'} eq 'dictionary')
2990 0 0 if ($$objnode{'objnum'})
3012 0 0 if ($$objnode{'value'}{'type'} eq 'dictionary' and exists $$objnode{'value'}{'value'}{'Name'})
3015 0 0 if ($$objnode{'objnum'})
3044 0 0 unless (exists $$self{'NameObjects'}{$pagenum})
3046 0 0 if ($objnum)
3050 0 0 unless (exists $$page{'Resources'})
3055 0 0 unless (exists $$r{'XObject'})
3063 0 0 if ($objnum)
3098 0 4 if ($$page{'Contents'} and $$page{'Contents'}{'type'} eq 'reference') { }
3134 0 0 if (not $$page{'Contents'}) { }
0 0 elsif ($$page{'Contents'}{'type'} eq 'array') { }
0 0 elsif ($$page{'Contents'}{'type'} eq 'reference') { }
3165 0 4 if @_ == 0
3168 0 4 if (@pages == 0)
3178 0 4 if @delete == 0
3192 8 4 if @_ == 0
3195 0 4 if @pages == 0
3199 0 4 if ($self->numPages == scalar keys %pages)
3217 0 20 unless ($objnum)
3242 0 0 if ($objnum)
3247 0 0 $objnum ? :
3258 0 20 if ($self->numPages <= 1)
3263 0 20 unless (defined $objnum)
3291 3 17 if ($$pagedict{'Annots'})
3294 3 0 if ($annots)
3299 3 0 if ($annot)
3323 0 62 if ($$nodedict{'Count'}{'type'} eq 'reference') { }
3335 12 50 if ($count == 1)
3338 0 12 unless ($parentdict)
3350 8 42 if (@{$kids;} == 1) { }
3369 16 48 if ($$subdict{'Type'}{'value'} ne 'Pages') { }
3371 8 8 if ($pagenum == $nodestart) { }
3388 34 14 if ($nodestart + $child_count - 1 >= $pagenum) { }
3402 0 22 if ($child == $#{$kids;})
3418 0 8 if ($$root{'Names'})
3421 0 0 if ($$names{'Dests'})
3424 0 0 if ($self->_deleteDests($dests, \%objnums))
3430 0 0 if (0 == scalar keys %{$names;})
3438 2 6 if ($$root{'Outlines'})
3462 0 2 if ($$node{'A'}) { }
0 2 elsif ($$node{'Dest'}) { }
3471 0 0 if ($dest and ref $dest and ref $dest eq 'ARRAY')
3474 0 0 if ($ref and $$ref{'type'} eq 'reference' and $$objnums{$$ref{'value'}})
3483 0 2 if ($$node{'Next'})
3487 0 2 if ($$node{'First'})
3509 0 0 if ($$node{'Names'}) { }
0 0 elsif ($$node{'Kids'}) { }
0 0 elsif ($$node{'D'}) { }
3526 0 0 if ($ref and $$ref{'type'} eq 'reference' and $$objnums{$$ref{'value'}})
3538 0 0 unless ($objnum)
3549 0 0 if exists $$node{'deleted'}
3553 0 0 if ($$node{'Names'}) { }
0 0 elsif ($$node{'Kids'}) { }
3563 0 0 if ($$pairs[$i + 1]{'value'} == $objnum)
3567 0 0 if ($$limits[0]{'value'} eq $name or $$limits[1]{'value'} eq $name)
3574 0 0 if (@{$pairs;} > 0)
3576 0 0 if ($redo_limits)
3598 0 0 if ($$list[$i]{'value'} == $objnum)
3604 0 0 if (@{$list;} > 0)
3606 0 0 if ($$node{'Limits'})
3609 0 0 if (not $limits or @{$limits;} != 2)
3681 0 0 unless $newrsrcs
3683 0 0 unless $page
3690 0 0 if ($$page{'Resources'}) { }
3704 0 0 if ($$pagersrcs{$type})
3708 0 0 if ($type eq 'Font') { }
0 0 elsif ($type eq 'ProcSet') { }
0 0 elsif ($type eq 'Encoding') { }
3710 0 0 unless ($page_r)
3718 0 0 if exists $$page_r{$font}
3720 0 0 if ($$val{'type'} ne 'reference')
3730 0 0 unless ($page_r)
3738 0 0 if ($$proc{'type'} ne 'label')
3744 0 0 if grep {$$_{'value'} eq $$proc{'value'};} @{$page_r;}
3795 0 12 $prepend ? :
0 12 $prepend ? :
3808 3 9 if ($$otherroot{'AcroForm'})
3814 0 3 if ($$reference{'type'} ne 'reference')
3819 3 0 if ($newkey)
3824 3 0 if ($$root{'AcroForm'}) { }
3840 0 12 if ($prepend)
3894 0 16 if ($$parent{'Count'}{'type'} eq 'reference') { }
3908 4 0 unless ($leave_blank)
3972 0 0 if (not $pagenum) { }
3988 0 0 if ($pos == 0 or substr($c, $pos - 1, 1) =~ / \W /msx)
3991 0 0 if ($part =~ / \A BI\b(.*?)\bID\b /msx)
4001 0 0 if $im =~ / \bEI\b /msx
4005 0 0 if $im =~ / \A [)] /msx
4006 0 0 if $im =~ / [(] \z /msx
4022 0 0 unless ($bit =~ / [(] /msx)
4028 0 0 if $failed
4058 0 0 if ($changes > 0)
4092 4 305 if ($otherdoc and $$otherdoc{'maxobj'} >= $objnum)
4096 0 309 if (exists $$self{'versions'}{$objnum}) { }
4103 12 297 if (wantarray) { }
4136 0 317 unless (defined $follow)
4143 289 28 if ($otherdoc) { }
4151 0 28 if ($follow)
4162 0 317 if ($$self{'xref'}{$key})
4165 0 0 if ($oldname) { }
4179 12 305 if ($follow)
4183 12 273 if $oldrefkey == $otherkey
4240 335 521 if (@list and $list[0] == $i) { }
4269 27 1 if ($$self{'ID'}) { }
4283 0 28 if (-f '/dev/urandom')
4285 0 0 if (open my $fh, '<', '/dev/urandom')
4298 28 0 if ($$self{'trailer'})
4349 0 0 ref $_[0] ? :
4362 0 0 unless (defined $value)
4367 0 0 unless $key
4368 0 0 if ref $key
4370 0 0 unless $objnode
4383 0 0 if ($$propdict{'FT'} and $self->getValue($$propdict{'FT'}) eq 'Tx')
4386 0 0 unless ($$dict{'AP'})
4390 0 0 unless ($$dict{'AP'}{'value'}{'N'})
4402 0 0 unless ($$formdict{'Subtype'})
4407 0 0 if ($$dict{'Rect'})
4421 0 0 unless ($$formdict{'BBox'})
4447 0 0 if ($$propdict{'DA'})
4456 0 0 if ($da =~ m[ \s*/(\w+)\s+(\d+)\s+Tf.*? \z ]msx)
4460 0 0 if ($fontname)
4462 0 0 if ($$propdict{'DR'})
4475 0 0 if ($$propdict{'Ff'})
4490 0 0 if ($$propdict{'Q'})
4493 0 0 $q == 1 ? :
0 0 $q == 2 ? :
4497 0 0 if ($flags{'Password'})
4502 0 0 if ($fontmetrics and not $fontsize)
4511 0 0 if ($w and $w > $stringwidth)
4521 0 0 if ($fontwidth > $maxwidth)
4527 0 0 if (exists $$opts{'max_autoscale_fontsize'} and $fontsize > $$opts{'max_autoscale_fontsize'})
4530 0 0 if (exists $$opts{'min_autoscale_fontsize'} and $fontsize < $$opts{'min_autoscale_fontsize'})
4536 0 0 if ($fontsize)
4546 0 0 if ($flags{'Multiline'}) { }
4556 0 0 $fontsize ? :
4563 0 0 if ($flags{'Justify'} ne 'left')
4572 0 0 if ($flags{'Justify'} ne 'left' and $fontmetrics)
4577 0 0 if ($flags{'Justify'} eq 'center') { }
0 0 elsif ($flags{'Justify'} eq 'right') { }
4592 0 0 ref $opts{'background_color'} ? :
0 0 $opts{'background_color'} eq 'none' ? :
4596 0 0 $background_color ? :
4604 0 0 if (@rsrcs > 0)
4605 0 0 unless ($$formdict{'Resources'})
4610 0 0 unless ($$rdict{'ProcSet'})
4620 0 0 unless ($$rdict{'Font'})
4632 0 0 unless ($fobj)
4663 0 0 if ($objnode)
4665 0 0 if (exists $$objnode{'value'}{'value'}{'AA'})
4669 0 0 if ($objnum)
4692 0 0 if ($$root{'AcroForm'})
4696 0 0 if ($$acroform{'DR'})
4712 0 0 if ($$page{'Annots'})
4719 0 0 if (ref $annot ne 'HASH')
4724 0 0 if ($$annot{'Subtype'} and $$annot{'Subtype'}{'value'} eq 'Widget' and $$annot{'FT'} and $$annot{'FT'}{'value'} eq 'Tx' and $$annot{'AP'})
4734 0 0 if ($$ap{'N'})
4738 0 0 unless ($content)
4773 0 0 unless ${$content;}
4777 0 0 unless $lineend
4782 0 0 if $j < 0
4847 0 8 if (exists $$self{'order'}) { }
4859 6 2 if ($objnode and $$objnode{'value'}{'type'} eq 'dictionary')
4861 1 5 if (exists $$objnode{'value'}{'value'}{'Linearized'})
4883 40 4 if $$self{'delinearized'}
4887 0 4 if (exists $$self{'order'}) { }
4898 4 0 if ($$objnode{'value'}{'type'} eq 'dictionary')
4900 1 3 if (exists $$objnode{'value'}{'value'}{'Linearized'})
4953 1 27 if (exists $$trailer{'Type'} and $$trailer{'Type'}{'value'} eq 'XRef')
5000 0 16 unless ($self->needsSave)
5009 16 0 unless ($$self{'content'})
5016 0 16 if ($$self{'order'})
5035 0 900 unless $$self{'changes'}{$key}
5047 0 16 unless ($$self{'content'} =~ / [\r\n] \z /msx)
5067 16 0 unless ($$self{'startxref'})
5073 828 900 unless (exists $blocks{$key})
5078 0 828 $key == 0 ? :
5094 16 1728 if ($i == $#blockkeys or $key + 1 < $blockkeys[$i + 1])
5097 0 16 if ($i < $#blockkeys)
5108 0 16 if ($$self{'startxref'})
5164 0 0 unless (defined $file)
5171 0 0 if ($file eq '-') { }
5178 0 0 unless open my $fh, '>', $file
5179 0 0 unless binmode $fh
5181 0 0 unless close $fh
5243 177 0 ref $pkg_or_doc ? :
5271 0 18676 unless (ref $objnode)
5281 900 0 $key eq 'object' ? :
852 900 $key eq 'dictionary' ? :
432 1752 $key eq 'array' ? :
3288 2184 $key eq 'label' ? :
0 5472 $key eq 'null' ? :
12 5472 $key eq 'boolean' ? :
1142 5484 $key eq 'reference' ? :
11820 6626 $key eq 'number' ? :
53 18446 $key eq 'hexstring' ? :
177 18499 $key eq 'string' ? :
5301 0 432 if (@{$val;} == 0)
5310 12632 432 if ($str ne '')
5312 941 11691 if ($$self{'maxstr'} < length $str . $newstr) { }
5324 93 339 if (@strs > 0)
5339 419 433 if (exists $$val{'Type'})
5341 0 419 $str ? :
5343 184 668 if (exists $$val{'Subtype'})
5345 184 0 $str ? :
5349 419 3702 if $dictkey eq 'Type'
5350 184 3518 if $dictkey eq 'Subtype'
5351 201 3317 if $dictkey eq 'StreamDataDone'
5352 201 3116 if ($dictkey eq 'StreamData')
5354 201 0 if (exists $$val{'StreamDataDone'})
5362 0 0 if (2 == scalar keys %{$val;} and exists $$val{'Length'} || exists $$val{'L'})
5377 2716 400 if ($str ne '')
5379 767 1949 if ($$self{'maxstr'} < length $str . $newstr) { }
5391 385 467 if (@strs > 0)
5404 0 900 unless (ref $val)
5409 201 699 if ($$val{'type'} eq 'dictionary' and exists $$val{'value'}{'StreamData'})
5416 0 201 if ($length != $oldlength)
5424 201 699 if (defined $stream)
5477 1355 29058 if ($type eq 'object')
5483 1355 0 if ($$objnode{'objnum'})
5490 729 26591 $type eq 'reference' && $deref && !exists($$traversed{$val}) ? :
1355 27320 $type eq 'object' ? :
591 28675 $type eq 'array' ? :
1147 29266 $type eq 'dictionary' ? :
5568 0 46 if ($$objnode{'type'} ne 'dictionary')
5570 0 0 $save ? :
5582 41 5 if (defined $filtobj)
5584 0 41 $$filtobj{'type'} eq 'array' ? :
5587 4 37 if ($parmobj)
5589 0 4 $$parmobj{'type'} eq 'array' ? :
5594 0 41 if ($$filter{'type'} ne 'label')
5604 0 41 if $filtername eq 'Standard'
5613 0 41 unless ($filt)
5632 0 41 if ($save)
5636 0 0 if ($objnum)
5642 0 0 if ($length != $oldlength)
5659 0 46 $save ? :
5676 37 4 unless ($parms)
5681 0 4 if (not $d or ref $d ne 'HASH')
5685 0 0 if ($filter eq 'FlateDecode' or $filter eq 'Fl' or $filter eq 'LZWDecode' or $filter eq 'LZW')
5688 4 0 exists $$d{'Predictor'} ? :
5689 0 4 if ($p == 2) { }
4 0 elsif ($p >= 10) { }
5718 0 4 exists $$d{'Colors'} ? :
5719 4 0 exists $$d{'Columns'} ? :
5720 0 4 exists $$d{'BitsPerComponent'} ? :
5721 0 4 if (0 != $bpc % 8)
5726 0 4 if (0 != $len % $width)
5735 0 92 if ($row_pred == 1) { }
92 0 elsif ($row_pred == 2) { }
0 0 elsif ($row_pred == 3) { }
0 0 elsif ($row_pred == 4) { }
5759 0 0 $pb <= $pc ? :
0 0 $pa <= $pb && $pa <= $pc ? :
5802 4 0 if ($$objnode{'type'} eq 'dictionary')
5808 0 4 unless (exists $$dict{'StreamData'})
5814 0 4 if ($filtername eq 'LZWDecode' or $filtername eq 'LZW')
5824 0 4 unless ($filt)
5835 4 0 if (not defined $oldlength or $length != $oldlength)
5837 0 4 if (defined $l and $$l{'type'} eq 'reference') { }
4 0 elsif (not defined $l or $$l{'type'} eq 'number') { }
5840 0 0 if ($$lenobj{'type'} ne 'number')
5861 4 0 if (not defined $f) { }
0 0 elsif ($$f{'type'} eq 'label') { }
0 0 elsif ($$f{'type'} eq 'array') { }
5885 0 4 if ($$dict{'DecodeParms'} or $$dict{'DP'})
5890 0 4 if ($objnum)
5959 856 17019 if ($$objnode{'type'} eq 'reference')
5995 357 5793 if ($$objnode{'type'} eq 'reference')
5997 339 18 if (exists $$newrefkeys{$$objnode{'value'}})
6043 12 42 if ($$objnode{'type'} eq 'label') { }
8 34 elsif ($$objnode{'type'} eq 'dictionary') { }
6046 12 0 if (defined $new)
6057 24 10 if (defined $new and $new ne $key)
6094 0 0 if ($$objnode{'type'} eq 'string')
6098 0 0 if ($key =~ / \A regex[(](.*)[)] \z /msx) { }
6106 0 0 unless ($eval_result)
6110 0 0 if ($res and $$objnode{'objnum'})
6117 0 0 if ($$objnode{'value'} =~ s/ $key /$$changelist{$key}/gmsx and $$objnode{'objnum'})
6160 1 17 if (@in_array == 0) { }
6168 13 21 if (/ (\d*)-(\d*) /msx) { }
18 4 elsif ($_ >= $min and $_ <= $max) { }
6172 3 10 if ($aa eq '')
6176 3 10 if ($bb eq '')
6182 2 11 if $aa < $min and $bb < $min
6183 2 9 if $aa > $max and $bb > $max
6185 2 7 if ($aa < $min)
6189 0 9 if ($bb < $min)
6193 0 9 if ($aa > $max)
6197 2 7 if ($bb > $max)
6202 2 7 if ($aa > $bb) { }
6235 0 0 if (not defined $s or $s eq '') { }
0 0 elsif (length $s > 40) { }
6280 68 524 unless (exists $$self{'objcache'}{$key})