// Copyright (c) Microsoft Open Technologies, Inc. All rights reserved. See License.txt in the project root for license information. using System.Collections.Generic; using System.Reactive.Concurrency; namespace System.Reactive.Linq { /// /// Internal interface describing the LINQ to Events query language. /// internal interface IQueryLanguageEx { IObservable Create(Func, IEnumerable>> iteratorMethod); IObservable Create(Func>> iteratorMethod); IObservable Expand(IObservable source, Func> selector); IObservable Expand(IObservable source, Func> selector, IScheduler scheduler); IObservable ForkJoin(IObservable first, IObservable second, Func resultSelector); IObservable ForkJoin(params IObservable[] sources); IObservable ForkJoin(IEnumerable> sources); IObservable Let(IObservable source, Func, IObservable> function); IObservable ManySelect(IObservable source, Func, TResult> selector); IObservable ManySelect(IObservable source, Func, TResult> selector, IScheduler scheduler); ListObservable ToListObservable(IObservable source); } }