TwiceAsNice
2019-02-18
|
Random access iterator for the circular buffer. More...
#include <details.hpp>
Public Types | |
typedef base_iterator::value_type | value_type |
The type of the elements stored in the circular buffer. More... | |
typedef base_iterator::pointer | pointer |
Pointer to the element. More... | |
typedef base_iterator::reference | reference |
Reference to the element. More... | |
typedef Traits::size_type | size_type |
Size type. More... | |
typedef base_iterator::difference_type | difference_type |
Difference type. More... | |
Public Member Functions | |
iterator () | |
Default constructor. More... | |
iterator (const nonconst_self &it) | |
iterator (const Buff *cb, const pointer p) | |
iterator & | operator= (const iterator &it) |
Assign operator. More... | |
reference | operator* () const |
Dereferencing operator. More... | |
pointer | operator-> () const |
Dereferencing operator. More... | |
difference_type | operator- (const iterator &it) const |
Difference operator. More... | |
iterator & | operator++ () |
Increment operator (prefix). More... | |
iterator | operator++ (int) |
Increment operator (postfix). More... | |
iterator & | operator-- () |
Decrement operator (prefix). More... | |
iterator | operator-- (int) |
Decrement operator (postfix). More... | |
iterator & | operator+= (difference_type n) |
Iterator addition. More... | |
iterator | operator+ (difference_type n) const |
Iterator addition. More... | |
iterator & | operator-= (difference_type n) |
Iterator subtraction. More... | |
iterator | operator- (difference_type n) const |
Iterator subtraction. More... | |
reference | operator[] (difference_type n) const |
Element access operator. More... | |
template<class Traits0 > | |
bool | operator== (const iterator< Buff, Traits0 > &it) const |
Equality. More... | |
template<class Traits0 > | |
bool | operator!= (const iterator< Buff, Traits0 > &it) const |
Inequality. More... | |
template<class Traits0 > | |
bool | operator< (const iterator< Buff, Traits0 > &it) const |
Less. More... | |
template<class Traits0 > | |
bool | operator> (const iterator< Buff, Traits0 > &it) const |
Greater. More... | |
template<class Traits0 > | |
bool | operator<= (const iterator< Buff, Traits0 > &it) const |
Less or equal. More... | |
template<class Traits0 > | |
bool | operator>= (const iterator< Buff, Traits0 > &it) const |
Greater or equal. More... | |
Public Attributes | |
const Buff * | m_buff |
The circular buffer where the iterator points to. More... | |
pointer | m_it |
An internal iterator. More... | |
Private Types | |
typedef boost::iterator< std::random_access_iterator_tag, typename Traits::value_type, typename Traits::difference_type, typename Traits::pointer, typename Traits::reference > | base_iterator |
Base iterator. More... | |
typedef iterator< Buff, typename Traits::nonconst_self > | nonconst_self |
Non-const iterator. More... | |
Private Member Functions | |
template<class Traits0 > | |
helper_pointer< Traits0 > | create_helper_pointer (const iterator< Buff, Traits0 > &it) const |
Create helper pointer. More... | |
template<class InternalIterator0 , class InternalIterator1 > | |
bool | less (const InternalIterator0 &lhs, const InternalIterator1 &rhs) const |
Less. More... | |
Random access iterator for the circular buffer.
Buff | The type of the underlying circular buffer. |
Traits | Basic iterator types. |
|
private |
Base iterator.
typedef base_iterator::difference_type boost::cb_details::iterator< Buff, Traits >::difference_type |
Difference type.
|
private |
Non-const iterator.
typedef base_iterator::pointer boost::cb_details::iterator< Buff, Traits >::pointer |
Pointer to the element.
typedef base_iterator::reference boost::cb_details::iterator< Buff, Traits >::reference |
Reference to the element.
typedef Traits::size_type boost::cb_details::iterator< Buff, Traits >::size_type |
Size type.
typedef base_iterator::value_type boost::cb_details::iterator< Buff, Traits >::value_type |
The type of the elements stored in the circular buffer.
|
inline |
Default constructor.
|
inline |
|
inline |
|
inlineprivate |
Create helper pointer.
|
inlineprivate |
Less.
|
inline |
Inequality.
|
inline |
Dereferencing operator.
|
inline |
Iterator addition.
|
inline |
Increment operator (prefix).
|
inline |
Increment operator (postfix).
|
inline |
Iterator addition.
|
inline |
Difference operator.
|
inline |
Iterator subtraction.
|
inline |
Decrement operator (prefix).
|
inline |
Decrement operator (postfix).
|
inline |
Iterator subtraction.
|
inline |
Dereferencing operator.
|
inline |
Less.
|
inline |
Less or equal.
|
inline |
Assign operator.
|
inline |
Equality.
|
inline |
Greater.
|
inline |
Greater or equal.
|
inline |
Element access operator.
const Buff* boost::cb_details::iterator< Buff, Traits >::m_buff |
The circular buffer where the iterator points to.
pointer boost::cb_details::iterator< Buff, Traits >::m_it |
An internal iterator.