Branch Coverage

blib/lib/Math/PlanePath/LCornerTree.pm
Criterion Covered Total %
branch 61 342 17.8


line true false branch
282 0 0 $any_num_children_2{$self->{'parts'}} ? :
311 0 13 unless (exists $parts_to_numroots{$parts})
330 0 0 if ($n < 0)
331 0 0 if (is_infinite($n))
336 0 0 if ($n != $int)
347 0 0 if (is_infinite($n))
351 0 0 if ($parts eq 'diagonal-1')
352 0 0 if ($n <= 3)
374 0 0 if ($parts eq 'wedge') { }
0 0 elsif ($parts eq 'wedge+1') { }
0 0 elsif ($parts eq 'diagonal') { }
0 0 elsif ($parts eq 'diagonal-1') { }
0 0 elsif ((my $numroots = $parts_to_numroots{$parts}) > 1) { }
377 0 0 if ($n < $noct) { }
387 0 0 if ($n < $noct) { }
401 0 0 if ($n < $noct) { }
0 0 elsif ($n >= $nwidth - $noct) { }
418 0 0 if ($n < $noct) { }
0 0 elsif ($n >= $nwidth - $noct) { }
444 0 0 if ($parts eq '3')
445 0 0 if ($quad == 1)
446 0 0 if ($quad == 2)
450 0 0 if ($parts eq 'octant_up') { }
0 0 elsif ($parts eq 'octant_up+1') { }
468 0 0 if $_
485 0 0 if ($quad & 1)
488 0 0 if ($quad & 2)
511 0 0 if ($parts eq '3') { }
0 0 elsif ($parts eq 'octant') { }
0 0 elsif ($parts eq 'octant+1') { }
0 0 elsif ($parts eq 'octant_up') { }
0 0 elsif ($parts eq 'octant_up+1') { }
0 0 elsif ($parts eq 'wedge') { }
0 0 elsif ($parts eq 'wedge+1') { }
0 0 elsif ($parts eq 'diagonal') { }
0 0 elsif ($parts eq 'diagonal-1') { }
512 0 0 if ($x < 0) { }
513 0 0 if ($y < 0)
519 0 0 if ($y < 0)
526 0 0 if ($y < 0 or $y > $x)
528 0 0 if ($x < 0 or $y < 0 or $y > $x + 1)
531 0 0 if ($x < 0 or $x > $y)
533 0 0 if ($y < 0 or $x < 0 or $x > $y + 1)
536 0 0 if ($x < -1 - $y or $x > $y)
537 0 0 if ($x < 0)
542 0 0 if ($y < 0 or $x < -2 - $y or $x > $y + 1)
543 0 0 if ($x < 0)
549 0 0 if ($x < -1 - $y)
550 0 0 if ($y < 0) { }
0 0 elsif ($x < 0) { }
563 0 0 if ($x == 0 and $y == 0)
566 0 0 if ($x < -$y)
567 0 0 if ($y <= 0) { }
0 0 elsif ($x <= 0) { }
584 0 0 if ($y < 0)
585 0 0 if ($parts ne '4')
593 0 0 if ($x < 0)
594 0 0 if ($parts eq '1')
604 0 0 if (is_infinite($x))
607 0 0 if (is_infinite($y))
630 0 0 $x >= $len || $y >= $len ? :
0 0 if ($depthbits[$i] = $x >= $len || $y >= $len ? 1 : 0)
633 0 0 if ($y < $len) { }
0 0 elsif ($x >= $len) { }
658 0 0 if ($quad)
663 0 0 if ($parts eq 'octant_up' or $parts eq 'octant_up+1' or $parts eq 'wedge' or $parts eq 'wedge+1' or $parts eq 'diagonal' or $parts eq 'diagonal-1')
670 0 0 if ($parts eq 'diagonal-1')
671 0 0 if ($depth)
674 0 0 if ($parts eq 'octant_up+1') { }
0 0 elsif ($parts eq 'wedge+1') { }
675 0 0 if ($depth)
677 0 0 if ($depth)
699 0 0 if $x1 > $x2
700 0 0 if $y1 > $y2
704 0 0 if ($parts eq 'octant') { }
0 0 elsif ($parts eq 'octant+1') { }
0 0 elsif ($parts eq 'octant_up') { }
0 0 elsif ($parts eq 'octant_up+1') { }
0 0 elsif ($parts eq 'wedge') { }
0 0 elsif ($parts eq 'wedge+1') { }
705 0 0 if ($y2 < 0 or $x2 < $y1)
708 0 0 if ($x2 < 0 or $y2 < 0 or $y1 > $x2 + 1)
712 0 0 if ($x2 < 0 or $y2 < $x1)
715 0 0 if ($x2 < 0 or $y2 < 0 or $x1 > $y2 + 1)
719 0 0 if ($x2 < -1 - $y2 or $x1 > $y2)
722 0 0 if ($x2 < -2 - $y2 or $x1 > $y2 + 1)
727 0 0 if ($parts eq 'diagonal') { }
0 0 elsif ($parts eq 'diagonal-1') { }
0 0 elsif ($parts eq '1') { }
728 0 0 if ($x2 < -1 - $y2)
731 0 0 if ($x2 < -$y2)
734 0 0 if ($x2 < 0 or $y2 < 0)
740 0 0 if ($parts eq '2') { }
741 0 0 if ($y2 < 0)
746 0 0 if ($parts eq '3')
747 0 0 if ($x2 < 0 and $y2 < 0)
756 0 0 if ($parts eq 'diagonal-1')
778 0 62 if ($depth < 0)
779 0 62 if (is_infinite($depth))
782 10 52 if ($parts eq 'diagonal-1')
783 2 8 if ($depth <= 1)
795 86 55 if ($bit)
801 13 47 if ($parts eq 'octant' or $parts eq 'octant_up') { }
0 47 elsif ($parts eq 'octant+1' or $parts eq 'octant_up+1') { }
9 38 elsif ($parts eq 'wedge') { }
0 38 elsif ($parts eq 'wedge+1') { }
9 29 elsif ($parts eq 'diagonal') { }
8 21 elsif ($parts eq 'diagonal-1') { }
805 0 0 if ($depth)
810 0 0 if ($depth)
826 0 158 if ($n < 0)
828 0 158 if (is_infinite($n))
832 19 139 if ($self->{'parts'} eq 'diagonal-1')
833 2 17 if ($n == 0)
838 17 139 if ($self->{'parts'} eq 'diagonal-1')
863 18 138 if ($n < $numroots)
870 32 106 if ($parts eq 'octant' or $parts eq 'octant_up') { }
0 106 elsif ($parts eq 'octant+1' or $parts eq 'octant_up+1') { }
28 78 elsif ($parts eq 'wedge') { }
0 78 elsif ($parts eq 'wedge+1') { }
15 63 elsif ($parts eq 'diagonal') { }
17 46 elsif ($parts eq 'diagonal-1') { }
892 2 15 if ($n <= 3)
915 109 238 if ($parts eq 'wedge' or $parts eq 'diagonal') { }
0 238 elsif ($parts eq 'wedge+1') { }
48 190 elsif ($parts eq 'diagonal-1') { }
84 106 elsif ($nhalf) { }
923 0 84 if ($parts eq 'octant+1' or $parts eq 'octant_up+1')
931 214 133 if ($n >= $ncmp) { }
940 136 211 unless $bitpos >= 0
954 43 93 if ($parts eq 'wedge' or $parts eq 'diagonal') { }
0 93 elsif ($parts eq 'wedge+1') { }
15 78 elsif ($parts eq 'diagonal-1') { }
0 78 elsif ($parts eq 'octant+1' or $parts eq 'octant_up+1') { }
32 46 elsif ($nhalf) { }
978 0 0 if ($n < 0)
985 0 0 if (defined(my $n_surround = $self->xy_to_n($x + $surround8_dx[$i], $y + $surround8_dy[$i])))
988 0 0 if ($n_surround > $n)
991 0 0 if (defined $n_parent and $n_parent == $n)
1007 0 0 if (not defined $want_depth or ($want_depth -= 1) < 0)
1014 0 0 if (defined(my $n_surround = $self->xy_to_n($x + $surround8_dx[$i], $y + $surround8_dy[$i])))
1019 0 0 if ($depth_surround == $want_depth)
1032 0 0 if ($n < 0)
1033 0 0 if (is_infinite($n))
1039 0 0 if ($parts eq 'octant+1') { }
0 0 elsif ($parts eq 'octant_up') { }
0 0 elsif ($parts eq 'octant_up+1') { }
0 0 elsif ($parts eq 'wedge') { }
0 0 elsif ($parts eq 'wedge+1') { }
0 0 elsif ($parts eq 'diagonal') { }
0 0 elsif ($parts eq 'diagonal-1') { }
0 0 elsif ((my $numroots = $parts_to_numroots{$parts}) > 1) { }
1040 0 0 if ($ndepth > 0 and $n == $nwidth - 1)
1048 0 0 if ($n == 0)
1049 0 0 $ndepth == 0 ? :
1058 0 0 if ($n < $noct) { }
1065 0 0 if ($ndepth > 0 and $n == 0 || $n == $nwidth - 1)
1070 0 0 if ($n < $noct) { }
1079 0 0 if ($n < $noct) { }
0 0 elsif ($n >= $nwidth - $noct) { }
1089 0 0 if (@$depthbits < 2)
1093 0 0 if ($n == 0 or $n == $nwidth - 1)
1098 0 0 if ($n < $noct) { }
0 0 elsif ($n >= $nwidth - $noct) { }
1119 0 0 unless ($depthbits->[$i] ^= 1)
1120 0 0 if (_divrem_mutate($n, 3) != 1)
1132 0 0 if (ref $n and $n->isa('Math::BigInt'))
1134 0 0 if (not ref $d or $d < 1000000)
1150 0 0 if (ref $_[0] and $_[0]->isa('Math::BigInt')) { }
1152 0 0 if (not ref $d or $d < 1000000)
1172 0 0 unless (defined $depth)