in statefun-flink/statefun-flink-core/src/main/java/it/unimi/dsi/fastutil/objects/ObjectOpenHashMap.java [301:323]
private void shiftKeys(int pos) {
// Shift entries with the same hash.
int last, slot;
K curr;
final K[] key = this.key;
for (; ; ) {
pos = ((last = pos) + 1) & mask;
for (; ; ) {
if (((curr = key[pos]) == null)) {
key[last] = (null);
value[last] = null;
return;
}
slot = (it.unimi.dsi.fastutil.HashCommon.mix((curr).hashCode())) & mask;
if (last <= pos ? last >= slot || slot > pos : last >= slot && slot > pos) {
break;
}
pos = (pos + 1) & mask;
}
key[last] = curr;
value[last] = value[pos];
}
}