trie_prefix_search_node_update Interface (original) (raw)
A node updater that allows tries to be searched for the range of values that match a certain prefix.
Defined in: trie_policy.hpp
Template Parameters
Parameter | Description | Default Value |
---|---|---|
class Const_Node_Iterator | Const node iterator type. | - |
class Node_Iterator | Node iterator type. | - |
class E_Access_Traits | Comparison functor. | - |
class Allocator | Allocator type. | - |
Public Types and Constants
Key-Type Definitions
Type | Definition | Description |
---|---|---|
key_type | The instantiating container's key type. | Key type. |
const_key_reference | The instantiating container's const key reference type. | Const key reference. |
Policy Definitions
Type | Definition | Description |
---|---|---|
e_access_traits | E_Access_Traits | Element access traits. |
const_e_iterator | typename e_access_traits::const_iterator | Const element iterator. |
allocator | Allocator | Allocator type. |
General Definitions
Type | Definition | Description |
---|---|---|
size_type | typename allocator::size_type | Size type. |
Metadata-Type Definitions
Type | Definition | Description |
---|---|---|
metadata_type | __gnu_pbds::detail::null_node_metadata | Metadata type. |
Iterator Definitions
Type | Definition | Description |
---|---|---|
const_node_iterator | Const_Node_Iterator | Const node iterator type. |
node_iterator | Node_Iterator | Node iterator type. |
const_iterator | typename const_node_iterator::value_type | Const iterator type. |
iterator | typename node_iterator::value_type | Iterator type. |
Public Methods
Find Methods
Method | Description |
---|---|
std::pair< const_iterator, const_iterator> prefix_range (const_key_reference r_key) const | Finds the const iterator range corresponding to all values whose prefixes matchr_key. |
std::pair< iterator, iterator> prefix_range (const_key_reference r_key) | Finds the iterator range corresponding to all values whose prefixes matchr_key. |
std::pair< const_iterator, const_iterator> prefix_range (const_e_iterator b, const_e_iterator e) const | Finds the const iterator range corresponding to all values whose prefixes match [b,e). |
std::pair< iterator, iterator> prefix_range (const_e_iterator b, const_e_iterator e) | Finds the iterator range corresponding to all values whose prefixes match [b,e). |
Protected Methods
Operators
Method | Description |
---|---|
inline void operator() (node_iterator node_it, const_node_iterator end_nd_it) const | Called to update a node's metadata. |
Private Methods
Overrides
Method | Description |
---|---|
virtual const_iterator end () const = 0 | Returns the const iterator associated with the just-after last element. |
virtual iterator end () = 0 | Returns the iterator associated with the just-after last element. |
virtual const_node_iterator node_begin () const = 0 | Returns the const_node_iterator associated with the trie's root node. |
virtual node_iterator node_begin () = 0 | Returns the node_iterator associated with the trie's root node. |
virtual const_node_iterator node_end () const = 0 | Returns the const_node_iterator associated with a just-after leaf node. |
virtual node_iterator node_end () = 0 | Returns the node_iterator associated with a just-after leaf node. |
virtual const e_access_traits & get_e_access_traits () const = 0 | Access to the cmp_fn object. |