BALL::ConstBidirectionalIterator< Container, DataType, Position, Traits > Class Template Reference

#include <BALL/CONCEPT/bidirectionalIterator.h>

Inheritance diagram for BALL::ConstBidirectionalIterator< Container, DataType, Position, Traits >:
BALL::ConstForwardIterator< Container, DataType, Position, Traits > BALL::BaseIterator< Container, DataType, Position, Traits >

List of all members.


Public Types

Typedefs
typedef
std::bidirectional_iterator_tag 
iterator_category
typedef ConstForwardIterator
< Container, DataType,
Position, Traits > 
Base

Public Member Functions

Constructors and destructor.
BALL_INLINE ConstBidirectionalIterator ()
BALL_INLINE ConstBidirectionalIterator (const ConstBidirectionalIterator &iterator)
BALL_INLINE ~ConstBidirectionalIterator ()

Protected Member Functions

BALL_INLINE ConstBidirectionalIterator (const Container &container)
 

Construct an iterator bound to a specific container.



Iterator methods

BALL_INLINE void toBegin () throw (Exception::Precondition)
 

Move the iterator to the beginning of the container.


BALL_INLINE bool isBegin () const
 

Check whether the iterator points to the item at the beginning of the container.


void toEnd () throw (Exception::Precondition)
 

Move the iterator to the position after the last item of the container.


BALL_INLINE bool isEnd () const
 

Check whether the iterator points to the position after the last item of the container.


void toRBegin () throw (Exception::Precondition)
 

Move the iterator to the "reverse" beginning of the container.


BALL_INLINE bool isRBegin () const
 

Test whether the iterator points to the "reverse" first element of the container.


void toREnd () throw (Exception::Precondition)
 

Move the iterator to the position before the first element.


BALL_INLINE bool isREnd () const
 

Test wheter the iterator points to the position before the first element.


BALL_INLINE
ConstBidirectionalIterator
operator++ () throw (Exception::Precondition)
 

Increment operator.


BALL_INLINE
ConstBidirectionalIterator 
operator++ (int) throw (Exception::Precondition)
 

Postfix increment operator.


BALL_INLINE
ConstBidirectionalIterator
operator-- () throw (Exception::Precondition)
 

Decrement operator.


BALL_INLINE
ConstBidirectionalIterator 
operator-- (int) throw (Exception::Precondition)
 

Postfix decrement operator.


static ConstBidirectionalIterator begin (const Container &container) throw (Exception::Precondition)
 

Return an iterator pointingto the first item of the container.


static ConstBidirectionalIterator end (const Container &container) throw (Exception::Precondition)
 

Return an iterator pointing to the position after the last element.


static ConstBidirectionalIterator rbegin (const Container &container) throw (Exception::Precondition)
 

Return an iterator pointing to the last element.


static ConstBidirectionalIterator rend (const Container &container) throw (Exception::Precondition)
 

Return an iterator pointing to the positon before the first element.



Detailed Description

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

Constant Bidirectional Iterator.


Member Typedef Documentation

template<typename Container, typename DataType, typename Position, typename Traits>
typedef std::bidirectional_iterator_tag BALL::ConstBidirectionalIterator< Container, DataType, Position, Traits >::iterator_category

Constructor & Destructor Documentation

template<typename Container, typename DataType, typename Position, typename Traits>
BALL_INLINE BALL::ConstBidirectionalIterator< Container, DataType, Position, Traits >::ConstBidirectionalIterator (  )  [inline]
template<typename Container, typename DataType, typename Position, typename Traits>
BALL_INLINE BALL::ConstBidirectionalIterator< Container, DataType, Position, Traits >::ConstBidirectionalIterator ( const ConstBidirectionalIterator< Container, DataType, Position, Traits > &  iterator  )  [inline]
template<typename Container, typename DataType, typename Position, typename Traits>
BALL_INLINE BALL::ConstBidirectionalIterator< Container, DataType, Position, Traits >::~ConstBidirectionalIterator (  )  [inline]
template<typename Container, typename DataType, typename Position, typename Traits>
BALL_INLINE BALL::ConstBidirectionalIterator< Container, DataType, Position, Traits >::ConstBidirectionalIterator ( const Container &  container  )  [inline, protected]

Construct an iterator bound to a specific container.


Member Function Documentation

template<typename Container, typename DataType, typename Position, typename Traits>
BALL_INLINE bool BALL::ConstBidirectionalIterator< Container, DataType, Position, Traits >::isBegin (  )  const [inline]

Check whether the iterator points to the item at the beginning of the container.

Reimplemented from BALL::ConstForwardIterator< Container, DataType, Position, Traits >.

template<typename Container, typename DataType, typename Position, typename Traits>
BALL_INLINE bool BALL::ConstBidirectionalIterator< Container, DataType, Position, Traits >::isEnd (  )  const [inline]

Check whether the iterator points to the position after the last item of the container.

Reimplemented from BALL::ConstForwardIterator< Container, DataType, Position, Traits >.

Referenced by BALL::get5Prime().

template<typename Container, typename DataType, typename Position, typename Traits>
BALL_INLINE bool BALL::ConstBidirectionalIterator< Container, DataType, Position, Traits >::isRBegin (  )  const [inline]

Test whether the iterator points to the "reverse" first element of the container.

template<typename Container, typename DataType, typename Position, typename Traits>
BALL_INLINE bool BALL::ConstBidirectionalIterator< Container, DataType, Position, Traits >::isREnd (  )  const [inline]

Test wheter the iterator points to the position before the first element.

Referenced by BALL::CompositeIteratorTraits::isREnd().

template<typename Container , typename DataType , typename Position , typename Traits >
BALL_INLINE ConstBidirectionalIterator< Container, DataType, Position, Traits > & BALL::ConstBidirectionalIterator< Container, DataType, Position, Traits >::operator++ (  )  throw (Exception::Precondition) [inline]
template<typename Container , typename DataType , typename Position , typename Traits >
BALL_INLINE ConstBidirectionalIterator< Container, DataType, Position, Traits > BALL::ConstBidirectionalIterator< Container, DataType, Position, Traits >::operator-- ( int   )  throw (Exception::Precondition) [inline]
template<typename Container , typename DataType , typename Position , typename Traits >
BALL_INLINE ConstBidirectionalIterator< Container, DataType, Position, Traits > & BALL::ConstBidirectionalIterator< Container, DataType, Position, Traits >::operator-- (  )  throw (Exception::Precondition) [inline]
template<typename Container , typename DataType , typename Position , typename Traits >
BALL_INLINE void BALL::ConstBidirectionalIterator< Container, DataType, Position, Traits >::toRBegin (  )  throw (Exception::Precondition) [inline]