libstdc++
__gnu_pbds::detail::trie_traits< Key, Mapped, _ATraits, Node_Update, pat_trie_tag, _Alloc > Struct Template Reference

#include <traits.hpp>

Public Types

typedef _ATraits access_traits
 
typedef base_type::_CIter< node, leaf, head, inode, true > const_iterator
 
typedef base_type::_CIter< node, leaf, head, inode, false > const_reverse_iterator
 
typedef base_type::_Head< synth_access_traits, metadatahead
 
typedef base_type::_Inode< synth_access_traits, metadatainode
 
typedef base_type::_Iter< node, leaf, head, inode, true > iterator
 
typedef base_type::_Leaf< synth_access_traits, metadataleaf
 
typedef base_type::_Metadata< metadata_type, _Alloc > metadata
 
typedef trie_node_metadata_dispatch< Key, Mapped, _ATraits, Node_Update, _Alloc >::type metadata_type
 
typedef base_type::_Node_base< synth_access_traits, metadatanode
 
typedef base_type::_Node_citer< node, leaf, head, inode, const_iterator, iterator, _Alloc > node_const_iterator
 
typedef base_type::_Node_iter< node, leaf, head, inode, const_iterator, iterator, _Alloc > node_iterator
 
typedef Node_Update< node_const_iterator, node_iterator, _ATraits, _Alloc > node_update
 
typedef null_node_update< node_const_iterator, node_iterator, _ATraits, _Alloc > * null_node_update_pointer
 
typedef base_type::_Iter< node, leaf, head, inode, false > reverse_iterator
 
typedef __gnu_pbds::detail::synth_access_traits< type_traits, false, access_traits > synth_access_traits
 

Detailed Description

template<typename Key, typename Mapped, typename _ATraits, template< typename Node_CItr, typename Node_Itr, typename Cmp_Fn_, typename _Alloc_ > class Node_Update, typename _Alloc>
struct __gnu_pbds::detail::trie_traits< Key, Mapped, _ATraits, Node_Update, pat_trie_tag, _Alloc >

Specialization.

Definition at line 62 of file pat_trie_/traits.hpp.

Member Typedef Documentation

◆ access_traits

template<typename Key , typename Mapped , typename _ATraits , template< typename Node_CItr, typename Node_Itr, typename Cmp_Fn_, typename _Alloc_ > class Node_Update, typename _Alloc >
typedef _ATraits __gnu_pbds::detail::trie_traits< Key, Mapped, _ATraits, Node_Update, pat_trie_tag, _Alloc >::access_traits

Definition at line 71 of file pat_trie_/traits.hpp.

◆ const_iterator

template<typename Key , typename Mapped , typename _ATraits , template< typename Node_CItr, typename Node_Itr, typename Cmp_Fn_, typename _Alloc_ > class Node_Update, typename _Alloc >
typedef base_type::_CIter<node, leaf, head, inode, true> __gnu_pbds::detail::trie_traits< Key, Mapped, _ATraits, Node_Update, pat_trie_tag, _Alloc >::const_iterator

Definition at line 82 of file pat_trie_/traits.hpp.

◆ const_reverse_iterator

template<typename Key , typename Mapped , typename _ATraits , template< typename Node_CItr, typename Node_Itr, typename Cmp_Fn_, typename _Alloc_ > class Node_Update, typename _Alloc >
typedef base_type::_CIter<node, leaf, head, inode, false> __gnu_pbds::detail::trie_traits< Key, Mapped, _ATraits, Node_Update, pat_trie_tag, _Alloc >::const_reverse_iterator

Definition at line 84 of file pat_trie_/traits.hpp.

◆ head

template<typename Key , typename Mapped , typename _ATraits , template< typename Node_CItr, typename Node_Itr, typename Cmp_Fn_, typename _Alloc_ > class Node_Update, typename _Alloc >
typedef base_type::_Head<synth_access_traits, metadata> __gnu_pbds::detail::trie_traits< Key, Mapped, _ATraits, Node_Update, pat_trie_tag, _Alloc >::head

Definition at line 77 of file pat_trie_/traits.hpp.

◆ inode

template<typename Key , typename Mapped , typename _ATraits , template< typename Node_CItr, typename Node_Itr, typename Cmp_Fn_, typename _Alloc_ > class Node_Update, typename _Alloc >
typedef base_type::_Inode<synth_access_traits, metadata> __gnu_pbds::detail::trie_traits< Key, Mapped, _ATraits, Node_Update, pat_trie_tag, _Alloc >::inode

Definition at line 79 of file pat_trie_/traits.hpp.

◆ iterator

template<typename Key , typename Mapped , typename _ATraits , template< typename Node_CItr, typename Node_Itr, typename Cmp_Fn_, typename _Alloc_ > class Node_Update, typename _Alloc >
typedef base_type::_Iter<node, leaf, head, inode, true> __gnu_pbds::detail::trie_traits< Key, Mapped, _ATraits, Node_Update, pat_trie_tag, _Alloc >::iterator

Definition at line 81 of file pat_trie_/traits.hpp.

◆ leaf

