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 | List of all members
__gnu_pbds::basic_branch< Key, Mapped, Tag, Node_Update, Policy_Tl, _Alloc > Class Template Reference

#include <ext/pb_ds/assoc_container.hpp>

Inheritance diagram for __gnu_pbds::basic_branch< Key, Mapped, Tag, Node_Update, Policy_Tl, _Alloc >:

Public Types

typedef Node_Update node_update
 

Public Member Functions

virtual ~basic_branch ()
 

Protected Member Functions

 basic_branch ()
 
 basic_branch (const basic_branch &other)
 
template<typename T0 >
 basic_branch (T0 t0)
 
template<typename T0 , typename T1 >
 basic_branch (T0 t0, T1 t1)
 
template<typename T0 , typename T1 , typename T2 >
 basic_branch (T0 t0, T1 t1, T2 t2)
 
template<typename T0 , typename T1 , typename T2 , typename T3 >
 basic_branch (T0 t0, T1 t1, T2 t2, T3 t3)
 
template<typename T0 , typename T1 , typename T2 , typename T3 , typename T4 >
 basic_branch (T0 t0, T1 t1, T2 t2, T3 t3, T4 t4)
 
template<typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 >
 basic_branch (T0 t0, T1 t1, T2 t2, T3 t3, T4 t4, T5 t5)
 
template<typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 >
 basic_branch (T0 t0, T1 t1, T2 t2, T3 t3, T4 t4, T5 t5, T6 t6)
 

Private Types

typedef PB_DS_BRANCH_BASE base_type
 

Detailed Description

template<typename Key, typename Mapped, typename Tag, typename Node_Update, typename Policy_Tl, typename _Alloc>
class __gnu_pbds::basic_branch< Key, Mapped, Tag, Node_Update, Policy_Tl, _Alloc >

A branched, tree-like (tree, trie) container abstraction.

Template Parameters
KeyKey type.
MappedMap type.
TagInstantiating data structure type, see container_tag.
Node_UpdateUpdates nodes, restores invariants.
Policy_TLPolicy typelist.
_AllocAllocator type.

Base is dispatched at compile time via Tag, from the following choices: tree_tag, trie_tag, and their descendants.

Base choices are: detail::ov_tree_map, detail::rb_tree_map, detail::splay_tree_map, and detail::pat_trie_map.

Member Typedef Documentation

template<typename Key , typename Mapped , typename Tag , typename Node_Update , typename Policy_Tl , typename _Alloc >
typedef PB_DS_BRANCH_BASE __gnu_pbds::basic_branch< Key, Mapped, Tag, Node_Update, Policy_Tl, _Alloc >::base_type
private
template<typename Key , typename Mapped , typename Tag , typename Node_Update , typename Policy_Tl , typename _Alloc >
typedef Node_Update __gnu_pbds::basic_branch< Key, Mapped, Tag, Node_Update, Policy_Tl, _Alloc >::node_update

Constructor & Destructor Documentation

