__gnu_cxx::rb_tree< Key, Value, KeyOfValue, Compare, Alloc > Struct Template Reference
[STL extensions from SGI]

Inheritance diagram for __gnu_cxx::rb_tree< Key, Value, KeyOfValue, Compare, Alloc >:

Inheritance graph
[legend]
Collaboration diagram for __gnu_cxx::rb_tree< Key, Value, KeyOfValue, Compare, Alloc >:

Collaboration graph
[legend]
List of all members.

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_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 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_baseBase_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_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_left (Base_ptr x)
static Link_typeS_right (Link_type x)
static Link_typeS_right (Base_ptr x)
static Link_typeS_parent (Link_type x)
static Link_typeS_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_colorS_color (Link_type 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

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:
Doc me! See docs/doxygen/TODO and http://gcc.gnu.org/ml/libstdc++/2002-02/msg00003.html for more.

Definition at line 83 of file rb_tree.


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