10namespace Arp {
namespace Base {
namespace Core
52 using Ptr = std::shared_ptr<IEnumerator>;
Declares the interface of the enumerator pattern, which is leaned on .NET enumerator idiom.
Definition: IEnumerator.hxx:49
IEnumerator(IEnumerator &&arg) noexcept=default
Move constructor.
IEnumerator(void)=default
Constructs an IEnumerator instance.
IEnumerator & operator=(IEnumerator &&arg) noexcept=default
Move-assignment operator.
virtual ~IEnumerator(void)=default
Destructs this instance and frees all resources.
IEnumerator & operator=(const IEnumerator &arg)=default
Deleted copy-assignment IEnumerator.
virtual T GetCurrent(void)=0
Gets the element at the current position.
virtual bool MoveNext(void)=0
Moves this enumerator to the next position.
std::shared_ptr< IEnumerator > Ptr
The smart pointer type of this interface.
Definition: IEnumerator.hxx:52
T ValueType
Type of the enumerated values
Definition: IEnumerator.hxx:55
IEnumerator(const IEnumerator &arg)=default
Deleted copy constructor.
Root namespace for the PLCnext API