[[Property:title|New expression dialog]]
[[Property:weight|2]]
[[Property:uuid|95a78497-434d-759f-fdce-f9025c891495]]
Adding new expressions to the [[Evaluation tool or Watch tool|list of expressions]] that should be dynamically evaluated is performed via a dialog.
{|
|-
| [[Image:new-expression-definition-dlg]]
context: Current feature
| [[Image:new-expression-as-object-definition-dlg]]
context: As object
|}
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]], as shown in the left image above. This context gives access to the locals, the arguments, the result and the enclosing object features.
* The object context, that requires a valid object address, gives access to the features of the selected object. If you select "As object", the result of the expression is the referenced object itself; and you can supply a name for the object, as depicted in the right image above.
* The last context, the class-related context, gives access to the once
and constant 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 non-object calls. Genericity is partially supported.
The "Keep Assertion Checking" checkbox is used to enable assertion checking during expression evaluation if desired (by default assertions won't be checked).