rippled
|
Associative container where each element is also indexed by time. More...
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, typename std::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, typename std::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 |
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 94 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 233 of file aged_unordered_container.h.
|
private |
Definition at line 248 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 254 of file aged_unordered_container.h.
|
private |
Definition at line 256 of file aged_unordered_container.h.
|
private |
Definition at line 259 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 591 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 596 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 598 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 601 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 603 of file aged_unordered_container.h.
|
delete |
|
explicit |
Definition at line 1571 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 1597 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 1624 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 1651 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 1679 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 1709 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 1740 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 1771 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 1804 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 1833 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 1866 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 1899 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 1933 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 1967 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 2002 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 2037 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 2071 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 2100 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 2130 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 2156 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 2188 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 2218 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 2249 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 2280 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 2312 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 2344 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 2377 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 2410 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 2443 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 2466 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 2499 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 2530 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 2559 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 2589 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 const & | key | ) |
Definition at line 2619 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 2660 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 2702 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 2732 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 2802 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 1072 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 1082 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 1092 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 1102 of file aged_unordered_container.h.
std::enable_if< maybe_map && std::is_constructible<value_type, P&&>::value, typename std:: 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 1116 of file aged_unordered_container.h.
std::enable_if< maybe_map && std::is_constructible<value_type, P&&>::value, typename std:: 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 1128 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 1135 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 1144 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 2873 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 2984 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 1170 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 3026 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 3054 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 3084 of file aged_unordered_container.h.
|
noexcept |
Definition at line 3123 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 1196 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 3149 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 1214 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 1225 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 1236 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 1247 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 1259 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 1276 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 1282 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 1288 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 1294 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 1300 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 1306 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 1312 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 1318 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 1324 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 1330 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 1343 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 1349 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 1355 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 1361 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 1368 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 1380 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 1386 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 3189 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 3238 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 1448 of file aged_unordered_container.h.
|
private |
Definition at line 1463 of file aged_unordered_container.h.
|
private |
Definition at line 1469 of file aged_unordered_container.h.
|
private |
Definition at line 3292 of file aged_unordered_container.h.
|
private |
|
private |
Definition at line 1490 of file aged_unordered_container.h.
|
private |
Definition at line 1498 of file aged_unordered_container.h.
|
private |
Definition at line 1506 of file aged_unordered_container.h.
|
private |
Definition at line 1515 of file aged_unordered_container.h.
|
privatenoexcept |
Definition at line 1529 of file aged_unordered_container.h.
|
privatenoexcept |
Definition at line 1540 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 1547 of file aged_unordered_container.h.
|
private |
Definition at line 1548 of file aged_unordered_container.h.
|
mutableprivate |
Definition at line 1549 of file aged_unordered_container.h.