Issue #9136 has been updated by nobu (Nobuyoshi Nakada).


FYI, Kernel.instance_method(:to_enum).bind(basic_object).call can work since 2.0.
----------------------------------------
misc #9136: Deprecated Enumerator.new(object, method) bad for BasicObject
https://bugs.ruby-lang.org/issues/9136#change-43072

Author: atlas (Atlas Prime)
Status: Assigned
Priority: Normal
Assignee: zzak (Zachary Scott)
Category: core
Target version: 


=begin
Documentation it says:

 In the second, deprecated, form, a generated Enumerator iterates over the given object using the given method with the given arguments passed.

 Use of this form is discouraged. Use Kernel#enum_for or Kernel#to_enum instead.

      e = Enumerator.new(ObjectSpace, :each_object)
      #-> ObjectSpace.enum_for(:each_object)


But (({#enum_for})) and (({#to_enum})) are not available to subclasses of (({BasicObject})). In fact, I was defining (({#to_enum})) for a class that is a subclass of (({BasicObject})), and now I get warning of deprecation.
=end



-- 
http://bugs.ruby-lang.org/