hpx/errors/exception_info.hpp

See Public API for a list of names and headers that are part of the public HPX API.

Defines

HPX_DEFINE_ERROR_INFO(NAME, TYPE)
namespace hpx

Functions

template<typename E>
void throw_with_info(E &&e, exception_info &&xi = exception_info())
template<typename E>
void throw_with_info(E &&e, exception_info const &xi)
template<typename E>
exception_info *get_exception_info(E &e)
template<typename E>
exception_info const *get_exception_info(E const &e)
template<typename E, typename F>
auto invoke_with_exception_info(E const &e, F &&f)
template<typename F>
auto invoke_with_exception_info(std::exception_ptr const &p, F &&f)
template<typename F>
auto invoke_with_exception_info(hpx::error_code const &ec, F &&f)
template<typename Tag, typename Type>
struct error_info

Public Types

template<>
using tag = Tag
template<>
using type = Type

Public Functions

error_info(Type const &value)
error_info(Type &&value)

Public Members

Type _value
class exception_info

Subclassed by hpx::detail::exception_with_info_base

Public Functions

exception_info()
exception_info(exception_info const &other)
exception_info(exception_info &&other)
exception_info &operator=(exception_info const &other)
exception_info &operator=(exception_info &&other)
virtual ~exception_info()
template<typename ...ErrorInfo>
exception_info &set(ErrorInfo&&... tagged_values)
template<typename Tag>
Tag::type const *get() const

Private Types

using node_ptr = std::shared_ptr<detail::exception_info_node_base>

Private Members

node_ptr _data