Issue #6442 has been updated by nobu (Nobuyoshi Nakada).

Status changed from Open to Feedback
Assignee set to trans (Thomas Sawyer)

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

Author: trans (Thomas Sawyer)
Status: Feedback
Priority: Normal
Assignee: trans (Thomas Sawyer)
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/