STD::__UNSPECIFIED___EXCEPTION_PTR(3)

πŸ“¦ version 13.3.1, in centos-stream 9

πŸ¦‹ STD::__UNSPECIFIED___EXCEPTION_PTR(3) β€” Library Functions Manual πŸ¦‹

okay so bestie, welcome to the manual page for the mysterious little handle known as std::__unspecified__::exception_ptr πŸ’… β€” it lives in the Library Functions Manual, and it’s giving β€œopaque pointer to an arbitrary exception” energy. ✨


🌸 NAME 🌸

std::__unspecified__::exception_ptr β€” an opaque pointer to an arbitrary exception.

That’s the whole vibe: it’s an opaque pointer to an arbitrary exception, so you’re not peeking inside the exception itself through this type. 🫢

✨ SYNOPSIS ✨

πŸŽ€ Public Member Functions πŸŽ€

Here’s the full roster, with every noexcept left exactly where it belongs:

exception_ptr (const exception_ptr &) noexcept
exception_ptr (exception_ptr &&__o) noexcept
exception_ptr (nullptr_t) noexcept
const class std::type_info * __cxa_exception_type () const noexcept
operator bool () const noexcept
exception_ptr & operator= (const exception_ptr &) noexcept
exception_ptr & operator= (exception_ptr &&__o) noexcept
void swap (exception_ptr &) noexcept

Copy-construct it, move-construct it, construct from nullptr_t, ask it for the exception type via __cxa_exception_type, bool-check it, copy-assign it, move-assign it, or swap it β€” all with noexcept and all iconic. πŸ’…

πŸ¦‹ Friends πŸ¦‹

These are the friend functions, and yes, the noexcept=default and line breaks are part of the whole look:

bool operator== (const exception_ptr &, const exception_ptr &)
    noexcept=default
exception_ptr std::current_exception () noexcept
template<typename _Ex > exception_ptr std::make_exception_ptr (_Ex)
    noexcept
void std::rethrow_exception (exception_ptr)

Note that these are not member functions.

void swap (exception_ptr &__lhs, exception_ptr &__rhs)
bestie PSA: that swap is related, not a member function. Don’t get it twisted. πŸ’€

πŸ’– Detailed Description πŸ’–

An opaque pointer to an arbitrary exception. ✨

The actual name of this type is unspecified, so the alias std::exception_ptr should be used to refer to it. Periodt β€” that’s the name you’re meant to use. πŸ’…

πŸ’« Since πŸ’«

  • C++11 (but usable in C++98 as a GCC extension) β€” yes bestie, it has range. 🌈

🌟 Author 🌟

Generated automatically by Doxygen for libstdc++ from the source code. πŸ€–βœ¨


okay bye bestie πŸ’‹ β€” source/version: libstdc++, date: Fri Feb 14 2025. That’s the tea, and this page is officially signed off. πŸ«ΆπŸŽ€

πŸ“¦ where this page comes from