diff options
author | Koichi Sasada <[email protected]> | 2019-08-01 16:04:40 +0900 |
---|---|---|
committer | Koichi Sasada <[email protected]> | 2019-08-01 16:06:43 +0900 |
commit | 3a6f51ee35da5d49973aba8f7d8128a65a9d8c4a () | |
tree | 54bf4d2fc854759ffe09a04b8e01f24e015cd056 /internal.h | |
parent | e18e7852536a42434b7b25fa08846fe161290d46 (diff) |
introduce ar_hint_t.
Hash hint for ar_array is 1 byte (unsigned char). This introduce ar_hint_t which represents hint type.
-rw-r--r-- | internal.h | 12 |
1 files changed, 10 insertions, 2 deletions
@@ -817,7 +817,7 @@ struct RComplex { enum ruby_rhash_flags { RHASH_PROC_DEFAULT = FL_USER2, /* FL 2 */ RHASH_ST_TABLE_FLAG = FL_USER3, /* FL 3 */ - RHASH_AR_TABLE_MAX_SIZE = 8, RHASH_AR_TABLE_SIZE_MASK = (FL_USER4|FL_USER5|FL_USER6|FL_USER7), /* FL 4..7 */ RHASH_AR_TABLE_SIZE_SHIFT = (FL_USHIFT+4), RHASH_AR_TABLE_BOUND_MASK = (FL_USER8|FL_USER9|FL_USER10|FL_USER11), /* FL 8..11 */ @@ -875,6 +875,14 @@ void rb_hash_st_table_set(VALUE hash, st_table *st); #define RHASH_UNSET_TRANSIENT_FLAG(h) ((void)0) #endif struct RHash { struct RBasic basic; union { @@ -883,7 +891,7 @@ struct RHash { } as; const VALUE ifnone; union { - unsigned char ary[sizeof(VALUE)]; VALUE word; } ar_hint; }; |