47 PB_DS_ASSERT_VALID((*
this))
48 key_const_reference r_key = PB_DS_V2F(r_val);
49 const size_type pos = ranged_hash_fn_base::operator()(r_key);
50 entry_pointer p_e = m_entries[pos];
51 resize_base::notify_insert_search_start();
53 while (p_e != 0 && !hash_eq_fn_base::operator()(PB_DS_V2F(p_e->m_value),
56 resize_base::notify_insert_search_collision();
60 resize_base::notify_insert_search_end();
63 PB_DS_CHECK_KEY_EXISTS(r_key)
64 return std::
make_pair(&p_e->m_value, false);
67 PB_DS_CHECK_KEY_DOES_NOT_EXIST(r_key)
68 return std::
make_pair(insert_new_imp(r_val, pos), true);
constexpr pair< typename __decay_and_strip< _T1 >::__type, typename __decay_and_strip< _T2 >::__type > make_pair(_T1 &&__x, _T2 &&__y)
A convenience wrapper for creating a pair from two objects.
Struct holding two objects of arbitrary type.
integral_constant< bool, false > false_type
The type used as a compile-time boolean with false value.