libstdc++: __gnu_pbds::cc_hash_table< Key, Mapped, Hash_Fn, Eq_Fn, Comb_Hash_Fn, Resize_Policy, Store_Hash, _Alloc (original) (raw)
#include <[assoc_container.hpp](a01247%5Fsource.html)>
Public Types | |
---|---|
typedef Comb_Hash_Fn | comb_hash_fn |
typedef cc_hash_tag | container_category |
typedef Eq_Fn | eq_fn |
typedef Hash_Fn | hash_fn |
typedef Resize_Policy | resize_policy |
Public Member Functions | |
---|---|
cc_hash_table () | |
cc_hash_table (const cc_hash_table &other) | |
cc_hash_table (const hash_fn &h) | |
cc_hash_table (const hash_fn &h, const eq_fn &e) | |
cc_hash_table (const hash_fn &h, const eq_fn &e, const comb_hash_fn &ch) | |
cc_hash_table (const hash_fn &h, const eq_fn &e, const comb_hash_fn &ch, const resize_policy &rp) | |
template | |
cc_hash_table (It first, It last) | |
template | |
cc_hash_table (It first, It last, const hash_fn &h) | |
template | |
cc_hash_table (It first, It last, const hash_fn &h, const eq_fn &e) | |
template | |
cc_hash_table (It first, It last, const hash_fn &h, const eq_fn &e, const comb_hash_fn &ch) | |
template | |
cc_hash_table (It first, It last, const hash_fn &h, const eq_fn &e, const comb_hash_fn &ch, const resize_policy &rp) | |
cc_hash_table & | operator= (const cc_hash_table &other) |
void | swap (cc_hash_table &other) |
template<typename Key, typename Mapped, typename Hash_Fn = typename detail::default_hash_fn::type, typename Eq_Fn = typename detail::default_eq_fn::type, typename Comb_Hash_Fn = detail::default_comb_hash_fn::type, typename Resize_Policy = typename detail::default_resize_policy<Comb_Hash_Fn>::type, bool Store_Hash = detail::default_store_hash, typename _Alloc = std::allocator>
class __gnu_pbds::cc_hash_table< Key, Mapped, Hash_Fn, Eq_Fn, Comb_Hash_Fn, Resize_Policy, Store_Hash, _Alloc >
A collision-chaining hash-based associative container.
Template Parameters
Key | Key type. |
---|---|
Mapped | Map type. |
Hash_Fn | Hashing functor. |
Eq_Fn | Equal functor. |
Comb_Hash_Fn | Combining hash functor. If Hash_Fn is not null_type, then this is the ranged-hash functor; otherwise, this is the range-hashing functor. XXX(See Design::Hash-Based Containers::Hash Policies.) |
Resize_Policy | Resizes hash. |
Store_Hash | Indicates whether the hash value will be stored along with each key. If Hash_Fn is null_type, then the container will not compile if this value is true |
_Alloc | Allocator type. |
Base tag choices are: cc_hash_tag.
Base is basic_hash_table.
Definition at line 204 of file assoc_container.hpp.
template<typename Key , typename Mapped , typename Hash_Fn = typename detail::default_hash_fn::type, typename Eq_Fn = typename detail::default_eq_fn::type, typename Comb_Hash_Fn = detail::default_comb_hash_fn::type, typename Resize_Policy = typename detail::default_resize_policy<Comb_Hash_Fn>::type, bool Store_Hash = detail::default_store_hash, typename _Alloc = std::allocator>
typedef Comb_Hash_Fn __gnu_pbds::cc_hash_table< Key, Mapped, Hash_Fn, Eq_Fn, Comb_Hash_Fn, Resize_Policy, Store_Hash, _Alloc >::comb_hash_fn
◆ container_category
template<typename Key , typename Mapped , typename Hash_Fn = typename detail::default_hash_fn::type, typename Eq_Fn = typename detail::default_eq_fn::type, typename Comb_Hash_Fn = detail::default_comb_hash_fn::type, typename Resize_Policy = typename detail::default_resize_policy<Comb_Hash_Fn>::type, bool Store_Hash = detail::default_store_hash, typename _Alloc = std::allocator>
◆ eq_fn
template<typename Key , typename Mapped , typename Hash_Fn = typename detail::default_hash_fn::type, typename Eq_Fn = typename detail::default_eq_fn::type, typename Comb_Hash_Fn = detail::default_comb_hash_fn::type, typename Resize_Policy = typename detail::default_resize_policy<Comb_Hash_Fn>::type, bool Store_Hash = detail::default_store_hash, typename _Alloc = std::allocator>
typedef Eq_Fn __gnu_pbds::cc_hash_table< Key, Mapped, Hash_Fn, Eq_Fn, Comb_Hash_Fn, Resize_Policy, Store_Hash, _Alloc >::eq_fn
◆ hash_fn
template<typename Key , typename Mapped , typename Hash_Fn = typename detail::default_hash_fn::type, typename Eq_Fn = typename detail::default_eq_fn::type, typename Comb_Hash_Fn = detail::default_comb_hash_fn::type, typename Resize_Policy = typename detail::default_resize_policy<Comb_Hash_Fn>::type, bool Store_Hash = detail::default_store_hash, typename _Alloc = std::allocator>
typedef Hash_Fn __gnu_pbds::cc_hash_table< Key, Mapped, Hash_Fn, Eq_Fn, Comb_Hash_Fn, Resize_Policy, Store_Hash, _Alloc >::hash_fn
◆ resize_policy
template<typename Key , typename Mapped , typename Hash_Fn = typename detail::default_hash_fn::type, typename Eq_Fn = typename detail::default_eq_fn::type, typename Comb_Hash_Fn = detail::default_comb_hash_fn::type, typename Resize_Policy = typename detail::default_resize_policy<Comb_Hash_Fn>::type, bool Store_Hash = detail::default_store_hash, typename _Alloc = std::allocator>
typedef Resize_Policy __gnu_pbds::cc_hash_table< Key, Mapped, Hash_Fn, Eq_Fn, Comb_Hash_Fn, Resize_Policy, Store_Hash, _Alloc >::resize_policy
◆ cc_hash_table() [1/11]
template<typename Key , typename Mapped , typename Hash_Fn = typename detail::default_hash_fn::type, typename Eq_Fn = typename detail::default_eq_fn::type, typename Comb_Hash_Fn = detail::default_comb_hash_fn::type, typename Resize_Policy = typename detail::default_resize_policy<Comb_Hash_Fn>::type, bool Store_Hash = detail::default_store_hash, typename _Alloc = std::allocator>
__gnu_pbds::cc_hash_table< Key, Mapped, Hash_Fn, Eq_Fn, Comb_Hash_Fn, Resize_Policy, Store_Hash, _Alloc >::cc_hash_table ( ) | inline |
---|
◆ cc_hash_table() [2/11]
template<typename Key , typename Mapped , typename Hash_Fn = typename detail::default_hash_fn::type, typename Eq_Fn = typename detail::default_eq_fn::type, typename Comb_Hash_Fn = detail::default_comb_hash_fn::type, typename Resize_Policy = typename detail::default_resize_policy<Comb_Hash_Fn>::type, bool Store_Hash = detail::default_store_hash, typename _Alloc = std::allocator>
__gnu_pbds::cc_hash_table< Key, Mapped, Hash_Fn, Eq_Fn, Comb_Hash_Fn, Resize_Policy, Store_Hash, _Alloc >::cc_hash_table ( const hash_fn & h) | inline |
---|
Constructor taking some policy objects. r_hash_fn will be copied by the Hash_Fn object of the container object.
Definition at line 221 of file assoc_container.hpp.
◆ cc_hash_table() [3/11]
template<typename Key , typename Mapped , typename Hash_Fn = typename detail::default_hash_fn::type, typename Eq_Fn = typename detail::default_eq_fn::type, typename Comb_Hash_Fn = detail::default_comb_hash_fn::type, typename Resize_Policy = typename detail::default_resize_policy<Comb_Hash_Fn>::type, bool Store_Hash = detail::default_store_hash, typename _Alloc = std::allocator>
__gnu_pbds::cc_hash_table< Key, Mapped, Hash_Fn, Eq_Fn, Comb_Hash_Fn, Resize_Policy, Store_Hash, _Alloc >::cc_hash_table ( const hash_fn & h, const eq_fn & e ) | inline |
---|
Constructor taking some policy objects. r_hash_fn will be copied by the hash_fn object of the container object, and r_eq_fn will be copied by the eq_fn object of the container object.
Definition at line 228 of file assoc_container.hpp.
◆ cc_hash_table() [4/11]
template<typename Key , typename Mapped , typename Hash_Fn = typename detail::default_hash_fn::type, typename Eq_Fn = typename detail::default_eq_fn::type, typename Comb_Hash_Fn = detail::default_comb_hash_fn::type, typename Resize_Policy = typename detail::default_resize_policy<Comb_Hash_Fn>::type, bool Store_Hash = detail::default_store_hash, typename _Alloc = std::allocator>
__gnu_pbds::cc_hash_table< Key, Mapped, Hash_Fn, Eq_Fn, Comb_Hash_Fn, Resize_Policy, Store_Hash, _Alloc >::cc_hash_table ( const hash_fn & h, const eq_fn & e, const comb_hash_fn & ch ) | inline |
---|
Constructor taking some policy objects. r_hash_fn will be copied by the hash_fn object of the container object, r_eq_fn will be copied by the eq_fn object of the container object, and r_comb_hash_fn will be copied by the comb_hash_fn object of the container object.
Definition at line 236 of file assoc_container.hpp.
◆ cc_hash_table() [5/11]
template<typename Key , typename Mapped , typename Hash_Fn = typename detail::default_hash_fn::type, typename Eq_Fn = typename detail::default_eq_fn::type, typename Comb_Hash_Fn = detail::default_comb_hash_fn::type, typename Resize_Policy = typename detail::default_resize_policy<Comb_Hash_Fn>::type, bool Store_Hash = detail::default_store_hash, typename _Alloc = std::allocator>
__gnu_pbds::cc_hash_table< Key, Mapped, Hash_Fn, Eq_Fn, Comb_Hash_Fn, Resize_Policy, Store_Hash, _Alloc >::cc_hash_table ( const hash_fn & h, const eq_fn & e, const comb_hash_fn & ch, const resize_policy & rp ) | inline |
---|
Constructor taking some policy objects. r_hash_fn will be copied by the hash_fn object of the container object, r_eq_fn will be copied by the eq_fn object of the container object, r_comb_hash_fn will be copied by the comb_hash_fn object of the container object, and r_resize_policy will be copied by the resize_policy object of the container object.
Definition at line 245 of file assoc_container.hpp.
◆ cc_hash_table() [6/11]
template<typename Key , typename Mapped , typename Hash_Fn = typename detail::default_hash_fn::type, typename Eq_Fn = typename detail::default_eq_fn::type, typename Comb_Hash_Fn = detail::default_comb_hash_fn::type, typename Resize_Policy = typename detail::default_resize_policy<Comb_Hash_Fn>::type, bool Store_Hash = detail::default_store_hash, typename _Alloc = std::allocator>
template
__gnu_pbds::cc_hash_table< Key, Mapped, Hash_Fn, Eq_Fn, Comb_Hash_Fn, Resize_Policy, Store_Hash, _Alloc >::cc_hash_table ( It first, It last ) | inline |
---|
Constructor taking __iterators to a range of value_types. The value_types between first_it and last_it will be inserted into the container object.
Definition at line 253 of file assoc_container.hpp.
◆ cc_hash_table() [7/11]
template<typename Key , typename Mapped , typename Hash_Fn = typename detail::default_hash_fn::type, typename Eq_Fn = typename detail::default_eq_fn::type, typename Comb_Hash_Fn = detail::default_comb_hash_fn::type, typename Resize_Policy = typename detail::default_resize_policy<Comb_Hash_Fn>::type, bool Store_Hash = detail::default_store_hash, typename _Alloc = std::allocator>
template
__gnu_pbds::cc_hash_table< Key, Mapped, Hash_Fn, Eq_Fn, Comb_Hash_Fn, Resize_Policy, Store_Hash, _Alloc >::cc_hash_table ( It first, It last, const hash_fn & h ) | inline |
---|
Constructor taking __iterators to a range of value_types and some policy objects. The value_types between first_it and last_it will be inserted into the container object.
Definition at line 260 of file assoc_container.hpp.
◆ cc_hash_table() [8/11]
template<typename Key , typename Mapped , typename Hash_Fn = typename detail::default_hash_fn::type, typename Eq_Fn = typename detail::default_eq_fn::type, typename Comb_Hash_Fn = detail::default_comb_hash_fn::type, typename Resize_Policy = typename detail::default_resize_policy<Comb_Hash_Fn>::type, bool Store_Hash = detail::default_store_hash, typename _Alloc = std::allocator>
template
__gnu_pbds::cc_hash_table< Key, Mapped, Hash_Fn, Eq_Fn, Comb_Hash_Fn, Resize_Policy, Store_Hash, _Alloc >::cc_hash_table ( It first, It last, const hash_fn & h, const eq_fn & e ) | inline |
---|
Constructor taking __iterators to a range of value_types and some policy objects The value_types between first_it and last_it will be inserted into the container object. r_hash_fn will be copied by the hash_fn object of the container object, and r_eq_fn will be copied by the eq_fn object of the container object.
Definition at line 271 of file assoc_container.hpp.
◆ cc_hash_table() [9/11]
template<typename Key , typename Mapped , typename Hash_Fn = typename detail::default_hash_fn::type, typename Eq_Fn = typename detail::default_eq_fn::type, typename Comb_Hash_Fn = detail::default_comb_hash_fn::type, typename Resize_Policy = typename detail::default_resize_policy<Comb_Hash_Fn>::type, bool Store_Hash = detail::default_store_hash, typename _Alloc = std::allocator>
template
__gnu_pbds::cc_hash_table< Key, Mapped, Hash_Fn, Eq_Fn, Comb_Hash_Fn, Resize_Policy, Store_Hash, _Alloc >::cc_hash_table ( It first, It last, const hash_fn & h, const eq_fn & e, const comb_hash_fn & ch ) | inline |
---|
Constructor taking __iterators to a range of value_types and some policy objects The value_types between first_it and last_it will be inserted into the container object. r_hash_fn will be copied by the hash_fn object of the container object, r_eq_fn will be copied by the eq_fn object of the container object, and r_comb_hash_fn will be copied by the comb_hash_fn object of the container object.
Definition at line 283 of file assoc_container.hpp.
◆ cc_hash_table() [10/11]
template<typename Key , typename Mapped , typename Hash_Fn = typename detail::default_hash_fn::type, typename Eq_Fn = typename detail::default_eq_fn::type, typename Comb_Hash_Fn = detail::default_comb_hash_fn::type, typename Resize_Policy = typename detail::default_resize_policy<Comb_Hash_Fn>::type, bool Store_Hash = detail::default_store_hash, typename _Alloc = std::allocator>
template
__gnu_pbds::cc_hash_table< Key, Mapped, Hash_Fn, Eq_Fn, Comb_Hash_Fn, Resize_Policy, Store_Hash, _Alloc >::cc_hash_table ( It first, It last, const hash_fn & h, const eq_fn & e, const comb_hash_fn & ch, const resize_policy & rp ) | inline |
---|
Constructor taking __iterators to a range of value_types and some policy objects The value_types between first_it and last_it will be inserted into the container object. r_hash_fn will be copied by the hash_fn object of the container object, r_eq_fn will be copied by the eq_fn object of the container object, r_comb_hash_fn will be copied by the comb_hash_fn object of the container object, and r_resize_policy will be copied by the resize_policy object of the container object.
Definition at line 297 of file assoc_container.hpp.
◆ cc_hash_table() [11/11]
template<typename Key , typename Mapped , typename Hash_Fn = typename detail::default_hash_fn::type, typename Eq_Fn = typename detail::default_eq_fn::type, typename Comb_Hash_Fn = detail::default_comb_hash_fn::type, typename Resize_Policy = typename detail::default_resize_policy<Comb_Hash_Fn>::type, bool Store_Hash = detail::default_store_hash, typename _Alloc = std::allocator>
__gnu_pbds::cc_hash_table< Key, Mapped, Hash_Fn, Eq_Fn, Comb_Hash_Fn, Resize_Policy, Store_Hash, _Alloc >::cc_hash_table ( const cc_hash_table< Key, Mapped, Hash_Fn, Eq_Fn, Comb_Hash_Fn, Resize_Policy, Store_Hash, _Alloc > & other) | inline |
---|
◆ ~cc_hash_table()
template<typename Key , typename Mapped , typename Hash_Fn = typename detail::default_hash_fn::type, typename Eq_Fn = typename detail::default_eq_fn::type, typename Comb_Hash_Fn = detail::default_comb_hash_fn::type, typename Resize_Policy = typename detail::default_resize_policy<Comb_Hash_Fn>::type, bool Store_Hash = detail::default_store_hash, typename _Alloc = std::allocator>
◆ operator=()
template<typename Key , typename Mapped , typename Hash_Fn = typename detail::default_hash_fn::type, typename Eq_Fn = typename detail::default_eq_fn::type, typename Comb_Hash_Fn = detail::default_comb_hash_fn::type, typename Resize_Policy = typename detail::default_resize_policy<Comb_Hash_Fn>::type, bool Store_Hash = detail::default_store_hash, typename _Alloc = std::allocator>
cc_hash_table & __gnu_pbds::cc_hash_table< Key, Mapped, Hash_Fn, Eq_Fn, Comb_Hash_Fn, Resize_Policy, Store_Hash, _Alloc >::operator= ( const cc_hash_table< Key, Mapped, Hash_Fn, Eq_Fn, Comb_Hash_Fn, Resize_Policy, Store_Hash, _Alloc > & other) | inline |
---|
◆ swap()
template<typename Key , typename Mapped , typename Hash_Fn = typename detail::default_hash_fn::type, typename Eq_Fn = typename detail::default_eq_fn::type, typename Comb_Hash_Fn = detail::default_comb_hash_fn::type, typename Resize_Policy = typename detail::default_resize_policy<Comb_Hash_Fn>::type, bool Store_Hash = detail::default_store_hash, typename _Alloc = std::allocator>
void __gnu_pbds::cc_hash_table< Key, Mapped, Hash_Fn, Eq_Fn, Comb_Hash_Fn, Resize_Policy, Store_Hash, _Alloc >::swap ( cc_hash_table< Key, Mapped, Hash_Fn, Eq_Fn, Comb_Hash_Fn, Resize_Policy, Store_Hash, _Alloc > & other) | inline |
---|
The documentation for this class was generated from the following file: