__GNU_PBDS::TRIE_ORDER_STATISTICS_NODE_UPDATE(3)
β¨ NAME β¨
hiii bestie, welcome to the Library Functions Manual π and say hello to the main character:
__gnu_pbds::trie_order_statistics_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >
she's a functor updating ranks of entrees β¨ (yes, entrees β that's literally what it says, we are not fixing it, it's iconic)
π SYNOPSIS π
she lives in this header, bestie:
#include <trie_policy.hpp
and she inherits from:
__gnu_pbds::detail::trie_policy_base< Node_CItr, Node_Itr, _ATraits, _Alloc >
π¦ Public Types π¦
a_const_iteratorβtypedef access_traits::const_iterator, the const-iterator vibe of her access traits πΈaccess_traitsβtypedef _ATraits, the access traits she's templated onallocator_typeβtypedef _Alloc, the allocator she's templated onconst_iteratorβtypedef node_const_iterator::value_type, the const iterator typeiteratorβtypedef node_iterator::value_type, the iterator typekey_const_referenceβtypedef base_type::key_const_reference, a const reference to a keykey_typeβtypedef base_type::key_type, the key type itselfmetadata_typeβtypedef size_type, the metadata is literally a size type, periodtnode_const_iteratorβtypedef Node_CItr, the const node iterator she's templated onnode_iteratorβtypedef Node_Itr, the node iterator she's templated onsize_typeβtypedef allocator_type::size_type, the size type borrowed from the allocator
π Public Member Functions π
iterator find_by_order (size_type)β Finds an entry by__order. Returns an iterator to the entry with the__orderorder, or an iterator to the container object's end if order is at least the size of the container object π«Άconst_iterator find_by_order (size_type) constβ same quest, const flavor: finds an entry by__order. Returns aconst_iteratorto the entry with the__orderorder, or aconst_iteratorto the container object's end if order is at least the size of the container object β¨size_type order_of_key (key_const_reference) constβ returns the order of a key within a sequence. For exapmle, ifr_keyis the smallest key, this method will return0; ifr_keyis a key between the smallest and next key, this method will return1; ifr_keyis a key larger than the largest key, this method will return the size ofr_cπsize_type order_of_prefix (a_const_iterator, a_const_iterator) constβ returns the order of a prefix within a sequence. For exapmle, if[b, e]is the smallest prefix, this method will return0; ifr_keyis a key between the smallest and next key, this method will return1; ifr_keyis a key larger than the largest key, this method will return the size ofr_cπ
ngl "exapmle" is in the original and I refuse to gaslight you about it. she's quirky, we love her π
π¦ Protected Member Functions π¦
void operator() (node_iterator, node_const_iterator) constβ Updates the rank of a node through a node_iteratornode_it;end_nd_itis the end node iterator π
π Private Member Functions π
virtual const_iterator end () const =0β pure virtual, she's not implementing this one, it's giving "you do it" πvirtual const access_traits & get_access_traits () const =0β also pure virtual, also "you do it", and she wants a const reference back π
π Detailed Description π
the template situation, verbatim, no notes:
template<typename Node_CItr, typename Node_Itr, typename _ATraits, typename _Alloc>
class __gnu_pbds::trie_order_statistics_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >
"Functor updating ranks of entrees." β that's the whole detailed description bestie, she said what she said π¦
π Member Function Documentation π
β find_by_order (non-const, [inline])
template<typename Node_CItr, typename Node_Itr, typename _ATraits, typename _Alloc>
trie_order_statistics_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >::iterator
__gnu_pbds::trie_order_statistics_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >::find_by_order (size_type order) [inline]
Finds an entry by __order. Returns an iterator to the entry with the __order order, or an iterator to the container object's end if order is at least the size of the container object πΈ
β find_by_order (const, [inline])
template<typename Node_CItr, typename Node_Itr, typename _ATraits, typename _Alloc>
trie_order_statistics_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >::const_iterator
__gnu_pbds::trie_order_statistics_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >::find_by_order (size_type order) const [inline]
Finds an entry by __order. Returns a const_iterator to the entry with the __order order, or a const_iterator to the container object's end if order is at least the size of the container object β¨
β operator() ([inline], [protected])
template<typename Node_CItr, typename Node_Itr, typename _ATraits, typename _Alloc>
void __gnu_pbds::trie_order_statistics_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >::operator() (node_iterator nd_it, node_const_iterator ) const [inline], [protected]
Updates the rank of a node through a node_iterator node_it; end_nd_it is the end node iterator π (yes, the parameter is called nd_it in the signature and node_it in the prose. she contains multitudes.)
β order_of_key ([inline])
template<typename Node_CItr, typename Node_Itr, typename _ATraits, typename _Alloc>
trie_order_statistics_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >::size_type
__gnu_pbds::trie_order_statistics_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >::order_of_key (key_const_reference r_key) const [inline]
Returns the order of a key within a sequence. For exapmle, if r_key is the smallest key, this method will return 0; if r_key is a key between the smallest and next key, this method will return 1; if r_key is a key larger than the largest key, this method will return the size of r_c π
β order_of_prefix ([inline])
template<typename Node_CItr, typename Node_Itr, typename _ATraits, typename _Alloc>
trie_order_statistics_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >::size_type
__gnu_pbds::trie_order_statistics_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >::order_of_prefix (a_const_iterator b, a_const_iterator e) const [inline]
Returns the order of a prefix within a sequence. For exapmle, if [b, e] is the smallest prefix, this method will return 0; if r_key is a key between the smallest and next key, this method will return 1; if r_key is a key larger than the largest key, this method will return the size of r_c π
π Author π
Generated automatically by Doxygen for libstdc++ from the source code. not a human, just a little robot doing her best π§
okay that's the whole page bestie, no cap, every single typedef, flag, iterator and r_c accounted for π this libstdc++ page was brought to you by Doxygen (the automatic generation icon) β go forth and order your keys, you absolute queen πβ¨
π¦ where this page comes from
- arch rolling: gcc 16.2.1+r23+gd564253eb6c8-1 Β· GPL-3.0-or-later WITH GCC-exception-3.1 AND GFDL-1.3-or-later
- centos-stream 10: gcc-toolset-15-libstdc++-docs 15.2.1-8.1.el10 Β· GPL-3.0-or-later AND LGPL-3.0-or-later AND (GPL-3.0-or-later WITH GCC-exception-3.1) AND (GPL-3.0-or-later WITH Texinfo-exception) AND (LGPL-2.1-or-later WITH GCC-exception-2.0) AND (GPL-2.0-or-later WITH GCC-exception-2.0) AND (GPL-2.0-or-later WITH GNU-compiler-exception) AND BSL-1.0 AND GFDL-1.3-or-later AND Linux-man-pages-copyleft-2-para AND SunPro AND BSD-1-Clause AND BSD-2-Clause AND BSD-2-Clause-Views AND BSD-3-Clause AND BSD-4-Clause AND BSD-Source-Code AND Zlib AND MIT AND Apache-2.0 AND (Apache-2.0 WITH LLVM-Exception) AND ZPL-2.1 AND ISC AND LicenseRef-Fedora-Public-Domain AND HP-1986 AND curl AND Martin-Birgmeier AND HPND-Markus-Kuhn AND dtoa AND SMLNJ AND AMD-newlib AND OAR AND HPND-merchantability-variant AND HPND-Intel
- centos-stream 10: gcc-toolset-16-libstdc++-docs 16.2.1-1.3.el10 Β· GPL-3.0-or-later AND LGPL-3.0-or-later AND (GPL-3.0-or-later WITH GCC-exception-3.1) AND (GPL-3.0-or-later WITH Texinfo-exception) AND (LGPL-2.1-or-later WITH GCC-exception-2.0) AND (GPL-2.0-or-later WITH GCC-exception-2.0) AND (GPL-2.0-or-later WITH GNU-compiler-exception) AND BSL-1.0 AND GFDL-1.3-or-later AND Linux-man-pages-copyleft-2-para AND SunPro AND BSD-1-Clause AND BSD-2-Clause AND BSD-2-Clause-Views AND BSD-3-Clause AND BSD-4-Clause AND BSD-Source-Code AND Zlib AND MIT AND Apache-2.0 AND (Apache-2.0 WITH LLVM-Exception) AND ZPL-2.1 AND ISC AND LicenseRef-Fedora-Public-Domain AND HP-1986 AND curl AND Martin-Birgmeier AND HPND-Markus-Kuhn AND dtoa AND SMLNJ AND AMD-newlib AND OAR AND HPND-merchantability-variant AND HPND-Intel
- centos-stream 10: libstdc++-docs 14.4.1-4.el10 Β· GPL-3.0-or-later AND LGPL-3.0-or-later AND (GPL-3.0-or-later WITH GCC-exception-3.1) AND (GPL-3.0-or-later WITH Texinfo-exception) AND (LGPL-2.1-or-later WITH GCC-exception-2.0) AND (GPL-2.0-or-later WITH GCC-exception-2.0) AND (GPL-2.0-or-later WITH GNU-compiler-exception) AND BSL-1.0 AND GFDL-1.3-or-later AND Linux-man-pages-copyleft-2-para AND SunPro AND BSD-1-Clause AND BSD-2-Clause AND BSD-2-Clause-Views AND BSD-3-Clause AND BSD-4-Clause AND BSD-Source-Code AND Zlib AND MIT AND Apache-2.0 AND (Apache-2.0 WITH LLVM-Exception) AND ZPL-2.1 AND ISC AND LicenseRef-Fedora-Public-Domain AND HP-1986 AND curl AND Martin-Birgmeier AND HPND-Markus-Kuhn AND dtoa AND SMLNJ AND AMD-newlib AND OAR AND HPND-merchantability-variant AND HPND-Intel
- fedora 43: libstdc++-docs 15.2.1-2.fc43 Β· GPL-3.0-or-later AND LGPL-3.0-or-later AND (GPL-3.0-or-later WITH GCC-exception-3.1) AND (GPL-3.0-or-later WITH Texinfo-exception) AND (LGPL-2.1-or-later WITH GCC-exception-2.0) AND (GPL-2.0-or-later WITH GCC-exception-2.0) AND (GPL-2.0-or-later WITH GNU-compiler-exception) AND BSL-1.0 AND GFDL-1.3-or-later AND Linux-man-pages-copyleft-2-para AND SunPro AND BSD-1-Clause AND BSD-2-Clause AND BSD-2-Clause-Views AND BSD-3-Clause AND BSD-4-Clause AND BSD-Source-Code AND Zlib AND MIT AND Apache-2.0 AND (Apache-2.0 WITH LLVM-Exception) AND ZPL-2.1 AND ISC AND LicenseRef-Fedora-Public-Domain AND HP-1986 AND curl AND Martin-Birgmeier AND HPND-Markus-Kuhn AND dtoa AND SMLNJ AND AMD-newlib AND OAR AND HPND-merchantability-variant AND HPND-Intel
- fedora 43: libstdc++-docs 15.3.1-1.fc43 Β· GPL-3.0-or-later AND LGPL-3.0-or-later AND (GPL-3.0-or-later WITH GCC-exception-3.1) AND (GPL-3.0-or-later WITH Texinfo-exception) AND (LGPL-2.1-or-later WITH GCC-exception-2.0) AND (GPL-2.0-or-later WITH GCC-exception-2.0) AND (GPL-2.0-or-later WITH GNU-compiler-exception) AND BSL-1.0 AND GFDL-1.3-or-later AND Linux-man-pages-copyleft-2-para AND SunPro AND BSD-1-Clause AND BSD-2-Clause AND BSD-2-Clause-Views AND BSD-3-Clause AND BSD-4-Clause AND BSD-Source-Code AND Zlib AND MIT AND Apache-2.0 AND (Apache-2.0 WITH LLVM-Exception) AND ZPL-2.1 AND ISC AND LicenseRef-Fedora-Public-Domain AND HP-1986 AND curl AND Martin-Birgmeier AND HPND-Markus-Kuhn AND dtoa AND SMLNJ AND AMD-newlib AND OAR AND HPND-merchantability-variant AND HPND-Intel
- fedora 44: libstdc++-docs 16.0.1-0.10.fc44 Β· GPL-3.0-or-later AND LGPL-3.0-or-later AND (GPL-3.0-or-later WITH GCC-exception-3.1) AND (GPL-3.0-or-later WITH Texinfo-exception) AND (LGPL-2.1-or-later WITH GCC-exception-2.0) AND (GPL-2.0-or-later WITH GCC-exception-2.0) AND (GPL-2.0-or-later WITH GNU-compiler-exception) AND BSL-1.0 AND GFDL-1.3-or-later AND Linux-man-pages-copyleft-2-para AND SunPro AND BSD-1-Clause AND BSD-2-Clause AND BSD-2-Clause-Views AND BSD-3-Clause AND BSD-4-Clause AND BSD-Source-Code AND Zlib AND MIT AND Apache-2.0 AND (Apache-2.0 WITH LLVM-Exception) AND ZPL-2.1 AND ISC AND LicenseRef-Fedora-Public-Domain AND HP-1986 AND curl AND Martin-Birgmeier AND HPND-Markus-Kuhn AND dtoa AND SMLNJ AND AMD-newlib AND OAR AND HPND-merchantability-variant AND HPND-Intel
- fedora 44: libstdc++-docs 16.2.1-2.fc44
- fedora 44: libstdc++-docs 16.2.1-3.fc44 Β· GPL-3.0-or-later AND LGPL-3.0-or-later AND (GPL-3.0-or-later WITH GCC-exception-3.1) AND (GPL-3.0-or-later WITH Texinfo-exception) AND (LGPL-2.1-or-later WITH GCC-exception-2.0) AND (GPL-2.0-or-later WITH GCC-exception-2.0) AND (GPL-2.0-or-later WITH GNU-compiler-exception) AND BSL-1.0 AND GFDL-1.3-or-later AND Linux-man-pages-copyleft-2-para AND SunPro AND BSD-1-Clause AND BSD-2-Clause AND BSD-2-Clause-Views AND BSD-3-Clause AND BSD-4-Clause AND BSD-Source-Code AND Zlib AND MIT AND Apache-2.0 AND (Apache-2.0 WITH LLVM-Exception) AND ZPL-2.1 AND ISC AND LicenseRef-Fedora-Public-Domain AND HP-1986 AND curl AND Martin-Birgmeier AND HPND-Markus-Kuhn AND dtoa AND SMLNJ AND AMD-newlib AND OAR AND HPND-merchantability-variant AND HPND-Intel
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms