[ruby-core:85696] [Ruby trunk Feature#14498] Class#to_proc

From: hanmac@...
Date: 2018-02-20 15:13:13 UTC
List: ruby-core #85696
Issue #14498 has been updated by Hanmac (Hans Mackowiak).

Description updated


Duplicate of #4910

----------------------------------------
Feature #14498: Class#to_proc
https://bugs.ruby-lang.org/issues/14498#change-70500

* Author: Nondv (Dmitriy Non)
* Status: Open
* Priority: Normal
* Assignee: 
* Target version: 
----------------------------------------
Hello!

I was creating a list of class instances via `some_list.map { |e| SomeClass.new(e) }` and wondered if there's a `Class#to_proc` to make possible doing `some_list.map(&SomeClass)`.
Well, there is not.

Basically, this is what I suggest:

```ruby
class Class
  def to_proc
    proc { |*args| self.new(*args) }
  end
end

class Dog
  attr_reader :name

  def initialize(name)
    @name = name
  end
end

names = %w[Lucky Pluto Balto]
names.map(&Dog) # map names to dogs
```

Here's the pull request:

https://github.com/ruby/ruby/pull/1821



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

Unsubscribe: <mailto:ruby-core-request@ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>

In This Thread

Prev Next