SourcePro C++ 12.0 |
SourcePro® C++ API Reference Guide |
SourcePro C++ Documentation Home |
Contains virtual functions for positioning and resetting the iterator. More...
#include <rw/iterator.h>
Public Member Functions | |
virtual RWCollectable * | findNext (const RWCollectable *target)=0 |
virtual RWCollectable * | key () const =0 |
virtual RWCollectable * | operator() ()=0 |
virtual void | reset ()=0 |
Class RWIterator is an abstract base class for iterators used by the Smalltalk-like collection classes. The class contains virtual functions for positioning and resetting the iterator. They are all pure virtual functions, meaning that deriving classes must supply a definition. The descriptions below are intended to be generic -- all inheriting iterators generally follow the described pattern.
#include <rw/iterator.h> (Abstract base class)
None
virtual RWCollectable* RWIterator::findNext | ( | const RWCollectable * | target | ) | [pure virtual] |
Moves the iterator forward to the next item which "matches" the object pointed to by target and returns it or rwnil if no item was found. For most collections, an item "matches" the target if either RWCollectable::isEqual() or RWCollectable::compareTo() indicate equivalence, whichever is appropriate for the actual collection type. However, when an iterator is used with an "identity collection" (i.e., RWIdentitySet and RWIdentityDictionary), it looks for an item with the same address (i.e., "is identical to").
Implemented in RWBinaryTreeIterator, RWDlistCollectablesIterator, RWHashDictionaryIterator, RWHashTableIterator, RWOrderedIterator, RWBagIterator, and RWSlistCollectablesIterator.
virtual RWCollectable* RWIterator::key | ( | ) | const [pure virtual] |
Returns the item at the current iterator position.
Implemented in RWBinaryTreeIterator, RWDlistCollectablesIterator, RWHashDictionaryIterator, RWHashTableIterator, RWOrderedIterator, RWBagIterator, and RWSlistCollectablesIterator.
virtual RWCollectable* RWIterator::operator() | ( | ) | [pure virtual] |
Advances the iterator and returns the next item, or rwnil if the end of the collection has been reached.
Implemented in RWBinaryTreeIterator, RWDlistCollectablesIterator, RWHashDictionaryIterator, RWHashTableIterator, RWOrderedIterator, RWBagIterator, and RWSlistCollectablesIterator.
virtual void RWIterator::reset | ( | ) | [pure virtual] |
Resets the iterator to the state it had immediately after construction.
Implemented in RWBinaryTreeIterator, RWDlistCollectablesIterator, RWHashTableIterator, RWOrderedIterator, RWBagIterator, and RWSlistCollectablesIterator.
© 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.