libstdc++: __gnu_pbds::trie_order_statistics_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc > Class Template Reference

libstdc++

__gnu_pbds::trie_order_statistics_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc > Class Template Referenceabstract

`#include <trie_policy.hpp>`

Inheritance diagram for __gnu_pbds::trie_order_statistics_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >:
[legend]

## Public Types
typedef access_traits::const_iterator | a_const_iterator
typedef _ATraits | access_traits
typedef _Alloc | allocator_type
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)
const_iterator | find_by_order (size_type) const
size_type | order_of_key (key_const_reference) const
size_type | order_of_prefix (a_const_iterator, a_const_iterator) const

## Protected Member Functions
void | operator() (node_iterator, node_const_iterator) const

## Private Member Functions
virtual const_iterator | end () const =0
virtual const access_traits & | get_access_traits () const =0

## Detailed Description

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.

Definition at line 253 of file trie_policy.hpp.

## Member Typedef Documentation

## ◆ a_const_iterator

template<typename Node_CItr, typename Node_Itr, typename _ATraits, typename _Alloc>

typedef access_traits::const_iterator __gnu_pbds::trie_order_statistics_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >::a_const_iterator

Definition at line 260 of file trie_policy.hpp.

## ◆ access_traits

template<typename Node_CItr, typename Node_Itr, typename _ATraits, typename _Alloc>

typedef _ATraits __gnu_pbds::trie_order_statistics_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >::access_traits

Definition at line 259 of file trie_policy.hpp.

## ◆ allocator_type

template<typename Node_CItr, typename Node_Itr, typename _ATraits, typename _Alloc>

typedef _Alloc __gnu_pbds::trie_order_statistics_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >::allocator_type

Definition at line 261 of file trie_policy.hpp.

## ◆ const_iterator

template<typename Node_CItr, typename Node_Itr, typename _ATraits, typename _Alloc>

typedef node_const_iterator::value_type __gnu_pbds::trie_order_statistics_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >::const_iterator

Definition at line 269 of file trie_policy.hpp.

## ◆ iterator

template<typename Node_CItr, typename Node_Itr, typename _ATraits, typename _Alloc>

typedef node_iterator::value_type __gnu_pbds::trie_order_statistics_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >::iterator

Definition at line 270 of file trie_policy.hpp.

## ◆ key_const_reference

template<typename Node_CItr, typename Node_Itr, typename _ATraits, typename _Alloc>

typedef base_type::key_const_reference __gnu_pbds::trie_order_statistics_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >::key_const_reference

Definition at line 264 of file trie_policy.hpp.

## ◆ key_type

template<typename Node_CItr, typename Node_Itr, typename _ATraits, typename _Alloc>

typedef base_type::key_type __gnu_pbds::trie_order_statistics_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >::key_type

Definition at line 263 of file trie_policy.hpp.

## ◆ metadata_type

template<typename Node_CItr, typename Node_Itr, typename _ATraits, typename _Alloc>

typedef size_type __gnu_pbds::trie_order_statistics_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >::metadata_type

Definition at line 266 of file trie_policy.hpp.

## ◆ node_const_iterator

template<typename Node_CItr, typename Node_Itr, typename _ATraits, typename _Alloc>

typedef Node_CItr __gnu_pbds::trie_order_statistics_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >::node_const_iterator

Definition at line 267 of file trie_policy.hpp.

## ◆ node_iterator

template<typename Node_CItr, typename Node_Itr, typename _ATraits, typename _Alloc>

typedef Node_Itr __gnu_pbds::trie_order_statistics_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >::node_iterator

Definition at line 268 of file trie_policy.hpp.

## ◆ size_type

template<typename Node_CItr, typename Node_Itr, typename _ATraits, typename _Alloc>

typedef allocator_type::size_type __gnu_pbds::trie_order_statistics_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >::size_type

Definition at line 262 of file trie_policy.hpp.

## Member Function Documentation

## ◆ find_by_order() [1/2]

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.

Definition at line 46 of file trie_policy.hpp.

## ◆ find_by_order() [2/2]

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.

Definition at line 80 of file trie_policy.hpp.

## ◆ operator()()

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.

Definition at line 153 of file trie_policy.hpp.

## ◆ order_of_key()

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 example, 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.

Definition at line 86 of file trie_policy.hpp.

## ◆ order_of_prefix()

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 example, 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.

Definition at line 97 of file trie_policy.hpp.

The documentation for this class was generated from the following file:

- trie_policy.hpp