Expand description
§Simple succinct data structures
These structures are comparable to those in SDSL in performance and scalability. As the focus is on (relative) simplicity, ugly low-level optimizations are generally avoided.
§Notes
- This crate is designed for the x86_64 architecture with the BMI2 instruction set (Intel Haswell / AMD Excavator or later). Some operations may be slow without the POPCNT, LZCNT, TZCNT, and PDEP instructions.
- 64-bit ARM is also supported.
- Unix-like operating system is required for
mmap(). - Things may not work if the system is not little-endian or if
usizeis not 64-bit.
Modules§
- bit_
vector - An immutable bit array supporting rank, select, and related queries.
- bits
- Low-level functions for bit manipulation.
- int_
vector - A bit-packed integer vector storing fixed-width integers.
- ops
- Operations common to various vectors.
- raw_
vector - The basic vector implementing the low-level functionality used by other vectors in the crate.
- rl_
vector - A run-length encoded bitvector supporting rank, select, and related queries.
- serialize
- Simple serialization interface.
- sparse_
vector - An Elias-Fano encoded array supporting rank, select, and related queries.
- support
- Utility functions, support structures, etc.
- wavelet_
matrix - An immutable integer vector supporting rank/select-type queries.