bsl::variant::variant

Create a variant object holding a contained value of type (template parameter) t_TYPE, direct-initialized from the specified args. If this variant is allocator-aware, the specified allocator is used to supply memory. This constructor participates in overload resolutionly if t_TYPE designates a unique alternative and is constructible from args.

Synopsis

Declared in <bslstl_variant.h>

template<
    class t_TYPE,
    class... t_ARGS>
requires BSLSTL_VARIANT_HAS_UNIQUE_TYPE(t_TYPE) &&
                  std::is_constructible<t_TYPE, t_ARGS...>::value
explicit
variant(
    std::allocator_arg_t,
    allocator_type allocator,
    bsl::in_place_type_t<t_TYPE>,
    t_ARGS&&... args);