__GNU_CXX::HASH_SET(3cxx)

πŸ’– NAME πŸ’–

okay so this is the manual page for __gnu_cxx::hash_set< _Value, _HashFcn, _EqualKey, _Alloc > β€” libstdc++ manual, section 3cxx. That's the whole name bestie, class template and all. ✨


🌸 SYNOPSIS 🌸

First things first, you pull it in like this:

#include <hash_set>

Then the types and members below are the full menu. We are not skipping a single one, because the page said so and I respect the page. 🫢

✨ Public Types ✨

typedef _Ht::allocator_type allocator_type
typedef _Ht::const_iterator const_iterator
typedef _Alloc_traits::const_pointer const_pointer
typedef _Alloc_traits::const_reference const_reference
typedef _Ht::difference_type difference_type
typedef _Ht::hasher hasher
typedef _Ht::const_iterator iterator
typedef _Ht::key_equal key_equal
typedef _Ht::key_type key_type
typedef _Alloc_traits::pointer pointer
typedef _Alloc_traits::reference reference
typedef _Ht::size_type size_type
typedef _Ht::value_type value_type

like, that's the type lineup. iconic. πŸ’…

πŸŽ€ Public Member Functions πŸŽ€

template<class _InputIterator > hash_set (_InputIterator __f,
    _InputIterator __l)
template<class _InputIterator > hash_set (_InputIterator __f,
    _InputIterator __l, size_type __n)
template<class _InputIterator > hash_set (_InputIterator __f,
    _InputIterator __l, size_type __n, const hasher &__hf)
template<class _InputIterator > hash_set (_InputIterator __f,
    _InputIterator __l, size_type __n, const hasher &__hf, const
    key_equal &__eql, const allocator_type &__a=allocator_type())
hash_set (size_type __n)
hash_set (size_type __n, const hasher &__hf)
hash_set (size_type __n, const hasher &__hf, const key_equal &__eql,
    const allocator_type &__a=allocator_type())
iterator begin () const
size_type bucket_count () const
void clear ()
size_type count (const key_type &__key) const
size_type elems_in_bucket (size_type __n) const
bool empty () const
iterator end () const
pair< iterator, iterator > equal_range (const key_type &__key) const
size_type erase (const key_type &__key)
void erase (iterator __f, iterator __l)
void erase (iterator __it)
iterator find (const key_type &__key) const
allocator_type get_allocator () const
hasher hash_funct () const
template<class _InputIterator > void insert (_InputIterator __f,
    _InputIterator __l)
pair< iterator, bool > insert (const value_type &__obj)
pair< iterator, bool > insert_noresize (const value_type &__obj)
key_equal key_eq () const
size_type max_bucket_count () const
size_type max_size () const
void resize (size_type __hint)
size_type size () const
void swap (hash_set &__hs)

the way there are multiple constructors and three whole erase overloads? main character energy fr fr. 😭πŸ”₯

πŸ¦‹ Friends πŸ¦‹

template<class _Val , class _HF , class _EqK , class _Al > bool
    operator== (const hash_set< _Val, _HF, _EqK, _Al > &, const
    hash_set< _Val, _HF, _EqK, _Al > &)

one friend, and it's the equality-operator template. we love a loyal friend. 🫢


πŸ”₯ <orange>Detailed Description</orange> πŸ”₯

okay so the actual class template is:

template<class _Value, class _HashFcn = hash<_Value>, class _EqualKey =
    equal_to<_Value>, class _Alloc = allocator<_Value>>
    class __gnu_cxx::hash_set< _Value, _HashFcn, _EqualKey, _Alloc >"This is
    an SGI extension.

yes bestie, that quote mark is literally glued onto the > in the page. I am not fixing it, I am simply reporting the lore. πŸ’€ And the note itself is exact: This is an SGI extension.

🧚 Todo 🧚

Needs documentation! See http://gcc.gnu.org/onlinedocs/libstdc++/manual/documentation_style.html

that's the whole todo. the page is asking for docs and pointing at the docs-style URL. no cap. 🌈


πŸ‘‘ Author πŸ‘‘

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


that's the page, bestie. the footer is giving source/version libstdc++ and the 3cxx manual tag, and there's literally no date printed on this one β€” so here's your cute sign-off instead: stay hashed, stay iconic, and don't forget the SGI-extension lore. πŸ’–βœ¨πŸŽ€

πŸ“¦ where this page comes from