Move-insert a value, shifting existing elements toward the back.
Declared in <bslalg_dequeprimitives.h>
template<class ALLOCATOR>
static
void
moveInsertAndMoveToBack(
Iterator* toEnd,
Iterator fromEnd,
Iterator position,
bslmf::MovableRef<VALUE_TYPE> value,
ALLOCATOR allocator);
Insert the specified move-insertable value at the specified position by moving the elements in the range [position .. fromEnd)] forward by 1 position; pass the specified allocator to the move constructor if appropriate. Load into the specified toEnd an iterator one past the inserted element (i.e., fromEnd + 1). The behavior is undefined unless fromEnd + 1 is a valid iterator (i.e., the block pointer array holds enough room after the fromEnd position to insert 1 element).
| Name | Description |
|---|---|
| toEnd | loads the end iterator after insertion |
| fromEnd | current end of the deque |
| position | insertion position within the deque |
| value | move-insertable value to place at position |
| allocator | allocator passed to the move constructor |