Lines Matching defs:OrderedHashmap

52 typedef struct OrderedHashmap OrderedHashmap; /* Like Hashmap, but also remembers entry insertion order */
75 __builtin_types_compatible_p(typeof(h), OrderedHashmap*) || \
80 __builtin_types_compatible_p(typeof(h), OrderedHashmap*)) \
103 OrderedHashmap *internal_ordered_hashmap_new(const struct hash_ops *hash_ops HASHMAP_DEBUG_PARAMS);
111 static inline OrderedHashmap *ordered_hashmap_free(OrderedHashmap *h) {
119 static inline OrderedHashmap *ordered_hashmap_free_free(OrderedHashmap *h) {
124 static inline OrderedHashmap *ordered_hashmap_free_free_free(OrderedHashmap *h) {
132 static inline OrderedHashmap *ordered_hashmap_copy(OrderedHashmap *h) {
133 return (OrderedHashmap*) internal_hashmap_copy(HASHMAP_BASE(h));
137 int internal_ordered_hashmap_ensure_allocated(OrderedHashmap **h, const struct hash_ops *hash_ops HASHMAP_DEBUG_PARAMS);
142 static inline int ordered_hashmap_put(OrderedHashmap *h, const void *key, void *value) {
147 static inline int ordered_hashmap_update(OrderedHashmap *h, const void *key, void *value) {
152 static inline int ordered_hashmap_replace(OrderedHashmap *h, const void *key, void *value) {
160 static inline void *ordered_hashmap_get(OrderedHashmap *h, const void *key) {
165 static inline void *ordered_hashmap_get2(OrderedHashmap *h, const void *key, void **rkey) {
173 static inline bool ordered_hashmap_contains(OrderedHashmap *h, const void *key) {
181 static inline void *ordered_hashmap_remove(OrderedHashmap *h, const void *key) {
186 static inline void *ordered_hashmap_remove2(OrderedHashmap *h, const void *key, void **rkey) {
191 static inline void *ordered_hashmap_remove_value(OrderedHashmap *h, const void *key, void *value) {
196 static inline int ordered_hashmap_remove_and_put(OrderedHashmap *h, const void *old_key, const void *new_key, void *value) {
201 static inline int ordered_hashmap_remove_and_replace(OrderedHashmap *h, const void *old_key, const void *new_key, void *value) {
205 /* Since merging data from a OrderedHashmap into a Hashmap or vice-versa
215 static inline int ordered_hashmap_reserve(OrderedHashmap *h, unsigned entries_add) {
224 static inline int ordered_hashmap_move(OrderedHashmap *h, OrderedHashmap *other) {
232 static inline int ordered_hashmap_move_one(OrderedHashmap *h, OrderedHashmap *other, const void *key) {
240 static inline unsigned ordered_hashmap_size(OrderedHashmap *h) {
247 static inline bool ordered_hashmap_isempty(OrderedHashmap *h) {
255 static inline unsigned ordered_hashmap_buckets(OrderedHashmap *h) {
263 static inline bool ordered_hashmap_iterate(OrderedHashmap *h, Iterator *i, void **value, const void **key) {
271 static inline void ordered_hashmap_clear(OrderedHashmap *h) {
279 static inline void ordered_hashmap_clear_free(OrderedHashmap *h) {
284 static inline void ordered_hashmap_clear_free_free(OrderedHashmap *h) {
303 static inline void *ordered_hashmap_steal_first(OrderedHashmap *h) {
311 static inline void *ordered_hashmap_steal_first_key(OrderedHashmap *h) {
319 static inline void *ordered_hashmap_first_key(OrderedHashmap *h) {
327 static inline void *ordered_hashmap_first(OrderedHashmap *h) {
332 void *ordered_hashmap_next(OrderedHashmap *h, const void *key);
338 static inline char **ordered_hashmap_get_strv(OrderedHashmap *h) {
363 DEFINE_TRIVIAL_CLEANUP_FUNC(OrderedHashmap*, ordered_hashmap_free);
364 DEFINE_TRIVIAL_CLEANUP_FUNC(OrderedHashmap*, ordered_hashmap_free_free);
365 DEFINE_TRIVIAL_CLEANUP_FUNC(OrderedHashmap*, ordered_hashmap_free_free_free);