##// END OF EJS Templates
Добавлена метка v3.0.16 для набора изменений 00a2d52813ee
Добавлена метка v3.0.16 для набора изменений 00a2d52813ee

File last commit:

r295:28af686e24f7 default
r298:a7c3390f6ac8 default
Show More
IPromise.cs
42 lines | 1.5 KiB | text/x-csharp | CSharpLexer
using System;
namespace Implab {
public interface IPromise {
/// <summary>
/// Тип результата, получаемого через данное обещание.
/// </summary>
Type ResultType { get; }
/// <summary>
/// Обещание является выполненым, либо успешно, либо с ошибкой, либо отменено.
/// </summary>
bool IsResolved { get; }
bool IsRejected { get; }
bool IsFulfilled { get; }
/// <summary>
/// Исключение возникшее в результате выполнения обещания, либо причина отмены.
/// </summary>
Exception RejectReason { get; }
/// <summary>
/// Adds specified listeners to the current promise.
/// </summary>
/// <param name="success">The handler called on the successful promise completion.</param>
/// <param name="error">The handler is called if an error while completing the promise occurred.</param>
/// <returns>The current promise.</returns>
void Then(IResolvable next);
/// <summary>
/// Преобразует результат обещания к заданному типу и возвращает новое обещание.
/// </summary>
IPromise<T> Cast<T>();
void Join();
void Join(int timeout);
}
}