DbgValueNodeAssignmentResult CreateResult(DbgEngineValueNodeAssignmentResult result) { if (result.Error is not null) { if (engineValueNode.Value != value?.EngineValue) { throw new InvalidOperationException(); } return(new DbgValueNodeAssignmentResult(result.Flags, PredefinedEvaluationErrorMessagesHelper.GetErrorMessage(result.Error))); } return(new DbgValueNodeAssignmentResult(result.Flags, result.Error)); }
public override DbgEngineValueNodeAssignmentResult Assign(DbgEvaluationInfo evalInfo, string expression, DbgEvaluationOptions options) { var dispatcher = evalInfo.Runtime.GetDotNetRuntime().Dispatcher; if (dispatcher.CheckAccess()) { return(AssignCore(evalInfo, expression, options)); } return(Assign(dispatcher, evalInfo, expression, options)); DbgEngineValueNodeAssignmentResult Assign(DbgDotNetDispatcher dispatcher2, DbgEvaluationInfo evalInfo2, string expression2, DbgEvaluationOptions options2) { if (!dispatcher2.TryInvokeRethrow(() => AssignCore(evalInfo2, expression2, options2), out var result)) { result = new DbgEngineValueNodeAssignmentResult(DbgEEAssignmentResultFlags.None, DispatcherConstants.ProcessExitedError); } return(result); } }