May as well keep the proffered interface as small as possible so the
implementation can make greater assumptions knowing some internal
details aren't available.
void bvector_set (bvector_t, size_t);
unsigned int bvector_at (bvector_t, size_t);
const unsigned long *bvector_bits (bvector_t);
void bvector_set (bvector_t, size_t);
unsigned int bvector_at (bvector_t, size_t);
const unsigned long *bvector_bits (bvector_t);
-size_t bvector_maxsize (bvector_t);
typedef struct svector *svector_t;
typedef struct svector *svector_t;
int ivector_push_back (ivector_t, int);
int ivector_at (ivector_t, size_t);
int *ivector_atp (ivector_t, size_t);
int ivector_push_back (ivector_t, int);
int ivector_at (ivector_t, size_t);
int *ivector_atp (ivector_t, size_t);
-size_t ivector_size (ivector_t);
/*
* Primary structure of folder/message information
/*
* Primary structure of folder/message information
-size_t
-bvector_maxsize (bvector_t vec) {
- return vec->maxsize;
-}
-
struct svector {
char **strs;
struct svector {
char **strs;
-size_t
-ivector_size (ivector_t vec) {
- return vec->size;
-}
-
static void
ivector_resize (ivector_t vec, size_t maxsize) {
size_t old_maxsize = vec->maxsize;
static void
ivector_resize (ivector_t vec, size_t maxsize) {
size_t old_maxsize = vec->maxsize;