github boostorg/leaf 0.3.0
Changes based on Boost review feedback and other improvements

This release incorporates the feedback of the Boost Review, changes to improve potential integration with Boost, simplified asynchronous API. Changes:

  • The is_e_type trait is deleted. Any value type can be used as an error type.
  • Error handlers can now be captured in a tuple and used with try_handle_some, try_handle_all or try_catch. The remote_ prefixed error handling functions are removed.
  • preload, defer, and accumulate are all merged into a single API called on_error.
  • match is now compatible with std::error_code, e.g. match<std::error_code, 42>.
  • Error handlers that take arguments of exception types will automatically catch exceptions; catch_ is now optional, primarily used to catch more than one exception type.
  • Error handlers can now take mutable reference (and mutable pointer) arguments.
  • augment_id is renamed to error_monitor.
  • All LEAF_XXXX macros are renamed to BOOST_LEAF_XXXX.
3 months ago