#include <circular_buffer.h>
template<typename T, typename T_nonconst, typename elem_type = typename T::value_type>
circular_buffer_iterator class
Templated STL compatible iterator for the circular_
Contents
Public types
-
using self_type = circular_
buffer_ iterator<T, T_nonconst, elem_type> - using cbuf_type = T
- using iterator_category = std::random_access_iterator_tag
- using value_type = cbuf_type::value_type
- using size_type = cbuf_type::size_type
- using pointer = cbuf_type::pointer
- using const_pointer = cbuf_type::const_pointer
- using reference = cbuf_type::reference
- using const_reference = cbuf_type::const_reference
- using difference_type = cbuf_type::difference_type
Constructors, destructors, conversion operators
-
circular_buffer_iterator(cbuf_
type* buf, size_ type pos) -
circular_buffer_iterator(circular_
buffer_ iterator&&) defaulted -
circular_buffer_iterator(const circular_
buffer_ iterator<T_nonconst, T_nonconst, typename T_nonconst::value_type>& other)
Public functions
-
auto operator=(const self_
type&) -> self_ type& defaulted -
auto operator=(self_
type&&) -> self_ type& defaulted - auto operator*() -> elem_type&
- auto operator->() -> elem_type*
-
auto operator++() -> self_
type& -
auto operator++(int) -> self_
type -
auto operator--() -> self_
type& -
auto operator--(int) -> self_
type -
auto operator+(difference_
type n) const -> self_ type -
auto operator+=(difference_
type n) -> self_ type& -
auto operator-(difference_
type n) const -> self_ type -
auto operator-=(difference_
type n) -> self_ type& -
auto operator-(const self_
type& c) const -> difference_ type -
auto operator==(const self_
type& other) const -> bool -
auto operator!=(const self_
type& other) const -> bool -
auto operator>(const self_
type& other) const -> bool -
auto operator>=(const self_
type& other) const -> bool -
auto operator<(const self_
type& other) const -> bool -
auto operator<=(const self_
type& other) const -> bool