bool erase()

in csrc/suffix_decoding/int32_map.h [89:106]


    bool erase(int32_t key) {
        if (key == KEY_EMPTY || key == KEY_TOMBSTONE) {
            throw std::invalid_argument("invalid key");
        }
        if (!slots_) {
            return false;
        }
        uint32_t idx;
        if (!probe_insert_or_find_(key, idx)) {
            return false;
        }
        value_ptr_(slots_[idx])->~T();
        slots_[idx].key = KEY_TOMBSTONE;
        --size_;
        ++tombstones_;
        maybe_rehash_after_erase_();
        return true;
    }