Skip to content

BitMagic v.7.13.4

Latest
Compare
Choose a tag to compare
@tlk00 tlk00 released this 04 May 12:51
  1. Improved str_sparse_vector<>::clear_all()  - added parameter to reset remap matrix by default, which is safer (less surprises for the user). Method signature changed, this may cause some minor incompatibility issues.



  2. New method bm::sparse_vector<>::get_unsigned_bits() - to extract partial value (only a few bits)

  3. Optimizations of bm::bvector<>::inc() (minor)



  4. Added bm::bvector<>::swap() - method to swap two bit positions - basis for implementing sort or shuffle algorithms on compressive memory structures

  5. Added bm::sparse_vector<>::swap() - to help implement swap of shuffle algorithms on succinct vectors

  6. Added new example strsvsample09 to showcase sort algorithm in compressive memory space.

  7. Optimization for bit-vector deserialization algorithm to avoid frequent reallocations of top-level memory table. Especially important for large 48/64-bit mode bit-vectors.

  8. optimizations of bm::bvector<>::import(), implemented memory reservation (important for large 48/64-bit imports).

  9. Fixed bug with collaborative XOR compression, causing debug level asserts and inability to decode compressed vectors.

Various code-cleanups to reduce warnings in different compilers, improves MSVC compatibility.

  10. Fixed bug in incorrect binary search in compressive string vector (bm::sparse_vector_scanner<>)

  11. Improved build system to better support Apple M2