StarPU Internal Handbook
uthash.h File Reference
#include <string.h>
#include <stddef.h>
#include <inttypes.h>

Go to the source code of this file.

Data Structures

struct  UT_hash_bucket
 
struct  UT_hash_table
 
struct  UT_hash_handle
 

Macros

#define DECLTYPE(x)
 
#define DECLTYPE_ASSIGN(dst, src)
 
#define UTHASH_VERSION
 
#define uthash_fatal(msg)
 
#define uthash_malloc(sz)
 
#define uthash_free(ptr, sz)
 
#define uthash_noexpand_fyi(tbl)
 
#define uthash_expand_fyi(tbl)
 
#define HASH_INITIAL_NUM_BUCKETS
 
#define HASH_INITIAL_NUM_BUCKETS_LOG2
 
#define HASH_BKT_CAPACITY_THRESH
 
#define ELMT_FROM_HH(tbl, hhp)
 
#define HASH_FIND(hh, head, keyptr, keylen, out)
 
#define HASH_BLOOM_MAKE(tbl)
 
#define HASH_BLOOM_FREE(tbl)
 
#define HASH_BLOOM_ADD(tbl, hashv)
 
#define HASH_BLOOM_TEST(tbl, hashv)
 
#define HASH_MAKE_TABLE(hh, head)
 
#define HASH_ADD(hh, head, fieldname, keylen_in, add)
 
#define HASH_CHECK_KEY(hh, head, keyptr, keylen, out)
 
#define HASH_ADD_KEYPTR(hh, head, keyptr, keylen_in, add)
 
#define HASH_TO_BKT(hashv, num_bkts, bkt)
 
#define HASH_DELETE(hh, head, delptr)
 
#define HASH_FIND_STR(head, findstr, out)
 
#define HASH_ADD_STR(head, strfield, add)
 
#define HASH_FIND_INT(head, findint, out)
 
#define HASH_ADD_INT(head, intfield, add)
 
#define HASH_FIND_PTR(head, findptr, out)
 
#define HASH_ADD_PTR(head, ptrfield, add)
 
#define HASH_DEL(head, delptr)
 
#define HASH_FSCK(hh, head)
 
#define HASH_EMIT_KEY(hh, head, keyptr, fieldlen)
 
#define HASH_FCN
 
#define HASH_BER(key, keylen, num_bkts, hashv, bkt)
 
#define HASH_SAX(key, keylen, num_bkts, hashv, bkt)
 
#define HASH_FNV(key, keylen, num_bkts, hashv, bkt)
 
#define HASH_OAT(key, keylen, num_bkts, hashv, bkt)
 
#define HASH_JEN_MIX(a, b, c)
 
#define HASH_JEN(key, keylen, num_bkts, hashv, bkt)
 
#define get16bits(d)
 
#define HASH_SFH(key, keylen, num_bkts, hashv, bkt)
 
#define HASH_KEYCMP(a, b, len)
 
#define HASH_FIND_IN_BKT(tbl, hh, head, keyptr, keylen_in, out)
 
#define HASH_ADD_TO_BKT(head, addhh)
 
#define HASH_DEL_IN_BKT(hh, head, hh_del)
 
#define HASH_EXPAND_BUCKETS(tbl)
 
#define HASH_SORT(head, cmpfcn)
 
#define HASH_SRT(hh, head, cmpfcn)
 
#define HASH_SELECT(hh_dst, dst, hh_src, src, cond)
 
#define HASH_CLEAR(hh, head)
 
#define HASH_ITER(hh, head, el, tmp)
 
#define HASH_COUNT(head)
 
#define HASH_CNT(hh, head)
 
#define HASH_SIGNATURE
 
#define HASH_BLOOM_SIGNATURE
 

Typedefs

typedef struct UT_hash_bucket UT_hash_bucket
 
typedef struct UT_hash_table UT_hash_table
 
typedef struct UT_hash_handle UT_hash_handle
 

Data Structure Documentation

◆ UT_hash_bucket

struct UT_hash_bucket
Data Fields
struct UT_hash_handle * hh_head
unsigned count
unsigned expand_mult

◆ UT_hash_table

struct UT_hash_table
Data Fields
UT_hash_bucket * buckets
unsigned num_buckets
unsigned log2_num_buckets
unsigned num_items
struct UT_hash_handle * tail
ptrdiff_t hho
unsigned ideal_chain_maxlen
unsigned nonideal_items
unsigned ineff_expands
unsigned noexpand
uint32_t signature

◆ UT_hash_handle

struct UT_hash_handle
Data Fields
struct UT_hash_table * tbl
void * prev
void * next
struct UT_hash_handle * hh_prev
struct UT_hash_handle * hh_next
void * key
unsigned keylen
unsigned hashv