Scroll to navigation

__gnu_pbds::trie_order_statistics_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >(3) Library Functions Manual __gnu_pbds::trie_order_statistics_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >(3)

NAME

__gnu_pbds::trie_order_statistics_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc > -

SYNOPSIS

Inherits __gnu_pbds::detail::trie_policy_base< Node_CItr, Node_Itr, _ATraits, _Alloc >.

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


const_iterator find_by_order (size_type) const
iterator find_by_order (size_type)
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 Types


typedef Node_Itr::value_type it_type
typedef remove_const< key_type >
::type rckey_type"
typedef remove_const
< value_type >::type rcvalue_type"
typedef _Alloc::template
rebind< rckey_type >::other rebind_k"
typedef _Alloc::template
rebind< rcvalue_type >::other rebind_v"
typedef rebind_v::reference reference
typedef std::iterator_traits
< it_type >::value_type value_type"

Private Member Functions


virtual const_iterator end () const =0
it_type end_iterator () const
virtual const access_traits & get_access_traits () const =0

Static Private Member Functions


static size_type common_prefix_len (node_iterator, e_const_iterator, e_const_iterator, const access_traits &)
static key_const_reference extract_key (const_reference r_val)
static iterator leftmost_it (node_iterator)
static bool less (e_const_iterator, e_const_iterator, e_const_iterator, e_const_iterator, const access_traits &)
static iterator rightmost_it (node_iterator)

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 Function Documentation

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_typeorder) 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 79 of file trie_policy.hpp.

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_typeorder) [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 45 of file trie_policy.hpp.

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_iteratornd_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 152 of file trie_policy.hpp.

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_referencer_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.

Definition at line 85 of file trie_policy.hpp.

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_iteratorb, a_const_iteratore) 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.

Definition at line 96 of file trie_policy.hpp.

Author

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

Tue Sep 29 2020 libstdc++