Loading...
Searching...
No Matches
BALL::ForwardIterator< Container, DataType, Position, Traits > Class Template Reference

`#include <BALL/CONCEPT/forwardIterator.h>`

Inheritance diagram for BALL::ForwardIterator< Container, DataType, Position, Traits >:

## Public Types

Typedefs
typedef DataType & | reference
typedef DataType * | pointer
typedef ConstForwardIterator< Container, DataType, Position, Traits > | Base
Public Types inherited from BALL::ConstForwardIterator< Container, DataType, Position, Traits >
typedef std::forward_iterator_tag | iterator_category
typedef BaseIterator< Container, DataType, Position, Traits > | Base
Public Types inherited from BALL::BaseIterator< Container, DataType, Position, Traits >
typedef DataType | value_type
typedef Position | difference_type
typedef const DataType * | pointer
typedef const DataType & | reference
typedef std::input_iterator_tag | iterator_category

## Public Member Functions

Constructors and Destructors
BALL_INLINE | ForwardIterator ()
BALL_INLINE | ForwardIterator (const ForwardIterator &iterator)
BALL_INLINE | ~ForwardIterator ()
Assignemnt
BALL_INLINE ForwardIterator & | operator= (const ForwardIterator &iterator)
BALL_INLINE void | swap (ForwardIterator &iterator)
Public Member Functions inherited from BALL::ConstForwardIterator< Container, DataType, Position, Traits >
BALL_INLINE | ConstForwardIterator ()
| Default constructor.
BALL_INLINE | ConstForwardIterator (const ConstForwardIterator &iterator)
| Copy constructor.
BALL_INLINE | ~ConstForwardIterator ()
BALL_INLINE ConstForwardIterator & | operator= (const ConstForwardIterator &iterator)
BALL_INLINE void | swap (ConstForwardIterator &iterator)
BALL_INLINE void | toBegin ()
BALL_INLINE bool | isBegin () const
| Check whether the iterator points to the first item of the container.
BALL_INLINE void | toEnd ()
BALL_INLINE bool | isEnd () const
| Check whether the iterator points behind the last item of the container.
BALL_INLINE ConstForwardIterator & | operator++ ()
BALL_INLINE ConstForwardIterator | operator++ (int)
Public Member Functions inherited from BALL::BaseIterator< Container, DataType, Position, Traits >
BALL_INLINE | BaseIterator ()
| Default constructor.
BALL_INLINE | BaseIterator (const BaseIterator &iterator)
| Copy constructor.
BALL_INLINE | ~BaseIterator ()
| Destructor.
BALL_INLINE BaseIterator & | operator= (const BaseIterator &iterator)
BALL_INLINE void | swap (BaseIterator &iterator)
| Swap two iterators.
BALL_INLINE void | invalidate ()
| Invalidate the iterator.
BALL_INLINE void | setTraits (const Traits &traits)
| Set the traits.
BALL_INLINE const Traits & | getTraits () const
| Get a constant reference to the traits of this iterator.
BALL_INLINE Traits & | getTraits ()
| Get a constant reference to the traits of this iterator.
BALL_INLINE const Container * | getContainer () const
| Get a constant pointer to the container of this iterator.
BALL_INLINE | operator const Position & () const
BALL_INLINE reference | operator* () const
| Convert an iterator to its Datatype by returning a reference to the current data.
BALL_INLINE pointer | operator-> () const
| Return a pointer to the current data.
BALL_INLINE bool | operator== (const BaseIterator &iterator) const
| Equality operator.
BALL_INLINE bool | operator!= (const BaseIterator &iterator) const
| Inequality operator.
BALL_INLINE bool | isSingular () const
BALL_INLINE bool | isValid () const
BALL_INLINE bool | operator+ () const
| Validity predicate.
BALL_INLINE bool | operator- () const
| Invalidity perdicate.

## Iterator methods

BALL_INLINE reference | operator* () const
BALL_INLINE pointer | operator-> () const
BALL_INLINE ForwardIterator & | operator++ ()
BALL_INLINE ForwardIterator | operator++ (int)
static ForwardIterator | begin (const Container &container)
static ForwardIterator | end (const Container &container)
BALL_INLINE | ForwardIterator (const Container &container)

## Additional Inherited Members

static ConstForwardIterator | begin (const Container &container)
static ConstForwardIterator | end (const Container &container)
BALL_INLINE | ConstForwardIterator (const Container &container)
BALL_INLINE | BaseIterator (const Container &container)

## Detailed Description

template<typename Container, typename DataType, typename Position, typename Traits>
class BALL::ForwardIterator< Container, DataType, Position, Traits >

Generic mutable forward iterator class

Definition at line 197 of file forwardIterator.h.

## Member Typedef Documentation

