Evaluation context

Applies to: yesVisual Studio noVisual Studio for Mac

Note

This article applies to Visual Studio 2017. If you're looking for the latest Visual Studio documentation, see Visual Studio documentation. We recommend upgrading to the latest version of Visual Studio. Download it here

Important

In Visual Studio 2015, this way of implementing expression evaluators is deprecated. For information about implementing CLR expression evaluators, see CLR expression evaluators and Managed expression evaluator sample.

When the debug engine (DE) calls the expression evaluator (EE), three arguments that are passed to EvaluateSync determine the context for finding and evaluating symbols, as shown in the following table.

Arguments

Argument Description
pSymbolProvider An IDebugSymbolProvider interface that specifies the symbol handler (SH) to be used to identify the symbol.
pAddress An IDebugAddress interface that specifies the current point of execution. This interface finds the method that contains the code being executed.
pBinder An IDebugBinder interface that finds the value and type of a symbol given its name.

IDebugParsedExpression::EvaluateSync returns an IDebugProperty2 interface representing the resulting value and its type.

See also