Files
eiffel-org/documentation/current/eiffelstudio/eiffelstudio-reference/debugger/expression-evaluation/new-expression-dialog.wiki
jfiat 2ee31ab9c7 Author:admin
Date:2008-09-17T13:53:28.000000Z


git-svn-id: https://svn.eiffel.com/eiffel-org/trunk@3 abb3cda0-5349-4a8f-a601-0c33ac3a8c38
2008-09-17 13:53:28 +00:00

29 lines
1.7 KiB
Plaintext

[[Property:title|New expression dialog]]
[[Property:weight|2]]
Adding new expressions to the [[Evaluation tool or Watch tool|list of expressions]] that should be dynamically evaluated is performed via a dialog.
<center>
{|
|-
| [[Image:new-expression-definition-dlg]] <br/>
context: Current feature
| [[Image:new-expression-as-object-definition-dlg]] <br/>
context: As object
|}
</center>
The first part in the dialog makes it possible to select the context of the expression.
* The default context is the context of the [[Information relative to a stack element|currently selected call stack element]] . This context gives access to the locals, the arguments, the result and the enclosing object features. <br/>
* The object context, that requires a valid object address, gives access to the features of the selected object. But if the "As object" is selected, the result of the expression, is the pointed object it self; and you can name the object (see the second screenshot).
* The last context, the class-related context, gives access to the once and constants features of that class. It requires a valid class name.
The second part prompts for the expression itself. This field supports arguments, dot calls and operators (to a certain extent), but does not support creation expressions, agents or static calls (as in "feature {<eiffel>MY_CLASS</eiffel>}.<eiffel>my_feature</eiffel>"). Genericity is partially supported. Despite these limitations, we believe the expression evaluation tool should provide you with a lot of useful functionality.
And the "Keep Assertion Checking" checkbox is used to enable assertion checking during expression evaluation if wanted (by default assertions won't be checked).