Issue #9970 has been updated by Yukihiro Matsumoto.


No, you don't have to. We will take care. Thank you for the proposal.

Matz.


----------------------------------------
Feature #9970: Add `Hash#map_keys` and `Hash#map_values`
https://bugs.ruby-lang.org/issues/9970#change-54255

* Author: Sean Griffin
* Status: Open
* Priority: Normal
* Assignee: Nobuyoshi Nakada
----------------------------------------
These methods simplify two common patterns when working with hashes, and transforming the data.

Without `map_keys`:

`Hash[{ a: 1, b: 2 }.map { |key, value| [key.to_s, value] }]`

With `map_keys`:

`{ a: 1, b: 2 }.map_keys(&:to_s)`

Without `map_values`:

`Hash[{ a: '1', b: '2' }.map { |key, value| [key, value.to_i] }]`

With `map_values`:

`{ a: '1', b: '2' }.map_values(&:to_i)`

The patch, with tests, is attached.

---Files--------------------------------
hash-map-keys-and-map-values.diff (5.79 KB)


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