Actions
Bug #10103
closedUnable to refine class with CONSTANT
    Bug #10103:
    Unable to refine class with CONSTANT
  
ruby -v:
2.1.1
Backport:
Description
When refining a class (such as String in the following example) it is impossible to assign a constant. The constant will get attached to the module containing the refinement instead of the refined class.  When inside of a refine block constants should get assigned to that class.
module Foobar
  refine String do
    FOO = "BAR"
    def foobar
      "foobar"
    end
  end
end
using Foobar
puts "".class::FOO # => uninitialized constant String::FOO (NameError)
puts "".foobar # => "foobar"
Actions