Imported Upstream version 1.72.0
[platform/upstream/boost.git] / libs / outcome / doc / src / content / reference / functions / policy / outcome_throw_as_system_error_with_payload_boost_enum.md
1 +++
2 title = "`void outcome_throw_as_system_error_with_payload(BoostErrorCodeEnum &&)`"
3 description = "Specialisation of `outcome_throw_as_system_error_with_payload()` for input types where `boost::system::is_error_code_enum<BoostErrorCodeEnum>` or `boost::system::is_error_condition_enum<BoostErrorCodeEnum>` is true."
4 +++
5
6 A specialisation of `outcome_throw_as_system_error_with_payload()` for types where `boost::system::is_error_code_enum<BoostErrorCodeEnum>` or `boost::system::is_error_condition_enum<BoostErrorCodeEnum>` is true. This executes {{% api "BOOST_OUTCOME_THROW_EXCEPTION(expr)" %}} with a `boost::system::system_error` constructed from the result of the ADL discovered free function `make_error_code(BoostErrorCodeEnum)`.
7
8 *Overridable*: Argument dependent lookup.
9
10 *Requires*: Either `boost::system::is_error_code_enum<T>` or `boost::system::is_error_condition_enum<T>` to be true for a decayed `BoostErrorCodeEnum`.
11
12 *Namespace*: `boost::system`
13
14 *Header*: `<boost/outcome/boost_result.hpp>`