src/await/makeAwaitFunc.js
function traverseInPlace(o, visitor) {
    if (_.isArray(o)) {
        var len = o.length;
        for (var i = 0; i < len; ++i) {
            traverseInPlace(o[i], visitor);
            visitor(o, i);
        }
    }
    else if (_.isPlainObject(o)) {
        for (var key in o) {
            if (!o.hasOwnProperty(key))
                continue;
            traverseInPlace(o[key], visitor);
            visitor(o, key);
        }
    }
    return o;
}
function traverseInPlace(o, visitor) {
    if (_.isArray(o)) {
        var len = o.length;
        for (var i = 0; i < len; ++i) {
            traverseInPlace(o[i], visitor);
            visitor(o, i);
        }
    }
    else if (_.isPlainObject(o)) {
        for (var key in o) {
            if (!o.hasOwnProperty(key))
                continue;
            traverseInPlace(o[key], visitor);
            visitor(o, key);
        }
    }
    return o;
}
function traverseInPlace ( o , visitor ) { if ( _ . isArray ( o ) ) { var len = o . length ; for ( var i = 0 ; i < len ; ++ i ) { traverseInPlace ( o [ i ] , visitor ) ; visitor ( o , i ) ; } } else if ( _ . isPlainObject ( o ) ) { for ( var key in o ) { if ( ! o . hasOwnProperty ( key ) ) continue ; traverseInPlace ( o [ key ] , visitor ) ; visitor ( o , key ) ; } } return o ; }
In-place (ie non-cloning) object traversal.
In - place ( ie non - cloning ) object traversal .