SourcePro® 2023.1 |
SourcePro® API Reference Guide |
Iterator for class RWTIsvSlist. More...
#include <rw/tislist.h>
Inherits RWIsvSlistIterator.
Public Member Functions | |
RWTIsvSlistIterator (RWTIsvSlist< TL > &c) | |
RWTIsvSlist< TL > * | container () const |
TL * | findNext (bool(*testFun)(const TL *, void *), void *) |
void | insertAfterPoint (TL *a) |
TL * | key () const |
TL * | operator() () |
TL * | operator++ () |
TL * | operator+= (size_t n) |
TL * | remove () |
TL * | removeNext (bool(*testFun)(const TL *, void *), void *) |
void | reset () |
void | reset (RWTIsvSlist< TL > &c) |
RWTIsvSlistIterator provides an iterator interface for class RWTIsvSlist, allowing sequential access to all the elements of a singly-linked parameterized intrusive list. Elements are accessed in order, from first to last.
The "current item" is undefined immediately after construction; you must define it by using operator()() or some other (valid) operation.
Once the iterator has advanced beyond the end of the collection, it is no longer valid; its continued use will result in undefined behavior.
|
inline |
Constructs an iterator to be used with the list c.
|
inline |
Returns a pointer to the collection over which this iterator is iterating.
TL* RWTIsvSlistIterator< TL >::findNext | ( | bool(*)(const TL *, void *) | testFun, |
void * | |||
) |
Advances the iterator to the first link for which the function pointed to by testFun returns true
and returns it, or rwnil if there is no such link.
|
inline |
Inserts the link pointed to by a into the iterator's associated collection in the position immediately after the iterator's current position.
|
inline |
Returns the link at the iterator's current position. Returns rwnil if the iterator is not valid.
|
inline |
Advances the iterator one position, returning a pointer to the new link, or rwnil if the end of the list has been reached.
|
inline |
Advances the iterator one position, returning a pointer to the new link, or rwnil if the end of the list has been reached.
|
inline |
Advances the iterator n positions, returning a pointer to the new link, or rwnil if the end of the list has been reached.
|
inline |
Removes and returns the current link from the iterator's associated collection. Returns rwnil if unsuccessful. If successful, the iterator will be positioned at the element immediately before the removed link. This function is relatively inefficient for a singly-linked list.
TL* RWTIsvSlistIterator< TL >::removeNext | ( | bool(*)(const TL *, void *) | testFun, |
void * | |||
) |
Advances the iterator to the first link for which the function pointed to by testFun returns true
, removes and returns it. Returns false
if unsuccessful. If successful, the iterator will be positioned at the element immediately before the removed element.
|
inline |
Resets the iterator to the state it had immediately after construction.
|
inline |
Resets the iterator to iterate over the collection c.
Copyright © 2023 Rogue Wave Software, Inc., a Perforce company. All Rights Reserved. |