diff --git a/ChangeLog b/ChangeLog index ce29d341b2..9370e37a09 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Mon Jun 17 18:15:57 2013 Benoit Daloze + + * ext/objspace/objspace.c: let rdoc know about objspace methods. + Specify 'objspace' should be required. See #8537. + Mon Jun 17 17:44:31 2013 Benoit Daloze * gc.c (ObjectSpace): is a module not a class. diff --git a/ext/objspace/objspace.c b/ext/objspace/objspace.c index 0bdd626705..2e51a3a6e5 100644 --- a/ext/objspace/objspace.c +++ b/ext/objspace/objspace.c @@ -155,6 +155,7 @@ memsize_of(VALUE obj) * T_DATA may not be correct. * * This method is not expected to work except C Ruby. + * You need to require 'objspace' to use this method. */ static VALUE @@ -221,6 +222,7 @@ total_i(void *vstart, void *vend, size_t stride, void *ptr) * end * * This method is not expected to work except C Ruby. + * You need to require 'objspace' to use this method. */ static VALUE @@ -317,6 +319,7 @@ type2sym(enum ruby_value_type i) * It may be changed in future. * * This method is not expected to work except C Ruby. + * You need to require 'objspace' to use this method. */ static VALUE @@ -392,6 +395,7 @@ cn_i(void *vstart, void *vend, size_t stride, void *n) * It may be changed in future. * * This method is not expected to work except C Ruby. + * You need to require 'objspace' to use this method. */ static VALUE @@ -600,7 +604,7 @@ cto_i(void *vstart, void *vend, size_t stride, void *data) * name, registered by rb_data_type_struct. * * This method is not expected to work except C Ruby. - * + * You need to require 'objspace' to use this method. */ static VALUE @@ -728,6 +732,7 @@ collect_values(st_data_t key, st_data_t value, st_data_t data) * With this method, you can find memory leaks. * * This method is not expected to work except in C Ruby. + * You need to require 'objspace' to use this method. * * Example: * ObjectSpace.reachable_objects_from(['a', 'b', 'c']) @@ -789,7 +794,11 @@ void Init_gc_hook(VALUE rb_mObjSpace); void Init_objspace(void) { - VALUE rb_mObjSpace = rb_const_get(rb_cObject, rb_intern("ObjectSpace")); + VALUE rb_mObjSpace; +#if 0 + rb_mObjSpace = rb_define_module("ObjectSpace"); /* let rdoc know */ +#endif + rb_mObjSpace = rb_const_get(rb_cObject, rb_intern("ObjectSpace")); rb_define_module_function(rb_mObjSpace, "memsize_of", memsize_of_m, 1); rb_define_module_function(rb_mObjSpace, "memsize_of_all", memsize_of_all_m, -1);