Hash table that keeps LRU list of entries. More...
#include <lruhash.h>
Data Fields | |
| lock_quick_type | lock |
| lock for exclusive access, to the lookup array | |
| lruhash_sizefunc_type | sizefunc |
| the size function for entries in this table | |
| lruhash_compfunc_type | compfunc |
| the compare function for entries in this table. | |
| lruhash_delkeyfunc_type | delkeyfunc |
| how to delete keys. | |
| lruhash_deldatafunc_type | deldatafunc |
| how to delete data. | |
| lruhash_markdelfunc_type | markdelfunc |
| how to mark a key pending deletion | |
| void * | cb_arg |
| user argument for user functions | |
| size_t | size |
| the size of the lookup array | |
| int | size_mask |
| size bitmask - since size is a power of 2 | |
| struct lruhash_bin * | array |
| lookup array of bins | |
| struct lruhash_entry * | lru_start |
| the lru list, start and end, noncyclical double linked list. | |
| struct lruhash_entry * | lru_end |
| lru list end item (least recently used) | |
| size_t | num |
| the number of entries in the hash table. | |
| size_t | space_used |
| the amount of space used, roughly the number of bytes in use. | |
| size_t | space_max |
| the amount of space the hash table is maximally allowed to use. | |
| size_t | max_collisions |
| the maximum collisions were detected during the lruhash_insert operations. | |
Hash table that keeps LRU list of entries.