#include <genesis/tree/iterator/postorder.hpp>
Definition at line 62 of file tree/iterator/postorder.hpp.
Public Member Functions | |
| IteratorPostorder () | |
| IteratorPostorder (IteratorPostorder &&)=default | |
| IteratorPostorder (IteratorPostorder const &)=default | |
| IteratorPostorder (LinkType &link) | |
| Start a postorder traversal at a given TreeLink, moving in the direction of the link first. More... | |
| IteratorPostorder (NodeType &node) | |
| Start a postorder traversal at the given TreeNode, moving in the root direction first. More... | |
| IteratorPostorder (Subtree const &subtree) | |
| Start a postorder traversal at the top TreeNode of a Subtree, only traversing the nodes in the subtree. More... | |
| IteratorPostorder (TreeType &tree) | |
| Start a postorder traversal at the root of the given Tree. More... | |
| ~IteratorPostorder ()=default | |
| EdgeType & | edge () const |
| bool | is_last_iteration () const |
| LinkType & | link () const |
| NodeType & | node () const |
| bool | operator!= (const self_type &other) const |
| self_type | operator* () |
| self_type | operator++ () |
| self_type | operator++ (int) |
| IteratorPostorder & | operator= (IteratorPostorder &&)=default |
| IteratorPostorder & | operator= (IteratorPostorder const &)=default |
| bool | operator== (const self_type &other) const |
| LinkType & | start_link () const |
| NodeType & | start_node () const |
Public Types | |
| using | EdgeType = typename std::conditional< is_const, TreeEdge const, TreeEdge >::type |
| using | iterator_category = std::forward_iterator_tag |
| using | LinkType = typename std::conditional< is_const, TreeLink const, TreeLink >::type |
| using | NodeType = typename std::conditional< is_const, TreeNode const, TreeNode >::type |
| using | self_type = IteratorPostorder< is_const > |
| using | TreeType = typename std::conditional< is_const, Tree const, Tree >::type |
|
inline |
Definition at line 88 of file tree/iterator/postorder.hpp.
|
inlineexplicit |
Start a postorder traversal at the root of the given Tree.
Definition at line 96 of file tree/iterator/postorder.hpp.
|
inlineexplicit |
Start a postorder traversal at the given TreeNode, moving in the root direction first.
The iterator "starts" that the given TreeNode (for a postorder traversal, starting means that this will be the last node visited). It first traverses in the direction towards the root, until a leaf is found. This leaf is the first node being visited. From there on, the traversal continues as usual.
Definition at line 108 of file tree/iterator/postorder.hpp.
|
inlineexplicit |
Start a postorder traversal at a given TreeLink, moving in the direction of the link first.
The iterator "starts" that the TreeNode of the given link (for a postorder traversal, starting means that this will be the last node visited). It first traverses in the direction of the outer() link of the given link, until a leaf is found. This leaf is the first node being visited. From there on, the traversal continues as usual.
Definition at line 121 of file tree/iterator/postorder.hpp.
|
inlineexplicit |
Start a postorder traversal at the top TreeNode of a Subtree, only traversing the nodes in the subtree.
Definition at line 154 of file tree/iterator/postorder.hpp.
|
default |
|
default |
|
default |
|
inline |
Definition at line 262 of file tree/iterator/postorder.hpp.
|
inline |
Definition at line 247 of file tree/iterator/postorder.hpp.
|
inline |
Definition at line 252 of file tree/iterator/postorder.hpp.
|
inline |
Definition at line 257 of file tree/iterator/postorder.hpp.
|
inline |
Definition at line 238 of file tree/iterator/postorder.hpp.
|
inline |
Definition at line 190 of file tree/iterator/postorder.hpp.
|
inline |
Definition at line 195 of file tree/iterator/postorder.hpp.
|
inline |
Definition at line 226 of file tree/iterator/postorder.hpp.
|
default |
|
default |
|
inline |
Definition at line 233 of file tree/iterator/postorder.hpp.
|
inline |
Definition at line 267 of file tree/iterator/postorder.hpp.
|
inline |
Definition at line 272 of file tree/iterator/postorder.hpp.
Definition at line 75 of file tree/iterator/postorder.hpp.
| using iterator_category = std::forward_iterator_tag |
Definition at line 78 of file tree/iterator/postorder.hpp.
Definition at line 73 of file tree/iterator/postorder.hpp.
Definition at line 74 of file tree/iterator/postorder.hpp.
| using self_type = IteratorPostorder< is_const > |
Definition at line 77 of file tree/iterator/postorder.hpp.
Definition at line 72 of file tree/iterator/postorder.hpp.