Quick Links:

bal | bbl | bdl | bsl

Public Types | Public Member Functions

bslalg::DequePrimitives_DequeElementGuard< VALUE_TYPE, BLOCK_LENGTH, ALLOCATOR > Class Template Reference

#include <bslalg_dequeprimitives.h>

List of all members.

Public Types

typedef DequeIterator
< VALUE_TYPE, BLOCK_LENGTH > 
Iterator

Public Member Functions

 DequePrimitives_DequeElementGuard (const Iterator &begin, const Iterator &end, ALLOCATOR allocator)
 ~DequePrimitives_DequeElementGuard ()
IteratormoveBegin (std::ptrdiff_t offset=-1)
IteratormoveEnd (std::ptrdiff_t offset=1)
void release ()

Detailed Description

template<class VALUE_TYPE, int BLOCK_LENGTH, class ALLOCATOR>
class bslalg::DequePrimitives_DequeElementGuard< VALUE_TYPE, BLOCK_LENGTH, ALLOCATOR >

This class provides a specialized proctor object that, upon destruction and unless the release method has been called, destroys the elements in a segment of a deque of parameterized VALUE_TYPE. The elements destroyed are delimited by the "guarded" range [d_begin .. d_end).

See Component bslalg_dequeprimitives


Member Typedef Documentation

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

Constructor & Destructor Documentation

template<class VALUE_TYPE , int BLOCK_LENGTH, class ALLOCATOR >
bslalg::DequePrimitives_DequeElementGuard< VALUE_TYPE, BLOCK_LENGTH, ALLOCATOR >::DequePrimitives_DequeElementGuard ( const Iterator begin,
const Iterator end,
ALLOCATOR  allocator 
)

Create a deque exception guard object for the sequence of elements of the parameterized VALUE_TYPE delimited by the specified range [begin .. end). The behavior is undefined unless begin <= end and unless each element in the range [begin .. end) has been initialized.

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

Call the destructor on each of the elements of the parameterized VALUE_TYPE delimited by the range [begin .. end) and destroy this array exception guard.


Member Function Documentation

template<class VALUE_TYPE , int BLOCK_LENGTH, class ALLOCATOR >
Iterator& bslalg::DequePrimitives_DequeElementGuard< VALUE_TYPE, BLOCK_LENGTH, ALLOCATOR >::moveBegin ( std::ptrdiff_t  offset = -1  ) 

Move the begin iterator by the specified offset, and return the new begin iterator.

template<class VALUE_TYPE , int BLOCK_LENGTH, class ALLOCATOR >
Iterator& bslalg::DequePrimitives_DequeElementGuard< VALUE_TYPE, BLOCK_LENGTH, ALLOCATOR >::moveEnd ( std::ptrdiff_t  offset = 1  ) 

Move the end pointer by the specified offset, and return the new end pointer.

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

Set the range of elements guarded by this object to be empty. Note that d_begin == d_end following this operation, but the specific value is unspecified.


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