From: shugo@... Date: 2016-09-07T07:41:08+00:00 Subject: [ruby-core:77188] [Ruby trunk Bug#10103] Unable to refine class with CONSTANT Issue #10103 has been updated by Shugo Maeda. Assignee set to Shugo Maeda ---------------------------------------- Bug #10103: Unable to refine class with CONSTANT https://bugs.ruby-lang.org/issues/10103#change-60403 * Author: Kyle Decot * Status: Feedback * Priority: Normal * Assignee: Shugo Maeda * ruby -v: 2.1.1 * Backport: 2.0.0: UNKNOWN, 2.1: UNKNOWN ---------------------------------------- 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" ~~~ -- https://bugs.ruby-lang.org/ Unsubscribe: