[#BloombergLP-bslalg-DequePrimitives_DequeEndpointProctor-2constructor]
= xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bslalg.adoc[bslalg]::xref:BloombergLP/bslalg/DequePrimitives_DequeEndpointProctor.adoc[DequePrimitives&lowbar;DequeEndpointProctor]::DequePrimitives&lowbar;DequeEndpointProctor
:relfileprefix: ../../../
:mrdocs:

Create a proctor that restores `endpoint` to `position` on destruction&period;

== Synopsis

Declared in `&lt;bslalg&lowbar;dequeprimitives&period;h&gt;`

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
DequePrimitives&lowbar;DequeEndpointProctor(
    xref:BloombergLP/bslalg/DequePrimitives_DequeEndpointProctor/Iterator.adoc[Iterator]* endpoint,
    xref:BloombergLP/bslalg/DequePrimitives_DequeEndpointProctor/Iterator.adoc[Iterator] position);
----

== Description

Create a deque endpoint proctor that conditionally manages the specified `endpoint` (if non&hyphen;zero) by setting `&ast;endpoint` to the specified `position` (if not released &hyphen;&hyphen; see `release`) upon destruction&period;

== Parameters

[cols="1,4"]
|===
| Name| Description
| *endpoint*
| deque endpoint iterator to restore, or null
| *position*
| value written to `&ast;endpoint` unless released
|===


[.small]#Created with https://www.mrdocs.com[MrDocs]#
