类 ObjectSpace::InternalObjectWrapper
此类用作 ObjectSpace::reachable_objects_from 的返回值。
当 ObjectSpace::reachable_objects_from 返回一个引用内部对象的对象时,将返回此类的实例。
您可以使用 type 方法来检查内部对象的类型。
公共实例方法
源码
static VALUE
iow_inspect(VALUE self)
{
VALUE obj = (VALUE)DATA_PTR(self);
VALUE type = type2sym(BUILTIN_TYPE(obj));
return rb_sprintf("#<InternalObject:%p %"PRIsVALUE">", (void *)obj, rb_sym2str(type));
}
请参阅 Object#inspect。
源码
static VALUE
iow_internal_object_id(VALUE self)
{
VALUE obj = (VALUE)DATA_PTR(self);
return rb_obj_id(obj);
}
返回内部对象的 Object#object_id。
源码
static VALUE
iow_type(VALUE self)
{
VALUE obj = (VALUE)DATA_PTR(self);
return type2sym(BUILTIN_TYPE(obj));
}
返回内部对象的类型。