commands.js |
When given a string that begins with `:` and a unix style string,
format a JS like object.
This is intended to be used by the WebConsole actor only.
@param String string
A string to format that begins with `:`.
@returns String formatted as `command({ ..args })`
|
7246 |
eager-ecma-allowlist.js |
global BigInt |
5517 |
eager-function-allowlist.js |
|
1844 |
eval-with-debugger.js |
Evaluates a string using the debugger API.
To allow the variables view to update properties from the Web Console we
provide the "selectedObjectActor" mechanism: the Web Console tells the
ObjectActor ID for which it desires to evaluate an expression. The
Debugger.Object pointed at by the actor ID is bound such that it is
available during expression evaluation (executeInGlobalWithBindings()).
Example:
_self['foobar'] = 'test'
where |_self| refers to the desired object.
The |frameActor| property allows the Web Console client to provide the
frame actor ID, such that the expression can be evaluated in the
user-selected stack frame.
For the above to work we need the debugger and the Web Console to share
a connection, otherwise the Web Console actor will not find the frame
actor.
The Debugger.Frame comes from the jsdebugger's Debugger instance, which
is different from the Web Console's Debugger instance. This means that
for evaluation to work, we need to create a new instance for the Web
Console Commands helpers - they need to be Debugger.Objects coming from the
jsdebugger's Debugger instance.
When |selectedObjectActor| is used objects can come from different iframes,
from different domains. To avoid permission-related errors when objects
come from a different window, we also determine the object's own global,
such that evaluation happens in the context of that global. This means that
evaluation will happen in the object's iframe, rather than the top level
window.
@param string string
String to evaluate.
@param object [options]
Options for evaluation:
- selectedObjectActor: the ObjectActor ID to use for evaluation.
|evalWithBindings()| will be called with one additional binding:
|_self| which will point to the Debugger.Object of the given
ObjectActor. Executes with the top level window as the global.
- frameActor: the FrameActor ID to use for evaluation. The given
debugger frame is used for evaluation, instead of the global window.
- selectedNodeActor: the NodeActor ID of the currently selected node
in the Inspector (or null, if there is no selection). This is used
for helper functions that make reference to the currently selected
node, like $0.
- innerWindowID: An optional window id to use instead of webConsole.evalWindow.
This is used by function that need to evaluate in a different window for which
we don't have a dedicated target (for example a non-remote iframe).
- eager: Set to true if you want the evaluation to bail if it may have side effects.
- url: the url to evaluate the script as. Defaults to "debugger eval code",
or "debugger eager eval code" if eager is true.
@param object webConsole
@return object
An object that holds the following properties:
- dbg: the debugger where the string was evaluated.
- frame: (optional) the frame where the string was evaluated.
- global: the Debugger.Object for the global where the string was evaluated in.
- result: the result of the evaluation.
- helperResult: any result coming from a Web Console commands
function.
|
23951 |
listeners |
|
|
moz.build |
|
560 |
utils.js |
Given a message, return one of CONSOLE_WORKER_IDS if it matches
one of those.
@return string
|
17250 |
webidl-deprecated-list.js |
|
2089 |
webidl-pure-allowlist.js |
|
4649 |
worker-listeners.js |
global setConsoleEventHandler, retrieveConsoleEvents |
1054 |