Feature #15833 ยป 0002-Export-RARRAY_SHARED_ROOT_FLAG.patch
array.c | ||
---|---|---|
125 | 125 |
assert(ARY_SHARED_ROOT_P(_value_)); \ |
126 | 126 |
RB_OBJ_WRITE(_ary_, &RARRAY(_ary_)->as.heap.aux.shared, _value_); \ |
127 | 127 |
} while (0) |
128 |
#define RARRAY_SHARED_ROOT_FLAG FL_USER5 |
|
129 | 128 |
#define ARY_SHARED_ROOT_P(ary) (FL_TEST((ary), RARRAY_SHARED_ROOT_FLAG)) |
130 | 129 |
#define ARY_SHARED_NUM(ary) \ |
131 | 130 |
(assert(ARY_SHARED_ROOT_P(ary)), RARRAY(ary)->as.heap.aux.shared_num) |
include/ruby/ruby.h | ||
---|---|---|
1031 | 1031 |
/* RUBY_FL_USER2 is for ELTS_SHARED */ |
1032 | 1032 |
RARRAY_EMBED_LEN_MASK = (RUBY_FL_USER4|RUBY_FL_USER3), |
1033 | 1033 |
RARRAY_EMBED_LEN_SHIFT = (RUBY_FL_USHIFT+3), |
1034 |
RARRAY_SHARED_ROOT_FLAG = RUBY_FL_USER5, |
|
1034 | 1035 | |
1035 | 1036 |
#if USE_TRANSIENT_HEAP |
1036 | 1037 |
RARRAY_TRANSIENT_FLAG = RUBY_FL_USER13, |
... | ... | |
1045 | 1046 |
#define RARRAY_EMBED_LEN_MASK (VALUE)RARRAY_EMBED_LEN_MASK |
1046 | 1047 |
#define RARRAY_EMBED_LEN_MAX RARRAY_EMBED_LEN_MAX |
1047 | 1048 |
#define RARRAY_EMBED_LEN_SHIFT RARRAY_EMBED_LEN_SHIFT |
1049 |
#define RARRAY_SHARED_ROOT_FLAG (VALUE)RARRAY_SHARED_ROOT_FLAG |
|
1048 | 1050 | |
1049 | 1051 |
struct RArray { |
1050 | 1052 |
struct RBasic basic; |
1051 |
- |