Pit Capitain
1/30/2007 8:21:00 AM
Shot (Piotr Szotkowski) schrieb:
> Eric Hodel:
>
>> On Jan 29, 2007, at 14:38, Shot (Piotr Szotkowski) wrote:
>
>>> I?m stuck when it comes to Block#hash, though; I need these to be true:
>>> Block.new.hash == Block.new.hash
>>> Block.new([1,2]).hash == Block.new([1,2]).hash
>
>> Try:
>
>> class Block
>> def hash
>> to_a.hash
>> end
>> end
>
> Thanks a lot, Eric! This is the ?d?oh!? solution I was looking for. :)
Shot, you should be aware that this works for your example given above,
but not for the following:
Block.new([1,12]).hash # => 57
Block.new([12,1]).hash # => 23
If this is a problem, you have to change the implementation to
class Block
def hash
sort.hash
end
end
Regards,
Pit