Lines Matching refs:hashlin
40 void ucl_hash_destroy (ucl_hash_t* hashlin, ucl_hash_free_func *func) in ucl_hash_destroy() argument
45 HASH_ITER (hh, hashlin->buckets, elt, tmp) { in ucl_hash_destroy()
46 HASH_DELETE (hh, hashlin->buckets, elt); in ucl_hash_destroy()
55 UCL_FREE (sizeof (ucl_hash_t), hashlin); in ucl_hash_destroy()
59 ucl_hash_insert (ucl_hash_t* hashlin, const ucl_object_t *obj, in ucl_hash_insert() argument
66 HASH_ADD_KEYPTR (hh, hashlin->buckets, key, keylen, node); in ucl_hash_insert()
70 ucl_hash_iterate (ucl_hash_t *hashlin, ucl_hash_iter_t *iter) in ucl_hash_iterate() argument
75 if (hashlin == NULL || hashlin->buckets == NULL) { in ucl_hash_iterate()
78 elt = hashlin->buckets; in ucl_hash_iterate()
83 else if (elt == hashlin->buckets) { in ucl_hash_iterate()
87 *iter = elt->hh.next ? elt->hh.next : hashlin->buckets; in ucl_hash_iterate()
101 ucl_hash_search (ucl_hash_t* hashlin, const char *key, unsigned keylen) in ucl_hash_search() argument
105 if (hashlin == NULL) { in ucl_hash_search()
108 HASH_FIND (hh, hashlin->buckets, key, keylen, found); in ucl_hash_search()
117 ucl_hash_delete (ucl_hash_t* hashlin, const ucl_object_t *obj) in ucl_hash_delete() argument
121 HASH_FIND (hh, hashlin->buckets, obj->key, obj->keylen, found); in ucl_hash_delete()
124 HASH_DELETE (hh, hashlin->buckets, found); in ucl_hash_delete()