## Base

template<typename Container, typename DataType, typename Position, typename Traits>

typedef ConstForwardIterator<Container, DataType, Position, Traits> BALL::ForwardIterator< Container, DataType, Position, Traits >::Base

Definition at line 211 of file forwardIterator.h.

## pointer

template<typename Container, typename DataType, typename Position, typename Traits>

typedef DataType* BALL::ForwardIterator< Container, DataType, Position, Traits >::pointer

Definition at line 209 of file forwardIterator.h.

## reference

template<typename Container, typename DataType, typename Position, typename Traits>

typedef DataType& BALL::ForwardIterator< Container, DataType, Position, Traits >::reference

Definition at line 207 of file forwardIterator.h.

## Constructor & Destructor Documentation

## ForwardIterator() [1/3]

template<typename Container, typename DataType, typename Position, typename Traits>

BALL_INLINE BALL::ForwardIterator< Container, DataType, Position, Traits >::ForwardIterator | ( |  | ) |

inline

Definition at line 219 of file forwardIterator.h.

## ForwardIterator() [2/3]

template<typename Container, typename DataType, typename Position, typename Traits>

BALL_INLINE BALL::ForwardIterator< Container, DataType, Position, Traits >::ForwardIterator | ( | const ForwardIterator< Container, DataType, Position, Traits > & | iterator | ) |

inline

Definition at line 222 of file forwardIterator.h.

## ~ForwardIterator()

template<typename Container, typename DataType, typename Position, typename Traits>

BALL_INLINE BALL::ForwardIterator< Container, DataType, Position, Traits >::~ForwardIterator | ( |  | ) |

inline

Definition at line 228 of file forwardIterator.h.

## ForwardIterator() [3/3]

template<typename Container, typename DataType, typename Position, typename Traits>

BALL_INLINE BALL::ForwardIterator< Container, DataType, Position, Traits >::ForwardIterator | ( | const Container & | container | ) |

inline protected

Definition at line 297 of file forwardIterator.h.

## Member Function Documentation

## begin()

template<typename Container, typename DataType, typename Position, typename Traits>

BALL_INLINE ForwardIterator< Container, DataType, Position, Traits > BALL::ForwardIterator< Container, DataType, Position, Traits >::begin | ( | const Container & | container | ) |

static

Return an iterator pointing to the beginning of the container

Exceptions

  Exception::Precondition |

Definition at line 307 of file forwardIterator.h.

## end()

template<typename Container, typename DataType, typename Position, typename Traits>

BALL_INLINE ForwardIterator< Container, DataType, Position, Traits > BALL::ForwardIterator< Container, DataType, Position, Traits >::end | ( | const Container & | container | ) |

static

Return an iterator pointing at the end of the container

Exceptions

  Exception::Precondition |

Definition at line 317 of file forwardIterator.h.

## operator*()

template<typename Container, typename DataType, typename Position, typename Traits>

BALL_INLINE reference BALL::ForwardIterator< Container, DataType, Position, Traits >::operator* | ( |  | ) | const

inline

Definition at line 260 of file forwardIterator.h.

## operator++() [1/2]

template<typename Container, typename DataType, typename Position, typename Traits>

BALL_INLINE ForwardIterator & BALL::ForwardIterator< Container, DataType, Position, Traits >::operator++ | ( |  | ) |

inline

Increment operator

Exceptions

  Exception::Precondition |

Definition at line 274 of file forwardIterator.h.

## operator++() [2/2]

template<typename Container, typename DataType, typename Position, typename Traits>

BALL_INLINE ForwardIterator BALL::ForwardIterator< Container, DataType, Position, Traits >::operator++ | ( | int |  | ) |

inline

Postfix increment operator

Exceptions

  Exception::Precondition |

Definition at line 284 of file forwardIterator.h.

## operator->()

template<typename Container, typename DataType, typename Position, typename Traits>

BALL_INLINE pointer BALL::ForwardIterator< Container, DataType, Position, Traits >::operator-> | ( |  | ) | const

inline

Definition at line 266 of file forwardIterator.h.

## operator=()

template<typename Container, typename DataType, typename Position, typename Traits>

BALL_INLINE ForwardIterator & BALL::ForwardIterator< Container, DataType, Position, Traits >::operator= | ( | const ForwardIterator< Container, DataType, Position, Traits > & | iterator | ) |

inline

Definition at line 235 of file forwardIterator.h.

## swap()

template<typename Container, typename DataType, typename Position, typename Traits>

BALL_INLINE void BALL::ForwardIterator< Container, DataType, Position, Traits >::swap | ( | ForwardIterator< Container, DataType, Position, Traits > & | iterator | ) |

inline

Definition at line 242 of file forwardIterator.h.