__GNU_PBDS::DETAIL::BIN_SEARCH_TREE_NODE_IT_(3cxx)

πŸ’– NAME πŸ’–

okay so bestie, this whole page is about __gnu_pbds::detail::bin_search_tree_node_it_< Node, Const_Iterator, Iterator, _Alloc > β€” and what is it? it's a Node iterator. that's it. that's the whole identity. main character energy from start to finish ✨

(quick vibe check: this is a libstdc++ page, manual section 3cxx β€” hold that thought, we're circling back at the end 🫢)


🌈 SYNOPSIS 🌈

#include <node_iterators.hpp>

it inherits from __gnu_pbds::detail::bin_search_tree_const_node_it_< Node, Const_Iterator, Iterator, _Alloc >. yes, it's giving "everything i have, i got from my parent" πŸ’…

πŸŽ€ Public Types πŸŽ€

  • typedef Iterator const_reference β€” Iterator's __const reference type.
  • typedef trivial_iterator_difference_type difference_type β€” the Difference type, lowkey self-explanatory.
  • typedef trivial_iterator_tag iterator_category β€” the Category. iconic behavior.
  • typedef rebind_traits< _Alloc, metadata_type >::const_reference metadata_const_reference β€” the Const metadata reference type.
  • typedef Node::metadata_type metadata_type β€” the Metadata type. it's literally metadata 😭
  • typedef Iterator reference β€” Iterator's reference type.
  • typedef Iterator value_type β€” Iterator's value type.

πŸ¦‹ Public Member Functions πŸ¦‹

  • bin_search_tree_node_it_ (const node_pointer p_nd=0) β€” the constructor, no notes, no drama.
  • bin_search_tree_node_it_< Node, Const_Iterator, Iterator, _Alloc > get_l_child () const β€” Returns the node iterator associated with the left node.
  • metadata_const_reference get_metadata () const β€” Metadata access. periodt.
  • bin_search_tree_node_it_< Node, Const_Iterator, Iterator, _Alloc > get_r_child () const β€” Returns the node iterator associated with the right node.
  • bool operator!= (const bin_search_tree_const_node_it_< Node, Const_Iterator, Iterator, _Alloc > &other) const β€” Compares (negatively) to a different iterator object.
  • Iterator operator* () const β€” Access.
  • bool operator== (const bin_search_tree_const_node_it_< Node, Const_Iterator, Iterator, _Alloc > &other) const β€” Compares to a different iterator object.

🌸 Public Attributes 🌸

  • node_pointer m_p_nd β€” that's the attribute, that's the whole sentence, we love a one-liner 🫢

⭐ Detailed Description ⭐

okay so here's the full declaration, copy it exactly, don't @ me:

template<typename Node, class Const_Iterator, class Iterator, typename _Alloc>
class __gnu_pbds::detail::bin_search_tree_node_it_< Node, Const_Iterator, Iterator, _Alloc >"Node iterator.

(yes, that stray quote really is in there πŸ’€ β€” not me, not my fault, we keep the details fr fr)


πŸ‘‘ Member Typedef Documentation πŸ‘‘

const_reference

template<typename Node , class Const_Iterator , class Iterator , typename _Alloc >
typedef Iterator __gnu_pbds::detail::bin_search_tree_node_it_< Node, Const_Iterator, Iterator, _Alloc >::const_reference

Iterator's __const reference type.

difference_type [inherited]

template<typename Node , class Const_Iterator , class Iterator , typename _Alloc >
typedef trivial_iterator_difference_type __gnu_pbds::detail::bin_search_tree_const_node_it_< Node, Const_Iterator, Iterator, _Alloc >::difference_type

Difference type.

iterator_category [inherited]

template<typename Node , class Const_Iterator , class Iterator , typename _Alloc >
typedef trivial_iterator_tag __gnu_pbds::detail::bin_search_tree_const_node_it_< Node, Const_Iterator, Iterator, _Alloc >::iterator_category

Category.

metadata_const_reference [inherited]

template<typename Node , class Const_Iterator , class Iterator , typename _Alloc >
typedef rebind_traits<_Alloc,metadata_type>::const_reference __gnu_pbds::detail::bin_search_tree_const_node_it_< Node, Const_Iterator, Iterator, _Alloc >::metadata_const_reference

Const metadata reference type.

metadata_type [inherited]

template<typename Node , class Const_Iterator , class Iterator , typename _Alloc >
typedef Node::metadata_type __gnu_pbds::detail::bin_search_tree_const_node_it_< Node, Const_Iterator, Iterator, _Alloc >::metadata_type

Metadata type.

reference

template<typename Node , class Const_Iterator , class Iterator , typename _Alloc >
typedef Iterator __gnu_pbds::detail::bin_search_tree_node_it_< Node, Const_Iterator, Iterator, _Alloc >::reference

Iterator's reference type.

value_type

template<typename Node , class Const_Iterator , class Iterator , typename _Alloc >
typedef Iterator __gnu_pbds::detail::bin_search_tree_node_it_< Node, Const_Iterator, Iterator, _Alloc >::value_type

Iterator's value type.


πŸ”₯ Member Function Documentation πŸ”₯

get_l_child () const [inline]

template<typename Node , class Const_Iterator , class Iterator , typename _Alloc >
bin_search_tree_node_it_< Node, Const_Iterator, Iterator, _Alloc > __gnu_pbds::detail::bin_search_tree_node_it_< Node, Const_Iterator, Iterator, _Alloc >::get_l_child () const

Returns the node iterator associated with the left node.

get_metadata () const [inline], [inherited]

template<typename Node , class Const_Iterator , class Iterator , typename _Alloc >
metadata_const_reference __gnu_pbds::detail::bin_search_tree_const_node_it_< Node, Const_Iterator, Iterator, _Alloc >::get_metadata () const

Metadata access.

get_r_child () const [inline]

template<typename Node , class Const_Iterator , class Iterator , typename _Alloc >
bin_search_tree_node_it_< Node, Const_Iterator, Iterator, _Alloc > __gnu_pbds::detail::bin_search_tree_node_it_< Node, Const_Iterator, Iterator, _Alloc >::get_r_child () const

Returns the node iterator associated with the right node.

operator!= [inline], [inherited]

template<typename Node , class Const_Iterator , class Iterator , typename _Alloc >
bool __gnu_pbds::detail::bin_search_tree_const_node_it_< Node, Const_Iterator, Iterator, _Alloc >::operator!= (const bin_search_tree_const_node_it_< Node, Const_Iterator, Iterator, _Alloc > & other) const

Compares (negatively) to a different iterator object.

operator* () const [inline]

template<typename Node , class Const_Iterator , class Iterator , typename _Alloc >
Iterator __gnu_pbds::detail::bin_search_tree_node_it_< Node, Const_Iterator, Iterator, _Alloc >::operator* () const

Access.

operator== [inline], [inherited]

template<typename Node , class Const_Iterator , class Iterator , typename _Alloc >
bool __gnu_pbds::detail::bin_search_tree_const_node_it_< Node, Const_Iterator, Iterator, _Alloc >::operator== (const bin_search_tree_const_node_it_< Node, Const_Iterator, Iterator, _Alloc > & other) const

Compares to a different iterator object.


🧚 Author 🧚

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


and that's the page, bestie!! πŸ’œ it's a libstdc++ situation, it lives in manual section 3cxx, and honestly? it ate. no crumbs. go be a node iterator about it πŸ’…βœ¨πŸŽ€