Lines Matching defs:dict
28 struct dict {
41 /* Initialize a dictionary DICT. The dictionary will hold keys of the
46 void dict_init(struct dict *dict,
74 int dict_clone(struct dict *target, const struct dict *source,
87 const struct dict *_source_d = (SRC_DICTP); \
107 /* Return number of key-value pairs stored in DICT. */
108 size_t dict_size(const struct dict *dict);
111 int dict_empty(const struct dict *dict);
113 /* Insert into DICT a pair of KEY and VALUE. Returns 0 if insertion
116 int dict_insert(struct dict *dict, void *key, void *value);
118 /* Insert into DICT a pair of KEY and VALUE. See dict_insert for
126 /* Find in DICT a value corresponding to KEY and return a pointer to
128 void *dict_find(struct dict *dict, const void *key);
156 /* Erase from DICT the entry corresponding to KEY. Returns a negative
160 int dict_erase(struct dict *dict, const void *key,
169 struct dict *_d = (DICTP); \
179 /* Destroy DICT. If KEY_DTOR is non-NULL, then it's called on each
180 * key stored in DICT. Similarly for VALUE_DTOR. DATA is passed to
181 * DTOR's verbatim. The memory pointed-to by DICT is not freed. */
182 void dict_destroy(struct dict *dict,
191 struct dict *_d = (DICTP); \
202 /* Iterate through DICT. See callback.h for notes on iteration
204 * the iteration over DICT is more expensive than in other containers:
210 void *dict_each(struct dict *dict, void *start_after,