cbits 0.1.1
High-performance BitVector C-API & Python binding
Loading...
Searching...
No Matches
Public Attributes | List of all members
BitVector Struct Reference

Packed array of bits with support for rank/select operations. More...

#include <bitvector.h>

Public Attributes

uint64_t * data
 
size_t n_bits
 
size_t n_words
 
size_t * super_rank
 
uint16_t * block_rank
 
bool rank_dirty
 

Detailed Description

Packed array of bits with support for rank/select operations.

Stores bits in an aligned array of 64-bit words, and maintains auxiliary superblock and block rank tables for constant-time rank queries.

Member Data Documentation

◆ block_rank

uint16_t* BitVector::block_rank

Prefix-sum of popcounts at block granularity.

◆ data

uint64_t* BitVector::data

Aligned array of 64-bit words storing bits.

◆ n_bits

size_t BitVector::n_bits

Total number of bits.

◆ n_words

size_t BitVector::n_words

Number of 64-bit words allocated in data.

◆ rank_dirty

bool BitVector::rank_dirty

Flag indicating that rank tables need rebuilding.

◆ super_rank

size_t* BitVector::super_rank

Prefix-sum of popcounts at superblock granularity.


The documentation for this struct was generated from the following file: