Issue #13179 has been updated by Shyouhei Urabe.


This is possible in perl:

```
use strict;
use warnings;
use Data::Dumper qw(Dumper);

my %hash = qw();
$hash{q}{w}{e}{r}{t} = 'y';

warn(Dumper(\%hash));
```

From perl's POV it seems ruby lacks this feature.

----------------------------------------
Feature #13179: Deep Hash Update Method
https://bugs.ruby-lang.org/issues/13179#change-63288

* Author: wurde _
* Status: Feedback
* Priority: Normal
* Assignee: 
* Target version: 
----------------------------------------
I came across a scenario where I needed the ability to update a deeply nested hash (Rails i18n yaml files). This seemed like something that would exist naturally in the DSL of ruby, but I could only find dig() method which only retrieves values if they exist. 24 hours later I wrote a update_deep_hash method (I wouldn't wish this type of recursive coding on anyone else within the Ruby community).

Attached is the solution I hacked together. My question is if we can have a Hash.dig() method which reaches into a deep hash can we expand on this to include update methods of similar nature?

---Files--------------------------------
update_deep_hash.rb (2.26 KB)


-- 
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>