Click
Loading...
Searching...
No Matches
Public Member Functions | List of all members
List< T, member >::iterator Class Reference

Iterator type for List. More...

#include <list.hh>

Inheritance diagram for List< T, member >::iterator:
List< T, member >::const_iterator

Public Member Functions

 iterator ()
 Construct an invalid iterator.
 
 iterator (T *x)
 Construct an iterator pointing at x.
 
 iterator (List< T, member > *list)
 Construct an end iterator for list.
 
 iterator (T *x, List< T, member > *list)
 Construct an iterator pointing at x in list.
 
T * get () const
 Return the current list element or null.
 
T * operator-> () const
 Return the current list element or null.
 
T & operator* () const
 Return the current list element.
 
iterator & operator+= (int x)
 Move this iterator forward by x positions.
 
iterator & operator-= (int x)
 Move this iterator backward by x positions.
 
iterator operator+ (int x) const
 Return an iterator x positions ahead.
 
iterator operator- (int x) const
 Return an iterator x positions behind.
 
- Public Member Functions inherited from List< T, member >::const_iterator
 const_iterator ()
 Construct an invalid iterator.
 
 const_iterator (const T *x)
 Construct an iterator pointing at x.
 
 const_iterator (const List< T, member > *list)
 Construct an end iterator for list.
 
 const_iterator (const T *x, const List< T, member > *list)
 Construct an iterator pointing at x in list.
 
 operator unspecified_bool_type () const
 Test if this iterator points to a valid list element.
 
bool live () const
 Test if this iterator points to a valid list element.
 
const T * get () const
 Return the current list element or null.
 
const T * operator-> () const
 Return the current list element or null.
 
const T & operator* () const
 Return the current list element.
 
void operator++ ()
 Advance this iterator to the next element.
 
void operator++ (int)
 Advance this iterator to the next element.
 
void operator-- ()
 Advance this iterator to the previous element.
 
void operator-- (int)
 Advance this iterator to the previous element.
 
const_iterator & operator+= (int x)
 Move this iterator forward by x positions.
 
const_iterator & operator-= (int x)
 Move this iterator backward by x positions.
 
const_iterator operator+ (int x) const
 Return an iterator x positions ahead.
 
const_iterator operator- (int x) const
 Return an iterator x positions behind.
 
bool operator== (const_iterator x) const
 Test if this iterator equals x.
 
bool operator!= (const_iterator x) const
 Test if this iterator does not equal x.
 

Additional Inherited Members

- Public Types inherited from List< T, member >::const_iterator
typedef bool(const_iterator::* unspecified_bool_type) () const
 

Detailed Description

template<typename T, List_member< T > T::* member>
class List< T, member >::iterator

Iterator type for List.

Constructor & Destructor Documentation

◆ iterator() [1/4]

template<typename T , List_member< T > T::* member>
List< T, member >::iterator::iterator ( )
inline

Construct an invalid iterator.

◆ iterator() [2/4]

template<typename T , List_member< T > T::* member>
List< T, member >::iterator::iterator ( T *  x)
inline

Construct an iterator pointing at x.

◆ iterator() [3/4]

template<typename T , List_member< T > T::* member>
List< T, member >::iterator::iterator ( List< T, member > *  list)
inline

Construct an end iterator for list.

◆ iterator() [4/4]

template<typename T , List_member< T > T::* member>
List< T, member >::iterator::iterator ( T *  x,
List< T, member > *  list 
)
inline

Construct an iterator pointing at x in list.

Member Function Documentation

◆ get()

template<typename T , List_member< T > T::* member>
T * List< T, member >::iterator::get ( ) const
inline

Return the current list element or null.

◆ operator->()

template<typename T , List_member< T > T::* member>
T * List< T, member >::iterator::operator-> ( ) const
inline

Return the current list element or null.

◆ operator*()

template<typename T , List_member< T > T::* member>
T & List< T, member >::iterator::operator* ( ) const
inline

Return the current list element.

◆ operator+=()

template<typename T , List_member< T > T::* member>
iterator & List< T, member >::iterator::operator+= ( int  x)
inline

Move this iterator forward by x positions.

Returns
reference to this iterator
Note
This function takes O(abs(x)) time.

◆ operator-=()

template<typename T , List_member< T > T::* member>
iterator & List< T, member >::iterator::operator-= ( int  x)
inline

Move this iterator backward by x positions.

Returns
reference to this iterator
Note
This function takes O(abs(x)) time.

◆ operator+()

template<typename T , List_member< T > T::* member>
iterator List< T, member >::iterator::operator+ ( int  x) const
inline

Return an iterator x positions ahead.

◆ operator-()

template<typename T , List_member< T > T::* member>
iterator List< T, member >::iterator::operator- ( int  x) const
inline

Return an iterator x positions behind.


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