__gnu_cxx::rb_tree< _Key, _Value, _KeyOfValue, _Compare, _Alloc >

Section: C Library Functions (3)
Updated: Wed Apr 17 2019
Page Index
 

NAME

__gnu_cxx::rb_tree< _Key, _Value, _KeyOfValue, _Compare, _Alloc >  

SYNOPSIS


Inherits std::_Rb_tree< _Key, _Val, _KeyOfValue, _Compare, _Alloc >.  

Public Types


typedef _Rb_tree< _Key, _Value, _KeyOfValue, _Compare, _Alloc > _Base

typedef _Base::allocator_type allocator_type

typedef _Rb_tree_const_iterator< value_type > 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

typedef _Rb_tree_iterator< value_type > iterator

typedef _Key key_type

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 = typename __has_is_transparent<_Compare, _Kt>::type> size_type _M_count_tr (const _Kt &__k) const

template<typename... _Args> iterator _M_emplace_equal (_Args &&... __args)

template<typename... _Args> iterator _M_emplace_hint_equal (const_iterator __pos, _Args &&... __args)

template<typename... _Args> iterator _M_emplace_hint_unique (const_iterator __pos, _Args &&... __args)

template<typename... _Args> pair< iterator, bool > _M_emplace_unique (_Args &&... __args)

template<typename... _Args> pair< typename _Rb_tree< _Key, _Val, _KeyOfValue, _Compare, _Alloc >::iterator, bool > _M_emplace_unique (_Args &&... __args)

template<typename _Kt , typename _Req = typename __has_is_transparent<_Compare, _Kt>::type> pair< iterator, iterator > _M_equal_range_tr (const _Kt &__k)

template<typename _Kt , typename _Req = typename __has_is_transparent<_Compare, _Kt>::type> pair< const_iterator, const_iterator > _M_equal_range_tr (const _Kt &__k) const

template<typename _Kt , typename _Req = typename __has_is_transparent<_Compare, _Kt>::type> iterator _M_find_tr (const _Kt &__k)

template<typename _Kt , typename _Req = typename __has_is_transparent<_Compare, _Kt>::type> 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)

_Node_allocator & _M_get_Node_allocator () noexcept

const _Node_allocator & _M_get_Node_allocator () const noexcept

template<typename _Arg > iterator _M_insert_equal (_Arg &&__x)

template<typename _InputIterator > void _M_insert_equal (_InputIterator __first, _InputIterator __last)

template<class _II > void _M_insert_equal (_II __first, _II __last)

template<typename _Arg , typename _NodeGen > iterator _M_insert_equal_ (const_iterator __pos, _Arg &&__x, _NodeGen &)

template<typename _Arg > iterator _M_insert_equal_ (const_iterator __pos, _Arg &&__x)

template<typename _Arg > pair< iterator, bool > _M_insert_unique (_Arg &&__x)

template<typename _InputIterator > void _M_insert_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<class _II > void _M_insert_unique (_II __first, _II __last)

template<typename _Arg , typename _NodeGen > iterator _M_insert_unique_ (const_iterator __pos, _Arg &&__x, _NodeGen &)

template<typename _Arg > iterator _M_insert_unique_ (const_iterator __pos, _Arg &&__x)

template<typename _Kt , typename _Req = typename __has_is_transparent<_Compare, _Kt>::type> iterator _M_lower_bound_tr (const _Kt &__k)

template<typename _Kt , typename _Req = typename __has_is_transparent<_Compare, _Kt>::type> const_iterator _M_lower_bound_tr (const _Kt &__k) const

template<typename _Kt , typename _Req = typename __has_is_transparent<_Compare, _Kt>::type> iterator _M_upper_bound_tr (const _Kt &__k)

template<typename _Kt , typename _Req = typename __has_is_transparent<_Compare, _Kt>::type> const_iterator _M_upper_bound_tr (const _Kt &__k) const

iterator begin () noexcept

const_iterator begin () const noexcept

