|
Ruby
1.9.3p551(2014-11-13revision48407)
|
#include "ruby/defines.h"Go to the source code of this file.
Data Structures | |
| struct | st_hash_type |
| struct | st_table |
Macros | |
| #define | ST_DATA_T_DEFINED |
| #define | CHAR_BIT 8 |
| #define | _(args) args |
| #define | ANYARGS |
| #define | SIZEOF_ST_INDEX_T SIZEOF_VOIDP |
| #define | ST_INDEX_BITS (sizeof(st_index_t) * CHAR_BIT) |
| #define | st_is_member(table, key) st_lookup((table),(key),(st_data_t *)0) |
| #define | st_hash_start(h) ((st_index_t)(h)) |
Typedefs | |
| typedef unsigned long | st_data_t |
| typedef struct st_table | st_table |
| typedef st_data_t | st_index_t |
| typedef int | st_compare_func(st_data_t, st_data_t) |
| typedef st_index_t | st_hash_func(st_data_t) |
| typedef char | st_check_for_sizeof_st_index_t[SIZEOF_VOIDP==(int) sizeof(st_index_t) ? 1 :-1] |
Enumerations | |
| enum | st_retval { ST_CONTINUE, ST_STOP, ST_DELETE, ST_CHECK } |
| #define st_hash_start | ( | h | ) | ((st_index_t)(h)) |
Definition at line 134 of file st.h.
Referenced by rb_hash_start().
| #define ST_INDEX_BITS (sizeof(st_index_t) * CHAR_BIT) |
| typedef char st_check_for_sizeof_st_index_t[SIZEOF_VOIDP==(int) sizeof(st_index_t) ? 1 :-1] |
| typedef st_index_t st_hash_func(st_data_t) |
| typedef st_data_t st_index_t |
| enum st_retval |
Definition at line 513 of file st.c.
References ADD_DIRECT, st_table::bins, do_hash, st_table::entries_packed, i, key, MORE_PACKABLE_P, st_table::num_bins, st_table::num_entries, and unpack_entries().
Definition at line 738 of file st.c.
References st_table::bins, st_table::entries_packed, free(), i, st_table_entry::key, last, st_table_entry::next, st_table::num_bins, and st_table::num_entries.
| void st_clear | ( | st_table * | ) |
Definition at line 241 of file st.c.
References st_table::bins, st_table::entries_packed, free(), st_table::head, i, st_table_entry::next, st_table::num_bins, st_table::num_entries, and st_table::tail.
Referenced by rb_hash_clear(), rb_thread_atfork_internal(), and st_free_table().
Definition at line 558 of file st.c.
References alloc, st_table_entry::back, st_table::bins, Calloc, st_table::entries_packed, st_table_entry::fore, free(), st_table_entry::hash, st_table::head, st_table_entry::next, st_table::num_bins, st_free_table(), and st_table::tail.
Definition at line 774 of file st.c.
References st_table::bins, st_table::entries_packed, FIND_ENTRY, st_table_entry::fore, free(), st_table_entry::hash, st_table::head, i, st_table_entry::key, key, last, memmove(), st_table_entry::next, st_table::num_bins, st_table::num_entries, st_table_entry::record, REMOVE_ENTRY, ST_CHECK, ST_CONTINUE, ST_DELETE, and ST_STOP.
| void st_free_table | ( | st_table * | ) |
Definition at line 266 of file st.c.
References st_table::bins, free(), and st_clear().
Referenced by st_copy().
Referenced by rb_feature_p().
| st_index_t st_hash | ( | const void * | ptr, |
| size_t | len, | ||
| st_index_t | h | ||
| ) |
Definition at line 1113 of file st.c.
References CHAR_BIT, len, murmur_finish(), murmur_step, MurmurMagic, SIZEOF_ST_INDEX_T, and UNALIGNED_ADD_ALL.
| st_index_t st_hash_end | ( | st_index_t | h | ) |
Definition at line 1277 of file st.c.
References murmur_step.
| st_index_t st_hash_start | ( | st_index_t | h | ) |
| st_index_t st_hash_uint | ( | st_index_t | h, |
| st_index_t | i | ||
| ) |
| st_index_t st_hash_uint32 | ( | st_index_t | h, |
| uint32_t | i | ||
| ) |
Definition at line 1240 of file st.c.
References i, and murmur_step.
| st_table* st_init_numtable | ( | void | ) |
Definition at line 205 of file st.c.
References st_init_table(), and type_numhash.
| st_table* st_init_numtable_with_size | ( | st_index_t | ) |
Definition at line 211 of file st.c.
References size, st_init_table_with_size(), and type_numhash.
| st_table* st_init_strcasetable | ( | void | ) |
Definition at line 229 of file st.c.
References st_init_table(), and type_strcasehash.
Referenced by Init_transcode(), make_transcoder_entry(), rb_enc_init(), transcode_search_path(), and w_encoding().
| st_table* st_init_strcasetable_with_size | ( | st_index_t | ) |
Definition at line 235 of file st.c.
References size, st_init_table_with_size(), and type_strcasehash.
| st_table* st_init_strtable | ( | void | ) |
Definition at line 217 of file st.c.
References st_init_table(), and type_strhash.
| st_table* st_init_strtable_with_size | ( | st_index_t | ) |
Definition at line 223 of file st.c.
References size, st_init_table_with_size(), and type_strhash.
| st_table* st_init_table | ( | const struct st_hash_type * | ) |
Definition at line 199 of file st.c.
References st_init_table_with_size(), and type.
Referenced by st_init_numtable(), st_init_strcasetable(), and st_init_strtable().
| st_table* st_init_table_with_size | ( | const struct st_hash_type * | , |
| st_index_t | |||
| ) |
Definition at line 167 of file st.c.
References alloc, st_table::bins, Calloc, st_table::entries_packed, getenv(), st_table::head, MAX_PACKED_NUMHASH, new_size(), st_table::num_bins, st_table::num_entries, size, st_table::tail, st_table::type, type, and type_numhash.
Referenced by st_init_numtable_with_size(), st_init_strcasetable_with_size(), st_init_strtable_with_size(), and st_init_table().
Referenced by enc_alias_internal(), and rb_hash_aset().
Definition at line 274 of file st.c.
References st_table::entries_packed, st_table::num_bins, and st_table::num_entries.
Referenced by autoload_memsize(), fiber_memsize(), memsize_of(), rb_generic_ivar_memsize(), thread_memsize(), and vm_memsize().
| st_index_t st_numhash | ( | st_data_t | ) |
Referenced by rb_hash_shift().
1.8.14