bitclust icon indicating copy to clipboard operation
bitclust copied to clipboard

説明のための未定義のメソッド欄の区分を設けたい

Open universato opened this issue 3 years ago • 0 comments

定義されていないメソッドが、定義されているメソッドの中に混ざっている例を見ます。 混ざっているのは正しくなく、正確な理解をしたい人の理解を妨げると思うため、 未定義のメソッドを混ざらないように「説明のための未定義のメソッド」などの区分で独立させたいです。

未定義のメソッドの例

Objectのインスタンスメソッド

例えば、Objectのインスタンスメソッドが顕著です。

Object#to_a (Ruby 3.0.0 リファレンスマニュアル)

説明のためここに記載してありますが、このメソッドは実際には Object クラスには定義されていません。必要に応じてサブクラスで定義すべきものです。

Array#dup, Array#clone

Array#clone (Ruby 3.0.0 リファレンスマニュアル)

また、Arraydupcloneは継承されているだけなのに、説明の項目があります。 定義されているかどうかという線引だと削除すべきように思われますが、 自分自身配列でdupメソッドをよく使うし、Arrayは浅いコピーの問題が起きる代表例として載せる価値があるのかもしれないと思っています。

Integer#hash

hash メソッドが載っていないクラスがある · Issue #2556 · rurema/doctree

他に、こちらのIssueで、Integerなどに未定義のhashメソッドがないという話題がありました。 未定義ですが何か説明すべき事情があるなら、定義されているメソッドと混ざらないようにすればいいのでは、と思いました。

universato avatar May 06 '21 19:05 universato