This is a fork of the Sux library, which is a C++ library for succinct data structures. The original library can be found at this link.
This fork adapts the Elias-Fano data structure for its use in Grafite as follows:
- adding a new constructor for Elias-Fano data structures that takes as input a pair of iterators to the ordered positions in the bitvector that are set to 1
- remove the
select
methods from theEliasFano
class, since they are not needed for our use of the data structure - add a new method
rankv2
to theEliasFano
class, which implements binary search of elements in a bucket - clean up the code and remove unused methods
Sux is licensed exactly like libstdc++
(GPLv3 + GCC Runtime Library
Exception), which essentially means you can use it everywhere, exactly
like libstdc++
.