[[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]]  <br/>
context: Current feature 
|   [[Image:new-expression-as-object-definition-dlg]]  <br/>
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 <code>once</code> 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).




