Ruby
3.1.0dev(2021-09-10revisionb76ad15ed0da636161de0243c547ee1e6fc95681)
|
Internal header for Hash. More...
#include "ruby/internal/config.h"
#include <stddef.h>
#include "ruby/internal/stdbool.h"
#include "ruby/ruby.h"
#include "ruby/st.h"
Go to the source code of this file.
Data Structures | |
struct | RHash |
Macros | |
#define | RHASH_AR_TABLE_MAX_SIZE SIZEOF_VALUE |
#define | RHASH_LEV_MASK |
#define | RHASH(obj) ((struct RHash *)(obj)) |
#define | RHASH_TBL_RAW(h) rb_hash_tbl_raw(h, __FILE__, __LINE__) |
Typedefs | |
typedef unsigned char | ar_hint_t |
Enumerations | |
enum | ruby_rhash_flags { RHASH_PASS_AS_KEYWORDS = FL_USER1, RHASH_PROC_DEFAULT = FL_USER2, RHASH_ST_TABLE_FLAG = FL_USER3, RHASH_AR_TABLE_SIZE_MASK = (FL_USER4|FL_USER5|FL_USER6|FL_USER7), RHASH_AR_TABLE_SIZE_SHIFT = (FL_USHIFT+4), RHASH_AR_TABLE_BOUND_MASK = (FL_USER8|FL_USER9|FL_USER10|FL_USER11), RHASH_AR_TABLE_BOUND_SHIFT = (FL_USHIFT+8), RHASH_TRANSIENT_FLAG = FL_USER12, RHASH_LEV_SHIFT = (FL_USHIFT + 13), RHASH_LEV_MAX = 127 } |
Internal header for Hash.
Definition in file hash.h.
#define RHASH_AR_TABLE_MAX_SIZE SIZEOF_VALUE |
#define RHASH_LEV_MASK |
#define RHASH_TBL_RAW | ( | h | ) | rb_hash_tbl_raw(h, __FILE__, __LINE__) |
enum ruby_rhash_flags |
long rb_dbl_long_hash | ( | double | d | ) |
Definition at line 163 of file hash.c.
References rb_memhash().
Referenced by rb_iseq_cdhash_hash().
VALUE rb_hash_new_with_size | ( | st_index_t | size | ) |
Definition at line 1543 of file hash.c.
References rb_hash_new(), ret, RHASH_AR_TABLE_MAX_SIZE, and size.
int rb_hash_stlike_foreach | ( | VALUE | hash, |
st_foreach_callback_func * | func, | ||
st_data_t | arg | ||
) |
Definition at line 1440 of file hash.c.
Referenced by rb_execarg_extract_options().
int rb_hash_stlike_foreach_with_replace | ( | VALUE | hash, |
st_foreach_check_callback_func * | func, | ||
st_update_callback_func * | replace, | ||
st_data_t | arg | ||
) |
int rb_hash_stlike_update | ( | VALUE | hash, |
st_data_t | key, | ||
st_update_callback_func * | func, | ||
st_data_t | arg | ||
) |
VALUE rb_ident_hash_new | ( | void | ) |
Definition at line 4402 of file hash.c.
Referenced by Init_sym(), rb_ast_add_mark_object(), and rb_uninterruptible().
st_table* rb_init_identtable | ( | void | ) |
Definition at line 4410 of file hash.c.
References identhash, and st_init_table().