libstdc++
__gnu_pbds::tree_order_statistics_node_update< Node_CItr, Node_Itr, Cmp_Fn, _Alloc > Class Template Reference
Inheritance diagram for __gnu_pbds::tree_order_statistics_node_update< Node_CItr, Node_Itr, Cmp_Fn, _Alloc >:

List of all members.

Public Types

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

const_iterator find_by_order (size_type) const
iterator find_by_order (size_type)
size_type order_of_key (key_const_reference) 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 it_type end ()=0
it_type end_iterator () const

Static Private Member Functions

static key_const_reference extract_key (const_reference r_val)

Detailed Description

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.

Definition at line 64 of file tree_policy.hpp.


Member Function Documentation

template<typename Node_CItr , typename Node_Itr , typename Cmp_Fn , typename _Alloc >
tree_order_statistics_node_update< Node_CItr, Node_Itr, Cmp_Fn, _Alloc >::const_iterator __gnu_pbds::tree_order_statistics_node_update< Node_CItr, Node_Itr, Cmp_Fn, _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 72 of file tree_policy.hpp.

template<typename Node_CItr , typename Node_Itr , typename Cmp_Fn , typename _Alloc >
tree_order_statistics_node_update< Node_CItr, Node_Itr, Cmp_Fn, _Alloc >::iterator __gnu_pbds::tree_order_statistics_node_update< Node_CItr, Node_Itr, Cmp_Fn, _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 45 of file tree_policy.hpp.

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_it,
node_const_iterator  end_nd_it 
) const
inlineprotected

Updates the rank of a node through a node_iterator node_it; end_nd_it is the end node iterator.

Definition at line 108 of file tree_policy.hpp.

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

Definition at line 78 of file tree_policy.hpp.


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