STD::__DEBUG::UNORDERED_MULTIMAP(3cxx)

πŸ’– NAME πŸ’–

Ok bestie, this is the 3cxx manual page for std::__debug::unordered_multimap< _Key, _Tp, _Hash, _Pred, _Alloc >. It’s Class std::unordered_multimap with safety/checking/debug instrumentation. That’s the whole assignment, and it’s giving β€œI debug therefore I am.” πŸ’…

✨ SYNOPSIS ✨

First, the include, exactly:

#include <unordered_map>

It inherits both of these, no cap:

Inherits __gnu_debug::_Safe_container< _SafeContainer, _Alloc,
       _SafeBase, _IsCxx11AllocatorAware >, and unordered_multimap< _Key, _Tp,
       std::hash< _Key >, std::equal_to< _Key >, std::allocator< std::pair<
       const _Key, _Tp > > >.

πŸŽ€ Public Types πŸŽ€

Every single one, periodt:

  • typedef _Base::allocator_type allocator_type
  • typedef __gnu_debug::_Safe_iterator< _Base_const_iterator, unordered_multimap > const_iterator
  • typedef __gnu_debug::_Safe_local_iterator< _Base_const_local_iterator, unordered_multimap > const_local_iterator
  • typedef _Base::const_pointer const_pointer
  • typedef _Base::const_reference const_reference
  • typedef _Base::difference_type difference_type
  • typedef _Base::hasher hasher
  • typedef __gnu_debug::_Safe_iterator< _Base_iterator, unordered_multimap > iterator
  • typedef _Base::key_equal key_equal
  • typedef _Base::key_type key_type
  • typedef __gnu_debug::_Safe_local_iterator< _Base_local_iterator, unordered_multimap > local_iterator
  • typedef _Base::mapped_type mapped_type
  • using node_type = typename _Base::node_type
  • typedef _Base::pointer pointer
  • typedef _Base::reference reference
  • typedef _Base::size_type size_type
  • typedef _Base::value_type value_type

πŸ‘‘ Public Member Functions πŸ‘‘

