libstdc++: __gnu_pbds::tree< Key, Mapped, Cmp_Fn, Tag, Node_Update, _Alloc (original) (raw)
#include <[assoc_container.hpp](a01247%5Fsource.html)>
Public Member Functions | |
---|---|
tree (const cmp_fn &c) | |
tree (const tree &other) | |
template | |
tree (It first, It last) | |
template | |
tree (It first, It last, const cmp_fn &c) | |
tree & | operator= (const tree &other) |
void | swap (tree &other) |
template<typename Key, typename Mapped, typename Cmp_Fn = std::less, typename Tag = rb_tree_tag, template< typename Node_CItr, typename Node_Itr, typename Cmp_Fn_, typename _Alloc_ > class Node_Update = null_node_update, typename _Alloc = std::allocator>
class __gnu_pbds::tree< Key, Mapped, Cmp_Fn, Tag, Node_Update, _Alloc >
A tree-based container.
Template Parameters
Key | Key type. |
---|---|
Mapped | Map type. |
Cmp_Fn | Comparison functor. |
Tag | Instantiating data structure type, see container_tag. |
Node_Update | Updates tree internal-nodes, restores invariants when invalidated. XXX See design::tree-based-containersnode invariants. |
_Alloc | Allocator type. |
Base tag choices are: ov_tree_tag, rb_tree_tag, splay_tree_tag.
Base is basic_branch.
Definition at line 635 of file assoc_container.hpp.
template<typename Key , typename Mapped , typename Cmp_Fn = std::less, typename Tag = rb_tree_tag, template< typename Node_CItr, typename Node_Itr, typename Cmp_Fn_, typename _Alloc_ > class Node_Update = null_node_update, typename _Alloc = std::allocator>
typedef Cmp_Fn __gnu_pbds::tree< Key, Mapped, Cmp_Fn, Tag, Node_Update, _Alloc >::cmp_fn
◆ node_update
template<typename Key , typename Mapped , typename Tag , typename Node_Update , typename Policy_Tl , typename _Alloc >
◆ tree() [1/5]
template<typename Key , typename Mapped , typename Cmp_Fn = std::less, typename Tag = rb_tree_tag, template< typename Node_CItr, typename Node_Itr, typename Cmp_Fn_, typename _Alloc_ > class Node_Update = null_node_update, typename _Alloc = std::allocator>
__gnu_pbds::tree< Key, Mapped, Cmp_Fn, Tag, Node_Update, _Alloc >::tree ( ) | inline |
---|
◆ tree() [2/5]
template<typename Key , typename Mapped , typename Cmp_Fn = std::less, typename Tag = rb_tree_tag, template< typename Node_CItr, typename Node_Itr, typename Cmp_Fn_, typename _Alloc_ > class Node_Update = null_node_update, typename _Alloc = std::allocator>
Constructor taking some policy objects. r_cmp_fn will be copied by the Cmp_Fn object of the container object.
Definition at line 648 of file assoc_container.hpp.
◆ tree() [3/5]
template<typename Key , typename Mapped , typename Cmp_Fn = std::less, typename Tag = rb_tree_tag, template< typename Node_CItr, typename Node_Itr, typename Cmp_Fn_, typename _Alloc_ > class Node_Update = null_node_update, typename _Alloc = std::allocator>
template
__gnu_pbds::tree< Key, Mapped, Cmp_Fn, Tag, Node_Update, _Alloc >::tree ( 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 655 of file assoc_container.hpp.
◆ tree() [4/5]
template<typename Key , typename Mapped , typename Cmp_Fn = std::less, typename Tag = rb_tree_tag, template< typename Node_CItr, typename Node_Itr, typename Cmp_Fn_, typename _Alloc_ > class Node_Update = null_node_update, typename _Alloc = std::allocator>
template
__gnu_pbds::tree< Key, Mapped, Cmp_Fn, Tag, Node_Update, _Alloc >::tree ( It first, It last, const cmp_fn & c ) | inline |
---|
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. r_cmp_fn will be copied by the cmp_fn object of the container object.
Definition at line 663 of file assoc_container.hpp.
◆ tree() [5/5]
template<typename Key , typename Mapped , typename Cmp_Fn = std::less, typename Tag = rb_tree_tag, template< typename Node_CItr, typename Node_Itr, typename Cmp_Fn_, typename _Alloc_ > class Node_Update = null_node_update, typename _Alloc = std::allocator>
__gnu_pbds::tree< Key, Mapped, Cmp_Fn, Tag, Node_Update, _Alloc >::tree ( const tree< Key, Mapped, Cmp_Fn, Tag, Node_Update, _Alloc > & other) | inline |
---|
◆ ~tree()
template<typename Key , typename Mapped , typename Cmp_Fn = std::less, typename Tag = rb_tree_tag, template< typename Node_CItr, typename Node_Itr, typename Cmp_Fn_, typename _Alloc_ > class Node_Update = null_node_update, typename _Alloc = std::allocator>
◆ operator=()
template<typename Key , typename Mapped , typename Cmp_Fn = std::less, typename Tag = rb_tree_tag, template< typename Node_CItr, typename Node_Itr, typename Cmp_Fn_, typename _Alloc_ > class Node_Update = null_node_update, typename _Alloc = std::allocator>
tree & __gnu_pbds::tree< Key, Mapped, Cmp_Fn, Tag, Node_Update, _Alloc >::operator= ( const tree< Key, Mapped, Cmp_Fn, Tag, Node_Update, _Alloc > & other) | inline |
---|
◆ swap()
template<typename Key , typename Mapped , typename Cmp_Fn = std::less, typename Tag = rb_tree_tag, template< typename Node_CItr, typename Node_Itr, typename Cmp_Fn_, typename _Alloc_ > class Node_Update = null_node_update, typename _Alloc = std::allocator>
void __gnu_pbds::tree< Key, Mapped, Cmp_Fn, Tag, Node_Update, _Alloc >::swap ( tree< Key, Mapped, Cmp_Fn, Tag, Node_Update, _Alloc > & other) | inline |
---|
The documentation for this class was generated from the following file: