0

使用 Pryshow-source并没有像我预期的那样向我展示方法实现:

[2] pry(main)> show-source Object#extend

From: eval.c (C Method):
Owner: Kernel
Visibility: public
Number of lines: 3

static VALUE
rb_obj_extend(argc, argv, obj)
int argc;

这就是我所得到的,但根据官方文档(我安装了 pry-doc)我应该看到:

[1] pry(main)> show-source Object#extend

From: eval.c (C Method):
Owner: Kernel
Visibility: public
Number of lines: 16

static VALUE
rb_obj_extend(int argc, VALUE *argv, VALUE obj)
{
    int i;

    if (argc == 0) {
         rb_raise(rb_eArgError, "wrong number of arguments (at least 1)");
    }
    for (i = 0; i < argc; i++)
    Check_Type(argv[i], T_MODULE);
    while (argc--) {
        rb_funcall(argv[argc], rb_intern("extend_object"), 1, obj);
        rb_funcall(argv[argc], rb_intern("extended"), 1, obj);
    }
    return obj;
}
[2] pry(main)>

关于为什么会发生这种情况的任何想法?

4

1 回答 1

0

这为我解决了它:

$ rvm docs generate all

如果您想为所有已安装的 gem 生成 ri 文档,也很有用:

gem rdoc --all --ri --no-rdoc

于 2014-07-08T20:52:05.197 回答