8 # ======================================================================
9 # $value = $vector->Chunk_Read($bits,$offset);
10 # $vector->Chunk_Store($bits,$offset,$value);
11 # @values = $vector->Chunk_List_Read($bits);
12 # $vector->Chunk_List_Store($bits,@values);
13 # ======================================================================
17 $longbits = Bit::Vector::Long_Bits();
19 print "1..", 3*$longbits, "\n";
21 $set = Bit::Vector->new($limit+1);
22 $tst = $set->Shadow();
27 for ( $j = 4; $j <= $limit; $j += 2 ) { $set->Bit_Off($j); }
28 for ( $i = 3; ($j = $i * $i) <= $limit; $i += 2 )
30 for ( ; $j <= $limit; $j += $i ) { $set->Bit_Off($j); }
35 for ( $bits = 1; $bits <= $longbits; $bits++ )
39 @primes = $set->Chunk_List_Read($bits);
40 $tst->Chunk_List_Store($bits,@primes);
41 if ($set->equal($tst))
42 {print "ok $n\n";} else {print "not ok $n\n";}
47 for ( $i = 0, $offset = 0; $offset <= $limit; $i++, $offset += $bits )
49 $chunks[$i] = $set->Chunk_Read($bits,$offset);
50 if ($primes[$i] != $chunks[$i]) { $ok = 0; }
53 {print "ok $n\n";} else {print "not ok $n\n";}
55 for ( $i = 0; $i <= $#chunks; $i++ )
57 $tst->Chunk_Store($bits,$i*$bits,$chunks[$i]);
59 if ($set->equal($tst))
60 {print "ok $n\n";} else {print "not ok $n\n";}