Skip to content

End of Life Ruby 3.1 has reached end of life and gets no more fixes. Switch to Ruby 4.0 →

instance method

UnboundMethod#owner

meth.owner → class_or_module

Returns the class or module on which this method is defined. In other words,

Example
meth.owner.instance_methods(false).include?(meth.name) # => true

holds as long as the method is not removed/undefined/replaced, (with private_instance_methods instead of instance_methods if the method is private).

See also Method#receiver.

Example
(1..3).method(:map).owner #=> Enumerable
See also #original_name #parameters #name #private? also in 4.1 · 4.0 · 3.4 · 3.3 · 3.2 · 3.0