Boost C++ Libraries

...one of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

This is the documentation for an old version of Boost. Click here to view this page for the latest version.
Prev Up HomeNext

Functions

  1. Hooks

    Functions used to hook into the functionality of basic_result and basic_outcome.

    1. uint16_t spare_storage(const basic_result|basic_outcome *) noexcept

      Returns the sixteen bits of spare storage in the specified result or outcome.

    2. void hook_outcome_construction(T *, U &&) noexcept

      (Until v2.2.0) ADL discovered free function hook invoked by the implicit constructors of basic_outcome.

    3. void hook_outcome_construction(T *, U &&, V &&) noexcept

      (Until v2.2.0) ADL discovered free function hook invoked by the implicit constructors of basic_outcome.

    4. void hook_outcome_copy_construction(T *, U &&) noexcept

      (Until v2.2.0) ADL discovered free function hook invoked by the converting copy constructors of basic_outcome.

    5. void hook_outcome_copy_construction(T *, U &&, V &&) noexcept

      (Until v2.2.0) ADL discovered free function hook invoked by the converting copy constructors of basic_outcome.

    6. void hook_outcome_in_place_construction(T *, in_place_type_t<U>, Args &&...) noexcept

      (Until v2.2.0) ADL discovered free function hook invoked by the in-place constructors of basic_outcome.

    7. void hook_outcome_move_construction(T *, U &&) noexcept

      (Until v2.2.0) ADL discovered free function hook invoked by the converting move constructors of basic_outcome.

    8. void hook_outcome_move_construction(T *, U &&, V &&) noexcept

      (Until v2.2.0) ADL discovered free function hook invoked by the converting move constructors of basic_outcome.

    9. void hook_result_construction(T *, U &&) noexcept

      (Until v2.2.0) ADL discovered free function hook invoked by the implicit constructors of basic_result.

    10. void hook_result_copy_construction(T *, U &&) noexcept

      (Until v2.2.0) ADL discovered free function hook invoked by the converting copy constructors of basic_result.

    11. void hook_result_in_place_construction(T *, in_place_type_t<U>, Args &&...) noexcept

      (Until v2.2.0) ADL discovered free function hook invoked by the in-place constructors of basic_result.

    12. void hook_result_move_construction(T *, U &&) noexcept

      (Until v2.2.0) ADL discovered free function hook invoked by the converting move constructors of basic_result.

    13. void override_outcome_exception(basic_outcome<T, EC, EP, NoValuePolicy> *, U &&) noexcept

      Overrides the exception to something other than what was constructed.

    14. void set_spare_storage(basic_result|basic_outcome *, uint16_t) noexcept

      Sets the sixteen bits of spare storage in the specified result or outcome.

  2. Iostream

    Functions used to print, serialise and deserialise basic_result and basic_outcome.

    1. std::istream &operator>>(std::istream &, basic_outcome<T, EC, EP, NoValuePolicy> &)

      Deserialises a basic_outcome from a std::istream.

    2. std::istream &operator>>(std::istream &, basic_result<T, E, NoValuePolicy> &)

      Deserialises a basic_result from a std::istream.

    3. std::ostream &operator<<(std::ostream &, const basic_outcome<T, EC, EP, NoValuePolicy> &)

      Serialises a basic_outcome to a std::ostream.

    4. std::ostream &operator<<(std::ostream &, const basic_result<T, E, NoValuePolicy> &)

      Serialises a basic_result to a std::ostream.

    5. std::string print(const basic_outcome<T, EC, EP, NoValuePolicy> &)

      Returns a string containing a human readable rendition of the basic_outcome.

    6. std::string print(const basic_result<T, E, NoValuePolicy> &)

      Returns a string containing a human readable rendition of the basic_result.

  3. Policy

    Functions used to customise how the policy classes operate.

    1. auto basic_outcome_failure_exception_from_error(const EC &)

      ADL discovered free function synthesising an exception type from an error type, used by the .failure() observers.

    2. decltype(auto) error_code(T &&)

      Extracts a boost::system::error_code or std::error_code from the input via ADL discovery of a suitable make_error_code(T) function.

    3. decltype(auto) exception_ptr(T &&)

      Extracts a boost::exception_ptr or std::exception_ptr from the input via ADL discovery of a suitable make_exception_ptr(T) function.

    4. void outcome_throw_as_system_error_with_payload(BoostErrorCodeEnum &&)

      Specialisation of outcome_throw_as_system_error_with_payload() for input types where boost::system::is_error_code_enum<BoostErrorCodeEnum> or boost::system::is_error_condition_enum<BoostErrorCodeEnum> is true.

    5. void outcome_throw_as_system_error_with_payload(ErrorCodeEnum &&)

      Specialisation of outcome_throw_as_system_error_with_payload() for input types where std::is_error_code_enum<ErrorCodeEnum> or std::is_error_condition_enum<ErrorCodeEnum> is true.

    6. void outcome_throw_as_system_error_with_payload(const boost::system::error_code &)

      Specialisation of outcome_throw_as_system_error_with_payload() for boost::system::error_code.

    7. void outcome_throw_as_system_error_with_payload(const std::error_code &)

      Specialisation of outcome_throw_as_system_error_with_payload() for std::error_code.

  4. auto failure(T &&, ...)

    Returns appropriate type sugar for constructing an unsuccessful result or outcome.

  5. auto success(T &&, ...)

    Returns appropriate type sugar for constructing a successful result or outcome.

  6. bool try_operation_has_value(X)

    Default implementation of try_operation_has_value(X) ADL customisation point for BOOST_OUTCOME_TRY.

  7. decltype(auto) try_operation_extract_value(X)

    Default implementation of try_operation_extract_value(X) ADL customisation point for BOOST_OUTCOME_TRY.

  8. decltype(auto) try_operation_return_as(X)

    Default implementation of try_operation_return_as(X) ADL customisation point for BOOST_OUTCOME_TRY.

  9. std::error_code error_from_exception(std::exception_ptr &&ep = std::current_exception(), std::error_code not_matched = std::make_error_code(std::errc::resource_unavailable_try_again)) noexcept

    Returns an error code matching a thrown standard library exception.

  10. void strong_swap(bool &all_good, T &a, T &b)

    Tries to perform a strong guarantee swap.

  11. void try_throw_std_exception_from_error(std::error_code ec, const std::string &msg = std::string{})

    Try to throw a standard library exception type matching an error code.

Last revised: December 13, 2018 at 21:10:19 UTC


Prev Up HomeNext