libstdc++: __gnu_pbds::trie< Key, Mapped, _ATraits, Tag, Node_Update, _Alloc (original) (raw)

#include <[assoc_container.hpp](a01247%5Fsource.html)>

Public Member Functions
trie (const access_traits &t)
trie (const trie &other)
template
trie (It first, It last)
template
trie (It first, It last, const access_traits &t)
trie & operator= (const trie &other)
void swap (trie &other)

template<typename Key, typename Mapped, typename _ATraits = typename detail::default_trie_access_traits::type, typename Tag = pat_trie_tag, template< typename Node_CItr, typename Node_Itr, typename _ATraits_, typename _Alloc_ > class Node_Update = null_node_update, typename _Alloc = std::allocator>
class __gnu_pbds::trie< Key, Mapped, _ATraits, Tag, Node_Update, _Alloc >

A trie-based container.

Template Parameters

Key Key type.
Mapped Map type.
_ATraits Element access traits.
Tag Instantiating data structure type, see container_tag.
Node_Update Updates trie internal-nodes, restores invariants when invalidated. XXX See design::tree-based-containersnode invariants.
_Alloc Allocator type.

Base tag choice is pat_trie_tag.

Base is basic_branch.

Definition at line 731 of file assoc_container.hpp.

access_traits

template<typename Key , typename Mapped , typename _ATraits = typename detail::default_trie_access_traits::type, typename Tag = pat_trie_tag, template< typename Node_CItr, typename Node_Itr, typename _ATraits_, typename _Alloc_ > class Node_Update = null_node_update, typename _Alloc = std::allocator>

typedef _ATraits __gnu_pbds::trie< Key, Mapped, _ATraits, Tag, Node_Update, _Alloc >::access_traits

template<typename Key , typename Mapped , typename Tag , typename Node_Update , typename Policy_Tl , typename _Alloc >

trie() [1/5]

template<typename Key , typename Mapped , typename _ATraits = typename detail::default_trie_access_traits::type, typename Tag = pat_trie_tag, template< typename Node_CItr, typename Node_Itr, typename _ATraits_, typename _Alloc_ > class Node_Update = null_node_update, typename _Alloc = std::allocator>

__gnu_pbds::trie< Key, Mapped, _ATraits, Tag, Node_Update, _Alloc >::trie ( ) inline

trie() [2/5]

template<typename Key , typename Mapped , typename _ATraits = typename detail::default_trie_access_traits::type, typename Tag = pat_trie_tag, template< typename Node_CItr, typename Node_Itr, typename _ATraits_, typename _Alloc_ > class Node_Update = null_node_update, typename _Alloc = std::allocator>

Constructor taking some policy objects. r_access_traits will be copied by the _ATraits object of the container object.

Definition at line 744 of file assoc_container.hpp.

trie() [3/5]

template<typename Key , typename Mapped , typename _ATraits = typename detail::default_trie_access_traits::type, typename Tag = pat_trie_tag, template< typename Node_CItr, typename Node_Itr, typename _ATraits_, typename _Alloc_ > class Node_Update = null_node_update, typename _Alloc = std::allocator>

template

__gnu_pbds::trie< Key, Mapped, _ATraits, Tag, Node_Update, _Alloc >::trie ( It first, It last ) inline

Constructor taking __iterators to a range of value_types. The value_types between first_it and last_it will be inserted into the container object.

Definition at line 751 of file assoc_container.hpp.

trie() [4/5]

template<typename Key , typename Mapped , typename _ATraits = typename detail::default_trie_access_traits::type, typename Tag = pat_trie_tag, template< typename Node_CItr, typename Node_Itr, typename _ATraits_, typename _Alloc_ > class Node_Update = null_node_update, typename _Alloc = std::allocator>

template

Constructor taking __iterators to a range of value_types and some policy objects. The value_types between first_it and last_it will be inserted into the container object.

Definition at line 758 of file assoc_container.hpp.

trie() [5/5]

template<typename Key , typename Mapped , typename _ATraits = typename detail::default_trie_access_traits::type, typename Tag = pat_trie_tag, template< typename Node_CItr, typename Node_Itr, typename _ATraits_, typename _Alloc_ > class Node_Update = null_node_update, typename _Alloc = std::allocator>

__gnu_pbds::trie< Key, Mapped, _ATraits, Tag, Node_Update, _Alloc >::trie ( const trie< Key, Mapped, _ATraits, Tag, Node_Update, _Alloc > & other) inline

~trie()

template<typename Key , typename Mapped , typename _ATraits = typename detail::default_trie_access_traits::type, typename Tag = pat_trie_tag, template< typename Node_CItr, typename Node_Itr, typename _ATraits_, typename _Alloc_ > class Node_Update = null_node_update, typename _Alloc = std::allocator>

virtual __gnu_pbds::trie< Key, Mapped, _ATraits, Tag, Node_Update, _Alloc >::~trie ( ) inlinevirtual

operator=()

template<typename Key , typename Mapped , typename _ATraits = typename detail::default_trie_access_traits::type, typename Tag = pat_trie_tag, template< typename Node_CItr, typename Node_Itr, typename _ATraits_, typename _Alloc_ > class Node_Update = null_node_update, typename _Alloc = std::allocator>

trie & __gnu_pbds::trie< Key, Mapped, _ATraits, Tag, Node_Update, _Alloc >::operator= ( const trie< Key, Mapped, _ATraits, Tag, Node_Update, _Alloc > & other) inline

swap()

template<typename Key , typename Mapped , typename _ATraits = typename detail::default_trie_access_traits::type, typename Tag = pat_trie_tag, template< typename Node_CItr, typename Node_Itr, typename _ATraits_, typename _Alloc_ > class Node_Update = null_node_update, typename _Alloc = std::allocator>

void __gnu_pbds::trie< Key, Mapped, _ATraits, Tag, Node_Update, _Alloc >::swap ( trie< Key, Mapped, _ATraits, Tag, Node_Update, _Alloc > & other) inline

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