BDE 4.14.0 Production release
|
Macros | |
#define | STD_IS_NOTHROW_MOVE_CONSTRUCTIBLE_VALUE(t_TYPE) |
Provide metafunction to identify no-throw move-constructible types.
This component defines a metafunction, bsl::is_nothrow_move_constructible
, and a variable template bsl::is_nothrow_move_constructible_v
that represents the result value of the bsl::is_nothrow_move_constructible
metafunction, which may be used to query whether a type has a constructor that can be called with a single rvalue that is known to not throw exceptions. Note that a C++11 compiler will automatically infer this trait for class types with a move constructor that is marked as noexcept
.
bsl::is_nothrow_move_constructible
meets the requirements of the is_nothrow_move_constructible
template defined in the C++11 standard.
Note that the template variable is_nothrow_move_constructible_v
is defined in the C++17 standard as an inline variable. If the current compiler supports the inline variable C++17 compiler feature, bsl::is_nothrow_move_constructible_v
is defined as an 'inline constexpr bool' variable. Otherwise, if the compiler supports the variable templates C++14 compiler feature, bsl::is_nothrow_move_constructible_v
is defined as a non-inline constexpr bool
variable. See BSLS_COMPILERFEATURES_SUPPORT_INLINE_VARIABLES
and BSLS_COMPILERFEATURES_SUPPORT_VARIABLE_TEMPLATES
macros in the bsls_compilerfeatures component for details.