BloombergLP::bslalg::ScalarPrimitives::moveConstruct

Build an object of the parameterized TARGET_TYPE from the specified original object of the same TARGET_TYPE in the uninitialized memory at the specified address, as if by using the move constructor of TARGET_TYPE. If the specified allocator is based on bslma::Allocator and TARGET_TYPE takes an allocator constructor argument, then allocator is passed to the move constructor. If the constructor throws, the address is left in an uninitialized state. Note that bit-wise copy will be used if TARGET_TYPE has the bit-wise copyable trait (not the bit-wise moveable trait, which indicates a destructive bit-wise move). In C++03 mode, moveConstruct has the same effect as copyConstruct.

Synopsis

Declared in <bslalg_scalarprimitives.h>

template<class TARGET_TYPE>
static
void
moveConstruct(
    TARGET_TYPE* address,
    TARGET_TYPE& original,
    bslma::Allocator* allocator);