33 #ifndef _GLIBCXX_STDEXCEPT
34 #define _GLIBCXX_STDEXCEPT 1
36 #pragma GCC system_header
41 namespace std _GLIBCXX_VISIBILITY(default)
43 _GLIBCXX_BEGIN_NAMESPACE_VERSION
45 #if _GLIBCXX_USE_DUAL_ABI
46 #if _GLIBCXX_USE_CXX11_ABI
52 char _M_bytes[
sizeof(
const char*)];
57 __cow_string(
const char*,
size_t);
58 __cow_string(
const __cow_string&) _GLIBCXX_NOTHROW;
59 __cow_string& operator=(const __cow_string&) _GLIBCXX_NOTHROW;
61 #if __cplusplus >= 201103L
62 __cow_string(__cow_string&&)
noexcept;
63 __cow_string& operator=(__cow_string&&)
noexcept;
67 typedef basic_string<char> __sso_string;
68 #else // _GLIBCXX_USE_CXX11_ABI
69 typedef basic_string<char> __cow_string;
77 size_t _M_string_length;
78 char _M_local_buf[16];
83 char _M_bytes[
sizeof(__str)];
86 __sso_string() _GLIBCXX_NOTHROW;
87 __sso_string(const std::
string&);
88 __sso_string(const
char*,
size_t);
89 __sso_string(const __sso_string&);
90 __sso_string& operator=(const __sso_string&);
92 #if __cplusplus >= 201103L
93 __sso_string(__sso_string&&)
noexcept;
94 __sso_string& operator=(__sso_string&&)
noexcept;
97 #endif // _GLIBCXX_USE_CXX11_ABI
98 #else // _GLIBCXX_USE_DUAL_ABI
99 typedef basic_string<char> __sso_string;
100 typedef basic_string<char> __cow_string;
120 logic_error(
const string& __arg) _GLIBCXX_TXN_SAFE;
122 #if __cplusplus >= 201103L
130 #if _GLIBCXX_USE_CXX11_ABI || _GLIBCXX_DEFINE_STDEXCEPT_COPY_OPS
133 #elif __cplusplus >= 201103L
138 virtual ~
logic_error() _GLIBCXX_TXN_SAFE_DYN _GLIBCXX_NOTHROW;
143 what()
const _GLIBCXX_TXN_SAFE_DYN _GLIBCXX_NOTHROW;
145 # ifdef _GLIBCXX_TM_TS_INTERNAL
147 ::_txnal_logic_error_get_msg(
void* e);
156 explicit domain_error(
const string& __arg) _GLIBCXX_TXN_SAFE;
157 #if __cplusplus >= 201103L
172 #if __cplusplus >= 201103L
187 explicit length_error(
const string& __arg) _GLIBCXX_TXN_SAFE;
188 #if __cplusplus >= 201103L
203 explicit out_of_range(
const string& __arg) _GLIBCXX_TXN_SAFE;
204 #if __cplusplus >= 201103L
228 #if __cplusplus >= 201103L
236 #if _GLIBCXX_USE_CXX11_ABI || _GLIBCXX_DEFINE_STDEXCEPT_COPY_OPS
239 #elif __cplusplus >= 201103L
244 virtual ~
runtime_error() _GLIBCXX_TXN_SAFE_DYN _GLIBCXX_NOTHROW;
249 what()
const _GLIBCXX_TXN_SAFE_DYN _GLIBCXX_NOTHROW;
251 # ifdef _GLIBCXX_TM_TS_INTERNAL
253 ::_txnal_runtime_error_get_msg(
void* e);
261 explicit range_error(
const string& __arg) _GLIBCXX_TXN_SAFE;
262 #if __cplusplus >= 201103L
263 explicit range_error(
const char*) _GLIBCXX_TXN_SAFE;
277 #if __cplusplus >= 201103L
292 #if __cplusplus >= 201103L
304 _GLIBCXX_END_NAMESPACE_VERSION
One of two subclasses of exception.
virtual const char * what() const _GLIBCXX_TXN_SAFE_DYN noexcept
void noexcept()
Swap contents with another string.
One of two subclasses of exception.
runtime_error(const string &__arg) _GLIBCXX_TXN_SAFE
enable_if< ::__array_traits< _Tp, _Nm >::_Is_swappable::value >::type noexcept(noexcept(__one.swap(__two)))
swap
_GLIBCXX_END_NAMESPACE_CXX11 typedef basic_string< char > string
A string of char.
logic_error(const string &__arg) _GLIBCXX_TXN_SAFE
Base class for all library exceptions.
virtual const char * what() const _GLIBCXX_TXN_SAFE_DYN noexcept