This component‐private metafunction is derived from bsl::true_type if all template parameters are move constructible, and bsl::false_type otherwise.

Synopsis

Declared in <bslstl_variant.h>

template<
    class t_HEAD,
    class... t_TAIL>
struct Variant_IsMoveConstructibleAll
    : bsl::integral_constant<bool, std::is_move_constructible<t_HEAD>::value && Variant_IsMoveConstructibleAll<t_TAIL...>::value>

Base Classes

Name

Description

bsl::integral_constant<bool, std::is_move_constructible<t_HEAD>::value && Variant_IsMoveConstructibleAll<t_TAIL...>::value>

Metafunction representing a compile‐time constant of the specified (template parameter) t_TYPE with the specified (template parameter) t_VALUE.

Type Aliases

Name

Description

type

Alias for this integral_constant specialization.

value_type

Alias for the (template parameter) t_TYPE.

Member Functions

Name

Description

operator()

Return a copy of the template argument t_VALUE.

operator t_TYPE

Return a copy of the template argument t_VALUE.

Static Data Members

Name

Description

value

The compile‐time constant value of this metafunction.

Specializations

Name

Description

Variant_IsMoveConstructibleAll<t_HEAD>

This partial specialization of Variant_IsMoveConstructibleAll is the base case of the recursion, reached when a single template parameter, t_HEAD, remains.

Created with MrDocs