[#BloombergLP-bslmf] = xref:BloombergLP.adoc[BloombergLP]::bslmf :relfileprefix: ../ :mrdocs: Bloomberg meta‐function implementations used by `bsl::is_same`. == Types [cols="1,4"] |=== | Name| Description | xref:BloombergLP/bslmf/AddPointer_Compute.adoc[`AddPointer_Compute`] | Private utility that SFINAE‐tests whether a pointer to `t_TYPE` is valid. | xref:BloombergLP/bslmf/AddReference.adoc[`AddReference`] | Meta‐function for forming a reference to a type. | xref:BloombergLP/bslmf/ArrayToConstPointer-0f2.adoc[`ArrayToConstPointer`] | Meta‐function that converts an array type to a `const` pointer type. | xref:BloombergLP/bslmf/ArrayToPointer-0e.adoc[`ArrayToPointer`] | Meta‐function that converts an array type to a pointer type. | xref:BloombergLP/bslmf/ConstForwardingType.adoc[`ConstForwardingType`] | DEPRECATED: Use `ForwardingType` instead. | xref:BloombergLP/bslmf/DetectNestedTrait-00.adoc[`DetectNestedTrait`] | Meta‐function for detecting nested traits. | xref:BloombergLP/bslmf/EnableIf-0e4.adoc[`EnableIf`] | Meta‐function that conditionally provides a typedef `type`. | xref:BloombergLP/bslmf/FloatingTypeStructuralTraits-03.adoc[`FloatingTypeStructuralTraits`] | This is the primary template declaration for `bslmf::FloatingTypeStructuralTraits`, which is never defined. | xref:BloombergLP/bslmf/ForwardingRefType.adoc[`ForwardingRefType`] | Metafunction that computes an efficient forwarding parameter type for `t_TYPE`. | xref:BloombergLP/bslmf/ForwardingRefTypeUtil.adoc[`ForwardingRefTypeUtil`] | Provide a namespace for the `forwardToTarget` function. | xref:BloombergLP/bslmf/ForwardingRefType_Category.adoc[`ForwardingRefType_Category`] | This component‐private struct provides a namespace for the type dispatch category enumeration values. | xref:BloombergLP/bslmf/ForwardingRefType_Dispatch.adoc[`ForwardingRefType_Dispatch`] | This component‐private class template is a metafunction whose `value` member is the forwarding category for the specified `t_TYPE`. | xref:BloombergLP/bslmf/ForwardingType-07.adoc[`ForwardingType`] | Metafunction that computes an efficient argument type for forwarding `t_TYPE`. | xref:BloombergLP/bslmf/ForwardingTypeUtil.adoc[`ForwardingTypeUtil`] | Provide a namespace for the `forwardToTarget` function. | xref:BloombergLP/bslmf/ForwardingType_Category.adoc[`ForwardingType_Category`] | This component‐private struct provides a namespace for thpe type dispatch category enumeration values. | xref:BloombergLP/bslmf/ForwardingType_Dispatch.adoc[`ForwardingType_Dispatch`] | This component‐private class template is a metafunction whose `value` member is the forwarding category for the specified `t_TYPE`. | xref:BloombergLP/bslmf/FunctionPointerCLinkage.adoc[`FunctionPointerCLinkage`] | C function pointer linkage tag. | xref:BloombergLP/bslmf/FunctionPointerCPlusPlusLinkage.adoc[`FunctionPointerCPlusPlusLinkage`] | C++ function pointer linkage tag. | xref:BloombergLP/bslmf/FunctionPointerTraits-04.adoc[`FunctionPointerTraits`] | Meta‐function for detecting traits of free function pointer types. | xref:BloombergLP/bslmf/HasPointerSemantics-064.adoc[`HasPointerSemantics`] | Metafunction indicating whether the (template parameter) `t_TYPE` has pointer‐like semantics. | xref:BloombergLP/bslmf/If.adoc[`If`] | This meta‐function selects `t_IF_TRUE_TYPE` if `t_CONDITION` is non‐zero. and `t_IF_FALSE_TYPE` otherwise. | xref:BloombergLP/bslmf/IntegerSequence.adoc[`IntegerSequence`] | This class template represents a compile‐time sequence of integers. | xref:BloombergLP/bslmf/InvokeResultDeductionFailed.adoc[`InvokeResultDeductionFailed`] | Placeholder type used when `invoke_result` cannot deduce a return type. | xref:BloombergLP/bslmf/InvokeResult_AddCVRef.adoc[`InvokeResult_AddCVRef`] | Starting with type, `t_UNQUAL_TYPE`, generate a new type by applying the following steps in order: | xref:BloombergLP/bslmf/InvokeResult_BaseCalcUtil.adoc[`InvokeResult_BaseCalcUtil`] | Forward declaration | xref:BloombergLP/bslmf/InvokeResult_FuncPtrImp-0d.adoc[`InvokeResult_FuncPtrImp`] | Forward declaration | xref:BloombergLP/bslmf/InvokeResult_FunctorImp-0e.adoc[`InvokeResult_FunctorImp`] | Forward declaration | xref:BloombergLP/bslmf/InvokeResult_Index.adoc[`InvokeResult_Index`] | Metafunction helpers for deducing the return type of an expression. | xref:BloombergLP/bslmf/InvokeResult_MemFuncPtrImp-0cf.adoc[`InvokeResult_MemFuncPtrImp`] | Forward declaration | xref:BloombergLP/bslmf/InvokeResult_MemFuncPtrImpDispatch-076.adoc[`InvokeResult_MemFuncPtrImpDispatch`] | Forward declaration. | xref:BloombergLP/bslmf/InvokeResult_MemObjPtrImp-0d.adoc[`InvokeResult_MemObjPtrImp`] | Forward declaration | xref:BloombergLP/bslmf/InvokeResult_MemObjPtrImpDispatch-0d.adoc[`InvokeResult_MemObjPtrImpDispatch`] | Forward declaration. | xref:BloombergLP/bslmf/InvokeResult_MemPtrArgQualifiers-0c.adoc[`InvokeResult_MemPtrArgQualifiers`] | Propagate cv and reference qualifiers from an `invoke` class argument. | xref:BloombergLP/bslmf/InvokeResult_Type-04e.adoc[`InvokeResult_Type`] | Map a type‐index enumerator to its corresponding C++ type. | xref:BloombergLP/bslmf/InvokeResult_VoidChecker.adoc[`InvokeResult_VoidChecker`] | Empty type used to detect void expressions. The size of this type is the same as `bslmf::Tag<1>`. | xref:BloombergLP/bslmf/IsAccessibleBaseOf.adoc[`IsAccessibleBaseOf`] | Meta‐function for detecting if one class is an accessible base of another. | xref:BloombergLP/bslmf/IsArray.adoc[`IsArray`] | Non‐standard meta‐function for detecting array types. | xref:BloombergLP/bslmf/IsBitwiseCopyable-026.adoc[`IsBitwiseCopyable`] | This `struct` template provides a meta‐function to determine whether the (template parameter) `t_TYPE` is bitwise copyable. | xref:BloombergLP/bslmf/IsBitwiseEqualityComparable-018.adoc[`IsBitwiseEqualityComparable`] | This `struct` template implements a meta‐function to determine whether the (template parameter) `t_TYPE` is bitwise EqualityComparable. | xref:BloombergLP/bslmf/IsBitwiseMoveable-0fb.adoc[`IsBitwiseMoveable`] | This `struct` template implements a meta‐function to determine whether the (template parameter) `t_TYPE` is bitwise moveable. | xref:BloombergLP/bslmf/IsClass.adoc[`IsClass`] | Non‐standard meta‐function for detecting class types. | xref:BloombergLP/bslmf/IsConvertible.adoc[`IsConvertible`] | Non‐standard meta‐function for detecting type convertibility. | xref:BloombergLP/bslmf/IsConvertibleToAny.adoc[`IsConvertibleToAny`] | Meta‐function for detecting types convertible to any other type. | xref:BloombergLP/bslmf/IsConvertible_CheckComplete-01b.adoc[`IsConvertible_CheckComplete`] | Private helper for `IsConvertible` complete‐type checks. | xref:BloombergLP/bslmf/IsEnum.adoc[`IsEnum`] | Non‐standard meta‐function for detecting enumerated types. | xref:BloombergLP/bslmf/IsFunctionPointer.adoc[`IsFunctionPointer`] | Meta‐function to determine if a type is a free function pointer. | xref:BloombergLP/bslmf/IsFundamental-04.adoc[`IsFundamental`] | Meta‐function for detecting fundamental types. | xref:BloombergLP/bslmf/IsFundamental_Imp-0d6.adoc[`IsFundamental_Imp<bsl::nullptr_t>`] | This partial specialization of `IsFundamental_Imp` derives from `bsl::true_type` for when the (template parameter) `t_TYPE` is `void`. | xref:BloombergLP/bslmf/IsMemberFunctionPointer.adoc[`IsMemberFunctionPointer`] | Meta‐function to determine if a type is a member function pointer. | xref:BloombergLP/bslmf/IsNil-04.adoc[`IsNil`] | Metafunction that is `true` for `Nil` and `false` for all other types. | xref:BloombergLP/bslmf/IsPair-08.adoc[`IsPair`] | Metafunction that is `false` for all types except `bsl::pair` specializations. | xref:BloombergLP/bslmf/IsPointer.adoc[`IsPointer`] | Non‐standard meta‐function for detecting pointer types. | xref:BloombergLP/bslmf/IsPolymorphic.adoc[`IsPolymorphic`] | Non‐standard meta‐function for detecting polymorphic types. | xref:BloombergLP/bslmf/IsReferenceWrapper-0e.adoc[`IsReferenceWrapper`] | Metafunction for detecting reference wrappers. | xref:BloombergLP/bslmf/IsSame.adoc[`IsSame`] | Non‐standard meta‐function for detecting whether two types are the same. | xref:BloombergLP/bslmf/IsTransparentPredicate-0f.adoc[`IsTransparentPredicate`] | Meta‐function for detecting whether a comparator is transparent. | xref:BloombergLP/bslmf/IsTriviallyCopyableCheck.adoc[`IsTriviallyCopyableCheck`] | Returns the same value as `is_trivially_copyable` for checking. | xref:BloombergLP/bslmf/IsTriviallyCopyable_DetectTrait-09.adoc[`IsTriviallyCopyable_DetectTrait`] | This `struct` template detects whether `t_TYPE` is tagged as trivially copyable. | xref:BloombergLP/bslmf/IsTriviallyCopyable_Intrinsic.adoc[`IsTriviallyCopyable_Intrinsic`] | This `struct` template implements a meta‐function to determine whether the (non‐cv‐qualified) (template parameter) `t_TYPE` is trivially copyable. | xref:BloombergLP/bslmf/IsTriviallyDefaultConstructible_DetectTrait-0b.adoc[`IsTriviallyDefaultConstructible_DetectTrait`] | This `struct` template detects whether `t_TYPE` is tagged as trivially default‐constructible. | xref:BloombergLP/bslmf/IsVoid.adoc[`IsVoid`] | Non‐standard meta‐function for detecting `void` types. | xref:BloombergLP/bslmf/MakeIntegerSequence_ConcatUtil-0e.adoc[`MakeIntegerSequence_ConcatUtil`] | Component‐private metafunction that concatenates two integer sequences. | xref:BloombergLP/bslmf/MakeIntegerSequence_Impl-0ff.adoc[`MakeIntegerSequence_Impl<t_T, bsl::integral_constant<std::size_t, 0>>`] | This partial specialization of the `bslmf::MakeIntegerSequence_Impl` meta‐function is a recursion break condition for an empty integer sequence. | xref:BloombergLP/bslmf/MakeIntegerSequence_Impl-02.adoc[`MakeIntegerSequence_Impl<t_T, bsl::integral_constant<std::size_t, 1>>`] | This partial specialization of the `bslmf::MakeIntegerSequence_Impl` meta‐function is a recursion break condition for an integer sequence having the length 1. | xref:BloombergLP/bslmf/MakeIntegerSequence_Impl-03.adoc[`MakeIntegerSequence_Impl<t_T, bsl::integral_constant<std::size_t, 2>>`] | This partial specialization of the `bslmf::MakeIntegerSequence_Impl` meta‐function is a recursion break condition for an integer sequence having the length 2. | xref:BloombergLP/bslmf/MakeIntegerSequence_Impl-04.adoc[`MakeIntegerSequence_Impl<t_T, bsl::integral_constant<std::size_t, 3>>`] | This partial specialization of the `bslmf::MakeIntegerSequence_Impl` meta‐function is a recursion break condition for an integer sequence having the length 3. | xref:BloombergLP/bslmf/MakeIntegerSequence_Impl-07.adoc[`MakeIntegerSequence_Impl<t_T, bsl::integral_constant<std::size_t, 4>>`] | This partial specialization of the `bslmf::MakeIntegerSequence_Impl` meta‐function is a recursion break condition for an integer sequence having the length 4. | xref:BloombergLP/bslmf/MakeIntegerSequence_Impl-09.adoc[`MakeIntegerSequence_Impl<t_T, bsl::integral_constant<std::size_t, 5>>`] | This partial specialization of the `bslmf::MakeIntegerSequence_Impl` meta‐function is a recursion break condition for an integer sequence having the length 5. | xref:BloombergLP/bslmf/MakeIntegerSequence_Impl-06.adoc[`MakeIntegerSequence_Impl<t_T, bsl::integral_constant<std::size_t, 6>>`] | This partial specialization of the `bslmf::MakeIntegerSequence_Impl` meta‐function is a recursion break condition for an integer sequence having the length 6. | xref:BloombergLP/bslmf/MakeIntegerSequence_Impl-0b.adoc[`MakeIntegerSequence_Impl<t_T, bsl::integral_constant<std::size_t, 7>>`] | This partial specialization of the `bslmf::MakeIntegerSequence_Impl` meta‐function is a recursion break condition for an integer sequence having the length 7. | xref:BloombergLP/bslmf/MakeIntegerSequence_Impl-00.adoc[`MakeIntegerSequence_Impl<t_T, bsl::integral_constant<std::size_t, 8>>`] | This partial specialization of the `bslmf::MakeIntegerSequence_Impl` meta‐function is a recursion break condition for an integer sequence having the length 8. | xref:BloombergLP/bslmf/MatchAnyType.adoc[`MatchAnyType`] | Any type can be converted into this type. | xref:BloombergLP/bslmf/MatchArithmeticType.adoc[`MatchArithmeticType`] | Type to which any arithmetic or enumeration type can be converted. | xref:BloombergLP/bslmf/MemberFunctionPointerTraits.adoc[`MemberFunctionPointerTraits`] | Meta‐function for detecting traits of member function pointer types. | xref:BloombergLP/bslmf/MemberFunctionPointerTraits_ClassType.adoc[`MemberFunctionPointerTraits_ClassType`] | Metafunction to deduce the cv‐qualified class type of a member function. | xref:BloombergLP/bslmf/MemberFunctionPointerTraits_Imp-09.adoc[`MemberFunctionPointerTraits_Imp<t_PROTOTYPE, t_BSLMF_RETURN const volatile(t_TYPE::*)(t_ARGS...) noexcept>`] | Partial specialization for non‐cv‐qualified member function pointers. | xref:BloombergLP/bslmf/MemberPointerTraits.adoc[`MemberPointerTraits`] | Meta‐function for detecting traits of pointer‐to‐member types. | xref:BloombergLP/bslmf/MemberPointerTraits_Imp-0d.adoc[`MemberPointerTraits_Imp<t_MEMBER_TYPEt_CLASS_TYPE::*>`] | Specialization providing traits for pointer‐to‐member‐object types. | xref:BloombergLP/bslmf/MetaInt-07.adoc[`MetaInt`] | Distinct type representing a non‐negative compile‐time integer value. | xref:BloombergLP/bslmf/MovableRefUtil.adoc[`MovableRefUtil`] | Utility functions for operating on `MovableRef` objects. | xref:BloombergLP/bslmf/MovableRefUtil_AddLvalueReference.adoc[`MovableRefUtil_AddLvalueReference`] | forward declaration | xref:BloombergLP/bslmf/MovableRefUtil_AddMovableReference.adoc[`MovableRefUtil_AddMovableReference`] | forward declaration | xref:BloombergLP/bslmf/MovableRefUtil_Decay.adoc[`MovableRefUtil_Decay`] | forward declaration | xref:BloombergLP/bslmf/MovableRefUtil_PropertyTraits.adoc[`MovableRefUtil_PropertyTraits`] | forward declaration | xref:BloombergLP/bslmf/MovableRefUtil_RemoveReference.adoc[`MovableRefUtil_RemoveReference`] | forward declaration | xref:BloombergLP/bslmf/MovableRef_Helper.adoc[`MovableRef_Helper`] | forward declaration | xref:BloombergLP/bslmf/NestedTraitDeclaration.adoc[`NestedTraitDeclaration`] | Empty type used as the conversion target for nested trait declarations. | xref:BloombergLP/bslmf/Nil.adoc[`Nil`] | This struct is empty and represents a nil type. | xref:BloombergLP/bslmf/NthParameter-06.adoc[`NthParameter`] | Metafunction to return the Nth type from a parameter pack. | xref:BloombergLP/bslmf/NthParameter_Sentinel.adoc[`NthParameter_Sentinel`] | Sentinel type used internally by `NthParameter` (declared but not defined). | xref:BloombergLP/bslmf/RemoveCvq.adoc[`RemoveCvq`] | This class implements a meta‐function for stripping top‐level const/volatile qualifiers from it's parameter type. | xref:BloombergLP/bslmf/RemoveReference.adoc[`RemoveReference`] | Meta‐function that removes reference‐ness from a type. | xref:BloombergLP/bslmf/ResultType-01.adoc[`ResultType`] | Metafunction to return the result type of a functor type. | xref:BloombergLP/bslmf/ResultType_BdeIdiom-0d.adoc[`ResultType_BdeIdiom`] | Metafunction to detect the BDE `ResultType` idiom. | xref:BloombergLP/bslmf/ResultType_Fallback-0b.adoc[`ResultType_Fallback`] | Metafunction that defines `type` to be the specified `t_FALLBACK` type unless `t_FALLBACK` is `bslmf::Nil`. | xref:BloombergLP/bslmf/SelectTrait.adoc[`SelectTrait`] | Metafunction that selects the first matching trait for a type. | xref:BloombergLP/bslmf/SelectTraitCase.adoc[`SelectTraitCase`] | Unique type identifying a selected trait metafunction. | xref:BloombergLP/bslmf/SelectTrait_False.adoc[`SelectTrait_False`] | Metafunction that always returns false. | xref:BloombergLP/bslmf/Switch-07a1.adoc[`Switch`] | Compile‐time type switch among a variable number of types. | xref:BloombergLP/bslmf/Tag-0b.adoc[`Tag`] | Map an unsigned integral constant to a distinct C++ type. | xref:BloombergLP/bslmf/TypeList-00d.adoc[`TypeList`] | Compile‐time list of zero or more types. | xref:BloombergLP/bslmf/TypeListTypeAt-03f.adoc[`TypeListTypeAt`] | Meta‐function to retrieve a type from a typelist by zero‐based index. | xref:BloombergLP/bslmf/TypeRep.adoc[`TypeRep`] | Generate a reference to `t_TYPE` for use in meta‐functions. | xref:BloombergLP/bslmf/UsesAllocatorArgT-0a.adoc[`UsesAllocatorArgT`] | Metafunction that is `true_type` if `t_TYPE` uses `allocator_arg_t` construction. | xref:BloombergLP/bslmf/Util.adoc[`Util`] | Namespace for portable forwarding and move helpers from `<utility>`. | xref:BloombergLP/bslmf/VoidType.adoc[`VoidType`] | Metafunction that always yields `type` `void` for any well‐formed list of type parameters. |=== == Type Aliases [cols="1,4"] |=== | Name| Description | xref:BloombergLP/bslmf/MakeIntegerSequence.adoc[`MakeIntegerSequence`] | Alias for an increasing integer sequence of type `t_T` and length `t_N`. | xref:BloombergLP/bslmf/MakeIntegerSequence_ConcatUtil_t.adoc[`MakeIntegerSequence_ConcatUtil_t`] | `bslmf::MakeIntegerSequence_ConcatUtil_t` is an alias to the result type of the `bslmf::MakeIntegerSequence_ConcatUtil` meta‐function. | xref:BloombergLP/bslmf/MovableRef.adoc[`MovableRef`] | The alias template `MovableRef<t_TYPE>` yields an r‐value reference of type `t_TYPE&&`. | xref:BloombergLP/bslmf/MovableRef_Deduced.adoc[`MovableRef_Deduced`] | This component‐private alias template names the type `t_TYPE&&` if and only if the specified `t_TYPE` is not an lvalue reference. | xref:BloombergLP/bslmf/Switch2.adoc[`Switch2`] | `switch` meta‐function among two types. | xref:BloombergLP/bslmf/Switch3.adoc[`Switch3`] | `switch` meta‐function among three types. | xref:BloombergLP/bslmf/Switch4.adoc[`Switch4`] | `switch` meta‐function among four types. | xref:BloombergLP/bslmf/Switch5.adoc[`Switch5`] | `switch` meta‐function among five types. | xref:BloombergLP/bslmf/Switch6.adoc[`Switch6`] | Select the type associated with selector value 6. | xref:BloombergLP/bslmf/Switch7.adoc[`Switch7`] | Select the type associated with selector value 7. | xref:BloombergLP/bslmf/Switch8.adoc[`Switch8`] | Select the type associated with selector value 8. | xref:BloombergLP/bslmf/Switch9.adoc[`Switch9`] | Alias for a nine‐way `Switch` metafunction. | xref:BloombergLP/bslmf/TypeList0.adoc[`TypeList0`] | Typelist of zero type parameters. | xref:BloombergLP/bslmf/TypeList1.adoc[`TypeList1`] | Typelist of one type parameter. | xref:BloombergLP/bslmf/TypeList10.adoc[`TypeList10`] | Typelist of ten type parameters. | xref:BloombergLP/bslmf/TypeList11.adoc[`TypeList11`] | Typelist of eleven type parameters. | xref:BloombergLP/bslmf/TypeList12.adoc[`TypeList12`] | Typelist of twelve type parameters. | xref:BloombergLP/bslmf/TypeList13.adoc[`TypeList13`] | Typelist of thirteen type parameters. | xref:BloombergLP/bslmf/TypeList14.adoc[`TypeList14`] | Typelist of fourteen type parameters. | xref:BloombergLP/bslmf/TypeList15.adoc[`TypeList15`] | Typelist of fifteen type parameters. | xref:BloombergLP/bslmf/TypeList16.adoc[`TypeList16`] | Typelist of sixteen type parameters. | xref:BloombergLP/bslmf/TypeList17.adoc[`TypeList17`] | Typelist of seventeen type parameters. | xref:BloombergLP/bslmf/TypeList18.adoc[`TypeList18`] | Typelist of eighteen type parameters. | xref:BloombergLP/bslmf/TypeList19.adoc[`TypeList19`] | Typelist of nineteen type parameters. | xref:BloombergLP/bslmf/TypeList2.adoc[`TypeList2`] | Typelist of two type parameters. | xref:BloombergLP/bslmf/TypeList20.adoc[`TypeList20`] | Typelist of twenty type parameters. | xref:BloombergLP/bslmf/TypeList3.adoc[`TypeList3`] | Typelist of three type parameters. | xref:BloombergLP/bslmf/TypeList4.adoc[`TypeList4`] | Typelist of four type parameters. | xref:BloombergLP/bslmf/TypeList5.adoc[`TypeList5`] | Typelist of five type parameters. | xref:BloombergLP/bslmf/TypeList6.adoc[`TypeList6`] | Typelist of six type parameters. | xref:BloombergLP/bslmf/TypeList7.adoc[`TypeList7`] | Typelist of seven type parameters. | xref:BloombergLP/bslmf/TypeList8.adoc[`TypeList8`] | Typelist of eight type parameters. | xref:BloombergLP/bslmf/TypeList9.adoc[`TypeList9`] | Typelist of nine type parameters. | xref:BloombergLP/bslmf/TypeListNil.adoc[`TypeListNil`] | Sentinel type representing an empty typelist element. | xref:BloombergLP/bslmf/TypeListTypeOf.adoc[`TypeListTypeOf`] | Classic Bloomberg code uses a 1‐based index into the type list. |=== == Functions [cols="1,4"] |=== | Name| Description | xref:BloombergLP/bslmf/operator_comma.adoc[`operator,`] | Detect non‐void expressions via an overloaded comma operator. |=== == Variables [cols="1,4"] |=== | Name| Description | xref:BloombergLP/bslmf/IsBitwiseCopyable_v.adoc[`IsBitwiseCopyable_v`] | This template variable represents the result value of the `bslmf::IsBitwiseCopyable` meta‐function. | xref:BloombergLP/bslmf/IsBitwiseMoveable_v.adoc[`IsBitwiseMoveable_v`] | This template variable represents the result value of the `bslmf::IsBitwiseMoveable` meta‐function. |=== == Concepts [cols="1,4"] |=== | Name| Description | xref:BloombergLP/bslmf/BooleanTestable.adoc[`BooleanTestable`] | Concept that a type supports boolean testing and logical negation with the conventional semantics defined by the C++20 standard [concept.booleantestable]. | xref:BloombergLP/bslmf/ContainerCompatibleRange.adoc[`ContainerCompatibleRange`] | Concept that `t_RANGE` is an input range of values convertible to `t_TYPE`. |=== [.small]#Created with https://www.mrdocs.com[MrDocs]#