|
xorp
|
Postorder Iterator on a trie. More...
#include <ref_trie.hh>
Public Types | |
| typedef IPNet< A > | Key |
| typedef ::RefTrie< A, Payload > | RefTrie |
| typedef RefTrieNode< A, Payload > | Node |
Public Member Functions | |
| RefTriePostOrderIterator () | |
| Constructors. | |
| RefTriePostOrderIterator (const RefTrie *trie, Node *n) | |
| constructor for exact searches: both the current node and the search key are taken from n, so the iterator will only loop once. | |
| RefTriePostOrderIterator (const RefTrie *trie, Node *n, const Key &k) | |
| construct for subtree scanning: the root key is set explicitly, and the current node is set according to the search order. | |
| RefTriePostOrderIterator (const RefTriePostOrderIterator &x) | |
| RefTriePostOrderIterator * | begin () |
| move to the starting position according to the visiting order | |
| RefTriePostOrderIterator | operator++ (int) |
| Postfix increment. | |
| RefTriePostOrderIterator & | operator++ () |
| Prefix increment. | |
| operator RefTriePreOrderIterator< A, Payload > () const | |
| Conversion operator. | |
| void | next () const |
| void | force_valid () const |
| Node * | cur () const |
| bool | operator== (const RefTriePostOrderIterator &x) const |
| bool | operator!= (const RefTriePostOrderIterator &x) const |
| Payload & | payload () |
| const Key & | key () const |
| RefTriePostOrderIterator & | operator= (const RefTriePostOrderIterator &x) |
Private Member Functions | |
| bool | node_is_left (Node *n) const |
Private Attributes | |
| Node * | _cur |
| Key | _root |
| const RefTrie * | _trie |
Friends | |
| class | RefTriePreOrderIterator< A, Payload > |
Postorder Iterator on a trie.
_cur points to the current object, _root contains the search key for root of the subtree we want to scan. The iterator skips over empty nodes, and visits the subtree in depth-first, left-to-right order. The keys returned by this iterator are not sorted by prefix length.
| RefTriePostOrderIterator< A, Payload >::operator RefTriePreOrderIterator< A, Payload > | ( | ) | const [inline] |
Conversion operator.
Converts into a PreOrderIterator
| RefTriePostOrderIterator& RefTriePostOrderIterator< A, Payload >::operator++ | ( | ) | [inline] |
Prefix increment.
Updates position of iterator in tree.
| RefTriePostOrderIterator RefTriePostOrderIterator< A, Payload >::operator++ | ( | int | ) | [inline] |
Postfix increment.
Updates position of iterator in tree.