Actions
Feature #9451
closedRefinements and unary & (to_proc)
Feature #9451:
Refinements and unary & (to_proc)
Description
Not sure if this is a bug or feature request:
require 'minitest/autorun'
require 'set'
module ClassToProc
refine Class do
def to_proc
lambda{ |*args| self.new(*args) }
end
end
end
using ClassToProc
describe 'Class#to_proc' do
it 'works when called directly' do
Set.to_proc[[1,2]].must_equal Set[1,2]
end
it 'fails when called via ampersand' do
[[1,2]].map(&Set).must_equal [Set[1,2]]
end
end
The second example errors with NoMethodError: super: no superclass method `to_proc' for Set:Class
Would be great to have it, though.
Actions