Issue #13211 has been updated by shyouhei (Shyouhei Urabe).


We looked at this issue in yesterday's developer meeting.

While extending Hash#delete is still a valid feature request, it seems to us that the OP wants something different; the example code shows that what is actually wanted is to split a hash into two.  That is doable with Hash#delete, but not that intuitive or declarative.

You might want to request such feature instead.

----------------------------------------
Feature #13211: Hash#delete taking a splat
https://bugs.ruby-lang.org/issues/13211#change-64310

* Author: kddeisz (Kevin Deisz)
* Status: Open
* Priority: Normal
* Assignee: 
* Target version: 
----------------------------------------
Hi there,

I would like to add the ability for Hash#delete to take a splat of arguments that would delete entries at each of the given keys. I've run into this quite a few times where it would be useful in application code. Something like

```
def preprocess(args = {})
  do_some_preprocessing(%i[a b c].zip(args.delete(:a, :b, :c)).to_h)
  process(args)
end
```

Would be very happy to work on a patch for this if it's desired.



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