singleton_method(name) -> Method
[permalink][rdoc][edit]-
オブジェクトの特異メソッド name をオブジェクト化した Method オブジェクトを返します。
- [PARAM] name:
- メソッド名をSymbol またはStringで指定します。
- [EXCEPTION] NameError:
- 定義されていないメソッド名を引数として与えると発生します。
class Demo def initialize(n) @iv = n end def hello() "Hello, @iv = #{@iv}" end end k = Demo.new(99) def k.hi "Hi, @iv = #{@iv}" end m = k.singleton_method(:hi) # => #<Method: #<Demo:0xf8b0c3c4 @iv=99>.hi> m.call #=> "Hi, @iv = 99" m = k.singleton_method(:hello) # => NameError
[SEE_ALSO] Module#instance_method, Method, BasicObject#__send__, Object#send, Kernel.#eval, Object#method