25 &noop_<void, exception_wrapper const*, exception_wrapper*>,
26 &noop_<void, exception_wrapper*, exception_wrapper*>,
27 &noop_<void, exception_wrapper*>,
28 &noop_<void, exception_wrapper const*>,
30 &noop_<std::exception const*, exception_wrapper const*>,
31 &noop_<exception_wrapper, exception_wrapper const*>};
52 std::exception
const* get_std_exception_(std::exception_ptr eptr)
noexcept {
55 }
catch (
const std::exception& ex) {
69 std::rethrow_exception(
ptr);
70 }
catch (std::exception& e) {
80 if (
auto e = get_std_exception_(
ptr)) {
82 <<
"Performance error: Please construct exception_wrapper with a " 83 "reference to the std::exception along with the " 84 "std::exception_ptr.";
94 char const*
const name) {
95 std::ios_base::Init ioinit_;
96 std::cerr <<
"Cannot use `" << name
97 <<
"` with an empty folly::exception_wrapper" << std::endl;
folly::fbstring what() const
void rethrow_exception(std::exception_ptr ep)
fbstring exceptionStr(const std::exception &e)
constexpr detail::Map< Move > move
static exception_wrapper from_exception_ptr(std::exception_ptr const &eptr) noexcept
exception_wrapper() noexcept
—— Concurrent Priority Queue Implementation ——
requires E e noexcept(noexcept(s.error(std::move(e))))
static void onNoExceptionError(char const *name)
static VTable const uninit_