Firebug 1.7: Firebug Service

From FirebugWiki

(Difference between revisions)
Jump to: navigation, search
(Interfaces)
m (Fixed link to JSDocs)
(2 intermediate revisions not shown)
Line 2: Line 2:
==Resources==
==Resources==
-
* JSDoc on getfirebug.com/developer/api
+
* [http://getfirebug.com/wiki/index.php/Jsd jsd] page on this wiki
 +
* [http://getfirebug.com/developer/api/firebug1.7/ JSDocs]
 +
* [http://getfirebug.com/wiki/index.php/Firebug_1.7:_Mozilla_Backend Mozilla Backend]
==Objects==
==Objects==
Line 18: Line 20:
* IntoStepper(debuggr, context)
* IntoStepper(debuggr, context)
-
==Interfaces==
+
== Interfaces ==
List of JSD interfaces utilized by Firebug debugger.
List of JSD interfaces utilized by Firebug debugger.
Line 28: Line 30:
* jsdIExecutionHook
* jsdIExecutionHook
* jsdIContext This one is not useful
* jsdIContext This one is not useful
 +
 +
== Stepping ==
 +
Stepping in the debugger (over, into, out) is implemented using ''steppers''. These objects behave the same way as the Controller in famous MVC pattern.
 +
 +
 +
=== Step Over: Line Stepper ===
 +
Following diagram depicts how '''step over''' logic is implemented and how ''Line Stepper'' object is involved.
 +
 +
[[File:Step-over.png]]
 +
 +
* All logic associated with the Firebug.Debugger object (onBreak, stop, enterNestedEventLoop and exitNestedEventLoop should be part of Firebug Service (FBS)

Revision as of 10:47, 24 January 2012

Some notes about firebug-service module analysis in Firebug 1.7

Contents

Resources

Objects

List of helper objects used by Firebug debugger.

  • fbs: a self reference, to avoid 'this' since fbs is one per application.
  • jsdHandlers: global holding all of the current created jsd hooks
  • FirebugPrefsObserver
  • BreakOnNextCall(debuggr, context)

Stepper Objects

Every time a user steps one or more of these are created.

  • LineStepper(debuggr, context)
  • OutStepper(debuggr, context)
  • IntoStepper(debuggr, context)

Interfaces

List of JSD interfaces utilized by Firebug debugger.

Stepping

Stepping in the debugger (over, into, out) is implemented using steppers. These objects behave the same way as the Controller in famous MVC pattern.


Step Over: Line Stepper

Following diagram depicts how step over logic is implemented and how Line Stepper object is involved.

Step-over.png

  • All logic associated with the Firebug.Debugger object (onBreak, stop, enterNestedEventLoop and exitNestedEventLoop should be part of Firebug Service (FBS)
Personal tools