Branch Coverage

blib/lib/XML/Bare.pm
Criterion Covered Total %
branch 79 322 24.5


line true false branch
35 41 2 if ($$self{'text'}) { }
36 0 41 if ($$self{'unsafe'}) { }
45 0 2 unless ($res)
57 10 33 unless wantarray
58 2 31 $$self{'simple'} ? :
88 0 0 if ($p{'text'})
99 0 33 if (defined $$self{'scheme'})
102 0 33 if (defined $$self{'xbs'})
109 0 33 if (not ref $res and $res < 0)
112 0 33 if (defined $$self{'xbso'})
115 0 0 if $cres
126 0 0 if (ref $scheme eq 'ARRAY') { }
129 0 0 unless $res
141 0 0 if substr($key, 0, 1) eq '_' or $key eq '_att' or $key eq 'comment'
142 0 0 if ($key eq 'value')
145 0 0 if ($regexp)
146 0 0 unless ($val =~ /^($regexp)$/)
155 0 0 unless ($ssub)
159 0 0 if (ref $sub eq 'HASH')
161 0 0 if $res
163 0 0 if (ref $sub eq 'ARRAY')
165 0 0 if (ref $asub eq 'ARRAY')
168 0 0 if ($$asub{'_t'})
170 0 0 if ($#$sub >= $max)
175 0 0 if ($#$sub + 1 < $min)
182 0 0 if $res
186 0 0 if (my $dem = $$scheme{'_demand'})
189 0 0 unless ($ck)
193 0 0 if (ref $ck eq 'ARRAY')
195 0 0 if $#$ck == -1
207 0 10 if (not ref $res and $res < 0)
217 1 0 unless $$node{'multi_' . $name}
218 1 0 unless $$node{$name}
228 0 0 unless $$node{'multi_' . $name}
229 0 0 unless $$node{$name}
234 0 0 unless $$anode{'_pos'}
239 0 0 if $$anode{'_pos'} > $opos
254 0 0 unless $node
259 0 0 if ($$one{$key}{'value'} eq $val)
274 0 1 if (/^_/ or ref $val eq 'HASH') { }
288 0 0 if ($ref eq 'ARRAY')
295 0 0 if ($ref eq 'HASH')
299 0 0 if $key eq 'comment' or $key eq 'value' or $key =~ /^_/
303 0 0 if ($cnt == 0)
314 0 0 if $name and $name =~ /^\_/
315 0 0 $name ? :
316 0 0 if ($ref eq 'ARRAY') { }
0 0 elsif ($ref eq 'HASH') { }
330 0 0 if ($node =~ /[<]/) { }
333 0 0 if ($name)
343 0 2 unless $$self{'xml'}
352 0 2 unless $len
362 0 2 if ($os eq 'MSWin32') { }
374 0 2 if ($cursize != $len)
381 0 2 if ($cursize != $len)
389 18 0 unless ($name)
402 0 0 if ($$self{'style'})
405 0 0 unless ($name)
422 0 0 if (ord $let == 10)
430 0 0 if ($$self{'offset'})
446 0 1 unless defined $node
447 0 1 unless $node = $$node{$name}
448 1 0 if ref $node eq 'HASH'
449 1 0 if (ref $node eq 'ARRAY')
454 0 1 unless defined $val
455 1 0 if ($$one{$key}{'value'} eq $val)
471 0 0 unless $ref
472 0 0 if ref $ref eq 'ARRAY'
479 0 0 $$_{$id} ? :
481 0 0 unless $$one{$id}
483 0 0 unless $short
485 0 0 if $key eq '_pos' or $key eq 'id'
488 0 0 if (not $cur) { }
491 0 0 if ($type eq 'HASH')
496 0 0 if (ref $add eq 'HASH') { }
513 0 0 if ($$ob{'save'})
514 0 0 if "$$ob{'save'}" ne '1'
526 8 0 unless ($ops{'keeproot'})
529 8 0 if $first
544 0 0 if substr($key, 0, 1) eq '_' or $key eq '_att' or $key eq 'comment'
545 0 0 if ($key eq 'value')
547 0 0 if $val =~ /^\W*$/
552 0 0 if ($key =~ /([a-z_]+)([^a-z_]+)/) { }
557 0 0 if ($t eq '+') { }
0 0 elsif ($t eq '*') { }
0 0 elsif ($t eq '?') { }
0 0 elsif ($t eq '@') { }
0 0 elsif ($t =~ /\{([0-9]+),([0-9]+)\}/) { }
580 0 0 if (ref $sub eq 'HASH')
586 0 0 if (ref $sub eq 'ARRAY')
595 0 0 if $min
600 0 0 if (ref $sub eq 'HASH')
606 0 0 if (ref $sub eq 'ARRAY')
618 0 0 if (@demand)
626 0 1 if (ref $arr eq 'ARRAY') { }
628 0 0 if eval $cond
632 1 0 if eval $cond
645 0 0 if eval $cond
653 0 0 $_[0] ? :
658 18 78 unless $level
659 54 42 if $level <= 2
663 0 96 unless $objs
670 5 455 if ref $oba eq 'ARRAY'
671 6 454 if ref $obb eq 'ARRAY'
672 102 358 if (ref $oba eq 'HASH')
673 111 349 if (ref $obb eq 'HASH')
679 4 361 if ($type eq 'ARRAY') { }
80 281 elsif ($type eq 'HASH' and not $i =~ /^_/) { }
683 0 3 unless ($a)
684 0 3 unless ($b)
685 3 0 if (ref $a eq 'HASH' and ref $b eq 'HASH')
688 0 3 unless ($posa)
689 0 3 unless ($posb)
700 9 71 if ($$obj{'_att'}) { }
701 9 0 unless $i =~ /^_/
709 3 278 if ($i eq 'comment') { }
42 236 elsif ($i eq 'value') { }
236 0 elsif ($i =~ /^_/) { }
711 35 7 if ($level > 1)
712 1 34 if ($obj and $obj =~ /[<>&;]/) { }
713 27 7 if $obj =~ /\S/
720 44 52 $imm ? :
721 44 52 $imm ? :
722 96 0 if (substr($name, 0, 1) ne '_')
723 60 36 if ($name)
724 47 13 if ($xml) { }
731 60 36 if $level > 1
753 0 0 unless $level
754 0 0 if $level == 1
758 0 0 unless $objs
764 0 0 if ref $oba eq 'ARRAY'
765 0 0 if ref $obb eq 'ARRAY'
766 0 0 if (ref $oba eq 'HASH')
767 0 0 if (ref $obb eq 'HASH')
771 0 0 if ($$objs{'_cdata'})
785 0 0 if ($type eq 'ARRAY') { }
0 0 elsif ($type eq 'HASH' and not $i =~ /^_/) { }
789 0 0 unless ($a)
790 0 0 unless ($b)
791 0 0 if (ref $a eq 'HASH' and ref $b eq 'HASH')
794 0 0 unless ($posa)
795 0 0 unless ($posb)
804 0 0 if ($$obj{'_att'}) { }
807 0 0 if ($val eq '') { }
808 0 0 unless $i =~ /^_/
811 0 0 unless $i =~ /^_/
820 0 0 if ($i eq 'comment') { }
0 0 elsif ($i eq 'value') { }
0 0 elsif ($i =~ /^_/) { }
822 0 0 if ($level > 1)
823 0 0 if ($obj and $obj =~ /[<>&;]/ and not $$objs{'_cdata'}) { }
824 0 0 if $obj =~ /\S/
831 0 0 $imm ? :
832 0 0 if (substr($name, 0, 1) ne '_')
833 0 0 if ($name)
834 0 0 if ($imm) { }
835 0 0 if ($xml =~ /\S/) { }
843 0 0 if ($xml =~ /\S/) { }
849 0 0 if $$objs{'_br'}
850 0 0 if ($$objs{'_note'})
858 0 0 if $level