1 | var traverse;
|
2 |
|
3 | module.exports = traverse = function(object, visitor) {
|
4 | var key, child;
|
5 |
|
6 | if (visitor.call(null, object) === false) {
|
7 | return;
|
8 | }
|
9 | for (key in object) {
|
10 | if (Object.prototype.hasOwnProperty.call(object, key)) {
|
11 | child = object[key];
|
12 | if (typeof child === 'object' && child !== null) {
|
13 | traverse(child, visitor);
|
14 | }
|
15 | }
|
16 | }
|
17 | };
|