hash_policy.hpp File Reference

#include <algorithm>
#include <vector>
#include <cmath>
#include <ext/pb_assoc/exception.hpp>
#include <ext/pb_assoc/detail/hash_fn/mask_based_range_hashing.hpp>
#include <ext/pb_assoc/detail/hash_fn/mod_based_range_hashing.hpp>
#include <ext/pb_assoc/detail/resize_policy/size_base.hpp>
#include <ext/pb_assoc/detail/hash_fn/linear_probe_fn_imp.hpp>
#include <ext/pb_assoc/detail/hash_fn/quadratic_probe_fn_imp.hpp>
#include <ext/pb_assoc/detail/hash_fn/direct_mask_range_hashing_imp.hpp>
#include <ext/pb_assoc/detail/hash_fn/direct_mod_range_hashing_imp.hpp>
#include <ext/pb_assoc/detail/resize_policy/hash_load_check_resize_trigger_imp.hpp>
#include <ext/pb_assoc/detail/resize_policy/cc_hash_max_collision_resize_trigger_imp.hpp>
#include <ext/pb_assoc/detail/resize_policy/hash_exponential_size_policy_imp.hpp>
#include <ext/pb_assoc/detail/resize_policy/hash_prime_size_policy_imp.hpp>
#include <ext/pb_assoc/detail/resize_policy/hash_standard_resize_policy_imp.hpp>

Go to the source code of this file.

Namespaces

namespace  pb_assoc

Classes

struct  pb_assoc::null_hash_fn
struct  pb_assoc::null_probe_fn
class  pb_assoc::linear_probe_fn< Const_Key_Ref, Size_Type >
class  pb_assoc::quadratic_probe_fn< Const_Key_Ref, Size_Type >
class  pb_assoc::direct_mask_range_hashing< Size_Type >
class  pb_assoc::direct_mod_range_hashing< Size_Type >
class  pb_assoc::hash_load_check_resize_trigger< External_Load_Access, Size_Type >
class  pb_assoc::cc_hash_max_collision_check_resize_trigger< External_Load_Access, Size_Type >
class  pb_assoc::cc_hash_max_collision_check_resize_trigger< External_Load_Access, Size_Type >::max_col_checker< Key >
class  pb_assoc::hash_exponential_size_policy< Size_Type >
struct  pb_assoc::hash_prime_size_policy
class  pb_assoc::hash_standard_resize_policy< Size_Policy, Trigger_Policy, External_Size_Access, Size_Type >

Defines

#define PB_ASSOC_CLASS_T_DEC   template<typename Const_Key_Ref, typename Size_Type>
#define PB_ASSOC_CLASS_C_DEC
#define PB_ASSOC_CLASS_T_DEC   template<class Const_Key_Ref, typename Size_Type>
#define PB_ASSOC_CLASS_C_DEC   quadratic_probe_fn<Const_Key_Ref, Size_Type>
#define PB_ASSOC_CLASS_T_DEC   template<typename Size_Type>
#define PB_ASSOC_CLASS_C_DEC   direct_mask_range_hashing<Size_Type>
#define PB_ASSOC_MASK_BASED_C_DEC
#define PB_ASSOC_CLASS_T_DEC   template<typename Size_Type>
#define PB_ASSOC_CLASS_C_DEC   direct_mod_range_hashing<Size_Type>
#define PB_ASSOC_MOD_BASED_C_DEC   pb_assoc::detail::mod_based_range_hashing<Size_Type>
#define PB_ASSOC_DBG_ASSERT(X)
#define PB_ASSOC_DBG_VERIFY(X)   {if((X)==0);}
#define PB_ASSOC_DBG_ONLY(X)   ;
#define PB_ASSOC_CLASS_T_DEC   template<bool External_Load_Access, typename Size_Type>
#define PB_ASSOC_CLASS_C_DEC   hash_load_check_resize_trigger<External_Load_Access, Size_Type>
#define PB_ASSOC_SIZE_BASE_C_DEC   pb_assoc::detail::size_base<Size_Type, External_Load_Access>
#define PB_ASSOC_DBG_ASSERT(X)
#define PB_ASSOC_DBG_VERIFY(X)   {if((X)==0);}
#define PB_ASSOC_DBG_ONLY(X)   ;
#define PB_ASSOC_CLASS_T_DEC   template<bool External_Load_Access, typename Size_Type>
#define PB_ASSOC_CLASS_C_DEC
#define PB_ASSOC_CLASS_T_DEC   template<typename Size_Type>
#define PB_ASSOC_CLASS_C_DEC
#define PB_ASSOC_CLASS_T_DEC
#define PB_ASSOC_CLASS_C_DEC   hash_prime_size_policy
#define PB_ASSOC_DBG_ASSERT(X)
#define PB_ASSOC_DBG_VERIFY(X)   {if((X)==0);}
#define PB_ASSOC_DBG_ONLY(X)   ;
#define PB_ASSOC_CLASS_T_DEC
#define PB_ASSOC_CLASS_C_DEC


