#include <xtree_fix.h>
Classes | |
struct | _Node |
class | const_iterator |
class | iterator |
Public Types | |
typedef _Tree< _K, _Ty, _Kfn, _Pr, _A > | _Myt |
typedef pair< const_iterator, const_iterator > | _Paircc |
typedef pair< iterator, bool > | _Pairib |
typedef pair< iterator, iterator > | _Pairii |
typedef reverse_bidirectional_iterator < const_iterator, value_type, const_reference, _Ctptr, difference_type > | const_reverse_iterator |
typedef _A::difference_type | difference_type |
typedef _K | key_type |
typedef reverse_bidirectional_iterator < iterator, value_type, reference, _Tptr, difference_type > | reverse_iterator |
typedef _A::size_type | size_type |
typedef _Ty | value_type |
Public Member Functions | |
typedef | _POINTER_X (const _Ty, _A) _Ctptr |
typedef | _POINTER_X (_Ty, _A) _Tptr |
typedef | _REFERENCE_X (const _Ty, _A) const _reference |
typedef | _REFERENCE_X (_Ty, _A) reference |
_Tree (const _Myt &_X) | |
_Tree (const _Ty *_F, const _Ty *_L, const _Pr &_Parg, bool _Marg=true, const _A &_Al=_A()) | |
_Tree (const _Pr &_Parg, bool _Marg=true, const _A &_Al=_A()) | |
const_iterator | begin () const |
iterator | begin () |
void | clear () |
size_type | count (const _K &_Kv) const |
bool | empty () const |
const_iterator | end () const |
iterator | end () |
_Paircc | equal_range (const _K &_Kv) const |
_Pairii | equal_range (const _K &_Kv) |
void | erase (const _K *_F, const _K *_L) |
size_type | erase (const _K &_X) |
iterator | erase (iterator _F, iterator _L) |
iterator | erase (iterator _P) |
const_iterator | find (const _K &_Kv) const |
iterator | find (const _K &_Kv) |
_A | get_allocator () const |
void | insert (const value_type *_F, const value_type *_L) |
void | insert (iterator _F, iterator _L) |
iterator | insert (iterator _P, const value_type &_V) |
_Pairib | insert (const value_type &_V) |
_Pr | key_comp () const |
const_iterator | lower_bound (const _K &_Kv) const |
iterator | lower_bound (const _K &_Kv) |
size_type | max_size () const |
_Myt & | operator= (const _Myt &_X) |
const_reverse_iterator | rbegin () const |
reverse_iterator | rbegin () |
const_reverse_iterator | rend () const |
reverse_iterator | rend () |
size_type | size () const |
void | swap (_Myt &_X) |
const_iterator | upper_bound (const _K &_Kv) const |
iterator | upper_bound (const _K &_Kv) |
~_Tree () | |
Protected Types | |
Protected Member Functions | |
_Nodeptr | _Buynode (_Nodeptr _Parg, _Redbl _Carg) |
void | _Consval (_Tptr _P, const _Ty &_V) |
_Nodeptr | _Copy (_Nodeptr _X, _Nodeptr _P) |
void | _Copy (const _Myt &_X) |
void | _Destval (_Tptr _P) |
void | _Erase (_Nodeptr _X) |
void | _Freenode (_Nodeptr _S) |
void | _Init () |
iterator | _Insert (_Nodeptr _X, _Nodeptr _Y, const _Ty &_V) |
_Nodeptr | _Lbound (const _K &_Kv) const |
_Nodeptr & | _Lmost () const |
_Nodeptr & | _Lmost () |
void | _Lrotate (_Nodeptr _X) |
typedef | _POINTER_X (_Node, _A) _Nodeptr |
typedef | _REFERENCE_X (_Ty, _A) _Vref |
typedef | _REFERENCE_X (_Redbl, _A) _Rbref |
typedef | _REFERENCE_X (const _K, _A) _Keyref |
typedef | _REFERENCE_X (_Nodeptr, _A) _Nodepref |
_Nodeptr & | _Rmost () const |
_Nodeptr & | _Rmost () |
_Nodeptr & | _Root () const |
_Nodeptr & | _Root () |
void | _Rrotate (_Nodeptr _X) |
_Nodeptr | _Ubound (const _K &_Kv) const |
Static Protected Member Functions | |
static _Rbref | _Color (_Nodeptr _P) |
static _Keyref | _Key (_Nodeptr _P) |
static _Nodepref | _Left (_Nodeptr _P) |
static _Nodeptr | _Max (_Nodeptr _P) |
static _Nodeptr | _Min (_Nodeptr _P) |
static _Nodepref | _Parent (_Nodeptr _P) |
static _Nodepref | _Right (_Nodeptr _P) |
static _Vref | _Value (_Nodeptr _P) |
Protected Attributes | |
_Nodeptr | _Head |
bool | _Multi |
size_type | _Size |
_A | allocator |
_Pr | key_compare |
Static Protected Attributes | |
static _Nodeptr | _Nil = 0 |
static size_t | _Nilrefs = 0 |
Friends | |
struct | _Node |
class | const_iterator |
class | iterator |
void | swap (_Myt &_X, _Myt &_Y) |
typedef _Tree<_K, _Ty, _Kfn, _Pr, _A> _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Myt |
typedef pair<const_iterator, const_iterator> _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Paircc |
typedef pair<iterator, bool> _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Pairib |
typedef pair<iterator, iterator> _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Pairii |
typedef reverse_bidirectional_iterator<const_iterator, value_type, const_reference, _Ctptr, difference_type> _Tree< _K, _Ty, _Kfn, _Pr, _A >::const_reverse_iterator |
typedef _A::difference_type _Tree< _K, _Ty, _Kfn, _Pr, _A >::difference_type |
typedef _K _Tree< _K, _Ty, _Kfn, _Pr, _A >::key_type |
typedef reverse_bidirectional_iterator<iterator, value_type, reference, _Tptr, difference_type> _Tree< _K, _Ty, _Kfn, _Pr, _A >::reverse_iterator |
typedef _A::size_type _Tree< _K, _Ty, _Kfn, _Pr, _A >::size_type |
typedef _Ty _Tree< _K, _Ty, _Kfn, _Pr, _A >::value_type |
enum _Tree::_Redbl [protected] |
_Tree< _K, _Ty, _Kfn, _Pr, _A >::_Tree | ( | const _Pr & | _Parg, | |
bool | _Marg = true , |
|||
const _A & | _Al = _A() | |||
) | [inline, explicit] |
References _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Init().
_Tree< _K, _Ty, _Kfn, _Pr, _A >::~_Tree | ( | ) | [inline] |
References _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Freenode(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Head, _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Nil, _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Nilrefs, _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Size, _Tree< _K, _Ty, _Kfn, _Pr, _A >::begin(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::end(), and _Tree< _K, _Ty, _Kfn, _Pr, _A >::erase().
static _Rbref _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Color | ( | _Nodeptr | _P | ) | [inline, static, protected] |
void _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Consval | ( | _Tptr | _P, | |
const _Ty & | _V | |||
) | [inline, protected] |
Referenced by _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Copy(), and _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Insert().
_Nodeptr _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Copy | ( | _Nodeptr | _X, | |
_Nodeptr | _P | |||
) | [inline, protected] |
References _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Buynode(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Color(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Consval(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Copy(), _IsNotNil, _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Left(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Nil, _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Right(), and _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Value().
void _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Copy | ( | const _Myt & | _X | ) | [inline, protected] |
References _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Copy(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Head, _IsNotNil, _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Lmost(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Max(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Min(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Rmost(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Root(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Size, and _Tree< _K, _Ty, _Kfn, _Pr, _A >::size().
Referenced by _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Copy(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Tree(), and _Tree< _K, _Ty, _Kfn, _Pr, _A >::operator=().
void _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Destval | ( | _Tptr | _P | ) | [inline, protected] |
Referenced by _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Erase(), and _Tree< _K, _Ty, _Kfn, _Pr, _A >::erase().
void _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Erase | ( | _Nodeptr | _X | ) | [inline, protected] |
References _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Destval(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Freenode(), _IsNotNil, _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Left(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Right(), and _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Value().
Referenced by _Tree< _K, _Ty, _Kfn, _Pr, _A >::erase().
void _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Freenode | ( | _Nodeptr | _S | ) | [inline, protected] |
void _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Init | ( | ) | [inline, protected] |
References _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Black, _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Buynode(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Freenode(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Head, _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Left(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Lmost(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Nil, _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Nilrefs, _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Red, _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Right(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Rmost(), and _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Size.
Referenced by _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Tree().
iterator _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Insert | ( | _Nodeptr | _X, | |
_Nodeptr | _Y, | |||
const _Ty & | _V | |||
) | [inline, protected] |
References _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Black, _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Buynode(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Color(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Consval(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Head, _IsNotNil, _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Key(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Left(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Lmost(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Lrotate(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Nil, _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Parent(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Red, _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Right(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Rmost(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Root(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Rrotate(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Size, _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Value(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::iterator, and _Tree< _K, _Ty, _Kfn, _Pr, _A >::key_compare.
Referenced by _Tree< _K, _Ty, _Kfn, _Pr, _A >::insert().
static _Keyref _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Key | ( | _Nodeptr | _P | ) | [inline, static, protected] |
_Nodeptr _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Lbound | ( | const _K & | _Kv | ) | const [inline, protected] |
References _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Head, _IsNotNil, _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Key(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Left(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Right(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Root(), and _Tree< _K, _Ty, _Kfn, _Pr, _A >::key_compare.
Referenced by _Tree< _K, _Ty, _Kfn, _Pr, _A >::lower_bound().
static _Nodepref _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Left | ( | _Nodeptr | _P | ) | [inline, static, protected] |
Referenced by _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Copy(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Tree::const_iterator::_Dec(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Erase(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Init(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Insert(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Lbound(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Lmost(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Lrotate(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Min(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Rrotate(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Ubound(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::erase(), and _Tree< _K, _Ty, _Kfn, _Pr, _A >::insert().
_Nodeptr& _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Lmost | ( | ) | const [inline, protected] |
_Nodeptr& _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Lmost | ( | ) | [inline, protected] |
References _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Head, and _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Left().
Referenced by _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Copy(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Init(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Insert(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::begin(), and _Tree< _K, _Ty, _Kfn, _Pr, _A >::erase().
void _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Lrotate | ( | _Nodeptr | _X | ) | [inline, protected] |
References _IsNotNil, _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Left(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Parent(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Right(), and _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Root().
Referenced by _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Insert(), and _Tree< _K, _Ty, _Kfn, _Pr, _A >::erase().
static _Nodeptr _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Max | ( | _Nodeptr | _P | ) | [inline, static, protected] |
static _Nodeptr _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Min | ( | _Nodeptr | _P | ) | [inline, static, protected] |
static _Nodepref _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Parent | ( | _Nodeptr | _P | ) | [inline, static, protected] |
Referenced by _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Buynode(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Tree::const_iterator::_Dec(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Tree::const_iterator::_Inc(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Insert(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Lrotate(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Root(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Rrotate(), and _Tree< _K, _Ty, _Kfn, _Pr, _A >::erase().
typedef _Tree< _K, _Ty, _Kfn, _Pr, _A >::_POINTER_X | ( | const | _Ty, | |
_A | ||||
) |
typedef _Tree< _K, _Ty, _Kfn, _Pr, _A >::_POINTER_X | ( | _Ty | , | |
_A | ||||
) |
typedef _Tree< _K, _Ty, _Kfn, _Pr, _A >::_POINTER_X | ( | _Node | , | |
_A | ||||
) | [protected] |
typedef _Tree< _K, _Ty, _Kfn, _Pr, _A >::_REFERENCE_X | ( | const | _Ty, | |
_A | ||||
) | const |
typedef _Tree< _K, _Ty, _Kfn, _Pr, _A >::_REFERENCE_X | ( | _Ty | , | |
_A | ||||
) |
typedef _Tree< _K, _Ty, _Kfn, _Pr, _A >::_REFERENCE_X | ( | _Ty | , | |
_A | ||||
) | [protected] |
typedef _Tree< _K, _Ty, _Kfn, _Pr, _A >::_REFERENCE_X | ( | _Redbl | , | |
_A | ||||
) | [protected] |
typedef _Tree< _K, _Ty, _Kfn, _Pr, _A >::_REFERENCE_X | ( | const | _K, | |
_A | ||||
) | [protected] |
typedef _Tree< _K, _Ty, _Kfn, _Pr, _A >::_REFERENCE_X | ( | _Nodeptr | , | |
_A | ||||
) | [protected] |
static _Nodepref _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Right | ( | _Nodeptr | _P | ) | [inline, static, protected] |
Referenced by _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Copy(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Tree::const_iterator::_Dec(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Erase(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Tree::const_iterator::_Inc(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Init(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Insert(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Lbound(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Lrotate(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Max(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Rmost(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Rrotate(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Ubound(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::erase(), and _Tree< _K, _Ty, _Kfn, _Pr, _A >::insert().
_Nodeptr& _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Rmost | ( | ) | const [inline, protected] |
_Nodeptr& _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Rmost | ( | ) | [inline, protected] |
References _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Head, and _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Right().
Referenced by _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Copy(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Init(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Insert(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::erase(), and _Tree< _K, _Ty, _Kfn, _Pr, _A >::insert().
_Nodeptr& _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Root | ( | ) | const [inline, protected] |
_Nodeptr& _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Root | ( | ) | [inline, protected] |
References _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Head, and _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Parent().
Referenced by _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Copy(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Insert(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Lbound(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Lrotate(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Rrotate(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Ubound(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::erase(), and _Tree< _K, _Ty, _Kfn, _Pr, _A >::insert().
void _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Rrotate | ( | _Nodeptr | _X | ) | [inline, protected] |
References _IsNotNil, _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Left(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Parent(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Right(), and _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Root().
Referenced by _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Insert(), and _Tree< _K, _Ty, _Kfn, _Pr, _A >::erase().
_Nodeptr _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Ubound | ( | const _K & | _Kv | ) | const [inline, protected] |
References _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Head, _IsNotNil, _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Key(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Left(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Right(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Root(), and _Tree< _K, _Ty, _Kfn, _Pr, _A >::key_compare.
Referenced by _Tree< _K, _Ty, _Kfn, _Pr, _A >::upper_bound().
static _Vref _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Value | ( | _Nodeptr | _P | ) | [inline, static, protected] |
Referenced by _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Copy(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Erase(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Insert(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Key(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::erase(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Tree::iterator::operator*(), and _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Tree::const_iterator::operator*().
const_iterator _Tree< _K, _Ty, _Kfn, _Pr, _A >::begin | ( | ) | const [inline] |
iterator _Tree< _K, _Ty, _Kfn, _Pr, _A >::begin | ( | ) | [inline] |
References _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Lmost(), and _Tree< _K, _Ty, _Kfn, _Pr, _A >::iterator.
Referenced by _Tree< _K, _Ty, _Kfn, _Pr, _A >::clear(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::erase(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::insert(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::operator=(), operator==(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::rend(), and _Tree< _K, _Ty, _Kfn, _Pr, _A >::~_Tree().
void _Tree< _K, _Ty, _Kfn, _Pr, _A >::clear | ( | ) | [inline] |
size_type _Tree< _K, _Ty, _Kfn, _Pr, _A >::count | ( | const _K & | _Kv | ) | const [inline] |
References _Tree< _K, _Ty, _Kfn, _Pr, _A >::equal_range().
bool _Tree< _K, _Ty, _Kfn, _Pr, _A >::empty | ( | ) | const [inline] |
References _Tree< _K, _Ty, _Kfn, _Pr, _A >::size().
const_iterator _Tree< _K, _Ty, _Kfn, _Pr, _A >::end | ( | ) | const [inline] |
iterator _Tree< _K, _Ty, _Kfn, _Pr, _A >::end | ( | ) | [inline] |
References _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Head, and _Tree< _K, _Ty, _Kfn, _Pr, _A >::iterator.
Referenced by _Tree< _K, _Ty, _Kfn, _Pr, _A >::clear(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::erase(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::find(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::insert(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::operator=(), operator==(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::rbegin(), and _Tree< _K, _Ty, _Kfn, _Pr, _A >::~_Tree().
void _Tree< _K, _Ty, _Kfn, _Pr, _A >::erase | ( | const _K * | _F, | |
const _K * | _L | |||
) | [inline] |
References _Tree< _K, _Ty, _Kfn, _Pr, _A >::erase().
iterator _Tree< _K, _Ty, _Kfn, _Pr, _A >::erase | ( | iterator | _F, | |
iterator | _L | |||
) | [inline] |
References _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Erase(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Head, _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Lmost(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Nil, _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Rmost(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Root(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Size, _Tree< _K, _Ty, _Kfn, _Pr, _A >::begin(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::end(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::erase(), and _Tree< _K, _Ty, _Kfn, _Pr, _A >::size().
iterator _Tree< _K, _Ty, _Kfn, _Pr, _A >::erase | ( | iterator | _P | ) | [inline] |
References _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Black, _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Color(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Destval(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Freenode(), _IsNil, _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Left(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Lmost(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Lrotate(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Max(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Min(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Parent(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Red, _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Right(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Rmost(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Root(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Rrotate(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Size, _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Value(), and _Tree< _K, _Ty, _Kfn, _Pr, _A >::swap().
Referenced by _Tree< _K, _Ty, _Kfn, _Pr, _A >::clear(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::erase(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::operator=(), and _Tree< _K, _Ty, _Kfn, _Pr, _A >::~_Tree().
const_iterator _Tree< _K, _Ty, _Kfn, _Pr, _A >::find | ( | const _K & | _Kv | ) | const [inline] |
_A _Tree< _K, _Ty, _Kfn, _Pr, _A >::get_allocator | ( | ) | const [inline] |
References _Tree< _K, _Ty, _Kfn, _Pr, _A >::allocator.
void _Tree< _K, _Ty, _Kfn, _Pr, _A >::insert | ( | const value_type * | _F, | |
const value_type * | _L | |||
) | [inline] |
References _Tree< _K, _Ty, _Kfn, _Pr, _A >::insert().
void _Tree< _K, _Ty, _Kfn, _Pr, _A >::insert | ( | iterator | _F, | |
iterator | _L | |||
) | [inline] |
References _Tree< _K, _Ty, _Kfn, _Pr, _A >::insert().
iterator _Tree< _K, _Ty, _Kfn, _Pr, _A >::insert | ( | iterator | _P, | |
const value_type & | _V | |||
) | [inline] |
References _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Head, _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Insert(), _IsNil, _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Key(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Tree::const_iterator::_Mynode(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Nil, _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Right(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Rmost(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::begin(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::end(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::insert(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::key_compare, and _Tree< _K, _Ty, _Kfn, _Pr, _A >::size().
_Pairib _Tree< _K, _Ty, _Kfn, _Pr, _A >::insert | ( | const value_type & | _V | ) | [inline] |
References _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Head, _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Insert(), _IsNotNil, _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Key(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Left(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Multi, _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Tree::const_iterator::_Mynode(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Right(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Root(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::begin(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::iterator, and _Tree< _K, _Ty, _Kfn, _Pr, _A >::key_compare.
Referenced by _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Tree(), and _Tree< _K, _Ty, _Kfn, _Pr, _A >::insert().
_Pr _Tree< _K, _Ty, _Kfn, _Pr, _A >::key_comp | ( | ) | const [inline] |
References _Tree< _K, _Ty, _Kfn, _Pr, _A >::key_compare.
const_iterator _Tree< _K, _Ty, _Kfn, _Pr, _A >::lower_bound | ( | const _K & | _Kv | ) | const [inline] |
size_type _Tree< _K, _Ty, _Kfn, _Pr, _A >::max_size | ( | ) | const [inline] |
References _Tree< _K, _Ty, _Kfn, _Pr, _A >::allocator.
const_reverse_iterator _Tree< _K, _Ty, _Kfn, _Pr, _A >::rbegin | ( | ) | const [inline] |
References _Tree< _K, _Ty, _Kfn, _Pr, _A >::end().
reverse_iterator _Tree< _K, _Ty, _Kfn, _Pr, _A >::rbegin | ( | ) | [inline] |
References _Tree< _K, _Ty, _Kfn, _Pr, _A >::end().
const_reverse_iterator _Tree< _K, _Ty, _Kfn, _Pr, _A >::rend | ( | ) | const [inline] |
References _Tree< _K, _Ty, _Kfn, _Pr, _A >::begin().
reverse_iterator _Tree< _K, _Ty, _Kfn, _Pr, _A >::rend | ( | ) | [inline] |
References _Tree< _K, _Ty, _Kfn, _Pr, _A >::begin().
const_iterator _Tree< _K, _Ty, _Kfn, _Pr, _A >::upper_bound | ( | const _K & | _Kv | ) | const [inline] |
iterator _Tree< _K, _Ty, _Kfn, _Pr, _A >::upper_bound | ( | const _K & | _Kv | ) | [inline] |
References _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Ubound(), and _Tree< _K, _Ty, _Kfn, _Pr, _A >::iterator.
Referenced by _Tree< _K, _Ty, _Kfn, _Pr, _A >::equal_range().
friend struct _Node [friend] |
friend class const_iterator [friend] |
friend class iterator [friend] |
void swap | ( | _Myt & | _X, | |
_Myt & | _Y | |||
) | [friend] |
_Nodeptr _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Head [protected] |
Referenced by _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Copy(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Init(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Insert(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Lbound(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Lmost(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Rmost(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Root(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Ubound(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::end(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::erase(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::insert(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::swap(), and _Tree< _K, _Ty, _Kfn, _Pr, _A >::~_Tree().
bool _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Multi [protected] |
Referenced by _Tree< _K, _Ty, _Kfn, _Pr, _A >::insert(), and _Tree< _K, _Ty, _Kfn, _Pr, _A >::swap().
size_t _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Nilrefs = 0 [inline, static, protected] |
Referenced by _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Init(), and _Tree< _K, _Ty, _Kfn, _Pr, _A >::~_Tree().
size_type _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Size [protected] |
Referenced by _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Copy(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Init(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Insert(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::erase(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::size(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::swap(), and _Tree< _K, _Ty, _Kfn, _Pr, _A >::~_Tree().
_Pr _Tree< _K, _Ty, _Kfn, _Pr, _A >::key_compare [protected] |
Referenced by _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Insert(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Lbound(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::_Ubound(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::find(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::insert(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::key_comp(), _Tree< _K, _Ty, _Kfn, _Pr, _A >::operator=(), and _Tree< _K, _Ty, _Kfn, _Pr, _A >::swap().