Navigation :
Prerequisites
Build and install
Review of Error Handling Frameworks
Motivation
Future ABI stability guarantees
Tutorial
Recipes
Experimental
API reference
-
Macros
-- Constrained template macros
-- Version macros
-- `OUTCOME_CO_TRY(var, expr)`
-- `OUTCOME_CO_TRYV(expr)/OUTCOME_CO_TRY(expr)`
-- `OUTCOME_CO_TRYV2(spec, expr)`
-- `OUTCOME_CO_TRYV2_FAILURE_LIKELY(spec, expr)`
-- `OUTCOME_CO_TRYV_FAILURE_LIKELY(expr)/OUTCOME_CO_TRY_FAILURE_LIKELY(expr)`
-- `OUTCOME_CO_TRYX(expr)`
-- `OUTCOME_CO_TRYX_FAILURE_LIKELY(expr)`
-- `OUTCOME_CO_TRY_FAILURE_LIKELY(var, expr)`
-- `OUTCOME_DISABLE_EXECINFO`
-- `OUTCOME_ENABLE_LEGACY_SUPPORT_FOR`
-- `OUTCOME_NODISCARD`
-- `OUTCOME_REQUIRES(...)`
-- `OUTCOME_SYMBOL_VISIBLE`
-- `OUTCOME_THREAD_LOCAL`
-- `OUTCOME_THROW_EXCEPTION(expr)`
-- `OUTCOME_TRY(var, expr)`
-- `OUTCOME_TRYV(expr)/OUTCOME_TRY(expr)`
-- `OUTCOME_TRYV2(spec, expr)`
-- `OUTCOME_TRYV2_FAILURE_LIKELY(spec, expr)`
-- `OUTCOME_TRYV_FAILURE_LIKELY(expr)/OUTCOME_TRY_FAILURE_LIKELY(expr)`
-- `OUTCOME_TRYX(expr)`
-- `OUTCOME_TRYX_FAILURE_LIKELY(expr)`
-- `OUTCOME_TRY_FAILURE_LIKELY(var, expr)`
-- `OUTCOME_USE_STD_IN_PLACE_TYPE`
-- `OUTCOME_USE_STD_IS_NOTHROW_SWAPPABLE`
-
Concepts
-
Converters
-
Traits
-
Policies
-
Types
-
Aliases
-
Functions
Frequently asked questions
Videos
Changelog
History
OUTCOME_ENABLE_LEGACY_SUPPORT_FOR
As Outcome has evolved, some features and especially naming were retired in newer versions. Define this macro to enable backwards compatibility aliasing from old features and naming to new features and naming.
Overridable : Define before inclusion.
Default : The current version of Outcome, expressed in hundreds e.g. Outcome v2.10 is 210
.
Header : <outcome/config.hpp>