[ruby-core:95959] [Ruby master Bug#16373] RDoc for some of the Kernel methods cannot be found in Kernel module

[email protected]
Newsgroups gmane.comp.lang.ruby.core
Message-ID <redmine.journal-82793.20191126132018.2a71b67ba128c1b6@ruby-lang.org>
Issue #16373 has been updated by soutaro (Soutaro Matsumoto).


> I believe the real question is "why #then defined in Kernel and not in Object"

It makes sense to me. Do we have a reason to keep them in `Kernel` not in `Object`?

----------------------------------------
Bug #16373: RDoc for some of the Kernel methods cannot be found in Kernel module
https://bugs.ruby-lang.org/issues/16373#change-82793

* Author: soutaro (Soutaro Matsumoto)
* Status: Open
* Priority: Normal
* Assignee: 
* Target version: 
* ruby -v: 
* Backport: 2.5: UNKNOWN, 2.6: UNKNOWN
----------------------------------------
RDoc documentations for some of the `Kernel` methods including `Kernel#then` are registered as `Object` methods. I'd like to propose to move `Kernel` methods listed in `Object` class to `Kernel` class.

The following `ri` results are confusing to me because the `Object` methods are defined in `Kernel` module technically.

```
$ ri Kernel#then
Nothing known about Kernel#then
$ ri Object#then
[Prints documentation]
```

This is because of the implementation of RDoc that it treats `Kernel` methods as if they are defined in `Object`.

- https://github.com/ruby/rdoc/blob/acfb829917336ecbca6036437918c29319db7c04/lib/rdoc/parser/c.rb#L508

I'd like to disable the assignment and make `Kernel` methods listed in `Kernel` module.

**Pros**

- The RDoc structure is more clear and precise
  - (This is essential to me that it makes easier to generate annotations for RBS files.)
- Both of `ri Kernel#then` and `ri Object#then` print the documentation

**Cons**

- The document of `Object` class will be almost empty, which may cause confusion for readers while there is a link to included module, `Kernel`




-- 
https://bugs.ruby-lang.org/

Unsubscribe: <mailto:[email protected]?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.