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

#include <bslalg_dequeprimitives.h>

Public Types

typedef DequeIterator< VALUE_TYPE, BLOCK_LENGTH > Iterator
 

Public Member Functions

 DequePrimitives_DequeEndpointProctor (Iterator *endpoint, Iterator position)
 
 ~DequePrimitives_DequeEndpointProctor ()
 
void release ()
 

Detailed Description

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

This class implements a proctor that, upon destruction and unless its release method has previously been invoked, sets a deque endpoint (i.e., "start" or "finish" iterator) to a position within the deque. Both the endpoint and position are supplied at construction. See emplaceAndMoveToBack and emplaceAndMoveToFront for use cases.

See bslalg_dequeprimitives

Member Typedef Documentation

◆ Iterator

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

Constructor & Destructor Documentation

◆ DequePrimitives_DequeEndpointProctor()

template<class VALUE_TYPE , int BLOCK_LENGTH>
bslalg::DequePrimitives_DequeEndpointProctor< VALUE_TYPE, BLOCK_LENGTH >::DequePrimitives_DequeEndpointProctor ( Iterator endpoint,
Iterator  position 
)
inline

Create a deque endpoint proctor that conditionally manages the specified endpoint (if non-zero) by setting *endpoint to the specified position (if not released – see release) upon destruction.

◆ ~DequePrimitives_DequeEndpointProctor()

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

Destroy this endpoint proctor, and set the deque endpoint it manages (if any) to the position supplied at construction. If no endpoint is currently being managed, this method has no effect.

Member Function Documentation

◆ release()

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

Release from management the deque endpoint currently managed by this proctor. If no endpoint is currently being managed, this method has no effect.


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