D-Bus: DBusHashTable Struct Reference

D-Bus 1.10.10

- Main Page
- Related Pages
- Modules
- Data Structures
- Files

- Data Structures
- Data Fields

Data Fields
DBusHashTable Struct Reference
D-Bus secret internal implementation details » Hash table implementation details

Internals of DBusHashTable. More...

## Data Fields
int | refcount
| Reference count.
DBusHashEntry ** | buckets
| Pointer to bucket array. More...
DBusHashEntry * | static_buckets [DBUS_SMALL_HASH_TABLE]
| Bucket array used for small tables (to avoid mallocs and frees).
int | n_buckets
| Total number of buckets allocated at **buckets.
int | n_entries
| Total number of entries present in table.
int | hi_rebuild_size
| Enlarge table when n_entries gets to be this large.
int | lo_rebuild_size
| Shrink table when n_entries gets below this.
int | down_shift
| Shift count used in hashing function. More...
int | mask
| Mask value used in hashing function.
DBusHashType | key_type
| Type of keys used in this table.
DBusFindEntryFunction | find_function
| Function for finding entries.
DBusFreeFunction | free_key_function
| Function to free keys.
DBusFreeFunction | free_value_function
| Function to free values.
DBusMemPool * | entry_pool
| Memory pool for hash entries.

## Detailed Description

Internals of DBusHashTable.

Hash table internals. Hash tables are opaque objects, they must be used via accessor functions.

Definition at line 168 of file dbus-hash.c.

## Field Documentation

DBusHashEntry** DBusHashTable::buckets

Pointer to bucket array.

Each element points to first entry in bucket's hash chain, or NULL.

Definition at line 171 of file dbus-hash.c.

Referenced by _dbus_hash_iter_lookup(), _dbus_hash_iter_next(), _dbus_hash_table_new(), and _dbus_hash_table_unref().

int DBusHashTable::down_shift

Shift count used in hashing function.

Designed to use high- order bits of randomized keys.

Definition at line 191 of file dbus-hash.c.

Referenced by _dbus_hash_table_new().

The documentation for this struct was generated from the following file:

- dbus-hash.c