__GNU_DEBUG::_SAFE_VECTOR(3cxx)

πŸ’– NAME πŸ’–

Okay so this is the manual page for __GNU_DEBUG::_SAFE_VECTOR(3cxx) β€” welcome to the libstdc++ Debug Mode corner of the group chat. 🫢

__gnu_debug::_Safe_vector< _SafeSequence, _BaseSequence > β€” Base class for Debug Mode vector. Periodt.

✨ SYNOPSIS ✨

#include <vector>

Inherited by std::__debug::vector< _Tp, _Allocator >. Slay, that's the inheritance chain.

πŸ›‘οΈ Protected Member Functions πŸ›‘οΈ

These are the protected member functions, bestie β€” no cap, every signature is staying exactly as-is:

  • constexpr _Safe_vector (_Safe_vector &&__x) noexcept β€” the && constructor vibe, marked noexcept. 😌
  • constexpr _Safe_vector (const _Safe_vector &) noexcept β€” the const & constructor vibe, also noexcept.
  • constexpr _Safe_vector (size_type __n) noexcept β€” constructor with a size_type __n, noexcept again.
  • bool _M_requires_reallocation (size_type __elements) const noexcept β€” asks if reallocation is required for __elements, and it's const noexcept.
  • constexpr void _M_update_guaranteed_capacity () noexcept β€” updates the guaranteed capacity, constexpr and noexcept.
  • constexpr _Safe_vector & operator= (_Safe_vector &&__x) noexcept β€” move-assignment operator energy, returns _Safe_vector &.
  • constexpr _Safe_vector & operator= (const _Safe_vector &) noexcept β€” copy-assignment operator energy, returns _Safe_vector &.

πŸŽ€ Protected Attributes πŸŽ€

  • size_type _M_guaranteed_capacity β€” the protected data member holding the guaranteed capacity. Iconic.

πŸ¦‹ Detailed Description πŸ¦‹

Template situation:

template<typename _SafeSequence, typename _BaseSequence>
    class __gnu_debug::_Safe_vector< _SafeSequence, _BaseSequence >

So the class is class __gnu_debug::_Safe_vector< _SafeSequence, _BaseSequence > β€” quoted in the source as β€œBase class for Debug Mode vector.” πŸ¦‹

It adds information about the guaranteed capacity, which is useful for detecting code that relies on non-portable implementation details of the libstdc++ reallocation policy. That's the whole point, iykyk. πŸ’…

🌸 Author 🌸

Generated automatically by Doxygen for libstdc++ from the source code.


Cute sign-off, bestie: source/version is libstdc++, the manual section is 3cxx, and the footer text is libstd__gnu_debug::_..._BaseSequence >(3cxx). The date field isn't present in the supplied footer, so I'm not inventing one β€” keeping the facts safe, fr fr. 🫢✨