__GNU_CXX::THROW_ALLOCATOR_RANDOM(3cxx)

πŸ’– NAME πŸ’–

__gnu_cxx::throw_allocator_random< _Tp > β€” Allocator throwing via random condition. This is manual section 3cxx, bestie, and it’s literally the page for the allocator that throws via a random condition. No cap. πŸ’…


✨ SYNOPSIS ✨

#include <throw_allocator.h>

Inherits __gnu_cxx::throw_allocator_base< _Tp, random_condition >.

🌈 Public Types 🌈

  • typedef const value_type * const_pointer β€” the const-pointer alias, slaying as always.
  • typedef const value_type & const_reference β€” the const-reference alias.
  • typedef std::ptrdiff_t difference_type β€” the difference type, using std::ptrdiff_t.
  • typedef value_type * pointer β€” the pointer alias.
  • typedef std::true_type propagate_on_container_move_assignment β€” the move-assignment propagation trait, and it’s std::true_type β€” true is the vibe.
  • typedef value_type & reference β€” the reference alias.
  • typedef std::size_t size_type β€” the size type, using std::size_t.
  • typedef _Tp value_type β€” the value type, aka _Tp.

πŸŽ€ Public Member Functions πŸŽ€

  • throw_allocator_random (const throw_allocator_random &) noexcept β€” copy constructor energy, with noexcept noted.
  • template<typename _Tp1 > throw_allocator_random (const throw_allocator_random< _Tp1 > &) noexcept β€” converting constructor from another _Tp1 version, also noexcept.
  • const_pointer address (const_reference __x) const noexcept β€” const address getter, noexcept and all.
  • pointer address (reference __x) const noexcept β€” non-const address getter, also noexcept.
  • pointer allocate (size_type __n, const void *__hint=0) β€” allocate with __n and the optional __hint=0.
  • void check (size_t label) β€” the check call with a size_t label.
  • void check (size_type __n) β€” the other check call, this one with size_type __n.
  • void check_allocated (pointer __p, size_type __n) β€” check_allocated with pointer __p and size_type __n.
  • map_alloc_type::iterator check_allocated (void *p, size_t size) β€” the map-iterator-returning check_allocated, taking void *p and size_t size.
  • void check_constructed (size_t label) β€” check_constructed with size_t label.
  • map_construct_type::iterator check_constructed (void *p) β€” the map-iterator-returning check_constructed, taking void *p.
  • void construct (_Up *__p, _Args &&... __args) β€” construct into _Up *__p from _Args &&... __args.
  • void deallocate (pointer __p, size_type __n) β€” deallocate pointer __p with size_type __n.
  • void destroy (_Up *__p) β€” destroy _Up *__p.
  • void erase (void *p, size_t size) β€” erase with void *p and size_t size.
  • void erase_construct (void *p) β€” erase_construct with void *p.
  • void insert (void *p, size_t size) β€” insert with void *p and size_t size.
  • void insert_construct (void *p) β€” insert_construct with void *p.
  • size_type max_size () const noexcept β€” max_size, const and noexcept.
  • throw_allocator_random & operator= (const throw_allocator_random &)=default β€” copy assignment, and it’s =default, periodt.
  • void seed (unsigned long __s) β€” seed with unsigned long __s.

πŸ¦‹ Static Public Member Functions πŸ¦‹

  • static void check () β€” static check with no args.
  • static size_t get_label () β€” static get_label, returning size_t.
  • static void set_label (size_t l) β€” static set_label with size_t l.
  • static void set_probability (double __p) β€” static set_probability with double __p.
  • static void throw_conditionally () β€” static throw_conditionally, no args.

πŸ’œ Detailed Description πŸ’œ

The struct in question is exactly this, bestie:

template<typename _Tp>
    struct __gnu_cxx::throw_allocator_random< _Tp >"Allocator throwing via
    random condition.

It’s giving β€œAllocator throwing via random condition.” β€” yes, that quote mark is right there in the source text, I’m not fixing it πŸ’€.


πŸ‘‘ Author πŸ‘‘

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


Sign-off time, bestie: source/version is libstdc++, manual section is 3cxx, and the date is not printed on this page β€” so I’m not inventing one, periodt. πŸ’…βœ¨πŸŽ€