Share via


IDkmClrExpressionCompiler.CompileExpression Method

Definition

Compile the expression into MSIL code that can be executed by the CLR or debugger to evaluate the expression.

public:
 void CompileExpression(Microsoft::VisualStudio::Debugger::Evaluation::DkmLanguageExpression ^ expression, Microsoft::VisualStudio::Debugger::Clr::DkmClrInstructionAddress ^ instructionAddress, Microsoft::VisualStudio::Debugger::Evaluation::DkmInspectionContext ^ inspectionContext, [Runtime::InteropServices::Out] System::String ^ % error, [Runtime::InteropServices::Out] Microsoft::VisualStudio::Debugger::Evaluation::ClrCompilation::DkmCompiledClrInspectionQuery ^ % result);
public void CompileExpression (Microsoft.VisualStudio.Debugger.Evaluation.DkmLanguageExpression expression, Microsoft.VisualStudio.Debugger.Clr.DkmClrInstructionAddress instructionAddress, Microsoft.VisualStudio.Debugger.Evaluation.DkmInspectionContext inspectionContext, out string error, out Microsoft.VisualStudio.Debugger.Evaluation.ClrCompilation.DkmCompiledClrInspectionQuery result);
public void CompileExpression (Microsoft.VisualStudio.Debugger.Evaluation.DkmLanguageExpression expression, Microsoft.VisualStudio.Debugger.Clr.DkmClrInstructionAddress instructionAddress, Microsoft.VisualStudio.Debugger.Evaluation.DkmInspectionContext? inspectionContext, out string? error, out Microsoft.VisualStudio.Debugger.Evaluation.ClrCompilation.DkmCompiledClrInspectionQuery? result);
abstract member CompileExpression : Microsoft.VisualStudio.Debugger.Evaluation.DkmLanguageExpression * Microsoft.VisualStudio.Debugger.Clr.DkmClrInstructionAddress * Microsoft.VisualStudio.Debugger.Evaluation.DkmInspectionContext * string * DkmCompiledClrInspectionQuery -> unit
Public Sub CompileExpression (expression As DkmLanguageExpression, instructionAddress As DkmClrInstructionAddress, inspectionContext As DkmInspectionContext, ByRef error As String, ByRef result As DkmCompiledClrInspectionQuery)

Parameters

expression
DkmLanguageExpression

[In] DkmLanguageExpression represents an expression to be parsed and evaluated by an expression evaluator.

instructionAddress
DkmClrInstructionAddress

[In] The code context to use for compiling the expression.

inspectionContext
DkmInspectionContext

[In,Optional] The inspection context for this evaluation. This value is null if there is no current evaluation context. An example of a time when there is no evaluation context is when compiling conditional breakpoints.

error
String

[Out,Optional] Indicates any error compiling the expression. If the code compiles successfully, this value should be null. It should also be null for cases where the language or expression is not supported and the debug engine needs to fall back to the default implementation. In error cases, this value indicates the reason for the compile error and the caller should return S_OK.

result
DkmCompiledClrInspectionQuery

[Out,Optional] The compiled expression. If Result is null, and Error is not null, there was a compile error. If both are null, compilation of the expression is not supported and the debug engine needs to use the legacy expression evaluator.

Applies to