Functions | |
template<class _Walker , class _Visitor > | |
_Visitor::return_value | _recursive_safe_walk_if (_Walker __w, _Visitor __f) |
template<class _Walker , class _Visitor > | |
_Visitor::return_value | _recursive_preorder_walk (_Walker __w, _Visitor __f) |
template<class _Walker , class _Visitor > | |
_Visitor::return_value | _recursive_postorder_walk (_Walker __w, _Visitor __f) |
template<class _Walker , class _Visitor > | |
_Visitor::return_value | _recursive_walk (_Walker __w, _Visitor __f) |
template<class _Walker , class _Visitor > | |
_Visitor::return_value | _recursive_preorder_walk_if (_Walker __w, _Visitor __f) |
template<class _Walker , class _Visitor , class _Predicate > | |
_Visitor::return_value | _recursive_preorder_walk_if (_Walker __w, _Visitor __f, _Predicate __p) |
template<class _Walker , class _Visitor , class _Predicate > | |
_Visitor::return_value | _recursive_postorder_walk_if (_Walker __w, _Visitor __f, _Predicate __p) |
template<class _Walker , class _Visitor > | |
_Visitor::return_value | _recursive_walk_if (_Walker __w, _Visitor __f) |
template<class _Walker , class _Visitor > | |
_Visitor::return_value | _recursive_cached_walk (_Walker __w, _Visitor __f) |
template<class _Walker , class _Visitor > | |
_Visitor::return_value | _recursive_multi_walk (_Walker __w, _Visitor __f) |
template<class _Walker , class _Visitor , class _Predicate1 , class _Predicate2 > | |
_Visitor::return_value | _recursive_walk_if (_Walker __w, _Visitor __f, _Predicate1 __p1, _Predicate2 __p2) |
template<class _Walker , class _Visitor , class _Predicate > | |
_Visitor::return_value | _recursive_cached_walk (_Walker __w, _Visitor __f, _Predicate __p) |
template<class _Walker , class _Visitor , class _Predicate > | |
_Visitor::return_value | _recursive_multi_walk (_Walker __w, _Visitor __f, _Predicate __p) |
template<class _Walker , class _Visitor > | |
_Visitor::return_value | _recursive_preorder_walk_up (_Walker __w, _Visitor __f) |
template<class _Walker , class _Visitor > | |
_Visitor::return_value | _recursive_preorder_walk_up_if (_Walker __w, _Visitor __f) |
template<class _Walker , class _Visitor , class _Predicate > | |
_Visitor::return_value | _recursive_preorder_walk_up_if (_Walker __w, _Visitor __f, _Predicate __p) |
template<class _Walker , class _Visitor > | |
_Visitor::return_value | _recursive_postorder_walk_up (_Walker __w, _Visitor __f) |
template<class _Walker , class _Visitor , class _Predicate > | |
_Visitor::return_value | _recursive_postorder_walk_up_if (_Walker __w, _Visitor __f, _Predicate __p) |
template<class _Walker , class _Visitor > | |
_Visitor::return_value | _recursive_walk_up (_Walker __w, _Visitor __f) |
template<class _Walker , class _Visitor > | |
_Visitor::return_value | _recursive_walk_up_if (_Walker __w, _Visitor __f) |
template<class _Walker , class _Visitor , class _Predicate1 , class _Predicate2 > | |
_Visitor::return_value | _recursive_walk_up_if (_Walker __w, _Visitor __f, _Predicate1 __p1, _Predicate2 __p2) |
template<class _Walker , class _Visitor > | |
_Visitor::return_value | _recursive_cached_walk_up (_Walker __w, _Visitor __f) |
template<class _Walker , class _Visitor > | |
_Visitor::return_value | _recursive_multi_walk_up (_Walker __w, _Visitor __f) |
template<class _Walker , class _Visitor , class _Predicate > | |
_Visitor::return_value | _recursive_cached_walk_up (_Walker __w, _Visitor __f, _Predicate __p) |
template<class _Walker , class _Visitor , class _Predicate > | |
_Visitor::return_value | _recursive_multi_walk_up (_Walker __w, _Visitor __f, _Predicate __p) |
template<class _BidirIter , class _Tp > | |
_BidirIter | rfind (_BidirIter __first, _BidirIter __last, const _Tp &__val, std::bidirectional_iterator_tag) |
template<class _BidirIter , class _Predicate > | |
_BidirIter | rfind_if (_BidirIter __first, _BidirIter __last, _Predicate __pred, std::bidirectional_iterator_tag) |
template<class _RandomAccessIter , class _Tp > | |
_RandomAccessIter | rfind (_RandomAccessIter __first, _RandomAccessIter __last, const _Tp &__val, std::random_access_iterator_tag) |
template<class _RandomAccessIter , class _Predicate > | |
_RandomAccessIter | rfind_if (_RandomAccessIter __first, _RandomAccessIter __last, _Predicate __pred, std::random_access_iterator_tag) |
_Visitor::return_value _recursive_cached_walk | ( | _Walker | __w, | |
_Visitor | __f, | |||
_Predicate | __p | |||
) | [inline] |
perform a recursive pre+post order walk starting at __w
. At every node various methods of the visitor __f
are called:
vinit
is called before walking for every virtual nodevcollect
is called after a child of a virtual node has finishedvvalue
is called to compute the return value of a virtual nodepreorder
is called before the children are visited. If then predicate p
returns true
, the children are visited. If it returns false
, the children are ignoredcollect
is called everytime a child has finishedpostorder
is called after the children have been visited.value
is called to compute the return value for this node this function does not check for hitting the virtual ground node. Definition at line 1342 of file vgtl_algo.h.
_Visitor::return_value _recursive_cached_walk | ( | _Walker | __w, | |
_Visitor | __f | |||
) | [inline] |
perform a recursive pre+post order walk starting at __w
. At every node various methods of the visitor __f
are called:
vinit
is called before walking for every virtual nodevcollect
is called after a child of a virtual node has finishedvvalue
is called to compute the return value of a virtual nodepreorder
is called before the children are visited. If it returns true
, the children are visited. If it returns false
, the children are ignoredcollect
is called everytime a child has finishedpostorder
is called after the children have been visited.value
is called to compute the return value for this node this function does not check for hitting the virtual ground node. Definition at line 1091 of file vgtl_algo.h.
_Visitor::return_value _recursive_cached_walk_up | ( | _Walker | __w, | |
_Visitor | __f, | |||
_Predicate | __p | |||
) | [inline] |
perform a recursive pre+post order walk towards the root starting at __w
. At every node various methods of the visitor __f
are called:
vinit
is called before walking for every virtual nodevcollect
is called after a child of a virtual node has finishedvvalue
is called to compute the return value of a virtual nodepreorder
is called before the children are visited. If then predicate __p
returns true
, the children are visited. If it returns false
, the children are ignoredcollect
is called everytime a child has finishedpostorder
is called after the children have been visited.value
is called to compute the return value for this node this function does not check for hitting the virtual sky node. Definition at line 2269 of file vgtl_algo.h.
_Visitor::return_value _recursive_cached_walk_up | ( | _Walker | __w, | |
_Visitor | __f | |||
) | [inline] |
perform a recursive pre+post order walk towards the root starting at __w
. At every node various methods of the visitor __f
are called:
vinit
is called before walking for every virtual nodevcollect
is called after a child of a virtual node has finishedvvalue
is called to compute the return value of a virtual nodepreorder
is called before the children are visited. If it returns true
, the children are visited. If it returns false
, the children are ignoredcollect
is called everytime a child has finishedpostorder
is called after the children have been visited.value
is called to compute the return value for this node this function does not check for hitting the virtual sky node. Definition at line 2110 of file vgtl_algo.h.
_Visitor::return_value _recursive_multi_walk | ( | _Walker | __w, | |
_Visitor | __f, | |||
_Predicate | __p | |||
) | [inline] |
perform a recursive pre+post order walk starting at __w
. At every node various methods of the visitor __f
are called:
vinit
is called before walking for every virtual node.vcollect
is called after a child of a virtual node has finished.vvalue
is called to compute the return value of a virtual node.preorder
is called before the children are visited.collect
is called everytime a child has finished.postorder
is called after the children have been visited. If the predicate __p
returns true
, the walk is continued by switching back to preorder mode for this node. If it returns false
, the walk is over for this node.value
is called to compute the return value for this node. this function does not check for hitting the virtual ground node. Definition at line 1424 of file vgtl_algo.h.
_Visitor::return_value _recursive_multi_walk | ( | _Walker | __w, | |
_Visitor | __f | |||
) | [inline] |
perform a recursive pre+post order walk starting at __w
. At every node various methods of the visitor __f
are called:
vinit
is called before walking for every virtual node.vcollect
is called after a child of a virtual node has finished.vvalue
is called to compute the return value of a virtual node.preorder
is called before the children are visited.collect
is called everytime a child has finished.postorder
is called after the children have been visited. If it returns true
, the walk is continued by switching back to preorder mode for this node. If it returns false
, the walk is over for this node.value
is called to compute the return value for this node. this function does not check for hitting the virtual ground node. Definition at line 1170 of file vgtl_algo.h.
_Visitor::return_value _recursive_multi_walk_up | ( | _Walker | __w, | |
_Visitor | __f, | |||
_Predicate | __p | |||
) | [inline] |
perform a recursive pre+post order walk towards the root starting at __w
. At every node various methods of the visitor __f
are called:
vinit
is called before walking for every virtual node.vcollect
is called after a child of a virtual node has finished.vvalue
is called to compute the return value of a virtual node.preorder
is called before the children are visited.collect
is called everytime a child has finished.postorder
is called after the children have been visited. If the predicate __p
returns true
, the walk is continued by switching back to preorder mode for this node. If it returns false
, the walk is over for this node.value
is called to compute the return value for this node. this function does not check for hitting the virtual sky node. Definition at line 2352 of file vgtl_algo.h.
_Visitor::return_value _recursive_multi_walk_up | ( | _Walker | __w, | |
_Visitor | __f | |||
) | [inline] |
perform a recursive pre+post order walk towards the root starting at __w
. At every node various methods of the visitor __f
are called:
vinit
is called before walking for every virtual node.vcollect
is called after a child of a virtual node has finished.vvalue
is called to compute the return value of a virtual node.preorder
is called before the children are visited.collect
is called everytime a child has finished.postorder
is called after the children have been visited. If it returns true
, the walk is continued by switching back to preorder mode for this node. If it returns false
, the walk is over for this node.value
is called to compute the return value for this node. this function does not check for hitting the virtual sky node. Definition at line 2190 of file vgtl_algo.h.
_Visitor::return_value _recursive_postorder_walk | ( | _Walker | __w, | |
_Visitor | __f | |||
) | [inline] |
perform a recursive postorder walk starting at __w
. At every node various methods of the visitor __f
are called:
vinit
is called before walking for every virtual nodevcollect
is called after a child of a virtual node has finishedvvalue
is called to compute the return value of a virtual nodeinit
is called before the children are visitedcollect
is called everytime a child has finishedpostorder
is called after all children have finishedvalue
is called to compute the return value for this node this function does not check for hitting the virtual ground node. Definition at line 636 of file vgtl_algo.h.
_Visitor::return_value _recursive_postorder_walk_if | ( | _Walker | __w, | |
_Visitor | __f, | |||
_Predicate | __p | |||
) | [inline] |
perform a recursive postorder walk starting at __w
. At every node various methods of the visitor __f
are called:
vinit
is called before walking for every virtual nodevcollect
is called after a child of a virtual node has finishedvvalue
is called to compute the return value of a virtual nodeinit
is called before the children are visited. Then the predicate is called. If this predicate returns true
, the children are visited. Otherwise, the node is treated as if it was a terminal node.postorder
is called after all children have been visited.collect
is called everytime a child has finished.value
is called to compute the return value for this node. this function does not check for hitting the virtual ground node. Definition at line 927 of file vgtl_algo.h.
_Visitor::return_value _recursive_postorder_walk_up | ( | _Walker | __w, | |
_Visitor | __f | |||
) | [inline] |
perform a recursive postorder walk towards the root starting at __w
. At every node various methods of the visitor __f
are called:
vinit
is called before walking for every virtual nodevcollect
is called after a child of a virtual node has finishedvvalue
is called to compute the return value of a virtual nodeinit
is called before the children are visitedcollect
is called everytime a child has finishedpostorder
is called after all children have finishedvalue
is called to compute the return value for this node this function does not check for hitting the virtual sky node. Definition at line 1709 of file vgtl_algo.h.
_Visitor::return_value _recursive_postorder_walk_up_if | ( | _Walker | __w, | |
_Visitor | __f, | |||
_Predicate | __p | |||
) | [inline] |
perform a recursive postorder walk towards the root starting at __w
. At every node various methods of the visitor __f
are called:
vinit
is called before walking for every virtual nodevcollect
is called after a child of a virtual node has finishedvvalue
is called to compute the return value of a virtual nodeinit
is called before the children are visited. Then the predicate is called. If this predicate returns true
, the children are visited. Otherwise, the node is treated as if it was a terminal node.postorder
is called after all children have been visited.collect
is called everytime a child has finished.value
is called to compute the return value for this node. Definition at line 1785 of file vgtl_algo.h.
_Visitor::return_value _recursive_preorder_walk | ( | _Walker | __w, | |
_Visitor | __f | |||
) | [inline] |
perform a recursive preorder walk starting at __w
. At every node various methods of the visitor __f
are called:
vinit
is called before walking for every virtual nodevcollect
is called after a child of a virtual node has finishedvvalue
is called to compute the return value of a virtual nodepreorder
is called before the children are visitedcollect
is called everytime a child has finishedvalue
is called to compute the return value for this node this function does not check for hitting the virtual ground node. Definition at line 569 of file vgtl_algo.h.
_Visitor::return_value _recursive_preorder_walk_if | ( | _Walker | __w, | |
_Visitor | __f, | |||
_Predicate | __p | |||
) | [inline] |
perform a recursive preorder walk starting at __w
. At every node various methods of the visitor __f
are called:
vinit
is called before walking for every virtual nodevcollect
is called after a child of a virtual node has finishedvvalue
is called to compute the return value of a virtual nodepreorder
is called before the children are visited. Then the predicate is called. If this predicate returns true
, the children are visited. Otherwise, the node is treated as if it was a terminal node.collect
is called everytime a child has finishedvalue
is called to compute the return value for this node this function does not check for hitting the virtual ground node. Definition at line 848 of file vgtl_algo.h.
_Visitor::return_value _recursive_preorder_walk_if | ( | _Walker | __w, | |
_Visitor | __f | |||
) | [inline] |
perform a recursive preorder walk starting at __w
. At every node various methods of the visitor __f
are called:
vinit
is called before walking for every virtual nodevcollect
is called after a child of a virtual node has finishedvvalue
is called to compute the return value of a virtual nodepreorder
is called before the children are visited. If this function returns true
, the children are visited. Otherwise, the node is treated as if it was a terminal node.collect
is called everytime a child has finishedvalue
is called to compute the return value for this node this function does not check for hitting the virtual ground node. Definition at line 773 of file vgtl_algo.h.
_Visitor::return_value _recursive_preorder_walk_up | ( | _Walker | __w, | |
_Visitor | __f | |||
) | [inline] |
perform a recursive preorder walk towards the root starting at __w
. At every node various methods of the visitor __f
are called:
vinit
is called before walking for every virtual nodevcollect
is called after a child of a virtual node has finishedvvalue
is called to compute the return value of a virtual nodepreorder
is called before the children are visitedcollect
is called everytime a child has finishedvalue
is called to compute the return value for this node this function does not check for hitting the virtual sky node. Definition at line 1494 of file vgtl_algo.h.
_Visitor::return_value _recursive_preorder_walk_up_if | ( | _Walker | __w, | |
_Visitor | __f, | |||
_Predicate | __p | |||
) | [inline] |
perform a recursive preorder walk towards the root starting at __w
. At every node various methods of the visitor __f
are called:
vinit
is called before walking for every virtual nodevcollect
is called after a child of a virtual node has finishedvvalue
is called to compute the return value of a virtual nodepreorder
is called before the children are visited. Then the predicate is called. If this predicate returns true
, the children are visited. Otherwise, the node is treated as if it was a terminal node.collect
is called everytime a child has finishedvalue
is called to compute the return value for this node this function does not check for hitting the virtual sky node. Definition at line 1639 of file vgtl_algo.h.
_Visitor::return_value _recursive_preorder_walk_up_if | ( | _Walker | __w, | |
_Visitor | __f | |||
) | [inline] |
perform a recursive preorder walk towards the root starting at __w
. At every node various methods of the visitor __f
are called:
vinit
is called before walking for every virtual nodevcollect
is called after a child of a virtual node has finishedvvalue
is called to compute the return value of a virtual nodepreorder
is called before the children are visited. If this function returns true
, the children are visited. Otherwise, the node is treated as if it was a terminal node.collect
is called everytime a child has finishedvalue
is called to compute the return value for this node this function does not check for hitting the virtual sky node. Definition at line 1564 of file vgtl_algo.h.
_Visitor::return_value _recursive_safe_walk_if | ( | _Walker | __w, | |
_Visitor | __f | |||
) | [inline] |
perform a recursive pre+post order walk starting at __w
. At every node various methods of the visitor __f
are called:
vinit
is called before walking for every virtual nodevcollect
is called after a child of a virtual node has finishedvvalue
is called to compute the return value of a virtual nodepreorder
is called before the children are visited. If it returns true
, the children are visited. If it returns false
, the children are ignoredcollect
is called everytime a child has finishedpostorder
is called after the children have been visited. If it returns true
, the walk is continued by switching back to preorder mode for this node. If it returns false
, the walk is over for this node.value
is called to compute the return value for this node this function does not check for hitting the virtual ground node. Definition at line 114 of file vgtl_addalgo.h.
_Visitor::return_value _recursive_walk | ( | _Walker | __w, | |
_Visitor | __f | |||
) | [inline] |
perform a recursive pre+post order walk starting at __w
. At every node various methods of the visitor __f
are called:
vinit
is called before walking for every virtual nodevcollect
is called after a child of a virtual node has finishedvvalue
is called to compute the return value of a virtual nodepreorder
is called before the children are visitedcollect
is called everytime a child has finishedpostorder
is called after all children have been visitedvalue
is called to compute the return value for this node this function does not check for hitting the virtual ground node. Definition at line 703 of file vgtl_algo.h.
_Visitor::return_value _recursive_walk_if | ( | _Walker | __w, | |
_Visitor | __f, | |||
_Predicate1 | __p1, | |||
_Predicate2 | __p2 | |||
) | [inline] |
perform a recursive pre+post order walk starting at __w
. At every node various methods of the visitor __f
are called:
vinit
is called before walking for every virtual nodevcollect
is called after a child of a virtual node has finishedvvalue
is called to compute the return value of a virtual nodepreorder
is called before the children are visited. If then predicate p1
returns true
, the children are visited. If it returns false
, the children are ignoredcollect
is called everytime a child has finishedpostorder
is called after the children have been visited. If then predicate p2
returns true
, the walk is continued by switching back to preorder mode for this node. If it returns false
, the walk is over for this node.value
is called to compute the return value for this node this function does not check for hitting the virtual ground node. Definition at line 1259 of file vgtl_algo.h.
_Visitor::return_value _recursive_walk_if | ( | _Walker | __w, | |
_Visitor | __f | |||
) | [inline] |
perform a recursive pre+post order walk starting at __w
. At every node various methods of the visitor __f
are called:
vinit
is called before walking for every virtual nodevcollect
is called after a child of a virtual node has finishedvvalue
is called to compute the return value of a virtual nodepreorder
is called before the children are visited. If it returns true
, the children are visited. If it returns false
, the children are ignoredcollect
is called everytime a child has finishedpostorder
is called after the children have been visited. If it returns true
, the walk is continued by switching back to preorder mode for this node. If it returns false
, the walk is over for this node.value
is called to compute the return value for this node this function does not check for hitting the virtual ground node. Definition at line 1013 of file vgtl_algo.h.
_Visitor::return_value _recursive_walk_up | ( | _Walker | __w, | |
_Visitor | __f | |||
) | [inline] |
perform a recursive pre+post order walk towards the root starting at __w
. At every node various methods of the visitor __f
are called:
vinit
is called before walking for every virtual nodevcollect
is called after a child of a virtual node has finishedvvalue
is called to compute the return value of a virtual nodepreorder
is called before the children are visitedcollect
is called everytime a child has finishedpostorder
is called after all children have been visitedvalue
is called to compute the return value for this node this function does not check for hitting the virtual sky node. Definition at line 1855 of file vgtl_algo.h.
_Visitor::return_value _recursive_walk_up_if | ( | _Walker | __w, | |
_Visitor | __f, | |||
_Predicate1 | __p1, | |||
_Predicate2 | __p2 | |||
) | [inline] |
perform a recursive pre+post order walk towards the root starting at __w
. At every node various methods of the visitor __f
are called:
vinit
is called before walking for every virtual nodevcollect
is called after a child of a virtual node has finishedvvalue
is called to compute the return value of a virtual nodepreorder
is called before the children are visited. If then predicate p1
returns true
, the children are visited. If it returns false
, the children are ignoredcollect
is called everytime a child has finishedpostorder
is called after the children have been visited. If then predicate p2
returns true
, the walk is continued by switching back to preorder mode for this node. If it returns false
, the walk is over for this node.value
is called to compute the return value for this node this function does not check for hitting the virtual sky node. Definition at line 2028 of file vgtl_algo.h.
_Visitor::return_value _recursive_walk_up_if | ( | _Walker | __w, | |
_Visitor | __f | |||
) | [inline] |
perform a recursive pre+post order walk towards the root starting at __w
. At every node various methods of the visitor __f
are called:
vinit
is called before walking for every virtual node.vcollect
is called after a child of a virtual node has finished.vvalue
is called to compute the return value of a virtual node.preorder
is called before the children are visited. If it returns true
, the children are visited. If it returns false
, the children are ignored.collect
is called everytime a child has finished.postorder
is called after the children have been visited. If it returns true
, the walk is continued by switching back to preorder mode for this node. If it returns false
, the walk is over for this node.value
is called to compute the return value for this node. this function does not check for hitting the virtual sky node. Definition at line 1937 of file vgtl_algo.h.
_RandomAccessIter rfind | ( | _RandomAccessIter | __first, | |
_RandomAccessIter | __last, | |||
const _Tp & | __val, | |||
std::random_access_iterator_tag | ||||
) | [inline] |
This is an overload used by rfind()
(reverse find) for the Random Access Iterator case. rfind()
works like the STL find()
algorithm, just backwards.
Definition at line 87 of file vgtl_helpers.h.
_BidirIter rfind | ( | _BidirIter | __first, | |
_BidirIter | __last, | |||
const _Tp & | __val, | |||
std::bidirectional_iterator_tag | ||||
) | [inline] |
This is an overload used by rfind()
(reverse find) for the Bidirectional Iterator case. rfind()
works like the STL find()
algorithm, just backwards.
Definition at line 45 of file vgtl_helpers.h.
_RandomAccessIter rfind_if | ( | _RandomAccessIter | __first, | |
_RandomAccessIter | __last, | |||
_Predicate | __pred, | |||
std::random_access_iterator_tag | ||||
) | [inline] |
This is an overload used by rfind_if()
(reverse find if) for the Random Access Iterator case. rfind_if()
works like the STL find_if()
algorithm, just backwards.
Definition at line 137 of file vgtl_helpers.h.
_BidirIter rfind_if | ( | _BidirIter | __first, | |
_BidirIter | __last, | |||
_Predicate | __pred, | |||
std::bidirectional_iterator_tag | ||||
) | [inline] |
This is an overload used by rfind_if()
(reverse find if) for the Bidirectional Iterator case. rfind_if()
works like the STL find_if()
algorithm, just backwards.
Definition at line 65 of file vgtl_helpers.h.