diff options
Diffstat (limited to 'variable.h')
| -rw-r--r-- | variable.h | 21 |
1 files changed, 9 insertions, 12 deletions
diff --git a/variable.h b/variable.h index 5c0366de32..f2afead9d3 100644 --- a/variable.h +++ b/variable.h @@ -12,19 +12,16 @@ #include "shape.h" -struct gen_ivtbl { -#if !SHAPE_IN_BASIC_FLAGS - uint16_t shape_id; -#endif - uint32_t numiv; - VALUE ivptr[FLEX_ARY_LEN]; -}; +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); -int rb_ivar_generic_ivtbl_lookup(VALUE obj, struct gen_ivtbl **); - -#if !SHAPE_IN_BASIC_FLAGS -shape_id_t rb_generic_shape_id(VALUE obj); -#endif +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 */ |
