kblib 0.2.3
General utilities library for modern C++
|
#include <kblib/direct_map.h>
Public Types | |
using | key_type = Key |
using | mapped_type = T |
using | value_type = std::pair< const Key, T > |
using | size_type = std::size_t |
using | difference_type = std::ptrdiff_t |
using | reference = value_type & |
using | const_reference = const value_type & |
using | pointer = value_type * |
using | const_pointer = const value_type * |
using | iterator = iter< value_type > |
using | const_iterator = iter< const value_type > |
using | reverse_iterator = std::reverse_iterator< iterator > |
using | const_reverse_iterator = std::reverse_iterator< const_iterator > |
Public Member Functions | |
constexpr | direct_map () noexcept=default |
template<typename InputIt > | |
constexpr | direct_map (InputIt first, InputIt last) |
constexpr | direct_map (const direct_map &other) |
constexpr | direct_map (direct_map &&other) noexcept |
constexpr | direct_map (std::initializer_list< value_type > init) |
KBLIB_CXX20 (constexpr) ~direct_map() | |
constexpr auto | operator= (const direct_map &other) -> direct_map & |
constexpr auto | operator= (direct_map &&other) noexcept -> direct_map &=default |
constexpr auto | operator= (std::initializer_list< value_type > init) -> direct_map & |
KBLIB_NODISCARD constexpr auto | at (Key key) &-> T & |
KBLIB_NODISCARD constexpr auto | at (Key key) &&-> T && |
KBLIB_NODISCARD constexpr auto | at (Key key) const &-> const T & |
KBLIB_NODISCARD constexpr auto | at (Key key) const &&-> const T && |
KBLIB_NODISCARD constexpr T & | operator[] (Key key) noexcept(std::is_nothrow_default_constructible< T >::value) |
KBLIB_NODISCARD constexpr auto | begin () &noexcept -> iterator |
KBLIB_NODISCARD constexpr auto | begin () const &noexcept -> const_iterator |
KBLIB_NODISCARD constexpr auto | cbegin () const &noexcept -> const_iterator |
KBLIB_NODISCARD constexpr auto | end () &noexcept -> iterator |
KBLIB_NODISCARD constexpr auto | end () const &noexcept -> const_iterator |
KBLIB_NODISCARD constexpr auto | cend () const &noexcept -> const_iterator |
KBLIB_NODISCARD constexpr auto | rbegin () &noexcept -> auto |
KBLIB_NODISCARD constexpr auto | rbegin () const &noexcept -> auto |
KBLIB_NODISCARD constexpr auto | crbegin () const &noexcept -> auto |
KBLIB_NODISCARD constexpr auto | rend () &noexcept -> auto |
KBLIB_NODISCARD constexpr auto | rend () const &noexcept -> auto |
KBLIB_NODISCARD constexpr auto | crend () const &noexcept -> auto |
KBLIB_NODISCARD constexpr auto | empty () const &noexcept -> bool |
KBLIB_NODISCARD constexpr auto | size () const &noexcept -> std::size_t |
KBLIB_NODISCARD constexpr auto | ssize () const &noexcept -> std::ptrdiff_t |
constexpr auto | clear () noexcept -> void |
constexpr auto | insert (const value_type &value) -> std::pair< iterator, bool > |
template<typename U > | |
constexpr auto | insert (U &&value) -> enable_if_t< std::is_constructible< value_type, U && >::value, std::pair< iterator, bool > > |
constexpr auto | insert (value_type &&value) -> std::pair< iterator, bool > |
template<typename U > | |
constexpr auto | insert_or_assign (Key key, U &&value) -> std::pair< iterator, bool > |
template<typename... Args> | |
constexpr auto | try_emplace (Key key, Args &&... args) -> std::pair< iterator, bool > |
constexpr auto | erase (iterator pos) noexcept -> iterator |
constexpr auto | erase (const_iterator pos) noexcept -> iterator |
constexpr auto | erase (iterator first, iterator last) noexcept -> iterator |
constexpr auto | erase (Key key) noexcept -> std::size_t |
constexpr auto | swap (direct_map &other) noexcept -> void |
KBLIB_NODISCARD constexpr auto | contains (Key key) const noexcept -> bool |
KBLIB_NODISCARD constexpr auto | count (Key key) const noexcept -> std::size_t |
KBLIB_NODISCARD constexpr auto | find (Key key) &noexcept -> iterator |
KBLIB_NODISCARD constexpr auto | find (Key key) const &noexcept -> const_iterator |
KBLIB_NODISCARD constexpr auto | equal_range (Key key) &noexcept -> std::pair< iterator, iterator > |
KBLIB_NODISCARD constexpr auto | equal_range (Key key) const &noexcept -> std::pair< const_iterator, const_iterator > |
KBLIB_NODISCARD constexpr auto | lower_bound (Key key) &noexcept -> iterator |
KBLIB_NODISCARD constexpr auto | lower_bound (Key key) const &noexcept -> const_iterator |
KBLIB_NODISCARD constexpr auto | upper_bound (Key key) &noexcept -> iterator |
KBLIB_NODISCARD constexpr auto | upper_bound (Key key) const &noexcept -> const_iterator |
Static Public Member Functions | |
KBLIB_NODISCARD static constexpr auto | max_size () noexcept -> std::size_t |
KBLIB_NODISCARD static constexpr auto | min () noexcept -> Key |
KBLIB_NODISCARD static constexpr auto | max () noexcept -> Key |
KBLIB_NODISCARD static constexpr auto | index (Key key) noexcept -> std::ptrdiff_t |
KBLIB_NODISCARD static constexpr auto | uindex (Key key) noexcept -> std::size_t |
KBLIB_NODISCARD static constexpr auto | to_key (std::ptrdiff_t i) noexcept -> Key |
Friends | |
KBLIB_NODISCARD friend constexpr auto | operator== (const direct_map &l, const direct_map &r) noexcept(noexcept(std::declval< T & >()==std::declval< T & >())) -> bool |
KBLIB_NODISCARD friend constexpr auto | operator!= (const direct_map &l, const direct_map &r) noexcept(noexcept(std::declval< T & >()==std::declval< T & >())) -> bool |
KBLIB_NODISCARD friend constexpr auto | operator< (const direct_map &l, const direct_map &r) noexcept(noexcept(std::declval< T & >(), std::declval< T & >())) -> bool |
KBLIB_NODISCARD friend constexpr auto | operator> (const direct_map &l, const direct_map &r) noexcept(noexcept(std::declval< T & >(), std::declval< T & >())) -> bool |
KBLIB_NODISCARD friend constexpr auto | operator<= (const direct_map &l, const direct_map &r) noexcept(noexcept(std::declval< T & >(), std::declval< T & >())) -> bool |
KBLIB_NODISCARD friend constexpr auto | operator>= (const direct_map &l, const direct_map &r) noexcept(noexcept(std::declval< T & >(), std::declval< T & >())) -> bool |
Definition at line 125 of file direct_map.h.
using kblib::direct_map< Key, T, allocator >::const_iterator = iter<const value_type> |
Definition at line 241 of file direct_map.h.
using kblib::direct_map< Key, T, allocator >::const_pointer = const value_type* |
Definition at line 137 of file direct_map.h.
using kblib::direct_map< Key, T, allocator >::const_reference = const value_type& |
Definition at line 135 of file direct_map.h.
using kblib::direct_map< Key, T, allocator >::const_reverse_iterator = std::reverse_iterator<const_iterator> |
Definition at line 243 of file direct_map.h.
using kblib::direct_map< Key, T, allocator >::difference_type = std::ptrdiff_t |
Definition at line 132 of file direct_map.h.
using kblib::direct_map< Key, T, allocator >::iterator = iter<value_type> |
Definition at line 240 of file direct_map.h.
using kblib::direct_map< Key, T, allocator >::key_type = Key |
Definition at line 128 of file direct_map.h.
using kblib::direct_map< Key, T, allocator >::mapped_type = T |
Definition at line 129 of file direct_map.h.
using kblib::direct_map< Key, T, allocator >::pointer = value_type* |
Definition at line 136 of file direct_map.h.
using kblib::direct_map< Key, T, allocator >::reference = value_type& |
Definition at line 134 of file direct_map.h.
using kblib::direct_map< Key, T, allocator >::reverse_iterator = std::reverse_iterator<iterator> |
Definition at line 242 of file direct_map.h.
using kblib::direct_map< Key, T, allocator >::size_type = std::size_t |
Definition at line 131 of file direct_map.h.
using kblib::direct_map< Key, T, allocator >::value_type = std::pair<const Key, T> |
Definition at line 130 of file direct_map.h.
|
constexprdefaultnoexcept |
|
inlineconstexpr |
Definition at line 248 of file direct_map.h.
|
inlineconstexpr |
Definition at line 258 of file direct_map.h.
|
inlineconstexprnoexcept |
Definition at line 272 of file direct_map.h.
|
inlineconstexpr |
Definition at line 276 of file direct_map.h.
|
inlineconstexpr |
Definition at line 317 of file direct_map.h.
|
inlineconstexpr |
Definition at line 310 of file direct_map.h.
|
inlineconstexpr |
Definition at line 331 of file direct_map.h.
|
inlineconstexpr |
Definition at line 324 of file direct_map.h.
|
inlineconstexprnoexcept |
Definition at line 344 of file direct_map.h.
|
inlineconstexprnoexcept |
Definition at line 347 of file direct_map.h.
|
inlineconstexprnoexcept |
Definition at line 350 of file direct_map.h.
|
inlineconstexprnoexcept |
Definition at line 368 of file direct_map.h.
|
inlineconstexprnoexcept |
Definition at line 407 of file direct_map.h.
|
inlineconstexprnoexcept |
Definition at line 514 of file direct_map.h.
|
inlineconstexprnoexcept |
Definition at line 517 of file direct_map.h.
|
inlineconstexprnoexcept |
Definition at line 378 of file direct_map.h.
|
inlineconstexprnoexcept |
Definition at line 388 of file direct_map.h.
|
inlineconstexprnoexcept |
Definition at line 392 of file direct_map.h.
|
inlineconstexprnoexcept |
Definition at line 362 of file direct_map.h.
|
inlineconstexprnoexcept |
Definition at line 365 of file direct_map.h.
|
inlineconstexprnoexcept |
Definition at line 529 of file direct_map.h.
|
inlineconstexprnoexcept |
Definition at line 533 of file direct_map.h.
|
inlineconstexprnoexcept |
Definition at line 478 of file direct_map.h.
|
inlineconstexprnoexcept |
Definition at line 486 of file direct_map.h.
|
inlineconstexprnoexcept |
Definition at line 471 of file direct_map.h.
|
inlineconstexprnoexcept |
Definition at line 497 of file direct_map.h.
|
inlineconstexprnoexcept |
Definition at line 521 of file direct_map.h.
|
inlineconstexprnoexcept |
Definition at line 524 of file direct_map.h.
|
inlinestaticconstexprnoexcept |
Definition at line 635 of file direct_map.h.
|
inlineconstexpr |
Definition at line 421 of file direct_map.h.
|
inlineconstexpr |
Definition at line 430 of file direct_map.h.
|
inlineconstexpr |
Definition at line 440 of file direct_map.h.
|
inlineconstexpr |
Definition at line 450 of file direct_map.h.
|
inline |
Definition at line 282 of file direct_map.h.
|
inlineconstexprnoexcept |
Definition at line 538 of file direct_map.h.
|
inlineconstexprnoexcept |
Definition at line 545 of file direct_map.h.
|
inlinestaticconstexprnoexcept |
Definition at line 579 of file direct_map.h.
|
inlinestaticconstexprnoexcept |
Definition at line 403 of file direct_map.h.
|
inlinestaticconstexprnoexcept |
Definition at line 576 of file direct_map.h.
|
inlineconstexpr |
Definition at line 284 of file direct_map.h.
|
constexprdefaultnoexcept |
|
inlineconstexpr |
Definition at line 301 of file direct_map.h.
|
inlineconstexprnoexcept |
Definition at line 339 of file direct_map.h.
|
inlineconstexprnoexcept |
Definition at line 372 of file direct_map.h.
|
inlineconstexprnoexcept |
Definition at line 375 of file direct_map.h.
|
inlineconstexprnoexcept |
Definition at line 382 of file direct_map.h.
|
inlineconstexprnoexcept |
Definition at line 385 of file direct_map.h.
|
inlineconstexprnoexcept |
Definition at line 396 of file direct_map.h.
|
inlineconstexprnoexcept |
Definition at line 399 of file direct_map.h.
|
inlineconstexprnoexcept |
Definition at line 508 of file direct_map.h.
|
inlinestaticconstexprnoexcept |
Definition at line 643 of file direct_map.h.
|
inlineconstexpr |
Definition at line 461 of file direct_map.h.
|
inlinestaticconstexprnoexcept |
Definition at line 639 of file direct_map.h.
|
inlineconstexprnoexcept |
Definition at line 554 of file direct_map.h.
|
inlineconstexprnoexcept |
Definition at line 564 of file direct_map.h.
|
friend |
Definition at line 602 of file direct_map.h.
|
friend |
Definition at line 609 of file direct_map.h.
|
friend |
Definition at line 622 of file direct_map.h.
|
friend |
Definition at line 583 of file direct_map.h.
|
friend |
Definition at line 616 of file direct_map.h.
|
friend |
Definition at line 628 of file direct_map.h.