purgeCompact method
Intention-revealing non-contiguous compaction: clears the removed
keys' reverse-index slots, sweeps the order, dropping keys AND any
zombie entries whose nid was already released (the zombie protocol
documented on removeWhereKeyIn), then rebuilds the
reverse index wholesale. The full "non-contiguous removal" protocol
in one owner.
Implementation
void purgeCompact(Set<TKey> keys) {
// L25.8: no per-key `clearIndexOf` here; `rebuildIndex` opens with
// `resetIndexAll`, which clears every slot before re-indexing.
removeWhereKeyIn(keys);
rebuildIndex();
}