42 inline typename PB_DS_CLASS_C_DEC::entry_pointer
44 find_imp(key_const_reference r_key)
const
48 if (s_eq_fn(r_key, PB_DS_V2F(m_p_l->m_value)))
50 apply_update(m_p_l, s_metadata_type_indicator);
51 PB_DS_CHECK_KEY_EXISTS(r_key)
55 entry_pointer p_l = m_p_l;
56 while (p_l->m_p_next != 0)
58 entry_pointer p_next = p_l->m_p_next;
59 if (s_eq_fn(r_key, PB_DS_V2F(p_next->m_value)))
61 if (apply_update(p_next, s_metadata_type_indicator))
63 p_l->m_p_next = p_next->m_p_next;
64 p_next->m_p_next = m_p_l;
74 PB_DS_CHECK_KEY_DOES_NOT_EXIST(r_key)
79 template<typename Metadata>
82 apply_update(entry_pointer p_l, type_to_type<Metadata>)
83 {
return s_update_policy(p_l->m_update_metadata); }
88 apply_update(entry_pointer, type_to_type<null_type>)
89 {
return s_update_policy(s_null_type); }