5 #ifndef BALL_CONCEPT_BIDIRECTIONALITERATOR_H 6 #define BALL_CONCEPT_BIDIRECTIONALITERATOR_H 8 #ifndef BALL_CONCEPT_FORWARDITERATOR_H 22 template <
typename Container,
typename DataType,
typename Position,
typename Traits>
142 template <
typename Container,
typename DataType,
typename Position,
typename Traits>
150 template <
typename Container,
typename DataType,
typename Position,
typename Traits>
158 template <
typename Container,
typename DataType,
typename Position,
typename Traits>
166 template <
typename Container,
typename DataType,
typename Position,
typename Traits>
174 template <
typename Container,
typename DataType,
typename Position,
typename Traits>
184 template <
typename Container,
typename DataType,
typename Position,
typename Traits>
195 template <
typename Container,
typename DataType,
typename Position,
typename Traits>
205 template <
typename Container,
typename DataType,
typename Position,
typename Traits>
216 template <
typename Container,
typename DataType,
typename Position,
typename Traits>
226 template <
typename Container,
typename DataType,
typename Position,
typename Traits>
236 template <
typename Container,
typename DataType,
typename Position,
typename Traits>
246 template <
typename Container,
typename DataType,
typename Position,
typename Traits>
257 template <
typename Container,
typename DataType,
typename Position,
typename Traits>
352 template <
typename Container,
typename DataType,
typename Position,
typename Traits>
361 template <
typename Container,
typename DataType,
typename Position,
typename Traits>
371 template <
typename Container,
typename DataType,
typename Position,
typename Traits>
376 Base::operator -- ();
380 template <
typename Container,
typename DataType,
typename Position,
typename Traits>
390 template <
typename Container,
typename DataType,
typename Position,
typename Traits>
400 template <
typename Container,
typename DataType,
typename Position,
typename Traits>
410 template <
typename Container,
typename DataType,
typename Position,
typename Traits>
420 template <
typename Container,
typename DataType,
typename Position,
typename Traits>
430 template <
typename Container,
typename DataType,
typename Position,
typename Traits>
441 #endif // BALL_CONCEPT_BIDIRECTIONALITERATOR_H
BALL_INLINE void toBegin()
BALL_INLINE ConstBidirectionalIterator & operator--()
BALL_INLINE ConstForwardIterator & operator++()
BALL_INLINE BidirectionalIterator & operator++()
BALL_INLINE BidirectionalIterator()
Default constructor.
BALL_INLINE const Traits & getTraits() const
Get a constant reference to the traits of this iterator.
BALL_INLINE reference operator*() const
Convert an iterator to its Datatype by returning a reference to the current data. ...
BALL_INLINE bool isEnd() const
Check whether the iterator points to the position after the last item of the container.
BALL_INLINE ConstBidirectionalIterator(const ConstBidirectionalIterator &iterator)
BALL_INLINE ConstBidirectionalIterator & operator++()
#define BALL_PRECONDITION_EXCEPTION(condition, message)
static BidirectionalIterator begin(const Container &container)
BALL_INLINE pointer operator->() const
Return a pointer to the current data.
BALL_INLINE bool isSingular() const
static BidirectionalIterator rbegin(const Container &container)
BALL_INLINE ~ConstBidirectionalIterator()
static ConstBidirectionalIterator begin(const Container &container)
std::bidirectional_iterator_tag iterator_category
BALL_INLINE BidirectionalIterator & operator--()
BALL_INLINE ~BidirectionalIterator()
Destructor.
static BidirectionalIterator rend(const Container &container)
static ConstBidirectionalIterator rbegin(const Container &container)
BALL_INLINE bool isBegin() const
Check whether the iterator points to the item at the beginning of the container.
static ConstBidirectionalIterator rend(const Container &container)
BALL_INLINE bool isRBegin() const
Test whether the iterator points to the "reverse" first element of the container. ...
BALL_INLINE ConstBidirectionalIterator()
static ConstBidirectionalIterator end(const Container &container)
-*- Mode: C++; tab-width: 2; -*-
Mutable bidirectional iterator.
BALL_INLINE BidirectionalIterator(const BidirectionalIterator &iterator)
Copy constructor.
ConstForwardIterator< Container, DataType, Position, Traits > Base
BALL_INLINE ConstBidirectionalIterator(const Container &container)
Construct an iterator bound to a specific container.
BALL_INLINE bool isREnd() const
Test wheter the iterator points to the position before the first element.
BALL_INLINE bool isValid() const
ConstBidirectionalIterator< Container, DataType, Position, Traits > Base
static BidirectionalIterator end(const Container &container)