Simple data structures / objects in plain C Snapshot
Classes | Modules | Typedefs | Variables
HASH_entry

Entry in bucket hash table, add to structure as member in order to make structure storable in hash table. Each hash table entry has to embed a VBUCKETHASH_Entry as part of its structure. The user of this hash thing can please key/value wherever he likes. More...

Collaboration diagram for HASH_entry:

Classes

struct  HASH_Entry

Modules

 HASH
 

Hash table that is implemented as bucket hash table.


Typedefs

typedef HASH_VALUE(* HASH_FUNCTION )(void *data, ssize_t length)
typedef int(* HASH_COMPARE_KEY )(HASH_Entry *, void *key, ssize_t key_size)
typedef int(* HASH_VISITOR )(HASH_Entry *, void *context)

Variables

HASH_VALUE HASH_Entry::hash
int HASH::ismultimap
size_t HASH::buckets_size
size_t HASH::elmcount
size_t HASH::resize_threshold
int HASH::mult_load_factor
int HASH::div_load_factor
HASH_FUNCTION HASH::hash_func
HASH_COMPARE_KEY HASH::compare_key

Detailed Description

Entry in bucket hash table, add to structure as member in order to make structure storable in hash table. Each hash table entry has to embed a VBUCKETHASH_Entry as part of its structure. The user of this hash thing can please key/value wherever he likes.


Typedef Documentation

typedef int(* HASH_COMPARE_KEY)(HASH_Entry *, void *key, ssize_t key_size)

Compare argument key with hash key embedded in entry.

Definition at line 37 of file bhash.h.

typedef HASH_VALUE(* HASH_FUNCTION)(void *data, ssize_t length)

compute hash value

Definition at line 31 of file bhash.h.

typedef int(* HASH_VISITOR)(HASH_Entry *, void *context)

Visit a hash entry.

Definition at line 42 of file bhash.h.


Variable Documentation

Definition at line 62 of file bhash.h.

Definition at line 70 of file bhash.h.

Definition at line 66 of file bhash.h.

Definition at line 63 of file bhash.h.

Definition at line 22 of file bhash.h.

Definition at line 69 of file bhash.h.

Definition at line 61 of file bhash.h.

Definition at line 66 of file bhash.h.

Definition at line 64 of file bhash.h.