Caffe2 - C++ API
A deep learning, cross platform ML framework
Data Structures | Public Types | Public Member Functions | Friends
ska::flat_hash_map< K, V, H, E, A > Class Template Reference
Inheritance diagram for ska::flat_hash_map< K, V, H, E, A >:
ska::detailv3::sherwood_v3_table< std::pair< K, V >, K, H, detailv3::KeyOrValueHasher< K, std::pair< K, V >, H >, E, detailv3::KeyOrValueEquality< K, std::pair< K, V >, E >, A, std::allocator_traits< A >::template rebind_alloc< detailv3::sherwood_v3_entry< std::pair< K, V > > > > ska::detailv3::KeyOrValueHasher< K, std::pair< K, V >, H > ska::detailv3::KeyOrValueEquality< K, std::pair< K, V >, E >

Public Types

using key_type = K
 
using mapped_type = V
 
- Public Types inherited from ska::detailv3::sherwood_v3_table< std::pair< K, V >, K, H, detailv3::KeyOrValueHasher< K, std::pair< K, V >, H >, E, detailv3::KeyOrValueEquality< K, std::pair< K, V >, E >, A, std::allocator_traits< A >::template rebind_alloc< detailv3::sherwood_v3_entry< std::pair< K, V > > > >
using value_type = std::pair< K, V >
 
using size_type = uint64_t
 
using difference_type = std::ptrdiff_t
 
using hasher = H
 
using key_equal = E
 
using allocator_type = std::allocator_traits< A >::template rebind_alloc< detailv3::sherwood_v3_entry< std::pair< K, V > > >
 
using reference = value_type &
 
using const_reference = const value_type &
 
using pointer = value_type *
 
using const_pointer = const value_type *
 
using iterator = templated_iterator< value_type >
 
using const_iterator = templated_iterator< const value_type >
 

Public Member Functions

V & operator[] (const K &key)
 
V & operator[] (K &&key)
 
V & at (const K &key)
 
const V & at (const K &key) const
 
std::pair< typename Table::iterator, bool > emplace ()
 
template<typename M >
std::pair< typename Table::iterator, bool > insert_or_assign (const key_type &key, M &&m)
 
template<typename M >
std::pair< typename Table::iterator, bool > insert_or_assign (key_type &&key, M &&m)
 
template<typename M >
Table::iterator insert_or_assign (typename Table::const_iterator, const key_type &key, M &&m)
 
template<typename M >
Table::iterator insert_or_assign (typename Table::const_iterator, key_type &&key, M &&m)
 
- Public Member Functions inherited from ska::detailv3::sherwood_v3_table< std::pair< K, V >, K, H, detailv3::KeyOrValueHasher< K, std::pair< K, V >, H >, E, detailv3::KeyOrValueEquality< K, std::pair< K, V >, E >, A, std::allocator_traits< A >::template rebind_alloc< detailv3::sherwood_v3_entry< std::pair< K, V > > > >
 sherwood_v3_table (size_type bucket_count, const H &hash=H(), const E &equal=E(), const A &alloc=A())
 
 sherwood_v3_table (size_type bucket_count, const A &alloc)
 
 sherwood_v3_table (size_type bucket_count, const H &hash, const A &alloc)
 
 sherwood_v3_table (const A &alloc)
 
 sherwood_v3_table (It first, It last, size_type bucket_count=0, const H &hash=H(), const E &equal=E(), const A &alloc=A())
 
 sherwood_v3_table (It first, It last, size_type bucket_count, const A &alloc)
 
 sherwood_v3_table (It first, It last, size_type bucket_count, const H &hash, const A &alloc)
 
 sherwood_v3_table (std::initializer_list< std::pair< K, V > > il, size_type bucket_count=0, const H &hash=H(), const E &equal=E(), const A &alloc=A())
 
 sherwood_v3_table (std::initializer_list< std::pair< K, V > > il, size_type bucket_count, const A &alloc)
 
 sherwood_v3_table (std::initializer_list< std::pair< K, V > > il, size_type bucket_count, const H &hash, const A &alloc)
 
 sherwood_v3_table (const sherwood_v3_table &other)
 
 sherwood_v3_table (const sherwood_v3_table &other, const A &alloc)
 
 sherwood_v3_table (sherwood_v3_table &&other) noexcept
 
 sherwood_v3_table (sherwood_v3_table &&other, const A &alloc) noexcept
 
sherwood_v3_tableoperator= (const sherwood_v3_table &other)
 
sherwood_v3_tableoperator= (sherwood_v3_table &&other) noexcept
 
const allocator_type & get_allocator () const
 
const Ekey_eq () const
 
const H & hash_function () const
 
iterator begin ()
 
const_iterator begin () const
 
const_iterator cbegin () const
 
iterator end ()
 
const_iterator end () const
 
const_iterator cend () const
 
iterator find (const K &key)
 
const_iterator find (const K &key) const
 
uint64_t count (const K &key) const
 
std::pair< iterator, iterator > equal_range (const K &key)
 
std::pair< const_iterator, const_iterator > equal_range (const K &key) const
 
std::pair< iterator, bool > emplace (Key &&key, Args &&...args)
 
std::pair< iterator, bool > insert (const value_type &value)
 
std::pair< iterator, bool > insert (value_type &&value)
 
iterator insert (const_iterator, const value_type &value)
 
iterator insert (const_iterator, value_type &&value)
 
void insert (It begin, It end)
 
void insert (std::initializer_list< value_type > il)
 
iterator emplace_hint (const_iterator, Args &&...args)
 
void rehash (uint64_t num_buckets)
 
void reserve (uint64_t num_elements)
 
convertible_to_iterator erase (const_iterator to_erase)
 
iterator erase (const_iterator begin_it, const_iterator end_it)
 
uint64_t erase (const K &key)
 
void clear ()
 
void shrink_to_fit ()
 
void swap (sherwood_v3_table &other)
 
uint64_t size () const
 
uint64_t max_size () const
 
uint64_t bucket_count () const
 
size_type max_bucket_count () const
 
uint64_t bucket (const K &key) const
 
float load_factor () const
 
void max_load_factor (float value)
 
float max_load_factor () const
 
bool empty () const
 

Friends

bool operator== (const flat_hash_map &lhs, const flat_hash_map &rhs)
 
bool operator!= (const flat_hash_map &lhs, const flat_hash_map &rhs)
 

Detailed Description

template<typename K, typename V, typename H = std::hash<K>, typename E = std::equal_to<K>, typename A = std::allocator<std::pair<K, V> >>
class ska::flat_hash_map< K, V, H, E, A >

Definition at line 1321 of file flat_hash_map.h.


The documentation for this class was generated from the following file: