|
The Pedigree Project 0.1
|
Collaboration diagram for RadixTree< T >::Node:Public Types | |
| enum | MatchType { ExactMatch , NoMatch , PartialMatch , OverMatch } |
| typedef Vector< Node * > | childlist_t |
Public Member Functions | |
| Node (bool bCaseSensitive) | |
| void | returnAllChildren () |
| Node * | next () |
| Node * | previous () |
| Node * | findChild (const char *cpKey) const |
| void | addChild (Node *pNode) |
| void | replaceChild (Node *pNodeOld, Node *pNodeNew) |
| void | removeChild (Node *pChild) |
| MatchType | matchKey (const char *cpKey, size_t &offset) const |
| Node * | getFirstChild () const |
| void | prependKey (const String &cpKey) |
| void | setKey (const char *cpKey) |
| void | setKey (const char *cpKey, size_t lengthHint) |
| void | setKey (const String &cpKey) |
| const char * | getKey () const |
| const String & | getKeyStr () const |
| void | setValue (const T &pV) |
| void | removeValue () |
| const T & | getValue () const |
| void | setParent (Node *pP) |
| Node * | getParent () const |
| bool | hasValue () const |
| void | dump (void(*emit_line)(const char *s)) const |
Public Attributes | |
| String | m_Key |
| T | value |
| childlist_t | m_Children |
| Node * | m_pParent |
| const bool | m_bCaseSensitive |
| RadixTree * | m_pParentTree |
| bool | m_bHasValue |
Private Member Functions | |
| Node (const Node &) | |
| Node & | operator= (const Node &) |
| Node * | doNext () const |
| Node * | getNextSibling () const |
Definition at line 51 of file RadixTree.h.
| enum RadixTree::Node::MatchType |
Definition at line 52 of file RadixTree.h.
|
inline |
Definition at line 59 of file RadixTree.h.
|
inline |
Definition at line 116 of file RadixTree.h.
Definition at line 119 of file RadixTree.h.
Definition at line 136 of file RadixTree.h.
|
inline |
Definition at line 130 of file RadixTree.h.
|
inline |
Definition at line 139 of file RadixTree.h.
Get the next data structure in the list
Definition at line 75 of file RadixTree.h.
Referenced by RadixTree< T >::erase().
Here is the caller graph for this function:Get the previous data structure in the list
Definition at line 81 of file RadixTree.h.
|
inline |
Definition at line 126 of file RadixTree.h.
Definition at line 133 of file RadixTree.h.
|
inline |
Definition at line 122 of file RadixTree.h.
| const bool RadixTree< T >::Node::m_bCaseSensitive |
Controls case-sensitive matching.
Definition at line 156 of file RadixTree.h.
| bool RadixTree< T >::Node::m_bHasValue |
Do we have a value? Some nodes are intermediates caused by a split but don't yet have a value, and it is incorrect to return something for them.
Definition at line 165 of file RadixTree.h.
Referenced by RadixTree< T >::returnNode().
| childlist_t RadixTree< T >::Node::m_Children |
Array of 16 pointers to 16 nodes (256 total).
Definition at line 152 of file RadixTree.h.
Referenced by RadixTree< T >::cloneNode(), RadixTree< T >::Node::doNext(), and RadixTree< T >::remove().
Node key, zero terminated.
Definition at line 146 of file RadixTree.h.
Referenced by RadixTree< T >::cloneNode(), RadixTree< T >::insert(), RadixTree< T >::lookup(), RadixTree< T >::remove(), and RadixTree< T >::returnNode().
Parent node.
Definition at line 154 of file RadixTree.h.
Referenced by RadixTree< T >::Node::doNext(), RadixTree< T >::getNewNode(), and RadixTree< T >::returnNode().
Link back to the node's RadixTree instance.
Definition at line 159 of file RadixTree.h.
Referenced by RadixTree< T >::getNewNode().
| T RadixTree< T >::Node::value |
Node value.
Definition at line 150 of file RadixTree.h.
Referenced by RadixTree< T >::cloneNode(), and RadixTree< T >::returnNode().