This class implements a binary tree data structure. It is used as a container for entities keyed by their name. More...
#include <utils.h>

Classes | |
| class | TreeNode |
| This class represents a node in the tree. More... | |
Public Types | |
| enum | NodeColor { red, black, none } |
Public Member Functions | |
| TreeNode * | begin () const |
| void | clear () |
| bool | empty () const |
| TreeNode * | end () const |
| void | erase (TreeNode *x) |
| TreeNode * | find (const string &k) const |
| TreeNode * | findLowerBound (const string &k, bool *f) const |
| TreeNode * | insert (TreeNode *v) |
| TreeNode * | insert (TreeNode *v, TreeNode *hint) |
| void | rename (TreeNode *obj, string newname) |
| size_t | size () const |
| Tree (bool b=false) | |
| void | verify () const |
| ~Tree () | |
Additional Inherited Members | |
Protected Member Functions inherited from frepple::utils::NonCopyable | |
| NonCopyable () | |
| ~NonCopyable () | |
This class implements a binary tree data structure. It is used as a container for entities keyed by their name.
Technically, the data structure can be described as a red-black tree with intrusive tree nodes.
|
inline |
|
inline |
|
inline |
| void frepple::utils::Tree::clear | ( | ) |
|
inline |
|
inline |
| void frepple::utils::Tree::erase | ( | TreeNode * | x | ) |
|
inline |
|
inline |
| Tree::TreeNode * frepple::utils::Tree::insert | ( | TreeNode * | v, |
| TreeNode * | hint | ||
| ) |
|
inline |
|
inline |
| void frepple::utils::Tree::verify | ( | ) | const |