sandbox
Loading...
Searching...
No Matches
sbx::containers::dense_map< Key, Type, Hash, KeyEqual, Allocator > Class Template Reference

Public Types

using allocator_type = Allocator
 
using value_type = std::pair< Key, Type >
 
using key_type = Key
 
using mapped_type = Type
 
using size_type = std::size_t
 
using difference_type = std::ptrdiff_t
 
using hasher = Hash
 
using key_equal = KeyEqual
 
using iterator = detail::dense_map_iterator< typename dense_container_type::iterator >
 
using const_iterator = detail::dense_map_iterator< typename dense_container_type::const_iterator >
 
using local_iterator = detail::dense_map_local_iterator< typename dense_container_type::iterator >
 
using const_local_iterator = detail::dense_map_local_iterator< typename dense_container_type::const_iterator >
 

Public Member Functions

 dense_map (const allocator_type &allocator)
 
 dense_map (const size_type count, const allocator_type &allocator)
 
 dense_map (const size_type count, const hasher &hash, const allocator_type &allocator)
 
 dense_map (const size_type count, const hasher &hash=hasher{}, const key_equal &equal=key_equal{}, const allocator_type &allocator=allocator_type{})
 
 dense_map (const dense_map &other)=default
 
 dense_map (const dense_map &other, const allocator_type &allocator)
 
 dense_map (dense_map &&other) noexcept=default
 
 dense_map (dense_map &&other, const allocator_type &allocator)
 
auto operator= (const dense_map &other) -> dense_map &=default
 
auto operator= (dense_map &&other) noexcept -> dense_map &=default
 
auto swap (dense_map &other) noexcept -> void
 
constexpr auto get_allocator () const noexcept -> allocator_type
 
auto cbegin () const noexcept -> const_iterator
 
auto begin () const noexcept -> const_iterator
 
auto begin () noexcept -> iterator
 
auto cend () const noexcept -> const_iterator
 
auto end () const noexcept -> const_iterator
 
auto end () noexcept -> iterator
 
bool empty () const noexcept
 
auto size () const noexcept -> size_type
 
auto max_size () const noexcept -> size_type
 
auto clear () noexcept -> void
 
auto insert (const value_type &value) -> std::pair< iterator, bool >
 
auto insert (value_type &&value) -> std::pair< iterator, bool >
 
template<typename Arg >
requires (std::is_constructible_v<value_type, Arg&&>)
auto insert (Arg &&value) -> std::pair< iterator, bool >
 
template<typename... Args>
auto emplace (Args &&... args) -> std::pair< iterator, bool >
 
auto erase (const_iterator position) -> iterator
 
auto erase (const key_type &key) -> bool
 
auto at (const key_type &key) -> mapped_type &
 
auto at (const key_type &key) const -> const mapped_type &
 
auto operator[] (const key_type &key) -> mapped_type &
 
auto operator[] (key_type &&key) -> mapped_type &
 
auto find (const key_type &key) -> iterator
 
auto find (const key_type &key) const -> const_iterator
 
auto contains (const key_type &key) const -> bool
 
auto cbegin (const size_type index) const -> const_local_iterator
 
auto begin (const size_type index) const -> const_local_iterator
 
auto begin (const size_type index) -> local_iterator
 
auto cend (const size_type index) const -> const_local_iterator
 
auto end (const size_type index) const -> const_local_iterator
 
auto end (const size_type index) -> local_iterator
 
auto max_load_factor () const -> std::float_t
 
auto set_max_load_factor (const std::float_t value) -> void
 
auto bucket_count () const -> size_type
 
void rehash (const size_type count)
 
void reserve (const size_type count)
 
auto hash_function () const -> hasher
 
auto key_eq () const -> key_equal
 

Member Function Documentation

◆ at()

template<typename Key , typename Type , typename Hash = std::hash<Key>, typename KeyEqual = std::equal_to<Key>, typename Allocator = std::allocator<std::pair<Key, Type>>>
auto sbx::containers::dense_map< Key, Type, Hash, KeyEqual, Allocator >::at ( const key_type &  key) const -> const mapped_type&
inline


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