Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/rx.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'Rx/NET/Source/System.Reactive.Linq/Reactive/Linq/QueryLanguage.Single.cs')
-rw-r--r--Rx/NET/Source/System.Reactive.Linq/Reactive/Linq/QueryLanguage.Single.cs19
1 files changed, 19 insertions, 0 deletions
diff --git a/Rx/NET/Source/System.Reactive.Linq/Reactive/Linq/QueryLanguage.Single.cs b/Rx/NET/Source/System.Reactive.Linq/Reactive/Linq/QueryLanguage.Single.cs
index 09e2df4..5f64e16 100644
--- a/Rx/NET/Source/System.Reactive.Linq/Reactive/Linq/QueryLanguage.Single.cs
+++ b/Rx/NET/Source/System.Reactive.Linq/Reactive/Linq/QueryLanguage.Single.cs
@@ -496,6 +496,25 @@ namespace System.Reactive.Linq
return StartWith_<TSource>(source, scheduler, values);
}
+ public virtual IObservable<TSource> StartWith<TSource>(IObservable<TSource> source, IEnumerable<TSource> values)
+ {
+ return StartWith(source, SchedulerDefaults.ConstantTimeOperations, values);
+ }
+
+ public virtual IObservable<TSource> StartWith<TSource>(IObservable<TSource> source, IScheduler scheduler, IEnumerable<TSource> values)
+ {
+ if (values == null)
+ throw new ArgumentNullException("values");
+
+ var valueArray = values as TSource[];
+ if (valueArray == null)
+ {
+ List<TSource> valueList = new List<TSource>(values);
+ valueArray = valueList.ToArray();
+ }
+ return StartWith_<TSource>(source, scheduler, valueArray);
+ }
+
private static IObservable<TSource> StartWith_<TSource>(IObservable<TSource> source, IScheduler scheduler, params TSource[] values)
{
return values.ToObservable(scheduler).Concat(source);