Base Framework
Public Types | Public Member Functions | Protected Attributes | List of all members
DoubleLinkedNodeReadEnumerator< TRAITS > Class Template Reference

Non-modifying enumerator of DoubleLinkedNode. More...

#include <base/collection/DoubleLinkedNode.h>

Inherits Enumerator< TRAITS >.

Public Types

typedef Enumerator< TRAITS >::Value Value
 
typedef Enumerator< TRAITS >::Reference Reference
 
typedef Enumerator< TRAITS >::Pointer Pointer
 
- Public Types inherited from Enumerator< TRAITS >
typedef TRAITS::Value Value
 
typedef TRAITS::Distance Distance
 
typedef TRAITS::Reference Reference
 
typedef TRAITS::Pointer Pointer
 

Public Member Functions

 DoubleLinkedNodeReadEnumerator (const DoubleLinkedNode< Value > *begin) noexcept
 
 DoubleLinkedNodeReadEnumerator (const DoubleLinkedNodeReadEnumerator &copy) noexcept
 
bool hasNext () const noexcept
 
Reference next ()
 
bool operator== (const DoubleLinkedNodeReadEnumerator &compare) const noexcept
 
bool operator!= (const DoubleLinkedNodeReadEnumerator &compare) const noexcept
 
- Public Member Functions inherited from Enumerator< TRAITS >
virtual ~Enumerator ()
 

Protected Attributes

const DoubleLinkedNode< Value > * current = nullptr
 

Detailed Description

template<class TRAITS>
class DoubleLinkedNodeReadEnumerator< TRAITS >

Non-modifying enumerator of DoubleLinkedNode.

Enumeration of elements in a DoubleLinkedNode.

Examples
testsuite/client.cpp, testsuite/ftp.cpp, testsuite/http.cpp, and testsuite/server.cpp.

Constructor & Destructor Documentation

◆ DoubleLinkedNodeReadEnumerator() [1/2]

template<class TRAITS >
DoubleLinkedNodeReadEnumerator< TRAITS >::DoubleLinkedNodeReadEnumerator ( const DoubleLinkedNode< Value > *  begin)
inlineexplicitnoexcept

Initializes an enumeration of all the elements of a DoubleLinkedNode.

Parameters
beginSpecifies the beginning of the enumeration.

◆ DoubleLinkedNodeReadEnumerator() [2/2]

template<class TRAITS >
DoubleLinkedNodeReadEnumerator< TRAITS >::DoubleLinkedNodeReadEnumerator ( const DoubleLinkedNodeReadEnumerator< TRAITS > &  copy)
inlinenoexcept

Initializes enumeration from other enumeration.

Member Function Documentation

◆ hasNext()

template<class TRAITS >
bool DoubleLinkedNodeReadEnumerator< TRAITS >::hasNext ( ) const
inlinevirtualnoexcept

Returns true if the enumeration still contains elements.

Implements Enumerator< TRAITS >.

Examples
testsuite/client.cpp, testsuite/ftp.cpp, testsuite/http.cpp, and testsuite/server.cpp.

◆ next()

template<class TRAITS >
Reference DoubleLinkedNodeReadEnumerator< TRAITS >::next ( )
inlinevirtual

Returns the next element and advances the position of this enumeration.

Implements Enumerator< TRAITS >.

Examples
testsuite/client.cpp, testsuite/ftp.cpp, testsuite/http.cpp, and testsuite/server.cpp.

◆ operator!=()

template<class TRAITS >
bool DoubleLinkedNodeReadEnumerator< TRAITS >::operator!= ( const DoubleLinkedNodeReadEnumerator< TRAITS > &  compare) const
inlinenoexcept

Returns true if the enumerations aren't pointing to the same position.

◆ operator==()

template<class TRAITS >
bool DoubleLinkedNodeReadEnumerator< TRAITS >::operator== ( const DoubleLinkedNodeReadEnumerator< TRAITS > &  compare) const
inlinenoexcept

Returns true if the enumerations are pointing to the same position.

Member Data Documentation

◆ current

template<class TRAITS >
const DoubleLinkedNode<Value>* DoubleLinkedNodeReadEnumerator< TRAITS >::current = nullptr
protected

The current position in the enumeration.