[boost][review] Review of Outcome v2 (Fri-19-Jan to Sun-28-Jan, 2018)
The formal review of Niall Douglas' Outcome (v2) library begins Fri-19-Jan and continues until Sun-28-Jan, 2018.
Your participation is encouraged, as the proposed library is uncoupled and focused, and reviewers do not need to be domain experts to appreciate the potential usefulness of the library and to propose improvements. Everyone needs (and has suffered) error handling, and can compose an opinion on that topic.
Outcome is a header-only C++14 library providing expressive and very lightweight 'outcome<T>' and 'result<T>' error handling, suitable for low-latency code bases. The library further provides mechanisms for wrapping '<success|error|exception>' state to safely wrap throwing APIs; and poses an idiom of, "islands of exception in a sea of noexcept".
*- Makes using 'std::error_code' from C++11's <system_error> more convenient and safe
*- Good focus on low-latency (with tests and benchmarks)
*- Error-handling algorithmic composition with-or-without C++ exceptions enabled
*- Dependency only on Boost
Recall a previous Outcome (v1) Boost Review occurred 19-May to 02-June 2017: