squat-uidlist.h revision 1caf757864e7734345660e7d190f84e42668a6f8
#ifndef SQUAT_UIDLIST_H
#define SQUAT_UIDLIST_H
struct squat_trie;
struct squat_uidlist_build_context;
struct squat_uidlist_rebuild_context;
struct squat_uidlist_file_header {
};
/*
uidlist file:
struct uidlist_header;
// size includes both prev_offset and uidlist
packed (size << 2) | packed_flags; // UIDLIST_PACKED_FLAG_*
[packed prev_offset;] // If UIDLIST_PACKED_FLAG_BEGINS_WITH_OFFSET is set
if (UIDLIST_PACKED_FLAG_BITMASK) {
packed base_uid; // first UID in uidlist
uint8_t bitmask[]; // first bit is base_uid+1
} else {
// FIXME: packed range
}
*/
#define UIDLIST_IS_SINGLETON(idx) \
struct squat_uidlist_build_context **ctx_r);
bool compress,
struct squat_uidlist_rebuild_context **ctx_r);
bool cancel);
unsigned int *count_r);
#endif