Branch Coverage

blib/lib/Algorithm/BitVector.pm
Criterion Covered Total %
branch 32 218 14.6


line true false branch
50 0 0 if (not $num_bytes_read) { }
51 0 0 if (CORE::length $bitstring < $blocksize)
66 0 0 if ($num_bytes_read) { }
79 0 3 if _check_for_illegal_params(@params) == 0
92 0 3 if ($$self{'filename'}) { }
1 2 elsif (defined $$self{'intVal'}) { }
1 1 elsif (defined $$self{'size'}) { }
0 1 elsif ($$self{'bitlist'}) { }
0 1 elsif (defined $$self{'bitstring'}) { }
1 0 elsif (defined $$self{'textstring'}) { }
0 0 elsif (defined $$self{'hexstring'}) { }
93 0 0 if $$self{'intVal'} or $$self{'size'} or $$self{'bitlist'} or $$self{'bitstring'} or $$self{'hexstring'} or $$self{'textstring'}
97 0 0 unless open $$self{'FILEIN'}, "< $$self{'filename'}"
102 0 1 if $$self{'filename'} or $$self{'bitlist'} or $$self{'bitstring'} or $$self{'hexstring'} or $$self{'textstring'}
106 0 1 if ($$self{'intVal'} == 0 and not defined $$self{'size'}) { }
111 0 1 if (ref $$self{'intVal'} eq 'Math::BigInt') { }
119 0 1 if (defined $$self{'size'}) { }
120 0 0 if $$self{'size'} < CORE::length $bitlist_str
134 0 1 if $$self{'filename'} or $$self{'intVal'} or $$self{'bitlist'} or $$self{'bitstring'} or $$self{'hexstring'} or $$self{'textstring'}
142 0 0 if $$self{'filename'} or $$self{'intVal'} or $$self{'size'} or $$self{'bitstring'} or $$self{'hexstring'} or $$self{'textstring'}
148 0 0 if $$self{'filename'} or $$self{'intVal'} or $$self{'size'} or $$self{'bitlist'} or $$self{'hexstring'} or $$self{'textstring'}
156 0 1 if $$self{'filename'} or $$self{'intVal'} or $$self{'size'} or $$self{'bitlist'} or $$self{'hexstring'} or $$self{'bitstring'}
160 0 5 CORE::length $_ == 8 ? :
167 0 0 if $$self{'filename'} or $$self{'intVal'} or $$self{'size'} or $$self{'bitlist'} or $$self{'textstring'} or $$self{'bitstring'}
171 0 0 CORE::length $_ == 4 ? :
192 0 60 unless $val == 0 or $val == 1
193 0 60 if $posn >= $$self{'size'} or $posn < -$$self{'size'}
194 0 60 if $posn < 0
198 25 35 if (($cv >> $shift & 1) != $val)
210 60 5 unless (ref $pos eq 'ARRAY')
211 0 60 if $pos >= $$self{'size'} or $pos < -$$self{'size'}
212 0 60 if $pos < 0
230 0 0 unless UNIVERSAL::isa($bv1, 'Algorithm::BitVector') and UNIVERSAL::isa($bv2, 'Algorithm::BitVector')
240 0 0 unless UNIVERSAL::isa($bv1, 'Algorithm::BitVector') and UNIVERSAL::isa($bv2, 'Algorithm::BitVector')
262 0 0 unless UNIVERSAL::isa($self, 'Algorithm::BitVector')
278 0 0 unless UNIVERSAL::isa($bv1, 'Algorithm::BitVector') and UNIVERSAL::isa($bv2, 'Algorithm::BitVector')
283 0 0 if ($$bv1{'size'} < $$bv2{'size'}) { }
0 0 elsif ($$bv1{'size'} > $$bv2{'size'}) { }
316 0 0 unless UNIVERSAL::isa($bv1, 'Algorithm::BitVector') and UNIVERSAL::isa($bv2, 'Algorithm::BitVector')
321 0 0 if ($$bv1{'size'} < $$bv2{'size'}) { }
0 0 elsif ($$bv1{'size'} > $$bv2{'size'}) { }
345 0 0 unless UNIVERSAL::isa($bv1, 'Algorithm::BitVector') and UNIVERSAL::isa($bv2, 'Algorithm::BitVector')
350 0 0 if ($$bv1{'size'} < $$bv2{'size'}) { }
0 0 elsif ($$bv1{'size'} > $$bv2{'size'}) { }
372 0 0 unless $$self{'_iter_called'}
391 0 0 if ($$self[1] >= $$bitvec{'size'})
412 0 0 unless UNIVERSAL::isa($self, 'Algorithm::BitVector')
415 0 0 if $$self{'size'} % 2
433 0 0 unless UNIVERSAL::isa($self, 'Algorithm::BitVector')
437 0 0 if max(@$permute_list) > $$self{'size'} - 1
452 0 0 unless UNIVERSAL::isa($self, 'Algorithm::BitVector')
456 0 0 if max(@$permute_list) > $$self{'size'} - 1
458 0 0 unless $$self{'size'} == @$permute_list
472 0 0 unless UNIVERSAL::isa($self, 'Algorithm::BitVector')
479 0 0 unless $$self{'FILEOUT'}
480 0 0 if $$self{'size'} % 8
494 0 0 unless UNIVERSAL::isa($self, 'Algorithm::BitVector')
497 0 0 unless $$self{'FILEIN'}
507 0 1 unless UNIVERSAL::isa($self, 'Algorithm::BitVector')
511 0 1 if (defined $$self{'intVal'} and ref $$self{'intVal'} eq 'Math::BigInt') { }
528 0 1 unless UNIVERSAL::isa($self, 'Algorithm::BitVector')
531 0 1 if $$self{'size'} % 8
546 0 0 unless UNIVERSAL::isa($self, 'Algorithm::BitVector')
549 0 0 if $$self{'size'} % 4
564 0 0 unless UNIVERSAL::isa($self, 'Algorithm::BitVector')
569 0 0 unless $$self{'filename'}
570 0 0 if $blocksize % 8
572 0 0 if (CORE::length $bitstr == 0) { }
584 0 0 unless $$self{'size'}
585 0 0 if $n < 0
596 0 0 unless $$self{'size'}
597 0 0 if $n < 0
661 0 0 unless $val == 0 or $val == 1
690 0 0 if $intval == 0
705 0 0 if int $self == 0 and int $other == 0
707 0 0 if $$self{'size'} != $$other{'size'}
718 0 0 if $$self{'size'} != $$other{'size'}
727 0 0 if $$self{'size'} != $$other{'size'}
740 0 0 unless $from_index >= 0
749 0 0 if ($h) { }
753 0 0 if $h & $m
772 0 0 unless $self->get_bit($position)
781 0 0 if int $self == 0
783 0 0 if int $bv == 0
790 0 0 if $self->count_bits_sparse == 1
812 0 0 if $a < $b
834 0 0 if ($num != 1) { }
921 0 0 if ($enum[$i + 1])
937 0 0 if $$mod{'size'} > $n + 1
943 0 0 if ($remainder->next_set_bit(0) == -1) { }
948 0 0 if ($remainder_highest_power < $mod_highest_power or int $remainder == 0) { }
959 0 0 if ($$remainder{'size'} > $n)
998 0 0 if (int $num != 1) { }
1011 0 0 if $$self{'size'} == 0
1015 0 0 if ($previous_bit == 0) { }
1023 0 0 if ($bit == 0 and $previous_bit == 0) { }
0 0 elsif ($bit == 1 and $previous_bit == 0) { }
0 0 elsif ($bit == 0 and $previous_bit == 1) { }
1045 0 0 if $p > 2147483647
1049 0 0 if $p == 1
1052 0 0 if $a == $p
1054 0 0 if any sub { $p % $_ == 0; } , @probes
1062 0 0 if $a_raised_to_q == 1 or $a_raised_to_q == $p - 1
1067 0 0 if ($a_raised_to_jq == $p - 1)
1072 0 0 unless $primeflag
1087 0 0 if any sub { $_ > 268435455; } , int $base, int $exponent, int $mod
1092 0 0 if int $b & 1
1130 3 9 if ($param eq $legal)
1135 0 3 if $found_match_flag == 0