Move‐insert a value, shifting existing elements toward the back.

Synopsis

Declared in <bslalg_dequeprimitives.h>

template<class ALLOCATOR>
static
void
moveInsertAndMoveToBack(
    Iterator* toEnd,
    Iterator fromEnd,
    Iterator position,
    bslmf::MovableRef<VALUE_TYPE> value,
    ALLOCATOR allocator);

Description

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).

Parameters

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

Created with MrDocs