A
andrea
Hello,
I am having some trouble trying to remove duplicate data from an array
of hashes. I've read on the pickaxe book that Array#uniq detects
duplicates using the eql? method on the elements, but it doesn't seem to
work even if I monkeypatch the Hash class:
class Hash
def eql? other
self == other
end
end
a={:foo=>'bar'}
b={:foo=>'bar'}
array=[a,b]
a.eql? b
=> true
array.uniq
=> [{:foo=>"bar"}, {:foo=>"bar"}]
Of course, I'd like to get only [{:foo=>"bar}] as a result. Thanks in
advance for any help...
Andrea
I am having some trouble trying to remove duplicate data from an array
of hashes. I've read on the pickaxe book that Array#uniq detects
duplicates using the eql? method on the elements, but it doesn't seem to
work even if I monkeypatch the Hash class:
class Hash
def eql? other
self == other
end
end
a={:foo=>'bar'}
b={:foo=>'bar'}
array=[a,b]
a.eql? b
=> true
array.uniq
=> [{:foo=>"bar"}, {:foo=>"bar"}]
Of course, I'd like to get only [{:foo=>"bar}] as a result. Thanks in
advance for any help...
Andrea