20 #ifndef BEAST_CONTAINER_DETAIL_AGED_CONTAINER_ITERATOR_H_INCLUDED
21 #define BEAST_CONTAINER_DETAIL_AGED_CONTAINER_ITERATOR_H_INCLUDED
28 template <
bool,
bool,
class,
class,
class,
class,
class>
44 typename Iterator::value_type::stashed::value_type
const,
45 typename Iterator::value_type::stashed::value_type>::type,
52 using time_point =
typename Iterator::value_type::stashed::time_point;
58 template <
bool other_is_const,
class OtherIterator,
class OtherBase,
60 (other_is_const ==
false || is_const ==
true) &&
63 other_is_const, OtherIterator, OtherBase>
const& other)
69 template <
bool other_is_const,
class OtherBase,
71 other_is_const ==
false || is_const ==
true>::type>
73 other_is_const, Iterator, OtherBase>
const& other)
79 template <
bool other_is_const,
class OtherIterator,
class OtherBase>
82 other_is_const, OtherIterator, OtherBase>
const& other) ->
84 other_is_const ==
false || is_const ==
true,
91 template <
bool other_is_const,
class OtherIterator,
class OtherBase>
93 other_is_const, OtherIterator, OtherBase>
const& other)
const
95 return m_iter == other.m_iter;
98 template <
bool other_is_const,
class OtherIterator,
class OtherBase>
100 other_is_const, OtherIterator, OtherBase>
const& other)
const
102 return m_iter != other.m_iter;
147 template <
bool,
bool,
class,
class,
class,
class,
class>
150 template <
bool,
bool,
class,
class,
class,
class,
class,
class>
153 template <
bool,
class,
class>
156 template <
class OtherIterator>
auto operator=(aged_container_iterator< other_is_const, OtherIterator, OtherBase > const &other) -> typename std::enable_if< other_is_const==false||is_const==true, aged_container_iterator & >::type
aged_container_iterator & operator++()
bool operator==(aged_container_iterator< other_is_const, OtherIterator, OtherBase > const &other) const
time_point const & when() const
aged_container_iterator(aged_container_iterator< other_is_const, Iterator, OtherBase > const &other)
bool operator!=(aged_container_iterator< other_is_const, OtherIterator, OtherBase > const &other) const
Base::reference operator*() const
aged_container_iterator & operator--()
typename Iterator::value_type::stashed::time_point time_point
friend class aged_container_iterator
Associative container where each element is also indexed by time.
Associative container where each element is also indexed by time.
Iterator const & iterator() const
aged_container_iterator(OtherIterator const &iter)
Base::pointer operator->() const