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

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

Parameters

Name

Description

toBegin

beginning of the uninitialized destination range

fromEndPtr

loads the end of the remaining valid source range

lastPtr

loads the end of the remaining valid insert range

fromBegin

beginning of the source range

position

insertion position within the source range

fromEnd

end of the source range (one past the last element)

first

beginning of the range of elements to move‐insert

last

end of the range of elements to move‐insert

numElements

number of elements to move‐insert from [first .. last)]

allocator

allocator used to supply memory if required

Created with MrDocs