Actions
Bug #11508
closedHash#eql? does not respect hash ordering
    Bug #11508:
    Hash#eql? does not respect hash ordering
  
Status:
Closed
Assignee:
-
Target version:
-
ruby -v:
ruby 2.2.2p95 (2015-04-13 revision 50295) [x86_64-darwin14]
Description
{a:1,b:2}.eql?({b:2,a:1})
=> true
The eql? (aka ==) operator on hashes does not compare the ordering of the compared hashes.
This behaviour is documented in Hash#== (and should not be touched, ever)
I'd like to suggest:
- extend the documentation of Hash#==to explicitely state, that ordering is not compared
- add a new function in ruby5 to compare hashes with respect of the ordering,
 aka{a:1,b:2}.eql_with_order?({b:2,a:1})=>false
Actions