##// END OF EJS Templates
added ICancellable.Cancel(Exception) to allow specify the reason of cancellation
added ICancellable.Cancel(Exception) to allow specify the reason of cancellation

File last commit:

r138:f75cfa58e3d4 v2
r138:f75cfa58e3d4 v2
Show More
IPromiseT.cs
30 lines | 1010 B | text/x-csharp | CSharpLexer
using System;
namespace Implab {
public interface IPromise<out T> : IPromise {
new T Join();
new T Join(int timeout);
IPromise<T> On(Action<T> success, Action<Exception> error, Action<Exception> cancel);
IPromise<T> On(Action<T> success, Action<Exception> error);
IPromise<T> On(Action<T> success);
new IPromise<T> On(Action handler, PromiseEventType events);
IPromise<T2> Then<T2>(Func<T, T2> mapper, Func<Exception, T2> error, Func<Exception, T2> cancel);
IPromise<T2> Then<T2>(Func<T, T2> mapper, Func<Exception, T2> error);
IPromise<T2> Then<T2>(Func<T, T2> mapper);
IPromise<T2> Chain<T2>(Func<T, IPromise<T2>> chained, Func<Exception, IPromise<T2>> error, Func<Exception, IPromise<T2>> cancel);
IPromise<T2> Chain<T2>(Func<T, IPromise<T2>> chained, Func<Exception, IPromise<T2>> error);
IPromise<T2> Chain<T2>(Func<T, IPromise<T2>> chained);
}
}