STLdoc
STLdocumentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Types | Public Member Functions | Protected Member Functions | Private Types | Private Member Functions | List of all members
__gnu_pbds::trie_prefix_search_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc > Class Template Referenceabstract

#include <ext/pb_ds/trie_policy.hpp>

Inheritance diagram for __gnu_pbds::trie_prefix_search_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >:

Public Types

typedef base_type::key_type key_type
 
typedef
base_type::key_const_reference 
key_const_reference
 
typedef _ATraits access_traits
 Element access traits. More...
 
typedef
access_traits::const_iterator 
a_const_iterator
 Const element iterator. More...
 
typedef _Alloc allocator_type
 _Alloc type. More...
 
typedef allocator_type::size_type size_type
 Size type. More...
 
typedef null_type metadata_type
 
typedef Node_Itr node_iterator
 
typedef Node_CItr node_const_iterator
 
typedef node_iterator::value_type iterator
 
typedef
node_const_iterator::value_type 
const_iterator
 

Public Member Functions

std::pair< const_iterator,
const_iterator
prefix_range (key_const_reference) const
 
std::pair< iterator, iteratorprefix_range (key_const_reference)
 
std::pair< const_iterator,
const_iterator
prefix_range (a_const_iterator, a_const_iterator) const
 
std::pair< iterator, iteratorprefix_range (a_const_iterator, a_const_iterator)
 

Protected Member Functions

void operator() (node_iterator node_it, node_const_iterator end_nd_it) const
 Called to update a node's metadata. More...
 

Private Types

typedef PB_DS_TRIE_POLICY_BASE base_type
 

Private Member Functions

node_iterator next_child (node_iterator, a_const_iterator, a_const_iterator, node_iterator, const access_traits &)
 
virtual const_iterator end () const =0
 Returns the const iterator associated with the just-after last element. More...
 
virtual iterator end ()=0
 Returns the iterator associated with the just-after last element. More...
 
virtual node_const_iterator node_begin () const =0
 Returns the node_const_iterator associated with the trie's root node. More...
 
virtual node_iterator node_begin ()=0
 Returns the node_iterator associated with the trie's root node. More...
 
virtual node_const_iterator node_end () const =0
 Returns the node_const_iterator associated with a just-after leaf node. More...
 
virtual node_iterator node_end ()=0
 Returns the node_iterator associated with a just-after leaf node. More...
 
virtual const access_traitsget_access_traits () const =0
 Access to the cmp_fn object. More...
 

Detailed Description

template<typename Node_CItr, typename Node_Itr, typename _ATraits, typename _Alloc>
class __gnu_pbds::trie_prefix_search_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >

A node updator that allows tries to be searched for the range of values that match a certain prefix.

Member Typedef Documentation

template<typename Node_CItr , typename Node_Itr , typename _ATraits , typename _Alloc >
typedef access_traits::const_iterator __gnu_pbds::trie_prefix_search_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >::a_const_iterator

Const element iterator.

template<typename Node_CItr , typename Node_Itr , typename _ATraits , typename _Alloc >
typedef _ATraits __gnu_pbds::trie_prefix_search_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >::access_traits

Element access traits.

template<typename Node_CItr , typename Node_Itr , typename _ATraits , typename _Alloc >
typedef _Alloc __gnu_pbds::trie_prefix_search_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >::allocator_type

_Alloc type.

template<typename Node_CItr , typename Node_Itr , typename _ATraits , typename _Alloc >
typedef PB_DS_TRIE_POLICY_BASE __gnu_pbds::trie_prefix_search_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >::base_type
private
template<typename Node_CItr , typename Node_Itr , typename _ATraits , typename _Alloc >
typedef node_const_iterator::value_type __gnu_pbds::trie_prefix_search_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >::const_iterator
template<typename Node_CItr , typename Node_Itr , typename _ATraits , typename _Alloc >
typedef node_iterator::value_type __gnu_pbds::trie_prefix_search_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >::iterator
template<typename Node_CItr , typename Node_Itr , typename _ATraits , typename _Alloc >
typedef base_type::key_const_reference __gnu_pbds::trie_prefix_search_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >::key_const_reference
template<typename Node_CItr , typename Node_Itr , typename _ATraits , typename _Alloc >
typedef base_type::key_type __gnu_pbds::trie_prefix_search_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >::key_type
template<typename Node_CItr , typename Node_Itr , typename _ATraits , typename _Alloc >
typedef null_type __gnu_pbds::trie_prefix_search_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >::metadata_type
template<typename Node_CItr , typename Node_Itr , typename _ATraits , typename _Alloc >
typedef Node_CItr __gnu_pbds::trie_prefix_search_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >::node_const_iterator
template<typename Node_CItr , typename Node_Itr , typename _ATraits , typename _Alloc >
typedef Node_Itr __gnu_pbds::trie_prefix_search_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >::node_iterator
template<typename Node_CItr , typename Node_Itr , typename _ATraits , typename _Alloc >
typedef allocator_type::size_type __gnu_pbds::trie_prefix_search_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >::size_type

