2018-01-16 17:15 GMT+01:00 Andrey Semashev via Boost
On 01/16/18 19:10, Andrzej Krzemienski via Boost wrote:
2018-01-16 17:05 GMT+01:00 Andrey Semashev via Boost < boost@lists.boost.org> :
On 01/16/18 18:56, Olaf van der Spek via Boost wrote:
Can't the is_error bool be stored in the ec object itself, at construction time?
Actually, I like this idea. I've modified my benchmark accordingly and it shows nearly identical performance as the current `std::error_code`:
Experimental test: 253654 usec, 394237820.022550 tests per second Experimental2 test: 46353 usec, 2157357668.327832 tests per second std test: 45981 usec, 2174811335.116679 tests per second
This is now getting closer to Boost.outcome, isn't it?
With my limited knowledge of Boost.Outcome, I don't think so. An outcome is supposed to carry a value or error, and `error_code` carries only the error code.
Boost.Outcome provides a number of tools. One of types, `result<void>` (maybe error of value, but value is void), is exactly this: a `bool` flag and an `error_code`. Regards, &rzej;