Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(121)

Unified Diff: third_party/WebKit/Source/devtools/front_end/bindings/BreakpointManager.js

Issue 2163093003: [DevTools] Remove Object.values and Object.isEmpty from utilities.js (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | third_party/WebKit/Source/devtools/front_end/extensions/ExtensionServer.js » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: third_party/WebKit/Source/devtools/front_end/bindings/BreakpointManager.js
diff --git a/third_party/WebKit/Source/devtools/front_end/bindings/BreakpointManager.js b/third_party/WebKit/Source/devtools/front_end/bindings/BreakpointManager.js
index 867152495d1f555a61ea269f7bca0069d4401567..867c2297ce28b380888feab6a88bc4d937b98820 100644
--- a/third_party/WebKit/Source/devtools/front_end/bindings/BreakpointManager.js
+++ b/third_party/WebKit/Source/devtools/front_end/bindings/BreakpointManager.js
@@ -483,8 +483,8 @@ WebInspector.BreakpointManager.Breakpoint = function(breakpointManager, projectI
this._columnNumber = columnNumber;
this._sourceFileId = sourceFileId;
- /** @type {!Object.<string, number>} */
- this._numberOfDebuggerLocationForUILocation = {};
+ /** @type {!Map<string, number>} */
+ this._numberOfDebuggerLocationForUILocation = new Map();
// Force breakpoint update.
/** @type {string} */ this._condition;
@@ -580,10 +580,9 @@ WebInspector.BreakpointManager.Breakpoint.prototype = {
this._removeUILocation(oldUILocation, true);
this._removeFakeBreakpointAtPrimaryLocation();
- if (!this._numberOfDebuggerLocationForUILocation[newUILocation.id()])
- this._numberOfDebuggerLocationForUILocation[newUILocation.id()] = 0;
-
- if (++this._numberOfDebuggerLocationForUILocation[newUILocation.id()] === 1)
+ var current = (this._numberOfDebuggerLocationForUILocation.get(newUILocation.id()) || 0) + 1;
+ this._numberOfDebuggerLocationForUILocation.set(newUILocation.id(), current);
+ if (current === 1)
this._breakpointManager._uiLocationAdded(this, newUILocation);
},
@@ -593,10 +592,14 @@ WebInspector.BreakpointManager.Breakpoint.prototype = {
*/
_removeUILocation: function(uiLocation, muteCreationFakeBreakpoint)
{
- if (!uiLocation || --this._numberOfDebuggerLocationForUILocation[uiLocation.id()] !== 0)
+ if (!uiLocation || !this._numberOfDebuggerLocationForUILocation.has(uiLocation.id()))
+ return;
+ var current = (this._numberOfDebuggerLocationForUILocation.get(uiLocation.id()) || 0) - 1;
+ this._numberOfDebuggerLocationForUILocation.set(uiLocation.id(), current);
+ if (current !== 0)
return;
- delete this._numberOfDebuggerLocationForUILocation[uiLocation.id()];
+ this._numberOfDebuggerLocationForUILocation.delete(uiLocation.id());
this._breakpointManager._uiLocationRemoved(this, uiLocation);
if (!muteCreationFakeBreakpoint)
this._fakeBreakpointAtPrimaryLocation();
@@ -694,7 +697,7 @@ WebInspector.BreakpointManager.Breakpoint.prototype = {
_fakeBreakpointAtPrimaryLocation: function()
{
- if (this._isRemoved || !Object.isEmpty(this._numberOfDebuggerLocationForUILocation) || this._fakePrimaryLocation)
+ if (this._isRemoved || this._numberOfDebuggerLocationForUILocation.size || this._fakePrimaryLocation)
return;
var uiSourceCode = this._breakpointManager._workspace.uiSourceCode(this._projectId, this._path);
@@ -741,8 +744,8 @@ WebInspector.BreakpointManager.TargetBreakpoint = function(debuggerModel, breakp
this._liveLocations = new WebInspector.LiveLocationPool();
- /** @type {!Object.<string, !WebInspector.UILocation>} */
- this._uiLocations = {};
+ /** @type {!Map<string, !WebInspector.UILocation>} */
+ this._uiLocations = new Map();
this._debuggerModel.addEventListener(WebInspector.DebuggerModel.Events.DebuggerWasDisabled, this._cleanUpAfterDebuggerIsGone, this);
this._debuggerModel.addEventListener(WebInspector.DebuggerModel.Events.DebuggerWasEnabled, this._scheduleUpdateInDebugger, this);
this._hasPendingUpdate = false;
@@ -757,11 +760,10 @@ WebInspector.BreakpointManager.TargetBreakpoint.prototype = {
_resetLocations: function()
{
- var uiLocations = Object.values(this._uiLocations);
- for (var i = 0; i < uiLocations.length; ++i)
- this._breakpoint._removeUILocation(uiLocations[i]);
+ for (var uiLocation of this._uiLocations.values())
+ this._breakpoint._removeUILocation(uiLocation);
- this._uiLocations = {};
+ this._uiLocations.clear();
this._liveLocations.disposeAll();
},
@@ -922,8 +924,8 @@ WebInspector.BreakpointManager.TargetBreakpoint.prototype = {
var uiLocation = liveLocation.uiLocation();
if (!uiLocation)
return;
- var oldUILocation = this._uiLocations[location.id()] || null;
- this._uiLocations[location.id()] = uiLocation;
+ var oldUILocation = this._uiLocations.get(location.id()) || null;
+ this._uiLocations.set(location.id(), uiLocation);
this._breakpoint._replaceUILocation(oldUILocation, uiLocation);
},
« no previous file with comments | « no previous file | third_party/WebKit/Source/devtools/front_end/extensions/ExtensionServer.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698