export default function(callback, that) { | |
var node = this, nodes = [node], children, i, index = -1; | |
while (node = nodes.pop()) { | |
callback.call(that, node, ++index, this); | |
if (children = node.children) { | |
for (i = children.length - 1; i >= 0; --i) { | |
nodes.push(children[i]); | |
} | |
} | |
} | |
return this; | |
} | |