Issue #6442 has been reported by trans (Thomas Sawyer).

----------------------------------------
Feature #6442: CRUDify Hash class
https://bugs.ruby-lang.org/issues/6442

Author: trans (Thomas Sawyer)
Status: Open
Priority: Normal
Assignee: 
Category: core
Target version: 2.0.0


Ruby's Hash class is not very internally "connascent" --many different methods access the underlying data. There is no core set of specific methods that can be overridden to handle all cases. This leads to a very unDRY and bloated class when subclassing or delegating. If Ruby's Hash could be modified to follow essentially a CRUD model, with single points-of-entry for the creation, reading, updating and deletion of entries, and all other methods route through these core methods for access to the underlying data, then it would be much easier to subclass and delegate, and make the Hash class much more solid in design.

I believe the core methods needed are: `read(key)`, `store(key,value)`, `delete(key)` as well as `key?(key)` and `keys`.



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