BDE 4.14.0 Production release
Loading...
Searching...
No Matches
bslalg::DequePrimitives_DequeMoveGuard< VALUE_TYPE, BLOCK_LENGTH > Class Template Reference

#include <bslalg_dequeprimitives.h>

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 ()
 Set the size of the range guarded by this object to be zero.
 

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 bslalg_dequeprimitives

Member Typedef Documentation

◆ DequePrimitives

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

◆ Iterator

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

Constructor & Destructor Documentation

◆ DequePrimitives_DequeMoveGuard()

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 
)
inline

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.

◆ ~DequePrimitives_DequeMoveGuard()

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

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

Member Function Documentation

◆ release()

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

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