Mercurial > pub > ImplabNet
annotate Implab/IPromiseT.cs @ 143:16f926ee499d v2
DRAFT: refactoring, adding cancelation token
author | cin |
---|---|
date | Wed, 04 Mar 2015 18:05:39 +0300 |
parents | f75cfa58e3d4 |
children | 8c0b95069066 |
rev | line source |
---|---|
66 | 1 using System; |
2 | |
75 | 3 namespace Implab { |
119
2573b562e328
Promises rewritten, added improved version of AsyncQueue
cin
parents:
106
diff
changeset
|
4 public interface IPromise<out T> : IPromise { |
66 | 5 |
6 new T Join(); | |
75 | 7 |
66 | 8 new T Join(int timeout); |
9 | |
138
f75cfa58e3d4
added ICancellable.Cancel(Exception) to allow specify the reason of cancellation
cin
parents:
119
diff
changeset
|
10 IPromise<T> On(Action<T> success, Action<Exception> error, Action<Exception> cancel); |
76 | 11 |
119
2573b562e328
Promises rewritten, added improved version of AsyncQueue
cin
parents:
106
diff
changeset
|
12 IPromise<T> On(Action<T> success, Action<Exception> error); |
76 | 13 |
119
2573b562e328
Promises rewritten, added improved version of AsyncQueue
cin
parents:
106
diff
changeset
|
14 IPromise<T> On(Action<T> success); |
76 | 15 |
119
2573b562e328
Promises rewritten, added improved version of AsyncQueue
cin
parents:
106
diff
changeset
|
16 new IPromise<T> On(Action handler, PromiseEventType events); |
2573b562e328
Promises rewritten, added improved version of AsyncQueue
cin
parents:
106
diff
changeset
|
17 |
138
f75cfa58e3d4
added ICancellable.Cancel(Exception) to allow specify the reason of cancellation
cin
parents:
119
diff
changeset
|
18 IPromise<T2> Then<T2>(Func<T, T2> mapper, Func<Exception, T2> error, Func<Exception, T2> cancel); |
76 | 19 |
138
f75cfa58e3d4
added ICancellable.Cancel(Exception) to allow specify the reason of cancellation
cin
parents:
119
diff
changeset
|
20 IPromise<T2> Then<T2>(Func<T, T2> mapper, Func<Exception, T2> error); |
76 | 21 |
101 | 22 IPromise<T2> Then<T2>(Func<T, T2> mapper); |
76 | 23 |
138
f75cfa58e3d4
added ICancellable.Cancel(Exception) to allow specify the reason of cancellation
cin
parents:
119
diff
changeset
|
24 IPromise<T2> Chain<T2>(Func<T, IPromise<T2>> chained, Func<Exception, IPromise<T2>> error, Func<Exception, IPromise<T2>> cancel); |
76 | 25 |
138
f75cfa58e3d4
added ICancellable.Cancel(Exception) to allow specify the reason of cancellation
cin
parents:
119
diff
changeset
|
26 IPromise<T2> Chain<T2>(Func<T, IPromise<T2>> chained, Func<Exception, IPromise<T2>> error); |
76 | 27 |
101 | 28 IPromise<T2> Chain<T2>(Func<T, IPromise<T2>> chained); |
66 | 29 } |
30 } |