Cosmos/source2/Debug/Cosmos.Debug.VSDebugEngine/AD7.Impl/AD7Expression.cs
kudzu_cp 34c3a187a9
2009-05-28 14:26:33 +00:00

50 lines
No EOL
2 KiB
C#

using System;
using System.Collections.Generic;
using System.Text;
using Microsoft.VisualStudio;
using Microsoft.VisualStudio.Debugger.Interop;
namespace Cosmos.Debug.VSDebugEngine
{
// This class represents a succesfully parsed expression to the debugger.
// It is returned as a result of a successful call to IDebugExpressionContext2.ParseText
// It allows the debugger to obtain the values of an expression in the debuggee.
// For the purposes of this sample, this means obtaining the values of locals and parameters from a stack frame.
public class AD7Expression : IDebugExpression2
{
//private VariableInformation m_var;
public AD7Expression()//VariableInformation var)
{
//m_var = var;
}
#region IDebugExpression2 Members
// This method cancels asynchronous expression evaluation as started by a call to the IDebugExpression2::EvaluateAsync method.
int IDebugExpression2.Abort()
{
throw new NotImplementedException();
}
// This method evaluates the expression asynchronously.
// This method should return immediately after it has started the expression evaluation.
// When the expression is successfully evaluated, an IDebugExpressionEvaluationCompleteEvent2
// must be sent to the IDebugEventCallback2 event callback
//
// This is primarily used for the immediate window which this engine does not currently support.
int IDebugExpression2.EvaluateAsync(uint dwFlags, IDebugEventCallback2 pExprCallback)
{
throw new NotImplementedException();
}
// This method evaluates the expression synchronously.
int IDebugExpression2.EvaluateSync(uint dwFlags, uint dwTimeout, IDebugEventCallback2 pExprCallback, out IDebugProperty2 ppResult)
{
ppResult = null;// new AD7Property(m_var);
return VSConstants.S_OK;
}
#endregion
}
}