__GNU_PBDS::DETAIL::OV_TREE_NODE_CONST_IT_(3cxx)

πŸ’… __gnu_pbds::detail::ov_tree_node_const_it_< Value_Type, Metadata_Type, _Alloc > β€” NAME

okay so bestie, welcome to the 3cxx girlies πŸ’– this is the man page for __gnu_pbds::detail::ov_tree_node_const_it_< Value_Type, Metadata_Type, _Alloc > β€” a Const node reference. that's it, that's the vibe. it's a detail-level class in libstdc++'s PBDS corner of the world, and honestly? she's iconic in a deeply nerdy way πŸŽ€


✨ SYNOPSIS ✨

#include <node_iterators.hpp>

Inherited by __gnu_pbds::detail::ov_tree_node_it_< Value_Type, Metadata_Type, _Alloc >. so yes, the non-const version literally descends from her. main character energy πŸ‘‘

πŸ¦‹ Public Types

  • typedef rebind_traits< _Alloc, typenameremove_const< Value_Type >::type >::const_pointer const_reference β€” the const-reference type, freshly rebound off _Alloc. it's giving "look but don't touch" 🫢
  • typedef trivial_iterator_difference_type difference_type β€” the difference type, and it's a trivial one. lowkey low-maintenance.
  • typedef trivial_iterator_tag iterator_category β€” category: trivial_iterator_tag. not your standard fancy iterator tag, ngl πŸ’€
  • typedef rebind_traits< _Alloc, metadata_type >::const_reference metadata_const_reference β€” const reference to the metadata, via _Alloc rebinding.
  • typedef Metadata_Type metadata_type β€” the metadata type itself. periodt.
  • typedef rebind_traits< _Alloc, typenameremove_const< Value_Type >::type >::const_pointer reference β€” yes, reference here is still a const pointer, because that's her whole thing ✨
  • typedef rebind_traits< _Alloc, Value_Type >::const_pointer value_type β€” and value_type is a const pointer to Value_Type. she said const everywhere, no cap.

🌸 Public Member Functions

  • ov_tree_node_const_it_ (const_pointer p_nd=0, const_pointer p_begin_nd=0, const_pointer p_end_nd=0, const_metadata_pointer p_metadata=0) β€” the constructor, with all four params defaulting to 0. zero-config queen πŸ™ˆ
  • this_type get_l_child () const β€” Returns the node iterator associated with the left node. 🫢
  • metadata_const_reference get_metadata () const β€” hands you the metadata as a metadata_const_reference.
  • this_type get_r_child () const β€” Returns the node iterator associated with the right node. 🫢
  • bool operator!= (const this_type &other) const β€” not-equal check against another this_type.
  • const_reference operator* () const β€” dereference, and what you get back is a const_reference. slay.
  • bool operator== (const this_type &other) const β€” equality check against another this_type.

πŸŽ€ Public Attributes

  • pointer m_p_begin_value β€” a pointer.
  • pointer m_p_end_value β€” another pointer.
  • const_metadata_pointer m_p_metadata β€” a const_metadata_pointer, obviously.
  • pointer m_p_value β€” a pointer. yes bestie, they're all public. yes, we're all looking respectfully. πŸ‘€

πŸ’œ Protected Types

  • typedef rebind_traits< _Alloc, Metadata_Type >::const_pointer const_metadata_pointer β€” the const metadata pointer type.
  • typedef rebind_traits< _Alloc, Value_Type >::const_pointer const_pointer β€” the const pointer type.
  • typedef rebind_traits< _Alloc, Value_Type >::pointer pointer β€” and the regular non-const pointer, for balance.
  • typedef ov_tree_node_const_it_< Value_Type, Metadata_Type, _Alloc > this_type β€” she defines herself as this_type, which is self-care tbh 🧚

⭐ Static Protected Member Functions

  • template<typename Ptr > static Ptr mid_pointer (Ptr p_begin, Ptr p_end) β€” takes p_begin and p_end, gives you back a Ptr. static and protected, so it's for the family only, iykyk.

🌈 Detailed Description

template<typename Value_Type, typename Metadata_Type, typename _Alloc>
    class __gnu_pbds::detail::ov_tree_node_const_it_< Value_Type, Metadata_Type, _Alloc >

Const node reference. that's the whole description. short, sweet, and to the point. we respect a class that knows exactly what she is πŸ’…


πŸ”₯ Member Function Documentation

get_l_child 🌸

template<typename Value_Type , typename Metadata_Type , typename _Alloc >
    this_type __gnu_pbds::detail::ov_tree_node_const_it_< Value_Type, Metadata_Type, _Alloc >::get_l_child () const

[inline] β€” Returns the node iterator associated with the left node. left-side bestie representation, fr fr 🫢

get_r_child πŸ¦‹

template<typename Value_Type , typename Metadata_Type , typename _Alloc >
    this_type __gnu_pbds::detail::ov_tree_node_const_it_< Value_Type, Metadata_Type, _Alloc >::get_r_child () const

[inline] β€” Returns the node iterator associated with the right node. right-side bestie representation, equally valid 🫢


πŸ‘‘ Author

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


and that's the whole page, bestie! πŸ’– this one's a libstdc++ joint, living in section 3cxx, auto-generated by Doxygen straight from the source code β€” no human author to @, so direct your love at the source code itself. mwah πŸŽ€βœ¨πŸ“

πŸ“¦ where this page comes from