Feature request: Module#prepended?(mod)

Issue #10355 has been updated by Satoshi TAGOMORI.

提案する名前について prepended? は正しくありませんでした。prepend? が正しいです。訂正します。


Feature #10355: Feature request: Module#prepended?(mod)

  • Author: Satoshi TAGOMORI
  • Status: Feedback
  • Priority: Normal
  • Assignee: Yukihiro M.
  • Category: core
  • Target version: current: 2.2.0

あるモジュール X に対してモジュール P1 がprependされているかどうかを調べる方法があると嬉しく思います。
Module#include?
を使うと継承関係に含まれているかどうかはわかりますが、それが対象モジュールに対してprependされたものかは分かりません。

module P1; end
module P2; end

class X
  prepend P1
end
class Y< X
  prepend P2
end

X.include?(P1) #=> true
Y.include?(P2) #=> true
Y.include?(P1) #=> true

# I want
X.prepended?(P1) #=> true
Y.prepended?(P2) #=> true
Y.prepended?(P1) #=> false