__GNU_PBDS::TREE_ORDER_STATISTICS_NODE_UPDATE(3cxx)

πŸ’– NAME πŸ’–

Okay so this is the 3cxx manual page for __gnu_pbds::tree_order_statistics_node_update< Node_CItr, Node_Itr, Cmp_Fn, _Alloc > β€” Functor updating ranks of entrees. Yes, β€œentrees” is literally the original spelling, bestie 😭 no cap.

✨ SYNOPSIS ✨

#include <tree_policy.hpp>

Inherits __gnu_pbds::detail::branch_policy< Node_CItr, Node_Itr, _Alloc >.

πŸŽ€ Public Types πŸŽ€

The full type roster, in original order β€” don't rearrange, bestie:

  • typedef _Alloc allocator_type
  • typedef Cmp_Fn cmp_fn
  • typedef node_const_iterator::value_type const_iterator
  • typedef node_iterator::value_type iterator
  • typedef base_type::key_const_reference key_const_reference
  • typedef base_type::key_type key_type
  • typedef size_type metadata_type
  • typedef Node_CItr node_const_iterator
  • typedef Node_Itr node_iterator
  • typedef allocator_type::size_type size_type

🌸 Public Member Functions 🌸

  • iterator find_by_order (size_type) β€” 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.
  • const_iterator find_by_order (size_type) const β€” 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.
  • size_type order_of_key (key_const_reference) const β€” 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.

πŸ”’ Protected Member Functions πŸ”’

  • void operator() (node_iterator, node_const_iterator) const β€” Updates the rank of a node through a node_iterator node_it; end_nd_it is the end node iterator.

πŸ¦‹ Detailed Description πŸ¦‹

The class is templated like this β€” yes, the quote after the > is in the original, don't come for me 😭:

template<typename Node_CItr, typename Node_Itr, typename Cmp_Fn, typename
    _Alloc>
class __gnu_pbds::tree_order_statistics_node_update< Node_CItr,
Node_Itr, Cmp_Fn, _Alloc >"Functor updating ranks of entrees.

πŸ’– Member Function Documentation πŸ’–

find_by_order (size_type) β€” the non-const one

template<typename Node_CItr , typename Node_Itr , typename Cmp_Fn , typename
    _Alloc > iterator __gnu_pbds::tree_order_statistics_node_update<
    Node_CItr, Node_Itr, Cmp_Fn, _Alloc >::find_by_order (size_type)
    [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 (size_type) const β€” the const one

template<typename Node_CItr , typename Node_Itr , typename Cmp_Fn , typename
    _Alloc > const_iterator __gnu_pbds::tree_order_statistics_node_update<
    Node_CItr, Node_Itr, Cmp_Fn, _Alloc >::find_by_order (size_type) 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() (node_iterator, node_const_iterator) const β€” protected and inline

template<typename Node_CItr , typename Node_Itr , typename Cmp_Fn , typename
    _Alloc > void __gnu_pbds::tree_order_statistics_node_update< Node_CItr,
    Node_Itr, Cmp_Fn, _Alloc >::operator() (node_iterator,
    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.

order_of_key (key_const_reference) const β€” inline

template<typename Node_CItr , typename Node_Itr , typename Cmp_Fn , typename
    _Alloc > size_type __gnu_pbds::tree_order_statistics_node_update<
    Node_CItr, Node_Itr, Cmp_Fn, _Alloc >::order_of_key
    (key_const_reference) 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.

πŸ‘‘ Author πŸ‘‘

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


Okay bestie, that's the whole page 🫢 The manual name is 3cxx, and the footer/source-version line is libst__gnu_pbds::tre...mp_Fn, _Alloc >(3cxx); no date is printed on this page, so I'm not making one up β€” periodt πŸ’…βœ¨