summaryrefslogtreecommitdiff
path: root/variable.c
diff options
context:
space:
mode:
Diffstat (limited to 'variable.c')
-rw-r--r--variable.c13
1 files changed, 7 insertions, 6 deletions
diff --git a/variable.c b/variable.c
index 46573523b4..d6e2f2a601 100644
--- a/variable.c
+++ b/variable.c
@@ -23,6 +23,7 @@
#include "debug_counter.h"
#include "vm_core.h"
#include "transient_heap.h"
+#include "variable.h"
static struct rb_id_table *rb_global_tbl;
static ID autoload, classpath, tmp_classpath;
@@ -34,12 +35,6 @@ static VALUE rb_const_search(VALUE klass, ID id, int exclude, int recurse, int v
static st_table *generic_iv_tbl;
static st_table *generic_iv_tbl_compat;
-/* per-object */
-struct gen_ivtbl {
- uint32_t numiv;
- VALUE ivptr[FLEX_ARY_LEN];
-};
-
struct ivar_update {
union {
st_table *iv_index_tbl;
@@ -804,6 +799,12 @@ gen_ivtbl_get(VALUE obj, struct gen_ivtbl **ivtbl)
return 0;
}
+struct st_table *
+rb_ivar_generic_ivtbl(void)
+{
+ return generic_iv_tbl;
+}
+
static VALUE
generic_ivar_delete(VALUE obj, ID id, VALUE undef)
{