37 size_t y = size_t(key);
43 return uint(y >> 4) | (
uint(y) << (
sizeof(
uint[8]) - 4));
71 return (memcmp(a,
b,
sizeof(
uint[4])) != 0);
97 return uint(key & 0xffffffff);
119 return hash_a ^ (hash_b + 0x9e3779b9 + (hash_a << 6) + (hash_a >> 2));
124 const signed char *p;
127 for (p = (
const signed char *)key; n-- && *p !=
'\0'; p++) {
135 const signed char *p;
138 for (p =
static_cast<const signed char *
>(
ptr); *p !=
'\0'; p++) {
148 return BLI_hash_mm2(key, strlen((
const char *)key) + 1, 0);
152 return (a ==
b) ?
false : !
STREQ(
static_cast<const char *
>(a),
static_cast<const char *
>(
b));
159 pair->second = second;
175 return ((A->first !=
B->first) || (A->second !=
B->second));
GSet * BLI_gset_new_ex(GSetHashFP hashfp, GSetCmpFP cmpfp, const char *info, unsigned int nentries_reserve) ATTR_MALLOC ATTR_WARN_UNUSED_RESULT
GHash * BLI_ghash_new_ex(GHashHashFP hashfp, GHashCmpFP cmpfp, const char *info, unsigned int nentries_reserve) ATTR_MALLOC ATTR_WARN_UNUSED_RESULT
GHash * BLI_ghash_str_new(const char *info)
bool BLI_ghashutil_strcmp(const void *a, const void *b)
uint BLI_ghashutil_strhash_p(const void *ptr)
uint BLI_ghashutil_inthash_p(const void *ptr)
size_t BLI_ghashutil_combine_hash(size_t hash_a, size_t hash_b)
GSet * BLI_gset_ptr_new_ex(const char *info, const uint nentries_reserve)
GSet * BLI_gset_ptr_new(const char *info)
uint BLI_ghashutil_uinthash_v4(const uint key[4])
GHash * BLI_ghash_int_new_ex(const char *info, const uint nentries_reserve)
uint BLI_ghashutil_inthash_p_simple(const void *ptr)
GSet * BLI_gset_int_new(const char *info)
uint BLI_ghashutil_strhash_p_murmur(const void *ptr)
GHash * BLI_ghash_ptr_new(const char *info)
void BLI_ghashutil_pairfree(void *ptr)
uint BLI_ghashutil_pairhash(const void *ptr)
GSet * BLI_gset_str_new(const char *info)
GHash * BLI_ghash_pair_new(const char *info)
GSet * BLI_gset_pair_new(const char *info)
uint BLI_ghashutil_ptrhash(const void *key)
bool BLI_ghashutil_intcmp(const void *a, const void *b)
GHashPair * BLI_ghashutil_pairalloc(const void *first, const void *second)
bool BLI_ghashutil_ptrcmp(const void *a, const void *b)
uint BLI_ghashutil_inthash_p_murmur(const void *ptr)
GHash * BLI_ghash_ptr_new_ex(const char *info, const uint nentries_reserve)
GSet * BLI_gset_str_new_ex(const char *info, const uint nentries_reserve)
GHash * BLI_ghash_int_new(const char *info)
GHash * BLI_ghash_pair_new_ex(const char *info, const uint nentries_reserve)
uint BLI_ghashutil_uinthash(uint key)
GHash * BLI_ghash_str_new_ex(const char *info, const uint nentries_reserve)
bool BLI_ghashutil_uinthash_v4_cmp(const void *a, const void *b)
bool BLI_ghashutil_paircmp(const void *a, const void *b)
GSet * BLI_gset_pair_new_ex(const char *info, const uint nentries_reserve)
uint BLI_ghashutil_uinthash_v4_murmur(const uint key[4])
uint BLI_ghashutil_strhash_n(const char *key, size_t n)
GSet * BLI_gset_int_new_ex(const char *info, const uint nentries_reserve)
uint32_t BLI_hash_mm2(const unsigned char *data, size_t len, uint32_t seed)
#define POINTER_AS_UINT(i)
Read Guarded memory(de)allocation.
local_group_size(16, 16) .push_constant(Type b
void *(* MEM_mallocN)(size_t len, const char *str)
void MEM_freeN(void *vmemh)
_W64 unsigned int uintptr_t