Lines Matching refs:Node

38 template<typename Node>
40 Node* left;
41 Node* right;
49 typedef typename Definition::NodeType Node;
50 typedef SplayTreeLink<Node> Link;
63 bool Insert(Node* node)
97 Node* Remove(const Key& key)
108 Node* node = fRoot;
113 Node* temp = rootLink->right;
126 bool Remove(Node* node)
139 Node* temp = rootLink->right;
151 Node* FindMin()
156 Node* node = fRoot;
158 while (Node* left = Definition::GetLink(node)->left)
169 Node* FindMax()
174 Node* node = fRoot;
176 while (Node* right = Definition::GetLink(node)->right)
187 Node* Lookup(const Key& key)
197 Node* Root() const
211 Node* PreviousDontSplay(const Key& key) const
213 Node* closestNode = NULL;
214 Node* node = fRoot;
226 Node* FindClosest(const Key& key, bool greater, bool orEqual)
233 Node* closestNode = NULL;
234 Node* node = fRoot;
286 Node* l = NULL;
287 Node* r = NULL;
288 Node* t = fRoot;
293 Node*& left = Definition::GetLink(t)->left;
299 Node* y = left;
314 Node*& right = Definition::GetLink(t)->right;
320 Node* y = right;
348 Node* fRoot;
356 typedef typename Definition::NodeType Node;
357 typedef SplayTreeLink<Node> Link;
379 Iterator(Tree* tree, Node* next)
392 Node* Next()
400 Node* Current()
405 Node* Remove()
407 Node* element = fCurrent;
431 Node* fCurrent;
432 Node* fNext;
453 ConstIterator(const Tree* tree, Node* next)
465 Node* Next()
467 Node* node = fNext;
487 Node* fNext;
497 bool Insert(Node* node)
502 Node** previousNext;
503 if (Node* previous = fTree.PreviousDontSplay(Definition::GetKey(node)))
514 Node* Remove(const Key& key)
516 Node* node = fTree.Remove(key);
520 Node** previousNext;
521 if (Node* previous = fTree.PreviousDontSplay(key))
531 bool Remove(Node* node)
536 Node** previousNext;
537 if (Node* previous = fTree.PreviousDontSplay(Definition::GetKey(node)))
547 Node* Lookup(const Key& key)
552 Node* Root() const
566 Node* FindClosest(const Key& key, bool greater, bool orEqual)
571 Node* FindMin()
576 Node* FindMax()
614 Node* fFirst;