From: "matz (Yukihiro Matsumoto)" Date: 2013-09-02T10:01:50+09:00 Subject: [ruby-core:56954] [ruby-trunk - Feature #7292] Enumerable#to_h Issue #7292 has been updated by matz (Yukihiro Matsumoto). Acceptable. How others think about Marc's rule? * elements should respond to #to_ary * return value from #to_ary should be 2 elements array * otherwise the element will be ignored (no TypeError exception) If no one objects, I'd be fine. Marc, do you want to implement it by yourself, or ask somebody to do so? Matz. ---------------------------------------- Feature #7292: Enumerable#to_h https://bugs.ruby-lang.org/issues/7292#change-41514 Author: marcandre (Marc-Andre Lafortune) Status: Open Priority: Normal Assignee: matz (Yukihiro Matsumoto) Category: core Target version: next minor Now that #to_h is the official method for explicit conversion to Hash, we should also add Enumerable#to_h: Returns a hash for the yielded key-value pairs. [[:name, 'Joe Smith'], [:age, 42]].to_h # => {name: 'Joe Smith', age: 42} With the Ruby tradition of succint documentation I suggest the documentation talk about key-value pairs and there is no need to be explicit about the uninteresting cases like: (1..3).to_h # => {1 => nil, 2 => nil, 3 => nil} [[1, 2], [1, 3]].to_h # => {1 => 3} [[1, 2], []].to_h # => {1 => 2, nil => nil} I see some reactions of people reading about the upcoming 2.0 release like this one: http://globaldev.co.uk/2012/11/ruby-2-0-0-preview-features/#dsq-comment-body-700242476 -- http://bugs.ruby-lang.org/