|
|
|
|
|
by catnaroek
3595 days ago
|
|
So, which is the case? (0) Object identities are used as keys? (e.g., two different list objects that contain the elements 1,2,3 are treated as different keys) (1) Catastr... I mean, hilarious things happen if you mutate an object that's being used as a key? |
|
Anyway, both languages use value-based hashing for dictionaries. I am not a Rubyist, but I guess you are just expected to not mutate the keys? Ruby's dictionary implementation also has a rehash method to deal with this case [1], if for some reason you are purposely mutating the keys I suppose...
[1] http://docs.ruby-lang.org/en/2.0.0/Hash.html#method-i-rehash