explicit basic_outcome(in_place_type_t<exception_type_if_enabled>, std::initializer_list<U>, Args ...)
Explicit inplace exception constructor. Calls void hook_outcome_in_place_construction(T *, in_place_type_t<U>, Args &&...) noexcept
with this
, in_place_type<exception_type>
, std::initializer_list<U>
and Args ...
.
Requires: predicate::enable_inplace_exception_constructor<std::initializer_list<U>, Args ...>
is true.
Complexity: Same as for the exception_type
constructor which accepts std::initializer_list<U>, Args ...
. Constexpr, triviality and noexcept of underlying operations is propagated.
Guarantees: If an exception is thrown during the operation, the state of the Args is left indeterminate.