[#BloombergLP-bslalg-DequePrimitives-01-emplaceAndMoveToFront] = xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bslalg.adoc[bslalg]::xref:BloombergLP/bslalg/DequePrimitives-01.adoc[DequePrimitives]::emplaceAndMoveToFront :relfileprefix: ../../../ :mrdocs: Insert at the specified `position` a newly created `VALUE_TYPE` object, constructed by forwarding the specified `allocator` (if required) and the specified (variable number of) `arguments` to the corresponding constructor of `VALUE_TYPE`, and move the elements in the range `[fromBegin .. position)]` backward by 1 position. Load into the specified `toBegin` an iterator to the inserted element (i.e., `fromBegin ‐ 1`). The behavior is undefined unless `fromBegin ‐ 1` is a valid iterator (i.e., the block pointer array holds enough room before the `fromBegin` position to insert 1 element). == Synopsis Declared in `<bslalg_dequeprimitives.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template< class ALLOCATOR, class... Args> static void emplaceAndMoveToFront( xref:BloombergLP/bslalg/DequePrimitives-01/Iterator.adoc[Iterator]* toBegin, xref:BloombergLP/bslalg/DequePrimitives-01/Iterator.adoc[Iterator] fromBegin, xref:BloombergLP/bslalg/DequePrimitives-01/Iterator.adoc[Iterator] position, ALLOCATOR allocator, Args&&... arguments); ---- [.small]#Created with https://www.mrdocs.com[MrDocs]#