1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
| module.exports = function walk(nodes, cb, bubble) {
| var i, max, node, result;
|
| for (i = 0, max = nodes.length; i < max; i += 1) {
| node = nodes[i];
| if (!bubble) {
| result = cb(node, i, nodes);
| }
|
| if (
| result !== false &&
| node.type === "function" &&
| Array.isArray(node.nodes)
| ) {
| walk(node.nodes, cb, bubble);
| }
|
| if (bubble) {
| cb(node, i, nodes);
| }
| }
| };
|
|