summaryrefslogtreecommitdiff
path: root/variable.h
diff options
context:
space:
mode:
Diffstat (limited to 'variable.h')
-rw-r--r--variable.h19
1 files changed, 12 insertions, 7 deletions
diff --git a/variable.h b/variable.h
index bfe1be2d47..f2afead9d3 100644
--- a/variable.h
+++ b/variable.h
@@ -1,7 +1,6 @@
#ifndef RUBY_TOPLEVEL_VARIABLE_H /*-*-C-*-vi:se ft=c:*/
#define RUBY_TOPLEVEL_VARIABLE_H
/**
- * @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
* Permission is hereby granted, to either redistribute and/or
@@ -11,12 +10,18 @@
/* per-object */
-struct gen_ivtbl {
- uint32_t numiv;
- VALUE ivptr[FLEX_ARY_LEN];
-};
+#include "shape.h"
-int rb_ivar_generic_ivtbl_lookup(VALUE obj, struct gen_ivtbl **);
-VALUE rb_ivar_generic_lookup_with_index(VALUE obj, ID id, uint32_t index);
+void rb_copy_complex_ivars(VALUE dest, VALUE obj, shape_id_t src_shape_id, st_table *fields_table);
+VALUE rb_obj_fields(VALUE obj, ID field_name);
+
+static inline VALUE
+rb_obj_fields_no_ractor_check(VALUE obj)
+{
+ return rb_obj_fields(obj, 0);
+}
+
+void rb_free_rb_global_tbl(void);
+void rb_free_generic_fields_tbl_(void);
#endif /* RUBY_TOPLEVEL_VARIABLE_H */