SCons.Node.Walker

SCons :: Node :: Walker :: Class Walker |
[hide private]
[frames] | no frames]

# Class Walker

source code

An iterator for walking a Node tree.

This is depth-first, children are visited before the parent. The Walker object can be initialized with any node, and returns the next node on the descent with each next() call. 'kids_func' is an optional function that will be called to get the children of a node instead of calling 'children'. 'cycle_func' is an optional function that will be called when a cycle is detected.

This class does not get caught in node cycles caused, for example, by C header file include loops.

Instance Methods | [hide private]
__init__(self, node, kids_func=<function get_children at 0xf0e938>, cycle_func=<function ignore_cycle at 0xf156e0>, eval_func=<function do_nothing at 0xf15758>) | source code
next(self) Return the next node for this walk of the tree. | source code
is_done(self) | source code

Method Details | [hide private]

### next(self) | source code
Return the next node for this walk of the tree. This function is intentionally iterative, not recursive, to sidestep any issues of stack size limitations.