From 01da4b42df832539e83a908dce95105ac195f51c Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 20 Aug 2024 06:59:23 +0000 Subject: [PATCH 1/5] feat: Update package.json to 1.2.8 --- src/R3.Godot/addons/R3.Godot/plugin.cfg | 2 +- src/R3.Unity/Assets/R3.Unity/package.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/R3.Godot/addons/R3.Godot/plugin.cfg b/src/R3.Godot/addons/R3.Godot/plugin.cfg index d72cc4e1..215c35be 100644 --- a/src/R3.Godot/addons/R3.Godot/plugin.cfg +++ b/src/R3.Godot/addons/R3.Godot/plugin.cfg @@ -3,6 +3,6 @@ name="R3.Godot" description="The new future of dotnet/reactive and UniRx." author="Cysharp" -version="1.2.7" +version="1.2.8" language="C-sharp" script="GodotR3Plugin.cs" diff --git a/src/R3.Unity/Assets/R3.Unity/package.json b/src/R3.Unity/Assets/R3.Unity/package.json index b5c6989e..b4d58886 100644 --- a/src/R3.Unity/Assets/R3.Unity/package.json +++ b/src/R3.Unity/Assets/R3.Unity/package.json @@ -2,7 +2,7 @@ "name": "com.cysharp.r3", "displayName": "R3", "author": { "name": "Cysharp, Inc.", "url": "https://cysharp.co.jp/en/" }, - "version": "1.2.7", + "version": "1.2.8", "unity": "2021.3", "description": "Reactive Extensions for Unity.", "keywords": [ "rx", "event", "Scripting" ], From 66236867a580ac0a12394cee55718152c3e8edef Mon Sep 17 00:00:00 2001 From: "simonLL ss@lumidlabs.com" Date: Wed, 21 Aug 2024 16:52:55 +0200 Subject: [PATCH 2/5] Fix minor spelling mistakes in README.md --- README.md | 856 +++++++++++++++++++++++++++--------------------------- 1 file changed, 428 insertions(+), 428 deletions(-) diff --git a/README.md b/README.md index f9a626dc..88f846d1 100644 --- a/README.md +++ b/README.md @@ -145,7 +145,7 @@ Observable.EveryValueChanged(this, x => x.Height).Subscribe(x => HeightText.Text Subjects(ReactiveProperty) --- -In R3, there are firve types of Subjects: `Subject`, `BehaviorSubject`, `ReactiveProperty`, `ReplaySubject`, and `ReplayFrameSubject`. +In R3, there are five types of Subjects: `Subject`, `BehaviorSubject`, `ReactiveProperty`, `ReplaySubject`, and `ReplayFrameSubject`. `Subject` is an event in Rx. Just as an event can register multiple Actions and distribute values using Invoke, a `Subject` can register multiple `Observer`s and distribute values using OnNext, OnErrorResume, and OnCompleted. There are variations of Subject, such as `BehaviorSubject` and `ReactiveProperty`, which holds a single value internally, `ReplaySubject`, which holds multiple values based on count or time, and `ReplayFrameSubject`, which holds multiple values based on frame time. The internally recorded values are distributed when Subscribe is called. @@ -462,7 +462,7 @@ public static class ObservableSystem static void DefaultUnhandledExceptionHandler(Exception exception) { - Console.WriteLine("R3 UnhandleException: " + exception.ToString()); + Console.WriteLine("R3 UnhandledException: " + exception.ToString()); } } ``` @@ -654,13 +654,13 @@ Additionally, the following time-related filtering/aggregating methods can also | **ThrottleFirst**(this `Observable` source, `Func` sampler, `Boolean` configureAwait = true) | `Observable` | | **ThrottleLast**(this `Observable` source, `Func` sampler, `Boolean` configureAwait = true) | `Observable` | | **ThrottleFirstLast**(this `Observable` source, `Func` sampler, `Boolean` configureAwait = true) | `Observable` | -| **SkipUntil**(this `Observable` source, `CancellationToken` cancellationToken) | `Observable` | -| **SkipUntil**(this `Observable` source, `Task` task) | `Observable` | -| **SkipUntil**(this `Observable` source, `Func` asyncFunc, `Boolean` configureAwait = true) | `Observable` | -| **TakeUntil**(this `Observable` source, `CancellationToken` cancellationToken) | `Observable` | -| **TakeUntil**(this `Observable` source, `Task` task) | `Observable` | -| **TakeUntil**(this `Observable` source, `Func` asyncFunc, `Boolean` configureAwait = true) | `Observable` | -| **Chunk**(this `Observable` source, `Func` asyncWindow, `Boolean` configureAwait = true) | `Observable` | +| **SkipUntil**(this `Observable` source, `CancellationToken` cancellationToken) | `Observable` | +| **SkipUntil**(this `Observable` source, `Task` task) | `Observable` | +| **SkipUntil**(this `Observable` source, `Func` asyncFunc, `Boolean` configureAwait = true) | `Observable` | +| **TakeUntil**(this `Observable` source, `CancellationToken` cancellationToken) | `Observable` | +| **TakeUntil**(this `Observable` source, `Task` task) | `Observable` | +| **TakeUntil**(this `Observable` source, `Func` asyncFunc, `Boolean` configureAwait = true) | `Observable` | +| **Chunk**(this `Observable` source, `Func` asyncWindow, `Boolean` configureAwait = true) | `Observable` | For example, by using the asynchronous function version of Chunk, you can naturally and easily write complex processes such as generating chunks at random times instead of fixed times. @@ -732,7 +732,7 @@ Parallel.For(0, 1000, new ParallelOptions { MaxDegreeOfParallelism = 10 }, x => This means that the issuance of OnNext must always be done on a single thread. For converting external inputs into Observables, such as with `FromEvent`, and when the source of input issues in a multi-threaded manner, it is necessary to synchronize using `Synchronize` to construct the correct operator chain. ```csharp -subject.Synchronoize(gate).Take(100).Count().Subscribe(); +subject.Synchronize(gate).Take(100).Count().Subscribe(); ``` Unlike dotnet/reactive, R3.Subject.OnNext is not ThreadSafe. If you are calling OnNext from multiple threads, please use a lock. @@ -864,7 +864,7 @@ public class ValidationViewModel : IDisposable // Pattern 2. use EnableValidation(Expression) to enable DataAnnotation validation Weight = new BindableReactiveProperty().EnableValidation(() => Weight); - // Pattern 3. EnableValidation() and call OnErrorResume to set custom error meessage + // Pattern 3. EnableValidation() and call OnErrorResume to set custom error message CustomValidation1 = new BindableReactiveProperty().EnableValidation(); customValidation1Subscription = CustomValidation1.Subscribe(x => { @@ -1273,7 +1273,7 @@ There are two installation steps required to use it in Unity. * Open Window from NuGet -> Manage NuGet Packages, Search "R3" and Press Install. ![](https://github.com/Cysharp/ZLogger/assets/46207/dbad9bf7-28e3-4856-b0a8-0ff8a2a01d67) -* If you encount version conflicts error, please disable version validation in Player Settings(Edit -> Project Settings -> Player -> Scroll down and expand "Other Settings" than uncheck "Assembly Version Validation" under the "Configuration" section). +* If you encounter version conflicts error, please disable version validation in Player Settings(Edit -> Project Settings -> Player -> Scroll down and expand "Other Settings" than uncheck "Assembly Version Validation" under the "Configuration" section). 2. Install the `R3.Unity` package by referencing the git URL @@ -1756,147 +1756,147 @@ For default time based operations that do not take a provider, `ObservableSystem Factory methods are defined as static methods in the static class `Observable`. -| Name(Parameter) | ReturnType | -| --- | --- | -| **Amb**(params `Observable[]` sources) | `Observable` | -| **Amb**(`IEnumerable>` sources) | `Observable` | -| **CombineLatest**(params `Observable[]` sources) | `Observable` | -| **CombineLatest**(`IEnumerable>` sources) | `Observable` | -| **CombineLatest**(this `Observable` source1, `Observable` source2, `Func` resultSelector) | `Observable` | -| **CombineLatest**(this `Observable` source1, `Observable` source2, `Observable` source3, `Func` resultSelector) | `Observable` | -| **CombineLatest**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Func` resultSelector) | `Observable` | -| **CombineLatest**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Func` resultSelector) | `Observable` | -| **CombineLatest**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Observable` source6, `Func` resultSelector) | `Observable` | -| **CombineLatest**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Observable` source6, `Observable` source7, `Func` resultSelector) | `Observable` | -| **CombineLatest**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Observable` source6, `Observable` source7, `Observable` source8, `Func` resultSelector) | `Observable` | -| **CombineLatest**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Observable` source6, `Observable` source7, `Observable` source8, `Observable` source9, `Func` resultSelector) | `Observable` | -| **CombineLatest**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Observable` source6, `Observable` source7, `Observable` source8, `Observable` source9, `Observable` source10, `Func` resultSelector) | `Observable` | -| **CombineLatest**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Observable` source6, `Observable` source7, `Observable` source8, `Observable` source9, `Observable` source10, `Observable` source11, `Func` resultSelector) | `Observable` | -| **CombineLatest**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Observable` source6, `Observable` source7, `Observable` source8, `Observable` source9, `Observable` source10, `Observable` source11, `Observable` source12, `Func` resultSelector) | `Observable` | -| **CombineLatest**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Observable` source6, `Observable` source7, `Observable` source8, `Observable` source9, `Observable` source10, `Observable` source11, `Observable` source12, `Observable` source13, `Func` resultSelector) | `Observable` | -| **CombineLatest**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Observable` source6, `Observable` source7, `Observable` source8, `Observable` source9, `Observable` source10, `Observable` source11, `Observable` source12, `Observable` source13, `Observable` source14, `Func` resultSelector) | `Observable` | -| **CombineLatest**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Observable` source6, `Observable` source7, `Observable` source8, `Observable` source9, `Observable` source10, `Observable` source11, `Observable` source12, `Observable` source13, `Observable` source14, `Observable` source15, `Func` resultSelector) | `Observable` | -| **Concat**(params `Observable[]` sources) | `Observable` | -| **Concat**(`IEnumerable>` sources) | `Observable` | -| **Concat**(this `Observable>` sources) | `Observable` | -| **Create**(`Func, IDisposable>` subscribe, `Boolean` rawObserver = false) | `Observable` | -| **Create**(`TState` state, `Func, TState, IDisposable>` subscribe, `Boolean` rawObserver = false) | `Observable` | -| **Create**(`Func, CancellationToken, ValueTask>` subscribe, `Boolean` rawObserver = false) | `Observable` | -| **Create**(`TState` state, `Func, TState, CancellationToken, ValueTask>` subscribe, `Boolean` rawObserver = false) | `Observable` | -| **CreateFrom**(`Func>` factory) | `Observable` | -| **CreateFrom**(`TState` state, `Func>` factory) | `Observable` | -| **Defer**(`Func>` observableFactory, `Boolean` rawObserver = false) | `Observable` | -| **Empty**() | `Observable` | -| **Empty**(`TimeProvider` timeProvider) | `Observable` | -| **Empty**(`TimeSpan` dueTime, `TimeProvider` timeProvider) | `Observable` | -| **EveryUpdate**() | `Observable` | -| **EveryUpdate**(`CancellationToken` cancellationToken) | `Observable` | -| **EveryUpdate**(`FrameProvider` frameProvider) | `Observable` | -| **EveryUpdate**(`FrameProvider` frameProvider, `CancellationToken` cancellationToken) | `Observable` | -| **EveryValueChanged**(`TSource` source, `Func` propertySelector, `CancellationToken` cancellationToken = default) | `Observable` | -| **EveryValueChanged**(`TSource` source, `Func` propertySelector, `FrameProvider` frameProvider, `CancellationToken` cancellationToken = default) | `Observable` | -| **EveryValueChanged**(`TSource` source, `Func` propertySelector, `EqualityComparer` equalityComparer, `CancellationToken` cancellationToken = default) | `Observable` | -| **EveryValueChanged**(`TSource` source, `Func` propertySelector, `FrameProvider` frameProvider, `EqualityComparer` equalityComparer, `CancellationToken` cancellationToken = default) | `Observable` | -| **FromAsync**(`Func` asyncFactory, `Boolean` configureAwait = true) | `Observable` | -| **FromAsync**(`Func>` asyncFactory, `Boolean` configureAwait = true) | `Observable` | -| **FromEvent**(`Action` addHandler, `Action` removeHandler, `CancellationToken` cancellationToken = default) | `Observable` | -| **FromEvent**(`Action>` addHandler, `Action>` removeHandler, `CancellationToken` cancellationToken = default) | `Observable` | -| **FromEvent**(`Func` conversion, `Action` addHandler, `Action` removeHandler, `CancellationToken` cancellationToken = default) | `Observable` | -| **FromEvent**(`Func, TDelegate>` conversion, `Action` addHandler, `Action` removeHandler, `CancellationToken` cancellationToken = default) | `Observable` | -| **FromEventHandler**(`Action` addHandler, `Action` removeHandler, `CancellationToken` cancellationToken = default) | `Observable>` | -| **FromEventHandler**(`Action>` addHandler, `Action>` removeHandler, `CancellationToken` cancellationToken = default) | `Observable>` | -| **Interval**(`TimeSpan` period, `CancellationToken` cancellationToken = default) | `Observable` | -| **Interval**(`TimeSpan` period, `TimeProvider` timeProvider, `CancellationToken` cancellationToken = default) | `Observable` | -| **IntervalFrame**(`Int32` periodFrame, `CancellationToken` cancellationToken = default) | `Observable` | -| **IntervalFrame**(`Int32` periodFrame, `FrameProvider` frameProvider, `CancellationToken` cancellationToken = default) | `Observable` | -| **Merge**(params `Observable[]` sources) | `Observable` | -| **Merge**(this `IEnumerable>` sources) | `Observable` | -| **Merge**(this `Observable>` sources) | `Observable` | -| **Never**() | `Observable` | -| **NextFrame**(`CancellationToken` cancellationToken = default) | `Observable` | -| **NextFrame**(`FrameProvider` frameProvider, `CancellationToken` cancellationToken = default) | `Observable` | -| **ObservePropertyChanged**(this `T` value, `Func` propertySelector, `Boolean` pushCurrentValueOnSubscribe = true, `CancellationToken` cancellationToken = default, `String` expr = default) | `Observable` | -| **ObservePropertyChanged**(this `T` value, `Func` propertySelector1, `Func` propertySelector2, `Boolean` pushCurrentValueOnSubscribe = true, `CancellationToken` cancellationToken = default, `String` propertySelector1Expr = default, `String` propertySelector2Expr = default) | `Observable` | -| **ObservePropertyChanged**(this `T` value, `Func` propertySelector1, `Func` propertySelector2, `Func` propertySelector3, `Boolean` pushCurrentValueOnSubscribe = true, `CancellationToken` cancellationToken = default, `String` propertySelector1Expr = default, `String` propertySelector2Expr = default, `String` propertySelector3Expr = default) | `Observable` | -| **ObservePropertyChanging**(this `T` value, `Func` propertySelector, `Boolean` pushCurrentValueOnSubscribe = true, `CancellationToken` cancellationToken = default, `String` expr = default) | `Observable` | -| **ObservePropertyChanging**(this `T` value, `Func` propertySelector1, `Func` propertySelector2, `Boolean` pushCurrentValueOnSubscribe = true, `CancellationToken` cancellationToken = default, `String` propertySelector1Expr = default, `String` propertySelector2Expr = default) | `Observable` | -| **ObservePropertyChanging**(this `T` value, `Func` propertySelector1, `Func` propertySelector2, `Func` propertySelector3, `Boolean` pushCurrentValueOnSubscribe = true, `CancellationToken` cancellationToken = default, `String` propertySelector1Expr = default, `String` propertySelector2Expr = default, `String` propertySelector3Expr = default) | `Observable` | -| **Range**(`Int32` start, `Int32` count) | `Observable` | -| **Range**(`Int32` start, `Int32` count, `CancellationToken` cancellationToken) | `Observable` | -| **Repeat**(`T` value, `Int32` count) | `Observable` | -| **Repeat**(`T` value, `Int32` count, `CancellationToken` cancellationToken) | `Observable` | -| **Return**(`T` value) | `Observable` | -| **Return**(`T` value, `TimeProvider` timeProvider, `CancellationToken` cancellationToken = default) | `Observable` | -| **Return**(`T` value, `TimeSpan` dueTime, `TimeProvider` timeProvider, `CancellationToken` cancellationToken = default) | `Observable` | -| **Return**(`Unit` value) | `Observable` | -| **Return**(`Boolean` value) | `Observable` | -| **Return**(`Int32` value) | `Observable` | -| **ReturnFrame**(`T` value, `CancellationToken` cancellationToken = default) | `Observable` | -| **ReturnFrame**(`T` value, `FrameProvider` frameProvider, `CancellationToken` cancellationToken = default) | `Observable` | -| **ReturnFrame**(`T` value, `Int32` dueTimeFrame, `CancellationToken` cancellationToken = default) | `Observable` | -| **ReturnFrame**(`T` value, `Int32` dueTimeFrame, `FrameProvider` frameProvider, `CancellationToken` cancellationToken = default) | `Observable` | -| **ReturnOnCompleted**(`Result` result) | `Observable` | -| **ReturnOnCompleted**(`Result` result, `TimeProvider` timeProvider) | `Observable` | -| **ReturnOnCompleted**(`Result` result, `TimeSpan` dueTime, `TimeProvider` timeProvider) | `Observable` | -| **ReturnUnit**() | `Observable` | -| **Throw**(`Exception` exception) | `Observable` | -| **Throw**(`Exception` exception, `TimeProvider` timeProvider) | `Observable` | -| **Throw**(`Exception` exception, `TimeSpan` dueTime, `TimeProvider` timeProvider) | `Observable` | -| **Timer**(`TimeSpan` dueTime, `CancellationToken` cancellationToken = default) | `Observable` | -| **Timer**(`DateTimeOffset` dueTime, `CancellationToken` cancellationToken = default) | `Observable` | -| **Timer**(`TimeSpan` dueTime, `TimeSpan` period, `CancellationToken` cancellationToken = default) | `Observable` | -| **Timer**(`DateTimeOffset` dueTime, `TimeSpan` period, `CancellationToken` cancellationToken = default) | `Observable` | -| **Timer**(`TimeSpan` dueTime, `TimeProvider` timeProvider, `CancellationToken` cancellationToken = default) | `Observable` | -| **Timer**(`DateTimeOffset` dueTime, `TimeProvider` timeProvider, `CancellationToken` cancellationToken = default) | `Observable` | -| **Timer**(`TimeSpan` dueTime, `TimeSpan` period, `TimeProvider` timeProvider, `CancellationToken` cancellationToken = default) | `Observable` | -| **Timer**(`DateTimeOffset` dueTime, `TimeSpan` period, `TimeProvider` timeProvider, `CancellationToken` cancellationToken = default) | `Observable` | -| **TimerFrame**(`Int32` dueTimeFrame, `CancellationToken` cancellationToken = default) | `Observable` | -| **TimerFrame**(`Int32` dueTimeFrame, `Int32` periodFrame, `CancellationToken` cancellationToken = default) | `Observable` | -| **TimerFrame**(`Int32` dueTimeFrame, `FrameProvider` frameProvider, `CancellationToken` cancellationToken = default) | `Observable` | -| **TimerFrame**(`Int32` dueTimeFrame, `Int32` periodFrame, `FrameProvider` frameProvider, `CancellationToken` cancellationToken = default) | `Observable` | -| **ToObservable**(this `Task` task, `Boolean` configureAwait = true) | `Observable` | -| **ToObservable**(this `Task` task, `Boolean` configureAwait = true) | `Observable` | -| **ToObservable**(this `ValueTask` task, `Boolean` configureAwait = true) | `Observable` | -| **ToObservable**(this `ValueTask` task, `Boolean` configureAwait = true) | `Observable` | -| **ToObservable**(this `IEnumerable` source, `CancellationToken` cancellationToken = default) | `Observable` | -| **ToObservable**(this `IAsyncEnumerable` source) | `Observable` | -| **ToObservable**(this `IObservable` source) | `Observable` | -| **Yield**(`CancellationToken` cancellationToken = default) | `Observable` | -| **Yield**(`TimeProvider` timeProvider, `CancellationToken` cancellationToken = default) | `Observable` | -| **YieldFrame**(`CancellationToken` cancellationToken = default) | `Observable` | -| **YieldFrame**(`FrameProvider` frameProvider, `CancellationToken` cancellationToken = default) | `Observable` | -| **Zip**(params `Observable[]` sources) | `Observable` | -| **Zip**(`IEnumerable>` sources) | `Observable` | -| **Zip**(this `Observable` source1, `Observable` source2, `Func` resultSelector) | `Observable` | -| **Zip**(this `Observable` source1, `Observable` source2, `Observable` source3, `Func` resultSelector) | `Observable` | -| **Zip**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Func` resultSelector) | `Observable` | -| **Zip**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Func` resultSelector) | `Observable` | -| **Zip**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Observable` source6, `Func` resultSelector) | `Observable` | -| **Zip**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Observable` source6, `Observable` source7, `Func` resultSelector) | `Observable` | -| **Zip**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Observable` source6, `Observable` source7, `Observable` source8, `Func` resultSelector) | `Observable` | -| **Zip**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Observable` source6, `Observable` source7, `Observable` source8, `Observable` source9, `Func` resultSelector) | `Observable` | -| **Zip**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Observable` source6, `Observable` source7, `Observable` source8, `Observable` source9, `Observable` source10, `Func` resultSelector) | `Observable` | -| **Zip**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Observable` source6, `Observable` source7, `Observable` source8, `Observable` source9, `Observable` source10, `Observable` source11, `Func` resultSelector) | `Observable` | -| **Zip**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Observable` source6, `Observable` source7, `Observable` source8, `Observable` source9, `Observable` source10, `Observable` source11, `Observable` source12, `Func` resultSelector) | `Observable` | -| **Zip**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Observable` source6, `Observable` source7, `Observable` source8, `Observable` source9, `Observable` source10, `Observable` source11, `Observable` source12, `Observable` source13, `Func` resultSelector) | `Observable` | -| **Zip**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Observable` source6, `Observable` source7, `Observable` source8, `Observable` source9, `Observable` source10, `Observable` source11, `Observable` source12, `Observable` source13, `Observable` source14, `Func` resultSelector) | `Observable` | -| **Zip**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Observable` source6, `Observable` source7, `Observable` source8, `Observable` source9, `Observable` source10, `Observable` source11, `Observable` source12, `Observable` source13, `Observable` source14, `Observable` source15, `Func` resultSelector) | `Observable` | -| **ZipLatest**(params `Observable[]` sources) | `Observable` | -| **ZipLatest**(`IEnumerable>` sources) | `Observable` | -| **ZipLatest**(this `Observable` source1, `Observable` source2, `Func` resultSelector) | `Observable` | -| **ZipLatest**(this `Observable` source1, `Observable` source2, `Observable` source3, `Func` resultSelector) | `Observable` | -| **ZipLatest**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Func` resultSelector) | `Observable` | -| **ZipLatest**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Func` resultSelector) | `Observable` | -| **ZipLatest**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Observable` source6, `Func` resultSelector) | `Observable` | -| **ZipLatest**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Observable` source6, `Observable` source7, `Func` resultSelector) | `Observable` | -| **ZipLatest**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Observable` source6, `Observable` source7, `Observable` source8, `Func` resultSelector) | `Observable` | -| **ZipLatest**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Observable` source6, `Observable` source7, `Observable` source8, `Observable` source9, `Func` resultSelector) | `Observable` | -| **ZipLatest**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Observable` source6, `Observable` source7, `Observable` source8, `Observable` source9, `Observable` source10, `Func` resultSelector) | `Observable` | -| **ZipLatest**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Observable` source6, `Observable` source7, `Observable` source8, `Observable` source9, `Observable` source10, `Observable` source11, `Func` resultSelector) | `Observable` | -| **ZipLatest**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Observable` source6, `Observable` source7, `Observable` source8, `Observable` source9, `Observable` source10, `Observable` source11, `Observable` source12, `Func` resultSelector) | `Observable` | -| **ZipLatest**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Observable` source6, `Observable` source7, `Observable` source8, `Observable` source9, `Observable` source10, `Observable` source11, `Observable` source12, `Observable` source13, `Func` resultSelector) | `Observable` | -| **ZipLatest**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Observable` source6, `Observable` source7, `Observable` source8, `Observable` source9, `Observable` source10, `Observable` source11, `Observable` source12, `Observable` source13, `Observable` source14, `Func` resultSelector) | `Observable` | -| **ZipLatest**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Observable` source6, `Observable` source7, `Observable` source8, `Observable` source9, `Observable` source10, `Observable` source11, `Observable` source12, `Observable` source13, `Observable` source14, `Observable` source15, `Func` resultSelector) | `Observable` | +| Name(Parameter) | ReturnType | +| --- | --- | +| **Amb**(params `Observable[]` sources) | `Observable` | +| **Amb**(`IEnumerable>` sources) | `Observable` | +| **CombineLatest**(params `Observable[]` sources) | `Observable` | +| **CombineLatest**(`IEnumerable>` sources) | `Observable` | +| **CombineLatest**(this `Observable` source1, `Observable` source2, `Func` resultSelector) | `Observable` | +| **CombineLatest**(this `Observable` source1, `Observable` source2, `Observable` source3, `Func` resultSelector) | `Observable` | +| **CombineLatest**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Func` resultSelector) | `Observable` | +| **CombineLatest**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Func` resultSelector) | `Observable` | +| **CombineLatest**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Observable` source6, `Func` resultSelector) | `Observable` | +| **CombineLatest**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Observable` source6, `Observable` source7, `Func` resultSelector) | `Observable` | +| **CombineLatest**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Observable` source6, `Observable` source7, `Observable` source8, `Func` resultSelector) | `Observable` | +| **CombineLatest**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Observable` source6, `Observable` source7, `Observable` source8, `Observable` source9, `Func` resultSelector) | `Observable` | +| **CombineLatest**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Observable` source6, `Observable` source7, `Observable` source8, `Observable` source9, `Observable` source10, `Func` resultSelector) | `Observable` | +| **CombineLatest**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Observable` source6, `Observable` source7, `Observable` source8, `Observable` source9, `Observable` source10, `Observable` source11, `Func` resultSelector) | `Observable` | +| **CombineLatest**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Observable` source6, `Observable` source7, `Observable` source8, `Observable` source9, `Observable` source10, `Observable` source11, `Observable` source12, `Func` resultSelector) | `Observable` | +| **CombineLatest**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Observable` source6, `Observable` source7, `Observable` source8, `Observable` source9, `Observable` source10, `Observable` source11, `Observable` source12, `Observable` source13, `Func` resultSelector) | `Observable` | +| **CombineLatest**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Observable` source6, `Observable` source7, `Observable` source8, `Observable` source9, `Observable` source10, `Observable` source11, `Observable` source12, `Observable` source13, `Observable` source14, `Func` resultSelector) | `Observable` | +| **CombineLatest**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Observable` source6, `Observable` source7, `Observable` source8, `Observable` source9, `Observable` source10, `Observable` source11, `Observable` source12, `Observable` source13, `Observable` source14, `Observable` source15, `Func` resultSelector) | `Observable` | +| **Concat**(params `Observable[]` sources) | `Observable` | +| **Concat**(`IEnumerable>` sources) | `Observable` | +| **Concat**(this `Observable>` sources) | `Observable` | +| **Create**(`Func, IDisposable>` subscribe, `Boolean` rawObserver = false) | `Observable` | +| **Create**(`TState` state, `Func, TState, IDisposable>` subscribe, `Boolean` rawObserver = false) | `Observable` | +| **Create**(`Func, CancellationToken, ValueTask>` subscribe, `Boolean` rawObserver = false) | `Observable` | +| **Create**(`TState` state, `Func, TState, CancellationToken, ValueTask>` subscribe, `Boolean` rawObserver = false) | `Observable` | +| **CreateFrom**(`Func>` factory) | `Observable` | +| **CreateFrom**(`TState` state, `Func>` factory) | `Observable` | +| **Defer**(`Func>` observableFactory, `Boolean` rawObserver = false) | `Observable` | +| **Empty**() | `Observable` | +| **Empty**(`TimeProvider` timeProvider) | `Observable` | +| **Empty**(`TimeSpan` dueTime, `TimeProvider` timeProvider) | `Observable` | +| **EveryUpdate**() | `Observable` | +| **EveryUpdate**(`CancellationToken` cancellationToken) | `Observable` | +| **EveryUpdate**(`FrameProvider` frameProvider) | `Observable` | +| **EveryUpdate**(`FrameProvider` frameProvider, `CancellationToken` cancellationToken) | `Observable` | +| **EveryValueChanged**(`TSource` source, `Func` propertySelector, `CancellationToken` cancellationToken = default) | `Observable` | +| **EveryValueChanged**(`TSource` source, `Func` propertySelector, `FrameProvider` frameProvider, `CancellationToken` cancellationToken = default) | `Observable` | +| **EveryValueChanged**(`TSource` source, `Func` propertySelector, `EqualityComparer` equalityComparer, `CancellationToken` cancellationToken = default) | `Observable` | +| **EveryValueChanged**(`TSource` source, `Func` propertySelector, `FrameProvider` frameProvider, `EqualityComparer` equalityComparer, `CancellationToken` cancellationToken = default) | `Observable` | +| **FromAsync**(`Func` asyncFactory, `Boolean` configureAwait = true) | `Observable` | +| **FromAsync**(`Func>` asyncFactory, `Boolean` configureAwait = true) | `Observable` | +| **FromEvent**(`Action` addHandler, `Action` removeHandler, `CancellationToken` cancellationToken = default) | `Observable` | +| **FromEvent**(`Action>` addHandler, `Action>` removeHandler, `CancellationToken` cancellationToken = default) | `Observable` | +| **FromEvent**(`Func` conversion, `Action` addHandler, `Action` removeHandler, `CancellationToken` cancellationToken = default) | `Observable` | +| **FromEvent**(`Func, TDelegate>` conversion, `Action` addHandler, `Action` removeHandler, `CancellationToken` cancellationToken = default) | `Observable` | +| **FromEventHandler**(`Action` addHandler, `Action` removeHandler, `CancellationToken` cancellationToken = default) | `Observable>` | +| **FromEventHandler**(`Action>` addHandler, `Action>` removeHandler, `CancellationToken` cancellationToken = default) | `Observable>` | +| **Interval**(`TimeSpan` period, `CancellationToken` cancellationToken = default) | `Observable` | +| **Interval**(`TimeSpan` period, `TimeProvider` timeProvider, `CancellationToken` cancellationToken = default) | `Observable` | +| **IntervalFrame**(`Int32` periodFrame, `CancellationToken` cancellationToken = default) | `Observable` | +| **IntervalFrame**(`Int32` periodFrame, `FrameProvider` frameProvider, `CancellationToken` cancellationToken = default) | `Observable` | +| **Merge**(params `Observable[]` sources) | `Observable` | +| **Merge**(this `IEnumerable>` sources) | `Observable` | +| **Merge**(this `Observable>` sources) | `Observable` | +| **Never**() | `Observable` | +| **NextFrame**(`CancellationToken` cancellationToken = default) | `Observable` | +| **NextFrame**(`FrameProvider` frameProvider, `CancellationToken` cancellationToken = default) | `Observable` | +| **ObservePropertyChanged**(this `T` value, `Func` propertySelector, `Boolean` pushCurrentValueOnSubscribe = true, `CancellationToken` cancellationToken = default, `String` expr = default) | `Observable` | +| **ObservePropertyChanged**(this `T` value, `Func` propertySelector1, `Func` propertySelector2, `Boolean` pushCurrentValueOnSubscribe = true, `CancellationToken` cancellationToken = default, `String` propertySelector1Expr = default, `String` propertySelector2Expr = default) | `Observable` | +| **ObservePropertyChanged**(this `T` value, `Func` propertySelector1, `Func` propertySelector2, `Func` propertySelector3, `Boolean` pushCurrentValueOnSubscribe = true, `CancellationToken` cancellationToken = default, `String` propertySelector1Expr = default, `String` propertySelector2Expr = default, `String` propertySelector3Expr = default) | `Observable` | +| **ObservePropertyChanging**(this `T` value, `Func` propertySelector, `Boolean` pushCurrentValueOnSubscribe = true, `CancellationToken` cancellationToken = default, `String` expr = default) | `Observable` | +| **ObservePropertyChanging**(this `T` value, `Func` propertySelector1, `Func` propertySelector2, `Boolean` pushCurrentValueOnSubscribe = true, `CancellationToken` cancellationToken = default, `String` propertySelector1Expr = default, `String` propertySelector2Expr = default) | `Observable` | +| **ObservePropertyChanging**(this `T` value, `Func` propertySelector1, `Func` propertySelector2, `Func` propertySelector3, `Boolean` pushCurrentValueOnSubscribe = true, `CancellationToken` cancellationToken = default, `String` propertySelector1Expr = default, `String` propertySelector2Expr = default, `String` propertySelector3Expr = default) | `Observable` | +| **Range**(`Int32` start, `Int32` count) | `Observable` | +| **Range**(`Int32` start, `Int32` count, `CancellationToken` cancellationToken) | `Observable` | +| **Repeat**(`T` value, `Int32` count) | `Observable` | +| **Repeat**(`T` value, `Int32` count, `CancellationToken` cancellationToken) | `Observable` | +| **Return**(`T` value) | `Observable` | +| **Return**(`T` value, `TimeProvider` timeProvider, `CancellationToken` cancellationToken = default) | `Observable` | +| **Return**(`T` value, `TimeSpan` dueTime, `TimeProvider` timeProvider, `CancellationToken` cancellationToken = default) | `Observable` | +| **Return**(`Unit` value) | `Observable` | +| **Return**(`Boolean` value) | `Observable` | +| **Return**(`Int32` value) | `Observable` | +| **ReturnFrame**(`T` value, `CancellationToken` cancellationToken = default) | `Observable` | +| **ReturnFrame**(`T` value, `FrameProvider` frameProvider, `CancellationToken` cancellationToken = default) | `Observable` | +| **ReturnFrame**(`T` value, `Int32` dueTimeFrame, `CancellationToken` cancellationToken = default) | `Observable` | +| **ReturnFrame**(`T` value, `Int32` dueTimeFrame, `FrameProvider` frameProvider, `CancellationToken` cancellationToken = default) | `Observable` | +| **ReturnOnCompleted**(`Result` result) | `Observable` | +| **ReturnOnCompleted**(`Result` result, `TimeProvider` timeProvider) | `Observable` | +| **ReturnOnCompleted**(`Result` result, `TimeSpan` dueTime, `TimeProvider` timeProvider) | `Observable` | +| **ReturnUnit**() | `Observable` | +| **Throw**(`Exception` exception) | `Observable` | +| **Throw**(`Exception` exception, `TimeProvider` timeProvider) | `Observable` | +| **Throw**(`Exception` exception, `TimeSpan` dueTime, `TimeProvider` timeProvider) | `Observable` | +| **Timer**(`TimeSpan` dueTime, `CancellationToken` cancellationToken = default) | `Observable` | +| **Timer**(`DateTimeOffset` dueTime, `CancellationToken` cancellationToken = default) | `Observable` | +| **Timer**(`TimeSpan` dueTime, `TimeSpan` period, `CancellationToken` cancellationToken = default) | `Observable` | +| **Timer**(`DateTimeOffset` dueTime, `TimeSpan` period, `CancellationToken` cancellationToken = default) | `Observable` | +| **Timer**(`TimeSpan` dueTime, `TimeProvider` timeProvider, `CancellationToken` cancellationToken = default) | `Observable` | +| **Timer**(`DateTimeOffset` dueTime, `TimeProvider` timeProvider, `CancellationToken` cancellationToken = default) | `Observable` | +| **Timer**(`TimeSpan` dueTime, `TimeSpan` period, `TimeProvider` timeProvider, `CancellationToken` cancellationToken = default) | `Observable` | +| **Timer**(`DateTimeOffset` dueTime, `TimeSpan` period, `TimeProvider` timeProvider, `CancellationToken` cancellationToken = default) | `Observable` | +| **TimerFrame**(`Int32` dueTimeFrame, `CancellationToken` cancellationToken = default) | `Observable` | +| **TimerFrame**(`Int32` dueTimeFrame, `Int32` periodFrame, `CancellationToken` cancellationToken = default) | `Observable` | +| **TimerFrame**(`Int32` dueTimeFrame, `FrameProvider` frameProvider, `CancellationToken` cancellationToken = default) | `Observable` | +| **TimerFrame**(`Int32` dueTimeFrame, `Int32` periodFrame, `FrameProvider` frameProvider, `CancellationToken` cancellationToken = default) | `Observable` | +| **ToObservable**(this `Task` task, `Boolean` configureAwait = true) | `Observable` | +| **ToObservable**(this `Task` task, `Boolean` configureAwait = true) | `Observable` | +| **ToObservable**(this `ValueTask` task, `Boolean` configureAwait = true) | `Observable` | +| **ToObservable**(this `ValueTask` task, `Boolean` configureAwait = true) | `Observable` | +| **ToObservable**(this `IEnumerable` source, `CancellationToken` cancellationToken = default) | `Observable` | +| **ToObservable**(this `IAsyncEnumerable` source) | `Observable` | +| **ToObservable**(this `IObservable` source) | `Observable` | +| **Yield**(`CancellationToken` cancellationToken = default) | `Observable` | +| **Yield**(`TimeProvider` timeProvider, `CancellationToken` cancellationToken = default) | `Observable` | +| **YieldFrame**(`CancellationToken` cancellationToken = default) | `Observable` | +| **YieldFrame**(`FrameProvider` frameProvider, `CancellationToken` cancellationToken = default) | `Observable` | +| **Zip**(params `Observable[]` sources) | `Observable` | +| **Zip**(`IEnumerable>` sources) | `Observable` | +| **Zip**(this `Observable` source1, `Observable` source2, `Func` resultSelector) | `Observable` | +| **Zip**(this `Observable` source1, `Observable` source2, `Observable` source3, `Func` resultSelector) | `Observable` | +| **Zip**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Func` resultSelector) | `Observable` | +| **Zip**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Func` resultSelector) | `Observable` | +| **Zip**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Observable` source6, `Func` resultSelector) | `Observable` | +| **Zip**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Observable` source6, `Observable` source7, `Func` resultSelector) | `Observable` | +| **Zip**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Observable` source6, `Observable` source7, `Observable` source8, `Func` resultSelector) | `Observable` | +| **Zip**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Observable` source6, `Observable` source7, `Observable` source8, `Observable` source9, `Func` resultSelector) | `Observable` | +| **Zip**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Observable` source6, `Observable` source7, `Observable` source8, `Observable` source9, `Observable` source10, `Func` resultSelector) | `Observable` | +| **Zip**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Observable` source6, `Observable` source7, `Observable` source8, `Observable` source9, `Observable` source10, `Observable` source11, `Func` resultSelector) | `Observable` | +| **Zip**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Observable` source6, `Observable` source7, `Observable` source8, `Observable` source9, `Observable` source10, `Observable` source11, `Observable` source12, `Func` resultSelector) | `Observable` | +| **Zip**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Observable` source6, `Observable` source7, `Observable` source8, `Observable` source9, `Observable` source10, `Observable` source11, `Observable` source12, `Observable` source13, `Func` resultSelector) | `Observable` | +| **Zip**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Observable` source6, `Observable` source7, `Observable` source8, `Observable` source9, `Observable` source10, `Observable` source11, `Observable` source12, `Observable` source13, `Observable` source14, `Func` resultSelector) | `Observable` | +| **Zip**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Observable` source6, `Observable` source7, `Observable` source8, `Observable` source9, `Observable` source10, `Observable` source11, `Observable` source12, `Observable` source13, `Observable` source14, `Observable` source15, `Func` resultSelector) | `Observable` | +| **ZipLatest**(params `Observable[]` sources) | `Observable` | +| **ZipLatest**(`IEnumerable>` sources) | `Observable` | +| **ZipLatest**(this `Observable` source1, `Observable` source2, `Func` resultSelector) | `Observable` | +| **ZipLatest**(this `Observable` source1, `Observable` source2, `Observable` source3, `Func` resultSelector) | `Observable` | +| **ZipLatest**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Func` resultSelector) | `Observable` | +| **ZipLatest**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Func` resultSelector) | `Observable` | +| **ZipLatest**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Observable` source6, `Func` resultSelector) | `Observable` | +| **ZipLatest**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Observable` source6, `Observable` source7, `Func` resultSelector) | `Observable` | +| **ZipLatest**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Observable` source6, `Observable` source7, `Observable` source8, `Func` resultSelector) | `Observable` | +| **ZipLatest**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Observable` source6, `Observable` source7, `Observable` source8, `Observable` source9, `Func` resultSelector) | `Observable` | +| **ZipLatest**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Observable` source6, `Observable` source7, `Observable` source8, `Observable` source9, `Observable` source10, `Func` resultSelector) | `Observable` | +| **ZipLatest**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Observable` source6, `Observable` source7, `Observable` source8, `Observable` source9, `Observable` source10, `Observable` source11, `Func` resultSelector) | `Observable` | +| **ZipLatest**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Observable` source6, `Observable` source7, `Observable` source8, `Observable` source9, `Observable` source10, `Observable` source11, `Observable` source12, `Func` resultSelector) | `Observable` | +| **ZipLatest**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Observable` source6, `Observable` source7, `Observable` source8, `Observable` source9, `Observable` source10, `Observable` source11, `Observable` source12, `Observable` source13, `Func` resultSelector) | `Observable` | +| **ZipLatest**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Observable` source6, `Observable` source7, `Observable` source8, `Observable` source9, `Observable` source10, `Observable` source11, `Observable` source12, `Observable` source13, `Observable` source14, `Func` resultSelector) | `Observable` | +| **ZipLatest**(this `Observable` source1, `Observable` source2, `Observable` source3, `Observable` source4, `Observable` source5, `Observable` source6, `Observable` source7, `Observable` source8, `Observable` source9, `Observable` source10, `Observable` source11, `Observable` source12, `Observable` source13, `Observable` source14, `Observable` source15, `Func` resultSelector) | `Observable` | Methods that accept a `CancellationToken` will emit `OnCompleted` when a Cancel is issued. This allows you to unsubscribe all subscriptions from the event source. @@ -1929,281 +1929,281 @@ Among our custom frame-based methods, `EveryUpdate` emits values every frame. `Y Operator methods are defined as extension methods to `Observable` in the static class `ObservableExtensions`. -| Name(Parameter) | ReturnType | -| --- | --- | -| **AggregateAsync**(this `Observable` source, `Func` func, `CancellationToken` cancellationToken = default) | `Task` | -| **AggregateAsync**(this `Observable` source, `TResult` seed, `Func` func, `CancellationToken` cancellationToken = default) | `Task` | -| **AggregateAsync**(this `Observable` source, `TAccumulate` seed, `Func` func, `Func` resultSelector, `CancellationToken` cancellationToken = default) | `Task` | -| **AggregateByAsync**(this `Observable` source, `Func` keySelector, `TAccumulate` seed, `Func` func, `IEqualityComparer` keyComparer = default, `CancellationToken` cancellationToken = default) | `Task>>` | -| **AggregateByAsync**(this `Observable` source, `Func` keySelector, `Func` seedSelector, `Func` func, `IEqualityComparer` keyComparer = default, `CancellationToken` cancellationToken = default) | `Task>>` | -| **AllAsync**(this `Observable` source, `Func` predicate, `CancellationToken` cancellationToken = default) | `Task` | -| **Amb**(this `Observable` source, `Observable` second) | `Observable` | -| **AnyAsync**(this `Observable` source, `CancellationToken` cancellationToken = default) | `Task` | -| **AnyAsync**(this `Observable` source, `Func` predicate, `CancellationToken` cancellationToken = default) | `Task` | -| **Append**(this `Observable` source, `T` value) | `Observable` | -| **Append**(this `Observable` source, `IEnumerable` values) | `Observable` | -| **Append**(this `Observable` source, `Func` valueFactory) | `Observable` | -| **Append**(this `Observable` source, `TState` state, `Func` valueFactory) | `Observable` | -| **AsObservable**(this `Observable` source) | `Observable` | -| **AsSystemObservable**(this `Observable` source) | `IObservable` | -| **AsUnitObservable**(this `Observable` source) | `Observable` | -| **AverageAsync**(this `Observable` source, `CancellationToken` cancellationToken = default) | `Task` | -| **AverageAsync**(this `Observable` source, `Func` selector, `CancellationToken` cancellationToken = default) | `Task` | -| **AverageAsync**(this `Observable` source, `CancellationToken` cancellationToken = default) | `Task` | -| **AverageAsync**(this `Observable` source, `Func` selector, `CancellationToken` cancellationToken = default) | `Task` | -| **AverageAsync**(this `Observable` source, `CancellationToken` cancellationToken = default) | `Task` | -| **AverageAsync**(this `Observable` source, `Func` selector, `CancellationToken` cancellationToken = default) | `Task` | -| **AverageAsync**(this `Observable` source, `CancellationToken` cancellationToken = default) | `Task` | -| **AverageAsync**(this `Observable` source, `Func` selector, `CancellationToken` cancellationToken = default) | `Task` | -| **AverageAsync**(this `Observable` source, `CancellationToken` cancellationToken = default) | `Task` | -| **AverageAsync**(this `Observable` source, `Func` selector, `CancellationToken` cancellationToken = default) | `Task` | -| **AverageAsync**(this `Observable` source, `CancellationToken` cancellationToken = default) | `Task` | -| **AverageAsync**(this `Observable` source, `Func` selector, `CancellationToken` cancellationToken = default) | `Task` | -| **Cast**(this `Observable` source) | `Observable` | -| **Catch**(this `Observable` source, `Observable` second) | `Observable` | -| **Catch**(this `Observable` source, `Func>` errorHandler) | `Observable` | -| **Chunk**(this `Observable` source, `Int32` count) | `Observable` | -| **Chunk**(this `Observable` source, `Int32` count, `Int32` skip) | `Observable` | -| **Chunk**(this `Observable` source, `TimeSpan` timeSpan) | `Observable` | -| **Chunk**(this `Observable` source, `TimeSpan` timeSpan, `TimeProvider` timeProvider) | `Observable` | -| **Chunk**(this `Observable` source, `TimeSpan` timeSpan, `Int32` count) | `Observable` | -| **Chunk**(this `Observable` source, `TimeSpan` timeSpan, `Int32` count, `TimeProvider` timeProvider) | `Observable` | -| **Chunk**(this `Observable` source, `Observable` windowBoundaries) | `Observable` | -| **Chunk**(this `Observable` source, `Func` asyncWindow, `Boolean` configureAwait = true) | `Observable` | -| **ChunkFrame**(this `Observable` source) | `Observable` | -| **ChunkFrame**(this `Observable` source, `Int32` frameCount) | `Observable` | -| **ChunkFrame**(this `Observable` source, `Int32` frameCount, `FrameProvider` frameProvider) | `Observable` | -| **ChunkFrame**(this `Observable` source, `Int32` frameCount, `Int32` count) | `Observable` | -| **ChunkFrame**(this `Observable` source, `Int32` frameCount, `Int32` count, `FrameProvider` frameProvider) | `Observable` | -| **Concat**(this `Observable` source, `Observable` second) | `Observable` | -| **ContainsAsync**(this `Observable` source, `T` value, `CancellationToken` cancellationToken = default) | `Task` | -| **ContainsAsync**(this `Observable` source, `T` value, `IEqualityComparer` equalityComparer, `CancellationToken` cancellationToken = default) | `Task` | -| **CountAsync**(this `Observable` source, `CancellationToken` cancellationToken = default) | `Task` | -| **CountAsync**(this `Observable` source, `Func` predicate, `CancellationToken` cancellationToken = default) | `Task` | -| **Debounce**(this `Observable` source, `TimeSpan` timeSpan) | `Observable` | -| **Debounce**(this `Observable` source, `TimeSpan` timeSpan, `TimeProvider` timeProvider) | `Observable` | -| **Debounce**(this `Observable` source, `Func` throttleDurationSelector, `Boolean` configureAwait = true) | `Observable` | -| **DebounceFrame**(this `Observable` source, `Int32` frameCount) | `Observable` | -| **DebounceFrame**(this `Observable` source, `Int32` frameCount, `FrameProvider` frameProvider) | `Observable` | -| **DefaultIfEmpty**(this `Observable` source) | `Observable` | -| **DefaultIfEmpty**(this `Observable` source, `T` defaultValue) | `Observable` | -| **Delay**(this `Observable` source, `TimeSpan` dueTime) | `Observable` | -| **Delay**(this `Observable` source, `TimeSpan` dueTime, `TimeProvider` timeProvider) | `Observable` | -| **DelayFrame**(this `Observable` source, `Int32` frameCount) | `Observable` | -| **DelayFrame**(this `Observable` source, `Int32` frameCount, `FrameProvider` frameProvider) | `Observable` | -| **DelaySubscription**(this `Observable` source, `TimeSpan` dueTime) | `Observable` | -| **DelaySubscription**(this `Observable` source, `TimeSpan` dueTime, `TimeProvider` timeProvider) | `Observable` | -| **DelaySubscriptionFrame**(this `Observable` source, `Int32` frameCount) | `Observable` | -| **DelaySubscriptionFrame**(this `Observable` source, `Int32` frameCount, `FrameProvider` frameProvider) | `Observable` | -| **Dematerialize**(this `Observable>` source) | `Observable` | -| **Distinct**(this `Observable` source) | `Observable` | -| **Distinct**(this `Observable` source, `IEqualityComparer` comparer) | `Observable` | -| **DistinctBy**(this `Observable` source, `Func` keySelector) | `Observable` | -| **DistinctBy**(this `Observable` source, `Func` keySelector, `IEqualityComparer` comparer) | `Observable` | -| **DistinctUntilChanged**(this `Observable` source) | `Observable` | -| **DistinctUntilChanged**(this `Observable` source, `IEqualityComparer` comparer) | `Observable` | -| **DistinctUntilChangedBy**(this `Observable` source, `Func` keySelector) | `Observable` | -| **DistinctUntilChangedBy**(this `Observable` source, `Func` keySelector, `IEqualityComparer` comparer) | `Observable` | -| **Do**(this `Observable` source, `Action` onNext = default, `Action` onErrorResume = default, `Action` onCompleted = default, `Action` onDispose = default, `Action` onSubscribe = default) | `Observable` | -| **Do**(this `Observable` source, `TState` state, `Action` onNext = default, `Action` onErrorResume = default, `Action` onCompleted = default, `Action` onDispose = default, `Action` onSubscribe = default) | `Observable` | -| **DoCancelOnCompleted**(this `Observable` source, `CancellationTokenSource` cancellationTokenSource) | `Observable` | -| **ElementAtAsync**(this `Observable` source, `Int32` index, `CancellationToken` cancellationToken = default) | `Task` | -| **ElementAtAsync**(this `Observable` source, `Index` index, `CancellationToken` cancellationToken = default) | `Task` | -| **ElementAtOrDefaultAsync**(this `Observable` source, `Int32` index, `T` defaultValue = default, `CancellationToken` cancellationToken = default) | `Task` | -| **ElementAtOrDefaultAsync**(this `Observable` source, `Index` index, `T` defaultValue = default, `CancellationToken` cancellationToken = default) | `Task` | -| **FirstAsync**(this `Observable` source, `CancellationToken` cancellationToken = default) | `Task` | -| **FirstAsync**(this `Observable` source, `Func` predicate, `CancellationToken` cancellationToken = default) | `Task` | -| **FirstOrDefaultAsync**(this `Observable` source, `T` defaultValue = default, `CancellationToken` cancellationToken = default) | `Task` | -| **FirstOrDefaultAsync**(this `Observable` source, `Func` predicate, `T` defaultValue = default, `CancellationToken` cancellationToken = default) | `Task` | -| **ForEachAsync**(this `Observable` source, `Action` action, `CancellationToken` cancellationToken = default) | `Task` | -| **ForEachAsync**(this `Observable` source, `Action` action, `CancellationToken` cancellationToken = default) | `Task` | -| **FrameCount**(this `Observable` source) | `Observable>` | -| **FrameCount**(this `Observable` source, `FrameProvider` frameProvider) | `Observable>` | -| **FrameInterval**(this `Observable` source) | `Observable>` | -| **FrameInterval**(this `Observable` source, `FrameProvider` frameProvider) | `Observable>` | -| **IgnoreElements**(this `Observable` source) | `Observable` | -| **IgnoreElements**(this `Observable` source, `Action` doOnNext) | `Observable` | -| **IgnoreOnErrorResume**(this `Observable` source) | `Observable` | -| **IgnoreOnErrorResume**(this `Observable` source, `Action` doOnErrorResume) | `Observable` | -| **Index**(this `Observable` source) | `Observable` | -| **Index**(this `Observable` source) | `Observable>` | -| **IsEmptyAsync**(this `Observable` source, `CancellationToken` cancellationToken = default) | `Task` | -| **LastAsync**(this `Observable` source, `CancellationToken` cancellationToken = default) | `Task` | -| **LastAsync**(this `Observable` source, `Func` predicate, `CancellationToken` cancellationToken = default) | `Task` | -| **LastOrDefaultAsync**(this `Observable` source, `T` defaultValue = default, `CancellationToken` cancellationToken = default) | `Task` | -| **LastOrDefaultAsync**(this `Observable` source, `Func` predicate, `T` defaultValue = default, `CancellationToken` cancellationToken = default) | `Task` | -| **LongCountAsync**(this `Observable` source, `CancellationToken` cancellationToken = default) | `Task` | -| **LongCountAsync**(this `Observable` source, `Func` predicate, `CancellationToken` cancellationToken = default) | `Task` | -| **Materialize**(this `Observable` source) | `Observable>` | -| **MaxAsync**(this `Observable` source, `CancellationToken` cancellationToken = default) | `Task` | -| **MaxAsync**(this `Observable` source, `IComparer` comparer, `CancellationToken` cancellationToken = default) | `Task` | -| **MaxAsync**(this `Observable` source, `Func` selector, `CancellationToken` cancellationToken = default) | `Task` | -| **MaxAsync**(this `Observable` source, `Func` selector, `IComparer` comparer, `CancellationToken` cancellationToken = default) | `Task` | -| **MaxByAsync**(this `Observable` source, `Func` keySelector, `CancellationToken` cancellationToken = default) | `Task` | -| **MaxByAsync**(this `Observable` source, `Func` keySelector, `IComparer` comparer, `CancellationToken` cancellationToken = default) | `Task` | -| **Merge**(this `Observable` source, `Observable` second) | `Observable` | -| **MinAsync**(this `Observable` source, `CancellationToken` cancellationToken = default) | `Task` | -| **MinAsync**(this `Observable` source, `IComparer` comparer, `CancellationToken` cancellationToken = default) | `Task` | -| **MinAsync**(this `Observable` source, `Func` selector, `CancellationToken` cancellationToken = default) | `Task` | -| **MinAsync**(this `Observable` source, `Func` selector, `IComparer` comparer, `CancellationToken` cancellationToken = default) | `Task` | -| **MinByAsync**(this `Observable` source, `Func` keySelector, `CancellationToken` cancellationToken = default) | `Task` | -| **MinByAsync**(this `Observable` source, `Func` keySelector, `IComparer` comparer, `CancellationToken` cancellationToken = default) | `Task` | -| **MinMaxAsync**(this `Observable` source, `CancellationToken` cancellationToken = default) | `Task>` | -| **MinMaxAsync**(this `Observable` source, `IComparer` comparer, `CancellationToken` cancellationToken = default) | `Task>` | -| **MinMaxAsync**(this `Observable` source, `Func` selector, `CancellationToken` cancellationToken = default) | `Task>` | -| **MinMaxAsync**(this `Observable` source, `Func` selector, `IComparer` comparer, `CancellationToken` cancellationToken = default) | `Task>` | -| **Multicast**(this `Observable` source, `ISubject` subject) | `ConnectableObservable` | -| **ObserveOn**(this `Observable` source, `SynchronizationContext` synchronizationContext) | `Observable` | -| **ObserveOn**(this `Observable` source, `TimeProvider` timeProvider) | `Observable` | -| **ObserveOn**(this `Observable` source, `FrameProvider` frameProvider) | `Observable` | -| **ObserveOnCurrentSynchronizationContext**(this `Observable` source) | `Observable` | -| **ObserveOnThreadPool**(this `Observable` source) | `Observable` | -| **OfType**(this `Observable` source) | `Observable` | -| **OnErrorResumeAsFailure**(this `Observable` source) | `Observable` | -| **Pairwise**(this `Observable` source) | `Observable>` | -| **Prepend**(this `Observable` source, `T` value) | `Observable` | -| **Prepend**(this `Observable` source, `IEnumerable` values) | `Observable` | -| **Prepend**(this `Observable` source, `Func` valueFactory) | `Observable` | -| **Prepend**(this `Observable` source, `TState` state, `Func` valueFactory) | `Observable` | -| **Publish**(this `Observable` source) | `ConnectableObservable` | -| **Publish**(this `Observable` source, `T` initialValue) | `ConnectableObservable` | -| **RefCount**(this `ConnectableObservable` source) | `Observable` | -| **Replay**(this `Observable` source) | `ConnectableObservable` | -| **Replay**(this `Observable` source, `Int32` bufferSize) | `ConnectableObservable` | -| **Replay**(this `Observable` source, `TimeSpan` window) | `ConnectableObservable` | -| **Replay**(this `Observable` source, `TimeSpan` window, `TimeProvider` timeProvider) | `ConnectableObservable` | -| **Replay**(this `Observable` source, `Int32` bufferSize, `TimeSpan` window) | `ConnectableObservable` | -| **Replay**(this `Observable` source, `Int32` bufferSize, `TimeSpan` window, `TimeProvider` timeProvider) | `ConnectableObservable` | -| **ReplayFrame**(this `Observable` source, `Int32` window) | `ConnectableObservable` | -| **ReplayFrame**(this `Observable` source, `Int32` window, `FrameProvider` frameProvider) | `ConnectableObservable` | -| **ReplayFrame**(this `Observable` source, `Int32` bufferSize, `Int32` window) | `ConnectableObservable` | -| **ReplayFrame**(this `Observable` source, `Int32` bufferSize, `Int32` window, `FrameProvider` frameProvider) | `ConnectableObservable` | -| **Scan**(this `Observable` source, `Func` accumulator) | `Observable` | -| **Scan**(this `Observable` source, `TAccumulate` seed, `Func` accumulator) | `Observable` | -| **Select**(this `Observable` source, `Func` selector) | `Observable` | -| **Select**(this `Observable` source, `Func` selector) | `Observable` | -| **Select**(this `Observable` source, `TState` state, `Func` selector) | `Observable` | -| **Select**(this `Observable` source, `TState` state, `Func` selector) | `Observable` | -| **SelectAwait**(this `Observable` source, `Func>` selector, `AwaitOperation` awaitOperation = AwaitOperation.Sequential, `Boolean` configureAwait = true, `Boolean` cancelOnCompleted = false, `Int32` maxConcurrent = -1) | `Observable` | -| **SelectMany**(this `Observable` source, `Func>` selector) | `Observable` | -| **SelectMany**(this `Observable` source, `Func>` collectionSelector, `Func` resultSelector) | `Observable` | -| **SelectMany**(this `Observable` source, `Func>` selector) | `Observable` | -| **SelectMany**(this `Observable` source, `Func>` collectionSelector, `Func` resultSelector) | `Observable` | -| **SequenceEqualAsync**(this `Observable` source, `Observable` second, `CancellationToken` cancellationToken = default) | `Task` | -| **SequenceEqualAsync**(this `Observable` source, `Observable` second, `IEqualityComparer` equalityComparer, `CancellationToken` cancellationToken = default) | `Task` | -| **Share**(this `Observable` source) | `Observable` | -| **SingleAsync**(this `Observable` source, `CancellationToken` cancellationToken = default) | `Task` | -| **SingleAsync**(this `Observable` source, `Func` predicate, `CancellationToken` cancellationToken = default) | `Task` | -| **SingleOrDefaultAsync**(this `Observable` source, `T` defaultValue = default, `CancellationToken` cancellationToken = default) | `Task` | -| **SingleOrDefaultAsync**(this `Observable` source, `Func` predicate, `T` defaultValue = default, `CancellationToken` cancellationToken = default) | `Task` | -| **Skip**(this `Observable` source, `Int32` count) | `Observable` | -| **Skip**(this `Observable` source, `TimeSpan` duration) | `Observable` | -| **Skip**(this `Observable` source, `TimeSpan` duration, `TimeProvider` timeProvider) | `Observable` | -| **SkipFrame**(this `Observable` source, `Int32` frameCount) | `Observable` | -| **SkipFrame**(this `Observable` source, `Int32` frameCount, `FrameProvider` frameProvider) | `Observable` | -| **SkipLast**(this `Observable` source, `Int32` count) | `Observable` | -| **SkipLast**(this `Observable` source, `TimeSpan` duration) | `Observable` | -| **SkipLast**(this `Observable` source, `TimeSpan` duration, `TimeProvider` timeProvider) | `Observable` | -| **SkipLastFrame**(this `Observable` source, `Int32` frameCount) | `Observable` | -| **SkipLastFrame**(this `Observable` source, `Int32` frameCount, `FrameProvider` frameProvider) | `Observable` | -| **SkipUntil**(this `Observable` source, `Observable` other) | `Observable` | -| **SkipUntil**(this `Observable` source, `CancellationToken` cancellationToken) | `Observable` | -| **SkipUntil**(this `Observable` source, `Task` task, `Boolean` configureAwait = true) | `Observable` | -| **SkipUntil**(this `Observable` source, `Func` asyncFunc, `Boolean` configureAwait = true) | `Observable` | -| **SkipWhile**(this `Observable` source, `Func` predicate) | `Observable` | -| **SkipWhile**(this `Observable` source, `Func` predicate) | `Observable` | -| **SubscribeAwait**(this `Observable` source, `Func` onNextAsync, `AwaitOperation` awaitOperation = AwaitOperation.Sequential, `Boolean` configureAwait = true, `Boolean` cancelOnCompleted = false, `Int32` maxConcurrent = -1) | `IDisposable` | -| **SubscribeAwait**(this `Observable` source, `Func` onNextAsync, `Action` onCompleted, `AwaitOperation` awaitOperation = AwaitOperation.Sequential, `Boolean` configureAwait = true, `Boolean` cancelOnCompleted = false, `Int32` maxConcurrent = -1) | `IDisposable` | -| **SubscribeAwait**(this `Observable` source, `Func` onNextAsync, `Action` onErrorResume, `Action` onCompleted, `AwaitOperation` awaitOperation = AwaitOperation.Sequential, `Boolean` configureAwait = true, `Boolean` cancelOnCompleted = false, `Int32` maxConcurrent = -1) | `IDisposable` | -| **SubscribeOn**(this `Observable` source, `SynchronizationContext` synchronizationContext) | `Observable` | -| **SubscribeOn**(this `Observable` source, `TimeProvider` timeProvider) | `Observable` | -| **SubscribeOn**(this `Observable` source, `FrameProvider` frameProvider) | `Observable` | -| **SubscribeOnCurrentSynchronizationContext**(this `Observable` source) | `Observable` | -| **SubscribeOnSynchronize**(this `Observable` source, `Object` gate, `Boolean` rawObserver = false) | `Observable` | -| **SubscribeOnThreadPool**(this `Observable` source) | `Observable` | -| **SumAsync**(this `Observable` source, `CancellationToken` cancellationToken = default) | `Task` | -| **SumAsync**(this `Observable` source, `Func` selector, `CancellationToken` cancellationToken = default) | `Task` | -| **SumAsync**(this `Observable` source, `CancellationToken` cancellationToken = default) | `Task` | -| **SumAsync**(this `Observable` source, `Func` selector, `CancellationToken` cancellationToken = default) | `Task` | -| **SumAsync**(this `Observable` source, `CancellationToken` cancellationToken = default) | `Task` | -| **SumAsync**(this `Observable` source, `Func` selector, `CancellationToken` cancellationToken = default) | `Task` | -| **SumAsync**(this `Observable` source, `CancellationToken` cancellationToken = default) | `Task` | -| **SumAsync**(this `Observable` source, `Func` selector, `CancellationToken` cancellationToken = default) | `Task` | -| **SumAsync**(this `Observable` source, `CancellationToken` cancellationToken = default) | `Task` | -| **SumAsync**(this `Observable` source, `Func` selector, `CancellationToken` cancellationToken = default) | `Task` | -| **SumAsync**(this `Observable` source, `CancellationToken` cancellationToken = default) | `Task` | -| **SumAsync**(this `Observable` source, `Func` selector, `CancellationToken` cancellationToken = default) | `Task` | -| **Switch**(this `Observable>` sources) | `Observable` | -| **Synchronize**(this `Observable` source) | `Observable` | -| **Synchronize**(this `Observable` source, `Object` gate) | `Observable` | -| **Take**(this `Observable` source, `Int32` count) | `Observable` | -| **Take**(this `Observable` source, `TimeSpan` duration) | `Observable` | -| **Take**(this `Observable` source, `TimeSpan` duration, `TimeProvider` timeProvider) | `Observable` | -| **TakeFrame**(this `Observable` source, `Int32` frameCount) | `Observable` | -| **TakeFrame**(this `Observable` source, `Int32` frameCount, `FrameProvider` frameProvider) | `Observable` | -| **TakeLast**(this `Observable` source, `Int32` count) | `Observable` | -| **TakeLast**(this `Observable` source, `TimeSpan` duration) | `Observable` | -| **TakeLast**(this `Observable` source, `TimeSpan` duration, `TimeProvider` timeProvider) | `Observable` | -| **TakeLastFrame**(this `Observable` source, `Int32` frameCount) | `Observable` | -| **TakeLastFrame**(this `Observable` source, `Int32` frameCount, `FrameProvider` frameProvider) | `Observable` | -| **TakeUntil**(this `Observable` source, `Observable` other) | `Observable` | -| **TakeUntil**(this `Observable` source, `CancellationToken` cancellationToken) | `Observable` | -| **TakeUntil**(this `Observable` source, `Task` task, `Boolean` configureAwait = true) | `Observable` | -| **TakeUntil**(this `Observable` source, `Func` asyncFunc, `Boolean` configureAwait = true) | `Observable` | -| **TakeUntil**(this `Observable` source, `Func` predicate) | `Observable` | -| **TakeUntil**(this `Observable` source, `Func` predicate) | `Observable` | -| **TakeWhile**(this `Observable` source, `Func` predicate) | `Observable` | -| **TakeWhile**(this `Observable` source, `Func` predicate) | `Observable` | -| **ThrottleFirst**(this `Observable` source, `TimeSpan` timeSpan) | `Observable` | -| **ThrottleFirst**(this `Observable` source, `TimeSpan` timeSpan, `TimeProvider` timeProvider) | `Observable` | -| **ThrottleFirst**(this `Observable` source, `Observable` sampler) | `Observable` | -| **ThrottleFirst**(this `Observable` source, `Func` sampler, `Boolean` configureAwait = true) | `Observable` | -| **ThrottleFirstFrame**(this `Observable` source, `Int32` frameCount) | `Observable` | -| **ThrottleFirstFrame**(this `Observable` source, `Int32` frameCount, `FrameProvider` frameProvider) | `Observable` | -| **ThrottleFirstLast**(this `Observable` source, `TimeSpan` timeSpan) | `Observable` | -| **ThrottleFirstLast**(this `Observable` source, `TimeSpan` timeSpan, `TimeProvider` timeProvider) | `Observable` | -| **ThrottleFirstLast**(this `Observable` source, `Observable` sampler) | `Observable` | -| **ThrottleFirstLast**(this `Observable` source, `Func` sampler, `Boolean` configureAwait = true) | `Observable` | -| **ThrottleFirstLastFrame**(this `Observable` source, `Int32` frameCount) | `Observable` | -| **ThrottleFirstLastFrame**(this `Observable` source, `Int32` frameCount, `FrameProvider` frameProvider) | `Observable` | -| **ThrottleLast**(this `Observable` source, `TimeSpan` timeSpan) | `Observable` | -| **ThrottleLast**(this `Observable` source, `TimeSpan` timeSpan, `TimeProvider` timeProvider) | `Observable` | -| **ThrottleLast**(this `Observable` source, `Observable` sampler) | `Observable` | -| **ThrottleLast**(this `Observable` source, `Func` sampler, `Boolean` configureAwait = true) | `Observable` | -| **ThrottleLastFrame**(this `Observable` source, `Int32` frameCount) | `Observable` | -| **ThrottleLastFrame**(this `Observable` source, `Int32` frameCount, `FrameProvider` frameProvider) | `Observable` | -| **TimeInterval**(this `Observable` source) | `Observable>` | -| **TimeInterval**(this `Observable` source, `TimeProvider` timeProvider) | `Observable>` | -| **Timeout**(this `Observable` source, `TimeSpan` dueTime) | `Observable` | -| **Timeout**(this `Observable` source, `TimeSpan` dueTime, `TimeProvider` timeProvider) | `Observable` | -| **TimeoutFrame**(this `Observable` source, `Int32` frameCount) | `Observable` | -| **TimeoutFrame**(this `Observable` source, `Int32` frameCount, `FrameProvider` frameProvider) | `Observable` | -| **Timestamp**(this `Observable` source) | `Observable>` | -| **Timestamp**(this `Observable` source, `TimeProvider` timeProvider) | `Observable>` | -| **ToArrayAsync**(this `Observable` source, `CancellationToken` cancellationToken = default) | `Task` | -| **ToAsyncEnumerable**(this `Observable` source, `CancellationToken` cancellationToken = default) | `IAsyncEnumerable` | -| **ToDictionaryAsync**(this `Observable` source, `Func` keySelector, `CancellationToken` cancellationToken = default) | `Task>` | -| **ToDictionaryAsync**(this `Observable` source, `Func` keySelector, `IEqualityComparer` keyComparer, `CancellationToken` cancellationToken = default) | `Task>` | -| **ToDictionaryAsync**(this `Observable` source, `Func` keySelector, `Func` elementSelector, `CancellationToken` cancellationToken = default) | `Task>` | -| **ToDictionaryAsync**(this `Observable` source, `Func` keySelector, `Func` elementSelector, `IEqualityComparer` keyComparer, `CancellationToken` cancellationToken = default) | `Task>` | -| **ToHashSetAsync**(this `Observable` source, `CancellationToken` cancellationToken = default) | `Task>` | -| **ToHashSetAsync**(this `Observable` source, `IEqualityComparer` comparer, `CancellationToken` cancellationToken = default) | `Task>` | -| **ToListAsync**(this `Observable` source, `CancellationToken` cancellationToken = default) | `Task>` | -| **ToLiveList**(this `Observable` source) | `LiveList` | -| **ToLiveList**(this `Observable` source, `Int32` bufferSize) | `LiveList` | -| **ToLookupAsync**(this `Observable` source, `Func` keySelector, `CancellationToken` cancellationToken = default) | `Task>` | -| **ToLookupAsync**(this `Observable` source, `Func` keySelector, `IEqualityComparer` keyComparer, `CancellationToken` cancellationToken = default) | `Task>` | -| **ToLookupAsync**(this `Observable` source, `Func` keySelector, `Func` elementSelector, `CancellationToken` cancellationToken = default) | `Task>` | -| **ToLookupAsync**(this `Observable` source, `Func` keySelector, `Func` elementSelector, `IEqualityComparer` keyComparer, `CancellationToken` cancellationToken = default) | `Task>` | -| **Trampoline**(this `Observable` source) | `Observable` | -| **WaitAsync**(this `Observable` source, `CancellationToken` cancellationToken = default) | `Task` | -| **Where**(this `Observable` source, `Func` predicate) | `Observable` | -| **Where**(this `Observable` source, `Func` predicate) | `Observable` | -| **Where**(this `Observable` source, `TState` state, `Func` predicate) | `Observable` | -| **Where**(this `Observable` source, `TState` state, `Func` predicate) | `Observable` | -| **WhereAwait**(this `Observable` source, `Func>` predicate, `AwaitOperation` awaitOperation = AwaitOperation.Sequential, `Boolean` configureAwait = true, `Boolean` cancelOnCompleted = false, `Int32` maxConcurrent = -1) | `Observable` | -| **WhereNotNull**(this `Observable` source) | `Observable` | -| **WithLatestFrom**(this `Observable` first, `Observable` second, `Func` resultSelector) | `Observable` | +| Name(Parameter) | ReturnType | +| --- | --- | +| **AggregateAsync**(this `Observable` source, `Func` func, `CancellationToken` cancellationToken = default) | `Task` | +| **AggregateAsync**(this `Observable` source, `TResult` seed, `Func` func, `CancellationToken` cancellationToken = default) | `Task` | +| **AggregateAsync**(this `Observable` source, `TAccumulate` seed, `Func` func, `Func` resultSelector, `CancellationToken` cancellationToken = default) | `Task` | +| **AggregateByAsync**(this `Observable` source, `Func` keySelector, `TAccumulate` seed, `Func` func, `IEqualityComparer` keyComparer = default, `CancellationToken` cancellationToken = default) | `Task>>` | +| **AggregateByAsync**(this `Observable` source, `Func` keySelector, `Func` seedSelector, `Func` func, `IEqualityComparer` keyComparer = default, `CancellationToken` cancellationToken = default) | `Task>>` | +| **AllAsync**(this `Observable` source, `Func` predicate, `CancellationToken` cancellationToken = default) | `Task` | +| **Amb**(this `Observable` source, `Observable` second) | `Observable` | +| **AnyAsync**(this `Observable` source, `CancellationToken` cancellationToken = default) | `Task` | +| **AnyAsync**(this `Observable` source, `Func` predicate, `CancellationToken` cancellationToken = default) | `Task` | +| **Append**(this `Observable` source, `T` value) | `Observable` | +| **Append**(this `Observable` source, `IEnumerable` values) | `Observable` | +| **Append**(this `Observable` source, `Func` valueFactory) | `Observable` | +| **Append**(this `Observable` source, `TState` state, `Func` valueFactory) | `Observable` | +| **AsObservable**(this `Observable` source) | `Observable` | +| **AsSystemObservable**(this `Observable` source) | `IObservable` | +| **AsUnitObservable**(this `Observable` source) | `Observable` | +| **AverageAsync**(this `Observable` source, `CancellationToken` cancellationToken = default) | `Task` | +| **AverageAsync**(this `Observable` source, `Func` selector, `CancellationToken` cancellationToken = default) | `Task` | +| **AverageAsync**(this `Observable` source, `CancellationToken` cancellationToken = default) | `Task` | +| **AverageAsync**(this `Observable` source, `Func` selector, `CancellationToken` cancellationToken = default) | `Task` | +| **AverageAsync**(this `Observable` source, `CancellationToken` cancellationToken = default) | `Task` | +| **AverageAsync**(this `Observable` source, `Func` selector, `CancellationToken` cancellationToken = default) | `Task` | +| **AverageAsync**(this `Observable` source, `CancellationToken` cancellationToken = default) | `Task` | +| **AverageAsync**(this `Observable` source, `Func` selector, `CancellationToken` cancellationToken = default) | `Task` | +| **AverageAsync**(this `Observable` source, `CancellationToken` cancellationToken = default) | `Task` | +| **AverageAsync**(this `Observable` source, `Func` selector, `CancellationToken` cancellationToken = default) | `Task` | +| **AverageAsync**(this `Observable` source, `CancellationToken` cancellationToken = default) | `Task` | +| **AverageAsync**(this `Observable` source, `Func` selector, `CancellationToken` cancellationToken = default) | `Task` | +| **Cast**(this `Observable` source) | `Observable` | +| **Catch**(this `Observable` source, `Observable` second) | `Observable` | +| **Catch**(this `Observable` source, `Func>` errorHandler) | `Observable` | +| **Chunk**(this `Observable` source, `Int32` count) | `Observable` | +| **Chunk**(this `Observable` source, `Int32` count, `Int32` skip) | `Observable` | +| **Chunk**(this `Observable` source, `TimeSpan` timeSpan) | `Observable` | +| **Chunk**(this `Observable` source, `TimeSpan` timeSpan, `TimeProvider` timeProvider) | `Observable` | +| **Chunk**(this `Observable` source, `TimeSpan` timeSpan, `Int32` count) | `Observable` | +| **Chunk**(this `Observable` source, `TimeSpan` timeSpan, `Int32` count, `TimeProvider` timeProvider) | `Observable` | +| **Chunk**(this `Observable` source, `Observable` windowBoundaries) | `Observable` | +| **Chunk**(this `Observable` source, `Func` asyncWindow, `Boolean` configureAwait = true) | `Observable` | +| **ChunkFrame**(this `Observable` source) | `Observable` | +| **ChunkFrame**(this `Observable` source, `Int32` frameCount) | `Observable` | +| **ChunkFrame**(this `Observable` source, `Int32` frameCount, `FrameProvider` frameProvider) | `Observable` | +| **ChunkFrame**(this `Observable` source, `Int32` frameCount, `Int32` count) | `Observable` | +| **ChunkFrame**(this `Observable` source, `Int32` frameCount, `Int32` count, `FrameProvider` frameProvider) | `Observable` | +| **Concat**(this `Observable` source, `Observable` second) | `Observable` | +| **ContainsAsync**(this `Observable` source, `T` value, `CancellationToken` cancellationToken = default) | `Task` | +| **ContainsAsync**(this `Observable` source, `T` value, `IEqualityComparer` equalityComparer, `CancellationToken` cancellationToken = default) | `Task` | +| **CountAsync**(this `Observable` source, `CancellationToken` cancellationToken = default) | `Task` | +| **CountAsync**(this `Observable` source, `Func` predicate, `CancellationToken` cancellationToken = default) | `Task` | +| **Debounce**(this `Observable` source, `TimeSpan` timeSpan) | `Observable` | +| **Debounce**(this `Observable` source, `TimeSpan` timeSpan, `TimeProvider` timeProvider) | `Observable` | +| **Debounce**(this `Observable` source, `Func` throttleDurationSelector, `Boolean` configureAwait = true) | `Observable` | +| **DebounceFrame**(this `Observable` source, `Int32` frameCount) | `Observable` | +| **DebounceFrame**(this `Observable` source, `Int32` frameCount, `FrameProvider` frameProvider) | `Observable` | +| **DefaultIfEmpty**(this `Observable` source) | `Observable` | +| **DefaultIfEmpty**(this `Observable` source, `T` defaultValue) | `Observable` | +| **Delay**(this `Observable` source, `TimeSpan` dueTime) | `Observable` | +| **Delay**(this `Observable` source, `TimeSpan` dueTime, `TimeProvider` timeProvider) | `Observable` | +| **DelayFrame**(this `Observable` source, `Int32` frameCount) | `Observable` | +| **DelayFrame**(this `Observable` source, `Int32` frameCount, `FrameProvider` frameProvider) | `Observable` | +| **DelaySubscription**(this `Observable` source, `TimeSpan` dueTime) | `Observable` | +| **DelaySubscription**(this `Observable` source, `TimeSpan` dueTime, `TimeProvider` timeProvider) | `Observable` | +| **DelaySubscriptionFrame**(this `Observable` source, `Int32` frameCount) | `Observable` | +| **DelaySubscriptionFrame**(this `Observable` source, `Int32` frameCount, `FrameProvider` frameProvider) | `Observable` | +| **Dematerialize**(this `Observable>` source) | `Observable` | +| **Distinct**(this `Observable` source) | `Observable` | +| **Distinct**(this `Observable` source, `IEqualityComparer` comparer) | `Observable` | +| **DistinctBy**(this `Observable` source, `Func` keySelector) | `Observable` | +| **DistinctBy**(this `Observable` source, `Func` keySelector, `IEqualityComparer` comparer) | `Observable` | +| **DistinctUntilChanged**(this `Observable` source) | `Observable` | +| **DistinctUntilChanged**(this `Observable` source, `IEqualityComparer` comparer) | `Observable` | +| **DistinctUntilChangedBy**(this `Observable` source, `Func` keySelector) | `Observable` | +| **DistinctUntilChangedBy**(this `Observable` source, `Func` keySelector, `IEqualityComparer` comparer) | `Observable` | +| **Do**(this `Observable` source, `Action` onNext = default, `Action` onErrorResume = default, `Action` onCompleted = default, `Action` onDispose = default, `Action` onSubscribe = default) | `Observable` | +| **Do**(this `Observable` source, `TState` state, `Action` onNext = default, `Action` onErrorResume = default, `Action` onCompleted = default, `Action` onDispose = default, `Action` onSubscribe = default) | `Observable` | +| **DoCancelOnCompleted**(this `Observable` source, `CancellationTokenSource` cancellationTokenSource) | `Observable` | +| **ElementAtAsync**(this `Observable` source, `Int32` index, `CancellationToken` cancellationToken = default) | `Task` | +| **ElementAtAsync**(this `Observable` source, `Index` index, `CancellationToken` cancellationToken = default) | `Task` | +| **ElementAtOrDefaultAsync**(this `Observable` source, `Int32` index, `T` defaultValue = default, `CancellationToken` cancellationToken = default) | `Task` | +| **ElementAtOrDefaultAsync**(this `Observable` source, `Index` index, `T` defaultValue = default, `CancellationToken` cancellationToken = default) | `Task` | +| **FirstAsync**(this `Observable` source, `CancellationToken` cancellationToken = default) | `Task` | +| **FirstAsync**(this `Observable` source, `Func` predicate, `CancellationToken` cancellationToken = default) | `Task` | +| **FirstOrDefaultAsync**(this `Observable` source, `T` defaultValue = default, `CancellationToken` cancellationToken = default) | `Task` | +| **FirstOrDefaultAsync**(this `Observable` source, `Func` predicate, `T` defaultValue = default, `CancellationToken` cancellationToken = default) | `Task` | +| **ForEachAsync**(this `Observable` source, `Action` action, `CancellationToken` cancellationToken = default) | `Task` | +| **ForEachAsync**(this `Observable` source, `Action` action, `CancellationToken` cancellationToken = default) | `Task` | +| **FrameCount**(this `Observable` source) | `Observable>` | +| **FrameCount**(this `Observable` source, `FrameProvider` frameProvider) | `Observable>` | +| **FrameInterval**(this `Observable` source) | `Observable>` | +| **FrameInterval**(this `Observable` source, `FrameProvider` frameProvider) | `Observable>` | +| **IgnoreElements**(this `Observable` source) | `Observable` | +| **IgnoreElements**(this `Observable` source, `Action` doOnNext) | `Observable` | +| **IgnoreOnErrorResume**(this `Observable` source) | `Observable` | +| **IgnoreOnErrorResume**(this `Observable` source, `Action` doOnErrorResume) | `Observable` | +| **Index**(this `Observable` source) | `Observable` | +| **Index**(this `Observable` source) | `Observable>` | +| **IsEmptyAsync**(this `Observable` source, `CancellationToken` cancellationToken = default) | `Task` | +| **LastAsync**(this `Observable` source, `CancellationToken` cancellationToken = default) | `Task` | +| **LastAsync**(this `Observable` source, `Func` predicate, `CancellationToken` cancellationToken = default) | `Task` | +| **LastOrDefaultAsync**(this `Observable` source, `T` defaultValue = default, `CancellationToken` cancellationToken = default) | `Task` | +| **LastOrDefaultAsync**(this `Observable` source, `Func` predicate, `T` defaultValue = default, `CancellationToken` cancellationToken = default) | `Task` | +| **LongCountAsync**(this `Observable` source, `CancellationToken` cancellationToken = default) | `Task` | +| **LongCountAsync**(this `Observable` source, `Func` predicate, `CancellationToken` cancellationToken = default) | `Task` | +| **Materialize**(this `Observable` source) | `Observable>` | +| **MaxAsync**(this `Observable` source, `CancellationToken` cancellationToken = default) | `Task` | +| **MaxAsync**(this `Observable` source, `IComparer` comparer, `CancellationToken` cancellationToken = default) | `Task` | +| **MaxAsync**(this `Observable` source, `Func` selector, `CancellationToken` cancellationToken = default) | `Task` | +| **MaxAsync**(this `Observable` source, `Func` selector, `IComparer` comparer, `CancellationToken` cancellationToken = default) | `Task` | +| **MaxByAsync**(this `Observable` source, `Func` keySelector, `CancellationToken` cancellationToken = default) | `Task` | +| **MaxByAsync**(this `Observable` source, `Func` keySelector, `IComparer` comparer, `CancellationToken` cancellationToken = default) | `Task` | +| **Merge**(this `Observable` source, `Observable` second) | `Observable` | +| **MinAsync**(this `Observable` source, `CancellationToken` cancellationToken = default) | `Task` | +| **MinAsync**(this `Observable` source, `IComparer` comparer, `CancellationToken` cancellationToken = default) | `Task` | +| **MinAsync**(this `Observable` source, `Func` selector, `CancellationToken` cancellationToken = default) | `Task` | +| **MinAsync**(this `Observable` source, `Func` selector, `IComparer` comparer, `CancellationToken` cancellationToken = default) | `Task` | +| **MinByAsync**(this `Observable` source, `Func` keySelector, `CancellationToken` cancellationToken = default) | `Task` | +| **MinByAsync**(this `Observable` source, `Func` keySelector, `IComparer` comparer, `CancellationToken` cancellationToken = default) | `Task` | +| **MinMaxAsync**(this `Observable` source, `CancellationToken` cancellationToken = default) | `Task>` | +| **MinMaxAsync**(this `Observable` source, `IComparer` comparer, `CancellationToken` cancellationToken = default) | `Task>` | +| **MinMaxAsync**(this `Observable` source, `Func` selector, `CancellationToken` cancellationToken = default) | `Task>` | +| **MinMaxAsync**(this `Observable` source, `Func` selector, `IComparer` comparer, `CancellationToken` cancellationToken = default) | `Task>` | +| **Multicast**(this `Observable` source, `ISubject` subject) | `ConnectableObservable` | +| **ObserveOn**(this `Observable` source, `SynchronizationContext` synchronizationContext) | `Observable` | +| **ObserveOn**(this `Observable` source, `TimeProvider` timeProvider) | `Observable` | +| **ObserveOn**(this `Observable` source, `FrameProvider` frameProvider) | `Observable` | +| **ObserveOnCurrentSynchronizationContext**(this `Observable` source) | `Observable` | +| **ObserveOnThreadPool**(this `Observable` source) | `Observable` | +| **OfType**(this `Observable` source) | `Observable` | +| **OnErrorResumeAsFailure**(this `Observable` source) | `Observable` | +| **Pairwise**(this `Observable` source) | `Observable>` | +| **Prepend**(this `Observable` source, `T` value) | `Observable` | +| **Prepend**(this `Observable` source, `IEnumerable` values) | `Observable` | +| **Prepend**(this `Observable` source, `Func` valueFactory) | `Observable` | +| **Prepend**(this `Observable` source, `TState` state, `Func` valueFactory) | `Observable` | +| **Publish**(this `Observable` source) | `ConnectableObservable` | +| **Publish**(this `Observable` source, `T` initialValue) | `ConnectableObservable` | +| **RefCount**(this `ConnectableObservable` source) | `Observable` | +| **Replay**(this `Observable` source) | `ConnectableObservable` | +| **Replay**(this `Observable` source, `Int32` bufferSize) | `ConnectableObservable` | +| **Replay**(this `Observable` source, `TimeSpan` window) | `ConnectableObservable` | +| **Replay**(this `Observable` source, `TimeSpan` window, `TimeProvider` timeProvider) | `ConnectableObservable` | +| **Replay**(this `Observable` source, `Int32` bufferSize, `TimeSpan` window) | `ConnectableObservable` | +| **Replay**(this `Observable` source, `Int32` bufferSize, `TimeSpan` window, `TimeProvider` timeProvider) | `ConnectableObservable` | +| **ReplayFrame**(this `Observable` source, `Int32` window) | `ConnectableObservable` | +| **ReplayFrame**(this `Observable` source, `Int32` window, `FrameProvider` frameProvider) | `ConnectableObservable` | +| **ReplayFrame**(this `Observable` source, `Int32` bufferSize, `Int32` window) | `ConnectableObservable` | +| **ReplayFrame**(this `Observable` source, `Int32` bufferSize, `Int32` window, `FrameProvider` frameProvider) | `ConnectableObservable` | +| **Scan**(this `Observable` source, `Func` accumulator) | `Observable` | +| **Scan**(this `Observable` source, `TAccumulate` seed, `Func` accumulator) | `Observable` | +| **Select**(this `Observable` source, `Func` selector) | `Observable` | +| **Select**(this `Observable` source, `Func` selector) | `Observable` | +| **Select**(this `Observable` source, `TState` state, `Func` selector) | `Observable` | +| **Select**(this `Observable` source, `TState` state, `Func` selector) | `Observable` | +| **SelectAwait**(this `Observable` source, `Func>` selector, `AwaitOperation` awaitOperation = AwaitOperation.Sequential, `Boolean` configureAwait = true, `Boolean` cancelOnCompleted = false, `Int32` maxConcurrent = -1) | `Observable` | +| **SelectMany**(this `Observable` source, `Func>` selector) | `Observable` | +| **SelectMany**(this `Observable` source, `Func>` collectionSelector, `Func` resultSelector) | `Observable` | +| **SelectMany**(this `Observable` source, `Func>` selector) | `Observable` | +| **SelectMany**(this `Observable` source, `Func>` collectionSelector, `Func` resultSelector) | `Observable` | +| **SequenceEqualAsync**(this `Observable` source, `Observable` second, `CancellationToken` cancellationToken = default) | `Task` | +| **SequenceEqualAsync**(this `Observable` source, `Observable` second, `IEqualityComparer` equalityComparer, `CancellationToken` cancellationToken = default) | `Task` | +| **Share**(this `Observable` source) | `Observable` | +| **SingleAsync**(this `Observable` source, `CancellationToken` cancellationToken = default) | `Task` | +| **SingleAsync**(this `Observable` source, `Func` predicate, `CancellationToken` cancellationToken = default) | `Task` | +| **SingleOrDefaultAsync**(this `Observable` source, `T` defaultValue = default, `CancellationToken` cancellationToken = default) | `Task` | +| **SingleOrDefaultAsync**(this `Observable` source, `Func` predicate, `T` defaultValue = default, `CancellationToken` cancellationToken = default) | `Task` | +| **Skip**(this `Observable` source, `Int32` count) | `Observable` | +| **Skip**(this `Observable` source, `TimeSpan` duration) | `Observable` | +| **Skip**(this `Observable` source, `TimeSpan` duration, `TimeProvider` timeProvider) | `Observable` | +| **SkipFrame**(this `Observable` source, `Int32` frameCount) | `Observable` | +| **SkipFrame**(this `Observable` source, `Int32` frameCount, `FrameProvider` frameProvider) | `Observable` | +| **SkipLast**(this `Observable` source, `Int32` count) | `Observable` | +| **SkipLast**(this `Observable` source, `TimeSpan` duration) | `Observable` | +| **SkipLast**(this `Observable` source, `TimeSpan` duration, `TimeProvider` timeProvider) | `Observable` | +| **SkipLastFrame**(this `Observable` source, `Int32` frameCount) | `Observable` | +| **SkipLastFrame**(this `Observable` source, `Int32` frameCount, `FrameProvider` frameProvider) | `Observable` | +| **SkipUntil**(this `Observable` source, `Observable` other) | `Observable` | +| **SkipUntil**(this `Observable` source, `CancellationToken` cancellationToken) | `Observable` | +| **SkipUntil**(this `Observable` source, `Task` task, `Boolean` configureAwait = true) | `Observable` | +| **SkipUntil**(this `Observable` source, `Func` asyncFunc, `Boolean` configureAwait = true) | `Observable` | +| **SkipWhile**(this `Observable` source, `Func` predicate) | `Observable` | +| **SkipWhile**(this `Observable` source, `Func` predicate) | `Observable` | +| **SubscribeAwait**(this `Observable` source, `Func` onNextAsync, `AwaitOperation` awaitOperation = AwaitOperation.Sequential, `Boolean` configureAwait = true, `Boolean` cancelOnCompleted = false, `Int32` maxConcurrent = -1) | `IDisposable` | +| **SubscribeAwait**(this `Observable` source, `Func` onNextAsync, `Action` onCompleted, `AwaitOperation` awaitOperation = AwaitOperation.Sequential, `Boolean` configureAwait = true, `Boolean` cancelOnCompleted = false, `Int32` maxConcurrent = -1) | `IDisposable` | +| **SubscribeAwait**(this `Observable` source, `Func` onNextAsync, `Action` onErrorResume, `Action` onCompleted, `AwaitOperation` awaitOperation = AwaitOperation.Sequential, `Boolean` configureAwait = true, `Boolean` cancelOnCompleted = false, `Int32` maxConcurrent = -1) | `IDisposable` | +| **SubscribeOn**(this `Observable` source, `SynchronizationContext` synchronizationContext) | `Observable` | +| **SubscribeOn**(this `Observable` source, `TimeProvider` timeProvider) | `Observable` | +| **SubscribeOn**(this `Observable` source, `FrameProvider` frameProvider) | `Observable` | +| **SubscribeOnCurrentSynchronizationContext**(this `Observable` source) | `Observable` | +| **SubscribeOnSynchronize**(this `Observable` source, `Object` gate, `Boolean` rawObserver = false) | `Observable` | +| **SubscribeOnThreadPool**(this `Observable` source) | `Observable` | +| **SumAsync**(this `Observable` source, `CancellationToken` cancellationToken = default) | `Task` | +| **SumAsync**(this `Observable` source, `Func` selector, `CancellationToken` cancellationToken = default) | `Task` | +| **SumAsync**(this `Observable` source, `CancellationToken` cancellationToken = default) | `Task` | +| **SumAsync**(this `Observable` source, `Func` selector, `CancellationToken` cancellationToken = default) | `Task` | +| **SumAsync**(this `Observable` source, `CancellationToken` cancellationToken = default) | `Task` | +| **SumAsync**(this `Observable` source, `Func` selector, `CancellationToken` cancellationToken = default) | `Task` | +| **SumAsync**(this `Observable` source, `CancellationToken` cancellationToken = default) | `Task` | +| **SumAsync**(this `Observable` source, `Func` selector, `CancellationToken` cancellationToken = default) | `Task` | +| **SumAsync**(this `Observable` source, `CancellationToken` cancellationToken = default) | `Task` | +| **SumAsync**(this `Observable` source, `Func` selector, `CancellationToken` cancellationToken = default) | `Task` | +| **SumAsync**(this `Observable` source, `CancellationToken` cancellationToken = default) | `Task` | +| **SumAsync**(this `Observable` source, `Func` selector, `CancellationToken` cancellationToken = default) | `Task` | +| **Switch**(this `Observable>` sources) | `Observable` | +| **Synchronize**(this `Observable` source) | `Observable` | +| **Synchronize**(this `Observable` source, `Object` gate) | `Observable` | +| **Take**(this `Observable` source, `Int32` count) | `Observable` | +| **Take**(this `Observable` source, `TimeSpan` duration) | `Observable` | +| **Take**(this `Observable` source, `TimeSpan` duration, `TimeProvider` timeProvider) | `Observable` | +| **TakeFrame**(this `Observable` source, `Int32` frameCount) | `Observable` | +| **TakeFrame**(this `Observable` source, `Int32` frameCount, `FrameProvider` frameProvider) | `Observable` | +| **TakeLast**(this `Observable` source, `Int32` count) | `Observable` | +| **TakeLast**(this `Observable` source, `TimeSpan` duration) | `Observable` | +| **TakeLast**(this `Observable` source, `TimeSpan` duration, `TimeProvider` timeProvider) | `Observable` | +| **TakeLastFrame**(this `Observable` source, `Int32` frameCount) | `Observable` | +| **TakeLastFrame**(this `Observable` source, `Int32` frameCount, `FrameProvider` frameProvider) | `Observable` | +| **TakeUntil**(this `Observable` source, `Observable` other) | `Observable` | +| **TakeUntil**(this `Observable` source, `CancellationToken` cancellationToken) | `Observable` | +| **TakeUntil**(this `Observable` source, `Task` task, `Boolean` configureAwait = true) | `Observable` | +| **TakeUntil**(this `Observable` source, `Func` asyncFunc, `Boolean` configureAwait = true) | `Observable` | +| **TakeUntil**(this `Observable` source, `Func` predicate) | `Observable` | +| **TakeUntil**(this `Observable` source, `Func` predicate) | `Observable` | +| **TakeWhile**(this `Observable` source, `Func` predicate) | `Observable` | +| **TakeWhile**(this `Observable` source, `Func` predicate) | `Observable` | +| **ThrottleFirst**(this `Observable` source, `TimeSpan` timeSpan) | `Observable` | +| **ThrottleFirst**(this `Observable` source, `TimeSpan` timeSpan, `TimeProvider` timeProvider) | `Observable` | +| **ThrottleFirst**(this `Observable` source, `Observable` sampler) | `Observable` | +| **ThrottleFirst**(this `Observable` source, `Func` sampler, `Boolean` configureAwait = true) | `Observable` | +| **ThrottleFirstFrame**(this `Observable` source, `Int32` frameCount) | `Observable` | +| **ThrottleFirstFrame**(this `Observable` source, `Int32` frameCount, `FrameProvider` frameProvider) | `Observable` | +| **ThrottleFirstLast**(this `Observable` source, `TimeSpan` timeSpan) | `Observable` | +| **ThrottleFirstLast**(this `Observable` source, `TimeSpan` timeSpan, `TimeProvider` timeProvider) | `Observable` | +| **ThrottleFirstLast**(this `Observable` source, `Observable` sampler) | `Observable` | +| **ThrottleFirstLast**(this `Observable` source, `Func` sampler, `Boolean` configureAwait = true) | `Observable` | +| **ThrottleFirstLastFrame**(this `Observable` source, `Int32` frameCount) | `Observable` | +| **ThrottleFirstLastFrame**(this `Observable` source, `Int32` frameCount, `FrameProvider` frameProvider) | `Observable` | +| **ThrottleLast**(this `Observable` source, `TimeSpan` timeSpan) | `Observable` | +| **ThrottleLast**(this `Observable` source, `TimeSpan` timeSpan, `TimeProvider` timeProvider) | `Observable` | +| **ThrottleLast**(this `Observable` source, `Observable` sampler) | `Observable` | +| **ThrottleLast**(this `Observable` source, `Func` sampler, `Boolean` configureAwait = true) | `Observable` | +| **ThrottleLastFrame**(this `Observable` source, `Int32` frameCount) | `Observable` | +| **ThrottleLastFrame**(this `Observable` source, `Int32` frameCount, `FrameProvider` frameProvider) | `Observable` | +| **TimeInterval**(this `Observable` source) | `Observable>` | +| **TimeInterval**(this `Observable` source, `TimeProvider` timeProvider) | `Observable>` | +| **Timeout**(this `Observable` source, `TimeSpan` dueTime) | `Observable` | +| **Timeout**(this `Observable` source, `TimeSpan` dueTime, `TimeProvider` timeProvider) | `Observable` | +| **TimeoutFrame**(this `Observable` source, `Int32` frameCount) | `Observable` | +| **TimeoutFrame**(this `Observable` source, `Int32` frameCount, `FrameProvider` frameProvider) | `Observable` | +| **Timestamp**(this `Observable` source) | `Observable>` | +| **Timestamp**(this `Observable` source, `TimeProvider` timeProvider) | `Observable>` | +| **ToArrayAsync**(this `Observable` source, `CancellationToken` cancellationToken = default) | `Task` | +| **ToAsyncEnumerable**(this `Observable` source, `CancellationToken` cancellationToken = default) | `IAsyncEnumerable` | +| **ToDictionaryAsync**(this `Observable` source, `Func` keySelector, `CancellationToken` cancellationToken = default) | `Task>` | +| **ToDictionaryAsync**(this `Observable` source, `Func` keySelector, `IEqualityComparer` keyComparer, `CancellationToken` cancellationToken = default) | `Task>` | +| **ToDictionaryAsync**(this `Observable` source, `Func` keySelector, `Func` elementSelector, `CancellationToken` cancellationToken = default) | `Task>` | +| **ToDictionaryAsync**(this `Observable` source, `Func` keySelector, `Func` elementSelector, `IEqualityComparer` keyComparer, `CancellationToken` cancellationToken = default) | `Task>` | +| **ToHashSetAsync**(this `Observable` source, `CancellationToken` cancellationToken = default) | `Task>` | +| **ToHashSetAsync**(this `Observable` source, `IEqualityComparer` comparer, `CancellationToken` cancellationToken = default) | `Task>` | +| **ToListAsync**(this `Observable` source, `CancellationToken` cancellationToken = default) | `Task>` | +| **ToLiveList**(this `Observable` source) | `LiveList` | +| **ToLiveList**(this `Observable` source, `Int32` bufferSize) | `LiveList` | +| **ToLookupAsync**(this `Observable` source, `Func` keySelector, `CancellationToken` cancellationToken = default) | `Task>` | +| **ToLookupAsync**(this `Observable` source, `Func` keySelector, `IEqualityComparer` keyComparer, `CancellationToken` cancellationToken = default) | `Task>` | +| **ToLookupAsync**(this `Observable` source, `Func` keySelector, `Func` elementSelector, `CancellationToken` cancellationToken = default) | `Task>` | +| **ToLookupAsync**(this `Observable` source, `Func` keySelector, `Func` elementSelector, `IEqualityComparer` keyComparer, `CancellationToken` cancellationToken = default) | `Task>` | +| **Trampoline**(this `Observable` source) | `Observable` | +| **WaitAsync**(this `Observable` source, `CancellationToken` cancellationToken = default) | `Task` | +| **Where**(this `Observable` source, `Func` predicate) | `Observable` | +| **Where**(this `Observable` source, `Func` predicate) | `Observable` | +| **Where**(this `Observable` source, `TState` state, `Func` predicate) | `Observable` | +| **Where**(this `Observable` source, `TState` state, `Func` predicate) | `Observable` | +| **WhereAwait**(this `Observable` source, `Func>` predicate, `AwaitOperation` awaitOperation = AwaitOperation.Sequential, `Boolean` configureAwait = true, `Boolean` cancelOnCompleted = false, `Int32` maxConcurrent = -1) | `Observable` | +| **WhereNotNull**(this `Observable` source) | `Observable` | +| **WithLatestFrom**(this `Observable` first, `Observable` second, `Func` resultSelector) | `Observable` | In dotnet/reactive, methods that return a single `IObservable` (such as `First`) are all provided only as `***Async`, returning `Task`. Additionally, to align with the naming of Enumerable, `Buffer` has been changed to `Chunk`. From b9a08b55bee30c5b4032b715e4accc7e2aac279b Mon Sep 17 00:00:00 2001 From: "simonLL ss@lumidlabs.com" Date: Thu, 22 Aug 2024 08:50:46 +0200 Subject: [PATCH 3/5] Revert "feat: Update package.json to 1.2.8" This reverts commit 01da4b42df832539e83a908dce95105ac195f51c. --- src/R3.Godot/addons/R3.Godot/plugin.cfg | 2 +- src/R3.Unity/Assets/R3.Unity/package.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/R3.Godot/addons/R3.Godot/plugin.cfg b/src/R3.Godot/addons/R3.Godot/plugin.cfg index 215c35be..d72cc4e1 100644 --- a/src/R3.Godot/addons/R3.Godot/plugin.cfg +++ b/src/R3.Godot/addons/R3.Godot/plugin.cfg @@ -3,6 +3,6 @@ name="R3.Godot" description="The new future of dotnet/reactive and UniRx." author="Cysharp" -version="1.2.8" +version="1.2.7" language="C-sharp" script="GodotR3Plugin.cs" diff --git a/src/R3.Unity/Assets/R3.Unity/package.json b/src/R3.Unity/Assets/R3.Unity/package.json index b4d58886..b5c6989e 100644 --- a/src/R3.Unity/Assets/R3.Unity/package.json +++ b/src/R3.Unity/Assets/R3.Unity/package.json @@ -2,7 +2,7 @@ "name": "com.cysharp.r3", "displayName": "R3", "author": { "name": "Cysharp, Inc.", "url": "https://cysharp.co.jp/en/" }, - "version": "1.2.8", + "version": "1.2.7", "unity": "2021.3", "description": "Reactive Extensions for Unity.", "keywords": [ "rx", "event", "Scripting" ], From fcdb3de42fa6162a7339e4e734f90afbde9e1662 Mon Sep 17 00:00:00 2001 From: "simonLL ss@lumidlabs.com" Date: Thu, 22 Aug 2024 08:55:55 +0200 Subject: [PATCH 4/5] Fixed minor spelling mistakes in README.md --- README.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index f9a626dc..d4b1bb35 100644 --- a/README.md +++ b/README.md @@ -145,7 +145,7 @@ Observable.EveryValueChanged(this, x => x.Height).Subscribe(x => HeightText.Text Subjects(ReactiveProperty) --- -In R3, there are firve types of Subjects: `Subject`, `BehaviorSubject`, `ReactiveProperty`, `ReplaySubject`, and `ReplayFrameSubject`. +In R3, there are five types of Subjects: `Subject`, `BehaviorSubject`, `ReactiveProperty`, `ReplaySubject`, and `ReplayFrameSubject`. `Subject` is an event in Rx. Just as an event can register multiple Actions and distribute values using Invoke, a `Subject` can register multiple `Observer`s and distribute values using OnNext, OnErrorResume, and OnCompleted. There are variations of Subject, such as `BehaviorSubject` and `ReactiveProperty`, which holds a single value internally, `ReplaySubject`, which holds multiple values based on count or time, and `ReplayFrameSubject`, which holds multiple values based on frame time. The internally recorded values are distributed when Subscribe is called. @@ -462,7 +462,7 @@ public static class ObservableSystem static void DefaultUnhandledExceptionHandler(Exception exception) { - Console.WriteLine("R3 UnhandleException: " + exception.ToString()); + Console.WriteLine("R3 UnhandledException: " + exception.ToString()); } } ``` @@ -732,14 +732,14 @@ Parallel.For(0, 1000, new ParallelOptions { MaxDegreeOfParallelism = 10 }, x => This means that the issuance of OnNext must always be done on a single thread. For converting external inputs into Observables, such as with `FromEvent`, and when the source of input issues in a multi-threaded manner, it is necessary to synchronize using `Synchronize` to construct the correct operator chain. ```csharp -subject.Synchronoize(gate).Take(100).Count().Subscribe(); +subject.Synchronize(gate).Take(100).Count().Subscribe(); ``` Unlike dotnet/reactive, R3.Subject.OnNext is not ThreadSafe. If you are calling OnNext from multiple threads, please use a lock. In R3, ReplaySubject and BehaviorSubject do not require Synchronize and are thread-safe, including OnNext. -ReactiveProperty is not thread-safe and OnNext, set Value and Susbcribe cannot be called simultaneously. If you need to use it in such a situation, use `SynchronizedReactiveProperty` instead. +ReactiveProperty is not thread-safe and OnNext, set Value and Subscribe cannot be called simultaneously. If you need to use it in such a situation, use `SynchronizedReactiveProperty` instead. ```csharp class MyClass @@ -864,7 +864,7 @@ public class ValidationViewModel : IDisposable // Pattern 2. use EnableValidation(Expression) to enable DataAnnotation validation Weight = new BindableReactiveProperty().EnableValidation(() => Weight); - // Pattern 3. EnableValidation() and call OnErrorResume to set custom error meessage + // Pattern 3. EnableValidation() and call OnErrorResume to set custom error message CustomValidation1 = new BindableReactiveProperty().EnableValidation(); customValidation1Subscription = CustomValidation1.Subscribe(x => { @@ -1273,7 +1273,7 @@ There are two installation steps required to use it in Unity. * Open Window from NuGet -> Manage NuGet Packages, Search "R3" and Press Install. ![](https://github.com/Cysharp/ZLogger/assets/46207/dbad9bf7-28e3-4856-b0a8-0ff8a2a01d67) -* If you encount version conflicts error, please disable version validation in Player Settings(Edit -> Project Settings -> Player -> Scroll down and expand "Other Settings" than uncheck "Assembly Version Validation" under the "Configuration" section). +* If you encounter version conflict errors, please disable version validation in Player Settings(Edit -> Project Settings -> Player -> Scroll down and expand "Other Settings" than uncheck "Assembly Version Validation" under the "Configuration" section). 2. Install the `R3.Unity` package by referencing the git URL From a1f69259396ac4fb00820dd27fd5f7501f0c8b65 Mon Sep 17 00:00:00 2001 From: "simonLL ss@lumidlabs.com" Date: Thu, 22 Aug 2024 08:58:41 +0200 Subject: [PATCH 5/5] Fixed wrong version number revert --- src/R3.Godot/addons/R3.Godot/plugin.cfg | 2 +- src/R3.Unity/Assets/R3.Unity/package.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/R3.Godot/addons/R3.Godot/plugin.cfg b/src/R3.Godot/addons/R3.Godot/plugin.cfg index d72cc4e1..215c35be 100644 --- a/src/R3.Godot/addons/R3.Godot/plugin.cfg +++ b/src/R3.Godot/addons/R3.Godot/plugin.cfg @@ -3,6 +3,6 @@ name="R3.Godot" description="The new future of dotnet/reactive and UniRx." author="Cysharp" -version="1.2.7" +version="1.2.8" language="C-sharp" script="GodotR3Plugin.cs" diff --git a/src/R3.Unity/Assets/R3.Unity/package.json b/src/R3.Unity/Assets/R3.Unity/package.json index b5c6989e..b4d58886 100644 --- a/src/R3.Unity/Assets/R3.Unity/package.json +++ b/src/R3.Unity/Assets/R3.Unity/package.json @@ -2,7 +2,7 @@ "name": "com.cysharp.r3", "displayName": "R3", "author": { "name": "Cysharp, Inc.", "url": "https://cysharp.co.jp/en/" }, - "version": "1.2.7", + "version": "1.2.8", "unity": "2021.3", "description": "Reactive Extensions for Unity.", "keywords": [ "rx", "event", "Scripting" ],