# stl_tree.h File Reference

## Detailed Description

This is an internal header file, included by other library headers. You should not attempt to use it directly.

Definition in file stl_tree.h.

Go to the source code of this file.

## Namespaces

- namespace std

## Classes

- class std::_Rb_tree< _Key, _Val, _KeyOfValue, _Compare, _Alloc >
- struct std::_Rb_tree< _Key, _Val, _KeyOfValue, _Compare, _Alloc >::_Rb_tree_impl< _Key_compare, _Is_pod_comparator >
- struct std::_Rb_tree< _Key, _Val, _KeyOfValue, _Compare, _Alloc >::_Rb_tree_impl< _Key_compare, true >
- struct std::_Rb_tree_const_iterator< _Tp >
- struct std::_Rb_tree_iterator< _Tp >
- struct std::_Rb_tree_node< _Val >
- struct std::_Rb_tree_node_base

## Defines

- #define _TREE_H

## Enumerations

- enum std::_Rb_tree_color { _S_red, _S_black }

## Functions

- unsigned int std::_Rb_tree_black_count (const _Rb_tree_node_base *__node, const _Rb_tree_node_base *__root)
- const _Rb_tree_node_base * std::_Rb_tree_decrement (const _Rb_tree_node_base *__x)
- _Rb_tree_node_base * std::_Rb_tree_decrement (_Rb_tree_node_base *__x)
- const _Rb_tree_node_base * std::_Rb_tree_increment (const _Rb_tree_node_base *__x)
- _Rb_tree_node_base * std::_Rb_tree_increment (_Rb_tree_node_base *__x)
- void std::_Rb_tree_insert_and_rebalance (const bool __insert_left, _Rb_tree_node_base *__x, _Rb_tree_node_base *__p, _Rb_tree_node_base &__header)
- _Rb_tree_node_base * std::_Rb_tree_rebalance_for_erase (_Rb_tree_node_base *const __z, _Rb_tree_node_base &__header)
- void std::_Rb_tree_rotate_left (_Rb_tree_node_base *const __x, _Rb_tree_node_base *&__root)
- void std::_Rb_tree_rotate_right (_Rb_tree_node_base *const __x, _Rb_tree_node_base *&__root)
- template<typename _Key, typename _Val, typename _KeyOfValue, typename _Compare, typename _Alloc> bool std::operator!= (const _Rb_tree< _Key, _Val, _KeyOfValue, _Compare, _Alloc > &__x, const _Rb_tree< _Key, _Val, _KeyOfValue, _Compare, _Alloc > &__y)
- template<typename _Val> bool std::operator!= (const _Rb_tree_iterator< _Val > &__x, const _Rb_tree_const_iterator< _Val > &__y)
- template<typename _Key, typename _Val, typename _KeyOfValue, typename _Compare, typename _Alloc> bool std::operator< (const _Rb_tree< _Key, _Val, _KeyOfValue, _Compare, _Alloc > &__x, const _Rb_tree< _Key, _Val, _KeyOfValue, _Compare, _Alloc > &__y)
- template<typename _Key, typename _Val, typename _KeyOfValue, typename _Compare, typename _Alloc> bool std::operator<= (const _Rb_tree< _Key, _Val, _KeyOfValue, _Compare, _Alloc > &__x, const _Rb_tree< _Key, _Val, _KeyOfValue, _Compare, _Alloc > &__y)
- template<typename _Key, typename _Val, typename _KeyOfValue, typename _Compare, typename _Alloc> bool std::operator== (const _Rb_tree< _Key, _Val, _KeyOfValue, _Compare, _Alloc > &__x, const _Rb_tree< _Key, _Val, _KeyOfValue, _Compare, _Alloc > &__y)
- template<typename _Val> bool std::operator== (const _Rb_tree_iterator< _Val > &__x, const _Rb_tree_const_iterator< _Val > &__y)
- template<typename _Key, typename _Val, typename _KeyOfValue, typename _Compare, typename _Alloc> bool std::operator> (const _Rb_tree< _Key, _Val, _KeyOfValue, _Compare, _Alloc > &__x, const _Rb_tree< _Key, _Val, _KeyOfValue, _Compare, _Alloc > &__y)
- template<typename _Key, typename _Val, typename _KeyOfValue, typename _Compare, typename _Alloc> bool std::operator>= (const _Rb_tree< _Key, _Val, _KeyOfValue, _Compare, _Alloc > &__x, const _Rb_tree< _Key, _Val, _KeyOfValue, _Compare, _Alloc > &__y)
- template<typename _Key, typename _Val, typename _KeyOfValue, typename _Compare, typename _Alloc> void std::swap (_Rb_tree< _Key, _Val, _KeyOfValue, _Compare, _Alloc > &__x, _Rb_tree< _Key, _Val, _KeyOfValue, _Compare, _Alloc > &__y)