|
Public Types |
typedef Rb_tree< Key, Value,
KeyOfValue, Compare, Alloc > | Base |
|
typedef Base::allocator_type | allocator_type |
|
typedef Key | key_type |
|
typedef Value | value_type |
|
typedef value_type * | pointer |
|
typedef const value_type * | const_pointer |
|
typedef value_type & | reference |
|
typedef const value_type & | const_reference |
|
typedef Rb_tree_node * | Link_type |
|
typedef size_t | size_type |
|
typedef ptrdiff_t | difference_type |
typedef Rb_tree_iterator<
value_type, reference, pointer > | iterator |
typedef Rb_tree_iterator<
value_type, const_reference,
const_pointer > | const_iterator |
typedef std::reverse_iterator<
const_iterator > | const_reverse_iterator |
typedef std::reverse_iterator<
iterator > | reverse_iterator |
Public Member Functions |
|
| rb_tree (const Compare &comp=Compare(), const allocator_type &a=allocator_type()) |
|
| ~rb_tree () |
|
allocator_type | get_allocator () const |
|
Compare | key_comp () const |
|
iterator | begin () |
|
const_iterator | begin () const |
|
iterator | end () |
|
const_iterator | end () const |
|
reverse_iterator | rbegin () |
|
const_reverse_iterator | rbegin () const |
|
reverse_iterator | rend () |
|
const_reverse_iterator | rend () const |
|
bool | empty () const |
|
size_type | size () const |
|
size_type | max_size () const |
|
void | swap (Rb_tree< Key, Value, KeyOfValue, Compare, Alloc > &__t) |
|
void | clear () |
Protected Types |
|
typedef Rb_tree_node_base * | Base_ptr |
|
typedef Rb_tree_node< Value > | Rb_tree_node |
Protected Member Functions |
|
Link_type | M_create_node (const value_type &x) |
|
Link_type | M_clone_node (Link_type x) |
|
void | destroy_node (Link_type __p) |
|
Link_type & | M_root () const |
|
Link_type & | M_leftmost () const |
|
Link_type & | M_rightmost () const |
|
Rb_tree_node< Type > * | M_get_node () |
|
void | M_put_node (Rb_tree_node< Type > *__p) |
Static Protected Member Functions |
|
static Link_type & | S_left (Link_type x) |
|
static Link_type & | S_left (Base_ptr x) |
|
static Link_type & | S_right (Link_type x) |
|
static Link_type & | S_right (Base_ptr x) |
|
static Link_type & | S_parent (Link_type x) |
|
static Link_type & | S_parent (Base_ptr x) |
|
static reference | S_value (Link_type x) |
|
static reference | S_value (Base_ptr x) |
|
static const Key & | S_key (Link_type x) |
|
static const Key & | S_key (Base_ptr x) |
|
static Rb_tree_color & | S_color (Link_type x) |
|
static Rb_tree_color & | S_color (Base_ptr x) |
|
static Link_type | S_minimum (Link_type x) |
|
static Link_type | S_maximum (Link_type x) |
Protected Attributes |
|
size_type | M_node_count |
|
Compare | M_key_compare |
Alloc_traits< Rb_tree_node<
Type >, Alloc >::allocator_type | M_node_allocator |
|
Rb_tree_node< Type > * | M_header |