template<typename Key , typename Mapped , typename Tag , typename Node_Update , typename Policy_Tl , typename _Alloc >
virtual __gnu_pbds::basic_branch< Key, Mapped, Tag, Node_Update, Policy_Tl, _Alloc >::~basic_branch ( )
inlinevirtual
564 { }
template<typename Key , typename Mapped , typename Tag , typename Node_Update , typename Policy_Tl , typename _Alloc >
__gnu_pbds::basic_branch< Key, Mapped, Tag, Node_Update, Policy_Tl, _Alloc >::basic_branch ( )
inlineprotected
567 { }
template<typename Key , typename Mapped , typename Tag , typename Node_Update , typename Policy_Tl , typename _Alloc >
__gnu_pbds::basic_branch< Key, Mapped, Tag, Node_Update, Policy_Tl, _Alloc >::basic_branch ( const basic_branch< Key, Mapped, Tag, Node_Update, Policy_Tl, _Alloc > &  other)
inlineprotected
570  : base_type((const base_type&)other) { }
PB_DS_BRANCH_BASE base_type
Definition: assoc_container.hpp:558
template<typename Key , typename Mapped , typename Tag , typename Node_Update , typename Policy_Tl , typename _Alloc >
template<typename T0 >
__gnu_pbds::basic_branch< Key, Mapped, Tag, Node_Update, Policy_Tl, _Alloc >::basic_branch ( T0  t0)
inlineprotected
573 : base_type(t0) { }
PB_DS_BRANCH_BASE base_type
Definition: assoc_container.hpp:558
template<typename Key , typename Mapped , typename Tag , typename Node_Update , typename Policy_Tl , typename _Alloc >
template<typename T0 , typename T1 >
__gnu_pbds::basic_branch< Key, Mapped, Tag, Node_Update, Policy_Tl, _Alloc >::basic_branch ( T0  t0,
T1  t1 
)
inlineprotected
576 : base_type(t0, t1) { }
PB_DS_BRANCH_BASE base_type
Definition: assoc_container.hpp:558
template<typename Key , typename Mapped , typename Tag , typename Node_Update , typename Policy_Tl , typename _Alloc >
template<typename T0 , typename T1 , typename T2 >
__gnu_pbds::basic_branch< Key, Mapped, Tag, Node_Update, Policy_Tl, _Alloc >::basic_branch ( T0  t0,
T1  t1,
T2  t2 
)
inlineprotected
579 : base_type(t0, t1, t2) { }
PB_DS_BRANCH_BASE base_type
Definition: assoc_container.hpp:558
template<typename Key , typename Mapped , typename Tag , typename Node_Update , typename Policy_Tl , typename _Alloc >
template<typename T0 , typename T1 , typename T2 , typename T3 >
__gnu_pbds::basic_branch< Key, Mapped, Tag, Node_Update, Policy_Tl, _Alloc >::basic_branch ( T0  t0,
T1  t1,
T2  t2,
T3  t3 
)
inlineprotected
583  : base_type(t0, t1, t2, t3) { }
PB_DS_BRANCH_BASE base_type
Definition: assoc_container.hpp:558
template<typename Key , typename Mapped , typename Tag , typename Node_Update , typename Policy_Tl , typename _Alloc >
template<typename T0 , typename T1 , typename T2 , typename T3 , typename T4 >
__gnu_pbds::basic_branch< Key, Mapped, Tag, Node_Update, Policy_Tl, _Alloc >::basic_branch ( T0  t0,
T1  t1,
T2  t2,
T3  t3,
T4  t4 
)
inlineprotected
587  : base_type(t0, t1, t2, t3, t4) { }
PB_DS_BRANCH_BASE base_type
Definition: assoc_container.hpp:558
template<typename Key , typename Mapped , typename Tag , typename Node_Update , typename Policy_Tl , typename _Alloc >
template<typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 >
__gnu_pbds::basic_branch< Key, Mapped, Tag, Node_Update, Policy_Tl, _Alloc >::basic_branch ( T0  t0,
T1  t1,
T2  t2,
T3  t3,
T4  t4,
T5  t5 
)
inlineprotected
592  : base_type(t0, t1, t2, t3, t4, t5) { }
PB_DS_BRANCH_BASE base_type
Definition: assoc_container.hpp:558
template<typename Key , typename Mapped , typename Tag , typename Node_Update , typename Policy_Tl , typename _Alloc >
template<typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 >
__gnu_pbds::basic_branch< Key, Mapped, Tag, Node_Update, Policy_Tl, _Alloc >::basic_branch ( T0  t0,
T1  t1,
T2  t2,
T3  t3,
T4  t4,
T5  t5,
T6  t6 
)
inlineprotected
597  : base_type(t0, t1, t2, t3, t4, t5, t6) { }
PB_DS_BRANCH_BASE base_type
Definition: assoc_container.hpp:558

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