def _traverse_nodes(self):
        """ Debugging function (exposes cython nodes as dummy nodes) """
        node = self.root
        stack = []
        while stack or node is not None:
            if node is not None:
                stack.append(node)
                node = node.left
            else:
                node = stack.pop()
                yield node
                node = node.right