PLCnext API Documentation  21.0.0.35466
Public Member Functions | List of all members
Arp::Enumerator< T >::Empty Class Reference

Implements an empty enumerator, that is, the first call of MoveNext() will return false. More...

#include <Enumerator.hxx>

Inheritance diagram for Arp::Enumerator< T >::Empty:
Inheritance graph

Public Member Functions

 Empty (void)=default
 Constructs an Empty instance. More...
 
 Empty (const Empty &arg)=default
 Copy constructor. More...
 
Empty & operator= (const Empty &arg)=default
 Assignment operator. More...
 
virtual ~Empty (void)=default
 Destructs this instance and frees all resources. More...
 
bool MoveNext (void) override
 Moves this enumerator to the next position. More...
 
T GetCurrent (void) override
 Gets the element at the current position. More...
 

Additional Inherited Members

- Public Types inherited from Arp::IEnumerator< T >
typedef std::shared_ptr< IEnumerator > Ptr
 The smart pointer tpye of this interface. More...
 
- Protected Member Functions inherited from Arp::IEnumerator< T >
 IEnumerator (void)=default
 Constructs an IEnumerator instance. More...
 
virtual ~IEnumerator (void)=default
 Destructs this instance and frees all resources. More...
 
 IEnumerator (const IEnumerator &arg)=default
 Copies an IEnumerator instance. More...
 
IEnumerator & operator= (const IEnumerator &arg)=default
 Assigns an IEnumerator instance. More...
 

Detailed Description

template<class T>
class Arp::Enumerator< T >::Empty

Implements an empty enumerator, that is, the first call of MoveNext() will return false.

Use Enumerator<T>::CreateEmpty() to create an insatnce of this class.

Constructor & Destructor Documentation

◆ Empty() [1/2]

template<class T>
Arp::Enumerator< T >::Empty::Empty ( void  )
default

Constructs an Empty instance.

◆ Empty() [2/2]

template<class T>
Arp::Enumerator< T >::Empty::Empty ( const Empty &  arg)
default

Copy constructor.

Parameters
argThe argument to copy.

◆ ~Empty()

template<class T>
virtual Arp::Enumerator< T >::Empty::~Empty ( void  )
virtualdefault

Destructs this instance and frees all resources.

Member Function Documentation

◆ GetCurrent()

template<class T >
T Arp::Enumerator< T >::Empty::GetCurrent ( void  )
inlineoverridevirtual

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()

template<class T >
bool Arp::Enumerator< T >::Empty::MoveNext ( void  )
inlineoverridevirtual

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=()

template<class T>
Empty& Arp::Enumerator< T >::Empty::operator= ( const Empty &  arg)
default

Assignment operator.

Parameters
argThe argument to copy.
Returns
This instance as reference.

The documentation for this class was generated from the following file: