Navigation :
default_policy<T, EC, EP>
A type alias to a no-value policy selected based on traits matching of T
, EC
and EP
. It is defined as follows:
If EC
and EP
is void
, choose terminate
.
If is_error_code_available<T>
true for EC
, choose error_code_throw_as_system_error<T, EC, EP>
for basic_outcome
or error_code_throw_as_system_error<T, EC, void>
for basic_result
.
If is_exception_ptr_available<T>
true for EC
or EP
, choose exception_ptr_rethrow<T, EC, EP>
for basic_outcome
or exception_ptr_rethrow<T, EC, void>
for basic_result
.
Else choose fail_to_compile_observers
, which fails the build with a useful message.
Namespace: OUTCOME_V2_NAMESPACE::policy
Header: <outcome/std_result.hpp>