Define Documentation

#define PB_ASSOC_CLASS_C_DEC

Value:

hash_standard_resize_policy< \
        Size_Policy, \
        Trigger_Policy, \
        External_Size_Access, \
        Size_Type>

Definition at line 573 of file hash_policy.hpp.

#define PB_ASSOC_CLASS_C_DEC   hash_prime_size_policy

Definition at line 573 of file hash_policy.hpp.

#define PB_ASSOC_CLASS_C_DEC

Value:

hash_exponential_size_policy< \
        Size_Type>

Definition at line 573 of file hash_policy.hpp.

#define PB_ASSOC_CLASS_C_DEC

Value:

cc_hash_max_collision_check_resize_trigger< \
        External_Load_Access, \
        Size_Type>

Definition at line 573 of file hash_policy.hpp.

#define PB_ASSOC_CLASS_C_DEC   hash_load_check_resize_trigger<External_Load_Access, Size_Type>

Definition at line 573 of file hash_policy.hpp.

#define PB_ASSOC_CLASS_C_DEC   direct_mod_range_hashing<Size_Type>

Definition at line 573 of file hash_policy.hpp.

#define PB_ASSOC_CLASS_C_DEC   direct_mask_range_hashing<Size_Type>

Definition at line 573 of file hash_policy.hpp.

#define PB_ASSOC_CLASS_C_DEC   quadratic_probe_fn<Const_Key_Ref, Size_Type>

Definition at line 573 of file hash_policy.hpp.

#define PB_ASSOC_CLASS_C_DEC

Value:

linear_probe_fn< \
        Const_Key_Ref, \
        Size_Type>

Definition at line 573 of file hash_policy.hpp.

#define PB_ASSOC_CLASS_T_DEC

Value:

template< \
        class Size_Policy, \
        class Trigger_Policy, \
        bool External_Size_Access, \
        typename Size_Type>

Definition at line 566 of file hash_policy.hpp.

#define PB_ASSOC_CLASS_T_DEC

Definition at line 566 of file hash_policy.hpp.

#define PB_ASSOC_CLASS_T_DEC   template<typename Size_Type>

Definition at line 566 of file hash_policy.hpp.

#define PB_ASSOC_CLASS_T_DEC   template<bool External_Load_Access, typename Size_Type>

Definition at line 566 of file hash_policy.hpp.

#define PB_ASSOC_CLASS_T_DEC   template<bool External_Load_Access, typename Size_Type>

Definition at line 566 of file hash_policy.hpp.

#define PB_ASSOC_CLASS_T_DEC   template<typename Size_Type>

Definition at line 566 of file hash_policy.hpp.

#define PB_ASSOC_CLASS_T_DEC   template<typename Size_Type>

Definition at line 566 of file hash_policy.hpp.

#define PB_ASSOC_CLASS_T_DEC   template<class Const_Key_Ref, typename Size_Type>

Definition at line 566 of file hash_policy.hpp.

#define PB_ASSOC_CLASS_T_DEC   template<typename Const_Key_Ref, typename Size_Type>

Definition at line 566 of file hash_policy.hpp.

#define PB_ASSOC_DBG_ASSERT (  ) 

Definition at line 526 of file hash_policy.hpp.

#define PB_ASSOC_DBG_ASSERT (  ) 

Definition at line 526 of file hash_policy.hpp.

#define PB_ASSOC_DBG_ASSERT (  ) 

Definition at line 526 of file hash_policy.hpp.

#define PB_ASSOC_DBG_ONLY (  )     ;

Definition at line 528 of file hash_policy.hpp.

#define PB_ASSOC_DBG_ONLY (  )     ;

Definition at line 528 of file hash_policy.hpp.

#define PB_ASSOC_DBG_ONLY (  )     ;

Definition at line 528 of file hash_policy.hpp.

#define PB_ASSOC_DBG_VERIFY (  )     {if((X)==0);}

Definition at line 527 of file hash_policy.hpp.

#define PB_ASSOC_DBG_VERIFY (  )     {if((X)==0);}

Definition at line 527 of file hash_policy.hpp.

#define PB_ASSOC_DBG_VERIFY (  )     {if((X)==0);}

Definition at line 527 of file hash_policy.hpp.

#define PB_ASSOC_MASK_BASED_C_DEC

Value:

Definition at line 144 of file hash_policy.hpp.

#define PB_ASSOC_MOD_BASED_C_DEC   pb_assoc::detail::mod_based_range_hashing<Size_Type>

Definition at line 161 of file hash_policy.hpp.

#define PB_ASSOC_SIZE_BASE_C_DEC   pb_assoc::detail::size_base<Size_Type, External_Load_Access>

Definition at line 211 of file hash_policy.hpp.


Generated on Tue Feb 2 16:57:19 2010 for GNU C++ STL by  doxygen 1.4.7