__GNU_PBDS::DETAIL::PAT_TRIE_BASE__NODE_ITER(3cxx)

πŸ’– NAME πŸ’–

okay bestie, this is the <pink>__gnu_pbds::detail::pat_trie_base::_Node_iter< Node, Leaf, Head, Inode, _CIterator, Iterator, _Alloc ></pink> page from the libstdc++ (3cxx) manual β€” Node iterator. That's the whole name, and yes, it's literally a node iterator. πŸ¦‹βœ¨

✨ SYNOPSIS ✨

#include <pat_trie_base.hpp>

Inherits __gnu_pbds::detail::pat_trie_base::_Node_citer< Node, Leaf, Head, Inode, _CIterator, Iterator, _Alloc >.

🌸 Public Types 🌸

  • typedef value_type const_reference
  • typedef trivial_iterator_difference_type difference_type
  • typedef trivial_iterator_tag iterator_category
  • typedef rebind_traits< _Alloc, metadata_type >::const_reference metadata_const_reference β€” Const metadata reference type. 🫢
  • typedef Node::metadata_type metadata_type β€” Metadata type. πŸ’–
  • typedef value_type reference
  • typedef base_type::size_type size_type
  • typedef Iterator value_type

πŸŽ€ Public Member Functions πŸŽ€

  • _Node_iter (node_pointer p_nd=0, a_const_pointer p_traits=0) β€” constructor vibes, bestie.
  • _Node_iter get_child (size_type i) const β€” Returns a node __iterator to the corresponding node's i-th child. πŸ”Ž
  • metadata_const_reference get_metadata () const β€” Metadata access. ✨
  • size_type num_children () const β€” Returns the number of children in the corresponding node. πŸŽ€
  • bool operator!= (const _Node_citer &other) const β€” Compares content (negatively) to a different iterator object. πŸ™ˆ
  • reference operator* () const β€” Access; returns the iterator* associated with the current leaf. πŸ‘‘
  • bool operator== (const _Node_citer &other) const β€” Compares content to a different iterator object. πŸ’–
  • std::pair< a_const_iterator, a_const_iterator > valid_prefix () const β€” Subtree valid prefix. 🌸

πŸ¦‹ Public Attributes πŸ¦‹

  • node_pointer m_p_nd
  • a_const_pointer m_p_traits

πŸ’œ Protected Types πŸ’œ

  • typedef Node::a_const_iterator a_const_iterator
  • typedef rebind_traits< _Alloc, Inode >::const_pointer inode_const_pointer
  • typedef rebind_traits< _Alloc, Leaf >::const_pointer leaf_const_pointer
  • typedef rebind_traits< _Alloc, Leaf >::pointer leaf_pointer

⭐ Detailed Description ⭐

   template<typename Node, typename Leaf, typename Head, typename Inode,
       typename _CIterator, typename Iterator, typename _Alloc>
       class __gnu_pbds::detail::pat_trie_base::_Node_iter< Node, Leaf, Head,
       Inode, _CIterator, Iterator, _Alloc >"Node iterator.

Yup, that's the whole detailed-description moment: it's a Node iterator, and the class template signature is doing main character energy. πŸ‘‘πŸ’…

πŸ”₯ Member Typedef Documentation πŸ”₯

metadata_const_reference (inherited)

template<typename Node , typename Leaf , typename Head , typename Inode , typename _CIterator , typename Iterator , typename _Alloc > typedef rebind_traits<_Alloc,metadata_type>::const_reference __gnu_pbds::detail::pat_trie_base::_Node_citer< Node, Leaf, Head, Inode, _CIterator, Iterator, _Alloc >::metadata_const_reference [inherited]

Const metadata reference type. 🫢

metadata_type (inherited)

template<typename Node , typename Leaf , typename Head , typename Inode , typename _CIterator , typename Iterator , typename _Alloc > typedef Node::metadata_type __gnu_pbds::detail::pat_trie_base::_Node_citer< Node, Leaf, Head, Inode, _CIterator, Iterator, _Alloc >::metadata_type [inherited]

