Type that tracks whether it has been copied into, moved into, or moved from.

Synopsis

Declared in <bsltf_copymovetracker.h>

class CopyMoveTracker;

Member Functions

Name

Description

CopyMoveTracker [constructor]

Constructors

operator=

Assignment operators

copyMoveState

Return this object's state.

hasUnknownCopyMoveState

Return whether this object's copy/move state includes e_UNKNOWN.

isCopiedConstInto

Return whether this object was copied from a const lvalue.

isCopiedInto

Return whether this object was copied into.

isCopiedNonconstInto

Return whether this object was copied from a non‐`const` lvalue.

isMovedFrom

Return whether this object was moved from.

isMovedInto

Return whether this object was moved into.

isOriginal

Return whether this object is in an original copy/move state.

resetCopyMoveState

Set this object to the e_NOT_COPIED_OR_MOVE state.

setCopyMoveState

Set this object's copy/move state to the specified state.

swapCopyMoveStates

Set the state of both the specified this and b objects to the bitwise OR of e_MOVED_INTO and e_MOVED_FROM.

Friends

Name

Description

BloombergLP::bsltf::setCopyMoveState

Set the object at the specified tracker address to state.

BloombergLP::bsltf::copyMoveState

Return the state of the specified tracker. This function is an ADL customization point used by CopyMoveState::get(obj).

BloombergLP::bsltf::operator!=

Return whether two CopyMoveTracker objects have different values.

BloombergLP::bsltf::operator==

Return whether two CopyMoveTracker objects have the same value.

Created with MrDocs