private void shiftKeys()

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];
    }
  }