first commit
This commit is contained in:
124
build/node_modules/prepack/lib/debugger/BreakpointManager.js
generated
vendored
Normal file
124
build/node_modules/prepack/lib/debugger/BreakpointManager.js
generated
vendored
Normal file
@@ -0,0 +1,124 @@
|
||||
"use strict";
|
||||
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
exports.BreakpointManager = undefined;
|
||||
|
||||
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); /**
|
||||
* Copyright (c) 2017-present, Facebook, Inc.
|
||||
* All rights reserved.
|
||||
*
|
||||
* This source code is licensed under the BSD-style license found in the
|
||||
* LICENSE file in the root directory of this source tree. An additional grant
|
||||
* of patent rights can be found in the PATENTS file in the same directory.
|
||||
*/
|
||||
|
||||
var _PerFileBreakpointMap = require("./PerFileBreakpointMap.js");
|
||||
|
||||
var _Breakpoint = require("./Breakpoint.js");
|
||||
|
||||
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
||||
|
||||
// Storing BreakpointStores for all source files
|
||||
var BreakpointManager = exports.BreakpointManager = function () {
|
||||
function BreakpointManager() {
|
||||
_classCallCheck(this, BreakpointManager);
|
||||
|
||||
this._breakpointMaps = new Map();
|
||||
}
|
||||
|
||||
_createClass(BreakpointManager, [{
|
||||
key: "addBreakpointMulti",
|
||||
value: function addBreakpointMulti(breakpoints) {
|
||||
this._doBreakpointsAction(breakpoints, this._addBreakpoint.bind(this));
|
||||
}
|
||||
}, {
|
||||
key: "_addBreakpoint",
|
||||
value: function _addBreakpoint(bp) {
|
||||
if (!(bp.filePath in this._breakpointMaps)) {
|
||||
this._breakpointMaps[bp.filePath] = new _PerFileBreakpointMap.PerFileBreakpointMap(bp.filePath);
|
||||
}
|
||||
var breakpointMap = this._breakpointMaps[bp.filePath];
|
||||
breakpointMap.addBreakpoint(bp.line, bp.column);
|
||||
}
|
||||
}, {
|
||||
key: "getBreakpoint",
|
||||
value: function getBreakpoint(filePath, lineNum) {
|
||||
var columnNum = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0;
|
||||
|
||||
if (filePath in this._breakpointMaps) {
|
||||
var breakpointMap = this._breakpointMaps[filePath];
|
||||
return breakpointMap.getBreakpoint(lineNum, columnNum);
|
||||
}
|
||||
return undefined;
|
||||
}
|
||||
}, {
|
||||
key: "removeBreakpointMulti",
|
||||
value: function removeBreakpointMulti(breakpoints) {
|
||||
this._doBreakpointsAction(breakpoints, this._removeBreakpoint.bind(this));
|
||||
}
|
||||
}, {
|
||||
key: "_removeBreakpoint",
|
||||
value: function _removeBreakpoint(bp) {
|
||||
if (bp.filePath in this._breakpointMaps) {
|
||||
this._breakpointMaps[bp.filePath].removeBreakpoint(bp.line, bp.column);
|
||||
}
|
||||
}
|
||||
}, {
|
||||
key: "enableBreakpointMulti",
|
||||
value: function enableBreakpointMulti(breakpoints) {
|
||||
this._doBreakpointsAction(breakpoints, this._enableBreakpoint.bind(this));
|
||||
}
|
||||
}, {
|
||||
key: "_enableBreakpoint",
|
||||
value: function _enableBreakpoint(bp) {
|
||||
if (bp.filePath in this._breakpointMaps) {
|
||||
this._breakpointMaps[bp.filePath].enableBreakpoint(bp.line, bp.column);
|
||||
}
|
||||
}
|
||||
}, {
|
||||
key: "disableBreakpointMulti",
|
||||
value: function disableBreakpointMulti(breakpoints) {
|
||||
this._doBreakpointsAction(breakpoints, this._disableBreakpoint.bind(this));
|
||||
}
|
||||
}, {
|
||||
key: "_disableBreakpoint",
|
||||
value: function _disableBreakpoint(bp) {
|
||||
if (bp.filePath in this._breakpointMaps) {
|
||||
this._breakpointMaps[bp.filePath].disableBreakpoint(bp.line, bp.column);
|
||||
}
|
||||
}
|
||||
}, {
|
||||
key: "_doBreakpointsAction",
|
||||
value: function _doBreakpointsAction(breakpoints, action) {
|
||||
var _iteratorNormalCompletion = true;
|
||||
var _didIteratorError = false;
|
||||
var _iteratorError = undefined;
|
||||
|
||||
try {
|
||||
for (var _iterator = breakpoints[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
|
||||
var bp = _step.value;
|
||||
|
||||
action(bp);
|
||||
}
|
||||
} catch (err) {
|
||||
_didIteratorError = true;
|
||||
_iteratorError = err;
|
||||
} finally {
|
||||
try {
|
||||
if (!_iteratorNormalCompletion && _iterator.return) {
|
||||
_iterator.return();
|
||||
}
|
||||
} finally {
|
||||
if (_didIteratorError) {
|
||||
throw _iteratorError;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}]);
|
||||
|
||||
return BreakpointManager;
|
||||
}();
|
||||
//# sourceMappingURL=BreakpointManager.js.map
|
||||
Reference in New Issue
Block a user