类 ObjectSpace::InternalObjectWrapper
此类用作 ObjectSpace::reachable_objects_from 的返回值。
当 ObjectSpace::reachable_objects_from 返回一个引用内部对象的对象时,将返回此类的实例。
您可以使用 type 方法来检查内部对象的类型。
公共实例方法
inspect() 点击切换源代码
参见 Object#inspect。
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));
}
internal_object_id() 点击切换源代码
返回内部对象的 Object#object_id。
static VALUE
iow_internal_object_id(VALUE self)
{
VALUE obj = (VALUE)DATA_PTR(self);
return rb_obj_id(obj);
}
type() 点击切换源代码
返回内部对象的类型。
static VALUE
iow_type(VALUE self)
{
VALUE obj = (VALUE)DATA_PTR(self);
return type2sym(BUILTIN_TYPE(obj));
}