msl 1.3.0
Loading...
Searching...
No Matches
msl::Iterator< T > Class Template Reference

Detailed Description

template<typename T>
class msl::Iterator< T >

Read/write iterator to a container.

#include <Iterator.h>

Public Member Functions

 Iterator (T const &container={})
 Create an iterator at the beginning of a container.
 
 Iterator (Iterator< T > const &)=default
 
 Iterator (Iterator< T > &&)=default
 
Iterator< T > & operator= (Iterator< T > const &)=default
 
Iterator< T > & operator= (Iterator< T > &&)=default
 
T::value_type & item ()
 Return the current item.
 
- Public Member Functions inherited from msl::ConstIterator< T >
 ConstIterator (T const &container={})
 Create an iterator at the beginning of a container.
 
 ConstIterator (ConstIterator< T > const &)=default
 
 ConstIterator (ConstIterator< T > &&)=default
 
ConstIterator< T > & operator= (ConstIterator< T > const &)=default
 
ConstIterator< T > & operator= (ConstIterator< T > &&)=default
 
virtual ~ConstIterator ()=default
 
T const & container () const
 Return the container.
 
void setContainer (T const &container)
 Set the container, reset the counter.
 
std::size_t index () const
 Return the current index.
 
T::value_type const & item () const
 Return the current item.
 
std::size_t end () const
 Return the end value.
 
ConstIteratorreset ()
 Reset the iterator to the start of the container.
 
ConstIteratoroperator++ ()
 Move to the next element.
 
bool first () const
 Test if the index is 0.
 
bool last () const
 Test if the index is equal to end-1.
 
bool done () const
 Test if the index is equal to end.
 

Constructor & Destructor Documentation

◆ Iterator() [1/3]

template<typename T >
msl::Iterator< T >::Iterator ( T const &  container = {})
inline

Create an iterator at the beginning of a container.

◆ Iterator() [2/3]

template<typename T >
msl::Iterator< T >::Iterator ( Iterator< T > const &  )
default

◆ Iterator() [3/3]

template<typename T >
msl::Iterator< T >::Iterator ( Iterator< T > &&  )
default

Member Function Documentation

◆ operator=() [1/2]

template<typename T >
Iterator< T > & msl::Iterator< T >::operator= ( Iterator< T > const &  )
default

◆ operator=() [2/2]

template<typename T >
Iterator< T > & msl::Iterator< T >::operator= ( Iterator< T > &&  )
default

◆ item()

template<typename T >
T::value_type & msl::Iterator< T >::item ( )
inline

Return the current item.


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