responds_to?¶
responds_to?
という疑似メソッドを使うと、ある名前のメソッドを持っているかどうかを判定できます。例をあげます。
a = 1
a.responds_to?(:abs) # => true
a.responds_to?(:size) # => false
これが疑似メソッドである理由は、if var.responds_to?(...) で説明したように、引数にシンボルリテラルのみを受け取り、そしてコンパイラによって特別な扱いを受けるからです。
responds_to?
という疑似メソッドを使うと、ある名前のメソッドを持っているかどうかを判定できます。例をあげます。
a = 1
a.responds_to?(:abs) # => true
a.responds_to?(:size) # => false
これが疑似メソッドである理由は、if var.responds_to?(...) で説明したように、引数にシンボルリテラルのみを受け取り、そしてコンパイラによって特別な扱いを受けるからです。