std::tx_exception
From cppreference.com
C++
Feature test macros (C++20)
Concepts library (C++20)
Metaprogramming library (C++11)
Ranges library (C++20)
Filesystem library (C++17)
Concurrency support library (C++11)
Execution control library (C++26)
Diagnostics library
(until C++20*)
(C++17)(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
Exception handling failures
(C++11)
(until C++17*)
(until C++17*)
(until C++17*)
(until C++17*)
tx_exception
(TM TS)
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
(C++23)
(C++23)
(C++26)
(C++26)
(C++26)
Defined in header
<stdexcept>
template< class T >
class tx_exception : public std::runtime_error ;
(TM TS)
class tx_exception : public std::runtime_error ;
Defines an exception type that can be used to cancel and roll back an atomic transaction initiated by the keyword atomic_cancel.
If T
is not TriviallyCopyable, the program that specializes std::tx_exception<T>
is ill-formed.
Contents
[edit] Member functions
std::tx_exception::tx_exception
explicit tx_exception( T value ) transaction_safe;
(1)
(TM TS)
tx_exception( T value, const std::string & what_arg ) transaction_safe;
(2)
(TM TS)
tx_exception( T value, const char* what_arg ) transaction_safe;
(3)
(TM TS)
tx_exception( const tx_exception& other ) transaction_safe noexcept;
(4)
(TM TS)
1-3) Constructs the exception object with what_arg as explanatory string that can be accessed through what() and value as the object that can be accessed through get().
4) Copy constructor. If *this and other both have dynamic type
std::tx_exception<T>
then std::strcmp (what(), other.what()) == 0.Parameters
value
-
payload object
what_arg
-
explanatory string
other
-
another exception object to copy
Exceptions
1-3) May throw implementation-defined exceptions.
std::tx_exception::operator=
tx_exception& operator=( const tx_exception& other ) transaction_safe noexcept;
(TM TS)
Assigns the contents with those of other. If *this and other both have dynamic type std::tx_exception<T>
then std::strcmp (what(), other.what()) == 0 after assignment.
Parameters
other
-
another exception object to assign with
Return value
*this
std::tx_exception::get
T get() const transaction_safe;
(TM TS)
Returns the payload object held by the exception object.
Exceptions
May throw implementation-defined exceptions.
std::tx_exception::what
virtual const char* what() const transaction_safe_dynamic noexcept;
(TM TS)
Returns the explanatory string.
Parameters
(none)
Return value
Pointer to a null-terminated string with explanatory information.
Inherited from std::runtime_error