BloombergLP::bslalg::DequePrimitives::insertAndMoveToFront

Insert copies of a value toward the front (bitwise-copyable).

Synopsis

Declared in <bslalg_dequeprimitives.h>

template<class ALLOCATOR>
static
void
insertAndMoveToFront(
    Iterator* toBegin,
    Iterator fromBegin,
    Iterator position,
    size_type numElements,
    VALUE_TYPE const& value,
    ALLOCATOR allocator,
    bsl::integral_constant<int, BSLALG_DEQUEPRIMITIVES_BITWISE_COPYABLE_TRAITS> traits);

Description

Insert the specified numElements copies of the specified value at the specified position, by moving the elements in the range [fromBegin .. position)] backward by numElements position. Pass the specified allocator to the copy constructor if appropriate. Load into the specified toBegin an iterator to the beginning of the data after insertion (i.e., fromBegin - numElements. The behavior is undefined unless fromBegin - numElements is a valid iterator (i.e., the block pointer array holds enough room before the fromBegin position to insert numElements). Note that the last argument is for removing overload ambiguities and is not used.

Parameters

NameDescription
toBeginloads the beginning iterator after insertion
fromBegincurrent beginning of the deque
positioninsertion position within the deque
numElementsnumber of copies of value to insert
valuevalue copied into each inserted element
allocatorallocator passed to element constructors
traitsunused trait tag for overload resolution