When should x.eql?(y) != (x == y) ?

H

Hugh Sasse

I've read ri Object#== and seen how .eql? is usually the same as ==
except for numbers where type conversion takes place, and that for
Object they must be distinct.

Are there any rules, conventions, heuristics to aid in class design
so that one may know when, and when not to

def ==(x)
eql?(x)
end

please? The objective is to make methods do what is expected given
the rest of Ruby, so are the expectations one should have spelt out
elsewhere?

Thank you
Hugh
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
474,432
Messages
2,571,682
Members
48,796
Latest member
Greg L.

Latest Threads

Top