IPromise.cs
42 lines
| 1.5 KiB
| text/x-csharp
|
CSharpLexer
|
|
r289 | 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); | ||||
| } | ||||
| } | ||||
