[#BloombergLP-bsltf-CopyMoveState-0e]
= xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bsltf.adoc[bsltf]::CopyMoveState
:relfileprefix: ../../
:mrdocs:

Namespace for enumerators and helpers describing copy&sol;move history of test objects&period;

== Synopsis

Declared in `&lt;bsltf&lowbar;copymovestate&period;h&gt;`

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
struct CopyMoveState;
----

== Enums

[cols="1,4"]
|===
| Name| Description
| xref:BloombergLP/bsltf/CopyMoveState-0e/Enum.adoc[`Enum`] 
| Enumeration of copy&sol;move state bit flags for test types&period;
|===


== Static Member Functions

[cols="1,4"]
|===
| Name| Description
| xref:BloombergLP/bsltf/CopyMoveState-0e/get.adoc[`get`] 
| For the specified `obj` return `copyMoveState(obj)`&period; Note that `getCopyMoveState` is an ADL customization point&semi; if not customized for a specific `TYPE`, a default implementation returning `e&lowbar;UNKNOWN` is invoked&period;
| xref:BloombergLP/bsltf/CopyMoveState-0e/isCopiedConstInto.adoc[`isCopiedConstInto`] 
| Return `true` if, for the specified `v`, `CopyMoveState&colon;&colon;get(v)` includes the `e&lowbar;COPIED&lowbar;CONST&lowbar;INTO` bits but not `e&lowbar;UNKNOWN`&period;
| xref:BloombergLP/bsltf/CopyMoveState-0e/isCopiedInto.adoc[`isCopiedInto`] 
| Return `true` if, for the specified `v`, `CopyMoveState&colon;&colon;get(v)` includes the `e&lowbar;COPIED&lowbar;INTO` bit but not `e&lowbar;UNKNOWN`&semi; otherwise return `false`&period;
| xref:BloombergLP/bsltf/CopyMoveState-0e/isCopiedNonconstInto.adoc[`isCopiedNonconstInto`] 
| Return `true` if, for the specified `v`, `CopyMoveState&colon;&colon;get(v)` includes the `e&lowbar;COPIED&lowbar;NONCONST&lowbar;INTO` bits but not `e&lowbar;UNKNOWN`&period;
| xref:BloombergLP/bsltf/CopyMoveState-0e/isMovedFrom.adoc[`isMovedFrom`] 
| Return `true` if, for the specified `v`, `CopyMoveState&colon;&colon;get(v)` includes the `e&lowbar;MOVED&lowbar;FROM` bit but not `e&lowbar;UNKNOWN`&semi; otherwise return `false`&period;
| xref:BloombergLP/bsltf/CopyMoveState-0e/isMovedInto.adoc[`isMovedInto`] 
| Return `true` if, for the specified `v`, `CopyMoveState&colon;&colon;get(v)` includes the `e&lowbar;MOVED&lowbar;INTO` bit but not `e&lowbar;UNKNOWN`&semi; otherwise return `false`&period;
| xref:BloombergLP/bsltf/CopyMoveState-0e/isOriginal.adoc[`isOriginal`] 
| Return `true` if, for the specified `v`, `CopyMoveState&colon;&colon;get(v)` does not include any of the `e&lowbar;COPIED&lowbar;INTO`, `e&lowbar;MOVED&lowbar;INTO`, or `e&lowbar;UNKNOWN` bits&semi; otherwise return &apos;false&period; Note that this function&apos;s return value is unaffected by the `e&lowbar;MOVED&lowbar;FROM` bit&period;
| xref:BloombergLP/bsltf/CopyMoveState-0e/isUnknown.adoc[`isUnknown`] 
| Return `true` if, for the specified `v`, `CopyMoveState&colon;&colon;get(v)` includes the `e&lowbar;UNKNOWN` bit&semi; otherwise return &apos;false&period;
| xref:BloombergLP/bsltf/CopyMoveState-0e/isValid.adoc[`isValid`] 
| Return `true` if the specified `val` is a valid value of `Enum`&semi; otherwise `false`&period; A valid value is any of the enumerators or the bitwise OR of any of the enumerators except `e&lowbar;UNKNOWN` with `e&lowbar;MOVED&lowbar;FROM`&period;
| xref:BloombergLP/bsltf/CopyMoveState-0e/set.adoc[`set`] 
| For the specified `obj&lowbar;p` address and specified `state`, invoke `setCopyMoveState(obj&lowbar;p, state)`&period; Note that `setCopyMoveState` is an ADL customization point&semi; if not customized for a specific `TYPE`, a no&hyphen;op default implementation is invoked&period;
| xref:BloombergLP/bsltf/CopyMoveState-0e/toAscii.adoc[`toAscii`] 
| Return the non&hyphen;modifiable string representation corresponding to the specified enumeration `value`, if it exists, and a unique (error) string otherwise&period; The string representation of `value` matches its corresponding enumerator name with the &quot;e&lowbar;&quot; prefix elided&period; For example&colon; &grave; bsl&colon;&colon;cout &lt;&lt; CopyMoveState&colon;&colon;toAscii(CopyMoveState&colon;&colon;e&lowbar;COPIED&lowbar;INTO)&semi; &grave; will print the following on standard output&colon; &grave; COPIED&lowbar;INTO &grave; Any of the &ast;&lowbar;INTO enums can be bitwise ORed with e&lowbar;MOVED&lowbar;FROM, in which case the resulting string will be a comma&hyphen;separated list of two names, e&period;g&period;, &quot;COPIED&lowbar;CONST&lowbar;INTO, MOVED&lowbar;FROM&quot;&period; Note that specifying a `value` that does not match any valid combination of enumerators will result in a string representation that is distinct from any of those corresponding to the enumerators, but is otherwise unspecified&period;
|===



[.small]#Created with https://www.mrdocs.com[MrDocs]#
