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

Forum statistics

Threads
473,769
Messages
2,569,579
Members
45,053
Latest member
BrodieSola

Latest Threads

Top