From: "calebm (Caleb Meyer) via ruby-core" Date: 2025-03-11T19:04:33+00:00 Subject: [ruby-core:121299] [Ruby master Feature#21182] Add Hash#rename Issue #21182 has been reported by calebm (Caleb Meyer). ---------------------------------------- Feature #21182: Add Hash#rename https://bugs.ruby-lang.org/issues/21182 * Author: calebm (Caleb Meyer) * Status: Open ---------------------------------------- Abstract: Implement Hash#rename which takes as arguments a from key and a to key and renames the from key to the new name. Background: One of the most common data transformations for a hash (in my experience) is renaming a single key. You can do this with the existing hash methods (e.g. `hash['new'] = hash.delete('old')` or `hash.transform_keys('old' => 'new')`) but they feel a bit clunky. Proposal: Add a new method to Hash, something like this: ```ruby class Hash # usage { old: 'value' }.rename(:old, to: :new) # => { new: 'value' } def rename(from, to:) transform_keys(from => to) end def rename!(from, to:) transform_keys!(from => to) end end ``` -- https://bugs.ruby-lang.org/ ______________________________________________ ruby-core mailing list -- ruby-core@ml.ruby-lang.org To unsubscribe send an email to ruby-core-leave@ml.ruby-lang.org ruby-core info -- https://ml.ruby-lang.org/mailman3/lists/ruby-core.ml.ruby-lang.org/