exception_ptr_rethrow<T, EC, EP>
Note: This policy class specialisation can only be used with basic_outcome
, not basic_result
. Use exception_ptr_rethrow<T, EC, void>
with basic_result
.
Policy class defining that the ADL discovered free function rethrow_exception(impl.assume_exception())
if possible, followed by rethrow_exception(impl.assume_error())
should be called on incorrect wide value observation. Generally this will ADL discover
std::rethrow_exception()
or boost::rethrow_exception()
depending on the EC
type.
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_exception_ptr_rethrow.hpp>