libstdc++
|
#include <rb_tree>
Inherits std::_Rb_tree< _Key, _Val, _KeyOfValue, _Compare, _Alloc >.
Public Types | |
template<typename _Iter > | |
using | __same_value_type = is_same< value_type, typename iterator_traits< _Iter >::value_type > |
typedef std::_Rb_tree< _Key, _Value, _KeyOfValue, _Compare, _Alloc > | _Base |
template<typename _Compare2 > | |
using | _Compatible_tree = _Rb_tree< _Key, _Val, _KeyOfValue, _Compare2, _Alloc > |
typedef _Base::allocator_type | allocator_type |
typedef _Node_traits::_Const_iterator | const_iterator |
typedef const value_type * | const_pointer |
typedef const value_type & | const_reference |
typedef std::reverse_iterator< const_iterator > | const_reverse_iterator |
typedef ptrdiff_t | difference_type |
using | insert_return_type = _Node_insert_return< __conditional_t< is_same_v< _Key, _Val >, const_iterator, iterator >, node_type > |
typedef _Node_traits::_Iterator | iterator |
typedef _Key | key_type |
using | node_type = _Node_handle< _Key, _Val, _Node_allocator > |
typedef value_type * | pointer |
typedef value_type & | reference |
typedef std::reverse_iterator< iterator > | reverse_iterator |
typedef size_t | size_type |
typedef _Val | value_type |
Public Member Functions | |
rb_tree (const _Compare &__comp=_Compare(), const allocator_type &__a=allocator_type()) | |
bool | __rb_verify () const |
template<typename _Iterator > | |
void | _M_assign_equal (_Iterator, _Iterator) |
template<typename _Iterator > | |
void | _M_assign_unique (_Iterator, _Iterator) |
template<typename _Kt , typename _Req = __has_is_transparent_t<_Compare, _Kt>> | |
size_type | _M_count_tr (const _Kt &__k) const |
template<typename... _Args> | |
iterator | _M_emplace_equal (_Args &&... __args) |
template<typename... _Args> | |
auto | _M_emplace_equal (_Args &&... __args) -> iterator |
template<typename... _Args> | |
iterator | _M_emplace_hint_equal (const_iterator __pos, _Args &&... __args) |
template<typename... _Args> | |
auto | _M_emplace_hint_equal (const_iterator __pos, _Args &&... __args) -> iterator |
template<typename... _Args> | |
iterator | _M_emplace_hint_unique (const_iterator __pos, _Args &&... __args) |
template<typename... _Args> | |
auto | _M_emplace_hint_unique (const_iterator __pos, _Args &&... __args) -> iterator |
template<typename... _Args> | |
pair< iterator, bool > | _M_emplace_unique (_Args &&... __args) |
template<typename... _Args> | |
auto | _M_emplace_unique (_Args &&... __args) -> pair< iterator, bool > |
template<typename _Kt , typename _Req = __has_is_transparent_t<_Compare, _Kt>> | |
pair< iterator, iterator > | _M_equal_range_tr (const _Kt &__k) |
template<typename _Kt , typename _Req = __has_is_transparent_t<_Compare, _Kt>> | |
pair< const_iterator, const_iterator > | _M_equal_range_tr (const _Kt &__k) const |
template<typename _Kt , typename _Req = __has_is_transparent_t<_Compare, _Kt>> | |
iterator | _M_find_tr (const _Kt &__k) |
template<typename _Kt , typename _Req = __has_is_transparent_t<_Compare, _Kt>> | |
const_iterator | _M_find_tr (const _Kt &__k) const |
pair< _Base_ptr, _Base_ptr > | _M_get_insert_equal_pos (const key_type &__k) |
pair< _Base_ptr, _Base_ptr > | _M_get_insert_hint_equal_pos (const_iterator __pos, const key_type &__k) |
pair< _Base_ptr, _Base_ptr > | _M_get_insert_hint_unique_pos (const_iterator __pos, const key_type &__k) |
pair< _Base_ptr, _Base_ptr > | _M_get_insert_unique_pos (const key_type &__k) |
const _Node_allocator & | _M_get_Node_allocator () const noexcept |
_Node_allocator & | _M_get_Node_allocator () noexcept |
template<typename _Arg > | |
iterator | _M_insert_equal (_Arg &&__x) |
template<typename _Arg > | |
iterator | _M_insert_equal_ (const_iterator __pos, _Arg &&__x) |
template<typename _Arg , typename _NodeGen > | |
iterator | _M_insert_equal_ (const_iterator __pos, _Arg &&__x, _NodeGen &) |
template<typename _InputIterator > | |
__enable_if_t< __same_value_type< _InputIterator >::value > | _M_insert_range_equal (_InputIterator __first, _InputIterator __last) |
template<typename _InputIterator > | |
__enable_if_t<!__same_value_type< _InputIterator >::value > | _M_insert_range_equal (_InputIterator __first, _InputIterator __last) |
template<typename _InputIterator > | |
__enable_if_t< __same_value_type< _InputIterator >::value > | _M_insert_range_unique (_InputIterator __first, _InputIterator __last) |
template<typename _InputIterator > | |
__enable_if_t<!__same_value_type< _InputIterator >::value > | _M_insert_range_unique (_InputIterator __first, _InputIterator __last) |
template<typename _Arg > | |
pair< typename _Rb_tree< _Key, _Val, _KeyOfValue, _Compare, _Alloc >::iterator, bool > | _M_insert_unique (_Arg &&__v) |
template<typename _Arg > | |
pair< iterator, bool > | _M_insert_unique (_Arg &&__x) |
template<typename _Arg > | |
iterator | _M_insert_unique_ (const_iterator __pos, _Arg &&__x) |
template<typename _Arg , typename _NodeGen > | |
iterator | _M_insert_unique_ (const_iterator __pos, _Arg &&__x, _NodeGen &) |
template<typename _Kt , typename _Req = __has_is_transparent_t<_Compare, _Kt>> | |
_Base_ptr | _M_lower_bound_tr (const _Kt &__k) const |
template<typename _Compare2 > | |
void | _M_merge_equal (_Compatible_tree< _Compare2 > &__src) noexcept |
template<typename _Compare2 > | |
void | _M_merge_unique (_Compatible_tree< _Compare2 > &__src) noexcept |
iterator | _M_reinsert_node_equal (node_type &&__nh) |
iterator | _M_reinsert_node_hint_equal (const_iterator __hint, node_type &&__nh) |
iterator | _M_reinsert_node_hint_unique (const_iterator __hint, node_type &&__nh) |
insert_return_type | _M_reinsert_node_unique (node_type &&__nh) |
template<typename _Kt , typename _Req = __has_is_transparent_t<_Compare, _Kt>> | |
_Base_ptr | _M_upper_bound_tr (const _Kt &__k) const |
const_iterator | begin () const noexcept |
iterator | begin () noexcept |
void | clear () noexcept |
size_type | count (const key_type &__k) const |
bool | empty () const noexcept |
const_iterator | end () const noexcept |
iterator | end () noexcept |
pair< iterator, iterator > | equal_range (const key_type &__k) |
pair< const_iterator, const_iterator > | equal_range (const key_type &__k) const |
size_type | erase (const key_type &__x) |
_GLIBCXX_ABI_TAG_CXX11 iterator | erase (const_iterator __first, const_iterator __last) |
_GLIBCXX_ABI_TAG_CXX11 iterator | erase (const_iterator __position) |
_GLIBCXX_ABI_TAG_CXX11 iterator | erase (iterator __position) |
node_type | extract (const key_type &__k) |
node_type | extract (const_iterator __pos) |
iterator | find (const key_type &__k) |
const_iterator | find (const key_type &__k) const |
allocator_type | get_allocator () const noexcept |
_Compare | key_comp () const |
iterator | lower_bound (const key_type &__k) |
const_iterator | lower_bound (const key_type &__k) const |
size_type | max_size () const noexcept |
const_reverse_iterator | rbegin () const noexcept |
reverse_iterator | rbegin () noexcept |
const_reverse_iterator | rend () const noexcept |
reverse_iterator | rend () noexcept |
size_type | size () const noexcept |
void | swap (_Rb_tree &__t) noexcept(/*conditional */) |
iterator | upper_bound (const key_type &__k) |
const_iterator | upper_bound (const key_type &__k) const |
Protected Types | |
typedef _Node_traits::_Base_ptr | _Base_ptr |
typedef _Node_traits::_Header_t | _Header_t |
typedef _Node_traits::_Node_ptr | _Node_ptr |
Protected Member Functions | |
_Base_ptr | _M_begin () const noexcept |
_Node_ptr | _M_begin_node () const noexcept |
template<bool _MoveValue, typename _NodeGen > | |
_Node_ptr | _M_clone_node (_Node_ptr __x, _NodeGen &__node_gen) |
template<typename... _Args> | |
void | _M_construct_node (_Node_ptr __node, _Args &&... __args) |
template<typename... _Args> | |
_Node_ptr | _M_create_node (_Args &&... __args) |
void | _M_destroy_node (_Node_ptr __p) noexcept |
void | _M_drop_node (_Node_ptr __p) noexcept |
_Base_ptr | _M_end () const noexcept |
_Node_ptr | _M_get_node () |
_Base_ptr | _M_leftmost () const noexcept |
_Base_ptr & | _M_leftmost () noexcept |
void | _M_put_node (_Node_ptr __p) noexcept |
_Base_ptr | _M_rightmost () const noexcept |
_Base_ptr & | _M_rightmost () noexcept |
_Base_ptr | _M_root () const noexcept |
_Base_ptr & | _M_root () noexcept |
Static Protected Member Functions | |
static const _Key & | _S_key (_Base_ptr __x) |
static const _Key & | _S_key (_Node_ptr __x) |
static const _Key & | _S_key (const _Node &__node) |
static _Base_ptr | _S_left (_Base_ptr __x) noexcept |
static _Node_ptr | _S_left (_Node_ptr __x) |
static _Base_ptr | _S_right (_Base_ptr __x) noexcept |
static _Node_ptr | _S_right (_Node_ptr __x) noexcept |
Protected Attributes | |
_Rb_tree_impl< _Compare > | _M_impl |
This is an SGI extension.
|
inherited |
Definition at line 1718 of file stl_tree.h.
typedef std::_Rb_tree<_Key, _Value, _KeyOfValue, _Compare, _Alloc> __gnu_cxx::rb_tree< _Key, _Value, _KeyOfValue, _Compare, _Alloc >::_Base |
|
protectedinherited |
Definition at line 1038 of file stl_tree.h.
|
inherited |
Definition at line 2201 of file stl_tree.h.
|
protectedinherited |
Definition at line 1294 of file stl_tree.h.
|
protectedinherited |
Definition at line 1039 of file stl_tree.h.
typedef _Base::allocator_type __gnu_cxx::rb_tree< _Key, _Value, _KeyOfValue, _Compare, _Alloc >::allocator_type |
|
inherited |
Definition at line 1449 of file stl_tree.h.
|
inherited |
Definition at line 1146 of file stl_tree.h.
|
inherited |
Definition at line 1148 of file stl_tree.h.
|
inherited |
Definition at line 1452 of file stl_tree.h.
|
inherited |
Definition at line 1150 of file stl_tree.h.
|
inherited |
Definition at line 1456 of file stl_tree.h.
|
inherited |
Definition at line 1448 of file stl_tree.h.
|
inherited |
Definition at line 1143 of file stl_tree.h.
|
inherited |
Definition at line 1455 of file stl_tree.h.
|
inherited |
Definition at line 1145 of file stl_tree.h.
|
inherited |
Definition at line 1147 of file stl_tree.h.
|
inherited |
Definition at line 1451 of file stl_tree.h.
|
inherited |
Definition at line 1149 of file stl_tree.h.
|
inherited |
Definition at line 1144 of file stl_tree.h.
|
inline |
|
inline |
|
inherited |
Definition at line 3189 of file stl_tree.h.
|
inherited |
Definition at line 2414 of file stl_tree.h.
|
inherited |
Definition at line 2401 of file stl_tree.h.
|
inlineprotectednoexceptinherited |
Definition at line 1377 of file stl_tree.h.
|
inlineprotectednoexceptinherited |
Definition at line 1381 of file stl_tree.h.
|
inlineprotectedinherited |
Definition at line 1279 of file stl_tree.h.
|
inlineprotectedinherited |
Definition at line 1232 of file stl_tree.h.
|
inlineinherited |
Definition at line 1944 of file stl_tree.h.
|
inlineprotectedinherited |
Definition at line 1251 of file stl_tree.h.
|
inlineprotectednoexceptinherited |
Definition at line 1260 of file stl_tree.h.
|
inlineprotectednoexceptinherited |
Definition at line 1271 of file stl_tree.h.
|
inherited |
Definition at line 3067 of file stl_tree.h.
|
inherited |
Definition at line 3095 of file stl_tree.h.
|
inherited |
Definition at line 3080 of file stl_tree.h.
|
inherited |
Definition at line 3052 of file stl_tree.h.
|
inlineprotectednoexceptinherited |
Definition at line 1390 of file stl_tree.h.
|
inlineinherited |
Definition at line 1989 of file stl_tree.h.
|
inlineinherited |
Definition at line 2000 of file stl_tree.h.
|
inlineinherited |
Definition at line 1924 of file stl_tree.h.
|
inlineinherited |
Definition at line 1933 of file stl_tree.h.
|
inherited |
Definition at line 2762 of file stl_tree.h.
|
inherited |
Definition at line 2917 of file stl_tree.h.
|
inherited |
Definition at line 2832 of file stl_tree.h.
|
inherited |
Definition at line 2730 of file stl_tree.h.
|
inlineprotectedinherited |
Definition at line 1167 of file stl_tree.h.
|
inlinenoexceptinherited |
Definition at line 1158 of file stl_tree.h.
|
inlinenoexceptinherited |
Definition at line 1154 of file stl_tree.h.
|
inherited |
Definition at line 2812 of file stl_tree.h.
|
inlineinherited |
Definition at line 1695 of file stl_tree.h.
|
inherited |
Definition at line 2973 of file stl_tree.h.
|
inlineinherited |
Definition at line 1740 of file stl_tree.h.
|
inlineinherited |
Definition at line 1749 of file stl_tree.h.
|
inlineinherited |
Definition at line 1723 of file stl_tree.h.
|
inlineinherited |
Definition at line 1732 of file stl_tree.h.
|
inherited |
Definition at line 2784 of file stl_tree.h.
|
inlineinherited |
Definition at line 1683 of file stl_tree.h.
|
inherited |
Definition at line 2892 of file stl_tree.h.
|
inlineprotectednoexceptinherited |
Definition at line 1365 of file stl_tree.h.
|
inlineprotectednoexceptinherited |
Definition at line 1361 of file stl_tree.h.
|
inlineinherited |
Definition at line 1953 of file stl_tree.h.
|
inlinenoexceptinherited |
Merge from a compatible container into one with equivalent keys.
Definition at line 2232 of file stl_tree.h.
|
inlinenoexceptinherited |
Merge from a compatible container into one with unique keys.
Definition at line 2210 of file stl_tree.h.
|
inlineprotectednoexceptinherited |
Definition at line 1188 of file stl_tree.h.
|
inlineinherited |
Re-insert an extracted node.
Definition at line 2101 of file stl_tree.h.
|
inlineinherited |
Re-insert an extracted node.
Definition at line 2145 of file stl_tree.h.
|
inlineinherited |
Re-insert an extracted node.
Definition at line 2122 of file stl_tree.h.
|
inlineinherited |
Re-insert an extracted node.
Definition at line 2071 of file stl_tree.h.
|
inlineprotectednoexceptinherited |
Definition at line 1373 of file stl_tree.h.
|
inlineprotectednoexceptinherited |
Definition at line 1369 of file stl_tree.h.
|
inlineprotectednoexceptinherited |
Definition at line 1357 of file stl_tree.h.
|
inlineprotectednoexceptinherited |
Definition at line 1353 of file stl_tree.h.
|
inlineinherited |
Definition at line 1971 of file stl_tree.h.
|
inlinestaticprotectedinherited |
Definition at line 1416 of file stl_tree.h.
|
inlinestaticprotectedinherited |
Definition at line 1420 of file stl_tree.h.
|
inlinestaticprotectedinherited |
Definition at line 1394 of file stl_tree.h.
|
inlinestaticprotectednoexceptinherited |
Definition at line 1424 of file stl_tree.h.
|
inlinestaticprotectedinherited |
Definition at line 1428 of file stl_tree.h.
|
inlinestaticprotectednoexceptinherited |
Definition at line 1436 of file stl_tree.h.
|
inlinestaticprotectednoexceptinherited |
Definition at line 1440 of file stl_tree.h.
|
inlinenoexceptinherited |
Definition at line 1624 of file stl_tree.h.
|
inlinenoexceptinherited |
Definition at line 1620 of file stl_tree.h.
|
inlinenoexceptinherited |
Definition at line 1876 of file stl_tree.h.
|
inherited |
Definition at line 3174 of file stl_tree.h.
|
inlinenoexceptinherited |
Definition at line 1652 of file stl_tree.h.
|
inlinenoexceptinherited |
Definition at line 1632 of file stl_tree.h.
|
inlinenoexceptinherited |
Definition at line 1628 of file stl_tree.h.
|
inherited |
Definition at line 2633 of file stl_tree.h.
|
inherited |
Definition at line 2665 of file stl_tree.h.
|
inherited |
Definition at line 3136 of file stl_tree.h.
|
inlineinherited |
Definition at line 1860 of file stl_tree.h.
|
inlineinherited |
Definition at line 1816 of file stl_tree.h.
|
inlineinherited |
Definition at line 1828 of file stl_tree.h.
|
inlineinherited |
Extract a node.
Definition at line 2191 of file stl_tree.h.
|
inlineinherited |
Extract a node.
Definition at line 2166 of file stl_tree.h.
|
inherited |
Definition at line 3149 of file stl_tree.h.
|
inherited |
Definition at line 3162 of file stl_tree.h.
|
inlinenoexceptinherited |
Definition at line 1162 of file stl_tree.h.
|
inlineinherited |
Definition at line 1616 of file stl_tree.h.
|
inlineinherited |
Definition at line 1893 of file stl_tree.h.
|
inlineinherited |
Definition at line 1897 of file stl_tree.h.
|
inlinenoexceptinherited |
Definition at line 1660 of file stl_tree.h.
|
inlinenoexceptinherited |
Definition at line 1640 of file stl_tree.h.
|
inlinenoexceptinherited |
Definition at line 1636 of file stl_tree.h.
|
inlinenoexceptinherited |
Definition at line 1648 of file stl_tree.h.
|
inlinenoexceptinherited |
Definition at line 1644 of file stl_tree.h.
|
inlinenoexceptinherited |
Definition at line 1656 of file stl_tree.h.
|
noexceptinherited |
Definition at line 2694 of file stl_tree.h.
|
inlineinherited |
Definition at line 1904 of file stl_tree.h.
|
inlineinherited |
Definition at line 1908 of file stl_tree.h.
|
protectedinherited |
Definition at line 1349 of file stl_tree.h.