Inherits __gnu_debug::_Safe_container< basic_string< _CharT, _Traits, _Allocator >, _Allocator, _Safe_sequence, bool(_GLIBCXX_USE_CXX11_ABI)>, and std::basic_string< _CharT, _Traits, _Allocator >.
typedef _Allocator allocator_type
typedef __gnu_debug::_Safe_iterator< typename _Base::const_iterator, basic_string > const_iterator
typedef _Base::const_pointer const_pointer
typedef _Base::const_reference const_reference
typedef std::reverse_iterator< const_iterator > const_reverse_iterator
typedef _Base::difference_type difference_type
typedef __gnu_debug::_Safe_iterator< typename _Base::iterator, basic_string > iterator
typedef _Base::pointer pointer
typedef _Base::reference reference
typedef std::reverse_iterator< iterator > reverse_iterator
typedef _Base::size_type size_type
typedef _Traits traits_type
typedef _Traits::char_type value_type
basic_string (const _Allocator &__a) noexcept
basic_string (const basic_string &)=default
basic_string (basic_string &&)=default
basic_string (std::initializer_list< _CharT > __l, const _Allocator &__a=_Allocator())
basic_string (_Base &&__base) noexcept
basic_string (const _Base &__base)
basic_string (const basic_string &__str, size_type __pos, size_type __n=_Base::npos, const _Allocator &__a=_Allocator())
basic_string (const _CharT *__s, size_type __n, const _Allocator &__a=_Allocator())
basic_string (const _CharT *__s, const _Allocator &__a=_Allocator())
basic_string (size_type __n, _CharT __c, const _Allocator &__a=_Allocator())
template<typename _InputIterator > basic_string (_InputIterator __begin, _InputIterator __end, const _Allocator &__a=_Allocator())
_Base & _M_base () noexcept
const _Base & _M_base () const noexcept
void _M_invalidate_if (_Predicate __pred)
basic_string< _CharT, _Traits, _Allocator > & _M_replace_dispatch (iterator __i1, iterator __i2, _InputIterator __k1, _InputIterator __k2, __false_type)
void _M_swap (_Safe_container &__x) noexcept
void _M_transfer_from_if (_Safe_sequence &__from, _Predicate __pred)
_CharT * _S_construct (_InIterator __beg, _InIterator __end, const _Allocator &__a, forward_iterator_tag)
basic_string & append (const basic_string &__str)
basic_string & append (const basic_string &__str, size_type __pos, size_type __n)
basic_string & append (const _CharT *__s, size_type __n)
basic_string & append (const _CharT *__s)
basic_string & append (size_type __n, _CharT __c)
template<typename _InputIterator > basic_string & append (_InputIterator __first, _InputIterator __last)
basic_string & append (const basic_string &__str)
Append a string to this string.
basic_string & append (const basic_string &__str, size_type __pos, size_type __n=npos)
Append a substring.
basic_string & append (initializer_list< _CharT > __l)
Append an initializer_list of characters.
basic_string & assign (const basic_string &__x)
basic_string & assign (basic_string &&__x) noexcept(noexcept(std::declval< _Base & >().assign(std::move(__x))))
basic_string & assign (const basic_string &__str, size_type __pos, size_type __n)
basic_string & assign (const _CharT *__s, size_type __n)
basic_string & assign (const _CharT *__s)
basic_string & assign (size_type __n, _CharT __c)
template<typename _InputIterator > basic_string & assign (_InputIterator __first, _InputIterator __last)
basic_string & assign (std::initializer_list< _CharT > __l)
basic_string & assign (const basic_string &__str)
Set value to contents of another string.
basic_string & assign (basic_string &&__str)
Set value to contents of another string.
basic_string & assign (const basic_string &__str, size_type __pos, size_type __n=npos)
Set value to a substring of a string.
const_reference at (size_type __n) const
Provides access to the data contained in the string.
reference at (size_type __n)
Provides access to the data contained in the string.
reference back ()
const_reference back () const noexcept
iterator begin ()
const_iterator begin () const noexcept
const _CharT * c_str () const noexcept
size_type capacity () const noexcept
const_iterator cbegin () const noexcept
const_iterator cend () const noexcept
void clear ()
int compare (const basic_string &__str) const
int compare (size_type __pos1, size_type __n1, const basic_string &__str) const
int compare (size_type __pos1, size_type __n1, const basic_string &__str, size_type __pos2, size_type __n2) const
int compare (const _CharT *__s) const
int compare (size_type __pos1, size_type __n1, const _CharT *__s) const
int compare (size_type __pos1, size_type __n1, const _CharT *__s, size_type __n2) const
int compare (const basic_string &__str) const
Compare to a string.
int compare (size_type __pos, size_type __n, const basic_string &__str) const
Compare substring to a string.
int compare (size_type __pos1, size_type __n1, const basic_string &__str, size_type __pos2, size_type __n2=npos) const
Compare substring to a substring.
size_type copy (_CharT *__s, size_type __n, size_type __pos=0) const
const_reverse_iterator crbegin () const noexcept
const_reverse_iterator crend () const noexcept
const _CharT * data () const noexcept
bool empty () const noexcept
iterator end ()
const_iterator end () const noexcept
basic_string & erase (size_type __pos=0, size_type __n=_Base::npos)
iterator erase (iterator __position)
iterator erase (iterator __first, iterator __last)
iterator erase (iterator __position)
Remove one character.
iterator erase (iterator __first, iterator __last)
Remove a range of characters.
size_type find (const basic_string &__str, size_type __pos=0) const noexcept
size_type find (const _CharT *__s, size_type __pos, size_type __n) const
size_type find (const _CharT *__s, size_type __pos=0) const
size_type find (_CharT __c, size_type __pos=0) const noexcept
size_type find (const basic_string &__str, size_type __pos=0) const noexcept
Find position of a string.
size_type find_first_not_of (const basic_string &__str, size_type __pos=0) const noexcept
size_type find_first_not_of (const _CharT *__s, size_type __pos, size_type __n) const
size_type find_first_not_of (const _CharT *__s, size_type __pos=0) const
size_type find_first_not_of (_CharT __c, size_type __pos=0) const noexcept
size_type find_first_not_of (const basic_string &__str, size_type __pos=0) const noexcept
Find position of a character not in string.
size_type find_first_of (const basic_string &__str, size_type __pos=0) const noexcept
size_type find_first_of (const _CharT *__s, size_type __pos, size_type __n) const
size_type find_first_of (const _CharT *__s, size_type __pos=0) const
size_type find_first_of (_CharT __c, size_type __pos=0) const noexcept
size_type find_first_of (const basic_string &__str, size_type __pos=0) const noexcept
Find position of a character of string.
size_type find_last_not_of (const basic_string &__str, size_type __pos=_Base::npos) const noexcept
size_type find_last_not_of (const _CharT *__s, size_type __pos, size_type __n) const
size_type find_last_not_of (const _CharT *__s, size_type __pos=_Base::npos) const
size_type find_last_not_of (_CharT __c, size_type __pos=_Base::npos) const noexcept
size_type find_last_not_of (const basic_string &__str, size_type __pos=npos) const noexcept
Find last position of a character not in string.
size_type find_last_of (const basic_string &__str, size_type __pos=_Base::npos) const noexcept
size_type find_last_of (const _CharT *__s, size_type __pos, size_type __n) const
size_type find_last_of (const _CharT *__s, size_type __pos=_Base::npos) const
size_type find_last_of (_CharT __c, size_type __pos=_Base::npos) const noexcept
size_type find_last_of (const basic_string &__str, size_type __pos=npos) const noexcept
Find last position of a character of string.
reference front ()
const_reference front () const noexcept
allocator_type get_allocator () const noexcept
Return copy of allocator used to construct this string.
basic_string & insert (size_type __pos1, const basic_string &__str)
basic_string & insert (size_type __pos1, const basic_string &__str, size_type __pos2, size_type __n)
basic_string & insert (size_type __pos, const _CharT *__s, size_type __n)
basic_string & insert (size_type __pos, const _CharT *__s)
basic_string & insert (size_type __pos, size_type __n, _CharT __c)
iterator insert (iterator __p, _CharT __c)
void insert (iterator __p, size_type __n, _CharT __c)
template<typename _InputIterator > void insert (iterator __p, _InputIterator __first, _InputIterator __last)
void insert (iterator __p, std::initializer_list< _CharT > __l)
void insert (iterator __p, size_type __n, _CharT __c)
Insert multiple characters.
void insert (iterator __p, _InputIterator __beg, _InputIterator __end)
Insert a range of characters.
void insert (iterator __p, initializer_list< _CharT > __l)
Insert an initializer_list of characters.
basic_string & insert (size_type __pos1, const basic_string &__str)
Insert value of a string.
basic_string & insert (size_type __pos1, const basic_string &__str, size_type __pos2, size_type __n=npos)
Insert a substring.
iterator insert (iterator __p, _CharT __c)
Insert one character.
size_type length () const noexcept
Returns the number of characters in the string, not including any null-termination.
size_type max_size () const noexcept
Returns the size() of the largest possible string.
basic_string & operator+= (const basic_string &__str)
basic_string & operator+= (const _CharT *__s)
basic_string & operator+= (_CharT __c)
basic_string & operator+= (std::initializer_list< _CharT > __l)
basic_string & operator+= (const basic_string &__str)
Append a string to this string.
basic_string & operator= (const basic_string &)=default
basic_string & operator= (basic_string &&)=default
basic_string & operator= (const _CharT *__s)
basic_string & operator= (_CharT __c)
basic_string & operator= (std::initializer_list< _CharT > __l)
const_reference operator[] (size_type __pos) const noexcept
reference operator[] (size_type __pos)
void pop_back ()
void push_back (_CharT __c)
reverse_iterator rbegin ()
const_reverse_iterator rbegin () const noexcept
reverse_iterator rend ()
const_reverse_iterator rend () const noexcept
basic_string & replace (size_type __pos1, size_type __n1, const basic_string &__str)
basic_string & replace (size_type __pos1, size_type __n1, const basic_string &__str, size_type __pos2, size_type __n2)
basic_string & replace (size_type __pos, size_type __n1, const _CharT *__s, size_type __n2)
basic_string & replace (size_type __pos, size_type __n1, const _CharT *__s)
basic_string & replace (size_type __pos, size_type __n1, size_type __n2, _CharT __c)
basic_string & replace (iterator __i1, iterator __i2, const basic_string &__str)
basic_string & replace (iterator __i1, iterator __i2, const _CharT *__s, size_type __n)
basic_string & replace (iterator __i1, iterator __i2, const _CharT *__s)
basic_string & replace (iterator __i1, iterator __i2, size_type __n, _CharT __c)
template<typename _InputIterator > basic_string & replace (iterator __i1, iterator __i2, _InputIterator __j1, _InputIterator __j2)
basic_string & replace (iterator __i1, iterator __i2, std::initializer_list< _CharT > __l)
basic_string & replace (size_type __pos, size_type __n, const basic_string &__str)
Replace characters with value from another string.
basic_string & replace (size_type __pos1, size_type __n1, const basic_string &__str, size_type __pos2, size_type __n2=npos)
Replace characters with value from another string.
basic_string & replace (iterator __i1, iterator __i2, const basic_string &__str)
Replace range of characters with string.
basic_string & replace (iterator __i1, iterator __i2, const _CharT *__s, size_type __n)
Replace range of characters with C substring.
basic_string & replace (iterator __i1, iterator __i2, const _CharT *__s)
Replace range of characters with C string.
basic_string & replace (iterator __i1, iterator __i2, size_type __n, _CharT __c)
Replace range of characters with multiple characters.
basic_string & replace (iterator __i1, iterator __i2, _InputIterator __k1, _InputIterator __k2)
Replace range of characters with range.
basic_string & replace (iterator __i1, iterator __i2, _CharT *__k1, _CharT *__k2)
basic_string & replace (iterator __i1, iterator __i2, const _CharT *__k1, const _CharT *__k2)
basic_string & replace (iterator __i1, iterator __i2, iterator __k1, iterator __k2)
basic_string & replace (iterator __i1, iterator __i2, const_iterator __k1, const_iterator __k2)
basic_string & replace (iterator __i1, iterator __i2, initializer_list< _CharT > __l)
Replace range of characters with initializer_list.
void reserve (size_type __res_arg=0)
Attempt to preallocate enough memory for specified number of characters.
void resize (size_type __n, _CharT __c)
void resize (size_type __n)
size_type rfind (const basic_string &__str, size_type __pos=_Base::npos) const noexcept
size_type rfind (const _CharT *__s, size_type __pos, size_type __n) const
size_type rfind (const _CharT *__s, size_type __pos=_Base::npos) const
size_type rfind (_CharT __c, size_type __pos=_Base::npos) const noexcept
size_type rfind (const basic_string &__str, size_type __pos=npos) const noexcept
Find last position of a string.
void shrink_to_fit () noexcept
size_type size () const noexcept
Returns the number of characters in the string, not including any null-termination.
basic_string substr (size_type __pos=0, size_type __n=_Base::npos) const
void swap (basic_string &__x) noexcept(/*conditional */)
void swap (basic_string &__s)
Swap contents with another string.
_Safe_iterator_base * _M_const_iterators
The list of constant iterators that reference this container.
_Safe_iterator_base * _M_iterators
The list of mutable iterators that reference this container.
unsigned int _M_version
The container version number. This number may never be 0.
static const size_type npos
Value returned by various member functions when they fail.
void _M_detach_all ()
void _M_detach_singular ()
__gnu_cxx::__mutex & _M_get_mutex () throw ()
void _M_invalidate_all () const
void _M_revalidate_singular ()
_Safe_container & _M_safe () noexcept
void _M_swap (_Safe_sequence_base &__x) noexcept
Definition at line 44 of file debug/string.
Referenced by __gnu_debug::_Safe_sequence_base::~_Safe_sequence_base().
Postcondition:
Referenced by __gnu_debug::_Safe_sequence< map< _Key, _Tp, _Compare, _Allocator > >::_M_transfer_from_if().
Definition at line 256 of file safe_base.h.
References __gnu_debug::_Safe_sequence_base::_M_version.
Definition at line 38 of file safe_sequence.tcc.
Definition at line 69 of file safe_sequence.tcc.
Append a string to this string.
Parameters:
Returns:
Definition at line 775 of file basic_string.tcc.
Append a substring.
Parameters:
Returns:
Exceptions:
This function appends __n characters from __str starting at __pos to this string. If __n is is larger than the number of available characters in __str, the remainder of __str is appended.
Definition at line 792 of file basic_string.tcc.
Append an initializer_list of characters.
Parameters:
Returns:
Definition at line 4198 of file basic_string.h.
Set value to contents of another string.
Parameters:
Returns:
Definition at line 693 of file basic_string.tcc.
Set value to contents of another string.
Parameters:
Returns:
This function sets this string to the exact contents of __str. __str is a valid, but unspecified string.
Definition at line 4281 of file basic_string.h.
Set value to a substring of a string.
Parameters:
Returns:
Exceptions:
This function sets this string to the substring of __str consisting of __n characters at __pos. If __n is is larger than the number of available characters in __str, the remainder of __str is used.
Definition at line 4302 of file basic_string.h.
Provides access to the data contained in the string.
Parameters:
Returns:
Exceptions:
This function provides for safer data access. The parameter is first checked that it is in the range of the string. The function throws out_of_range if the check fails.
Definition at line 4002 of file basic_string.h.
Provides access to the data contained in the string.
Parameters:
Returns:
Exceptions:
This function provides for safer data access. The parameter is first checked that it is in the range of the string. The function throws out_of_range if the check fails. Success results in unsharing the string.
Definition at line 4024 of file basic_string.h.
Definition at line 4063 of file basic_string.h.
Definition at line 4074 of file basic_string.h.
Definition at line 3898 of file basic_string.h.
Compare to a string.
Parameters:
Returns:
Returns an integer < 0 if this string is ordered before __str, 0 if their values are equivalent, or > 0 if this string is ordered after __str. Determines the effective length rlen of the strings to compare as the smallest of size() and str.size(). The function then compares the two strings by calling traits::compare(data(), str.data(),rlen). If the result of the comparison is nonzero returns it, otherwise the shorter one is ordered first.
Definition at line 5684 of file basic_string.h.
Compare substring to a string.
Parameters:
Returns:
Form the substring of this string from the __n characters starting at __pos. Returns an integer < 0 if the substring is ordered before __str, 0 if their values are equivalent, or > 0 if the substring is ordered after __str. Determines the effective length rlen of the strings to compare as the smallest of the length of the substring and __str.size(). The function then compares the two strings by calling traits::compare(substring.data(),str.data(),rlen). If the result of the comparison is nonzero returns it, otherwise the shorter one is ordered first.
Definition at line 1385 of file basic_string.tcc.
Compare substring to a substring.
Parameters:
Returns:
Form the substring of this string from the __n1 characters starting at __pos1. Form the substring of __str from the __n2 characters starting at __pos2. Returns an integer < 0 if this substring is ordered before the substring of __str, 0 if their values are equivalent, or > 0 if this substring is ordered after the substring of __str. Determines the effective length rlen of the strings to compare as the smallest of the lengths of the substrings. The function then compares the two strings by calling traits::compare(substring.data(),str.substr(pos2,n2).data(),rlen). If the result of the comparison is nonzero returns it, otherwise the shorter one is ordered first.
Definition at line 1400 of file basic_string.tcc.
Definition at line 3948 of file basic_string.h.
Remove one character.
Parameters:
Returns:
Removes the character at __position from this string. The value of the string doesn't change if an error is thrown.
Definition at line 4648 of file basic_string.h.
Remove a range of characters.
Parameters:
Returns:
Removes the characters in the range [first,last) from this string. The value of the string doesn't change if an error is thrown.
Definition at line 841 of file basic_string.tcc.
Find position of a string.
Parameters:
Returns:
Starting from __pos, searches forward for value of __str within this string. If found, returns the index where it begins. If not found, returns npos.
Definition at line 5192 of file basic_string.h.
Find position of a character not in string.
Parameters:
Returns:
Starting from __pos, searches forward for a character not contained in __str within this string. If found, returns the index where it was found. If not found, returns npos.
Definition at line 5500 of file basic_string.h.
Find position of a character of string.
Parameters:
Returns:
Starting from __pos, searches forward for one of the characters of __str within this string. If found, returns the index where it was found. If not found, returns npos.
Definition at line 5333 of file basic_string.h.
Find last position of a character not in string.
Parameters:
Returns:
Starting from __pos, searches backward for a character not contained in __str within this string. If found, returns the index where it was found. If not found, returns npos.
Definition at line 5582 of file basic_string.h.
Find last position of a character of string.
Parameters:
Returns:
Starting from __pos, searches backward for one of the characters of __str within this string. If found, returns the index where it was found. If not found, returns npos.
Definition at line 5417 of file basic_string.h.
Definition at line 4041 of file basic_string.h.
Definition at line 4052 of file basic_string.h.
Return copy of allocator used to construct this string.
Definition at line 5162 of file basic_string.h.
Insert multiple characters.
Parameters:
Exceptions:
Inserts __n copies of character __c starting at the position referenced by iterator __p. If adding characters causes the length to exceed max_size(), length_error is thrown. The value of the string doesn't change if an error is thrown.
Definition at line 4419 of file basic_string.h.
Insert a range of characters.
Parameters:
Exceptions:
Inserts characters in range [__beg,__end). If adding characters causes the length to exceed max_size(), length_error is thrown. The value of the string doesn't change if an error is thrown.
Definition at line 4436 of file basic_string.h.
Insert an initializer_list of characters.
Parameters:
Exceptions:
Definition at line 4447 of file basic_string.h.
Insert value of a string.
Parameters:
Returns:
Exceptions:
Inserts value of __str starting at __pos1. If adding characters causes the length to exceed max_size(), length_error is thrown. The value of the string doesn't change if an error is thrown.
Definition at line 4467 of file basic_string.h.
Insert a substring.
Parameters:
Returns:
Exceptions:
Starting at pos1, insert __n character of __str beginning with __pos2. If adding characters causes the length to exceed max_size(), length_error is thrown. If __pos1 is beyond the end of this string or __pos2 is beyond the end of __str, out_of_range is thrown. The value of the string doesn't change if an error is thrown.
Definition at line 4489 of file basic_string.h.
Insert one character.
Parameters:
Returns:
Exceptions:
Inserts character __c at position referenced by __p. If adding character causes the length to exceed max_size(), length_error is thrown. If __p is beyond end of string, out_of_range is thrown. The value of the string doesn't change if an error is thrown.
Definition at line 4571 of file basic_string.h.
Returns the number of characters in the string, not including any null-termination.
Definition at line 3841 of file basic_string.h.
Returns the size() of the largest possible string.
Definition at line 3846 of file basic_string.h.
Append a string to this string.
Parameters:
Returns:
Definition at line 4088 of file basic_string.h.
Replace characters with value from another string.
Parameters:
Returns:
Exceptions:
Removes the characters in the range [__pos,__pos+__n) from this string. In place, the value of __str is inserted. If __pos is beyond end of string, out_of_range is thrown. If the length of the result exceeds max_size(), length_error is thrown. The value of the string doesn't change if an error is thrown.
Definition at line 4702 of file basic_string.h.
Replace characters with value from another string.
Parameters:
Returns:
Exceptions:
Removes the characters in the range [__pos1,__pos1 + n) from this string. In place, the value of __str is inserted. If __pos is beyond end of string, out_of_range is thrown. If the length of the result exceeds max_size(), length_error is thrown. The value of the string doesn't change if an error is thrown.
Definition at line 4724 of file basic_string.h.
Replace range of characters with string.
Parameters:
Returns:
Exceptions:
Removes the characters in the range [__i1,__i2). In place, the value of __str is inserted. If the length of result exceeds max_size(), length_error is thrown. The value of the string doesn't change if an error is thrown.
Definition at line 4811 of file basic_string.h.
Replace range of characters with C substring.
Parameters:
Returns:
Exceptions:
Removes the characters in the range [__i1,__i2). In place, the first __n characters of __s are inserted. If the length of result exceeds max_size(), length_error is thrown. The value of the string doesn't change if an error is thrown.
Definition at line 4830 of file basic_string.h.
Replace range of characters with C string.
Parameters:
Returns:
Exceptions:
Removes the characters in the range [__i1,__i2). In place, the characters of __s are inserted. If the length of result exceeds max_size(), length_error is thrown. The value of the string doesn't change if an error is thrown.
Definition at line 4851 of file basic_string.h.
Replace range of characters with multiple characters.
Parameters:
Returns:
Exceptions:
Removes the characters in the range [__i1,__i2). In place, __n copies of __c are inserted. If the length of result exceeds max_size(), length_error is thrown. The value of the string doesn't change if an error is thrown.
Definition at line 4872 of file basic_string.h.
Replace range of characters with range.
Parameters:
Returns:
Exceptions:
Removes the characters in the range [__i1,__i2). In place, characters in the range [__k1,__k2) are inserted. If the length of result exceeds max_size(), length_error is thrown. The value of the string doesn't change if an error is thrown.
Definition at line 4896 of file basic_string.h.
Replace range of characters with initializer_list.
Parameters:
Returns:
Exceptions:
Removes the characters in the range [__i1,__i2). In place, characters in the range [__k1,__k2) are inserted. If the length of result exceeds max_size(), length_error is thrown. The value of the string doesn't change if an error is thrown.
Definition at line 4965 of file basic_string.h.
Attempt to preallocate enough memory for specified number of characters.
Parameters:
Exceptions:
This function attempts to reserve enough memory for the string to hold the specified number of characters. If the number requested is more than max_size(), length_error is thrown.
The advantage of this function is that if optimal code is a necessity and the user can determine the string length that will be required, the user can reserve the memory in advance, and thus prevent a possible reallocation of memory and copying of string data.
Definition at line 952 of file basic_string.tcc.
Find last position of a string.
Parameters:
Returns:
Starting from __pos, searches backward for value of __str within this string. If found, returns the index where it begins. If not found, returns npos.
Definition at line 5254 of file basic_string.h.
Returns the number of characters in the string, not including any null-termination.
Definition at line 3835 of file basic_string.h.
Swap contents with another string.
Parameters:
Exchanges the contents of this string with that of __s in constant time.
Definition at line 969 of file basic_string.tcc.
The list of constant iterators that reference this container.
Definition at line 197 of file safe_base.h.
Referenced by __gnu_debug::_Safe_sequence< map< _Key, _Tp, _Compare, _Allocator > >::_M_transfer_from_if().
The list of mutable iterators that reference this container.
Definition at line 194 of file safe_base.h.
Referenced by __gnu_debug::_Safe_sequence< map< _Key, _Tp, _Compare, _Allocator > >::_M_transfer_from_if().
The container version number. This number may never be 0.
Definition at line 200 of file safe_base.h.
Referenced by __gnu_debug::_Safe_sequence_base::_M_invalidate_all().
Value returned by various member functions when they fail.
Definition at line 3306 of file basic_string.h.
Generated automatically by Doxygen for libstdc++ from the source code.