|
rippled
|
Associative container where each element is also indexed by time. More...
#include <aged_unordered_container.h>

Classes | |
| class | Buckets |
| class | chronological_t |
| class | config_t |
| struct | element |
| class | KeyValueEqual |
| class | ValueHash |
Public Member Functions | |
| aged_unordered_container ()=delete | |
| aged_unordered_container (clock_type &clock) | |
| aged_unordered_container (clock_type &clock, Hash const &hash) | |
| aged_unordered_container (clock_type &clock, KeyEqual const &key_eq) | |
| aged_unordered_container (clock_type &clock, Allocator const &alloc) | |
| aged_unordered_container (clock_type &clock, Hash const &hash, KeyEqual const &key_eq) | |
| aged_unordered_container (clock_type &clock, Hash const &hash, Allocator const &alloc) | |
| aged_unordered_container (clock_type &clock, KeyEqual const &key_eq, Allocator const &alloc) | |
| aged_unordered_container (clock_type &clock, Hash const &hash, KeyEqual const &key_eq, Allocator const &alloc) | |
| template<class InputIt > | |
| aged_unordered_container (InputIt first, InputIt last, clock_type &clock) | |
| template<class InputIt > | |
| aged_unordered_container (InputIt first, InputIt last, clock_type &clock, Hash const &hash) | |
| template<class InputIt > | |
| aged_unordered_container (InputIt first, InputIt last, clock_type &clock, KeyEqual const &key_eq) | |
| template<class InputIt > | |
| aged_unordered_container (InputIt first, InputIt last, clock_type &clock, Allocator const &alloc) | |
| template<class InputIt > | |
| aged_unordered_container (InputIt first, InputIt last, clock_type &clock, Hash const &hash, KeyEqual const &key_eq) | |
| template<class InputIt > | |
| aged_unordered_container (InputIt first, InputIt last, clock_type &clock, Hash const &hash, Allocator const &alloc) | |
| template<class InputIt > | |
| aged_unordered_container (InputIt first, InputIt last, clock_type &clock, KeyEqual const &key_eq, Allocator const &alloc) | |
| template<class InputIt > | |
| aged_unordered_container (InputIt first, InputIt last, clock_type &clock, Hash const &hash, KeyEqual const &key_eq, Allocator const &alloc) | |
| aged_unordered_container (aged_unordered_container const &other) | |
| aged_unordered_container (aged_unordered_container const &other, Allocator const &alloc) | |
| aged_unordered_container (aged_unordered_container &&other) | |
| aged_unordered_container (aged_unordered_container &&other, Allocator const &alloc) | |
| aged_unordered_container (std::initializer_list< value_type > init, clock_type &clock) | |
| aged_unordered_container (std::initializer_list< value_type > init, clock_type &clock, Hash const &hash) | |
| aged_unordered_container (std::initializer_list< value_type > init, clock_type &clock, KeyEqual const &key_eq) | |
| aged_unordered_container (std::initializer_list< value_type > init, clock_type &clock, Allocator const &alloc) | |
| aged_unordered_container (std::initializer_list< value_type > init, clock_type &clock, Hash const &hash, KeyEqual const &key_eq) | |
| aged_unordered_container (std::initializer_list< value_type > init, clock_type &clock, Hash const &hash, Allocator const &alloc) | |
| aged_unordered_container (std::initializer_list< value_type > init, clock_type &clock, KeyEqual const &key_eq, Allocator const &alloc) | |
| aged_unordered_container (std::initializer_list< value_type > init, clock_type &clock, Hash const &hash, KeyEqual const &key_eq, Allocator const &alloc) | |
| ~aged_unordered_container () | |
| aged_unordered_container & | operator= (aged_unordered_container const &other) |
| aged_unordered_container & | operator= (aged_unordered_container &&other) |
| aged_unordered_container & | operator= (std::initializer_list< value_type > init) |
| allocator_type | get_allocator () const |
| clock_type & | clock () |
| clock_type const & | clock () const |
| template<class K , bool maybe_multi = IsMulti, bool maybe_map = IsMap, class = typename std::enable_if<maybe_map && !maybe_multi>::type> | |
| std::conditional< IsMap, T, void * >::type & | at (K const &k) |
| template<class K , bool maybe_multi = IsMulti, bool maybe_map = IsMap, class = typename std::enable_if<maybe_map && !maybe_multi>::type> | |
| std::conditional< IsMap, T, void * >::type const & | at (K const &k) const |
| template<bool maybe_multi = IsMulti, bool maybe_map = IsMap, class = typename std::enable_if<maybe_map && !maybe_multi>::type> | |
| std::conditional< IsMap, T, void * >::type & | operator[] (Key const &key) |
| template<bool maybe_multi = IsMulti, bool maybe_map = IsMap, class = typename std::enable_if<maybe_map && !maybe_multi>::type> | |
| std::conditional< IsMap, T, void * >::type & | operator[] (Key &&key) |
| iterator | begin () |
| const_iterator | begin () const |
| const_iterator | cbegin () const |
| iterator | end () |
| const_iterator | end () const |
| const_iterator | cend () const |
| iterator | iterator_to (value_type &value) |
| const_iterator | iterator_to (value_type const &value) const |
| bool | empty () const noexcept |
| size_type | size () const noexcept |
| size_type | max_size () const noexcept |
| void | clear () |
| template<bool maybe_multi = IsMulti> | |
| auto | insert (value_type const &value) -> typename std::enable_if<!maybe_multi, std::pair< iterator, bool > >::type |
| template<bool maybe_multi = IsMulti> | |
| auto | insert (value_type const &value) -> typename std::enable_if< maybe_multi, iterator >::type |
| template<bool maybe_multi = IsMulti, bool maybe_map = IsMap> | |
| auto | insert (value_type &&value) -> typename std::enable_if< !maybe_multi &&!maybe_map, std::pair< iterator, bool > >::type |
| template<bool maybe_multi = IsMulti, bool maybe_map = IsMap> | |
| auto | insert (value_type &&value) -> typename std::enable_if< maybe_multi &&!maybe_map, iterator >::type |
| template<bool maybe_multi = IsMulti> | |
| std::enable_if<!maybe_multi, iterator >::type | insert (const_iterator, value_type const &value) |
| template<bool maybe_multi = IsMulti> | |
| std::enable_if< maybe_multi, iterator >::type | insert (const_iterator, value_type const &value) |
| template<bool maybe_multi = IsMulti> | |
| std::enable_if<!maybe_multi, iterator >::type | insert (const_iterator, value_type &&value) |
| template<bool maybe_multi = IsMulti> | |
| std::enable_if< maybe_multi, iterator >::type | insert (const_iterator, value_type &&value) |
| template<class P , bool maybe_map = IsMap> | |
| std::enable_if< maybe_map &&std::is_constructible< value_type, P && >::value, typenamestd::conditional< IsMulti, iterator, std::pair< iterator, bool > >::type >::type | insert (P &&value) |
| template<class P , bool maybe_map = IsMap> | |
| std::enable_if< maybe_map &&std::is_constructible< value_type, P && >::value, typenamestd::conditional< IsMulti, iterator, std::pair< iterator, bool > >::type >::type | insert (const_iterator hint, P &&value) |
| template<class InputIt > | |
| void | insert (InputIt first, InputIt last) |
| void | insert (std::initializer_list< value_type > init) |
| template<bool maybe_multi = IsMulti, class... Args> | |
| auto | emplace (Args &&... args) -> typename std::enable_if<!maybe_multi, std::pair< iterator, bool > >::type |
| template<bool maybe_multi = IsMulti, class... Args> | |
| auto | emplace (Args &&... args) -> typename std::enable_if< maybe_multi, iterator >::type |
| template<bool maybe_multi = IsMulti, class... Args> | |
| auto | emplace_hint (const_iterator, Args &&... args) -> typename std::enable_if<!maybe_multi, std::pair< iterator, bool > >::type |
| template<bool maybe_multi = IsMulti, class... Args> | |
| std::enable_if< maybe_multi, iterator >::type | emplace_hint (const_iterator, Args &&... args) |
| template<bool is_const, class Iterator > | |
| beast::detail::aged_container_iterator< false, Iterator > | erase (beast::detail::aged_container_iterator< is_const, Iterator > pos) |
| template<bool is_const, class Iterator > | |
| beast::detail::aged_container_iterator< false, Iterator > | erase (beast::detail::aged_container_iterator< is_const, Iterator > first, beast::detail::aged_container_iterator< is_const, Iterator > last) |
| template<class K > | |
| auto | erase (K const &k) -> size_type |
| void | swap (aged_unordered_container &other) noexcept |
| template<bool is_const, class Iterator > | |
| void | touch (beast::detail::aged_container_iterator< is_const, Iterator > pos) |
| template<class K > | |
| auto | touch (K const &k) -> size_type |
| template<class K > | |
| size_type | count (K const &k) const |
| template<class K > | |
| iterator | find (K const &k) |
| template<class K > | |
| const_iterator | find (K const &k) const |
| template<class K > | |
| std::pair< iterator, iterator > | equal_range (K const &k) |
| template<class K > | |
| std::pair< const_iterator, const_iterator > | equal_range (K const &k) const |
| local_iterator | begin (size_type n) |
| const_local_iterator | begin (size_type n) const |
| const_local_iterator | cbegin (size_type n) const |
| local_iterator | end (size_type n) |
| const_local_iterator | end (size_type n) const |
| const_local_iterator | cend (size_type n) const |
| size_type | bucket_count () const |
| size_type | max_bucket_count () const |
| size_type | bucket_size (size_type n) const |
| size_type | bucket (Key const &k) const |
| float | load_factor () const |
| float | max_load_factor () const |
| void | max_load_factor (float ml) |
| void | rehash (size_type count) |
| void | reserve (size_type count) |
| hasher const & | hash_function () const |
| key_equal const & | key_eq () const |
| template<bool OtherIsMap, class OtherKey , class OtherT , class OtherDuration , class OtherHash , class OtherAllocator , bool maybe_multi = IsMulti> | |
| std::enable_if<!maybe_multi, bool >::type | operator== (aged_unordered_container< false, OtherIsMap, OtherKey, OtherT, OtherDuration, OtherHash, KeyEqual, OtherAllocator > const &other) const |
| template<bool OtherIsMap, class OtherKey , class OtherT , class OtherDuration , class OtherHash , class OtherAllocator , bool maybe_multi = IsMulti> | |
| std::enable_if< maybe_multi, bool >::type | operator== (aged_unordered_container< true, OtherIsMap, OtherKey, OtherT, OtherDuration, OtherHash, KeyEqual, OtherAllocator > const &other) const |
| template<bool OtherIsMulti, bool OtherIsMap, class OtherKey , class OtherT , class OtherDuration , class OtherHash , class OtherAllocator > | |
| bool | operator!= (aged_unordered_container< OtherIsMulti, OtherIsMap, OtherKey, OtherT, OtherDuration, OtherHash, KeyEqual, OtherAllocator > const &other) const |
| template<class K , bool maybe_multi, bool maybe_map, class > | |
| std::conditional< IsMap, T, void * >::type const & | at (K const &k) const |
Public Attributes | |
| class beast::detail::aged_unordered_container::chronological_t | chronological |
Private Types | |
| using | list_type = typename boost::intrusive::make_list< element, boost::intrusive::constant_time_size< false > >::type |
| using | cont_type = typename std::conditional< IsMulti, typename boost::intrusive::make_unordered_multiset< element, boost::intrusive::constant_time_size< true >, boost::intrusive::hash< ValueHash >, boost::intrusive::equal< KeyValueEqual >, boost::intrusive::cache_begin< true > >::type, typename boost::intrusive::make_unordered_set< element, boost::intrusive::constant_time_size< true >, boost::intrusive::hash< ValueHash >, boost::intrusive::equal< KeyValueEqual >, boost::intrusive::cache_begin< true > >::type >::type |
| using | bucket_type = typename cont_type::bucket_type |
| using | bucket_traits = typename cont_type::bucket_traits |
| using | ElementAllocator = typename std::allocator_traits< Allocator >::template rebind_alloc< element > |
| using | ElementAllocatorTraits = std::allocator_traits< ElementAllocator > |
| using | BucketAllocator = typename std::allocator_traits< Allocator >::template rebind_alloc< element > |
| using | BucketAllocatorTraits = std::allocator_traits< BucketAllocator > |
Private Member Functions | |
| template<class... Args> | |
| element * | new_element (Args &&... args) |
| void | delete_element (element const *p) |
| void | unlink_and_delete_element (element const *p) |
| bool | would_exceed (size_type additional) const |
| void | maybe_rehash (size_type additional) |
| template<bool maybe_multi = IsMulti> | |
| auto | insert_unchecked (value_type const &value) -> typename std::enable_if<!maybe_multi, std::pair< iterator, bool > >::type |
| template<bool maybe_multi = IsMulti> | |
| auto | insert_unchecked (value_type const &value) -> typename std::enable_if< maybe_multi, iterator >::type |
| template<class InputIt > | |
| void | insert_unchecked (InputIt first, InputIt last) |
| template<class InputIt > | |
| void | insert (InputIt first, InputIt last, std::input_iterator_tag) |
| template<class InputIt > | |
| void | insert (InputIt first, InputIt last, std::random_access_iterator_tag) |
| template<bool is_const, class Iterator > | |
| void | touch (beast::detail::aged_container_iterator< is_const, Iterator > pos, typename clock_type::time_point const &now) |
| template<bool maybe_propagate = std::allocator_traits< Allocator>::propagate_on_container_swap::value> | |
| std::enable_if< maybe_propagate >::type | swap_data (aged_unordered_container &other) noexcept |
| template<bool maybe_propagate = std::allocator_traits< Allocator>::propagate_on_container_swap::value> | |
| std::enable_if<!maybe_propagate >::type | swap_data (aged_unordered_container &other) noexcept |
Static Private Member Functions | |
| static Key const & | extract (value_type const &value) |
Private Attributes | |
| config_t | m_config |
| Buckets | m_buck |
| cont_type | m_cont |
Associative container where each element is also indexed by time.
This container mirrors the interface of the standard library unordered associative containers, with the addition that each element is associated with a when time_point which is obtained from the value of the clock's now. The function touch updates the time for an element to the current time as reported by the clock.
An extra set of iterator types and member functions are provided in the chronological memberspace that allow traversal in temporal or reverse temporal order. This container is useful as a building block for caches whose items expire after a certain amount of time. The chronological iterators allow for fully customizable expiration strategies.
Definition at line 85 of file aged_unordered_container.h.
| using beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::clock_type = abstract_clock<Clock> |
Definition at line 88 of file aged_unordered_container.h.
| using beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::time_point = typename clock_type::time_point |
Definition at line 89 of file aged_unordered_container.h.
| using beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::duration = typename clock_type::duration |
Definition at line 90 of file aged_unordered_container.h.
| using beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::key_type = Key |
Definition at line 91 of file aged_unordered_container.h.
| using beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::mapped_type = T |
Definition at line 92 of file aged_unordered_container.h.
| using beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::value_type = typename std::conditional<IsMap, std::pair<Key const, T>, Key>::type |
Definition at line 93 of file aged_unordered_container.h.
| using beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::size_type = std::size_t |
Definition at line 95 of file aged_unordered_container.h.
| using beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::difference_type = std::ptrdiff_t |
Definition at line 96 of file aged_unordered_container.h.
| using beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::is_unordered = std::true_type |
Definition at line 99 of file aged_unordered_container.h.
| using beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::is_multi = std::integral_constant<bool, IsMulti> |
Definition at line 100 of file aged_unordered_container.h.
| using beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::is_map = std::integral_constant<bool, IsMap> |
Definition at line 101 of file aged_unordered_container.h.
|
private |
Definition at line 232 of file aged_unordered_container.h.
|
private |
Definition at line 235 of file aged_unordered_container.h.
|
private |
Definition at line 250 of file aged_unordered_container.h.
|
private |
Definition at line 251 of file aged_unordered_container.h.
|
private |
Definition at line 253 of file aged_unordered_container.h.
|
private |
Definition at line 256 of file aged_unordered_container.h.
|
private |
Definition at line 258 of file aged_unordered_container.h.
|
private |
Definition at line 261 of file aged_unordered_container.h.
| using beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::hasher = Hash |
Definition at line 584 of file aged_unordered_container.h.
| using beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::key_equal = KeyEqual |
Definition at line 585 of file aged_unordered_container.h.
| using beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::allocator_type = Allocator |
Definition at line 586 of file aged_unordered_container.h.
| using beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::reference = value_type& |
Definition at line 587 of file aged_unordered_container.h.
| using beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::const_reference = value_type const& |
Definition at line 588 of file aged_unordered_container.h.
| using beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::pointer = typename std::allocator_traits<Allocator>::pointer |
Definition at line 589 of file aged_unordered_container.h.
| using beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::const_pointer = typename std::allocator_traits<Allocator>::const_pointer |
Definition at line 590 of file aged_unordered_container.h.
| using beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::iterator = beast::detail:: aged_container_iterator<!IsMap, typename cont_type::iterator> |
Definition at line 595 of file aged_unordered_container.h.
| using beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::const_iterator = beast::detail:: aged_container_iterator<true, typename cont_type::iterator> |
Definition at line 597 of file aged_unordered_container.h.
| using beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::local_iterator = beast::detail:: aged_container_iterator<!IsMap, typename cont_type::local_iterator> |
Definition at line 600 of file aged_unordered_container.h.
| using beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::const_local_iterator = beast::detail:: aged_container_iterator<true, typename cont_type::local_iterator> |
Definition at line 602 of file aged_unordered_container.h.
|
delete |
|
explicit |
Definition at line 1578 of file aged_unordered_container.h.
| beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::aged_unordered_container | ( | clock_type & | clock, |
| Hash const & | hash | ||
| ) |
Definition at line 1604 of file aged_unordered_container.h.
| beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::aged_unordered_container | ( | clock_type & | clock, |
| KeyEqual const & | key_eq | ||
| ) |
Definition at line 1630 of file aged_unordered_container.h.
| beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::aged_unordered_container | ( | clock_type & | clock, |
| Allocator const & | alloc | ||
| ) |
Definition at line 1657 of file aged_unordered_container.h.
| beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::aged_unordered_container | ( | clock_type & | clock, |
| Hash const & | hash, | ||
| KeyEqual const & | key_eq | ||
| ) |
Definition at line 1685 of file aged_unordered_container.h.
| beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::aged_unordered_container | ( | clock_type & | clock, |
| Hash const & | hash, | ||
| Allocator const & | alloc | ||
| ) |
Definition at line 1715 of file aged_unordered_container.h.
| beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::aged_unordered_container | ( | clock_type & | clock, |
| KeyEqual const & | key_eq, | ||
| Allocator const & | alloc | ||
| ) |
Definition at line 1746 of file aged_unordered_container.h.
| beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::aged_unordered_container | ( | clock_type & | clock, |
| Hash const & | hash, | ||
| KeyEqual const & | key_eq, | ||
| Allocator const & | alloc | ||
| ) |
Definition at line 1777 of file aged_unordered_container.h.
| beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::aged_unordered_container | ( | InputIt | first, |
| InputIt | last, | ||
| clock_type & | clock | ||
| ) |
Definition at line 1810 of file aged_unordered_container.h.
| beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::aged_unordered_container | ( | InputIt | first, |
| InputIt | last, | ||
| clock_type & | clock, | ||
| Hash const & | hash | ||
| ) |
Definition at line 1839 of file aged_unordered_container.h.
| beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::aged_unordered_container | ( | InputIt | first, |
| InputIt | last, | ||
| clock_type & | clock, | ||
| KeyEqual const & | key_eq | ||
| ) |
Definition at line 1872 of file aged_unordered_container.h.
| beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::aged_unordered_container | ( | InputIt | first, |
| InputIt | last, | ||
| clock_type & | clock, | ||
| Allocator const & | alloc | ||
| ) |
Definition at line 1905 of file aged_unordered_container.h.
| beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::aged_unordered_container | ( | InputIt | first, |
| InputIt | last, | ||
| clock_type & | clock, | ||
| Hash const & | hash, | ||
| KeyEqual const & | key_eq | ||
| ) |
Definition at line 1939 of file aged_unordered_container.h.
| beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::aged_unordered_container | ( | InputIt | first, |
| InputIt | last, | ||
| clock_type & | clock, | ||
| Hash const & | hash, | ||
| Allocator const & | alloc | ||
| ) |
Definition at line 1973 of file aged_unordered_container.h.
| beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::aged_unordered_container | ( | InputIt | first, |
| InputIt | last, | ||
| clock_type & | clock, | ||
| KeyEqual const & | key_eq, | ||
| Allocator const & | alloc | ||
| ) |
Definition at line 2008 of file aged_unordered_container.h.
| beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::aged_unordered_container | ( | InputIt | first, |
| InputIt | last, | ||
| clock_type & | clock, | ||
| Hash const & | hash, | ||
| KeyEqual const & | key_eq, | ||
| Allocator const & | alloc | ||
| ) |
Definition at line 2043 of file aged_unordered_container.h.
| beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::aged_unordered_container | ( | aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator > const & | other | ) |
Definition at line 2078 of file aged_unordered_container.h.
| beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::aged_unordered_container | ( | aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator > const & | other, |
| Allocator const & | alloc | ||
| ) |
Definition at line 2106 of file aged_unordered_container.h.
| beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::aged_unordered_container | ( | aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator > && | other | ) |
Definition at line 2137 of file aged_unordered_container.h.
| beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::aged_unordered_container | ( | aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator > && | other, |
| Allocator const & | alloc | ||
| ) |
Definition at line 2162 of file aged_unordered_container.h.
| beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::aged_unordered_container | ( | std::initializer_list< value_type > | init, |
| clock_type & | clock | ||
| ) |
Definition at line 2194 of file aged_unordered_container.h.
| beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::aged_unordered_container | ( | std::initializer_list< value_type > | init, |
| clock_type & | clock, | ||
| Hash const & | hash | ||
| ) |
Definition at line 2224 of file aged_unordered_container.h.
| beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::aged_unordered_container | ( | std::initializer_list< value_type > | init, |
| clock_type & | clock, | ||
| KeyEqual const & | key_eq | ||
| ) |
Definition at line 2255 of file aged_unordered_container.h.
| beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::aged_unordered_container | ( | std::initializer_list< value_type > | init, |
| clock_type & | clock, | ||
| Allocator const & | alloc | ||
| ) |
Definition at line 2286 of file aged_unordered_container.h.
| beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::aged_unordered_container | ( | std::initializer_list< value_type > | init, |
| clock_type & | clock, | ||
| Hash const & | hash, | ||
| KeyEqual const & | key_eq | ||
| ) |
Definition at line 2318 of file aged_unordered_container.h.
| beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::aged_unordered_container | ( | std::initializer_list< value_type > | init, |
| clock_type & | clock, | ||
| Hash const & | hash, | ||
| Allocator const & | alloc | ||
| ) |
Definition at line 2350 of file aged_unordered_container.h.
| beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::aged_unordered_container | ( | std::initializer_list< value_type > | init, |
| clock_type & | clock, | ||
| KeyEqual const & | key_eq, | ||
| Allocator const & | alloc | ||
| ) |
Definition at line 2383 of file aged_unordered_container.h.
| beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::aged_unordered_container | ( | std::initializer_list< value_type > | init, |
| clock_type & | clock, | ||
| Hash const & | hash, | ||
| KeyEqual const & | key_eq, | ||
| Allocator const & | alloc | ||
| ) |
Definition at line 2416 of file aged_unordered_container.h.
| beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::~aged_unordered_container |
Definition at line 2450 of file aged_unordered_container.h.
|
staticprivate |
Definition at line 105 of file aged_unordered_container.h.
|
private |
Definition at line 540 of file aged_unordered_container.h.
|
private |
Definition at line 568 of file aged_unordered_container.h.
|
private |
Definition at line 576 of file aged_unordered_container.h.
| auto beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::operator= | ( | aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator > const & | other | ) |
Definition at line 2473 of file aged_unordered_container.h.
| auto beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::operator= | ( | aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator > && | other | ) |
Definition at line 2506 of file aged_unordered_container.h.
| auto beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::operator= | ( | std::initializer_list< value_type > | init | ) |
Definition at line 2537 of file aged_unordered_container.h.
| allocator_type beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::get_allocator | ( | ) | const |
Definition at line 897 of file aged_unordered_container.h.
| clock_type & beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::clock | ( | ) |
Definition at line 903 of file aged_unordered_container.h.
| clock_type const & beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::clock | ( | ) | const |
Definition at line 909 of file aged_unordered_container.h.
| std::conditional< IsMap, T, void * >::type & beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::at | ( | K const & | k | ) |
Definition at line 2566 of file aged_unordered_container.h.
| std::conditional< IsMap, T, void * >::type const & beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::at | ( | K const & | k | ) | const |
| std::conditional< IsMap, T, void * >::type & beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::operator[] | ( | Key const & | key | ) |
Definition at line 2626 of file aged_unordered_container.h.
| std::conditional< IsMap, T, void * >::type & beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::operator[] | ( | Key && | key | ) |
Definition at line 2667 of file aged_unordered_container.h.
| iterator beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::begin | ( | ) |
Definition at line 957 of file aged_unordered_container.h.
| const_iterator beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::begin | ( | ) | const |
Definition at line 963 of file aged_unordered_container.h.
| const_iterator beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::cbegin | ( | ) | const |
Definition at line 969 of file aged_unordered_container.h.
| iterator beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::end | ( | ) |
Definition at line 975 of file aged_unordered_container.h.
| const_iterator beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::end | ( | ) | const |
Definition at line 981 of file aged_unordered_container.h.
| const_iterator beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::cend | ( | ) | const |
Definition at line 987 of file aged_unordered_container.h.
| iterator beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::iterator_to | ( | value_type & | value | ) |
Definition at line 993 of file aged_unordered_container.h.
| const_iterator beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::iterator_to | ( | value_type const & | value | ) | const |
Definition at line 1003 of file aged_unordered_container.h.
|
noexcept |
Definition at line 1019 of file aged_unordered_container.h.
|
noexcept |
Definition at line 1025 of file aged_unordered_container.h.
|
noexcept |
Definition at line 1031 of file aged_unordered_container.h.
| void beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::clear |
Definition at line 2709 of file aged_unordered_container.h.
| auto beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::insert | ( | value_type const & | value | ) | -> typename std::enable_if<!maybe_multi, std::pair<iterator, bool>>::type |
Definition at line 2739 of file aged_unordered_container.h.
| auto beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::insert | ( | value_type const & | value | ) | -> typename std::enable_if< maybe_multi, iterator >::type |
| auto beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::insert | ( | value_type && | value | ) | -> typename std::enable_if< !maybe_multi && !maybe_map, std::pair<iterator, bool>>::type |
Definition at line 2809 of file aged_unordered_container.h.
| auto beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::insert | ( | value_type && | value | ) | -> typename std::enable_if< maybe_multi &&!maybe_map, iterator >::type |
| std::enable_if<!maybe_multi, iterator >::type beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::insert | ( | const_iterator | , |
| value_type const & | value | ||
| ) |
Definition at line 1073 of file aged_unordered_container.h.
| std::enable_if< maybe_multi, iterator >::type beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::insert | ( | const_iterator | , |
| value_type const & | value | ||
| ) |
Definition at line 1083 of file aged_unordered_container.h.
| std::enable_if<!maybe_multi, iterator >::type beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::insert | ( | const_iterator | , |
| value_type && | value | ||
| ) |
Definition at line 1093 of file aged_unordered_container.h.
| std::enable_if< maybe_multi, iterator >::type beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::insert | ( | const_iterator | , |
| value_type && | value | ||
| ) |
Definition at line 1103 of file aged_unordered_container.h.
| std::enable_if< maybe_map &&std::is_constructible< value_type, P && >::value, typenamestd::conditional< IsMulti, iterator, std::pair< iterator, bool > >::type >::type beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::insert | ( | P && | value | ) |
Definition at line 1117 of file aged_unordered_container.h.
| std::enable_if< maybe_map &&std::is_constructible< value_type, P && >::value, typenamestd::conditional< IsMulti, iterator, std::pair< iterator, bool > >::type >::type beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::insert | ( | const_iterator | hint, |
| P && | value | ||
| ) |
Definition at line 1129 of file aged_unordered_container.h.
| void beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::insert | ( | InputIt | first, |
| InputIt | last | ||
| ) |
Definition at line 1136 of file aged_unordered_container.h.
| void beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::insert | ( | std::initializer_list< value_type > | init | ) |
Definition at line 1145 of file aged_unordered_container.h.
| auto beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::emplace | ( | Args &&... | args | ) | -> typename std::enable_if<!maybe_multi, std::pair<iterator, bool>>::type |
Definition at line 2881 of file aged_unordered_container.h.
| auto beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::emplace | ( | Args &&... | args | ) | -> typename std::enable_if< maybe_multi, iterator >::type |
| auto beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::emplace_hint | ( | const_iterator | , |
| Args &&... | args | ||
| ) | -> typename std::enable_if<!maybe_multi, std::pair<iterator, bool>>::type |
Definition at line 2992 of file aged_unordered_container.h.
| std::enable_if< maybe_multi, iterator >::type beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::emplace_hint | ( | const_iterator | , |
| Args &&... | args | ||
| ) |
Definition at line 1171 of file aged_unordered_container.h.
| beast::detail::aged_container_iterator< false, Iterator > beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::erase | ( | beast::detail::aged_container_iterator< is_const, Iterator > | pos | ) |
Definition at line 3034 of file aged_unordered_container.h.
| beast::detail::aged_container_iterator< false, Iterator > beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::erase | ( | beast::detail::aged_container_iterator< is_const, Iterator > | first, |
| beast::detail::aged_container_iterator< is_const, Iterator > | last | ||
| ) |
Definition at line 3061 of file aged_unordered_container.h.
| auto beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::erase | ( | K const & | k | ) | -> size_type |
Definition at line 3092 of file aged_unordered_container.h.
|
noexcept |
Definition at line 3131 of file aged_unordered_container.h.
| void beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::touch | ( | beast::detail::aged_container_iterator< is_const, Iterator > | pos | ) |
Definition at line 1197 of file aged_unordered_container.h.
| auto beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::touch | ( | K const & | k | ) | -> size_type |
Definition at line 3157 of file aged_unordered_container.h.
| size_type beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::count | ( | K const & | k | ) | const |
Definition at line 1215 of file aged_unordered_container.h.
| iterator beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::find | ( | K const & | k | ) |
Definition at line 1226 of file aged_unordered_container.h.
| const_iterator beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::find | ( | K const & | k | ) | const |
Definition at line 1237 of file aged_unordered_container.h.
| std::pair< iterator, iterator > beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::equal_range | ( | K const & | k | ) |
Definition at line 1248 of file aged_unordered_container.h.
| std::pair< const_iterator, const_iterator > beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::equal_range | ( | K const & | k | ) | const |
Definition at line 1260 of file aged_unordered_container.h.
| local_iterator beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::begin | ( | size_type | n | ) |
Definition at line 1277 of file aged_unordered_container.h.
| const_local_iterator beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::begin | ( | size_type | n | ) | const |
Definition at line 1283 of file aged_unordered_container.h.
| const_local_iterator beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::cbegin | ( | size_type | n | ) | const |
Definition at line 1289 of file aged_unordered_container.h.
| local_iterator beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::end | ( | size_type | n | ) |
Definition at line 1295 of file aged_unordered_container.h.
| const_local_iterator beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::end | ( | size_type | n | ) | const |
Definition at line 1301 of file aged_unordered_container.h.
| const_local_iterator beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::cend | ( | size_type | n | ) | const |
Definition at line 1307 of file aged_unordered_container.h.
| size_type beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::bucket_count | ( | ) | const |
Definition at line 1313 of file aged_unordered_container.h.
| size_type beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::max_bucket_count | ( | ) | const |
Definition at line 1319 of file aged_unordered_container.h.
| size_type beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::bucket_size | ( | size_type | n | ) | const |
Definition at line 1325 of file aged_unordered_container.h.
| size_type beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::bucket | ( | Key const & | k | ) | const |
Definition at line 1331 of file aged_unordered_container.h.
| float beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::load_factor | ( | ) | const |
Definition at line 1347 of file aged_unordered_container.h.
| float beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::max_load_factor | ( | ) | const |
Definition at line 1353 of file aged_unordered_container.h.
| void beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::max_load_factor | ( | float | ml | ) |
Definition at line 1359 of file aged_unordered_container.h.
| void beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::rehash | ( | size_type | count | ) |
Definition at line 1365 of file aged_unordered_container.h.
| void beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::reserve | ( | size_type | count | ) |
Definition at line 1372 of file aged_unordered_container.h.
| hasher const & beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::hash_function | ( | ) | const |
Definition at line 1384 of file aged_unordered_container.h.
| key_equal const & beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::key_eq | ( | ) | const |
Definition at line 1390 of file aged_unordered_container.h.
| std::enable_if<!maybe_multi, bool >::type beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::operator== | ( | aged_unordered_container< false, OtherIsMap, OtherKey, OtherT, OtherDuration, OtherHash, KeyEqual, OtherAllocator > const & | other | ) | const |
Definition at line 3196 of file aged_unordered_container.h.
| std::enable_if< maybe_multi, bool >::type beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::operator== | ( | aged_unordered_container< true, OtherIsMap, OtherKey, OtherT, OtherDuration, OtherHash, KeyEqual, OtherAllocator > const & | other | ) | const |
Definition at line 3245 of file aged_unordered_container.h.
| bool beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::operator!= | ( | aged_unordered_container< OtherIsMulti, OtherIsMap, OtherKey, OtherT, OtherDuration, OtherHash, KeyEqual, OtherAllocator > const & | other | ) | const |
Definition at line 1452 of file aged_unordered_container.h.
|
private |
Definition at line 1467 of file aged_unordered_container.h.
|
private |
Definition at line 1473 of file aged_unordered_container.h.
|
private |
Definition at line 3300 of file aged_unordered_container.h.
|
private |
|
private |
Definition at line 1497 of file aged_unordered_container.h.
|
private |
Definition at line 1505 of file aged_unordered_container.h.
|
private |
Definition at line 1513 of file aged_unordered_container.h.
|
private |
Definition at line 1522 of file aged_unordered_container.h.
|
privatenoexcept |
Definition at line 1536 of file aged_unordered_container.h.
|
privatenoexcept |
Definition at line 1547 of file aged_unordered_container.h.
| std::conditional< IsMap, T, void * >::type const & beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::at | ( | K const & | k | ) | const |
Definition at line 2596 of file aged_unordered_container.h.
| class beast::detail::aged_unordered_container::chronological_t beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::chronological |
|
private |
Definition at line 1554 of file aged_unordered_container.h.
|
private |
Definition at line 1555 of file aged_unordered_container.h.
|
mutableprivate |
Definition at line 1556 of file aged_unordered_container.h.