BloombergLP::bslalg::ArrayPrimitives::destructiveMoveAndMoveInsert

Destructively move elements while move-inserting a source range.

Synopses

Declared in <bslalg_arrayprimitives.h>

Destructively move elements while move-inserting a source range.

template<class ALLOCATOR>
static
void
destructiveMoveAndMoveInsert(
    bsl::allocator_traits<ALLOCATOR>::pointer toBegin,
    bsl::allocator_traits<ALLOCATOR>::pointer* fromEndPtr,
    bsl::allocator_traits<ALLOCATOR>::pointer* lastPtr,
    bsl::allocator_traits<ALLOCATOR>::pointer fromBegin,
    bsl::allocator_traits<ALLOCATOR>::pointer position,
    bsl::allocator_traits<ALLOCATOR>::pointer fromEnd,
    bsl::allocator_traits<ALLOCATOR>::pointer first,
    bsl::allocator_traits<ALLOCATOR>::pointer last,
    size_type numElements,
    ALLOCATOR allocator);
» more...

Destructively move elements while move-inserting a source range.

template<class TARGET_TYPE>
static
void
destructiveMoveAndMoveInsert(
    TARGET_TYPE* toBegin,
    TARGET_TYPE** fromEndPtr,
    TARGET_TYPE** lastPtr,
    TARGET_TYPE* fromBegin,
    TARGET_TYPE* position,
    TARGET_TYPE* fromEnd,
    TARGET_TYPE* first,
    TARGET_TYPE* last,
    size_type numElements,
    bslma::Allocator* allocator);
» more...

Parameters

NameDescription
toBeginbeginning of the uninitialized destination range
fromEndPtrloads the end of the remaining valid source range
lastPtrloads the end of the remaining valid insert range
fromBeginbeginning of the source range
positioninsertion position within the source range
fromEndend of the source range (one past the last element)
firstbeginning of the range of elements to move-insert
lastend of the range of elements to move-insert
numElementsnumber of elements to move-insert from [first .. last)]
allocatorallocator used to supply memory if required