# Maps instances to a value, uses `is_same_serialized` and `serialization_hash`.
class StrictHashMap[K, V]
super HashMap[K, V]
redef fun index_at(k)
do
if k == null then return 0
var i = k.serialization_hash % _capacity
if i < 0 then i = - i
return i
end
redef fun node_at_idx(i, k)
do
var c = _array[i]
while c != null do
var ck = c._key
assert ck != null
if ck.is_same_serialized(k) then
break
end
c = c._next_in_bucklet
end
return c
end
end
lib/serialization/engine_tools.nit:21,1--47,3