docs: @SuppressWarnings("checkstyle:innerassignment")
      protected final void shiftConflictingKeys(long slotCurr) {
          long slotPrev;
          long slotOther;
          final long mask = mask();
          while (true) {
              slotCurr = ((slotPrev = slotCurr) + 1) & mask;
              while (isSlotAssigned(slotCurr)) {
                  slotOther = slotHash(baseAddress, slotCurr) & mask;
                  // slotPrev <= slotCurr means we're at or to the right of the original slot.
                  // slotPrev > slotCurr means we're to the left of the original slot because we've wrapped around.
                  if (slotPrev <= slotCurr) {
                      if (slotPrev >= slotOther || slotOther > slotCurr) {
                          break;
                      }
                  } else if (slotPrev >= slotOther && slotOther > slotCurr) {
                      break;
                  }
                  slotCurr = (slotCurr + 1) & mask;
              }
              if (!isSlotAssigned(slotCurr)) {
                  break;
              }
              // Shift key/value pair.
              putKey(baseAddress, slotPrev, key1OfSlot(slotCurr), key2OfSlot(slotCurr));
              mem.copyMemory(valueAddrOfSlot(slotCurr), valueAddrOfSlot(slotPrev), valueLength);
          }
          markUnassigned(baseAddress, slotPrev);
      }