Use this class to build a single enumerator by two given enumerator, e.g. to enumerate multiple container/collections or trees.
More...
#include <Enumerator.hxx>
template<class T>
class Arp::Enumerator< T >::Composite
Use this class to build a single enumerator by two given enumerator, e.g. to enumerate multiple container/collections or trees.
This class implements the composite design pattern for enumerators and makes it easy to traverse tree structures. Use Enumerator<T>::CreateComposite() to create an instance of this class.
◆ Composite() [1/2]
Constructs an Composite instance.
- Parameters
-
first | The first enumerator to create the composite from. |
second | The second enumerator to create the composite from. |
◆ Composite() [2/2]
Copy constructor.
- Parameters
-
◆ ~Composite()
Destructs this instance and frees all resources.
◆ GetCurrent()
Gets the element at the current position.
- Returns
- The element at the current position.
Depending an the template parameter type of this interface, a reference or even const reference might be returned.
Implements Arp::IEnumerator< T >.
◆ MoveNext()
Moves this enumerator to the next position.
- Returns
false
if the end of the container/collections was reached and the enumerator was not moved, otherwise false
.
See comments of interface declaration for more information about this operation.
IEnumerator
Implements Arp::IEnumerator< T >.
◆ operator=()
Assignment operator.
- Parameters
-
- Returns
- This instance as reference.
The documentation for this class was generated from the following file: