24#ifndef __M_HASH_U64VP_H__
25#define __M_HASH_U64VP_H__
29#include <mstdlib/base/m_defs.h>
30#include <mstdlib/base/m_types.h>
55struct M_hash_u64vp_enum;
M_bool M_hash_u64vp_is_multi(const M_hash_u64vp_t *h)
M_bool M_hash_u64vp_multi_get(const M_hash_u64vp_t *h, M_uint64 key, size_t idx, void **value)
void M_hash_u64vp_merge(M_hash_u64vp_t **dest, M_hash_u64vp_t *src) M_FREE(2)
M_hash_u64vp_flags_t
Definition: m_hash_u64vp.h:61
M_hash_u64vp_t * M_hash_u64vp_create(size_t size, M_uint8 fillpct, M_uint32 flags, void(*destroy_func)(void *)) M_MALLOC_ALIASED
void * M_hash_u64vp_multi_get_direct(const M_hash_u64vp_t *h, M_uint64 key, size_t idx)
M_bool M_hash_u64vp_get(const M_hash_u64vp_t *h, M_uint64 key, void **value)
void M_hash_u64vp_enumerate_free(M_hash_u64vp_enum_t *hashenum)
size_t M_hash_u64vp_num_expansions(const M_hash_u64vp_t *h)
size_t M_hash_u64vp_num_keys(const M_hash_u64vp_t *h)
size_t M_hash_u64vp_enumerate(const M_hash_u64vp_t *h, M_hash_u64vp_enum_t **hashenum)
struct M_hash_u64vp M_hash_u64vp_t
Definition: m_hash_u64vp.h:53
M_bool M_hash_u64vp_multi_remove(M_hash_u64vp_t *h, M_uint64 key, size_t idx, M_bool destroy_vals)
M_bool M_hash_u64vp_insert(M_hash_u64vp_t *h, M_uint64 key, void *value)
size_t M_hash_u64vp_num_collisions(const M_hash_u64vp_t *h)
M_bool M_hash_u64vp_enumerate_next(const M_hash_u64vp_t *h, M_hash_u64vp_enum_t *hashenum, M_uint64 *key, void **value)
void M_hash_u64vp_destroy(M_hash_u64vp_t *h, M_bool destroy_vals) M_FREE(1)
M_bool M_hash_u64vp_multi_len(const M_hash_u64vp_t *h, M_uint64 key, size_t *len)
void * M_hash_u64vp_get_direct(const M_hash_u64vp_t *h, M_uint64 key)
M_bool M_hash_u64vp_remove(M_hash_u64vp_t *h, M_uint64 key, M_bool destroy_vals)
struct M_hash_u64vp_enum M_hash_u64vp_enum_t
Definition: m_hash_u64vp.h:57
M_uint32 M_hash_u64vp_size(const M_hash_u64vp_t *h)
@ M_HASH_U64VP_STATIC_SEED
Definition: m_hash_u64vp.h:71
@ M_HASH_U64VP_MULTI_GETLAST
Definition: m_hash_u64vp.h:69
@ M_HASH_U64VP_KEYS_SORTDESC
Definition: m_hash_u64vp.h:66
@ M_HASH_U64VP_KEYS_ORDERED
Definition: m_hash_u64vp.h:63
@ M_HASH_U64VP_NONE
Definition: m_hash_u64vp.h:62
@ M_HASH_U64VP_MULTI_VALUE
Definition: m_hash_u64vp.h:67
@ M_HASH_U64VP_KEYS_SORTASC
Definition: m_hash_u64vp.h:65