|
@@ -23,12 +23,18 @@ namespace Playground
|
|
|
|
|
|
static async Task MainAsync()
|
|
|
{
|
|
|
+ //await AggregateAsync();
|
|
|
+ //await AllAsync();
|
|
|
+ //await AnyAsync();
|
|
|
+ //await AppendAsync();
|
|
|
//await AwaitAsync();
|
|
|
//await BufferTimeHoppingAsync();
|
|
|
//await BufferTimeSlidingAsync();
|
|
|
+ //await CombineLatestAsync();
|
|
|
//await ConcatAsync();
|
|
|
- await DelayAsync();
|
|
|
+ //await DelayAsync();
|
|
|
//await MergeAsync();
|
|
|
+ //await PrependAsync();
|
|
|
//await RangeAsync();
|
|
|
//await ReturnAsync();
|
|
|
//await SelectManyAsync();
|
|
@@ -37,6 +43,26 @@ namespace Playground
|
|
|
//await TimerAsync();
|
|
|
}
|
|
|
|
|
|
+ static async Task AggregateAsync()
|
|
|
+ {
|
|
|
+ await AsyncObservable.Range(0, 10).Aggregate(0, (sum, x) => sum + x).SubscribeAsync(Print<int>());
|
|
|
+ }
|
|
|
+
|
|
|
+ static async Task AllAsync()
|
|
|
+ {
|
|
|
+ await AsyncObservable.Range(0, 10).All(x => x < 10).SubscribeAsync(Print<bool>());
|
|
|
+ }
|
|
|
+
|
|
|
+ static async Task AnyAsync()
|
|
|
+ {
|
|
|
+ await AsyncObservable.Range(0, 10).Any(x => x == 5).SubscribeAsync(Print<bool>());
|
|
|
+ }
|
|
|
+
|
|
|
+ static async Task AppendAsync()
|
|
|
+ {
|
|
|
+ await AsyncObservable.Range(0, 10).Append(42).SubscribeAsync(Print<int>());
|
|
|
+ }
|
|
|
+
|
|
|
static async Task AwaitAsync()
|
|
|
{
|
|
|
Console.WriteLine(await AsyncObservable.Range(0, 10));
|
|
@@ -63,6 +89,17 @@ namespace Playground
|
|
|
.SubscribeAsync(Print<string>()); // TODO: Use ForEachAsync.
|
|
|
}
|
|
|
|
|
|
+ static async Task CombineLatestAsync()
|
|
|
+ {
|
|
|
+ await
|
|
|
+ AsyncObservable.CombineLatest(
|
|
|
+ AsyncObservable.Interval(TimeSpan.FromMilliseconds(250)).Take(10).Timestamp(),
|
|
|
+ AsyncObservable.Interval(TimeSpan.FromMilliseconds(333)).Take(10).Timestamp(),
|
|
|
+ (x, y) => x.ToString() + ", " + y.ToString()
|
|
|
+ )
|
|
|
+ .SubscribeAsync(Print<string>()); // TODO: Use ForEachAsync.
|
|
|
+ }
|
|
|
+
|
|
|
static async Task ConcatAsync()
|
|
|
{
|
|
|
await
|
|
@@ -102,6 +139,11 @@ namespace Playground
|
|
|
await subject.OnCompletedAsync();
|
|
|
}
|
|
|
|
|
|
+ static async Task PrependAsync()
|
|
|
+ {
|
|
|
+ await AsyncObservable.Range(0, 10).Prepend(42).SubscribeAsync(Print<int>());
|
|
|
+ }
|
|
|
+
|
|
|
static async Task RangeAsync()
|
|
|
{
|
|
|
await AsyncObservable.Range(0, 10).SubscribeAsync(Print<int>()); // TODO: Use ForEachAsync.
|