emplace overloads
Synopses
Declared in <bslstl_variant.h>
Create a t_TYPE alternative in place from args.
template<
class t_TYPE,
class... t_ARGS>
requires BSLSTL_VARIANT_HAS_UNIQUE_TYPE(t_TYPE) &&
std::is_constructible<t_TYPE, t_ARGS...>::value
t_TYPE&
emplace(t_ARGS&&... args);
Create the t_INDEX alternative in place from args.
template<
std::size_t t_INDEX,
class... t_ARGS>
requires (t_INDEX < 1 + sizeof...(t_TAIL)) &&
std::is_constructible<BSLSTL_VARIANT_TYPE_AT_INDEX(t_INDEX),
t_ARGS...>::value
variant_alternative<t_INDEX, variant<t_HEAD, t_TAIL...>>::type&
emplace(t_ARGS&&... args);
Create a t_TYPE alternative in place from il and args.
template<
class t_TYPE,
class INIT_LIST_TYPE,
class... t_ARGS>
requires BSLSTL_VARIANT_HAS_UNIQUE_TYPE(t_TYPE) &&
std::is_constructible<t_TYPE,
std::initializer_list<INIT_LIST_TYPE>&,
t_ARGS...>::value
t_TYPE&
emplace(
std::initializer_list<INIT_LIST_TYPE> il,
t_ARGS&&... args);
Create the t_INDEX alternative in place from il and args.
template<
std::size_t t_INDEX,
class INIT_LIST_TYPE,
class... t_ARGS>
requires (t_INDEX < 1 + sizeof...(t_TAIL)) &&
std::is_constructible<BSLSTL_VARIANT_TYPE_AT_INDEX(t_INDEX),
std::initializer_list<INIT_LIST_TYPE>&,
t_ARGS...>::value
variant_alternative<t_INDEX, variant<t_HEAD, t_TAIL...>>::type&
emplace(
std::initializer_list<INIT_LIST_TYPE> il,
t_ARGS&&... args);
Return Value
-
reference to the newly created
t_TYPEobject -
reference to the newly created alternative object
Parameters
Name |
Description |
args |
arguments used to construct the |
il |
initializer list used to construct the |
Created with MrDocs