diff options
Diffstat (limited to 'include')
| -rw-r--r-- | include/hash_table.h | 47 | 
1 files changed, 26 insertions, 21 deletions
| diff --git a/include/hash_table.h b/include/hash_table.h index ccbd9c0..6f377c9 100644 --- a/include/hash_table.h +++ b/include/hash_table.h @@ -32,46 +32,51 @@  #include <inttypes.h>  #include <stdbool.h> +#include "sqfs/predef.h" +  struct hash_entry { -   uint32_t hash; +   sqfs_u32 hash;     const void *key;     void *data;  };  struct hash_table {     struct hash_entry *table; -   uint32_t (*key_hash_function)(const void *key); +   sqfs_u32 (*key_hash_function)(const void *key);     bool (*key_equals_function)(const void *a, const void *b);     const void *deleted_key; -   uint32_t size; -   uint32_t rehash; -   uint64_t size_magic; -   uint64_t rehash_magic; -   uint32_t max_entries; -   uint32_t size_index; -   uint32_t entries; -   uint32_t deleted_entries; +   sqfs_u32 size; +   sqfs_u32 rehash; +   sqfs_u64 size_magic; +   sqfs_u64 rehash_magic; +   sqfs_u32 max_entries; +   sqfs_u32 size_index; +   sqfs_u32 entries; +   sqfs_u32 deleted_entries;  }; -struct hash_table * -hash_table_create(uint32_t (*key_hash_function)(const void *key), +SQFS_INTERNAL struct hash_table * +hash_table_create(sqfs_u32 (*key_hash_function)(const void *key),                    bool (*key_equals_function)(const void *a,                                                const void *b)); -struct hash_table * +SQFS_INTERNAL struct hash_table *  hash_table_clone(struct hash_table *src); -void hash_table_destroy(struct hash_table *ht, -			void (*delete_function)(struct hash_entry *entry)); -struct hash_entry * -hash_table_insert_pre_hashed(struct hash_table *ht, uint32_t hash, +SQFS_INTERNAL void +hash_table_destroy(struct hash_table *ht, +		   void (*delete_function)(struct hash_entry *entry)); + +SQFS_INTERNAL struct hash_entry * +hash_table_insert_pre_hashed(struct hash_table *ht, sqfs_u32 hash,                               const void *key, void *data); -struct hash_entry * -hash_table_search_pre_hashed(struct hash_table *ht, uint32_t hash, + +SQFS_INTERNAL struct hash_entry * +hash_table_search_pre_hashed(struct hash_table *ht, sqfs_u32 hash,                               const void *key); -struct hash_entry *hash_table_next_entry(struct hash_table *ht, -                                         struct hash_entry *entry); +SQFS_INTERNAL struct hash_entry *hash_table_next_entry(struct hash_table *ht, +						       struct hash_entry *entry);  /**   * This foreach function is safe against deletion (which just replaces | 
