__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_Allocrebinding.typedef Metadata_Type metadata_typeβ the metadata type itself. periodt.typedef rebind_traits< _Alloc, typenameremove_const< Value_Type >::type >::const_pointer referenceβ yes,referencehere is still a const pointer, because that's her whole thing β¨typedef rebind_traits< _Alloc, Value_Type >::const_pointer value_typeβ andvalue_typeis a const pointer toValue_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 to0. 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 ametadata_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 anotherthis_type.const_reference operator* () constβ dereference, and what you get back is aconst_reference. slay.bool operator== (const this_type &other) constβ equality check against anotherthis_type.
π Public Attributes
pointer m_p_begin_valueβ apointer.pointer m_p_end_valueβ anotherpointer.const_metadata_pointer m_p_metadataβ aconst_metadata_pointer, obviously.pointer m_p_valueβ apointer. 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-constpointer, for balance.typedef ov_tree_node_const_it_< Value_Type, Metadata_Type, _Alloc > this_typeβ she defines herself asthis_type, which is self-care tbh π§
β Static Protected Member Functions
template<typename Ptr > static Ptr mid_pointer (Ptr p_begin, Ptr p_end)β takesp_beginandp_end, gives you back aPtr. 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
- ubuntu noble: libstdc++-14-doc 14-20240412-0ubuntu1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms