mirror of
https://github.com/EiffelSoftware/eiffel-org.git
synced 2025-12-06 14:52:03 +01:00
Author:halw
Date:2009-01-14T18:16:46.000000Z git-svn-id: https://svn.eiffel.com/eiffel-org/trunk@163 abb3cda0-5349-4a8f-a601-0c33ac3a8c38
This commit is contained in:
@@ -11,7 +11,7 @@ You can also query features dynamically by using the evaluation tool, which can
|
|||||||
|
|
||||||
{{seealso|<br/>
|
{{seealso|<br/>
|
||||||
[[Interrupting an application|Pausing an application]] <br/>
|
[[Interrupting an application|Pausing an application]] <br/>
|
||||||
[[Callstack tool: Introduction|Call stack tool]] <br/>
|
[[Call stack tool]] <br/>
|
||||||
[[Objects tool: Introduction|Object tool]] <br/>
|
[[Objects tool: Introduction|Object tool]] <br/>
|
||||||
[[Expression evaluation: Introduction|Evaluation tool]] }}
|
[[Expression evaluation: Introduction|Evaluation tool]] }}
|
||||||
|
|
||||||
|
|||||||
@@ -7,10 +7,11 @@ Display all breakpoints in a grid:<br/>
|
|||||||
|
|
||||||
[[Image:breakpoints-list]]
|
[[Image:breakpoints-list]]
|
||||||
|
|
||||||
Note: the * shows that the breakpoint has a [[Breakpoint menu|condition]] .<br/>
|
{{note|<br/>
|
||||||
Note: you can edit the selected breakpoint by double clicking on it, or pressing [enter] which show the menu.<br/>
|
The * shows that the breakpoint has a [[Breakpoint menu|condition]] .<br/>
|
||||||
Note: you can disable/enable the selected breakpoint(s) by pressing [space].<br/>
|
You can edit the selected breakpoint by double clicking on it, or pressing [enter] which show the menu.<br/>
|
||||||
Note: you can sort by clicking the column, especially the first column which provide tree, flat or sorted view.
|
You can disable/enable the selected breakpoint(s) by pressing [space].<br/>
|
||||||
|
You can sort by clicking the column, especially the first column which provide tree, flat or sorted view. }}
|
||||||
|
|
||||||
Display all breakpoints in a list:<br/>
|
Display all breakpoints in a list:<br/>
|
||||||
|
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ Once done a dialog pops up where you can enter a condition:
|
|||||||
The condition is a Boolean expression that follows the same rule as the expression you can enter in the [[Expression evaluation|expression evaluation tool]] . <br/>
|
The condition is a Boolean expression that follows the same rule as the expression you can enter in the [[Expression evaluation|expression evaluation tool]] . <br/>
|
||||||
|
|
||||||
|
|
||||||
{{warning|'''Caution''': if you enter an expression that is not supported or which raises an error during evaluation, by default the condition is considered as True (then the debugger will stop) }}
|
{{caution|If you enter an expression that is not supported or which raises an error during evaluation, by default the condition is considered as True (then the debugger will stop) }}
|
||||||
|
|
||||||
{{seealso|<br/>
|
{{seealso|<br/>
|
||||||
[[Breakpoint editing|Breakpoint menu]] <br/>
|
[[Breakpoint editing|Breakpoint menu]] <br/>
|
||||||
|
|||||||
@@ -3,6 +3,7 @@
|
|||||||
[[Property:uuid|ff70f68f-31db-c5d1-4d68-7b0fc70b1dd7]]
|
[[Property:uuid|ff70f68f-31db-c5d1-4d68-7b0fc70b1dd7]]
|
||||||
[[Image:call-stack-tool]]
|
[[Image:call-stack-tool]]
|
||||||
|
|
||||||
|
|
||||||
The call stack tool gives information about the current call stack of a debugged application.
|
The call stack tool gives information about the current call stack of a debugged application.
|
||||||
|
|
||||||
It is mainly composed of a list representing the call stack elements, where the entry feature of the program is at the bottom and the top of the call stack is at the top. <br/>
|
It is mainly composed of a list representing the call stack elements, where the entry feature of the program is at the bottom and the top of the call stack is at the top. <br/>
|
||||||
@@ -14,10 +15,14 @@ It is mainly composed of a list representing the call stack elements, where the
|
|||||||
On top of this list, a line gives the state of the debugged application, and another one describes the exception that caused the application to stop, if any. For more information concerning exceptions, see the [[Supported exceptions|supported exceptions]] .
|
On top of this list, a line gives the state of the debugged application, and another one describes the exception that caused the application to stop, if any. For more information concerning exceptions, see the [[Supported exceptions|supported exceptions]] .
|
||||||
The button [[Image:debug-exception-dialog-icon]] is used to open the Exception dialog which show the exception details. For instance a call on Void target in a dotnet system would popup :
|
The button [[Image:debug-exception-dialog-icon]] is used to open the Exception dialog which show the exception details. For instance a call on Void target in a dotnet system would popup :
|
||||||
|
|
||||||
<center> [[Image:exception-dialog]] </center>
|
|
||||||
|
[[Image:exception-dialog]]
|
||||||
|
|
||||||
|
|
||||||
When more than one thread is available to the debugger, you can switch from one to the other, for that you have to click on the thread's id "0x000..." and select from the popup list of available threads. Or (recommended) you can use the [[Threads tool|threads tool]] (clicking on '''Show threads panel''' will show the threads tool).
|
When more than one thread is available to the debugger, you can switch from one to the other, for that you have to click on the thread's id "0x000..." and select from the popup list of available threads. Or (recommended) you can use the [[Threads tool|threads tool]] (clicking on '''Show threads panel''' will show the threads tool).
|
||||||
<center> [[Image:call-stack-tool-with-threads]] </center>
|
|
||||||
|
|
||||||
|
[[Image:call-stack-tool-with-threads]]
|
||||||
|
|
||||||
|
|
||||||
In the toolbar, the button [[Image:general-save-icon]] gives the possibility to [[Save call stack|save the call stack]] to a text file, and the button [[Image:general-copy-icon]] copy to the clipboard. The [[Image:debugger-callstack-depth-icon]] button makes it possible to choose which call stack depth should be displayed in the list (the default is to display the 100 top stack elements, but it is configurable with the same button).
|
In the toolbar, the button [[Image:general-save-icon]] gives the possibility to [[Save call stack|save the call stack]] to a text file, and the button [[Image:general-copy-icon]] copy to the clipboard. The [[Image:debugger-callstack-depth-icon]] button makes it possible to choose which call stack depth should be displayed in the list (the default is to display the 100 top stack elements, but it is configurable with the same button).
|
||||||
|
|||||||
@@ -1,12 +1,14 @@
|
|||||||
[[Property:title|Call stack tool]]
|
[[Property:title|Call stack tool]]
|
||||||
[[Property:weight|-13]]
|
[[Property:weight|-13]]
|
||||||
[[Property:uuid|8c3cd0fe-78aa-7ec6-f36a-2233a4e26755]]
|
[[Property:uuid|8c3cd0fe-78aa-7ec6-f36a-2233a4e26755]]
|
||||||
* [[Callstack tool: Introduction|Introduction]]
|
The call stack is the list of routines that have been entered during execution, but not yet exited since execution started. The list can be considered a '''stack''' structure, because before any routine, say <code>my_routine</code>, can exit, any routine that <code>my_routine</code> may have called must have exited first. Therefore the last entered feature is listed at the top of the stack and the program root feature is its bottom.
|
||||||
* [[Call stack tool: Interface|Call stack tool]]
|
|
||||||
* [[Information relative to a stack element|Information about the current stack level]]
|
There is one level in the call stack, the currently selected element, that has a special status. It is the level to which all debugging tools refer. The currently selected element is, as you might guess, user-selectable. So it is possible to move along the call stack, changing the currently selected element, and view information in the debugging tools about any level..
|
||||||
* [[Supported exceptions|Supported exceptions]]
|
|
||||||
* [[Save call stack|Save call stack command]]
|
To keep a record of a call stack (for example in order to indicate to other people where a problem occurred), you can [[Save call stack|save the call stack]] to a text file.
|
||||||
|
|
||||||
|
Information concerning the call stack is spread over several graphical components:
|
||||||
|
* The entire call stack, depicted as a list of elements, is displayed in the [[Call stack tool: Interface|call stack tool]] .
|
||||||
|
* [[Information relative to a stack element|Information concerning the current call stack element]] is displayed in the feature tab, the locals view, and is used to provide the expressions evaluations contained in the [[Evaluation tool or Watch tool|Expression evaluator tool]] .
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
[[Property:uuid|846b52cb-6654-23be-3576-cc175a6fbf04]]
|
[[Property:uuid|846b52cb-6654-23be-3576-cc175a6fbf04]]
|
||||||
This command stops the execution of a running debugged application.
|
This command stops the execution of a running debugged application.
|
||||||
|
|
||||||
This gives access to dynamic information concerning the application, such as the current [[Callstack tool: Introduction|call stack]] and the [[Objects tool: Introduction|state of objects]] in the system.
|
This gives access to dynamic information concerning the application, such as the current [[Call stack tool|call stack]] and the [[Objects tool: Introduction|state of objects]] in the system.
|
||||||
|
|
||||||
It is accessible through the '''project''' toolbar ( [[Image:debug-pause-icon]] ) or through the '''debug''' menu.
|
It is accessible through the '''project''' toolbar ( [[Image:debug-pause-icon]] ) or through the '''debug''' menu.
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
[[Property:title|Debugger]]
|
[[Property:title|Debugger]]
|
||||||
[[Property:weight|-8]]
|
[[Property:weight|-8]]
|
||||||
[[Property:uuid|31c4857e-f19e-e9e3-b7db-d6c30515277f]]
|
[[Property:uuid|31c4857e-f19e-e9e3-b7db-d6c30515277f]]
|
||||||
A debugger is a tool that allows you to [[Execution commands|run]] an application and view its state at any moment. This includes having information concerning the current [[Callstack tool: Introduction|call stack]] and the [[Objects tool: Introduction|state of objects]] of the system, i.e. the values of their attributes. This kind of information can be used to spot objects that have invalid states, to see the consequences of the execution of a feature over an object state, and so on.
|
A debugger is a tool that allows you to [[Execution commands|run]] an application and view its state at any moment. This includes having information concerning the current [[Call stack tool|call stack]] and the [[Objects tool: Introduction|state of objects]] of the system, i.e. the values of their attributes. This kind of information can be used to spot objects that have invalid states, to see the consequences of the execution of a feature over an object state, and so on.
|
||||||
|
|
||||||
The features of the EiffelStudio debugger include:
|
The features of the EiffelStudio debugger include:
|
||||||
* Stopping the application in frozen features as well as in melted features
|
* Stopping the application in frozen features as well as in melted features
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
[[Property:title|Remove object command]]
|
[[Property:title|Remove object command]]
|
||||||
[[Property:weight|5]]
|
[[Property:weight|5]]
|
||||||
[[Property:uuid|42b5ea32-ef9c-207f-7dbe-c871a4515db3]]
|
[[Property:uuid|42b5ea32-ef9c-207f-7dbe-c871a4515db3]]
|
||||||
Located in the [[Objects tool: Introduction|object tool]] toolbar, this command [[Image:general-delete-icon]] discards an object from the [[Objects tool: Introduction|object tools]] . All top-level objects can be removed, except the first one, which is the object relative to the [[Callstack tool: Introduction|current call stack element]] .
|
Located in the [[Objects tool: Introduction|object tool]] toolbar, this command [[Image:general-delete-icon]] discards an object from the [[Objects tool: Introduction|object tools]] . All top-level objects can be removed, except the first one, which is the object relative to the [[Call stack tool|current call stack element]] .
|
||||||
|
|
||||||
Left-clicking on this button removes the selected object from the [[Objects tool: Introduction|object tools]] , if possible. It is also possible to [[Pick-and-drop mechanism|drop]] an object onto the button to remove the object.
|
Left-clicking on this button removes the selected object from the [[Objects tool: Introduction|object tools]] , if possible. It is also possible to [[Pick-and-drop mechanism|drop]] an object onto the button to remove the object.
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user