From: ronnie@... Date: 2015-09-01T09:43:38+00:00 Subject: [ruby-core:70647] [Ruby trunk - Feature #11476] Methods defined in Refinements cannot be called via send Issue #11476 has been updated by Akira Matsuda. Aah, I'm sorry that I missed that part of the documentation. But indeed I felt the behaviour weird while using the feature in a real-world library. ---------------------------------------- Feature #11476: Methods defined in Refinements cannot be called via send https://bugs.ruby-lang.org/issues/11476#change-54048 * Author: Akira Matsuda * Status: Assigned * Priority: Normal * Assignee: Yukihiro Matsumoto ---------------------------------------- ~~~ class C end module M refine C do def a() p:hello end def b() p:world end end end using M C.new.a C.new.send :b ~~~ ~~~ % ruby -v t.rb ruby 2.3.0dev (2015-08-22 trunk 51660) [x86_64-darwin14] :hello t.rb:13:in `
': undefined method `b' for # (NoMethodError) ~~~ -- https://bugs.ruby-lang.org/