__GNU_PBDS::DETAIL::BINARY_HEAP(3cxx)

πŸ’– NAME πŸ’–

Bestie, welcome to the 3cxx manual page for __gnu_pbds::detail::binary_heap< Value_Type, Cmp_Fn, _Alloc > β€” the GNU PBDS detail binary heap class template. This is the whole page, every typedef and member function included, no crumbs left behind. ✨


πŸ¦‹ SYNOPSIS πŸ¦‹

#include <binary_heap_.hpp>

It inherits from entry_cmp::type, and also from __gnu_pbds::detail::resize_policy< _Alloc::size_type >. Slay. πŸ’…

πŸŽ€ Public Types πŸŽ€

typedef _Alloc allocator_type
typedef Cmp_Fn cmp_fn
typedef cond_dealtor< value_type, _Alloc > cond_dealtor_t
typedef binary_heap_const_iterator_< value_type, entry, simple_value,
    _Alloc > const_iterator
typedef __rebind_v::const_pointer const_pointer
typedef __rebind_v::const_reference const_reference
typedef _Alloc::difference_type difference_type
typedef __conditional_type< simple_value, value_type, pointer >::__type
    entry
typedef rebind_traits< _Alloc, entry >::allocator_type entry_allocator
typedef entry_cmp< Value_Type, Cmp_Fn, _Alloc, is_simple< Value_Type
    >::value >::type entry_cmp
typedef rebind_traits< _Alloc, entry >::pointer entry_pointer
typedef const_iterator iterator
typedef binary_heap_point_const_iterator_< value_type, entry,
    simple_value, _Alloc > point_const_iterator
typedef point_const_iterator point_iterator
typedef __rebind_v::pointer pointer
typedef __rebind_v::reference reference
typedef __gnu_pbds::detail::resize_policy< typename _Alloc::size_type >
    resize_policy
typedef _Alloc::size_type size_type
typedef Value_Type value_type

🌈 Public Member Functions 🌈

binary_heap (const binary_heap &)
binary_heap (const cmp_fn &)
iterator begin ()
const_iterator begin () const
void clear ()
bool empty () const
iterator end ()
const_iterator end () const
void erase (point_iterator)
void erase_at (entry_pointer, size_type, false_type)
void erase_at (entry_pointer, size_type, true_type)
template<typename Pred > size_type erase_if (Pred)
Cmp_Fn & get_cmp_fn ()
const Cmp_Fn & get_cmp_fn () const
size_type get_new_size_for_arbitrary (size_type) const
size_type get_new_size_for_grow () const
size_type get_new_size_for_shrink () const
bool grow_needed (size_type) const
void join (binary_heap &)
size_type max_size () const
void modify (point_iterator, const_reference)
void notify_arbitrary (size_type)
void notify_grow_resize ()
void notify_shrink_resize ()
void pop ()
point_iterator push (const_reference)
bool resize_needed_for_grow (size_type) const
bool resize_needed_for_shrink (size_type) const
bool shrink_needed (size_type) const
size_type size () const
template<typename Pred > void split (Pred, binary_heap &)
void swap (binary_heap &)
void swap (resize_policy< _Alloc::size_type > &)
const_reference top () const

⭐ Static Public Attributes ⭐

static const _Alloc::size_type min_size

🧚 Protected Member Functions 🧚

template<typename It > void copy_from_range (It, It)

🌸 Detailed Description 🌸

The detailed description is literally giving this, so we keep it exactly:

template<typename Value_Type, typename Cmp_Fn, typename _Alloc>
    class __gnu_pbds::detail::binary_heap< Value_Type, Cmp_Fn, _Alloc
    >"Binary heaps composed of resize and compare policies.

Based on CLRS.
Yes, bestie, that >"Binary sequence is exactly what’s printed here. We preserve the quote glitch with love. 🫢

πŸ‘‘ Author πŸ‘‘

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

πŸ’– Sign-off time, bestie: this footer-vibe page comes from libstdc++ and the 3cxx manual, generated automatically by Doxygen from the source code. No date is printed on this footer, so no invented date era. Periodt. πŸŽ€πŸ¦‹πŸŒ·

πŸ“¦ where this page comes from