[#BloombergLP-bslalg-DequePrimitives_DequeEndpointProctor] = xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bslalg.adoc[bslalg]::DequePrimitives_DequeEndpointProctor :relfileprefix: ../../ :mrdocs: 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. == Synopsis Declared in `<bslalg_dequeprimitives.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template< class VALUE_TYPE, int BLOCK_LENGTH> class DequePrimitives_DequeEndpointProctor; ---- == Type Aliases [cols="1,4"] |=== | Name| Description | xref:BloombergLP/bslalg/DequePrimitives_DequeEndpointProctor/Iterator.adoc[`Iterator`] | This `typedef` is an alias for a deque iterator. |=== == Member Functions [cols="1,4"] |=== | Name| Description | xref:BloombergLP/bslalg/DequePrimitives_DequeEndpointProctor/2constructor.adoc[`DequePrimitives_DequeEndpointProctor`] [.small]#[constructor]# | 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. | xref:BloombergLP/bslalg/DequePrimitives_DequeEndpointProctor/2destructor.adoc[`~DequePrimitives_DequeEndpointProctor`] [.small]#[destructor]# | 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. | xref:BloombergLP/bslalg/DequePrimitives_DequeEndpointProctor/release.adoc[`release`] | Release from management the deque endpoint currently managed by this proctor. If no endpoint is currently being managed, this method has no effect. |=== [.small]#Created with https://www.mrdocs.com[MrDocs]#