error_code_throw_as_system_error<T, EC, EP>

Note: This policy class specialisation can only be used with basic_outcome, not basic_result. Use error_code_throw_as_system_error<T, EC, void> with basic_result.

Policy class defining that on incorrect wide value observation, EP ought to be rethrown if possible, then the ADL discovered free function outcome_throw_as_system_error_with_payload(impl.assume_error()) should be called. Some precanned overloads of that function are listed here.

Incorrect wide error observation performs:

OUTCOME_THROW_EXCEPTION(bad_outcome_access("no error"));

Incorrect wide exception observation performs:

OUTCOME_THROW_EXCEPTION(bad_outcome_access("no exception"));

Inherits publicly from base , and its narrow value, error and exception observer policies are inherited from there.

Requires: Nothing.

Namespace: OUTCOME_V2_NAMESPACE::policy

Header: <outcome/policy/outcome_error_code_throw_as_system_error.hpp>