Size type.

Member Function Documentation

template<typename Node_CItr , typename Node_Itr , typename _ATraits , typename _Alloc >
virtual const_iterator __gnu_pbds::trie_prefix_search_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >::end ( ) const
privatepure virtual

Returns the const iterator associated with the just-after last element.

template<typename Node_CItr , typename Node_Itr , typename _ATraits , typename _Alloc >
virtual iterator __gnu_pbds::trie_prefix_search_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >::end ( )
privatepure virtual

Returns the iterator associated with the just-after last element.

template<typename Node_CItr , typename Node_Itr , typename _ATraits , typename _Alloc >
virtual const access_traits& __gnu_pbds::trie_prefix_search_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >::get_access_traits ( ) const
privatepure virtual

Access to the cmp_fn object.

template<typename Node_CItr , typename Node_Itr , typename _ATraits , typename _Alloc >
node_iterator __gnu_pbds::trie_prefix_search_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >::next_child ( node_iterator  ,
a_const_iterator  ,
a_const_iterator  ,
node_iterator  ,
const access_traits  
)
private
template<typename Node_CItr , typename Node_Itr , typename _ATraits , typename _Alloc >
virtual node_const_iterator __gnu_pbds::trie_prefix_search_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >::node_begin ( ) const
privatepure virtual

Returns the node_const_iterator associated with the trie's root node.

template<typename Node_CItr , typename Node_Itr , typename _ATraits , typename _Alloc >
virtual node_iterator __gnu_pbds::trie_prefix_search_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >::node_begin ( )
privatepure virtual

Returns the node_iterator associated with the trie's root node.

template<typename Node_CItr , typename Node_Itr , typename _ATraits , typename _Alloc >
virtual node_const_iterator __gnu_pbds::trie_prefix_search_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >::node_end ( ) const
privatepure virtual

Returns the node_const_iterator associated with a just-after leaf node.

template<typename Node_CItr , typename Node_Itr , typename _ATraits , typename _Alloc >
virtual node_iterator __gnu_pbds::trie_prefix_search_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >::node_end ( )
privatepure virtual

Returns the node_iterator associated with a just-after leaf node.

template<typename Node_CItr , typename Node_Itr , typename _ATraits , typename _Alloc >
void __gnu_pbds::trie_prefix_search_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >::operator() ( node_iterator  node_it,
node_const_iterator  end_nd_it 
) const
inlineprotected

Called to update a node's metadata.

template<typename Node_CItr , typename Node_Itr , typename _ATraits , typename _Alloc >
std::pair<const_iterator, const_iterator> __gnu_pbds::trie_prefix_search_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >::prefix_range ( key_const_reference  ) const

Finds the const iterator range corresponding to all values whose prefixes match r_key.

template<typename Node_CItr , typename Node_Itr , typename _ATraits , typename _Alloc >
std::pair<iterator, iterator> __gnu_pbds::trie_prefix_search_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >::prefix_range ( key_const_reference  )

Finds the iterator range corresponding to all values whose prefixes match r_key.

template<typename Node_CItr , typename Node_Itr , typename _ATraits , typename _Alloc >
std::pair<const_iterator, const_iterator> __gnu_pbds::trie_prefix_search_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >::prefix_range ( a_const_iterator  ,
a_const_iterator   
) const

Finds the const iterator range corresponding to all values whose prefixes match [b, e).

template<typename Node_CItr , typename Node_Itr , typename _ATraits , typename _Alloc >
std::pair<iterator, iterator> __gnu_pbds::trie_prefix_search_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >::prefix_range ( a_const_iterator  ,
a_const_iterator   
)

Finds the iterator range corresponding to all values whose prefixes match [b, e).


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