protected void rehash()

in core/src/main/java/gnu/trove/THashSet.java [194:210]


  protected void rehash(int newCapacity) {
    int oldCapacity = capacity();
    Object[] oldSet = _set;

    _set = new Object[newCapacity];

    for (int i = oldCapacity; i-- > 0; ) {
      if (oldSet[i] != null && oldSet[i] != REMOVED) {
        E o = (E)oldSet[i];
        int index = insertionIndex(o);
        if (index < 0) { // everyone pays for this because some people can't RTFM
          throwObjectContractViolation(_set[(-index - 1)], o);
        }
        _set[index] = o;
      }
    }
  }