code: public function offsetSet($offset, $value): void
      {
          if ($value === null) {
              $this->remove($offset);
          }
          if ($offset === null) {
              $highestInt = -1;
              $ranks      = $this->range(0, -1, false, true);
              rsort($ranks);
              foreach ($ranks as $rank) {
                  if (\is_int($this->strToVal($rank))) {
                      $highestInt = $rank;
                  }
              }
              $offset = $highestInt + 1;
          }
  
          if (\is_float($this->strToVal($value)) || \is_int($this->strToVal($value))) {
              $this->add($offset, $this->strToVal($value));
          } else {
              throw new \TypeError(
                  'Illegal value type "' . gettype($value) .
                  '". Sorted sets have to have a value of type float or int.'
              );
          }
      }
docs: {@inheritDoc}
  @throws \TypeError