Computes hash for an objects. Two hashes of equal objects have to be equal.
Hash must not change during lifetime of an object.
hash of an object