43 cc_hash_max_collision_check_resize_trigger(
float load) :
 
   48   m_resize_needed(false)
 
   54 notify_find_search_start()
 
   60 notify_find_search_collision()
 
   66 notify_find_search_end()
 
   72 notify_insert_search_start()
 
   78 notify_insert_search_collision()
 
   84 notify_insert_search_end()
 
   85 { calc_resize_needed(); }
 
   90 notify_erase_search_start()
 
   96 notify_erase_search_collision()
 
  102 notify_erase_search_end()
 
  108 notify_inserted(size_type)
 
  114 notify_erased(size_type)
 
  115 { m_resize_needed = 
true; }
 
  121 { m_resize_needed = 
false; }
 
  126 is_resize_needed()
 const 
  127 { 
return m_resize_needed; }
 
  132 is_grow_needed(size_type , size_type )
 const 
  133 { 
return m_num_col >= m_max_col; }
 
  138 notify_resized(size_type new_size)
 
  142 #ifdef PB_DS_HT_MAP_RESIZE_TRACE_ 
  143   std::cerr << 
"chmccrt::notify_resized "  
  144         << 
static_cast<unsigned long>(new_size) << std::endl;
 
  148   calc_resize_needed();
 
  158   const double ln_arg = 2 * m_size * std::log(
double(m_size));
 
  159   m_max_col = size_type(std::ceil(std::sqrt(2 * m_load * std::log(ln_arg))));
 
  161 #ifdef PB_DS_HT_MAP_RESIZE_TRACE_ 
  162   std::cerr << 
"chmccrt::calc_max_num_coll "  
  163         << 
static_cast<unsigned long>(m_size) <<    
"    "  
  164         << static_cast<unsigned long>(m_max_col) << std::endl;
 
  171 notify_externally_resized(size_type new_size)
 
  172 { notify_resized(new_size); }
 
  177 swap(PB_DS_CLASS_C_DEC& other)
 
  183   std::swap(m_resize_needed, other.m_resize_needed);
 
  191   PB_DS_STATIC_ASSERT(access, external_load_access);
 
  199 { m_resize_needed = m_resize_needed || m_num_col >= m_max_col; }
 
  206   PB_DS_STATIC_ASSERT(access, external_load_access);
 
  209   calc_resize_needed();
 
void swap(_Tp &, _Tp &) noexcept(__and_< is_nothrow_move_constructible< _Tp >, is_nothrow_move_assignable< _Tp >>::value)
Swaps two values.