void clear () noexcept

size_type count (const key_type &__k) const

bool empty () const noexcept

iterator end () noexcept

const_iterator end () const noexcept

pair< iterator, iterator > equal_range (const key_type &__k)

pair< const_iterator, const_iterator > equal_range (const key_type &__k) const

_GLIBCXX_ABI_TAG_CXX11 iterator erase (const_iterator __position)

_GLIBCXX_ABI_TAG_CXX11 iterator erase (iterator __position)

size_type erase (const key_type &__x)

_GLIBCXX_ABI_TAG_CXX11 iterator erase (const_iterator __first, const_iterator __last)

void erase (const key_type *__first, const key_type *__last)

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

reverse_iterator rbegin () noexcept

const_reverse_iterator rbegin () const noexcept

reverse_iterator rend () noexcept

const_reverse_iterator rend () const 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 _Rb_tree_node_base * _Base_ptr

typedef const _Rb_tree_node_base * _Const_Base_ptr

typedef const _Rb_tree_node< _Val > * _Const_Link_type

typedef _Rb_tree_node< _Val > * _Link_type
 

Protected Member Functions


_Link_type _M_begin () noexcept

_Const_Link_type _M_begin () const noexcept

template<typename _NodeGen > _Link_type _M_clone_node (_Const_Link_type __x, _NodeGen &__node_gen)

template<typename... _Args> void _M_construct_node (_Link_type __node, _Args &&... __args)

template<typename... _Args> _Link_type _M_create_node (_Args &&... __args)

void _M_destroy_node (_Link_type __p) noexcept

void _M_drop_node (_Link_type __p) noexcept

_Base_ptr _M_end () noexcept

_Const_Base_ptr _M_end () const noexcept

_Link_type _M_get_node ()

_Base_ptr & _M_leftmost () noexcept

_Const_Base_ptr _M_leftmost () const noexcept

void _M_put_node (_Link_type __p) noexcept

_Base_ptr & _M_rightmost () noexcept

_Const_Base_ptr _M_rightmost () const noexcept

_Base_ptr & _M_root () noexcept

_Const_Base_ptr _M_root () const noexcept
 

Static Protected Member Functions


static const _Key & _S_key (_Const_Link_type __x)

static const _Key & _S_key (_Const_Base_ptr __x)

static _Link_type _S_left (_Base_ptr __x) noexcept

static _Const_Link_type _S_left (_Const_Base_ptr __x) noexcept

static _Base_ptr _S_maximum (_Base_ptr __x) noexcept

static _Const_Base_ptr _S_maximum (_Const_Base_ptr __x) noexcept

static _Base_ptr _S_minimum (_Base_ptr __x) noexcept

static _Const_Base_ptr _S_minimum (_Const_Base_ptr __x) noexcept

static _Link_type _S_right (_Base_ptr __x) noexcept

static _Const_Link_type _S_right (_Const_Base_ptr __x) noexcept

static const_reference _S_value (_Const_Link_type __x)

static const_reference _S_value (_Const_Base_ptr __x)
 

Protected Attributes


_Rb_tree_impl< _Compare > _M_impl
 

Detailed Description

 

template<class _Key, class _Value, class _KeyOfValue, class _Compare, class _Alloc = allocator<_Value>>


struct __gnu_cxx::rb_tree< _Key, _Value, _KeyOfValue, _Compare, _Alloc >" This is an SGI extension.

Todo

\nNeeds documentation! See http://gcc.gnu.org/onlinedocs/libstdc++/manual/documentation_style.html

Definition at line 80 of file rb_tree.

 

Author

Generated automatically by Doxygen for libstdc++ from the source code.


 

Index

NAME
SYNOPSIS
Public Types
Public Member Functions
Protected Types
Protected Member Functions
Static Protected Member Functions
Protected Attributes
Detailed Description
template<class _Key, class _Value, class _KeyOfValue, class _Compare, class _Alloc = allocator<_Value>>
Author