Files
ports/devel/outcome/pkg-descr
T
2026-10-04 04:07:15 +00:00

16 lines
843 B
Plaintext

Outcome is a C++14 library for reporting and handling function failures.
It can be used as a substitute for, or a complement to, the exception handling
mechanism.
One use case is for contexts where using C++ exception handling is unsuitable
for different reasons:
* The high relative cost of throwing and catching a C++ exception.
* Making some or all control paths explicitly detailed to aid code correctness
auditing, as opposed to having hidden control paths caused by exceptions
potentially thrown from any place.
* Company policy to compile with exceptions disabled.
* Maintaining a code base that was never designed with exception-safety in mind.
* Parts of the programs/frameworks that themselves implement exception handling
and cannot afford to use exceptions, like propagating failure reports across
threads, tasks, fibers.