aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/ruby/ruby.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/include/ruby/ruby.h b/include/ruby/ruby.h
index ecc9bfd923..2ba47ab9f5 100644
--- a/include/ruby/ruby.h
+++ b/include/ruby/ruby.h
@@ -398,6 +398,7 @@ struct RObject {
struct {
long len;
VALUE *ptr;
+ struct st_table *iv_index_tbl; /* shortcut for RCLASS_IV_INDEX_TBL(rb_obj_class(obj)) */
} heap;
VALUE ary[ROBJECT_EMBED_LEN_MAX];
} as;
@@ -411,6 +412,10 @@ struct RObject {
((RBASIC(o)->flags & ROBJECT_EMBED) ? \
ROBJECT(o)->as.ary : \
ROBJECT(o)->as.heap.ptr)
+#define ROBJECT_IV_INDEX_TBL(o) \
+ ((RBASIC(o)->flags & ROBJECT_EMBED) ? \
+ RCLASS_IV_INDEX_TBL(rb_obj_class(o)) : \
+ ROBJECT(o)->as.heap.iv_index_tbl)
struct RValues {
struct RBasic basic;