80 const void * tableKey)
109 #define htUnlink(_ht) \
110 ((hashTable)rpmioUnlinkPoolItem((rpmioItem)(_ht), __FUNCTION__, __FILE__, __LINE__))
118 hashTable
htLink ( hashTable ht)
120 #define htLink(_ht) \
121 ((hashTable)rpmioLinkPoolItem((rpmioItem)(_ht), __FUNCTION__, __FILE__, __LINE__))
129 hashTable
htFree( hashTable ht)
131 #define htFree(_ht) \
132 ((hashTable)rpmioFreePoolItem((rpmioItem)(_ht), __FUNCTION__, __FILE__, __LINE__))
int htHasEntry(hashTable ht, const void *key)
Check for key in hash table.
int(* hashEqualityType)(const void *key1, const void *key2)
Compare two hash table entries for equality.
const void ** htGetKeys(hashTable ht)
Retrieve keys from hash table.
int htGetEntry(hashTable ht, const void *key, const void *data, int *dataCount, const void *tableKey)
Retrieve item from hash table.
int hashEqualityString(const void *key1, const void *key2)
Compare two hash table entries for equality.
void htAddEntry(hashTable ht, const void *key, const void *data)
Add item to hash table.
struct hashTable_s * hashTable
rpmuint32_t hashFunctionString(rpmuint32_t h, const void *data, size_t size)
Return hash value of a string.
int
Save source and expand field into target.
hashTable htCreate(int numBuckets, size_t keySize, int freeData, hashFunctionType fn, hashEqualityType eq)
Create hash table.
rpmuint32_t(* hashFunctionType)(rpmuint32_t h, const void *data, size_t size)
Return hash value.