def _iter_descendants_levelorder(self, is_leaf_fn=None):
tovisit = deque([self])<EOL>while len(tovisit) > <NUM_LIT:0>:<EOL><INDENT>node = tovisit.popleft()<EOL>yield node<EOL>if not is_leaf_fn or not is_leaf_fn(node):<EOL><INDENT>tovisit.extend(node.children)<EOL><DEDENT><DEDENT>
Iterate over all desdecendant nodes.