Here’s the whole roster β€” constructors first, then the rest, all in the original order. I’m not skipping a single one, because we don’t do that here:

  • unordered_multimap (_Base_ref __x)
  • template<typename _InputIterator > unordered_multimap (_InputIterator __first, _InputIterator __last, size_type __n, const allocator_type &__a)
  • template<typename _InputIterator > unordered_multimap (_InputIterator __first, _InputIterator __last, size_type __n, const hasher &__hf, const allocator_type &__a)
  • template<typename _InputIterator > unordered_multimap (_InputIterator __first, _InputIterator __last, size_type __n=0, const hasher &__hf=hasher(), const key_equal &__eql=key_equal(), const allocator_type &__a=allocator_type())
  • unordered_multimap (const allocator_type &__a)
  • unordered_multimap (const unordered_multimap &)=default
  • unordered_multimap (const unordered_multimap &__umap, const allocator_type &__a)
  • unordered_multimap (initializer_list< value_type > __l, size_type __n, const allocator_type &__a)
  • unordered_multimap (initializer_list< value_type > __l, size_type __n, const hasher &__hf, const allocator_type &__a)
  • unordered_multimap (initializer_list< value_type > __l, size_type __n=0, const hasher &__hf=hasher(), const key_equal &__eql=key_equal(), const allocator_type &__a=allocator_type())
  • unordered_multimap (size_type __n, const allocator_type &__a)
  • unordered_multimap (size_type __n, const hasher &__hf, const allocator_type &__a)
  • unordered_multimap (size_type __n, const hasher &__hf=hasher(), const key_equal &__eql=key_equal(), const allocator_type &__a=allocator_type())
  • unordered_multimap (unordered_multimap &&)=default
  • unordered_multimap (unordered_multimap &&__umap, const allocator_type &__a) noexcept(noexcept(_Base(std::move(__umap), __a)))
  • const _Base & _M_base () const noexcept
  • _Base & _M_base () noexcept
  • const_iterator begin () const noexcept
  • iterator begin () noexcept
  • local_iterator begin (size_type __b)
  • const_local_iterator begin (size_type __b) const
  • size_type bucket_size (size_type __b) const
  • const_iterator cbegin () const noexcept
  • const_local_iterator cbegin (size_type __b) const
  • const_iterator cend () const noexcept
  • const_local_iterator cend (size_type __b) const
  • void clear () noexcept
  • template<typename... _Args> iterator emplace (_Args &&... __args)
  • template<typename... _Args> iterator emplace_hint (const_iterator __hint, _Args &&... __args)
  • const_iterator end () const noexcept
  • iterator end () noexcept
  • local_iterator end (size_type __b)
  • const_local_iterator end (size_type __b) const
  • template<typename _Kt , typename = std::__has_is_transparent_t<_Hash, _Kt>, typename = std::__has_is_transparent_t<_Pred, _Kt>> std::pair< iterator, iterator > equal_range (const _Kt &__k)
  • template<typename _Kt , typename = std::__has_is_transparent_t<_Hash, _Kt>, typename = std::__has_is_transparent_t<_Pred, _Kt>> std::pair< const_iterator, const_iterator > equal_range (const _Kt &__k) const
  • std::pair< iterator, iterator > equal_range (const key_type &__key)
  • std::pair< const_iterator, const_iterator > equal_range (const key_type &__key) const
  • _Base_iterator erase (_Base_const_iterator __it)
  • size_type erase (const key_type &__key)
  • iterator erase (const_iterator __first, const_iterator __last)
  • iterator erase (const_iterator __it)
  • iterator erase (iterator __it)
  • node_type extract (const key_type &__key)
  • node_type extract (const_iterator __position)
  • template<typename _Kt , typename = std::__has_is_transparent_t<_Hash, _Kt>, typename = std::__has_is_transparent_t<_Pred, _Kt>> iterator find (const _Kt &__k)
  • template<typename _Kt , typename = std::__has_is_transparent_t<_Hash, _Kt>, typename = std::__has_is_transparent_t<_Pred, _Kt>> const_iterator find (const _Kt &__k) const
  • iterator find (const key_type &__key)
  • const_iterator find (const key_type &__key) const
  • template<typename _InputIterator > void insert (_InputIterator __first, _InputIterator __last)
  • template<typename _Pair , typename = typename std::enable_if<std::is_constructible<value_type, _Pair&&>::value>::type> iterator insert (_Pair &&__obj)
  • iterator insert (const value_type &__obj)
  • template<typename _Pair , typename = typename std::enable_if<std::is_constructible<value_type, _Pair&&>::value>::type> iterator insert (const_iterator __hint, _Pair &&__obj)
  • iterator insert (const_iterator __hint, const value_type &__obj)
  • iterator insert (const_iterator __hint, node_type &&__nh)
  • iterator insert (const_iterator __hint, value_type &&__x)
  • iterator insert (node_type &&__nh)
  • void insert (std::initializer_list< value_type > __l)
  • iterator insert (value_type &&__x)
  • float max_load_factor () const noexcept
  • void max_load_factor (float __f)
  • template<typename _H2 , typename _P2 > void merge (unordered_map< _Key, _Tp, _H2, _P2, _Alloc > &&__source)
  • template<typename _H2 , typename _P2 > void merge (unordered_map< _Key, _Tp, _H2, _P2, _Alloc > &__source)
  • template<typename _H2 , typename _P2 > void merge (unordered_multimap< _Key, _Tp, _H2, _P2, _Alloc > &&__source)
  • template<typename _H2 , typename _P2 > void merge (unordered_multimap< _Key, _Tp, _H2, _P2, _Alloc > &__source)
  • unordered_multimap & operator= (const unordered_multimap &)=default
  • unordered_multimap & operator= (initializer_list< value_type > __l)
  • unordered_multimap & operator= (unordered_multimap &&)=default
  • void swap (unordered_multimap &__x) noexcept(noexcept(declval< _Base & >().swap(__x)))

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

  • constexpr void _M_swap (_Safe_container &__x) noexcept

🫢 Friends 🫢

  • template<typename _ItT , typename _SeqT , typename _CatT > class ::__gnu_debug::_Safe_iterator
  • template<typename _ItT , typename _SeqT > class ::__gnu_debug::_Safe_local_iterator

🌈 Detailed Description 🌈

Here’s the template vibe, exactly as written:

template<typename _Key, typename _Tp, typename _Hash = std::hash<_Key>,
       typename _Pred = std::equal_to<_Key>, typename _Alloc =
       std::allocator<std::pair<const _Key, _Tp> >>
       class std::__debug::unordered_multimap< _Key, _Tp, _Hash, _Pred, _Alloc
       >"Class std::unordered_multimap with safety/checking/debug
       instrumentation.

And yes, that trailing >"Class ... is literally what the page shows β€” we don’t edit the source here, bestie. πŸ™ˆ

✍️ Author ✍️

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

So not a human author β€” it’s the Doxygen bot. Respect. πŸ€–βœ¨


Source/version: libstdc++ β€” and the footer vibe is libstdstd::__debug::..._Pred, _Alloc >(3cxx). Date: this page didn’t give one, so I’m not inventing it β€” no cap. πŸ«ΆπŸ’–

πŸ“¦ where this page comes from