ref: 586508d8b8b602bc87b8b7ed5d21c68d522d9e78
dir: /src/bitvector.h/
uint32_t *bitvector_resize(uint32_t *b, uint64_t oldsz, uint64_t newsz, bool zero); #define bitvector_new(n, initzero) bitvector_resize(nil, 0, (n), (initzero)) #define bitvector_nwords(nbits) (((uint64_t)(nbits)+31)>>5) #define bitvector_get(b, n) (b[(n)>>5] & (1U<<((n)&31))) #define bitvector_set(b, n) do{ \ b[(n)>>5] |= 1U<<((n)&31); \ }while(0) #define bitvector_reset(b, n) do{ \ b[(n)>>5] &= ~(1U<<((n)&31)); \ }while(0)