/// <summary> /// Добавить ошибки результирующего ответа или вернуть результат с ошибками для ответа со значением /// </summary> public static IResultValue <TValue> ResultValueBindErrorsOk <TValue>(this IResultValue <TValue> @this, Func <TValue, IResultError> okFunc) => @this. ResultValueBindOk(value => okFunc.Invoke(value). Map(resultError => resultError.ToResultValue(value)));
/// <summary> /// Результирующий ответ со значением с обработкой функции при положительном условии /// </summary> public static IResultValue <TValueOut> ResultValueTryOk <TValueIn, TValueOut>(this IResultValue <TValueIn> @this, Func <TValueIn, TValueOut> func, IErrorResult error) => @this.ResultValueBindOk(value => ResultValueTry(() => func.Invoke(value), error));
/// <summary> /// Выполнение положительного условия или возвращение предыдущей ошибки в результирующем ответе значения с возвращением к коллекции /// </summary> public static IResultCollection <TValueOut> ResultValueBindOkToCollection <TValueIn, TValueOut>(this IResultValue <TValueIn> @this, Func <TValueIn, IResultCollection <TValueOut> > okFunc) => @this. ResultValueBindOk(okFunc). ToResultCollection();