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