BOOST_DEDUCED_TYPENAME hash_unique_table<H, P, A, K>::emplace_return hash_unique_table<H, P, A, K>::emplace(Arg0 const& arg0) { return this->size_ ? emplace_impl(extractor::extract(arg0), arg0) : emplace_empty_impl(arg0); }
void insert_for_range(I i, I j, ::boost::incrementable_traversal_tag) { node_constructor a(*this); for (; i != j; ++i) { a.construct(*i); emplace_impl(a); } }
BOOST_DEDUCED_TYPENAME hash_unique_table<H, P, A, K>::emplace_return hash_unique_table<H, P, A, K>::emplace(Args&&... args) { return this->size_ ? emplace_impl( extractor::extract(std::forward<Args>(args)...), std::forward<Args>(args)...) : emplace_empty_impl(std::forward<Args>(args)...); }
node_ptr emplace(Args&&... args) { // Create the node before rehashing in case it throws an // exception (need strong safety in such a case). node_constructor a(*this); a.construct(std::forward<Args>(args)...); return emplace_impl(a); }