|
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 66 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 69 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 70 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 71 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 72 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 73 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 74 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 75 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 76 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 79 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 80 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 81 of file aged_unordered_container.h.
|
private |
Definition at line 206 of file aged_unordered_container.h.
|
private |
Definition at line 208 of file aged_unordered_container.h.
|
private |
Definition at line 223 of file aged_unordered_container.h.
|
private |
Definition at line 224 of file aged_unordered_container.h.
|
private |
Definition at line 226 of file aged_unordered_container.h.
|
private |
Definition at line 228 of file aged_unordered_container.h.
|
private |
Definition at line 230 of file aged_unordered_container.h.
|
private |
Definition at line 232 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 527 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 528 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 529 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 530 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 531 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 532 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 533 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 537 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 538 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 540 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 541 of file aged_unordered_container.h.
|
delete |
|
explicit |
Definition at line 1399 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 1406 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 1414 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 1422 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 1432 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 1442 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 1453 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 1464 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 1477 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 1488 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 1500 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 1512 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 1526 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 1540 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 1555 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 1570 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 1585 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 1595 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 1606 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 1614 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 1626 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 1635 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 1645 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 1655 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 1667 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 1679 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 1692 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 1705 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 1719 of file aged_unordered_container.h.
|
staticprivate |
Definition at line 85 of file aged_unordered_container.h.
|
private |
Definition at line 489 of file aged_unordered_container.h.
|
private |
Definition at line 512 of file aged_unordered_container.h.
|
private |
Definition at line 519 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 1726 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 1743 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 1758 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 775 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 781 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 787 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 1771 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 1793 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 1812 of file aged_unordered_container.h.
| iterator beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::begin | ( | ) |
Definition at line 835 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 841 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 847 of file aged_unordered_container.h.
| iterator beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::end | ( | ) |
Definition at line 853 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 859 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 865 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 871 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 879 of file aged_unordered_container.h.
|
noexcept |
Definition at line 893 of file aged_unordered_container.h.
|
noexcept |
Definition at line 899 of file aged_unordered_container.h.
|
noexcept |
Definition at line 905 of file aged_unordered_container.h.
| void beast::detail::aged_unordered_container< IsMulti, IsMap, Key, T, Clock, Hash, KeyEqual, Allocator >::clear | ( | ) |
Definition at line 1833 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 1846 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 1881 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 942 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 952 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 962 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 972 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 984 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 994 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 1001 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 1007 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 1917 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 1977 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 1031 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 2001 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 2011 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 2024 of file aged_unordered_container.h.
|
noexcept |
Definition at line 2044 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 1057 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 2055 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 1075 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 1083 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 1091 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 1100 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 1109 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 1122 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 1128 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 1134 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 1140 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 1146 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 1152 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 1158 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 1164 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 1170 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 1176 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 1192 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 1198 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 1204 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 1210 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 1217 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 1229 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 1235 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 2078 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 2110 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 1297 of file aged_unordered_container.h.
|
private |
Definition at line 1312 of file aged_unordered_container.h.
|
private |
Definition at line 1318 of file aged_unordered_container.h.
|
private |
Definition at line 2147 of file aged_unordered_container.h.
|
private |
|
private |
Definition at line 1340 of file aged_unordered_container.h.
|
private |
Definition at line 1348 of file aged_unordered_container.h.
|
private |
Definition at line 1356 of file aged_unordered_container.h.
|
private |
Definition at line 1365 of file aged_unordered_container.h.
|
privatenoexcept |
Definition at line 1375 of file aged_unordered_container.h.
|
privatenoexcept |
Definition at line 1384 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 1782 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 1391 of file aged_unordered_container.h.
|
private |
Definition at line 1392 of file aged_unordered_container.h.
|
mutableprivate |
Definition at line 1393 of file aged_unordered_container.h.