BloombergLP::bslalg::ArrayPrimitives

Namespace for utility functions that operate on arrays of elements.

Synopsis

Declared in <bslalg_arrayprimitives.h>

struct ArrayPrimitives;

Description

This struct provides a namespace for a suite of independent utility functions that operate on arrays of elements of parameterized type TARGET_TYPE. Depending on the traits of TARGET_TYPE, the default and copy constructors, destructor, assignment operators, etcetera may not be invoked, optimized away by no-op or bit-wise move or copy.

Type Aliases

NameDescription
Imp Implementation detail for ArrayPrimitives utility functions.
difference_type Standard signed difference type used by array primitive operations.
size_type Standard unsigned size type used by array primitive operations.

Static Member Functions

NameDescription
copyConstruct copyConstruct overloads
defaultConstruct Value-initialize elements into an uninitialized array.
destructiveMove Destructively move elements into an uninitialized array.
destructiveMoveAndEmplace Destructively move elements while emplacing one new element.
destructiveMoveAndInsert destructiveMoveAndInsert overloads
destructiveMoveAndMoveInsert Destructively move elements while move-inserting a source range.
emplace Emplace a newly constructed element, shifting subsequent elements.
erase Erase a range of elements and close the gap by moving.
insert insert overloads
moveConstruct Move-construct elements from a range into an uninitialized array.
moveInsert Move-insert a source range, shifting subsequent elements.
rotate Rotate elements so the middle becomes the new first element.
uninitializedFillN Fill an uninitialized array with copies of a value.