YSTest: ystdex::details::rb_tree 命名空间参考

YSTest PreAlpha_b900_20201012 The YSLib Test Project

类 | 枚举 | 函数
ystdex::details::rb_tree 命名空间参考

## 类

class | tree
class | tree_const_iterator
struct | tree_header
class | tree_iterator
struct | tree_key_compare
struct | tree_merge_helper
struct | tree_merge_helper< tree< _tKey, _type, _fKeyOfValue, _fComp1, _tAlloc >, _fComp2 >
struct | tree_merge_helper< ystdex::map< _tKey, _tMapped, _fComp1, _tAlloc >, _fComp2 >
class | tree_node
struct | tree_node_base

## 枚举

enum | tree_color : bool { tree_color::red = false, tree_color::black = true }

## 函数

tree_node_base * | tree_increment (tree_node_base *)
const tree_node_base * | tree_increment (const tree_node_base *)
tree_node_base * | tree_decrement (tree_node_base *)
const tree_node_base * | tree_decrement (const tree_node_base *)
void | tree_insert_and_rebalance (bool, tree_node_base *, tree_node_base *, tree_node_base &)
tree_node_base * | tree_rebalance_for_erase (tree_node_base *, tree_node_base &)
size_t | tree_black_count (const tree_node_base *, const tree_node_base *)

## 枚举类型说明

## ◆ tree_color

enum ystdex::details::rb_tree::tree_color : bool

strong

枚举值
red |
black |

在文件 tree.h 第 344 行定义.

## 函数说明

## ◆ tree_black_count()

size_t ystdex::details::rb_tree::tree_black_count | ( | const tree_node_base * | node,
|  | const tree_node_base * | root
| ) |  |

在文件 tree.cpp 第 385 行定义.

引用了 black , 以及 ystdex::node.

被这些函数引用 ystdex::details::rb_tree::tree< key_type, value_type, first_of<>, key_compare, allocator_type >::rb_verify().

这是这个函数的调用关系图:

## ◆ tree_decrement() [1/2]

const tree_node_base * ystdex::details::rb_tree::tree_decrement | ( | const tree_node_base * | x | ) |

在文件 tree.cpp 第 152 行定义.

引用了 x.

## ◆ tree_decrement() [2/2]

tree_node_base * ystdex::details::rb_tree::tree_decrement | ( | tree_node_base * | x | ) |

在文件 tree.cpp 第 147 行定义.

引用了 x.

被这些函数引用 ystdex::details::rb_tree::tree_iterator< _type >::operator--() , 以及 ystdex::details::rb_tree::tree_const_iterator< _type >::operator--().

这是这个函数的调用关系图:

## ◆ tree_increment() [1/2]

const tree_node_base * ystdex::details::rb_tree::tree_increment | ( | const tree_node_base * | x | ) |

在文件 tree.cpp 第 141 行定义.

引用了 x.

## ◆ tree_increment() [2/2]

tree_node_base * ystdex::details::rb_tree::tree_increment | ( | tree_node_base * | x | ) |

在文件 tree.cpp 第 136 行定义.

引用了 x.

被这些函数引用 ystdex::details::rb_tree::tree_iterator< _type >::operator++() , 以及 ystdex::details::rb_tree::tree_const_iterator< _type >::operator++().

这是这个函数的调用关系图:

## ◆ tree_insert_and_rebalance()

void ystdex::details::rb_tree::tree_insert_and_rebalance | ( | bool | insert_left,
|  | tree_node_base * | x,
|  | tree_node_base * | p,
|  | tree_node_base & | header
| ) |  |

在文件 tree.cpp 第 158 行定义.

引用了 black, platform::p, red, x , 以及 YSLib::UI::y.

被这些函数引用 ystdex::details::rb_tree::tree< key_type, value_type, first_of<>, key_compare, allocator_type >::attach_node().

这是这个函数的调用关系图:

## ◆ tree_rebalance_for_erase()

tree_node_base * ystdex::details::rb_tree::tree_rebalance_for_erase | ( | tree_node_base * | z,
|  | tree_node_base & | header
| ) |  |

在文件 tree.cpp 第 245 行定义.

引用了 black, ystdex::details::rb_tree::tree_node_base::maximum(), ystdex::details::rb_tree::tree_node_base::minimum(), red, ystdex::cpp2017::swap(), YSLib::Drawing::w, x , 以及 YSLib::UI::y.

被这些函数引用 ystdex::details::rb_tree::tree< key_type, value_type, first_of<>, key_compare, allocator_type >::detach_node(), ystdex::details::rb_tree::tree< key_type, value_type, first_of<>, key_compare, allocator_type >::extract(), ystdex::details::rb_tree::tree< key_type, value_type, first_of<>, key_compare, allocator_type >::merge_equal() , 以及 ystdex::details::rb_tree::tree< key_type, value_type, first_of<>, key_compare, allocator_type >::merge_unique().

函数调用图:
这是这个函数的调用关系图: