method_defined?(name, inherit=true) -> bool[permalink][rdoc][edit]-
モジュールにインスタンスメソッド name が定義されており、かつその可視性が public または protected であるときに true を返します。
- [PARAM]
name: - Symbol か String を指定します。
- [PARAM]
inherit: - 真を指定するとスーパークラスや include したモジュールで定義されたメソッドも対象になります。
[SEE_ALSO] Module#public_method_defined?, Module#private_method_defined?, Module#protected_method_defined?
例module A def method1() end def protected_method1() end protected :protected_method1 end class B def method2() end def private_method2() end private :private_method2 end class C < B include A def method3() end end p A.method_defined? :method1 # => true p C.method_defined? "method1" # => true p C.method_defined? "method2" # => true p C.method_defined? "method2", true # => true p C.method_defined? "method2", false # => false p C.method_defined? "method3" # => true p C.method_defined? "protected_method1" # => true p C.method_defined? "method4" # => false p C.method_defined? "private_method2" # => false - [PARAM]