Closed Bug 568138 Opened 14 years ago Closed 12 years ago

Draft C++ js::dbg2 breakpoint API

Categories

(Core :: JavaScript Engine, defect)

defect
Not set
normal

Tracking

()

RESOLVED WONTFIX

People

(Reporter: jimb, Unassigned)

References

(Blocks 1 open bug)

Details

Write a C++ API declaring:

* A class representing a position at which a breakpoint can be set, expressed in terms of textual positions (URL, line, and column) or in terms of function names (a global object, a series of containing function names, and a final function name), or in terms of specific function objects.

The API should permit the "grammar" of breakpoint locations to be extended in the future (to describe, say, function-valued properties in object literals).

These should be designed such that, in normal, efficent use, no explicit storage management (new/delete) is required.

URLs in breakpoint locations should be represented as entries in the runtime's scriptFilenameTable. This means that, given a breakpoint location, we have immediate access to the list of JSScripts derived from the source code to which the location refers.

If possible, the URL/line/column variant of this type should be suitable for use by the js::dbg2 stack frame type to represent source positions; we should not need two distinct types that represent locations in source code.

* A class representing a breakpoint, js::dbg2::Breakpoint, which can be inserted in or removed from a debugging sphere. This API will not be concerned with breakpoint conditions, ignore counts, and such; those behaviors must be implemented by the client of the js::dbg2 interface.

* A stub js::dbg2::Sphere class, sufficient for bootstrapping, constructed from a given global object.

* Debugging sphere member functions for enumerating the currently inserted breakpoints.
Blocks: 568139
Component: JavaScript Debugging/Profiling APIs → JavaScript Engine
We're not going to implement the C++-level API described in this bug. This feature is already implemented in the Debugger API: https://wiki.mozilla.org/Debugger
Status: NEW → RESOLVED
Closed: 12 years ago
Resolution: --- → WONTFIX
You need to log in before you can comment on or make changes to this bug.