Quick Links:

bal | bbl | bdl | bsl

Public Member Functions | Friends

bslalg::DequeIterator< VALUE_TYPE, 1 > Class Template Reference

#include <bslalg_dequeiterator.h>

List of all members.

Public Member Functions

 DequeIterator ()
 DequeIterator (BlockPtr *blockPtrPtr)
 DequeIterator (BlockPtr *blockPtrPtr, VALUE_TYPE *valuePtr)
void operator++ ()
void operator-- ()
void operator+= (std::ptrdiff_t offset)
void operator-= (std::ptrdiff_t offset)
void nextBlock ()
void previousBlock ()
void setBlock (BlockPtr *blockPtrPtr)
void valuePtrDecrement ()
void valuePtrIncrement ()
VALUE_TYPE & operator* () const
DequeIterator operator+ (std::ptrdiff_t offset) const
DequeIterator operator- (std::ptrdiff_t offset) const
std::ptrdiff_t operator- (const DequeIterator &rhs) const
VALUE_TYPE * blockBegin () const
VALUE_TYPE * blockEnd () const
BlockPtrblockPtr () const
std::size_t offsetInBlock () const
std::size_t remainingInBlock () const
VALUE_TYPE * valuePtr () const

Friends

bool operator== (const DequeIterator &lhs, const DequeIterator &rhs)
bool operator!= (const DequeIterator &lhs, const DequeIterator &rhs)
bool operator< (const DequeIterator &lhs, const DequeIterator &rhs)

Detailed Description

template<class VALUE_TYPE>
class bslalg::DequeIterator< VALUE_TYPE, 1 >

This partial specialization of DequeIterator for the case when there is a single element per block uses simpler storage and a simpler implementation. The contract for all functions is the same, and so not repeated.

See Component bslalg_dequeiterator


Constructor & Destructor Documentation

template<class VALUE_TYPE >
bslalg::DequeIterator< VALUE_TYPE, 1 >::DequeIterator (  ) 
template<class VALUE_TYPE >
bslalg::DequeIterator< VALUE_TYPE, 1 >::DequeIterator ( BlockPtr blockPtrPtr  ) 
template<class VALUE_TYPE >
bslalg::DequeIterator< VALUE_TYPE, 1 >::DequeIterator ( BlockPtr blockPtrPtr,
VALUE_TYPE *  valuePtr 
)

Member Function Documentation

template<class VALUE_TYPE >
void bslalg::DequeIterator< VALUE_TYPE, 1 >::operator++ (  ) 
template<class VALUE_TYPE >
void bslalg::DequeIterator< VALUE_TYPE, 1 >::operator-- (  ) 
template<class VALUE_TYPE >
void bslalg::DequeIterator< VALUE_TYPE, 1 >::operator+= ( std::ptrdiff_t  offset  ) 
template<class VALUE_TYPE >
void bslalg::DequeIterator< VALUE_TYPE, 1 >::operator-= ( std::ptrdiff_t  offset  ) 
template<class VALUE_TYPE >
void bslalg::DequeIterator< VALUE_TYPE, 1 >::nextBlock (  ) 
template<class VALUE_TYPE >
void bslalg::DequeIterator< VALUE_TYPE, 1 >::previousBlock (  ) 
template<class VALUE_TYPE >
void bslalg::DequeIterator< VALUE_TYPE, 1 >::setBlock ( BlockPtr blockPtrPtr  ) 
template<class VALUE_TYPE >
void bslalg::DequeIterator< VALUE_TYPE, 1 >::valuePtrDecrement (  ) 
template<class VALUE_TYPE >
void bslalg::DequeIterator< VALUE_TYPE, 1 >::valuePtrIncrement (  ) 
template<class VALUE_TYPE >
VALUE_TYPE& bslalg::DequeIterator< VALUE_TYPE, 1 >::operator* (  )  const
template<class VALUE_TYPE >
DequeIterator bslalg::DequeIterator< VALUE_TYPE, 1 >::operator+ ( std::ptrdiff_t  offset  )  const
template<class VALUE_TYPE >
DequeIterator bslalg::DequeIterator< VALUE_TYPE, 1 >::operator- ( std::ptrdiff_t  offset  )  const
template<class VALUE_TYPE >
std::ptrdiff_t bslalg::DequeIterator< VALUE_TYPE, 1 >::operator- ( const DequeIterator< VALUE_TYPE, 1 > &  rhs  )  const
template<class VALUE_TYPE >
VALUE_TYPE* bslalg::DequeIterator< VALUE_TYPE, 1 >::blockBegin (  )  const
template<class VALUE_TYPE >
VALUE_TYPE* bslalg::DequeIterator< VALUE_TYPE, 1 >::blockEnd (  )  const
template<class VALUE_TYPE >
BlockPtr* bslalg::DequeIterator< VALUE_TYPE, 1 >::blockPtr (  )  const
template<class VALUE_TYPE >
std::size_t bslalg::DequeIterator< VALUE_TYPE, 1 >::offsetInBlock (  )  const
template<class VALUE_TYPE >
std::size_t bslalg::DequeIterator< VALUE_TYPE, 1 >::remainingInBlock (  )  const
template<class VALUE_TYPE >
VALUE_TYPE* bslalg::DequeIterator< VALUE_TYPE, 1 >::valuePtr (  )  const

Friends And Related Function Documentation

template<class VALUE_TYPE >
bool operator== ( const DequeIterator< VALUE_TYPE, 1 > &  lhs,
const DequeIterator< VALUE_TYPE, 1 > &  rhs 
) [friend]
template<class VALUE_TYPE >
bool operator!= ( const DequeIterator< VALUE_TYPE, 1 > &  lhs,
const DequeIterator< VALUE_TYPE, 1 > &  rhs 
) [friend]
template<class VALUE_TYPE >
bool operator< ( const DequeIterator< VALUE_TYPE, 1 > &  lhs,
const DequeIterator< VALUE_TYPE, 1 > &  rhs 
) [friend]

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