1#ifndef INTERNAL_OBJECT_H
2#define INTERNAL_OBJECT_H
15#ifdef ROBJECT_IV_INDEX_TBL
16# undef ROBJECT_IV_INDEX_TBL
27static inline void RBASIC_CLEAR_CLASS(
VALUE obj);
28static inline void RBASIC_SET_CLASS_RAW(
VALUE obj,
VALUE klass);
29static inline void RBASIC_SET_CLASS(
VALUE obj,
VALUE klass);
30static inline struct st_table *ROBJECT_IV_INDEX_TBL_inline(
VALUE obj);
32RUBY_SYMBOL_EXPORT_BEGIN
55RBASIC_CLEAR_CLASS(
VALUE obj)
57 RBASIC_SET_CLASS_RAW(obj, 0);
64 RBASIC_SET_CLASS_RAW(obj, klass);
70ROBJECT_IV_INDEX_TBL_inline(
VALUE obj)
78 return ptr->as.heap.iv_index_tbl;
81#define ROBJECT_IV_INDEX_TBL ROBJECT_IV_INDEX_TBL_inline
#define MJIT_SYMBOL_EXPORT_END
#define MJIT_SYMBOL_EXPORT_BEGIN
VALUE rb_obj_not_equal(VALUE obj1, VALUE obj2)
VALUE rb_obj_dig(int argc, VALUE *argv, VALUE self, VALUE notfound)
int rb_opts_exception_p(VALUE opts, int default_value)
double rb_num_to_dbl(VALUE val)
int rb_bool_expected(VALUE, const char *)
VALUE rb_obj_equal(VALUE obj1, VALUE obj2)
void rb_undefined_alloc(VALUE klass)
VALUE rb_obj_class(VALUE)
VALUE rb_obj_size(VALUE self, VALUE args, VALUE obj)
VALUE rb_check_convert_type_with_id(VALUE, int, const char *, ID)
VALUE rb_convert_type_with_id(VALUE v, int t, const char *nam, ID mid)
VALUE rb_obj_not(VALUE obj)
VALUE rb_immutable_obj_clone(int, VALUE *, VALUE)
VALUE rb_class_search_ancestor(VALUE klass, VALUE super)
VALUE rb_false(VALUE obj)
void rb_obj_copy_ivar(VALUE dest, VALUE obj)
Internal header for Class.
#define RCLASS_IV_INDEX_TBL(c)
#define RBIMPL_ATTR_PURE()
Wraps (or simulates) __attribute__((pure))
#define RB_OBJ_WRITTEN(a, oldv, b)
WB for new reference from ‘a’ to ‘b’.