Project

General

Profile

« Previous | Next » 

Revision 6c6dece7

Added by ko1 (Koichi Sasada) over 12 years ago

  • ext/objspace/objspace.c (ObjectSpace.reachable_objects_from):
    internal object support.
    If given object obj' has references to internal objects (such as T_NODE objects), then this method returns instances of ObjectSpace::InternalObjectWrapper' instead of that internal objects.
    This instance contains a refereance to an internal object and you can
    check the type of internal object using
    ObjectSpace::InternalObjectWrapper#type' method. Rdoc of InternalObjectWrapper' is not prepared yet.
  • gc.c (rb_objspace_reachable_objects_from), gc.h: change
    an interface of 'rb_objspace_reachable_objects_from()'
  • gc.c, gc.h: add two APIs
    • rb_objspace_markable_object_p(obj): check markable or not.
    • rb_objspace_internal_object_p(obj): check internal or not.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37307 b2dd03c8-39d4-4d8f-98ff-823fe69b080e