mirror of
https://github.com/boostorg/unordered.git
synced 2025-07-30 19:37:14 +02:00
Make second parameter of delete_nodes a node_pointer
This commit is contained in:
@ -3025,7 +3025,7 @@ struct table : boost::unordered::detail::functions<typename Types::hasher,
|
||||
--size_;
|
||||
}
|
||||
|
||||
std::size_t delete_nodes(link_pointer prev, link_pointer end)
|
||||
std::size_t delete_nodes(link_pointer prev, node_pointer end)
|
||||
{
|
||||
BOOST_ASSERT(prev->next_ != end);
|
||||
|
||||
@ -3043,7 +3043,7 @@ struct table : boost::unordered::detail::functions<typename Types::hasher,
|
||||
{
|
||||
if (buckets_) {
|
||||
if (size_)
|
||||
delete_nodes(get_previous_start(), link_pointer());
|
||||
delete_nodes(get_previous_start(), node_pointer());
|
||||
|
||||
if (bucket::extra_node) {
|
||||
node_pointer n =
|
||||
@ -3696,7 +3696,7 @@ struct table : boost::unordered::detail::functions<typename Types::hasher,
|
||||
link_pointer prev = this->find_previous_node(k, bucket_index);
|
||||
if (!prev)
|
||||
return 0;
|
||||
link_pointer end = next_node(prev)->next_;
|
||||
node_pointer end = next_node(next_node(prev));
|
||||
this->delete_nodes(prev, end);
|
||||
this->fix_bucket(bucket_index, prev);
|
||||
return 1;
|
||||
@ -4074,7 +4074,7 @@ struct table : boost::unordered::detail::functions<typename Types::hasher,
|
||||
return 0;
|
||||
|
||||
node_pointer first_node = next_node(prev);
|
||||
link_pointer end = next_group(first_node);
|
||||
node_pointer end = next_group(first_node);
|
||||
|
||||
std::size_t deleted_count = this->delete_nodes(prev, end);
|
||||
this->fix_bucket(bucket_index, prev);
|
||||
@ -4261,7 +4261,7 @@ inline void table<Types>::rehash_impl(std::size_t num_buckets)
|
||||
}
|
||||
}
|
||||
}
|
||||
BOOST_CATCH(...) { delete_nodes(prev, link_pointer()); }
|
||||
BOOST_CATCH(...) { delete_nodes(prev, node_pointer()); }
|
||||
BOOST_CATCH_END
|
||||
}
|
||||
|
||||
|
@ -1616,7 +1616,7 @@ void unordered_map<K, T, H, P, A>::clear() BOOST_NOEXCEPT
|
||||
{
|
||||
if (table_.size_) {
|
||||
table_.clear_buckets();
|
||||
table_.delete_nodes(table_.get_previous_start(), link_pointer());
|
||||
table_.delete_nodes(table_.get_previous_start(), node_pointer());
|
||||
}
|
||||
}
|
||||
|
||||
@ -2101,7 +2101,7 @@ void unordered_multimap<K, T, H, P, A>::clear() BOOST_NOEXCEPT
|
||||
{
|
||||
if (table_.size_) {
|
||||
table_.clear_buckets();
|
||||
table_.delete_nodes(table_.get_previous_start(), link_pointer());
|
||||
table_.delete_nodes(table_.get_previous_start(), node_pointer());
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1280,7 +1280,7 @@ void unordered_set<T, H, P, A>::clear() BOOST_NOEXCEPT
|
||||
{
|
||||
if (table_.size_) {
|
||||
table_.clear_buckets();
|
||||
table_.delete_nodes(table_.get_previous_start(), link_pointer());
|
||||
table_.delete_nodes(table_.get_previous_start(), node_pointer());
|
||||
}
|
||||
}
|
||||
|
||||
@ -1684,7 +1684,7 @@ void unordered_multiset<T, H, P, A>::clear() BOOST_NOEXCEPT
|
||||
{
|
||||
if (table_.size_) {
|
||||
table_.clear_buckets();
|
||||
table_.delete_nodes(table_.get_previous_start(), link_pointer());
|
||||
table_.delete_nodes(table_.get_previous_start(), node_pointer());
|
||||
}
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user