Metadata type. πŸ’–

🌈 Member Function Documentation 🌈

get_child

template<typename Node , typename Leaf , typename Head , typename Inode , typename _CIterator , typename Iterator , typename _Alloc > _Node_iter __gnu_pbds::detail::pat_trie_base::_Node_iter< Node, Leaf, Head, Inode, _CIterator, Iterator, _Alloc >::get_child (size_type i) const [inline]

Returns a node __iterator to the corresponding node's i-th child. πŸ”Ž References std::advance().

get_metadata (inherited)

template<typename Node , typename Leaf , typename Head , typename Inode , typename _CIterator , typename Iterator , typename _Alloc > metadata_const_reference __gnu_pbds::detail::pat_trie_base::_Node_citer< Node, Leaf, Head, Inode, _CIterator, Iterator, _Alloc >::get_metadata () const [inline],  [inherited]

Metadata access. ✨

num_children (inherited)

template<typename Node , typename Leaf , typename Head , typename Inode , typename _CIterator , typename Iterator , typename _Alloc > size_type __gnu_pbds::detail::pat_trie_base::_Node_citer< Node, Leaf, Head, Inode, _CIterator, Iterator, _Alloc >::num_children () const [inline],  [inherited]

Returns the number of children in the corresponding node. πŸŽ€ References std::distance().

Referenced by __gnu_pbds::detail::pat_trie_base::_Node_citer< Node, Leaf, Head, Inode, _CIterator, Iterator, _Alloc >::operator*(), and __gnu_pbds::detail::pat_trie_base::_Node_iter< Node, Leaf, Head, Inode, _CIterator, Iterator, _Alloc >::operator*().

operator!= (inherited)

template<typename Node , typename Leaf , typename Head , typename Inode , typename _CIterator , typename Iterator , typename _Alloc > bool __gnu_pbds::detail::pat_trie_base::_Node_citer< Node, Leaf, Head, Inode, _CIterator, Iterator, _Alloc >::operator!= (const _Node_citer< Node, Leaf, Head, Inode, _CIterator, Iterator, _Alloc > & other) const [inline],  [inherited]

Compares content (negatively) to a different iterator object. πŸ™ˆ

operator*

template<typename Node , typename Leaf , typename Head , typename Inode , typename _CIterator , typename Iterator , typename _Alloc > reference __gnu_pbds::detail::pat_trie_base::_Node_iter< Node, Leaf, Head, Inode, _CIterator, Iterator, _Alloc >::operator* () const [inline]

Access; returns the iterator* associated with the current leaf. πŸ‘‘

References __gnu_pbds::detail::pat_trie_base::_Node_citer< Node, Leaf, Head, Inode, _CIterator, Iterator, _Alloc >::num_children().

operator== (inherited)

template<typename Node , typename Leaf , typename Head , typename Inode , typename _CIterator , typename Iterator , typename _Alloc > bool __gnu_pbds::detail::pat_trie_base::_Node_citer< Node, Leaf, Head, Inode, _CIterator, Iterator, _Alloc >::operator== (const _Node_citer< Node, Leaf, Head, Inode, _CIterator, Iterator, _Alloc > & other) const [inline],  [inherited]

Compares content to a different iterator object. πŸ’–

valid_prefix (inherited)

template<typename Node , typename Leaf , typename Head , typename Inode , typename _CIterator , typename Iterator , typename _Alloc > std::pair< a_const_iterator, a_const_iterator > __gnu_pbds::detail::pat_trie_base::_Node_citer< Node, Leaf, Head, Inode, _CIterator, Iterator, _Alloc >::valid_prefix () const [inline],  [inherited]

Subtree valid prefix. 🌸

πŸ‘‘ Author πŸ‘‘

Generated automatically by Doxygen for libstdc++ from the source code. πŸ€–βœ¨ (Yes bestie, a robot generated this one, and it ate.)


cute sign-off: the footer says this is the libstdc++ (3cxx) source/version situation, and it doesn't show an actual date β€” so that's the whole footer vibe, no cap. πŸ’–πŸŽ€πŸ«Ά