24#ifndef __M_HASH_U64BIN_H__
25#define __M_HASH_U64BIN_H__
29#include <mstdlib/base/m_defs.h>
30#include <mstdlib/base/m_types.h>
54struct M_hash_u64bin_enum;
M_bool M_hash_u64bin_multi_remove(M_hash_u64bin_t *h, M_uint64 key, size_t idx)
M_bool M_hash_u64bin_enumerate_next(const M_hash_u64bin_t *h, M_hash_u64bin_enum_t *hashenum, M_uint64 *key, const M_uint8 **value, size_t *value_len)
const M_uint8 * M_hash_u64bin_get_direct(const M_hash_u64bin_t *h, M_uint64 key, size_t *value_len)
M_bool M_hash_u64bin_remove(M_hash_u64bin_t *h, M_uint64 key)
void M_hash_u64bin_enumerate_free(M_hash_u64bin_enum_t *hashenum)
M_bool M_hash_u64bin_get(const M_hash_u64bin_t *h, M_uint64 key, const M_uint8 **value, size_t *value_len)
struct M_hash_u64bin M_hash_u64bin_t
Definition: m_hash_u64bin.h:52
size_t M_hash_u64bin_num_expansions(const M_hash_u64bin_t *h)
size_t M_hash_u64bin_enumerate(const M_hash_u64bin_t *h, M_hash_u64bin_enum_t **hashenum)
size_t M_hash_u64bin_num_collisions(const M_hash_u64bin_t *h)
M_bool M_hash_u64bin_insert(M_hash_u64bin_t *h, M_uint64 key, const M_uint8 *value, size_t value_len)
void M_hash_u64bin_merge(M_hash_u64bin_t **dest, M_hash_u64bin_t *src) M_FREE(2)
struct M_hash_u64bin_enum M_hash_u64bin_enum_t
Definition: m_hash_u64bin.h:56
M_bool M_hash_u64bin_multi_len(const M_hash_u64bin_t *h, M_uint64 key, size_t *len)
M_bool M_hash_u64bin_is_multi(const M_hash_u64bin_t *h)
M_uint32 M_hash_u64bin_size(const M_hash_u64bin_t *h)
M_hash_u64bin_t * M_hash_u64bin_create(size_t size, M_uint8 fillpct, M_uint32 flags) M_MALLOC_ALIASED
M_hash_u64bin_t * M_hash_u64bin_duplicate(const M_hash_u64bin_t *h) M_MALLOC
size_t M_hash_u64bin_num_keys(const M_hash_u64bin_t *h)
M_hash_u64bin_flags_t
Definition: m_hash_u64bin.h:60
void M_hash_u64bin_destroy(M_hash_u64bin_t *h) M_FREE(1)
M_bool M_hash_u64bin_multi_get(const M_hash_u64bin_t *h, M_uint64 key, size_t idx, const M_uint8 **value, size_t *value_len)
const M_uint8 * M_hash_u64bin_multi_get_direct(const M_hash_u64bin_t *h, M_uint64 key, size_t idx, size_t *value_len)
@ M_HASH_U64BIN_MULTI_GETLAST
Definition: m_hash_u64bin.h:68
@ M_HASH_U64BIN_KEYS_ORDERED
Definition: m_hash_u64bin.h:62
@ M_HASH_U64BIN_MULTI_VALUE
Definition: m_hash_u64bin.h:66
@ M_HASH_U64BIN_NONE
Definition: m_hash_u64bin.h:61
@ M_HASH_U64BIN_KEYS_SORTDESC
Definition: m_hash_u64bin.h:65
@ M_HASH_U64BIN_KEYS_SORTASC
Definition: m_hash_u64bin.h:64
@ M_HASH_U64BIN_STATIC_SEED
Definition: m_hash_u64bin.h:70