__gnu_pbds::trie_prefix_search_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >

Section: C Library Functions (3)
Updated: Wed Apr 17 2019
Page Index
 

NAME

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

 

SYNOPSIS


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

Public Types


typedef access_traits::const_iterator a_const_iterator
Const element iterator.
typedef _ATraits access_traits
Element access traits.
typedef _Alloc allocator_type
_Alloc 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 null_type metadata_type

typedef Node_CItr node_const_iterator

typedef Node_Itr node_iterator

typedef allocator_type::size_type size_type
Size type.  

Public Member Functions


std::pair< const_iterator, const_iterator > prefix_range (key_const_reference) const
Finds the const iterator range corresponding to all values whose prefixes match r_key.
std::pair< iterator, iterator > prefix_range (key_const_reference)
Finds the iterator range corresponding to all values whose prefixes match r_key.
std::pair< const_iterator, const_iterator > prefix_range (a_const_iterator, a_const_iterator) const
Finds the const iterator range corresponding to all values whose prefixes match [b, e).
std::pair< iterator, iterator > prefix_range (a_const_iterator, a_const_iterator)
Finds the iterator range corresponding to all values whose prefixes match [b, e).  

Protected Member Functions


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

Private Types


typedef rebind_v::const_pointer const_pointer

typedef rebind_v::const_reference const_reference

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


it_type end_iterator () const
 

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

Definition at line 155 of file trie_policy.hpp.  

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.

Definition at line 168 of file trie_policy.hpp.  

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.

Definition at line 165 of file trie_policy.hpp.  

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.

Definition at line 171 of file trie_policy.hpp.  

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.

Definition at line 174 of file trie_policy.hpp.  

Member Function Documentation

 

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 [inline], [protected]

Called to update a node's metadata.

Definition at line 139 of file trie_policy.hpp.  

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

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

Definition at line 47 of file trie_policy.hpp.  

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

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

Definition at line 58 of file trie_policy.hpp.  

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

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

Definition at line 69 of file trie_policy.hpp.  

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

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

Definition at line 84 of file trie_policy.hpp.

 

Author

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


 

Index

NAME
SYNOPSIS
Public Types
Public Member Functions
Protected Member Functions
Private Types
Private Member Functions
Static Private Member Functions
Detailed Description
template<typename Node_CItr, typename Node_Itr, typename _ATraits, typename _Alloc>
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
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
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
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
Member Function Documentation
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 [inline], [protected]
template<typename Node_CItr , typename Node_Itr , typename _ATraits , typename _Alloc > std::pair< typename trie_prefix_search_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >::const_iterator, typename trie_prefix_search_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >::const_iterator > __gnu_pbds::trie_prefix_search_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >::prefix_range (key_const_reference r_key) const
template<typename Node_CItr , typename Node_Itr , typename _ATraits , typename _Alloc > std::pair< typename trie_prefix_search_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >::iterator, typename trie_prefix_search_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >::iterator > __gnu_pbds::trie_prefix_search_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >::prefix_range (key_const_reference r_key)
template<typename Node_CItr , typename Node_Itr , typename _ATraits , typename _Alloc > std::pair< typename trie_prefix_search_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >::const_iterator, typename trie_prefix_search_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >::const_iterator > __gnu_pbds::trie_prefix_search_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >::prefix_range (a_const_iterator b, a_const_iterator e) const
template<typename Node_CItr , typename Node_Itr , typename _ATraits , typename _Alloc > std::pair< typename trie_prefix_search_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >::iterator, typename trie_prefix_search_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >::iterator > __gnu_pbds::trie_prefix_search_node_update< Node_CItr, Node_Itr, _ATraits, _Alloc >::prefix_range (a_const_iterator b, a_const_iterator e)
Author