Honeycomb
0.1
Component-Model Framework
|
Iterator. More...
#include <List.h>
Public Types | |
typedef std::bidirectional_iterator_tag | iterator_category |
typedef T_ | value_type |
typedef sdt | difference_type |
typedef T_ * | pointer |
typedef T_ & | reference |
Public Member Functions | |
Iter_ () | |
Iter_ (const List &list, bool end) | |
Iter_ (const Iter_ &it) | |
~Iter_ () | |
Iter_ & | operator= (const Iter_ &it) |
Copy iterator, must reference copied cursor. More... | |
Iter_ & | operator++ () |
Iter_ & | operator-- () |
Iter_ | operator++ (int) |
Iter_ | operator-- (int) |
bool | operator== (const Iter_ &rhs) const |
bool | operator!= (const Iter_ &rhs) const |
reference | operator* () const |
pointer | operator-> () const |
bool | valid () const |
Returns true if iterator points to valid element that has not been deleted. More... | |
Friends | |
class | List |
Iterator.
An iterator instance is not thread-safe; it can't be shared between threads without a lock.
Each iterator needs a thread-local node reference, so the number of iterator instances allowed is limited by iterMax
.
typedef sdt honey::lockfree::List< T, Alloc_, Backoff, iterMax >::Iter_< T_ >::difference_type |
typedef std::bidirectional_iterator_tag honey::lockfree::List< T, Alloc_, Backoff, iterMax >::Iter_< T_ >::iterator_category |
typedef T_* honey::lockfree::List< T, Alloc_, Backoff, iterMax >::Iter_< T_ >::pointer |
typedef T_& honey::lockfree::List< T, Alloc_, Backoff, iterMax >::Iter_< T_ >::reference |
typedef T_ honey::lockfree::List< T, Alloc_, Backoff, iterMax >::Iter_< T_ >::value_type |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Copy iterator, must reference copied cursor.
|
inline |
|
inline |
Returns true if iterator points to valid element that has not been deleted.
|
friend |