|
#define | PREFETCH(addr, write_p) |
|
#define | EXPECT(expr, val) (expr) |
|
#define | ATTRIBUTE_UNUSED |
|
#define | st_assert(cond) ((void)(0 && (cond))) |
|
#define | type_numhash st_hashtype_num |
|
#define | ST_INIT_VAL 0xafafafafafafafaf |
|
#define | ST_INIT_VAL_BYTE 0xafa |
|
#define | malloc ruby_xmalloc |
|
#define | calloc ruby_xcalloc |
|
#define | realloc ruby_xrealloc |
|
#define | free ruby_xfree |
|
#define | EQUAL(tab, x, y) ((x) == (y) || (*(tab)->type->compare)((x),(y)) == 0) |
|
#define | PTR_EQUAL(tab, ptr, hash_val, key_) ((ptr)->hash == (hash_val) && EQUAL((tab), (key_), (ptr)->key)) |
|
#define | MAX_POWER2 30 |
|
#define | RESERVED_HASH_VAL (~(st_hash_t) 0) |
|
#define | RESERVED_HASH_SUBSTITUTION_VAL ((st_hash_t) 0) |
|
#define | MINIMAL_POWER2 2 |
|
#define | MAX_POWER2_FOR_TABLES_WITHOUT_BINS 4 |
|
#define | EMPTY_BIN 0 |
|
#define | DELETED_BIN 1 |
|
#define | ENTRY_BASE 2 |
|
#define | MARK_BIN_EMPTY(tab, i) (set_bin((tab)->bins, get_size_ind(tab), i, EMPTY_BIN)) |
|
#define | UNDEFINED_ENTRY_IND (~(st_index_t) 0) |
|
#define | UNDEFINED_BIN_IND (~(st_index_t) 0) |
|
#define | MARK_BIN_DELETED(tab, i) |
|
#define | EMPTY_BIN_P(b) ((b) == EMPTY_BIN) |
|
#define | DELETED_BIN_P(b) ((b) == DELETED_BIN) |
|
#define | EMPTY_OR_DELETED_BIN_P(b) ((b) <= DELETED_BIN) |
|
#define | IND_EMPTY_BIN_P(tab, i) (EMPTY_BIN_P(get_bin((tab)->bins, get_size_ind(tab), i))) |
|
#define | IND_DELETED_BIN_P(tab, i) (DELETED_BIN_P(get_bin((tab)->bins, get_size_ind(tab), i))) |
|
#define | IND_EMPTY_OR_DELETED_BIN_P(tab, i) (EMPTY_OR_DELETED_BIN_P(get_bin((tab)->bins, get_size_ind(tab), i))) |
|
#define | MARK_ENTRY_DELETED(e_ptr) ((e_ptr)->hash = RESERVED_HASH_VAL) |
|
#define | DELETED_ENTRY_P(e_ptr) ((e_ptr)->hash == RESERVED_HASH_VAL) |
|
#define | COLLISION |
|
#define | FOUND_BIN |
|
#define | REBUILD_THRESHOLD 4 |
|
#define | FNV1_32A_INIT 0x811c9dc5 |
|
#define | FNV_32_PRIME 0x01000193 |
|
#define | BIG_CONSTANT(x, y) ((st_index_t)(x)<<32|(st_index_t)(y)) |
|
#define | ROTL(x, n) ((x)<<(n)|(x)>>(SIZEOF_ST_INDEX_T*CHAR_BIT-(n))) |
|
#define | C1 (st_index_t)0xcc9e2d51 |
|
#define | C2 (st_index_t)0x1b873593 |
|
#define | r1 (17) |
|
#define | r2 (11) |
|
#define | r1 (16) |
|
#define | r2 (13) |
|
#define | r3 (16) |
|
#define | data_at(n) (st_index_t)((unsigned char)data[(n)]) |
|
#define | UNALIGNED_ADD_4 UNALIGNED_ADD(2); UNALIGNED_ADD(1); UNALIGNED_ADD(0) |
|
#define | UNALIGNED_ADD_ALL UNALIGNED_ADD_4 |
|
#define | UNALIGNED_ADD(n) |
|
#define | UNALIGNED_ADD(n) |
|
#define | SKIP_TAIL 1 |
|
#define | UNALIGNED_ADD(n) |
|
|
st_table * | st_init_table_with_size (const struct st_hash_type *type, st_index_t size) |
|
st_table * | st_init_table (const struct st_hash_type *type) |
|
st_table * | st_init_numtable (void) |
|
st_table * | st_init_numtable_with_size (st_index_t size) |
|
st_table * | st_init_strtable (void) |
|
st_table * | st_init_strtable_with_size (st_index_t size) |
|
st_table * | st_init_strcasetable (void) |
|
st_table * | st_init_strcasetable_with_size (st_index_t size) |
|
void | st_clear (st_table *tab) |
|
void | st_free_table (st_table *tab) |
|
size_t | st_memsize (const st_table *tab) |
|
int | st_lookup (st_table *tab, st_data_t key, st_data_t *value) |
|
int | st_get_key (st_table *tab, st_data_t key, st_data_t *result) |
|
int | st_insert (st_table *tab, st_data_t key, st_data_t value) |
|
void | st_add_direct (st_table *tab, st_data_t key, st_data_t value) |
|
int | st_insert2 (st_table *tab, st_data_t key, st_data_t value, st_data_t(*func)(st_data_t)) |
|
st_table * | st_copy (st_table *old_tab) |
|
int | st_delete (st_table *tab, st_data_t *key, st_data_t *value) |
|
int | st_delete_safe (st_table *tab, st_data_t *key, st_data_t *value, st_data_t never ATTRIBUTE_UNUSED) |
|
int | st_shift (st_table *tab, st_data_t *key, st_data_t *value) |
|
void | st_cleanup_safe (st_table *tab ATTRIBUTE_UNUSED, st_data_t never ATTRIBUTE_UNUSED) |
|
int | st_update (st_table *tab, st_data_t key, st_update_callback_func *func, st_data_t arg) |
|
int | st_foreach (st_table *tab, int(*func)(ANYARGS), st_data_t arg) |
|
int | st_foreach_check (st_table *tab, int(*func)(ANYARGS), st_data_t arg, st_data_t never ATTRIBUTE_UNUSED) |
|
st_index_t | st_keys (st_table *tab, st_data_t *keys, st_index_t size) |
|
st_index_t | st_keys_check (st_table *tab, st_data_t *keys, st_index_t size, st_data_t never ATTRIBUTE_UNUSED) |
|
st_index_t | st_values (st_table *tab, st_data_t *values, st_index_t size) |
|
st_index_t | st_values_check (st_table *tab, st_data_t *values, st_index_t size, st_data_t never ATTRIBUTE_UNUSED) |
|
st_index_t | st_hash (const void *ptr, size_t len, st_index_t h) |
|
st_index_t | st_hash_uint32 (st_index_t h, uint32_t i) |
|
st_index_t | st_hash_uint (st_index_t h, st_index_t i) |
|
st_index_t | st_hash_end (st_index_t h) |
|
st_index_t | st_hash_start (st_index_t h) |
|
int | st_locale_insensitive_strcasecmp (const char *s1, const char *s2) |
|
int | st_locale_insensitive_strncasecmp (const char *s1, const char *s2, size_t n) |
|
| PUREFUNC (static st_index_t strcasehash(st_data_t)) |
|
int | st_numcmp (st_data_t x, st_data_t y) |
|
st_index_t | st_numhash (st_data_t n) |
|
void | rb_hash_bulk_insert (long argc, const VALUE *argv, VALUE hash) |
|