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

Unified Diff: third_party/WebKit/Source/devtools/front_end/sdk/DebuggerModel.js

Issue 2795193003: DevTools: carefully cleanup script UISourceCodes (Closed)
Patch Set: address comments Created 3 years, 8 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
Index: third_party/WebKit/Source/devtools/front_end/sdk/DebuggerModel.js
diff --git a/third_party/WebKit/Source/devtools/front_end/sdk/DebuggerModel.js b/third_party/WebKit/Source/devtools/front_end/sdk/DebuggerModel.js
index 657d96b6bdd6a58aa2b452f7f7bababdbb69889b..fb5ad2e18ee5a65cb7081b2287c74b76068b3b73 100644
--- a/third_party/WebKit/Source/devtools/front_end/sdk/DebuggerModel.js
+++ b/third_party/WebKit/Source/devtools/front_end/sdk/DebuggerModel.js
@@ -49,8 +49,8 @@ SDK.DebuggerModel = class extends SDK.SDKModel {
/** @type {?SDK.DebuggerPausedDetails} */
this._debuggerPausedDetails = null;
- /** @type {!Object.<string, !SDK.Script>} */
- this._scripts = {};
+ /** @type {!Map<string, !SDK.Script>} */
+ this._scripts = new Map();
/** @type {!Map.<string, !Array.<!SDK.Script>>} */
this._scriptsBySourceURL = new Map();
/** @type {!Array.<!SDK.Script>} */
@@ -345,17 +345,17 @@ SDK.DebuggerModel = class extends SDK.SDKModel {
this._sourceMapManager.detachSourceMap(scriptWithSourceMap);
this._sourceMapIdToScript.clear();
- this._scripts = {};
+ this._scripts.clear();
this._scriptsBySourceURL.clear();
this._stringMap.clear();
this._discardableScripts = [];
}
/**
- * @return {!Object.<string, !SDK.Script>}
+ * @return {!Array<!SDK.Script>}
*/
- get scripts() {
- return this._scripts;
+ scripts() {
+ return Array.from(this._scripts.values());
}
/**
@@ -363,7 +363,7 @@ SDK.DebuggerModel = class extends SDK.SDKModel {
* @return {?SDK.Script}
*/
scriptForId(scriptId) {
- return this._scripts[scriptId] || null;
+ return this._scripts.get(scriptId) || null;
}
/**
@@ -376,12 +376,26 @@ SDK.DebuggerModel = class extends SDK.SDKModel {
}
/**
+ * @param {!SDK.ExecutionContext} executionContext
+ * @return {!Array<!SDK.Script>}
+ */
+ scriptsForExecutionContext(executionContext) {
+ var result = [];
+ for (var script of this._scripts.values()) {
+ if (script.executionContextId === executionContext.id)
+ result.push(script);
+ }
+ return result;
+ }
+
+ /**
* @param {!Protocol.Runtime.ScriptId} scriptId
* @param {string} newSource
* @param {function(?Protocol.Error, !Protocol.Runtime.ExceptionDetails=)} callback
*/
setScriptSource(scriptId, newSource, callback) {
- this._scripts[scriptId].editSource(newSource, this._didEditScriptSource.bind(this, scriptId, newSource, callback));
+ this._scripts.get(scriptId).editSource(
+ newSource, this._didEditScriptSource.bind(this, scriptId, newSource, callback));
}
/**
@@ -573,7 +587,7 @@ SDK.DebuggerModel = class extends SDK.SDKModel {
* @param {!SDK.Script} script
*/
_registerScript(script) {
- this._scripts[script.scriptId] = script;
+ this._scripts.set(script.scriptId, script);
if (script.isAnonymousScript())
return;
@@ -590,7 +604,7 @@ SDK.DebuggerModel = class extends SDK.SDKModel {
*/
_unregisterScript(script) {
console.assert(script.isAnonymousScript());
- delete this._scripts[script.scriptId];
+ this._scripts.delete(script.scriptId);
}
_collectDiscardedScripts() {

Powered by Google App Engine
This is Rietveld 408576698