instance method Hash#rehash

rehash -> self[permalink][rdoc][edit]

キーのハッシュ値を再計算します。

キーになっているオブジェクトの内容が変化した時など、ハッシュ値が変わってしまった場合はこのメソッドを使ってハッシュ値を再計算しない限り、そのキーに対応する値を取り出すことができなくなります。

[EXCEPTION] RuntimeError:
Hash#eachなどのイテレータの評価途中でrehashすると発生します。
[RETURN]
selfを返します。


a = [ "a", "b" ]
h = { a => 100 }

p h[a]       #=> 100

a[0] = "z"
p h[a]       #=> nil

h.rehash
p h[a]       #=> 100

[SEE_ALSO] Object#hash