Quick Links:

bal | bbl | bdl | bsl

Public Types | Public Member Functions

bslalg::DequePrimitives_DequeMoveGuard< VALUE_TYPE, BLOCK_LENGTH > Class Template Reference

#include <bslalg_dequeprimitives.h>

List of all members.

Public Types

typedef DequeIterator
< VALUE_TYPE, BLOCK_LENGTH > 
Iterator
typedef
bslalg::DequePrimitives
< VALUE_TYPE, BLOCK_LENGTH > 
DequePrimitives

Public Member Functions

 DequePrimitives_DequeMoveGuard (Iterator dest, Iterator src, std::size_t size, bool isFront)
 ~DequePrimitives_DequeMoveGuard ()
void release ()

Detailed Description

template<class VALUE_TYPE, int BLOCK_LENGTH>
class bslalg::DequePrimitives_DequeMoveGuard< VALUE_TYPE, BLOCK_LENGTH >

This class provides a guard object that, upon destruction and unless the release method has been called, uses moveBack or moveFront to move the "guarded" range [d_source_p .. d_source_p + d_size - 1] back to [d_destination_p .. d_destination_p + d_size -1].

See Component bslalg_dequeprimitives


Member Typedef Documentation

template<class VALUE_TYPE , int BLOCK_LENGTH>
typedef DequeIterator<VALUE_TYPE, BLOCK_LENGTH> bslalg::DequePrimitives_DequeMoveGuard< VALUE_TYPE, BLOCK_LENGTH >::Iterator
template<class VALUE_TYPE , int BLOCK_LENGTH>
typedef bslalg::DequePrimitives<VALUE_TYPE, BLOCK_LENGTH> bslalg::DequePrimitives_DequeMoveGuard< VALUE_TYPE, BLOCK_LENGTH >::DequePrimitives

Constructor & Destructor Documentation

template<class VALUE_TYPE , int BLOCK_LENGTH>
bslalg::DequePrimitives_DequeMoveGuard< VALUE_TYPE, BLOCK_LENGTH >::DequePrimitives_DequeMoveGuard ( Iterator  dest,
Iterator  src,
std::size_t  size,
bool  isFront 
)

Create a guard object that will call moveBack or moveFront, depending on the specified isFront, on the specified size elements from src to dest upon destruction unless release has been called.

template<class VALUE_TYPE , int BLOCK_LENGTH>
bslalg::DequePrimitives_DequeMoveGuard< VALUE_TYPE, BLOCK_LENGTH >::~DequePrimitives_DequeMoveGuard (  ) 

Call either moveBack or moveFront depending on d_front upon destruction unless release has been called before this.


Member Function Documentation

template<class VALUE_TYPE , int BLOCK_LENGTH>
void bslalg::DequePrimitives_DequeMoveGuard< VALUE_TYPE, BLOCK_LENGTH >::release (  ) 

Set the size of the range guarded by this object to be zero.


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