template<typename Key , typename Mapped , typename _ATraits , template< typename Node_CItr, typename Node_Itr, typename Cmp_Fn_, typename _Alloc_ > class Node_Update, typename _Alloc >
typedef base_type::_Leaf<synth_access_traits, metadata> __gnu_pbds::detail::trie_traits< Key, Mapped, _ATraits, Node_Update, pat_trie_tag, _Alloc >::leaf

Definition at line 78 of file pat_trie_/traits.hpp.

◆ metadata

template<typename Key , typename Mapped , typename _ATraits , template< typename Node_CItr, typename Node_Itr, typename Cmp_Fn_, typename _Alloc_ > class Node_Update, typename _Alloc >
typedef base_type::_Metadata<metadata_type, _Alloc> __gnu_pbds::detail::trie_traits< Key, Mapped, _ATraits, Node_Update, pat_trie_tag, _Alloc >::metadata

Definition at line 70 of file pat_trie_/traits.hpp.

◆ metadata_type

template<typename Key , typename Mapped , typename _ATraits , template< typename Node_CItr, typename Node_Itr, typename Cmp_Fn_, typename _Alloc_ > class Node_Update, typename _Alloc >
typedef trie_node_metadata_dispatch<Key,Mapped,_ATraits,Node_Update,_Alloc>::type __gnu_pbds::detail::trie_traits< Key, Mapped, _ATraits, Node_Update, pat_trie_tag, _Alloc >::metadata_type

Definition at line 69 of file pat_trie_/traits.hpp.

◆ node

template<typename Key , typename Mapped , typename _ATraits , template< typename Node_CItr, typename Node_Itr, typename Cmp_Fn_, typename _Alloc_ > class Node_Update, typename _Alloc >
typedef base_type::_Node_base<synth_access_traits, metadata> __gnu_pbds::detail::trie_traits< Key, Mapped, _ATraits, Node_Update, pat_trie_tag, _Alloc >::node

Definition at line 76 of file pat_trie_/traits.hpp.

◆ node_const_iterator

template<typename Key , typename Mapped , typename _ATraits , template< typename Node_CItr, typename Node_Itr, typename Cmp_Fn_, typename _Alloc_ > class Node_Update, typename _Alloc >
typedef base_type::_Node_citer<node, leaf, head, inode, const_iterator, iterator, _Alloc> __gnu_pbds::detail::trie_traits< Key, Mapped, _ATraits, Node_Update, pat_trie_tag, _Alloc >::node_const_iterator

This is an iterator to an iterator: it iterates over nodes, and de-referencing it returns one of the tree's iterators.

Definition at line 88 of file pat_trie_/traits.hpp.

◆ node_iterator

template<typename Key , typename Mapped , typename _ATraits , template< typename Node_CItr, typename Node_Itr, typename Cmp_Fn_, typename _Alloc_ > class Node_Update, typename _Alloc >
typedef base_type::_Node_iter<node, leaf, head, inode, const_iterator, iterator, _Alloc> __gnu_pbds::detail::trie_traits< Key, Mapped, _ATraits, Node_Update, pat_trie_tag, _Alloc >::node_iterator

Definition at line 90 of file pat_trie_/traits.hpp.

◆ node_update

template<typename Key , typename Mapped , typename _ATraits , template< typename Node_CItr, typename Node_Itr, typename Cmp_Fn_, typename _Alloc_ > class Node_Update, typename _Alloc >
typedef Node_Update<node_const_iterator, node_iterator, _ATraits, _Alloc> __gnu_pbds::detail::trie_traits< Key, Mapped, _ATraits, Node_Update, pat_trie_tag, _Alloc >::node_update

Type for node update.

Definition at line 93 of file pat_trie_/traits.hpp.

◆ null_node_update_pointer

template<typename Key , typename Mapped , typename _ATraits , template< typename Node_CItr, typename Node_Itr, typename Cmp_Fn_, typename _Alloc_ > class Node_Update, typename _Alloc >
typedef null_node_update<node_const_iterator, node_iterator, _ATraits, _Alloc>* __gnu_pbds::detail::trie_traits< Key, Mapped, _ATraits, Node_Update, pat_trie_tag, _Alloc >::null_node_update_pointer

Definition at line 95 of file pat_trie_/traits.hpp.

◆ reverse_iterator

template<typename Key , typename Mapped , typename _ATraits , template< typename Node_CItr, typename Node_Itr, typename Cmp_Fn_, typename _Alloc_ > class Node_Update, typename _Alloc >
typedef base_type::_Iter<node, leaf, head, inode, false> __gnu_pbds::detail::trie_traits< Key, Mapped, _ATraits, Node_Update, pat_trie_tag, _Alloc >::reverse_iterator

Definition at line 83 of file pat_trie_/traits.hpp.

◆ synth_access_traits

template<typename Key , typename Mapped , typename _ATraits , template< typename Node_CItr, typename Node_Itr, typename Cmp_Fn_, typename _Alloc_ > class Node_Update, typename _Alloc >
typedef __gnu_pbds::detail::synth_access_traits<type_traits, false, access_traits> __gnu_pbds::detail::trie_traits< Key, Mapped, _ATraits, Node_Update, pat_trie_tag, _Alloc >::synth_access_traits

Type for synthesized traits.

Definition at line 74 of file pat_trie_/traits.hpp.


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