Sha256: f0c88784d776b5cb886a7e43d6bdb3326a83ad19e8fded1b5cd4f4d77a704714

Contents?: true

Size: 938 Bytes

Versions: 25

Compression:

Stored size: 938 Bytes

Contents

"use strict";
module.exports = function(Promise, CapturedTrace, isDebugging) {
var contextStack = [];
function Context() {
    this._trace = new CapturedTrace(peekContext());
}
Context.prototype._pushContext = function () {
    if (!isDebugging()) return;
    if (this._trace !== undefined) {
        contextStack.push(this._trace);
    }
};

Context.prototype._popContext = function () {
    if (!isDebugging()) return;
    if (this._trace !== undefined) {
        contextStack.pop();
    }
};

function createContext() {
    if (isDebugging()) return new Context();
}

function peekContext() {
    var lastIndex = contextStack.length - 1;
    if (lastIndex >= 0) {
        return contextStack[lastIndex];
    }
    return undefined;
}

Promise.prototype._peekContext = peekContext;
Promise.prototype._pushContext = Context.prototype._pushContext;
Promise.prototype._popContext = Context.prototype._popContext;

return createContext;
};

Version data entries

25 entries across 19 versions & 6 rubygems

Version Path
gulp_assets-1.0.0.pre.5 template/node_modules/gulp-sass/node_modules/node-sass/node_modules/request/node_modules/har-validator/node_modules/bluebird/js/main/context.js
gulp_assets-1.0.0.pre.4 template/node_modules/babel-core/node_modules/bluebird/js/main/context.js
gulp_assets-1.0.0.pre.4 template/node_modules/gulp-sass/node_modules/node-sass/node_modules/request/node_modules/har-validator/node_modules/bluebird/js/main/context.js
gulp_assets-1.0.0.pre.3 template/node_modules/babel-core/node_modules/bluebird/js/main/context.js
gulp_assets-1.0.0.pre.3 template/node_modules/gulp-sass/node_modules/node-sass/node_modules/request/node_modules/har-validator/node_modules/bluebird/js/main/context.js