| 
    bglibs
    
   | 
 
#include <ghash.h>
Data Fields | |
| void ** | table | 
| unsigned | count | 
| unsigned | size | 
| unsigned long | keysize | 
| unsigned long | entrysize | 
| adt_hash_fn * | hashfn | 
| adt_cmp_fn * | keycmp | 
| adt_copy_fn * | keycopy | 
| adt_copy_fn * | datacopy | 
| adt_free_fn * | keyfree | 
| adt_free_fn * | datafree | 
The core generic hash table structure.
| unsigned ghash::count | 
The count is the number of items stored in the table.
Referenced by ghash_add(), ghash_init(), ghash_insert(), ghash_rebuild(), and ghash_remove().
| adt_copy_fn* ghash::datacopy | 
Pointer to the function which copies a data item.
Referenced by ghash_add(), ghash_init(), and ghash_set().
| adt_free_fn* ghash::datafree | 
Pointer to the function which fressa a data item.
Referenced by ghash_free(), ghash_init(), and ghash_remove().
| unsigned long ghash::entrysize | 
The total size, in bytes, of an entry (key and data).
Referenced by ghash_add(), ghash_init(), and ghash_set().
| adt_hash_fn* ghash::hashfn | 
Pointer to the function which produces a hash of a key.
Referenced by ghash_add(), ghash_find(), ghash_init(), and ghash_rehash().
| adt_cmp_fn* ghash::keycmp | 
Pointer to the function which compares two keys.
Referenced by ghash_find(), and ghash_init().
| adt_copy_fn* ghash::keycopy | 
Pointer to the function which copies a key.
Referenced by ghash_add(), and ghash_init().
| adt_free_fn* ghash::keyfree | 
Pointer to the function which frees a key.
Referenced by ghash_add(), ghash_free(), ghash_init(), and ghash_remove().
| unsigned long ghash::keysize | 
The size, in bytes, of the key structure in each table entry.
Referenced by ghash_add(), ghash_free(), ghash_init(), ghash_remove(), and ghash_set().
| unsigned ghash::size | 
The size is the number of slots available in the table.
Referenced by ghash_find(), ghash_foreach(), ghash_free(), ghash_init(), ghash_insert(), ghash_rebuild(), ghash_rehash(), ghash_remove(), ghash_search(), and ghashiter_valid().
| void** ghash::table | 
The hash table itself is an array of pointers, the actual type of which is dependant on the declaration of the table.
Referenced by ghash_find(), ghash_foreach(), ghash_free(), ghash_init(), ghash_insert(), ghash_rebuild(), ghash_rehash(), ghash_remove(), ghash_search(), and ghashiter_valid().
 1.8.13