BloombergLP::bslalg::ArrayPrimitives::moveInsert

Move-insert a source range, shifting subsequent elements.

Synopses

Declared in <bslalg_arrayprimitives.h>

Move-insert a source range, shifting subsequent elements.

template<class ALLOCATOR>
static
void
moveInsert(
    bsl::allocator_traits<ALLOCATOR>::pointer toBegin,
    bsl::allocator_traits<ALLOCATOR>::pointer toEnd,
    bsl::allocator_traits<ALLOCATOR>::pointer* fromEndPtr,
    bsl::allocator_traits<ALLOCATOR>::pointer fromBegin,
    bsl::allocator_traits<ALLOCATOR>::pointer fromEnd,
    size_type numElements,
    ALLOCATOR allocator);
» more...

Move-insert a source range, shifting subsequent elements.

template<class TARGET_TYPE>
static
void
moveInsert(
    TARGET_TYPE* toBegin,
    TARGET_TYPE* toEnd,
    TARGET_TYPE** fromEndPtr,
    TARGET_TYPE* fromBegin,
    TARGET_TYPE* fromEnd,
    size_type numElements,
    bslma::Allocator* allocator);
» more...

Parameters

NameDescription
toBegininsertion position within the destination array
toEndend of the populated destination range
fromEndPtrloads the end of the remaining valid source range
fromBeginbeginning of the source range to move-insert
fromEndend of the source range to move-insert
numElementsnumber of elements to move-insert
allocatorallocator used to supply memory if required