Core implementation of the IsBitwiseMoveable trait. A class is detected as being bitwise moveable iff it is trivially copyable or it has a nested trait declaration for the IsBitwiseMoveable trait. In C++03 however, detection of trivially copyable classes is imperfect and depends on programmer intervention. As many empty classes (including standard classes like std::less<T> would not be detected as being trivially copyable and, therefore, bitwise moveable, a heuristic is put in place whereby any type of one byte size is assumed to be bitwise moveable. See component-level documentation for this component for more details on this heuristic and how to avoid false positives.
Declared in <bslmf_isbitwisemoveable.h>
template<>
struct IsBitwiseMoveable_Imp<allocator<unsigned long>>;
| Name |
|---|
type |
| Name |
|---|
k_ValueWithoutOnebyteHeuristic |
value |