__GNU_CXX::THROW_ALLOCATOR_LIMIT(3)

🌸 NAME 🌸

__gnu_cxx::throw_allocator_limit< _Tp > β€” it's an allocator that throws when a limit condition hits, bestie. That's literally the whole job description.

Oh and hey, this lives in the Library Functions Manual, section 3, so you know it's a library function thing and not a command you type into a shell. πŸ’…


✨ SYNOPSIS ✨

#include <throw_allocator.h>

Inherits from __gnu_cxx::throw_allocator_base< _Tp, limit_condition > β€” so it's picking up everything from its parent and then doing its own lil thing on top. Main character energy fr fr. 🫢


πŸ’– Public Types πŸ’–

  • typedef const value_type * const_pointer
  • typedef const value_type & const_reference
  • typedef std::ptrdiff_t difference_type
  • typedef value_type * pointer
  • typedef std::true_type propagate_on_container_move_assignment
  • typedef value_type & reference
  • typedef std::size_t size_type
  • typedef _Tp value_type

That's the whole type wardrobe, no notes, every single one accounted for. πŸŽ€


πŸ¦‹ Public Member Functions πŸ¦‹

  • throw_allocator_limit (const throw_allocator_limit &) noexcept
  • template<typename _Tp1> throw_allocator_limit (const throw_allocator_limit< _Tp1 > &) noexcept
  • pointer address (reference __x) const noexcept
  • pointer allocate (size_type __n, const void *__hint=0)
  • void check (size_type __n)
  • map_alloc_type::iterator check_allocated (void *p, size_t size)
  • void check_allocated (pointer __p, size_type __n)
  • void check_constructed (size_t label)
  • map_construct_type::iterator check_constructed (void *p)
  • void construct (_Up *__p, _Args &&... __args)
  • void deallocate (pointer __p, size_type __n)
  • void destroy (_Up *__p)
  • void erase (void *p, size_t size)
  • void erase_construct (void *p)
  • void insert (void *p, size_t size)
  • void insert_construct (void *p)
  • size_type max_size () const noexcept
  • throw_allocator_limit & operator= (const throw_allocator_limit &)=default

Two constructors (one of them a templated one for _Tp1, so it plays nice across related types), an address, an allocate with a __hint that defaults to 0, all the check-flavored ones, check_allocated, check_constructed, construct, deallocate, destroy, erase, erase_construct, insert, insert_construct, max_size, and a defaulted copy-assignment operator. The whole roster, periodt. πŸ”₯


🌈 Static Public Member Functions 🌈

  • static void check ()
  • static size_t & count ()
  • static size_t get_label ()
  • static size_t & limit ()
  • static void set_label (size_t l)
  • static void set_limit (const size_t __l)
  • static void throw_conditionally ()

Static ones live on the type itself, so you don't need an instance to poke at count(), limit(), the labels, or to yell throw_conditionally(). iykyk. ⭐


πŸ’œ Detailed Description πŸ’œ

template<typename _Tp>
    struct __gnu_cxx::throw_allocator_limit< _Tp >

"Allocator throwing via limit condition." β€” that's the official one-liner, and ngl it's giving exactly what it says on the tin. πŸ’€


πŸ‘‘ Author πŸ‘‘

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


And that's the whole page, bestie!! πŸŽ€ This one came straight out of the libstdc++ manual, section 3 of the Library Functions Manual β€” Doxygen autogenerated it from the source and honestly it ate. Go read throw_allocator.h, mwah, bye. πŸ’–βœ¨

πŸ“¦ where this page comes from
  • arch rolling: gcc 16.2.1+r23+gd564253eb6c8-1 Β· GPL-3.0-or-later WITH GCC-exception-3.1 AND GFDL-1.3-or-later
  • fedora 44: libstdc++-docs 16.0.1-0.10.fc44 Β· GPL-3.0-or-later AND LGPL-3.0-or-later AND (GPL-3.0-or-later WITH GCC-exception-3.1) AND (GPL-3.0-or-later WITH Texinfo-exception) AND (LGPL-2.1-or-later WITH GCC-exception-2.0) AND (GPL-2.0-or-later WITH GCC-exception-2.0) AND (GPL-2.0-or-later WITH GNU-compiler-exception) AND BSL-1.0 AND GFDL-1.3-or-later AND Linux-man-pages-copyleft-2-para AND SunPro AND BSD-1-Clause AND BSD-2-Clause AND BSD-2-Clause-Views AND BSD-3-Clause AND BSD-4-Clause AND BSD-Source-Code AND Zlib AND MIT AND Apache-2.0 AND (Apache-2.0 WITH LLVM-Exception) AND ZPL-2.1 AND ISC AND LicenseRef-Fedora-Public-Domain AND HP-1986 AND curl AND Martin-Birgmeier AND HPND-Markus-Kuhn AND dtoa AND SMLNJ AND AMD-newlib AND OAR AND HPND-merchantability-variant AND HPND-Intel
  • fedora 44: libstdc++-docs 16.2.1-2.fc44
  • fedora 44: libstdc++-docs 16.2.1-3.fc44 Β· GPL-3.0-or-later AND LGPL-3.0-or-later AND (GPL-3.0-or-later WITH GCC-exception-3.1) AND (GPL-3.0-or-later WITH Texinfo-exception) AND (LGPL-2.1-or-later WITH GCC-exception-2.0) AND (GPL-2.0-or-later WITH GCC-exception-2.0) AND (GPL-2.0-or-later WITH GNU-compiler-exception) AND BSL-1.0 AND GFDL-1.3-or-later AND Linux-man-pages-copyleft-2-para AND SunPro AND BSD-1-Clause AND BSD-2-Clause AND BSD-2-Clause-Views AND BSD-3-Clause AND BSD-4-Clause AND BSD-Source-Code AND Zlib AND MIT AND Apache-2.0 AND (Apache-2.0 WITH LLVM-Exception) AND ZPL-2.1 AND ISC AND LicenseRef-Fedora-Public-Domain AND HP-1986 AND curl AND Martin-Birgmeier AND HPND-Markus-Kuhn AND dtoa AND SMLNJ AND AMD-newlib AND OAR AND HPND-merchantability-variant AND HPND-Intel
  • πŸ’– girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms