std::Rb_tree< Key, Val, KeyOfValue, Compare, Alloc > Class Template Reference

Inheritance diagram for std::Rb_tree< Key, Val, KeyOfValue, Compare, Alloc >:

Inheritance graph
[legend]
Collaboration diagram for std::Rb_tree< Key, Val, KeyOfValue, Compare, Alloc >:

Collaboration graph
[legend]
List of all members.

Public Types

typedef Key key_type
typedef Val value_type
typedef value_typepointer
typedef const value_typeconst_pointer
typedef value_typereference
typedef const value_typeconst_reference
typedef Rb_tree_nodeLink_type
typedef size_t size_type
typedef ptrdiff_t difference_type
typedef Base::allocator_type allocator_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

allocator_type get_allocator () const
 Rb_tree ()
 Rb_tree (const Compare &comp)
 Rb_tree (const Compare &comp, const allocator_type &a)
 Rb_tree (const Rb_tree< Key, Val, KeyOfValue, Compare, Alloc > &x)
 ~Rb_tree ()
Rb_tree< Key, Val, KeyOfValue,
Compare, Alloc > & 
operator= (const Rb_tree< Key, Val, KeyOfValue, Compare, Alloc > &x)
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, Val, KeyOfValue, Compare, Alloc > &__t)
pair< iterator, bool > insert_unique (const value_type &x)
iterator insert_equal (const value_type &x)
iterator insert_unique (iterator position, const value_type &x)
iterator insert_equal (iterator position, const value_type &x)
template<typename InputIterator>
void insert_unique (InputIterator first, InputIterator last)
template<typename InputIterator>
void insert_equal (InputIterator first, InputIterator last)
void erase (iterator position)
size_type erase (const key_type &x)
void erase (iterator first, iterator last)
void erase (const key_type *first, const key_type *last)
void clear ()
iterator find (const key_type &x)
const_iterator find (const key_type &x) const
size_type count (const key_type &x) const
iterator lower_bound (const key_type &x)
const_iterator lower_bound (const key_type &x) const
iterator upper_bound (const key_type &x)
const_iterator upper_bound (const key_type &x) const
pair< iterator, iteratorequal_range (const key_type &x)
pair< const_iterator, const_iteratorequal_range (const key_type &x) const
bool __rb_verify () const

Protected Types

typedef Rb_tree_node_baseBase_ptr
typedef Rb_tree_node< Val > 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_typeM_root () const
Link_typeM_leftmost () const
Link_typeM_rightmost () const
Rb_tree_node< Type > * M_get_node ()
void M_put_node (Rb_tree_node< Type > *__p)

Static Protected Member Functions

static Link_typeS_left (Link_type x)
static Link_typeS_right (Link_type x)
static Link_typeS_parent (Link_type x)
static reference S_value (Link_type x)
static const Key & S_key (Link_type x)
static Rb_tree_colorS_color (Link_type x)
static Link_typeS_left (Base_ptr x)
static Link_typeS_right (Base_ptr x)
static Link_typeS_parent (Base_ptr x)
static reference S_value (Base_ptr x)
static const Key & S_key (Base_ptr x)
static Rb_tree_colorS_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

Private Types

typedef Rb_tree_base< Val,
Alloc > 
Base

Private Member Functions

iterator M_insert (Base_ptr x, Base_ptr y, const value_type &__v)
Link_type M_copy (Link_type x, Link_type __p)
void M_erase (Link_type x)
void M_empty_initialize ()

Detailed Description

template<typename Key, typename Val, typename KeyOfValue, typename Compare, typename Alloc = allocator<Val>>
class std::Rb_tree< Key, Val, KeyOfValue, Compare, Alloc >

Definition at line 586 of file stl_tree.h.


The documentation for this class was generated from the following file:
Generated on Fri Oct 20 15:49:37 2006 for libstdc++-v3 Source by  doxygen 1.4.7