SourcePro C++ 12.0 |
SourcePro® C++ API Reference Guide |
SourcePro C++ Documentation Home |
Iterator for class RWSlistCollectables. Traverses the linked-list from the first to last item. More...
#include <rw/slistcol.h>
Public Member Functions | |
RWSlistCollectablesIterator (RWSlistCollectables &s) | |
bool | atFirst () const |
bool | atLast () const |
void | toFirst () |
void | toLast () |
void * | operator++ () |
void * | operator+= (size_t n) |
virtual RWCollectable * | findNext (const RWCollectable *target) |
virtual RWCollectable * | key () const |
virtual RWCollectable * | operator() () |
virtual void | reset () |
RWCollectable * | findNextReference (const RWCollectable *e) |
RWCollectable * | insertAfterPoint (RWCollectable *a) |
RWCollectable * | remove () |
RWCollectable * | removeNext (const RWCollectable *target) |
RWCollectable * | removeNextReference (const RWCollectable *e) |
Iterator for class RWSlistCollectables. Traverses the linked-list from the first to last item.
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; continuing to use it will result in undefined behavior.
// Smalltalk typedef. typedef RWSlistCollectablesIterator LinkedListIterator; #include <rw/slistcol.h> RWSlistCollectables sc; RWSlistCollectablesIterator sci(sc) ;
None
RWSlistCollectablesIterator::RWSlistCollectablesIterator | ( | RWSlistCollectables & | s | ) | [inline] |
Constructs an iterator from a singly-linked list. Immediately after construction, the position of the iterator is undefined.
bool RWSlistCollectablesIterator::atFirst | ( | ) | const [inline] |
Returns true
if the iterator is at the beginning of the list, otherwise returns false
.
bool RWSlistCollectablesIterator::atLast | ( | ) | const [inline] |
Returns true
if the iterator is at the end of the list, otherwise returns false
;
virtual RWCollectable* RWSlistCollectablesIterator::findNext | ( | const RWCollectable * | target | ) | [inline, virtual] |
Moves iterator to the next item that isEqual() to the item pointed to by target and returns it. If no item is found, returns rwnil and the position of the iterator will be undefined.
Implements RWIterator.
RWCollectable* RWSlistCollectablesIterator::findNextReference | ( | const RWCollectable * | e | ) | [inline] |
Moves iterator to the next item which is identical to the item pointed to by e (that is, that has address e) and returns it. If no item is found, returns rwnil and the position of the iterator will be undefined.
RWCollectable* RWSlistCollectablesIterator::insertAfterPoint | ( | RWCollectable * | a | ) | [inline] |
Insert item a after the current cursor position and return the item. The cursor's position will be unchanged.
virtual RWCollectable* RWSlistCollectablesIterator::key | ( | ) | const [inline, virtual] |
Returns the item at the current iterator position.
Implements RWIterator.
virtual RWCollectable* RWSlistCollectablesIterator::operator() | ( | ) | [inline, virtual] |
Advances the iterator and returns the next item, or rwnil if the end of the collection has been reached.
Implements RWIterator.
void* RWSlistCollectablesIterator::operator++ | ( | ) | [inline] |
Advances the iterator one item.
void* RWSlistCollectablesIterator::operator+= | ( | size_t | n | ) | [inline] |
Advances the iterator n items.
RWCollectable* RWSlistCollectablesIterator::remove | ( | ) | [inline] |
Removes and returns the item at the current cursor position. Afterwards, the iterator will be positioned at the previous item in the list. This function is not very efficient in a singly-linked list.
RWCollectable* RWSlistCollectablesIterator::removeNext | ( | const RWCollectable * | target | ) | [inline] |
Moves iterator to the next item in the list that isEqual() to the item pointed to by target, removes it from the list and returns it. Afterwards, the iterator will be positioned at the previous item in the list. If no item is found, returns rwnil and the position of the iterator will be undefined.
RWCollectable* RWSlistCollectablesIterator::removeNextReference | ( | const RWCollectable * | e | ) | [inline] |
Moves iterator to the next item in the list which is identical to the item pointed to by e (that is, that has address e), removes it from the list and returns it. Afterwards, the iterator will be positioned at the previous item in the list. If no item is found, returns rwnil and the position of the iterator will be undefined.
virtual void RWSlistCollectablesIterator::reset | ( | ) | [inline, virtual] |
Resets the iterator. Afterwards, the position of the iterator will be undefined.
Implements RWIterator.
void RWSlistCollectablesIterator::toFirst | ( | ) | [inline] |
Moves the iterator to the beginning of the list.
void RWSlistCollectablesIterator::toLast | ( | ) | [inline] |
Moves the iterator to the end of the list.
© Copyright Rogue Wave Software, Inc. All Rights Reserved.
Rogue Wave and SourcePro are registered trademarks of Rogue Wave Software, Inc. in the United States and other countries. All other trademarks are the property of their respective owners.
Contact Rogue Wave about documentation or support issues.