From 91b71bd0eba1060cd8ba30c5939713633d36aaa9 Mon Sep 17 00:00:00 2001 From: Ryan Riley Date: Mon, 13 Oct 2014 13:47:25 -0500 Subject: [PATCH 01/18] Commit docs for 2.3.6 --- content/img/github-blue.png | Bin 0 -> 817 bytes content/img/github.png | Bin 0 -> 806 bytes content/style.css | 208 + content/style.css.bak | 193 + content/tips.js | 46 + img/Thumbs.db | Bin 0 -> 32256 bytes img/logo.png | Bin 0 -> 29944 bytes index.html | 99 + ...tive-buildersmodule-observablebuilder.html | 335 ++ ...eactive-buildersmodule-rxquerybuilder.html | 642 +++ ...sharp-control-reactive-buildersmodule.html | 139 + ...arp-control-reactive-observablemodule.html | 5055 +++++++++++++++++ reference/index.html | 87 + tutorial.html | 64 + 14 files changed, 6868 insertions(+) create mode 100644 content/img/github-blue.png create mode 100644 content/img/github.png create mode 100644 content/style.css create mode 100644 content/style.css.bak create mode 100644 content/tips.js create mode 100644 img/Thumbs.db create mode 100644 img/logo.png create mode 100644 index.html create mode 100644 reference/fsharp-control-reactive-buildersmodule-observablebuilder.html create mode 100644 reference/fsharp-control-reactive-buildersmodule-rxquerybuilder.html create mode 100644 reference/fsharp-control-reactive-buildersmodule.html create mode 100644 reference/fsharp-control-reactive-observablemodule.html create mode 100644 reference/index.html create mode 100644 tutorial.html diff --git a/content/img/github-blue.png b/content/img/github-blue.png new file mode 100644 index 0000000000000000000000000000000000000000..57432a035c7f20cf128620849ab94f969e0ec853 GIT binary patch literal 817 zcmV-11J3-3P)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGmbN~PnbOGLGA9w%&02*{fSaefwW^{L9 za%BKeVQFr3E>1;MAa*k@H7+qRNAp5A0007@Nklr)FLcgCVo9Pvg?e5tk=Ui)SuA%` z>1o4{wxPwR%9U~5+L&%ls#w8NV|1j`86;G9ye0XMMwbNvLCEIXB3@X_<9QM&PQ##< zqjvVS5ApIs!iII1N(E2-&H!NYBC#h43k zgdD-4Boe98n`5jHN6wiY0k*z6prMIJ09VEeo$e5~y6$7^i`{&aM?`!ec!QkN6JqO= z*GCT;r98GHiIT<I!b@WezA>?4X7&B*H2#4IfluGP|Zy)2P`VAW);lZ4LJLU;QUEVM{r7;1s-7i*wDfKoQ6AJ;^oCSTA zHBVr4VH?6UGQ>idRmGx}1_W}10Je7i-ZaT}xVNcSfC<%htG?KL)VoK%5WvgAYm!Ly vTcJ303H%O3+ok$3c@AwF`ZmL2~800000NkvXXu0mjf^MPk* literal 0 HcmV?d00001 diff --git a/content/img/github.png b/content/img/github.png new file mode 100644 index 0000000000000000000000000000000000000000..5d48d83fab5dfd443c9e3bec2a262537f4ecece8 GIT binary patch literal 806 zcmV+>1KIqEP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGmbN~PnbOGLGA9w%&02*{fSaefwW^{L9 za%BKeVQFr3E>1;MAa*k@H7+qRNAp5A0007&NklyiRZ_dM+J&{THbRBQ2Kj2Fi3@98KxAP};1Qsq1e#z#5bWXI>-9m9nx-eS z;LglB+?hM`xSRik)nhS zmCyV8bF;H=Ha46NhhuklV|{(jZ1(wl)$3~{K#t_UT3rwOUQwkUZk`IKqA(%lf9*?v0qwene zR;dZU^Lb1hBmT-{IBbo$TCdkjbKAnTx5p?-g#s^De}1#c#Jt$`1kaP~`+!0~W|YN+ z1vu+M0lyz-tjJ5dUD4Bn)qlUeok}JJ)*bM-JkP(~+?2~?Oa*pybcASK2n(SZ9YxLf zfP4*w&?%DfdTmWmps=s3FfucI2FS$Jg@Du3Q_{TeCnq1BPRzGqVgip!q6FWLkHr!& zX;)YD?2JUI5P;7WVpEfo*=#nQPNP$}DUAsbPaLsNZa0mIg#c*bUTA@7W(JmQY?D|B zyXtniXh1-N5P;G~hlfdatg$pyLHs(6CL9h^?=6~z08Ezm;NY3XlFQ|&OTf=``nkmt k3hg1ZGsaCZ+7+}$051_+WM!QI_GxVyU#%$eWW_n!6N zXYG5}y=%WZ=j@vG>8`5PJ@s^btDmaws-Bv}-uzKbv<3K|0tf&Hc!MAVfd7&Y1C9T~ ze-Bsy04y}}Px=i4f&5!00052tSNLD32411I{-fVN{1XtMLjI#UA`~Pj$WTzAph7`| zf(``(3MLe2698aC!GZD)3N92pDDR=*Lm_}d2!#j=F%%Lgq)^D9kVBz>LJ5Tm3N;iO zD6~-MpwL5MfbszfBNQem%uraMutH&j!VZN43MUjUDBMtZpzuQBgTfC*0E!?KAt=I7 zM4zfY8v6ep-UAT+$36d#FZh28P6@Bd&kK_< z|LQL|p^EVW452#mLN((Am_zrRP-O+6YMMj0>;Pkc$$wY%KmKP%04&VED)=8C_3v}x zp-EZSf1mfCN&WvV|36dKe{}ADru=_B_rK!*=heVJJ{k@RJM?~-ivCClHzD-J9Pvc$ zKWbbr}gj`$cEXzrXYko60Ye&qdm2so<5nR39-X)B+;2x2nMn;xK!Zv3& zaQfoCgcoOPYHCXS4$aoDq(8V#d2t}a?hn4VzxR_zXge?eRy}$I&5r;aB4mUV)$HlM zbce%p$cyr)yNZ>@3vb8$P*0qP6AuFqZEazncoW87BSLyF1q&d}ifW%0qj)G+Et4qO&0ZegprI&9=aYHr+C!^rse-pwS@Nx4UU;ftD|>S**7Uu&Cm%jzc-Myc

f34$p~5Cnit_(&B~V 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�+2Yf6Dcjq8 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 literal 0 HcmV?d00001 diff --git a/img/logo.png b/img/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..f1bc0093ec7f96f04c9434d72025ebac52f25cee GIT binary patch literal 29944 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 + + + + FSharp.Control.Reactive + + + + + + + + + + + + + + + + +
+ +
+
+
+ +

FSharp.Control.Reactive

+ +

Documentation

+ +
+
+
+
+ The FSharp.Control.Reactive library can be installed from NuGet: +
PM> Install-Package FSharp.Control.Reactive
+
+
+
+
+ +

Samples & documentation

+ +

The library comes will soon come with comprehensive documentation and +includes a Getting Started tutorial, as well as an API reference.

+ +

Contributing and copyright

+ +

The project is hosted on GitHub where you can report issues, fork +the project and submit pull requests. If you're adding new public API, please also +consider adding samples that can be turned into documentation. You might +also want to read library design notes to understand how it works.

+ +

The library is available under the Apache 2.0 license, which allows modification and +redistribution for both commercial and non-commercial purposes. For more information see the +License file in the GitHub repository.

+ +
namespace System
+
namespace System.Reactive
+
namespace System.Reactive.Linq
+
namespace FSharp
+
namespace FSharp.Control
+
namespace FSharp.Control.Reactive
+
module Builders

from FSharp.Control.Reactive
+ +
+
+ F# Project + +
+
+
+ Fork me on GitHub + + + diff --git a/reference/fsharp-control-reactive-buildersmodule-observablebuilder.html b/reference/fsharp-control-reactive-buildersmodule-observablebuilder.html new file mode 100644 index 0000000..9317f2f --- /dev/null +++ b/reference/fsharp-control-reactive-buildersmodule-observablebuilder.html @@ -0,0 +1,335 @@ + + + + + ObservableBuilder - FSharp.Control.Reactive + + + + + + + + + + + + + + + +
+ +
+
+
+ + + + +

ObservableBuilder

+
+

An Observable computation builder.

+
+

Constructors

+ + + + + + + + + + +
ConstructorDescription
+ + + new() + +
+ Signature: unit -> ObservableBuilder
+
+
+ + + + + +
+

Instance members

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Instance memberDescription
+ + + Bind(m, f) + +
+ Signature: (m:IObservable<'?6098> * f:('?6098 -> IObservable<'?6099>)) -> IObservable<'?6099>
+ Type parameters: '?6098, '?6099
+
+ + + + + +
+ + + Combine(comp1, comp2) + +
+ Signature: (comp1:IObservable<'?6101> * comp2:IObservable<'?6101>) -> IObservable<'?6101>
+ Type parameters: '?6101
+
+ + + + + +
+ + + Delay(f) + +
+ Signature: (f:(unit -> IObservable<'?6103>)) -> IObservable<'?6103>
+ Type parameters: '?6103
+
+ + + + + +
+ + + For(sequence, body) + +
+ Signature: (sequence:IEnumerable<'?6107> * body:Func<'?6107,IObservable<'?6108>>) -> IObservable<'?6108>
+ Type parameters: '?6107, '?6108
+
+ + + + + +
+ + + Return(x) + +
+ Signature: x:'?6094 -> IObservable<'?6094>
+ Type parameters: '?6094
+
+ + + + + +
+ + + ReturnFrom(m) + +
+ Signature: m:IObservable<'?6096> -> IObservable<'?6096>
+ Type parameters: '?6096
+
+ + + + + +
+ + + TryFinally(m, compensation) + +
+ Signature: (m:IObservable<'?6113> * compensation:(unit -> unit)) -> IObservable<'?6113>
+ Type parameters: '?6113
+
+ + + + + +
+ + + TryWith(m, h) + +
+ Signature: (m:IObservable<'?6110> * h:('?6111 -> IObservable<'?6110>)) -> IObservable<'?6110>
+ Type parameters: '?6110, '?6111
+
+ + + + + +
+ + + Using(res, body) + +
+ Signature: (res:'?6115 * body:Func<'?6115,IObservable<'?6116>>) -> IObservable<'?6116>
+ Type parameters: '?6115, '?6116
+
+ + + + + +
+ + + While(guard, m) + +
+ Signature: (guard:Func<bool> * m:IObservable<'?6118>) -> IObservable<'?6118>
+ Type parameters: '?6118
+
+ + + + + +
+ + + Yield(x) + +
+ Signature: x:'?6120 -> IObservable<'?6120>
+ Type parameters: '?6120
+
+ + + + + +
+ + + YieldFrom(m) + +
+ Signature: m:IObservable<'?6122> -> IObservable<'?6122>
+ Type parameters: '?6122
+
+ + + + + +
+ + + Zero() + +
+ Signature: unit -> IObservable<'?6105>
+ Type parameters: '?6105
+
+ + + + + +
+ +
+
+ F# Project + +
+
+
+ Fork me on GitHub + + + diff --git a/reference/fsharp-control-reactive-buildersmodule-rxquerybuilder.html b/reference/fsharp-control-reactive-buildersmodule-rxquerybuilder.html new file mode 100644 index 0000000..27a0c2e --- /dev/null +++ b/reference/fsharp-control-reactive-buildersmodule-rxquerybuilder.html @@ -0,0 +1,642 @@ + + + + + RxQueryBuilder - FSharp.Control.Reactive + + + + + + + + + + + + + + + +
+ +
+
+
+ + + + +

RxQueryBuilder

+ +

Constructors

+ + + + + + + + + + +
ConstructorDescription
+ + + new() + +
+ Signature: unit -> RxQueryBuilder
+
+
+ + + + + +
+

Instance members

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Instance memberDescription
+ + + All(s, predicate) + +
+ Signature: (s:IObservable<'?6148> * predicate:('?6148 -> bool)) -> IObservable<bool>
+ Type parameters: '?6148
+
+ + + + + +
+ + + Contains(s, key) + +
+ Signature: (s:IObservable<'?6150> * key:'?6150) -> IObservable<bool>
+ Type parameters: '?6150
+
+ + + + + +
+ + + Count(s) + +
+ Signature: s:IObservable<'?6146> -> IObservable<int>
+ Type parameters: '?6146
+
+ + + + + +
+ + + Distinct(s) + +
+ Signature: s:IObservable<'?6152> -> IObservable<'?6152>
+ Type parameters: '?6152
+
+ + + + + +
+ + + ExactlyOne(s) + +
+ Signature: s:IObservable<'?6154> -> '?6154
+ Type parameters: '?6154
+
+ + + + + +
+ + + ExactlyOneOrDefault(s) + +
+ Signature: s:IObservable<'?6156> -> '?6156
+ Type parameters: '?6156
+
+ + + + + +
+ + + Find(s, predicate) + +
+ Signature: (s:IObservable<'?6158> * predicate:('?6158 -> bool)) -> '?6158
+ Type parameters: '?6158
+
+ + + + + +
+ + + For(s, body) + +
+ Signature: (s:IObservable<'?6126> * body:('?6126 -> IObservable<'?6127>)) -> IObservable<'?6127>
+ Type parameters: '?6126, '?6127
+
+ + + + + +
+ + + GroupBy(s, keySelector) + +
+ Signature: (s:IObservable<'?6180> * keySelector:('?6180 -> '?6181)) -> IObservable<IGroupedObservable<'?6181,'?6180>>
+ Type parameters: '?6180, '?6181
+
+ + + + + +
+ + + GroupJoin(...) + +
+ Signature: (s1:IObservable<'?6193> * s2:IObservable<'?6194> * s1KeySelector:('?6193 -> IObservable<'?6195>) * s2KeySelector:('?6194 -> IObservable<'?6196>) * resultSelector:('?6193 -> IObservable<'?6194> -> '?6197)) -> IObservable<'?6197>
+ Type parameters: '?6193, '?6194, '?6195, '?6196, '?6197
+
+ + + + + +
+ + + GroupValBy(...) + +
+ Signature: (s:IObservable<'?6183> * resultSelector:('?6183 -> '?6184) * keySelector:('?6183 -> '?6185)) -> IObservable<IGroupedObservable<'?6185,'?6184>>
+ Type parameters: '?6183, '?6184, '?6185
+
+ + + + + +
+ + + Head(s) + +
+ Signature: s:IObservable<'?6160> -> '?6160
+ Type parameters: '?6160
+
+ + + + + +
+ + + HeadOrDefault(s) + +
+ Signature: s:IObservable<'?6162> -> '?6162
+ Type parameters: '?6162
+
+ + + + + +
+ + + Iter(s, selector) + +
+ Signature: (s:IObservable<'?6203> * selector:('?6203 -> unit)) -> IObservable<'?6203>
+ Type parameters: '?6203
+
+ + + + + +
+ + + Join(...) + +
+ Signature: (s1:IObservable<'?6187> * s2:IObservable<'?6188> * s1KeySelector:('?6187 -> IObservable<'?6189>) * s2KeySelector:('?6188 -> IObservable<'?6190>) * resultSelector:('?6187 -> '?6188 -> '?6191)) -> IObservable<'?6191>
+ Type parameters: '?6187, '?6188, '?6189, '?6190, '?6191
+
+ + + + + +
+ + + Last(s) + +
+ Signature: s:IObservable<'?6164> -> '?6164
+ Type parameters: '?6164
+
+ + + + + +
+ + + LastOrDefault(s) + +
+ Signature: s:IObservable<'?6166> -> '?6166
+ Type parameters: '?6166
+
+ + + + + +
+ + + MaxBy(s, valueSelector) + +
+ Signature: (s:IObservable<'a> * valueSelector:('a -> 'b)) -> IObservable<IList<'a>>
+ Type parameters: 'a, 'b
+
+ + + + + +
+ + + MinBy(s, valueSelector) + +
+ Signature: (s:IObservable<'a> * valueSelector:('a -> 'b)) -> IObservable<IList<'a>>
+ Type parameters: 'a, 'b
+
+ + + + + +
+ + + Nth(s, index) + +
+ Signature: (s:IObservable<'a> * index:int) -> IObservable<'a>
+ Type parameters: 'a
+
+ + + + + +
+ + + Select(s, selector) + +
+ Signature: (s:IObservable<'?6129> * selector:('?6129 -> '?6130)) -> IObservable<'?6130>
+ Type parameters: '?6129, '?6130
+
+ + + + + +
+ + + Skip(s, count) + +
+ Signature: (s:IObservable<'?6140> * count:int) -> IObservable<'?6140>
+ Type parameters: '?6140
+
+ + + + + +
+ + + SkipWhile(s, predicate) + +
+ Signature: (s:IObservable<'?6138> * predicate:('?6138 -> bool)) -> IObservable<'?6138>
+ Type parameters: '?6138
+
+ + + + + +
+ + + SumBy(s, valueSelector) + +
+ Signature: (s:IObservable<'?6176> * valueSelector:('?6176 -> ^?6177)) -> IObservable<^?6178>
+ Type parameters: '?6176, ^?6177, ^?6178
+
+ + + + + +
+ + + Take(s, count) + +
+ Signature: (s:IObservable<'?6136> * count:int) -> IObservable<'?6136>
+ Type parameters: '?6136
+
+ + + + + +
+ + + TakeWhile(s, predicate) + +
+ Signature: (s:IObservable<'?6134> * predicate:('?6134 -> bool)) -> IObservable<'?6134>
+ Type parameters: '?6134
+
+ + + + + +
+ + + Where(s, predicate) + +
+ Signature: (s:IObservable<'?6132> * predicate:('?6132 -> bool)) -> IObservable<'?6132>
+ Type parameters: '?6132
+
+ + + + + +
+ + + Yield(value) + +
+ Signature: value:'?6144 -> IObservable<'?6144>
+ Type parameters: '?6144
+
+ + + + + +
+ + + Zero() + +
+ Signature: unit -> IObservable<'?6142>
+ Type parameters: '?6142
+
+ + + + + +
+ + + Zip(s1, s2, resultSelector) + +
+ Signature: (s1:IObservable<'?6199> * s2:IObservable<'?6200> * resultSelector:('?6199 -> '?6200 -> '?6201)) -> IObservable<'?6201>
+ Type parameters: '?6199, '?6200, '?6201
+
+ + + + + +
+ +
+
+ F# Project + +
+
+
+ Fork me on GitHub + + + diff --git a/reference/fsharp-control-reactive-buildersmodule.html b/reference/fsharp-control-reactive-buildersmodule.html new file mode 100644 index 0000000..f35598b --- /dev/null +++ b/reference/fsharp-control-reactive-buildersmodule.html @@ -0,0 +1,139 @@ + + + + + Builders - FSharp.Control.Reactive + + + + + + + + + + + + + + + +
+ +
+
+
+ + + + +

Builders

+
+
+ + +

Nested types and modules

+
+ + + + + + + + + + + + + + +
TypeDescription
+ ObservableBuilder +

An Observable computation builder.

+
+ RxQueryBuilder +

A reactive query builder. +See http://mnajder.blogspot.com/2011/09/when-reactive-framework-meets-f-30.html

+
+ +
+ +

Functions and values

+ + + + + + + + + + + + + + +
Function or valueDescription
+ + + observe + +
+ Signature: ObservableBuilder
+
+
+ + + + + +
+ + + rxquery + +
+ Signature: RxQueryBuilder
+
+
+ + + + + +
+ +
+
+ F# Project + +
+
+
+ Fork me on GitHub + + + diff --git a/reference/fsharp-control-reactive-observablemodule.html b/reference/fsharp-control-reactive-observablemodule.html new file mode 100644 index 0000000..1dec3f3 --- /dev/null +++ b/reference/fsharp-control-reactive-observablemodule.html @@ -0,0 +1,5055 @@ + + + + + Observable - FSharp.Control.Reactive + + + + + + + + + + + + + + + +
+ +
+
+
+ + + + +

Observable

+
+

The Reactive module provides operators for working with IObservable<_> in F#.

+
+ + + +

Functions and values

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Function or valueDescription
+ + + aggregate accumulator source + +
+ Signature: accumulator:('?6295 -> '?6295 -> '?6295) -> source:IObservable<'?6295> -> IObservable<'?6295>
+ Type parameters: '?6295
+
+ + + + +

Applies an accumulator function over an observable sequence, returning the +result of the aggregation as a single element in the result sequence

+ +
+ + + all pred source + +
+ Signature: pred:Func<'?6297,bool> -> source:IObservable<'?6297> -> IObservable<bool>
+ Type parameters: '?6297
+
+ + + + +

Determines whether all elements of and observable satisfy a predicate

+ +
+ + + amb second first + +
+ Signature: second:IObservable<'?6299> -> first:IObservable<'?6299> -> IObservable<'?6299>
+ Type parameters: '?6299
+
+ + + + +

Returns the observable sequence that reacts first

+ +
+ + + ambArray source + +
+ Signature: source:IObservable<'T> [] -> IObservable<'T>
+ Type parameters: 'T
+
+ + + + +

Propagates the observable sequence that reacts first

+ +
+ + + ambSeq source + +
+ Signature: source:seq<IObservable<'T>> -> IObservable<'T>
+ Type parameters: 'T
+
+ + + + +

Propagates the observable sequence that reacts first

+ +
+ + + any source + +
+ Signature: source:IObservable<'Source> -> IObservable<bool>
+ Type parameters: 'Source
+
+ + + + +

Determines whether an observable sequence contains any elements

+ +
+ + + apply f m + +
+ Signature: f:IObservable<('?6312 -> '?6313)> -> m:IObservable<'?6312> -> IObservable<'?6313>
+ Type parameters: '?6312, '?6313
+
+ + + + +

Lifts the values of f and m and applies f to m, returning an IObservable of the result.

+ +
+ + + asObservable source + +
+ Signature: source:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Source
+
+ + + + +

Hides the identy of an observable sequence

+ +
+ + + bind f m + +
+ Signature: f:('T -> IObservable<'TNext>) -> m:IObservable<'T> -> IObservable<'TNext>
+ Type parameters: 'T, 'TNext
+
+ + + + +

Binds an observable to generate a subsequent observable.

+ +
+ + + both second first + +
+ Signature: second:IObservable<'?6315> -> first:IObservable<'?6316> -> Pattern<'?6316,'?6315>
+ Type parameters: '?6315, '?6316
+
+ + + + +

Matches when both observable sequences have an available value

+ +
+ + + buffer bufferClosingSelector source + +
+ Signature: bufferClosingSelector:IObservable<'BufferClosing> -> source:IObservable<'?6319> -> IObservable<IList<'?6319>>
+ Type parameters: 'BufferClosing, '?6319
+
+ + + + + +
+ + + bufferBounded boundaries source + +
+ Signature: boundaries:IObservable<'BufferClosing> -> source:IObservable<'T> -> IObservable<IList<'T>>
+ Type parameters: 'BufferClosing, 'T
+
+ + + + +

Projects each element of an observable sequence into +consequtive non-overlapping buffers based on a sequence of boundary markers

+ +
+ + + bufferCount count source + +
+ Signature: count:int -> source:IObservable<'?6324> -> IObservable<IList<'?6324>>
+ Type parameters: '?6324
+
+ + + + +

Projects each element of an observable sequence into +consequtive non-overlapping buffers produced based on count information

+ +
+ + + bufferCountSkip count skip source + +
+ Signature: count:int -> skip:int -> source:IObservable<'?6326> -> IObservable<IList<'?6326>>
+ Type parameters: '?6326
+
+ + + + +

Projects each element of an observable sequence into zero or more buffers +which are produced based on element count information

+ +
+ + + bufferFork (...) + +
+ Signature: bufferOpenings:IObservable<'BufferOpening> -> bufferClosingSelector:('BufferOpening -> IObservable<'T>) -> source:IObservable<'?6334> -> IObservable<IList<'?6334>>
+ Type parameters: 'BufferOpening, 'T, '?6334
+
+ + + + +

Projects each element of an observable sequence into zero of more buffers. +bufferOpenings - observable sequence whose elements denote the opening of each produced buffer +bufferClosing - observable sequence whose elements denote the closing of each produced buffer

+ +
+ + + bufferSpan timeSpan source + +
+ Signature: timeSpan:TimeSpan -> source:IObservable<'?6328> -> IObservable<IList<'?6328>>
+ Type parameters: '?6328
+
+ + + + +

Projects each element of an observable sequence into +consequtive non-overlapping buffers produced based on timing information

+ +
+ + + bufferSpanCount timeSpan count source + +
+ Signature: timeSpan:TimeSpan -> count:int -> source:IObservable<'?6330> -> IObservable<IList<'?6330>>
+ Type parameters: '?6330
+
+ + + + +

Projects each element of an observable sequence into a buffer that goes +sent out when either it's full or a specific amount of time has elapsed +Analogy - A boat that departs when it's full or at its scheduled time to leave

+ +
+ + + bufferSpanShift (...) + +
+ Signature: timeSpan:TimeSpan -> timeShift:TimeSpan -> source:IObservable<'?6336> -> IObservable<IList<'?6336>>
+ Type parameters: '?6336
+
+ + + + +

Projects each element of an observable sequence into +zero or more buffers produced based on timing information

+ +
+ + + case selector sources + +
+ Signature: selector:(unit -> '?6340) -> sources:IDictionary<'?6340,IObservable<'?6341>> -> IObservable<'?6341>
+ Type parameters: '?6340, '?6341
+
+ + + + +

Uses selector to determine which source in sources to return, +choosing an empty sequence if no match is found

+ +
+ + + caseDefault (...) + +
+ Signature: selector:(unit -> 'Value) -> defaulSource:IObservable<'Result> -> sources:IDictionary<'Value,IObservable<'Result>> -> IObservable<'Result>
+ Type parameters: 'Value, 'Result
+
+ + + + +

Uses selector to determine which source in sources to return, +choosing defaulSource if no match is found

+ +
+ + + cast source + +
+ Signature: source:IObservable<obj> -> IObservable<'CastType>
+ Type parameters: 'CastType
+
+ + + + +

Converts the elements of the sequence to the specified type

+ +
+ + + catch second first + +
+ Signature: second:IObservable<'T> -> first:IObservable<'T> -> IObservable<'T>
+ Type parameters: 'T
+
+ + + + +

Continues an observable sequence that is terminated +by an exception with the next observable sequence.

+ +
+ + + catchArray sources + +
+ Signature: sources:IObservable<'T> [] -> IObservable<'T>
+ Type parameters: 'T
+
+ + + + +

Continues an observable sequence that is terminated by an exception with the next observable sequence.

+ +
+ + + catchSeq sources + +
+ Signature: sources:seq<IObservable<'T>> -> IObservable<'T>
+ Type parameters: 'T
+
+ + + + +

Continues an observable sequence that is terminated by an exception with the next observable sequence.

+ +
+ + + catchWith handler source + +
+ Signature: handler:('?6348 -> IObservable<'?6349>) -> source:IObservable<'?6349> -> IObservable<'?6349>
+ Type parameters: '?6348, '?6349
+
+ + + + +

Continues an observable sequence that is terminated by an exception of +the specified type with the observable sequence produced by the handler.

+ +
+ + + chunkify source + +
+ Signature: source:IObservable<'Source> -> seq<IList<'Source>>
+ Type parameters: 'Source
+
+ + + + +

Produces an enumerable sequence of consequtive (possibly empty) chunks of the source observable

+ +
+ + + collect map source + +
+ Signature: map:('Source -> IObservable<'Result>) -> source:seq<'Source> -> IObservable<'Result>
+ Type parameters: 'Source, 'Result
+
+ + + + +

Concatenates the observable sequences obtained by applying the map for each element in the given enumerable

+ +
+ + + collectMerge source newCollector merge + +
+ Signature: source:IObservable<'?6360> -> newCollector:(unit -> '?6361) -> merge:('?6361 -> '?6360 -> '?6361) -> IEnumerable<'?6361>
+ Type parameters: '?6360, '?6361
+
+ + + + +

Produces an enumerable sequence that returns elements collected/aggregated from the source sequence between consecutive iterations. +merge - Merges a sequence element with the current collector +newCollector - Factory to create a new collector object.

+ +
+ + + collectMergeInit (...) + +
+ Signature: getInitialCollector:(unit -> '?6363) -> merge:('?6363 -> '?6364 -> '?6363) -> getNewCollector:('?6363 -> '?6363) -> source:IObservable<'?6364> -> IEnumerable<'?6363>
+ Type parameters: '?6363, '?6364
+
+ + + + +

Produces an enumerable sequence that returns elements collected/aggregated from the source sequence between consecutive iterations. +merge - Merges a sequence element with the current collector +getNewCollector - Factory to replace the current collector by a new collector +getInitialCollector - Factory to create the initial collector object.

+ +
+ + + combineLatest source + +
+ Signature: source:seq<IObservable<'T>> -> IObservable<IList<'T>>
+ Type parameters: 'T
+
+ + + + +

Merges the specified observable sequences into one observable sequence by +emmiting a list with the latest source elements of whenever any of the +observable sequences produces and element.

+ +
+ + + combineLatestArray source + +
+ Signature: source:IObservable<'T> [] -> IObservable<IList<'T>>
+ Type parameters: 'T
+
+ + + + +

Merges the specified observable sequences into one observable sequence by applying the map +whenever any of the observable sequences produces and element.

+ +
+ + + combineLatestMap map source + +
+ Signature: map:(IList<'T> -> 'Result) -> source:seq<IObservable<'T>> -> IObservable<'Result>
+ Type parameters: 'T, 'Result
+
+ + + + +

Merges the specified observable sequences into one observable sequence by applying the map +whenever any of the observable sequences produces and element.

+ +
+ + + concat second first + +
+ Signature: second:IObservable<'T> -> first:IObservable<'T> -> IObservable<'T>
+ Type parameters: 'T
+
+ + + + +

Concatenates the second observable sequence to the first observable sequence +upn the successful termination of the first

+ +
+ + + concatArray sources + +
+ Signature: sources:IObservable<'T> [] -> IObservable<'T>
+ Type parameters: 'T
+
+ + + + +

Concatenates all of the specified observable sequences as long as +the previous observable sequence terminated successfully

+ +
+ + + concatInner sources + +
+ Signature: sources:IObservable<IObservable<'T>> -> IObservable<'T>
+ Type parameters: 'T
+
+ + + + +

Concatenates all of the inner observable sequences as long as +the previous observable sequence terminated successfully

+ +
+ + + concatSeq sources + +
+ Signature: sources:seq<IObservable<'T>> -> IObservable<'T>
+ Type parameters: 'T
+
+ + + + +

Concatenates all observable sequences within the sequence as long as +the previous observable sequence terminated successfully

+ +
+ + + concatTasks sources + +
+ Signature: sources:IObservable<Task<'T>> -> IObservable<'T>
+ Type parameters: 'T
+
+ + + + +

Concatenates all task results as long as +the previous taskterminated successfully

+ +
+ + + connect source + +
+ Signature: source:IConnectableObservable<'?6383> -> IDisposable
+ Type parameters: '?6383
+
+ + + + +

Connects the observable wrapper to its source. All subscribed +observers will recieve values from the underlying observable +sequence as long as the connection is established.
+( publish an Observable to get a ConnectableObservable )

+ +
+ + + contains value source + +
+ Signature: value:'?6385 -> source:IObservable<'?6385> -> IObservable<bool>
+ Type parameters: '?6385
+
+ + + + +

Determines whether an observable sequence contains a specified +element by using the default equality comparer.

+ +
+ + + containsCompare comparer value source + +
+ Signature: comparer:IEqualityComparer<'?6387> -> value:'?6387 -> source:IObservable<'?6387> -> IObservable<bool>
+ Type parameters: '?6387
+
+ + + + +

Determines whether an observable sequence contains a +specified element by using a specified EqualityComparer

+ +
+ + + count source + +
+ Signature: source:IObservable<'?6389> -> IObservable<int>
+ Type parameters: '?6389
+
+ + + + +

Counts the elements

+ +
+ + + countSatisfy predicate source + +
+ Signature: predicate:Func<'?6391,bool> -> source:IObservable<'?6391> -> IObservable<int>
+ Type parameters: '?6391
+
+ + + + +

Returns an observable sequence containing an int that represents how many elements +in the specified observable sequence satisfy a condition.

+ +
+ + + create subscribe + +
+ Signature: subscribe:(IObserver<'Result> -> Action) -> IObservable<'Result>
+ Type parameters: 'Result
+
+ + + + +

Creates an observable sequence from a specified Subscribe method implementation.

+ +
+ + + createWithDisposable subscribe + +
+ Signature: subscribe:(IObserver<'Result> -> IDisposable) -> IObservable<'Result>
+ Type parameters: 'Result
+
+ + + + +

Creates an observable sequence from a specified Subscribe method implementation.

+ +
+ + + defaultIfEmpty source + +
+ Signature: source:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Source
+
+ + + + +

Returns the elements of the specified sequence or the type parameter's default value +in a singleton sequence if the sequence is empty.

+ +
+ + + defaultIfEmptyIs defaultValue source + +
+ Signature: defaultValue:'Source -> source:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Source
+
+ + + + +

Returns the elements of the specified sequence or the specified value in a singleton sequence if the sequence is empty.

+ +
+ + + defer observableFactory + +
+ Signature: observableFactory:(unit -> IObservable<'Result>) -> IObservable<'Result>
+ Type parameters: 'Result
+
+ + + + +

Returns an observable sequence that invokes the specified factory function whenever a new observer subscribes.

+ +
+ + + delay dueTime source + +
+ Signature: dueTime:TimeSpan -> source:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Source
+
+ + + + +

Time shifts the observable sequence by the specified relative time duration. +The relative time intervals between the values are preserved.

+ +
+ + + delayMap delayDurationSelector source + +
+ Signature: delayDurationSelector:('Source -> IObservable<'TDelay>) -> source:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Source, 'TDelay
+
+ + + + +

Time shifts the observable sequence based on a delay selector function for each element.

+ +
+ + + delayMapFilter (...) + +
+ Signature: delayDurationSelector:('Source -> IObservable<'TDelay>) -> subscriptionDelay:IObservable<'TDelay> -> source:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Source, 'TDelay
+
+ + + + +

Time shifts the observable sequence based on a subscription delay and a delay selector function for each element.

+ +
+ + + delaySubscription dueTime source + +
+ Signature: dueTime:TimeSpan -> source:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Source
+
+ + + + +

Time shifts the observable sequence by delaying the subscription with the specified relative time duration.

+ +
+ + + delaySubscriptionUntil dueTime source + +
+ Signature: dueTime:DateTimeOffset -> source:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Source
+
+ + + + +

Time shifts the observable sequence by delaying the subscription to the specified absolute time.

+ +
+ + + delayUnitl dueTime source + +
+ Signature: dueTime:DateTimeOffset -> source:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Source
+
+ + + + +

Time shifts the observable sequence to start propagating notifications at the specified absolute time. +The relative time intervals between the values are preserved.

+ +
+ + + dematerialize source + +
+ Signature: source:IObservable<Notification<'?6417>> -> IObservable<'?6417>
+ Type parameters: '?6417
+
+ + + + +

Dematerializes the explicit notification values of an observable sequence as implicit notifications.

+ +
+ + + distincKey keySelector source + +
+ Signature: keySelector:Func<'Source,'Key> -> source:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Source, 'Key
+
+ + + + +

Returns an observable sequence that contains only distinct elements according to the keySelector.

+ +
+ + + distincKeyCompare (...) + +
+ Signature: keySelector:Func<'Source,'Key> -> comparer:IEqualityComparer<'Key> -> source:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Source, 'Key
+
+ + + + +

Returns an observable sequence that contains only distinct elements according to the keySelector and the comparer.

+ +
+ + + distinct source + +
+ Signature: source:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Source
+
+ + + + +

Returns an observable sequence that only contains distinct elements

+ +
+ + + distinctCompare comparer source + +
+ Signature: comparer:IEqualityComparer<'Source> -> source:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Source
+
+ + + + +

Returns an observable sequence that contains only distinct elements according to the comparer.

+ +
+ + + distinctUntilChanged source + +
+ Signature: source:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Source
+
+ + + + +

Returns an observable sequence that only contains distinct contiguous elements

+ +
+ + + distinctUntilChangedCompare (...) + +
+ Signature: comparer:IEqualityComparer<'Source> -> source:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Source
+
+ + + + +

Returns an observable sequence that contains only distinct contiguous elements according to the comparer.

+ +
+ + + distinctUntilChangedKey (...) + +
+ Signature: keySelector:Func<'Source,'Key> -> source:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Source, 'Key
+
+ + + + +

Returns an observable sequence that contains only distinct contiguous elements according to the keySelector.

+ +
+ + + distinctUntilChangedKeyCompare (...) + +
+ Signature: keySelector:Func<'Source,'Key> -> comparer:IEqualityComparer<'Key> -> source:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Source, 'Key
+
+ + + + +

Returns an observable sequence that contains only distinct contiguous elements according to the keySelector and the comparer.

+ +
+ + + elementAt index source + +
+ Signature: index:int -> source:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Source
+
+ + + + +

Returns the element at a specified index in a sequence.

+ +
+ + + elementAtOrDefault index source + +
+ Signature: index:int -> source:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Source
+
+ + + + +

Returns the element at a specified index in a sequence or a default value if the index is out of range

+ +
+ + + empty + +
+ Signature: IObservable<'T>
+ Type parameters: 'T
+
+ + + + +

Returns an empty observable

+ +
+ + + emptyWitness witness + +
+ Signature: witness:'T -> IObservable<'T>
+ Type parameters: 'T
+
+ + + + +

Returns an empty Observable sequence

+ +
+ + + equals first second + +
+ Signature: first:IObservable<'Source> -> second:IObservable<'Source> -> IObservable<bool>
+ Type parameters: 'Source
+
+ + + + +

Determines whether two sequences are equal by comparing the elements pairwise.

+ +
+ + + equalsCompare first second comparer + +
+ Signature: first:IObservable<'Source> -> second:IObservable<'Source> -> comparer:IEqualityComparer<'Source> -> IObservable<bool>
+ Type parameters: 'Source
+
+ + + + +

Determines whether two sequences are equal by comparing the elements pairwise using a specified equality comparer.

+ +
+ + + equalsSeq first second + +
+ Signature: first:IObservable<'Source> -> second:seq<'Source> -> IObservable<bool>
+ Type parameters: 'Source
+
+ + + + +

Determines whether an observable and enumerable sequence are equal by comparing the elements pairwise.

+ +
+ + + equalsSeqComparer first second comparer + +
+ Signature: first:IObservable<'Source> -> second:seq<'Source> -> comparer:IEqualityComparer<'Source> -> IObservable<bool>
+ Type parameters: 'Source
+
+ + + + +

Determines whether an observable and enumerable sequence are equal by comparing the elements pairwise using a specified equality comparer.

+ +
+ + + error e + +
+ Signature: e:exn -> IObservable<'?6455>
+ Type parameters: '?6455
+
+ + + + + +
+ + + exists predicate source + +
+ Signature: predicate:Func<'?6457,bool> -> source:IObservable<'?6457> -> IObservable<bool>
+ Type parameters: '?6457
+
+ + + + +

Determines whether an observable sequence contains a specified value +which satisfies the given predicate

+ +
+ + + filter predicate source + +
+ Signature: predicate:('T -> bool) -> source:IObservable<'T> -> IObservable<'T>
+ Type parameters: 'T
+
+ + + + +

Filters the observable elements of a sequence based on a predicate

+ +
+ + + filteri predicate source + +
+ Signature: predicate:('T -> int -> bool) -> source:IObservable<'T> -> IObservable<'T>
+ Type parameters: 'T
+
+ + + + +

Filters the observable elements of a sequence based on a predicate by +incorporating the element's index

+ +
+ + + finallyDo finallyAction source + +
+ Signature: finallyAction:(unit -> unit) -> source:IObservable<'?6463> -> IObservable<'?6463>
+ Type parameters: '?6463
+
+ + + + +

Invokes a specified action after the source observable sequence +terminates gracefully of exceptionally

+ +
+ + + first source + +
+ Signature: source:IObservable<'T> -> IObservable<'T>
+ Type parameters: 'T
+
+ + + + +

Returns the first element of an observable sequence

+ +
+ + + firstIf predicate source + +
+ Signature: predicate:Func<'T,bool> -> source:IObservable<'T> -> IObservable<'T>
+ Type parameters: 'T
+
+ + + + +

Returns the first element of an observable sequence +if it satisfies the predicate

+ +
+ + + flatmap map source + +
+ Signature: map:('S -> IObservable<'R>) -> source:IObservable<'S> -> IObservable<'R>
+ Type parameters: 'S, 'R
+
+ + + + +

Projects each element of an observable sequence to an observable sequence +and merges the resulting observable sequences into one observable sequenc

+ +
+ + + flatmapOther other source + +
+ Signature: other:IObservable<'Other> -> source:IObservable<'Source> -> IObservable<'Other>
+ Type parameters: 'Other, 'Source
+
+ + + + +

Projects each element of an observable sequence to an observable sequence by incorporating the +element's index and merges the resulting observable sequences into one observable sequence. +Projects each element of the source observable sequence to the other observable sequence +and merges the resulting observable sequences into one observable sequence.

+ +
+ + + flatmapSeq map source + +
+ Signature: map:('Source -> seq<'Result>) -> source:IObservable<'Source> -> IObservable<'Result>
+ Type parameters: 'Source, 'Result
+
+ + + + +

Projects each element of an observable sequence to an enumerable sequence and concatenates +the resulting enumerable sequences into one observable sequence.

+ +
+ + + flatmapTask map source + +
+ Signature: map:('Source -> Task<'Result>) -> source:IObservable<'Source> -> IObservable<'Result>
+ Type parameters: 'Source, 'Result
+
+ + + + +

Projects each element of an observable sequence to an enumerable sequence by incorporating the +element's index and concatenates the resulting enumerable sequences into one observable sequence. +Projects each element of an observable sequence to a task and merges all of the task results into one observable sequence.

+ +
+ + + fold accumulator init source + +
+ Signature: accumulator:('?6481 -> '?6482 -> '?6481) -> init:'?6481 -> source:IObservable<'?6482> -> IObservable<'?6481>
+ Type parameters: '?6481, '?6482
+
+ + + + +

Projects each element of an observable sequence to a task by incorporating the element's index +and merges all of the task results into one observable sequence. +Applies an accumulator function over an observable sequence, returning the +result of the fold as a single element in the result sequence +init is the initial accumulator value

+ +
+ + + foldMap accumulator init map source + +
+ Signature: accumulator:('?6484 -> '?6485 -> '?6484) -> init:'?6484 -> map:('?6484 -> '?6486) -> source:IObservable<'?6485> -> IObservable<'?6486>
+ Type parameters: '?6484, '?6485, '?6486
+
+ + + + +

Applies an accumulator function over an observable sequence, returning the +result of the fold as a single element in the result sequence +init is the initial accumulator value, map is performed after the fold

+ +
+ + + fromEvent addHandler removeHandler + +
+ Signature: addHandler:('Delegate -> unit) -> removeHandler:('Delegate -> unit) -> IObservable<unit>
+ Type parameters: 'Delegate
+
+ + + + +

Converts an Action-based .NET event to an observable sequence. Each event invocation is surfaced through an OnNext message in the resulting sequence. +For conversion of events conforming to the standard .NET event pattern, use any of the FromEventPattern overloads instead.

+ +
+ + + fromEventConversion (...) + +
+ Signature: conversion:(('EventArgs -> unit) -> 'Delegate) -> addHandler:('Delegate -> unit) -> removeHandler:('Delegate -> unit) -> IObservable<'EventArgs>
+ Type parameters: 'EventArgs, 'Delegate
+
+ + + + +

Converts a .NET event to an observable sequence, using a conversion function to obtain the event delegate. +Each event invocation is surfaced through an OnNext message in the resulting sequence. +For conversion of events conforming to the standard .NET event pattern, use any of the FromEventPattern functions instead.

+ +
+ + + fromEventGeneric (...) + +
+ Signature: addHandler:(('TEventArgs -> unit) -> unit) -> removeHandler:(('TEventArgs -> unit) -> unit) -> IObservable<'TEventArgs>
+ Type parameters: 'TEventArgs
+
+ + + + +

Converts an generic Action-based .NET event to an observable sequence. Each event invocation is surfaced through an OnNext message in the resulting sequence. +For conversion of events conforming to the standard .NET event pattern, use any of the FromEventPattern overloads instead.

+ +
+ + + fromEventHandler (...) + +
+ Signature: addHandler:(EventHandler<EventArgs> -> unit) -> removeHandler:(EventHandler<EventArgs> -> unit) -> IObservable<EventArgs>
+ Type parameters: 'EventArgs
+
+ + + + +

Converts a .NET event to an observable sequence, using a supplied event delegate type. +Each event invocation is surfaced through an OnNext message in the resulting sequence.

+ +
+ + + fromEventPattern eventName target + +
+ Signature: eventName:string -> target:obj -> IObservable<EventPattern<EventArgs>>
+
+
+ + + + +

Generates an observable from an IEvent<_> as an EventPattern.

+ +
+ + + generate (...) + +
+ Signature: initialState:'State -> condition:('State -> bool) -> iterator:('State -> 'State) -> resultMap:('State -> 'Result) -> IObservable<'Result>
+ Type parameters: 'State, 'Result
+
+ + + + +

Generates an observable sequence by running a state-driven loop producing the sequence's elements.

+ +
+ + + generateTimed (...) + +
+ Signature: initialState:'State -> condition:('State -> bool) -> iterate:('State -> 'State) -> resultMap:('State -> 'Result) -> timeSelector:('State -> DateTimeOffset) -> IObservable<'Result>
+ Type parameters: 'State, 'Result
+
+ + + + +

Generates an observable sequence by running a state-driven and temporal loop producing the sequence's elements.

+ +
+ + + generateTimeSpan (...) + +
+ Signature: initialState:'State -> condition:Func<'State,bool> -> iterate:Func<'State,'State> -> resultMap:('State -> 'Result) -> genTime:('State -> TimeSpan) -> IObservable<'Result>
+ Type parameters: 'State, 'Result
+
+ + + + +

Generates an observable sequence by running a state-driven and temporal loop producing the sequence's elements.

+ +
+ + + getEnumerator source + +
+ Signature: source:IObservable<'?6507> -> IEnumerator<'?6507>
+ Type parameters: '?6507
+
+ + + + +

Returns an enumerator that enumerates all values of the observable sequence.

+ +
+ + + groupBy keySelector source + +
+ Signature: keySelector:('Source -> 'Key) -> source:IObservable<'Source> -> IObservable<IGroupedObservable<'Key,'Source>>
+ Type parameters: 'Source, 'Key
+
+ + + + +

Groups the elements of an observable sequence according to a specified key selector function.

+ +
+ + + groupByCapacityElement (...) + +
+ Signature: keySelector:('Source -> 'Key) -> capacity:int -> elementSelector:('Source -> 'Element) -> source:IObservable<'Source> -> IObservable<IGroupedObservable<'Key,'Element>>
+ Type parameters: 'Source, 'Key, 'Element
+
+ + + + +

Groups the elements of an observable sequence with the specified initial capacity +according to a specified key selector function and comparer. +Groups the elements of an observable sequence with the specified initial capacity +and selects the resulting elements by using a specified function.

+ +
+ + + groupByCompare (...) + +
+ Signature: keySelector:('?6512 -> '?6513) -> comparer:IEqualityComparer<'?6514> -> source:IObservable<'?6512> -> IObservable<IGroupedObservable<'?6513,'?6513>>
+ Type parameters: '?6512, '?6513, '?6514
+
+ + + + +

Groups the elements of an observable sequence with the specified initial +capacity according to a specified key selector function. +Groups the elements of an observable sequence according to a specified key selector function and comparer.

+ +
+ + + groupByCompareElement (...) + +
+ Signature: keySelector:('Source -> 'Key) -> comparer:IEqualityComparer<'Key> -> elementSelector:('Source -> 'Element) -> source:IObservable<'Source> -> IObservable<IGroupedObservable<'Key,'Element>>
+ Type parameters: 'Source, 'Key, 'Element
+
+ + + + +

Groups the elements of an observable sequence according to a specified key selector function +and comparer and selects the resulting elements by using a specified function.

+ +
+ + + groupByComparerElementUntil (...) + +
+ Signature: keySelector:('Source -> 'Key) -> comparer:IEqualityComparer<'Key> -> elementSelector:('Source -> 'Element) -> durationSelector:(IGroupedObservable<'Key,'Element> -> IObservable<'TDuration>) -> source:IObservable<'Source> -> IObservable<IGroupedObservable<'Key,'Element>>
+ Type parameters: 'Source, 'Key, 'Element, 'TDuration
+
+ + + + +

Groups the elements of an observable sequence with the specified initial capacity according to a specified key selector function and comparer. +A duration selector function is used to control the lifetime of groups. When a group expires, it receives an OnCompleted notification. When a new element with the same +key value as a reclaimed group occurs, the group will be reborn with a new lifetime request. +Groups the elements of an observable sequence with the specified initial capacity according to a specified key +selector function and selects the resulting elements by using a specified function. +A duration selector function is used to control the lifetime of groups. When a group +expires, it receives an OnCompleted notification. When a new element with the same +key value as a reclaimed group occurs, the group will be reborn with a new lifetime request. +Groups the elements of an observable sequence according to a specified key selector function and +comparer and selects the resulting elements by using a specified function. +A duration selector function is used to control the lifetime of groups. When a group expires, +it receives an OnCompleted notification. When a new element with the same +key value as a reclaimed group occurs, the group will be reborn with a new lifetime request.

+ +
+ + + groupByComparerUntil (...) + +
+ Signature: keySelector:('Source -> 'Key) -> comparer:IEqualityComparer<'Key> -> durationSelector:(IGroupedObservable<'Key,'Source> -> IObservable<'TDuration>) -> source:IObservable<'Source> -> IObservable<IGroupedObservable<'Key,'Source>>
+ Type parameters: 'Source, 'Key, 'TDuration
+
+ + + + +

Groups the elements of an observable sequence with the specified initial capacity according to a specified key selector function. +A duration selector function is used to control the lifetime of groups. When a group +expires, it receives an OnCompleted notification. When a new element with the same +key value as a reclaimed group occurs, the group will be reborn with a new lifetime request. +Groups the elements of an observable sequence according to a specified key selector function and comparer. +A duration selector function is used to control the lifetime of groups. When a group expires, +it receives an OnCompleted notification. When a new element with the same +key value as a reclaimed group occurs, the group will be reborn with a new lifetime request.

+ +
+ + + groupByElement (...) + +
+ Signature: keySelector:('Source -> 'Key) -> elementSelector:('Source -> 'Element) -> source:IObservable<'Source> -> IObservable<IGroupedObservable<'Key,'Element>>
+ Type parameters: 'Source, 'Key, 'Element
+
+ + + + +

Groups the elements of an observable sequence and selects the resulting elements by using a specified function.

+ +
+ + + groupByElementUntil (...) + +
+ Signature: keySelector:('Source -> 'Key) -> elementSelector:('Source -> 'Element) -> durationSelector:(IGroupedObservable<'Key,'Element> -> IObservable<'TDuration>) -> source:IObservable<'Source> -> IObservable<IGroupedObservable<'Key,'Element>>
+ Type parameters: 'Source, 'Key, 'Element, 'TDuration
+
+ + + + +

Groups the elements of an observable sequence according to a specified key selector function +and selects the resulting elements by using a specified function. +A duration selector function is used to control the lifetime of groups. When a group expires, +it receives an OnCompleted notification. When a new element with the same +key value as a reclaimed group occurs, the group will be reborn with a new lifetime request.

+ +
+ + + groupByUntil (...) + +
+ Signature: keySelector:('Source -> 'Key) -> durationSelector:(IGroupedObservable<'Key,'Source> -> IObservable<'TDuration>) -> source:IObservable<'Source> -> IObservable<IGroupedObservable<'Key,'Source>>
+ Type parameters: 'Source, 'Key, 'TDuration
+
+ + + + +

Groups the elements of an observable sequence with the specified initial capacity according to a +specified key selector function and comparer and selects the resulting elements by using a specified function. + Groups the elements of an observable sequence according to a specified key selector function. + A duration selector function is used to control the lifetime of groups. When a group expires, + it receives an OnCompleted notification. When a new element with the same + key value as a reclaimed group occurs, the group will be reborn with a new lifetime request.

+ +
+ + + groupJoin (...) + +
+ Signature: left:IObservable<'Left> -> right:IObservable<'Right> -> leftselect:('Left -> IObservable<'a>) -> rightselect:('Right -> IObservable<'b>) -> resultselect:('Left -> IObservable<'Right> -> 'Result) -> IObservable<'Result>
+ Type parameters: 'Left, 'Right, 'a, 'b, 'Result
+
+ + + + +

Groups the elements of an observable sequence with the specified initial capacity according to a specified +key selector function and comparer and selects the resulting elements by using a specified function. +A duration selector function is used to control the lifetime of groups. When a group expires, it receives +an OnCompleted notification. When a new element with the same +key value as a reclaimed group occurs, the group will be reborn with a new lifetime request. +Correlates the elements of two sequences based on overlapping +durations and groups the results

+ +
+ + + guard f source + +
+ Signature: f:(unit -> unit) -> source:IObservable<'Args> -> IObservable<'Args>
+ Type parameters: 'Args
+
+ + + + +

Creates an observable that calls the specified function (each time) +after an observer is attached to the observable. This is useful to +make sure that events triggered by the function are handled.

+ +
+ + + head obs + +
+ Signature: obs:IObservable<'?6554> -> IObservable<'?6554>
+ Type parameters: '?6554
+
+ + + + +

Takes the first element of the observable sequence

+ +
+ + + infinite () + +
+ Signature: unit -> IObservable<'?6618>
+ Type parameters: '?6618
+
+ + + + +

Returns a non-terminating observable sequence, which can +be used to denote an infinite duration (e.g. when using reactive joins).

+ +
+ + + interval period + +
+ Signature: period:TimeSpan -> IObservable<int64>
+
+
+ + + + +

Returns and observable sequence that produces a value after each period

+ +
+ + + isEmpty source + +
+ Signature: source:IObservable<'?6557> -> bool
+ Type parameters: '?6557
+
+ + + + +

Determines whether the given observable is empty

+ +
+ + + iter onNext source + +
+ Signature: onNext:('Source -> unit) -> source:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Source
+
+ + + + +

Invokes an action for each element in the observable sequence, and propagates all observer +messages through the result sequence. This method can be used for debugging, logging, etc. of query +behavior by intercepting the message stream to run arbitrary actions for messages on the pipeline.

+ +
+ + + iterEnd onNext onCompleted source + +
+ Signature: onNext:('Source -> unit) -> onCompleted:(unit -> unit) -> source:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Source
+
+ + + + +

Invokes an action for each element in the observable sequence and invokes an action +upon graceful termination of the observable sequence. This method can be used for debugging, + logging, etc. of query behavior by intercepting the message stream to run arbitrary +actions for messages on the pipeline.

+ +
+ + + iterError onNext onError source + +
+ Signature: onNext:('Source -> unit) -> onError:(exn -> unit) -> source:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Source
+
+ + + + +

Invokes an action for each element in the observable sequence and invokes an action upon +exceptional termination of the observable sequence. This method can be used for debugging, +logging, etc. of query behavior by intercepting the message stream to run arbitrary +actions for messages on the pipeline.

+ +
+ + + iterErrorEnd (...) + +
+ Signature: onNext:('Source -> unit) -> onError:(exn -> unit) -> onCompleted:(unit -> unit) -> source:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Source
+
+ + + + +

Invokes an action for each element in the observable sequence and invokes an action +upon graceful or exceptional termination of the observable sequence. +This method can be used for debugging, logging, etc. of query behavior by intercepting +the message stream to run arbitrary actions for messages on the pipeline.

+ +
+ + + iterObserver observer source + +
+ Signature: observer:IObserver<'Source> -> source:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Source
+
+ + + + +

Invokes the observer's methods for each message in the source sequence. +This method can be used for debugging, logging, etc. of query behavior by intercepting +the message stream to run arbitrary actions for messages on the pipeline.

+ +
+ + + joinWhen plans + +
+ Signature: plans:seq<Plan<'T>> -> IObservable<'T>
+ Type parameters: 'T
+
+ + + + +

Joins together the results from several patterns

+ +
+ + + last source + +
+ Signature: source:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Source
+
+ + + + +

Returns the last element of an observable sequence.

+ +
+ + + lastIf predicate source + +
+ Signature: predicate:('Source -> bool) -> source:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Source
+
+ + + + +

Returns the last element of an observable sequence that satisfies the condition in the predicate

+ +
+ + + latest source + +
+ Signature: source:IObservable<'?6575> -> IEnumerable<'?6575>
+ Type parameters: '?6575
+
+ + + + +

Returns an enumerable sequence whose enumeration returns the latest observed element in the source observable sequence. +Enumerators on the resulting sequence will never produce the same element repeatedly, +and will block until the next element becomes available.

+ +
+ + + longCount source + +
+ Signature: source:IObservable<'?6577> -> IObservable<int64>
+ Type parameters: '?6577
+
+ + + + +

Returns an observable sequence containing a int64 that represents +the total number of elements in an observable sequence

+ +
+ + + longCountSatisfy predicate source + +
+ Signature: predicate:Func<'?6579,bool> -> source:IObservable<'?6579> -> IObservable<int64>
+ Type parameters: '?6579
+
+ + + + +

Returns an observable sequence containing an int that represents how many elements +in the specified observable sequence satisfy a condition.

+ +
+ + + map f source + +
+ Signature: f:('?6581 -> '?6582) -> source:IObservable<'?6581> -> IObservable<'?6582>
+ Type parameters: '?6581, '?6582
+
+ + + + +

Maps the given observable with the given function

+ +
+ + + map2 f a b + +
+ Signature: f:IObservable<('?6587 -> '?6588 -> '?6589)> -> a:IObservable<'?6587> -> b:IObservable<'?6588> -> IObservable<'?6589>
+ Type parameters: '?6587, '?6588, '?6589
+
+ + + + +

Maps two observables to the specified function.

+ +
+ + + mapi f source + +
+ Signature: f:(int -> 'Source -> 'Result) -> source:IObservable<'Source> -> IObservable<'Result>
+ Type parameters: 'Source, 'Result
+
+ + + + +

Maps the given observable with the given function and the +index of the element

+ +
+ + + materialize source + +
+ Signature: source:IObservable<'?6591> -> IObservable<Notification<'?6591>>
+ Type parameters: '?6591
+
+ + + + +

Materializes the implicit notifications of an observable sequence as +explicit notification values

+ +
+ + + maxOf source + +
+ Signature: source:IObservable<'T> -> IObservable<'T>
+ Type parameters: 'T
+
+ + + + +

Returns the maximum element in an observable sequence.

+ +
+ + + merge second first + +
+ Signature: second:IObservable<'T> -> first:IObservable<'T> -> IObservable<'T>
+ Type parameters: 'T
+
+ + + + +

Merges the two observables

+ +
+ + + mergeArray sources + +
+ Signature: sources:IObservable<'T> [] -> IObservable<'T>
+ Type parameters: 'T
+
+ + + + +

Merges all the observable sequences into a single observable sequence.

+ +
+ + + mergeInner sources + +
+ Signature: sources:IObservable<IObservable<'T>> -> IObservable<'T>
+ Type parameters: 'T
+
+ + + + +

Merges elements from all inner observable sequences +into a single observable sequence.

+ +
+ + + mergeInnerMax maxConcurrent sources + +
+ Signature: maxConcurrent:int -> sources:IObservable<IObservable<'T>> -> IObservable<'T>
+ Type parameters: 'T
+
+ + + + +

Merges elements from all inner observable sequences +into a single observable sequence limiting the number of concurrent +subscriptions to inner sequences

+ +
+ + + mergeSeq sources + +
+ Signature: sources:seq<IObservable<'T>> -> IObservable<'T>
+ Type parameters: 'T
+
+ + + + +

Merges an enumerable sequence of observable sequences into a single observable sequence.

+ +
+ + + mergeSeqMax maxConcurrent sources + +
+ Signature: maxConcurrent:int -> sources:seq<IObservable<'T>> -> IObservable<'T>
+ Type parameters: 'T
+
+ + + + +

Merges an enumerable sequence of observable sequences into an observable sequence, + limiting the number of concurrent subscriptions to inner sequences.

+ +
+ + + mergeTasks sources + +
+ Signature: sources:IObservable<Task<'T>> -> IObservable<'T>
+ Type parameters: 'T
+
+ + + + +

Merge results from all source tasks into a single observable sequence

+ +
+ + + mostRecent initialVal source + +
+ Signature: initialVal:'?6609 -> source:IObservable<'?6609> -> IEnumerable<'?6609>
+ Type parameters: '?6609
+
+ + + + +

Returns an enumerable sequence whose sequence whose enumeration returns the +most recently observed element in the source observable sequence, using +the specified

+ +
+ + + multicast subject source + +
+ Signature: subject:ISubject<'?6611,'?6612> -> source:IObservable<'?6611> -> IConnectableObservable<'?6612>
+ Type parameters: '?6611, '?6612
+
+ + + + +

Multicasts the source sequence notifications through the specified subject to +the resulting connectable observable. Upon connection of the connectable +observable, the subject is subscribed to the source exactly one, and messages +are forwarded to the observers registered with the connectable observable. +For specializations with fixed subject types, see Publish, PublishLast, and Replay.

+ +
+ + + multicastMap (...) + +
+ Signature: subjectSelector:Func<ISubject<'?6614,'?6615>> -> selector:Func<IObservable<'?6615>,IObservable<'?6616>> -> source:IObservable<'?6614> -> IObservable<'?6616>
+ Type parameters: '?6614, '?6615, '?6616
+
+ + + + +

Multicasts the source sequence notifications through an instantiated subject into +all uses of the sequence within a selector function. Each subscription to the +resulting sequence causes a separate multicast invocation, exposing the sequence +resulting from the selector function's invocation. For specializations with fixed +subject types, see Publish, PublishLast, and Replay.

+ +
+ + + neverWitness witness + +
+ Signature: witness:'?6620 -> IObservable<'?6620>
+ Type parameters: '?6620
+
+ + + + +

Returns a non-terminating observable sequence, which can be +used to denote an infinite duration (e.g. when using reactive joins).

+ +
+ + + next source + +
+ Signature: source:IObservable<'?6622> -> IEnumerable<'?6622>
+ Type parameters: '?6622
+
+ + + + +

Returns an observable sequence whose enumeration blocks until the next +element in the source observable sequence becomes available. +Enumerators on the resulting sequence will block until the next +element becomes available.

+ +
+ + + observeOn scheduler source + +
+ Signature: scheduler:IScheduler -> source:IObservable<'?6626> -> IObservable<'?6626>
+ Type parameters: '?6626
+
+ + + + +

Wraps the source sequence in order to run its observer callbacks on the specified scheduler.

+ +
+ + + observeOnContext context source + +
+ Signature: context:SynchronizationContext -> source:IObservable<'?6628> -> IObservable<'?6628>
+ Type parameters: '?6628
+
+ + + + +

Wraps the source sequence in order to run its observer callbacks +on the specified synchronization context.

+ +
+ + + ofSeq items + +
+ Signature: items:seq<'Item> -> IObservable<'Item>
+ Type parameters: 'Item
+
+ + + + +

Returns the sequence as an observable

+ +
+ + + ofType source + +
+ Signature: source:IObservable<obj> -> IObservable<'?6630>
+ Type parameters: '?6630
+
+ + + + +

Filters the elements of an observable sequence based on the specified type

+ +
+ + + onErrorConcat second first + +
+ Signature: second:IObservable<'Source> -> first:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Source
+
+ + + + +

Concatenates the second observable sequence to the first observable sequence +upon successful or exceptional termination of the first.

+ +
+ + + onErrorConcatArray sources + +
+ Signature: sources:IObservable<'Source> [] -> IObservable<'Source>
+ Type parameters: 'Source
+
+ + + + +

Concatenates all of the specified observable sequences, even if the previous observable sequence terminated exceptionally.

+ +
+ + + onErrorConcatSeq sources + +
+ Signature: sources:seq<IObservable<'Source>> -> IObservable<'Source>
+ Type parameters: 'Source
+
+ + + + +

Concatenates all observable sequences in the given enumerable sequence, even if the +previous observable sequence terminated exceptionally.

+ +
+ + + perform f source + +
+ Signature: f:('?6638 -> unit) -> source:IObservable<'?6638> -> IObservable<'?6638>
+ Type parameters: '?6638
+
+ + + + +

Iterates through the observable and performs the given side-effect

+ +
+ + + performFinally f source + +
+ Signature: f:(unit -> unit) -> source:IObservable<'?6640> -> IObservable<'?6640>
+ Type parameters: '?6640
+
+ + + + +

Invokes the finally action after source observable sequence terminates normally or by an exception.

+ +
+ + + publish source + +
+ Signature: source:IObservable<'?6642> -> IConnectableObservable<'?6642>
+ Type parameters: '?6642
+
+ + + + +

Returns a connectable observable sequence (IConnectableObsevable) that shares +a single subscription to the underlying sequence. This operator is a +specialization of Multicast using a regular Subject

+ +
+ + + publishInitial initial source + +
+ Signature: initial:'Source -> source:IObservable<'Source> -> IConnectableObservable<'Source>
+ Type parameters: 'Source
+
+ + + + +

Returns a connectable observable sequence (IConnectableObsevable) that shares +a single subscription to the underlying sequence and starts with the value +initial. This operator is a specialization of Multicast using a regular Subject

+ +
+ + + publishInitialMap initial map source + +
+ Signature: initial:'Source -> map:(IObservable<'Source> -> IObservable<'Result>) -> source:IObservable<'Source> -> IObservable<'Result>
+ Type parameters: 'Source, 'Result
+
+ + + + +

Returns an observable sequence that is the result of +the map on a connectable observable sequence that shares a +a single subscription to the underlying sequence. This operator is a +specialization of Multicast using a regular Subject

+ +
+ + + publishLast source + +
+ Signature: source:IObservable<'?6652> -> IConnectableObservable<'?6652>
+ Type parameters: '?6652
+
+ + + + +

Returns an observable sequence that is the result of invoking +the selector on a connectable observable sequence containing +only the last notification This operator is a +specialization of Multicast using a regular Subject

+ +
+ + + publishLastMap map source + +
+ Signature: map:(IObservable<'Source> -> IObservable<'Result>) -> source:IObservable<'Source> -> IObservable<'Result>
+ Type parameters: 'Source, 'Result
+
+ + + + +

Returns an observable sequence that is the result of invoking +the selector on a connectable observable sequence that shares a +a single subscription to the underlying sequence. This operator is a +specialization of Multicast using a regular Subject

+ +
+ + + publishMap map source + +
+ Signature: map:(IObservable<'Source> -> IObservable<'Result>) -> source:IObservable<'Source> -> IObservable<'Result>
+ Type parameters: 'Source, 'Result
+
+ + + + +

Returns an observable sequence that is the result of invoking +the selector on a connectable observable sequence that shares a +a single subscription to the underlying sequence. This operator is a +specialization of Multicast using a regular Subject

+ +
+ + + range start count + +
+ Signature: start:int -> count:int -> IObservable<int>
+
+
+ + + + +

Creates a range as an observable

+ +
+ + + reduce f source + +
+ Signature: f:('?6658 -> '?6658 -> '?6658) -> source:IObservable<'?6658> -> IObservable<'?6658>
+ Type parameters: '?6658
+
+ + + + +

Reduces the observable

+ +
+ + + refCount source + +
+ Signature: source:IConnectableObservable<'?6660> -> IObservable<'?6660>
+ Type parameters: '?6660
+
+ + + + +

Returns an observable that remains connected to the source as long +as there is at least one subscription to the observable sequence +( publish an Observable to get a ConnectableObservable )

+ +
+ + + repeat source + +
+ Signature: source:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Source
+
+ + + + +

Repeats the observable sequence indefinitely.

+ +
+ + + repeatCount value repeatCount + +
+ Signature: value:'Result -> repeatCount:int -> IObservable<'Result>
+ Type parameters: 'Result
+
+ + + + +

Repeats the observable sequence a specified number of times.

+ +
+ + + repeatValue value + +
+ Signature: value:'Result -> IObservable<'Result>
+ Type parameters: 'Result
+
+ + + + +

Generates an observable sequence that repeats the given element infinitely.

+ +
+ + + repeatWhile condition source + +
+ Signature: condition:(unit -> bool) -> source:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Source
+
+ + + + +

Repeats the given observable sequence as long as the specified condition holds, where the +condition is evaluated after each repeated source is completed.

+ +
+ + + replay source + +
+ Signature: source:IObservable<'Source> -> IConnectableObservable<'Source>
+ Type parameters: 'Source
+
+ + + + +

Returns a connectable observable sequence that shares a single subscription to the +underlying sequence replaying all notifications.

+ +
+ + + replayBuffer bufferSize source + +
+ Signature: bufferSize:int -> source:IObservable<'Source> -> IConnectableObservable<'Source>
+ Type parameters: 'Source
+
+ + + + +

Returns a connectable observable sequence that shares a single subscription to the underlying sequence +replaying notifications subject to a maximum element count for the replay buffer.

+ +
+ + + replayBufferWindow (...) + +
+ Signature: bufferSize:int -> window:TimeSpan -> source:IObservable<'Source> -> IConnectableObservable<'Source>
+ Type parameters: 'Source
+
+ + + + +

Returns a connectable observable sequence that shares a single subscription to the underlying sequence

+ +
+ + + replayMap map source + +
+ Signature: map:(IObservable<'Source> -> IObservable<'Result>) -> source:IObservable<'Source> -> IObservable<'Result>
+ Type parameters: 'Source, 'Result
+
+ + + + +

Returns an observable sequence that is the result of invoking the selector on a connectable observable +sequence that shares a single subscription to the underlying sequence replaying all notifications.

+ +
+ + + replayMapBuffer map bufferSize source + +
+ Signature: map:(IObservable<'Source> -> IObservable<'Result>) -> bufferSize:int -> source:IObservable<'Source> -> IObservable<'Result>
+ Type parameters: 'Source, 'Result
+
+ + + + +

Returns an observable sequence that is the result of apply a map to a connectable observable sequence that +shares a single subscription to the underlying sequence replaying notifications subject to +a maximum element count for the replay buffer.

+ +
+ + + replayMapBufferWindow (...) + +
+ Signature: map:(IObservable<'Source> -> IObservable<'Result>) -> bufferSize:int -> window:TimeSpan -> source:IObservable<'Source> -> IObservable<'Result>
+ Type parameters: 'Source, 'Result
+
+ + + + +

Returns an observable sequence that is the result of apply a map to a connectable observable sequence that +shares a single subscription to the underlying sequence replaying notifications subject to +a maximum time length and element count for the replay buffer.

+ +
+ + + replayMapWindow map window source + +
+ Signature: map:(IObservable<'Source> -> IObservable<'Result>) -> window:TimeSpan -> source:IObservable<'Source> -> IObservable<'Result>
+ Type parameters: 'Source, 'Result
+
+ + + + +

Returns an observable sequence that is the result of apply a map to a connectable observable sequence that +shares a single subscription to the underlying sequence replaying notifications subject to +a maximum time length.

+ +
+ + + replayWindow window source + +
+ Signature: window:TimeSpan -> source:IObservable<'Source> -> IConnectableObservable<'Source>
+ Type parameters: 'Source
+
+ + + + +

Returns a connectable observable sequence that shares a single subscription to the underlying sequence +replaying notifications subject to a maximum time length for the replay buffer.

+ +
+ + + result x + +
+ Signature: x:'?6694 -> IObservable<'?6694>
+ Type parameters: '?6694
+
+ + + + + +
+ + + retry source + +
+ Signature: source:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Source
+
+ + + + +

Repeats the source observable sequence until it successfully terminates.

+ +
+ + + retryCount count source + +
+ Signature: count:int -> source:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Source
+
+ + + + +

Repeats the source observable sequence the specified number of times or until it successfully terminates.

+ +
+ + + sample interval source + +
+ Signature: interval:TimeSpan -> source:IObservable<'?6696> -> IObservable<'?6696>
+ Type parameters: '?6696
+
+ + + + +

Samples the observable at the given interval

+ +
+ + + sampleWith sampler source + +
+ Signature: sampler:IObservable<'Sample> -> source:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Sample, 'Source
+
+ + + + +

Samples the source observable sequence using a samper observable sequence producing sampling ticks. +Upon each sampling tick, the latest element (if any) in the source sequence during the +last sampling interval is sent to the resulting sequence.

+ +
+ + + scan accumulator source + +
+ Signature: accumulator:('a -> 'a -> 'a) -> source:IObservable<'a> -> IObservable<'a>
+ Type parameters: 'a
+
+ + + + +

Applies an accumulator function over an observable sequence and returns each intermediate result.

+ +
+ + + scanInit source init accumulator + +
+ Signature: source:IObservable<'Source> -> init:'TAccumulate -> accumulator:('TAccumulate -> 'Source -> 'TAccumulate) -> IObservable<'TAccumulate>
+ Type parameters: 'Source, 'TAccumulate
+
+ + + + +

Applies an accumulator function over an observable sequence and returns each intermediate result. +The specified init value is used as the initial accumulator value.

+ +
+ + + selectIf condition thenSource + +
+ Signature: condition:(unit -> bool) -> thenSource:IObservable<'?6706> -> IObservable<'?6706>
+ Type parameters: '?6706
+
+ + + + +

If the condition evaluates true, select the "thenSource" sequence. Otherwise, return an empty sequence.

+ +
+ + + selectIfElse (...) + +
+ Signature: condition:(unit -> bool) -> elseSource:IObservable<'Result> -> thenSource:IObservable<'Result> -> IObservable<'Result>
+ Type parameters: 'Result
+
+ + + + +

If the condition evaluates true, select the "thenSource" sequence. Otherwise, select the else source

+ +
+ + + single value + +
+ Signature: value:'Result -> IObservable<'Result>
+ Type parameters: 'Result
+
+ + + + +

Returns an observable sequence that contains a single element.

+ +
+ + + skip count source + +
+ Signature: count:int -> source:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Source
+
+ + + + +

Bypasses a specified number of elements in an observable sequence and then returns the remaining elements.

+ +
+ + + skipLast count source + +
+ Signature: count:int -> source:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Source
+
+ + + + +

Bypasses a specified number of elements at the end of an observable sequence.

+ +
+ + + skipLastSpan duration source + +
+ Signature: duration:TimeSpan -> source:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Source
+
+ + + + +

Skips elements for the specified duration from the end of the observable source sequence.

+ +
+ + + skipSpan duration source + +
+ Signature: duration:TimeSpan -> source:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Source
+
+ + + + +

Skips elements for the specified duration from the start of the observable source sequence.

+ +
+ + + skipUntil startTime source + +
+ Signature: startTime:DateTimeOffset -> source:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Source
+
+ + + + +

Skips elements from the observable source sequence until the specified start time.

+ +
+ + + skipUntilOther other source + +
+ Signature: other:IObservable<'Other> -> source:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Other, 'Source
+
+ + + + +

Returns the elements from the source observable sequence only after the other observable sequence produces an element.

+ +
+ + + skipWhile predicate source + +
+ Signature: predicate:('Source -> bool) -> source:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Source
+
+ + + + +

Bypasses elements in an observable sequence as long as a specified condition is true and then returns the remaining elements.

+ +
+ + + skipWhilei predicate source + +
+ Signature: predicate:('Source -> int -> bool) -> source:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Source
+
+ + + + +

Bypasses elements in an observable sequence as long as a specified condition is true and then returns the remaining elements. +The element's index is used in the logic of the predicate functio

+ +
+ + + startWith values source + +
+ Signature: values:'?6729 -> source:IObservable<'T> -> IObservable<'T>
+ Type parameters: '?6729, 'T
+
+ + + + +

Prepends a sequence of values to an observable sequence.

+ +
+ + + subscribe onNext observable + +
+ Signature: onNext:('T -> unit) -> observable:IObservable<'T> -> IDisposable
+ Type parameters: 'T
+
+ + + + +

Subscribes to the Observable with a next fuction.

+ +
+ + + subscribeObserver observer observable + +
+ Signature: observer:IObserver<'T> -> observable:IObservable<'T> -> IDisposable
+ Type parameters: 'T
+
+ + + + +

Subscribes to the observable with the given observer

+ +
+ + + subscribeOn context source + +
+ Signature: context:SynchronizationContext -> source:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Source
+
+ + + + +

Wraps the source sequence in order to run its subscription and unsubscription logic +on the specified scheduler. This operation is not commonly used; This only performs +the side-effects of subscription and unsubscription on the specified scheduler. + In order to invoke observer callbacks on a scheduler, use 'observeOn'

+ +
+ + + subscribeWithCallbacks (...) + +
+ Signature: onNext:('T -> unit) -> onError:(exn -> unit) -> onCompleted:(unit -> unit) -> observable:IObservable<'T> -> IDisposable
+ Type parameters: 'T
+
+ + + + +

Subscribes to the observable with all three callbacks

+ +
+ + + subscribeWithCompletion (...) + +
+ Signature: onNext:('T -> unit) -> onCompleted:(unit -> unit) -> observable:IObservable<'T> -> IDisposable
+ Type parameters: 'T
+
+ + + + +

Subscribes to the Observable with a next and a completion callback.

+ +
+ + + subscribeWithError (...) + +
+ Signature: onNext:('T -> unit) -> onError:(exn -> unit) -> observable:IObservable<'T> -> IDisposable
+ Type parameters: 'T
+
+ + + + +

Subscribes to the Observable with a next and an error-function.

+ +
+ + + switch sources + +
+ Signature: sources:IObservable<IObservable<'Source>> -> IObservable<'Source>
+ Type parameters: 'Source
+
+ + + + +

Transforms an observable sequence of observable sequences into an +observable sequence producing values only from the most recent +observable sequence.Each time a new inner observable sequnce is recieved, +unsubscribe from the previous inner sequence

+ +
+ + + switchTask sources + +
+ Signature: sources:IObservable<Task<'Source>> -> IObservable<'Source>
+ Type parameters: 'Source
+
+ + + + +

Transforms an observable sequence of tasks into an observable sequence +producing values only from the most recent observable sequence. +Each time a new task is received, the previous task's result is ignored.

+ +
+ + + synchronize source + +
+ Signature: source:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Source
+
+ + + + +

Synchronizes the observable sequence so that notifications cannot be delivered concurrently +this voerload is useful to "fix" and observable sequence that exhibits concurrent +callbacks on individual observers, which is invalid behavior for the query processor

+ +
+ + + synchronizeGate gate source + +
+ Signature: gate:obj -> source:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Source
+
+ + + + +

Synchronizes the observable sequence such that observer notifications +cannot be delivered concurrently, using the specified gate object.This +overload is useful when writing n-ary query operators, in order to prevent +concurrent callbacks from different sources by synchronizing on a common gate object.

+ +
+ + + take n source + +
+ Signature: n:int -> source:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Source
+
+ + + + +

Takes n elements (from the beginning of an observable sequence? )

+ +
+ + + takeLast count source + +
+ Signature: count:int -> source:IObservable<'?6754> -> IObservable<'?6754>
+ Type parameters: '?6754
+
+ + + + +

Returns a specified number of contiguous elements from the end of an obserable sequence

+ +
+ + + takeLastBuffer duration source + +
+ Signature: duration:TimeSpan -> source:IObservable<'Source> -> IObservable<IList<'Source>>
+ Type parameters: 'Source
+
+ + + + +

Returns a list with the elements within the specified duration from the end of the observable source sequence.

+ +
+ + + takeLastBufferCount count source + +
+ Signature: count:int -> source:IObservable<'Source> -> IObservable<IList<'Source>>
+ Type parameters: 'Source
+
+ + + + +

Returns a list with the specified number of contiguous elements from the end of an observable sequence.

+ +
+ + + takeLastSpan duration source + +
+ Signature: duration:TimeSpan -> source:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Source
+
+ + + + +

Returns elements within the specified duration from the end of the observable source sequence.

+ +
+ + + takeUntilOther other source + +
+ Signature: other:IObservable<'Other> -> source:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Other, 'Source
+
+ + + + +

Returns the elements from the source observable sequence until the other produces and element

+ +
+ + + takeUntilTime endtime source + +
+ Signature: endtime:DateTimeOffset -> source:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Source
+
+ + + + +

Returns the elements from the source observable until the specified time

+ +
+ + + takeWhile predicate source + +
+ Signature: predicate:('Source -> bool) -> source:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Source
+
+ + + + +

Returns elements from an observable sequence as long as a specified condition is true.

+ +
+ + + takeWhilei predicate source + +
+ Signature: predicate:('Source -> int -> bool) -> source:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Source
+
+ + + + +

Returns elements from an observable sequence as long as a specified condition is true. +The element's index is used in the logic of the predicate functi

+ +
+ + + thenMap map source + +
+ Signature: map:('Source -> 'Result) -> source:IObservable<'Source> -> Plan<'Result>
+ Type parameters: 'Source, 'Result
+
+ + + + +

matches when the observable sequence has an available element and +applies the map

+ +
+ + + throttle dueTime source + +
+ Signature: dueTime:TimeSpan -> source:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Source
+
+ + + + +

Ignores elements from an observable sequence which are followed by another element within a specified relative time duration.

+ +
+ + + throttleComputed (...) + +
+ Signature: source:IObservable<'Source> -> throttleDurationSelector:('Source -> IObservable<'Throttle>) -> IObservable<'Source>
+ Type parameters: 'Source, 'Throttle
+
+ + + + +

Ignores elements from an observable sequence which are followed by another value within a computed throttle duration

+ +
+ + + throw except + +
+ Signature: except:exn -> IObservable<'Result>
+ Type parameters: 'Result
+
+ + + + +

Returns an observable sequence that terminates with an exception.

+ +
+ + + timeInterval source + +
+ Signature: source:IObservable<'Source> -> IObservable<TimeInterval<'Source>>
+ Type parameters: 'Source
+
+ + + + +

Records the time interval between consecutive elements in an observable sequence.

+ +
+ + + timeout timeout source + +
+ Signature: timeout:DateTimeOffset -> source:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Source
+
+ + + + +

Applies a timeout policy to the observable sequence based on an absolute time. +If the sequence doesn't terminate before the specified absolute due time, a TimeoutException is propagated to the observer.

+ +
+ + + timeout2Duration (...) + +
+ Signature: timeout:IObservable<'Timeout> -> durationSelector:('Source -> IObservable<'Timeout>) -> source:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Timeout, 'Source
+
+ + + + +

Applies a timeout policy to the observable sequence based on an initial timeout duration +for the first element, and a timeout duration computed for each subsequent element. +If the next element isn't received within the computed duration starting from its predecessor, +a TimeoutException is propagated to the observer.

+ +
+ + + timeout2DurationOther (...) + +
+ Signature: timeout:IObservable<'Timeout> -> durationSelector:('Source -> IObservable<'Timeout>) -> other:IObservable<'Source> -> source:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Timeout, 'Source
+
+ + + + +

Applies a timeout policy to the observable sequence based on an initial timeout duration for the first +element, and a timeout duration computed for each subsequent element. +If the next element isn't received within the computed duration starting from its predecessor, +the other observable sequence is used to produce future messages from that point on.

+ +
+ + + timeoutDuration durationSelector source + +
+ Signature: durationSelector:('Source -> IObservable<'Timeout>) -> source:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Source, 'Timeout
+
+ + + + +

Applies a timeout policy to the observable sequence based on a timeout duration computed for each element. +If the next element isn't received within the computed duration starting from its predecessor, +a TimeoutException is propagated to the observer.

+ +
+ + + timeoutOther timeout other source + +
+ Signature: timeout:DateTimeOffset -> other:IObservable<'Source> -> source:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Source
+
+ + + + +

Applies a timeout policy to the observable sequence based on an absolute time. +If the sequence doesn't terminate before the specified absolute due time, the other +observable sequence is used to produce future messages from that point on.

+ +
+ + + timeoutSpan timeout source + +
+ Signature: timeout:TimeSpan -> source:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Source
+
+ + + + +

Applies a timeout policy for each element in the observable sequence. +If the next element isn't received within the specified timeout duration starting from its +predecessor, a TimeoutException is propagated to the observer.

+ +
+ + + timeoutSpanOther timeout other source + +
+ Signature: timeout:TimeSpan -> other:IObservable<'Source> -> source:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Source
+
+ + + + +

Applies a timeout policy for each element in the observable sequence. +If the next element isn't received within the specified timeout duration starting from +its predecessor, the other observable sequence is used to produce future messages from that point on.

+ +
+ + + timer dueTime + +
+ Signature: dueTime:DateTimeOffset -> IObservable<int64>
+
+
+ + + + +

Returns an observable sequence that produces a single value at the specified absolute due time.

+ +
+ + + timerPeriod dueTime period + +
+ Signature: dueTime:DateTimeOffset -> period:TimeSpan -> IObservable<int64>
+
+
+ + + + +

Returns an observable sequence that periodically produces a value starting at the specified initial absolute due time.

+ +
+ + + timerSpan dueTime + +
+ Signature: dueTime:TimeSpan -> IObservable<int64>
+
+
+ + + + +

Returns an observable sequence that produces a single value after the specified relative due time has elapsed.

+ +
+ + + timerSpanPeriod (dueTime, period) + +
+ Signature: (dueTime:TimeSpan * period:TimeSpan) -> IObservable<int64>
+
+
+ + + + +

Returns an observable sequence that periodically produces a value after the specified +initial relative due time has elapsed.

+ +
+ + + timestamp source + +
+ Signature: source:IObservable<'Source> -> IObservable<Timestamped<'Source>>
+ Type parameters: 'Source
+
+ + + + +

Timestamps each element in an observable sequence using the local system clock.

+ +
+ + + toArray source + +
+ Signature: source:IObservable<'?6808> -> IObservable<'?6808 []>
+ Type parameters: '?6808
+
+ + + + +

Creates an array from an observable sequence +Creates an array from an observable sequence.

+ +
+ + + toDictionary keySelector source + +
+ Signature: keySelector:Func<'?6810,'?6811> -> source:IObservable<'?6810> -> IObservable<IDictionary<'?6811,'?6810>>
+ Type parameters: '?6810, '?6811
+
+ + + + +

Creates an observable sequence according to a specified key selector function

+ +
+ + + toDictionaryCompareElements (...) + +
+ Signature: keySelector:('Source -> 'Key) -> elementSelector:('Source -> 'Elm) -> comparer:'Key -> source:'Source -> IObservable<IDictionary<'Key,'Elm>>
+ Type parameters: 'Source, 'Key, 'Elm
+
+ + + + +

Creates an observable sequence according to a specified key selector function

+ +
+ + + toDictionaryComparer (...) + +
+ Signature: keySelector:('Source -> 'Key) -> comparer:'Key -> source:'Source -> IObservable<IDictionary<'Key,'Source>>
+ Type parameters: 'Source, 'Key
+
+ + + + +

Creates an observable sequence according to a specified key selector function +and an a comparer

+ +
+ + + toDictionaryElements (...) + +
+ Signature: keySelector:('Source -> 'Key) -> elementSelector:('Source -> 'Elm) -> source:'Source -> IObservable<IDictionary<'Key,'Elm>>
+ Type parameters: 'Source, 'Key, 'Elm
+
+ + + + +

Creates an observable sequence according to a specified key selector function

+ +
+ + + toEnumerable source + +
+ Signature: source:IObservable<'T> -> IEnumerable<'T>
+ Type parameters: 'T
+
+ + + + +

Converts an observable into a seq

+ +
+ + + toEvent source + +
+ Signature: source:IObservable<unit> -> IEventSource<unit>
+
+
+ + + + +

Exposes and observable sequence as an object with an Action based .NET event

+ +
+ + + toEventType source + +
+ Signature: source:IObservable<'Source> -> IEventSource<'Source>
+ Type parameters: 'Source
+
+ + + + +

Exposes an observable sequence as an object with an Action<'Source> based .NET event.

+ +
+ + + toList source + +
+ Signature: source:IObservable<'?6827> -> IObservable<IList<'?6827>>
+ Type parameters: '?6827
+
+ + + + +

Creates a list from an observable sequence

+ +
+ + + toLookup keySelector source + +
+ Signature: keySelector:('Source -> 'Key) -> source:IObservable<'Source> -> IObservable<ILookup<'Key,'Source>>
+ Type parameters: 'Source, 'Key
+
+ + + + +

Creates a lookup from an observable sequence according to a specified key selector function.

+ +
+ + + toLookupCompare (...) + +
+ Signature: keySelector:('Source -> 'Key) -> comparer:IEqualityComparer<'Key> -> source:IObservable<'Source> -> IObservable<ILookup<'Key,'Source>>
+ Type parameters: 'Source, 'Key
+
+ + + + +

Creates a lookup from an observable sequence according to a specified key selector function, and a comparer.

+ +
+ + + toLookupCompareElement (...) + +
+ Signature: keySelector:('Source -> 'Key) -> elementSelector:('Source -> 'Element) -> source:IObservable<'Source> -> IObservable<ILookup<'Key,'Element>>
+ Type parameters: 'Source, 'Key, 'Element
+
+ + + + +

Creates a lookup from an observable sequence according to a specified key selector function, and an element selector function.

+ +
+ + + toLookupElement (...) + +
+ Signature: keySelector:('Source -> 'Key) -> elementSelector:('Source -> 'Element) -> comparer:IEqualityComparer<'Key> -> source:IObservable<'Source> -> IObservable<ILookup<'Key,'Element>>
+ Type parameters: 'Source, 'Key, 'Element
+
+ + + + +

Creates a lookup from an observable sequence according to a specified key selector function, and an element selector function.

+ +
+ + + toObservable source + +
+ Signature: source:seq<'T> -> IObservable<'T>
+ Type parameters: 'T
+
+ + + + +

Converts a seq into an observable

+ +
+ + + using resourceFactory observableFactory + +
+ Signature: resourceFactory:(unit -> 'TResource) -> observableFactory:('TResource -> IObservable<'Result>) -> IObservable<'Result>
+ Type parameters: 'TResource, 'Result
+
+ + + + +

Constructs an observable sequence that depends on a resource object, whose +lifetime is tied to the resulting observable sequence's lifetime.

+ +
+ + + wait source + +
+ Signature: source:IObservable<'?6848> -> '?6848
+ Type parameters: '?6848
+
+ + + + +

waits for the observable sequence to complete and returns the last +element of the sequence. If the sequence terminates with OnError +notification, the exception is thrown

+ +
+ + + whileLoop condition source + +
+ Signature: condition:(unit -> bool) -> source:IObservable<'?6850> -> IObservable<'?6850>
+ Type parameters: '?6850
+
+ + + + +

Repeats the given function as long as the specified condition holds +where the condition is evaluated before each repeated source is +subscribed to

+ +
+ + + window windowClosingSelector source + +
+ Signature: windowClosingSelector:(unit -> IObservable<'WindowClosing>) -> source:IObservable<'Source> -> IObservable<IObservable<'Source>>
+ Type parameters: 'WindowClosing, 'Source
+
+ + + + +

Projects each element of an observable sequence into consecutive non-overlapping windows. +windowClosingSelector - A function invoked to define the boundaries of the produced windows. +A new window is started when the previous one is closed

+ +
+ + + windowBounded windowBoundaries source + +
+ Signature: windowBoundaries:IObservable<'WindowBoundary> -> source:IObservable<'Source> -> IObservable<IObservable<'Source>>
+ Type parameters: 'WindowBoundary, 'Source
+
+ + + + +

Projects each element of an observable sequence into consecutive non-overlapping windows +windowBoundaries - Sequence of window boundary markers. The current window is closed +and a new window is opened upon receiving a boundary marker

+ +
+ + + windowCount count source + +
+ Signature: count:int -> source:IObservable<'Source> -> IObservable<IObservable<'Source>>
+ Type parameters: 'Source
+
+ + + + +

Projects each element of an observable sequence into consecutive non-overlapping windows +which are produced based on element count information.

+ +
+ + + windowCountSkip count skip source + +
+ Signature: count:int -> skip:int -> source:IObservable<'Source> -> IObservable<IObservable<'Source>>
+ Type parameters: 'Source
+
+ + + + +

Projects each element of an observable sequence into zero or more windows which are produced based on element count information

+ +
+ + + windowOpenClose (...) + +
+ Signature: windowOpenings:IObservable<'WinOpen> -> windowClosingSelector:('WinOpen -> IObservable<'WinClose>) -> source:IObservable<'Source> -> IObservable<IObservable<'Source>>
+ Type parameters: 'WinOpen, 'WinClose, 'Source
+
+ + + + +

Projects each element of an observable sequence into zero or more windows. +windowOpenings - Observable sequence whose elements denote the creation of new windows. +windowClosingSelector - A function invoked to define the closing of each produced window.

+ +
+ + + windowTimeCount timeSpan count source + +
+ Signature: timeSpan:TimeSpan -> count:int -> source:IObservable<'Source> -> IObservable<IObservable<'Source>>
+ Type parameters: 'Source
+
+ + + + +

Projects each element of an observable sequence into a window that is completed when either it's full or +a given amount of time has elapsed. +A useful real-world analogy of this overload is the behavior of a ferry leaving the dock when all seats are +taken, or at the scheduled time of departure, whichever event occurs first

+ +
+ + + windowTimeShift (...) + +
+ Signature: timeSpan:TimeSpan -> timeShift:TimeSpan -> source:IObservable<'Source> -> IObservable<IObservable<'Source>>
+ Type parameters: 'Source
+
+ + + + +

Projects each element of an observable sequence into consecutive non-overlapping windows. +windowBoundaries - Sequence of window boundary markers. The current window is closed and a new window is opened upon receiving a boundary marker.

+ +
+ + + windowTimeSpan timeSpan source + +
+ Signature: timeSpan:TimeSpan -> source:IObservable<'Source> -> IObservable<IObservable<'Source>>
+ Type parameters: 'Source
+
+ + + + +

Projects each element of an observable sequence into consecutive non-overlapping windows +which are produced based on timing information.

+ +
+ + + zip first second resultSelector + +
+ Signature: first:IObservable<'Source1> -> second:IObservable<'Source2> -> resultSelector:('Source1 -> 'Source2 -> 'Result) -> IObservable<'Result>
+ Type parameters: 'Source1, 'Source2, 'Result
+
+ + + + +

Merges two observable sequences into one observable sequence by combining their elements in a pairwise fashion.

+ +
+ + + zipArray sources + +
+ Signature: sources:IObservable<'Source> [] -> IObservable<IList<'Source>>
+ Type parameters: 'Source
+
+ + + + +

Merges the specified observable sequences into one observable sequence by emitting +a list with the elements of the observable sequences at corresponding indexe

+ +
+ + + zipSeq sources + +
+ Signature: sources:seq<IObservable<'Source>> -> IObservable<IList<'Source>>
+ Type parameters: 'Source
+
+ + + + +

Merges the specified observable sequences into one observable sequence by emitting a + list with the elements of the observable sequences at corresponding indexes.

+ +
+ + + zipSeqMap resultSelector sources + +
+ Signature: resultSelector:(IList<'S> -> 'R) -> sources:seq<IObservable<'S>> -> IObservable<'R>
+ Type parameters: 'S, 'R
+
+ + + + +

Merges the specified observable sequences into one observable sequence by using +the selector function whenever all of the observable sequences have produced an +element at a corresponding index.

+ +
+ + + zipWithSeq resultSelector second first + +
+ Signature: resultSelector:('Source1 -> 'Source2 -> 'Result) -> second:seq<'Source2> -> first:IObservable<'Source1> -> IObservable<'Result>
+ Type parameters: 'Source1, 'Source2, 'Result
+
+ + + + +

Merges an observable sequence and an enumerable sequence into one +observable sequence by using the selector function.

+ +
+ +
+
+ F# Project + +
+
+
+ Fork me on GitHub + + + diff --git a/reference/index.html b/reference/index.html new file mode 100644 index 0000000..b5a5d05 --- /dev/null +++ b/reference/index.html @@ -0,0 +1,87 @@ + + + + + Namespaces - FSharp.Control.Reactive + + + + + + + + + + + + + + + +
+ +
+
+
+ + +

FSharp.Control.Reactive

+ +

FSharp.Control.Reactive Namespace

+
+ + + + + + + + + + + + + + +
ModuleDescription
+ Builders +
+ Observable +

The Reactive module provides operators for working with IObservable<_> in F#.

+
+ +
+ +
+
+ F# Project + +
+
+
+ Fork me on GitHub + + + diff --git a/tutorial.html b/tutorial.html new file mode 100644 index 0000000..4edd28e --- /dev/null +++ b/tutorial.html @@ -0,0 +1,64 @@ + + + + + tutorial + + + + + + + + + + + + + + + +
+ +
+
+
+ +

+ TODO: Add Getting Started tutorial + *

+ + +
+
+ F# Project + +
+
+
+ Fork me on GitHub + + + From dd45358091db0a2af2d60f6e07165aea48a69be4 Mon Sep 17 00:00:00 2001 From: Ryan Riley Date: Mon, 13 Oct 2014 23:35:50 -0500 Subject: [PATCH 02/18] Update generated documentation for version 2.3.7 --- ...tive-buildersmodule-observablebuilder.html | 56 +- ...eactive-buildersmodule-rxquerybuilder.html | 124 +- ...sharp-control-reactive-buildersmodule.html | 8 +- ...arp-control-reactive-observablemodule.html | 1000 ++++++++--------- 4 files changed, 594 insertions(+), 594 deletions(-) diff --git a/reference/fsharp-control-reactive-buildersmodule-observablebuilder.html b/reference/fsharp-control-reactive-buildersmodule-observablebuilder.html index 9317f2f..4f66fd6 100644 --- a/reference/fsharp-control-reactive-buildersmodule-observablebuilder.html +++ b/reference/fsharp-control-reactive-buildersmodule-observablebuilder.html @@ -48,10 +48,10 @@

Constructors

- + new() -
+
Signature: unit -> ObservableBuilder
@@ -74,10 +74,10 @@

Instance members

- + Bind(m, f) -
+
Signature: (m:IObservable<'?6098> * f:('?6098 -> IObservable<'?6099>)) -> IObservable<'?6099>
Type parameters: '?6098, '?6099
@@ -92,10 +92,10 @@

Instance members

- + Combine(comp1, comp2) -
+
Signature: (comp1:IObservable<'?6101> * comp2:IObservable<'?6101>) -> IObservable<'?6101>
Type parameters: '?6101
@@ -110,10 +110,10 @@

Instance members

- + Delay(f) -
+
Signature: (f:(unit -> IObservable<'?6103>)) -> IObservable<'?6103>
Type parameters: '?6103
@@ -128,10 +128,10 @@

Instance members

- + For(sequence, body) -
+
Signature: (sequence:IEnumerable<'?6107> * body:Func<'?6107,IObservable<'?6108>>) -> IObservable<'?6108>
Type parameters: '?6107, '?6108
@@ -146,10 +146,10 @@

Instance members

- + Return(x) -
+
Signature: x:'?6094 -> IObservable<'?6094>
Type parameters: '?6094
@@ -164,10 +164,10 @@

Instance members

- + ReturnFrom(m) -
+
Signature: m:IObservable<'?6096> -> IObservable<'?6096>
Type parameters: '?6096
@@ -182,10 +182,10 @@

Instance members

- + TryFinally(m, compensation) -
+
Signature: (m:IObservable<'?6113> * compensation:(unit -> unit)) -> IObservable<'?6113>
Type parameters: '?6113
@@ -200,10 +200,10 @@

Instance members

- + TryWith(m, h) -
+
Signature: (m:IObservable<'?6110> * h:('?6111 -> IObservable<'?6110>)) -> IObservable<'?6110>
Type parameters: '?6110, '?6111
@@ -218,10 +218,10 @@

Instance members

- + Using(res, body) -
+
Signature: (res:'?6115 * body:Func<'?6115,IObservable<'?6116>>) -> IObservable<'?6116>
Type parameters: '?6115, '?6116
@@ -236,10 +236,10 @@

Instance members

- + While(guard, m) -
+
Signature: (guard:Func<bool> * m:IObservable<'?6118>) -> IObservable<'?6118>
Type parameters: '?6118
@@ -254,10 +254,10 @@

Instance members

- + Yield(x) -
+
Signature: x:'?6120 -> IObservable<'?6120>
Type parameters: '?6120
@@ -272,10 +272,10 @@

Instance members

- + YieldFrom(m) -
+
Signature: m:IObservable<'?6122> -> IObservable<'?6122>
Type parameters: '?6122
@@ -290,10 +290,10 @@

Instance members

- + Zero() -
+
Signature: unit -> IObservable<'?6105>
Type parameters: '?6105
diff --git a/reference/fsharp-control-reactive-buildersmodule-rxquerybuilder.html b/reference/fsharp-control-reactive-buildersmodule-rxquerybuilder.html index 27a0c2e..ff630e8 100644 --- a/reference/fsharp-control-reactive-buildersmodule-rxquerybuilder.html +++ b/reference/fsharp-control-reactive-buildersmodule-rxquerybuilder.html @@ -49,10 +49,10 @@

Constructors

- + new() -
+
Signature: unit -> RxQueryBuilder
@@ -75,10 +75,10 @@

Instance members

- + All(s, predicate) -
+
Signature: (s:IObservable<'?6148> * predicate:('?6148 -> bool)) -> IObservable<bool>
Type parameters: '?6148
@@ -93,10 +93,10 @@

Instance members

- + Contains(s, key) -
+
Signature: (s:IObservable<'?6150> * key:'?6150) -> IObservable<bool>
Type parameters: '?6150
@@ -111,10 +111,10 @@

Instance members

- + Count(s) -
+
Signature: s:IObservable<'?6146> -> IObservable<int>
Type parameters: '?6146
@@ -129,10 +129,10 @@

Instance members

- + Distinct(s) -
+
Signature: s:IObservable<'?6152> -> IObservable<'?6152>
Type parameters: '?6152
@@ -147,10 +147,10 @@

Instance members

- + ExactlyOne(s) -
+
Signature: s:IObservable<'?6154> -> '?6154
Type parameters: '?6154
@@ -165,10 +165,10 @@

Instance members

- + ExactlyOneOrDefault(s) -
+
Signature: s:IObservable<'?6156> -> '?6156
Type parameters: '?6156
@@ -183,10 +183,10 @@

Instance members

- + Find(s, predicate) -
+
Signature: (s:IObservable<'?6158> * predicate:('?6158 -> bool)) -> '?6158
Type parameters: '?6158
@@ -201,10 +201,10 @@

Instance members

- + For(s, body) -
+
Signature: (s:IObservable<'?6126> * body:('?6126 -> IObservable<'?6127>)) -> IObservable<'?6127>
Type parameters: '?6126, '?6127
@@ -219,10 +219,10 @@

Instance members

- + GroupBy(s, keySelector) -
+
Signature: (s:IObservable<'?6180> * keySelector:('?6180 -> '?6181)) -> IObservable<IGroupedObservable<'?6181,'?6180>>
Type parameters: '?6180, '?6181
@@ -237,10 +237,10 @@

Instance members

- + GroupJoin(...) -
+
Signature: (s1:IObservable<'?6193> * s2:IObservable<'?6194> * s1KeySelector:('?6193 -> IObservable<'?6195>) * s2KeySelector:('?6194 -> IObservable<'?6196>) * resultSelector:('?6193 -> IObservable<'?6194> -> '?6197)) -> IObservable<'?6197>
Type parameters: '?6193, '?6194, '?6195, '?6196, '?6197
@@ -255,10 +255,10 @@

Instance members

- + GroupValBy(...) -
+
Signature: (s:IObservable<'?6183> * resultSelector:('?6183 -> '?6184) * keySelector:('?6183 -> '?6185)) -> IObservable<IGroupedObservable<'?6185,'?6184>>
Type parameters: '?6183, '?6184, '?6185
@@ -273,10 +273,10 @@

Instance members

- + Head(s) -
+
Signature: s:IObservable<'?6160> -> '?6160
Type parameters: '?6160
@@ -291,10 +291,10 @@

Instance members

- + HeadOrDefault(s) -
+
Signature: s:IObservable<'?6162> -> '?6162
Type parameters: '?6162
@@ -309,10 +309,10 @@

Instance members

- + Iter(s, selector) -
+
Signature: (s:IObservable<'?6203> * selector:('?6203 -> unit)) -> IObservable<'?6203>
Type parameters: '?6203
@@ -327,10 +327,10 @@

Instance members

- + Join(...) -
+
Signature: (s1:IObservable<'?6187> * s2:IObservable<'?6188> * s1KeySelector:('?6187 -> IObservable<'?6189>) * s2KeySelector:('?6188 -> IObservable<'?6190>) * resultSelector:('?6187 -> '?6188 -> '?6191)) -> IObservable<'?6191>
Type parameters: '?6187, '?6188, '?6189, '?6190, '?6191
@@ -345,10 +345,10 @@

Instance members

- + Last(s) -
+
Signature: s:IObservable<'?6164> -> '?6164
Type parameters: '?6164
@@ -363,10 +363,10 @@

Instance members

- + LastOrDefault(s) -
+
Signature: s:IObservable<'?6166> -> '?6166
Type parameters: '?6166
@@ -381,10 +381,10 @@

Instance members

- + MaxBy(s, valueSelector) -
+
Signature: (s:IObservable<'a> * valueSelector:('a -> 'b)) -> IObservable<IList<'a>>
Type parameters: 'a, 'b
@@ -399,10 +399,10 @@

Instance members

- + MinBy(s, valueSelector) -
+
Signature: (s:IObservable<'a> * valueSelector:('a -> 'b)) -> IObservable<IList<'a>>
Type parameters: 'a, 'b
@@ -417,10 +417,10 @@

Instance members

- + Nth(s, index) -
+
Signature: (s:IObservable<'a> * index:int) -> IObservable<'a>
Type parameters: 'a
@@ -435,10 +435,10 @@

Instance members

- + Select(s, selector) -
+
Signature: (s:IObservable<'?6129> * selector:('?6129 -> '?6130)) -> IObservable<'?6130>
Type parameters: '?6129, '?6130
@@ -453,10 +453,10 @@

Instance members

- + Skip(s, count) -
+
Signature: (s:IObservable<'?6140> * count:int) -> IObservable<'?6140>
Type parameters: '?6140
@@ -471,10 +471,10 @@

Instance members

- + SkipWhile(s, predicate) -
+
Signature: (s:IObservable<'?6138> * predicate:('?6138 -> bool)) -> IObservable<'?6138>
Type parameters: '?6138
@@ -489,10 +489,10 @@

Instance members

- + SumBy(s, valueSelector) -
+
Signature: (s:IObservable<'?6176> * valueSelector:('?6176 -> ^?6177)) -> IObservable<^?6178>
Type parameters: '?6176, ^?6177, ^?6178
@@ -507,10 +507,10 @@

Instance members

- + Take(s, count) -
+
Signature: (s:IObservable<'?6136> * count:int) -> IObservable<'?6136>
Type parameters: '?6136
@@ -525,10 +525,10 @@

Instance members

- + TakeWhile(s, predicate) -
+
Signature: (s:IObservable<'?6134> * predicate:('?6134 -> bool)) -> IObservable<'?6134>
Type parameters: '?6134
@@ -543,10 +543,10 @@

Instance members

- + Where(s, predicate) -
+
Signature: (s:IObservable<'?6132> * predicate:('?6132 -> bool)) -> IObservable<'?6132>
Type parameters: '?6132
@@ -561,10 +561,10 @@

Instance members

- + Yield(value) -
+
Signature: value:'?6144 -> IObservable<'?6144>
Type parameters: '?6144
@@ -579,10 +579,10 @@

Instance members

- + Zero() -
+
Signature: unit -> IObservable<'?6142>
Type parameters: '?6142
@@ -597,10 +597,10 @@

Instance members

- + Zip(s1, s2, resultSelector) -
+
Signature: (s1:IObservable<'?6199> * s2:IObservable<'?6200> * resultSelector:('?6199 -> '?6200 -> '?6201)) -> IObservable<'?6201>
Type parameters: '?6199, '?6200, '?6201
diff --git a/reference/fsharp-control-reactive-buildersmodule.html b/reference/fsharp-control-reactive-buildersmodule.html index f35598b..7248721 100644 --- a/reference/fsharp-control-reactive-buildersmodule.html +++ b/reference/fsharp-control-reactive-buildersmodule.html @@ -76,10 +76,10 @@

Functions and values

- + observe -
+
Signature: ObservableBuilder
@@ -94,10 +94,10 @@

Functions and values

- + rxquery -
+
Signature: RxQueryBuilder
diff --git a/reference/fsharp-control-reactive-observablemodule.html b/reference/fsharp-control-reactive-observablemodule.html index 1dec3f3..73cd20a 100644 --- a/reference/fsharp-control-reactive-observablemodule.html +++ b/reference/fsharp-control-reactive-observablemodule.html @@ -51,10 +51,10 @@

Functions and values

- + aggregate accumulator source -
+
Signature: accumulator:('?6295 -> '?6295 -> '?6295) -> source:IObservable<'?6295> -> IObservable<'?6295>
Type parameters: '?6295
@@ -71,10 +71,10 @@

Functions and values

- + all pred source -
+
Signature: pred:Func<'?6297,bool> -> source:IObservable<'?6297> -> IObservable<bool>
Type parameters: '?6297
@@ -90,10 +90,10 @@

Functions and values

- + amb second first -
+
Signature: second:IObservable<'?6299> -> first:IObservable<'?6299> -> IObservable<'?6299>
Type parameters: '?6299
@@ -109,10 +109,10 @@

Functions and values

- + ambArray source -
+
Signature: source:IObservable<'T> [] -> IObservable<'T>
Type parameters: 'T
@@ -128,10 +128,10 @@

Functions and values

- + ambSeq source -
+
Signature: source:seq<IObservable<'T>> -> IObservable<'T>
Type parameters: 'T
@@ -147,10 +147,10 @@

Functions and values

- + any source -
+
Signature: source:IObservable<'Source> -> IObservable<bool>
Type parameters: 'Source
@@ -166,10 +166,10 @@

Functions and values

- + apply f m -
+
Signature: f:IObservable<('?6312 -> '?6313)> -> m:IObservable<'?6312> -> IObservable<'?6313>
Type parameters: '?6312, '?6313
@@ -185,10 +185,10 @@

Functions and values

- + asObservable source -
+
Signature: source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
@@ -204,10 +204,10 @@

Functions and values

- + bind f m -
+
Signature: f:('T -> IObservable<'TNext>) -> m:IObservable<'T> -> IObservable<'TNext>
Type parameters: 'T, 'TNext
@@ -223,10 +223,10 @@

Functions and values

- + both second first -
+
Signature: second:IObservable<'?6315> -> first:IObservable<'?6316> -> Pattern<'?6316,'?6315>
Type parameters: '?6315, '?6316
@@ -242,10 +242,10 @@

Functions and values

- + buffer bufferClosingSelector source -
+
Signature: bufferClosingSelector:IObservable<'BufferClosing> -> source:IObservable<'?6319> -> IObservable<IList<'?6319>>
Type parameters: 'BufferClosing, '?6319
@@ -260,10 +260,10 @@

Functions and values

- + bufferBounded boundaries source -
+
Signature: boundaries:IObservable<'BufferClosing> -> source:IObservable<'T> -> IObservable<IList<'T>>
Type parameters: 'BufferClosing, 'T
@@ -280,10 +280,10 @@

Functions and values

- + bufferCount count source -
+
Signature: count:int -> source:IObservable<'?6324> -> IObservable<IList<'?6324>>
Type parameters: '?6324
@@ -300,10 +300,10 @@

Functions and values

- + bufferCountSkip count skip source -
+
Signature: count:int -> skip:int -> source:IObservable<'?6326> -> IObservable<IList<'?6326>>
Type parameters: '?6326
@@ -320,10 +320,10 @@

Functions and values

- + bufferFork (...) -
+
Signature: bufferOpenings:IObservable<'BufferOpening> -> bufferClosingSelector:('BufferOpening -> IObservable<'T>) -> source:IObservable<'?6334> -> IObservable<IList<'?6334>>
Type parameters: 'BufferOpening, 'T, '?6334
@@ -341,10 +341,10 @@

Functions and values

- + bufferSpan timeSpan source -
+
Signature: timeSpan:TimeSpan -> source:IObservable<'?6328> -> IObservable<IList<'?6328>>
Type parameters: '?6328
@@ -361,10 +361,10 @@

Functions and values

- + bufferSpanCount timeSpan count source -
+
Signature: timeSpan:TimeSpan -> count:int -> source:IObservable<'?6330> -> IObservable<IList<'?6330>>
Type parameters: '?6330
@@ -382,10 +382,10 @@

Functions and values

- + bufferSpanShift (...) -
+
Signature: timeSpan:TimeSpan -> timeShift:TimeSpan -> source:IObservable<'?6336> -> IObservable<IList<'?6336>>
Type parameters: '?6336
@@ -402,10 +402,10 @@

Functions and values

- + case selector sources -
+
Signature: selector:(unit -> '?6340) -> sources:IDictionary<'?6340,IObservable<'?6341>> -> IObservable<'?6341>
Type parameters: '?6340, '?6341
@@ -422,10 +422,10 @@

Functions and values

- + caseDefault (...) -
+
Signature: selector:(unit -> 'Value) -> defaulSource:IObservable<'Result> -> sources:IDictionary<'Value,IObservable<'Result>> -> IObservable<'Result>
Type parameters: 'Value, 'Result
@@ -442,10 +442,10 @@

Functions and values

- + cast source -
+
Signature: source:IObservable<obj> -> IObservable<'CastType>
Type parameters: 'CastType
@@ -461,10 +461,10 @@

Functions and values

- + catch second first -
+
Signature: second:IObservable<'T> -> first:IObservable<'T> -> IObservable<'T>
Type parameters: 'T
@@ -481,10 +481,10 @@

Functions and values

- + catchArray sources -
+
Signature: sources:IObservable<'T> [] -> IObservable<'T>
Type parameters: 'T
@@ -500,10 +500,10 @@

Functions and values

- + catchSeq sources -
+
Signature: sources:seq<IObservable<'T>> -> IObservable<'T>
Type parameters: 'T
@@ -519,10 +519,10 @@

Functions and values

- + catchWith handler source -
+
Signature: handler:('?6348 -> IObservable<'?6349>) -> source:IObservable<'?6349> -> IObservable<'?6349>
Type parameters: '?6348, '?6349
@@ -539,10 +539,10 @@

Functions and values

- + chunkify source -
+
Signature: source:IObservable<'Source> -> seq<IList<'Source>>
Type parameters: 'Source
@@ -558,10 +558,10 @@

Functions and values

- + collect map source -
+
Signature: map:('Source -> IObservable<'Result>) -> source:seq<'Source> -> IObservable<'Result>
Type parameters: 'Source, 'Result
@@ -577,10 +577,10 @@

Functions and values

- + collectMerge source newCollector merge -
+
Signature: source:IObservable<'?6360> -> newCollector:(unit -> '?6361) -> merge:('?6361 -> '?6360 -> '?6361) -> IEnumerable<'?6361>
Type parameters: '?6360, '?6361
@@ -598,10 +598,10 @@

Functions and values

- + collectMergeInit (...) -
+
Signature: getInitialCollector:(unit -> '?6363) -> merge:('?6363 -> '?6364 -> '?6363) -> getNewCollector:('?6363 -> '?6363) -> source:IObservable<'?6364> -> IEnumerable<'?6363>
Type parameters: '?6363, '?6364
@@ -620,10 +620,10 @@

Functions and values

- + combineLatest source -
+
Signature: source:seq<IObservable<'T>> -> IObservable<IList<'T>>
Type parameters: 'T
@@ -641,10 +641,10 @@

Functions and values

- + combineLatestArray source -
+
Signature: source:IObservable<'T> [] -> IObservable<IList<'T>>
Type parameters: 'T
@@ -661,10 +661,10 @@

Functions and values

- + combineLatestMap map source -
+
Signature: map:(IList<'T> -> 'Result) -> source:seq<IObservable<'T>> -> IObservable<'Result>
Type parameters: 'T, 'Result
@@ -681,10 +681,10 @@

Functions and values

- + concat second first -
+
Signature: second:IObservable<'T> -> first:IObservable<'T> -> IObservable<'T>
Type parameters: 'T
@@ -701,10 +701,10 @@

Functions and values

- + concatArray sources -
+
Signature: sources:IObservable<'T> [] -> IObservable<'T>
Type parameters: 'T
@@ -721,10 +721,10 @@

Functions and values

- + concatInner sources -
+
Signature: sources:IObservable<IObservable<'T>> -> IObservable<'T>
Type parameters: 'T
@@ -741,10 +741,10 @@

Functions and values

- + concatSeq sources -
+
Signature: sources:seq<IObservable<'T>> -> IObservable<'T>
Type parameters: 'T
@@ -761,10 +761,10 @@

Functions and values

- + concatTasks sources -
+
Signature: sources:IObservable<Task<'T>> -> IObservable<'T>
Type parameters: 'T
@@ -781,10 +781,10 @@

Functions and values

- + connect source -
+
Signature: source:IConnectableObservable<'?6383> -> IDisposable
Type parameters: '?6383
@@ -803,10 +803,10 @@

Functions and values

- + contains value source -
+
Signature: value:'?6385 -> source:IObservable<'?6385> -> IObservable<bool>
Type parameters: '?6385
@@ -823,10 +823,10 @@

Functions and values

- + containsCompare comparer value source -
+
Signature: comparer:IEqualityComparer<'?6387> -> value:'?6387 -> source:IObservable<'?6387> -> IObservable<bool>
Type parameters: '?6387
@@ -843,10 +843,10 @@

Functions and values

- + count source -
+
Signature: source:IObservable<'?6389> -> IObservable<int>
Type parameters: '?6389
@@ -862,10 +862,10 @@

Functions and values

- + countSatisfy predicate source -
+
Signature: predicate:Func<'?6391,bool> -> source:IObservable<'?6391> -> IObservable<int>
Type parameters: '?6391
@@ -882,10 +882,10 @@

Functions and values

- + create subscribe -
+
Signature: subscribe:(IObserver<'Result> -> Action) -> IObservable<'Result>
Type parameters: 'Result
@@ -901,10 +901,10 @@

Functions and values

- + createWithDisposable subscribe -
+
Signature: subscribe:(IObserver<'Result> -> IDisposable) -> IObservable<'Result>
Type parameters: 'Result
@@ -920,10 +920,10 @@

Functions and values

- + defaultIfEmpty source -
+
Signature: source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
@@ -940,10 +940,10 @@

Functions and values

- + defaultIfEmptyIs defaultValue source -
+
Signature: defaultValue:'Source -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
@@ -959,10 +959,10 @@

Functions and values

- + defer observableFactory -
+
Signature: observableFactory:(unit -> IObservable<'Result>) -> IObservable<'Result>
Type parameters: 'Result
@@ -978,10 +978,10 @@

Functions and values

- + delay dueTime source -
+
Signature: dueTime:TimeSpan -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
@@ -998,10 +998,10 @@

Functions and values

- + delayMap delayDurationSelector source -
+
Signature: delayDurationSelector:('Source -> IObservable<'TDelay>) -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source, 'TDelay
@@ -1017,10 +1017,10 @@

Functions and values

- + delayMapFilter (...) -
+
Signature: delayDurationSelector:('Source -> IObservable<'TDelay>) -> subscriptionDelay:IObservable<'TDelay> -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source, 'TDelay
@@ -1036,10 +1036,10 @@

Functions and values

- + delaySubscription dueTime source -
+
Signature: dueTime:TimeSpan -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
@@ -1055,10 +1055,10 @@

Functions and values

- + delaySubscriptionUntil dueTime source -
+
Signature: dueTime:DateTimeOffset -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
@@ -1074,10 +1074,10 @@

Functions and values

- + delayUnitl dueTime source -
+
Signature: dueTime:DateTimeOffset -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
@@ -1094,10 +1094,10 @@

Functions and values

- + dematerialize source -
+
Signature: source:IObservable<Notification<'?6417>> -> IObservable<'?6417>
Type parameters: '?6417
@@ -1113,10 +1113,10 @@

Functions and values

- + distincKey keySelector source -
+
Signature: keySelector:Func<'Source,'Key> -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source, 'Key
@@ -1132,10 +1132,10 @@

Functions and values

- + distincKeyCompare (...) -
+
Signature: keySelector:Func<'Source,'Key> -> comparer:IEqualityComparer<'Key> -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source, 'Key
@@ -1151,10 +1151,10 @@

Functions and values

- + distinct source -
+
Signature: source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
@@ -1170,10 +1170,10 @@

Functions and values

- + distinctCompare comparer source -
+
Signature: comparer:IEqualityComparer<'Source> -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
@@ -1189,10 +1189,10 @@

Functions and values

- + distinctUntilChanged source -
+
Signature: source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
@@ -1208,10 +1208,10 @@

Functions and values

- + distinctUntilChangedCompare (...) -
+
Signature: comparer:IEqualityComparer<'Source> -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
@@ -1227,10 +1227,10 @@

Functions and values

- + distinctUntilChangedKey (...) -
+
Signature: keySelector:Func<'Source,'Key> -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source, 'Key
@@ -1246,10 +1246,10 @@

Functions and values

- + distinctUntilChangedKeyCompare (...) -
+
Signature: keySelector:Func<'Source,'Key> -> comparer:IEqualityComparer<'Key> -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source, 'Key
@@ -1265,10 +1265,10 @@

Functions and values

- + elementAt index source -
+
Signature: index:int -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
@@ -1284,10 +1284,10 @@

Functions and values

- + elementAtOrDefault index source -
+
Signature: index:int -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
@@ -1303,10 +1303,10 @@

Functions and values

- + empty -
+
Signature: IObservable<'T>
Type parameters: 'T
@@ -1322,10 +1322,10 @@

Functions and values

- + emptyWitness witness -
+
Signature: witness:'T -> IObservable<'T>
Type parameters: 'T
@@ -1341,10 +1341,10 @@

Functions and values

- + equals first second -
+
Signature: first:IObservable<'Source> -> second:IObservable<'Source> -> IObservable<bool>
Type parameters: 'Source
@@ -1360,10 +1360,10 @@

Functions and values

- + equalsCompare first second comparer -
+
Signature: first:IObservable<'Source> -> second:IObservable<'Source> -> comparer:IEqualityComparer<'Source> -> IObservable<bool>
Type parameters: 'Source
@@ -1379,10 +1379,10 @@

Functions and values

- + equalsSeq first second -
+
Signature: first:IObservable<'Source> -> second:seq<'Source> -> IObservable<bool>
Type parameters: 'Source
@@ -1398,10 +1398,10 @@

Functions and values

- + equalsSeqComparer first second comparer -
+
Signature: first:IObservable<'Source> -> second:seq<'Source> -> comparer:IEqualityComparer<'Source> -> IObservable<bool>
Type parameters: 'Source
@@ -1417,10 +1417,10 @@

Functions and values

- + error e -
+
Signature: e:exn -> IObservable<'?6455>
Type parameters: '?6455
@@ -1435,10 +1435,10 @@

Functions and values

- + exists predicate source -
+
Signature: predicate:Func<'?6457,bool> -> source:IObservable<'?6457> -> IObservable<bool>
Type parameters: '?6457
@@ -1455,10 +1455,10 @@

Functions and values

- + filter predicate source -
+
Signature: predicate:('T -> bool) -> source:IObservable<'T> -> IObservable<'T>
Type parameters: 'T
@@ -1474,10 +1474,10 @@

Functions and values

- + filteri predicate source -
+
Signature: predicate:('T -> int -> bool) -> source:IObservable<'T> -> IObservable<'T>
Type parameters: 'T
@@ -1494,10 +1494,10 @@

Functions and values

- + finallyDo finallyAction source -
+
Signature: finallyAction:(unit -> unit) -> source:IObservable<'?6463> -> IObservable<'?6463>
Type parameters: '?6463
@@ -1514,10 +1514,10 @@

Functions and values

- + first source -
+
Signature: source:IObservable<'T> -> IObservable<'T>
Type parameters: 'T
@@ -1533,10 +1533,10 @@

Functions and values

- + firstIf predicate source -
+
Signature: predicate:Func<'T,bool> -> source:IObservable<'T> -> IObservable<'T>
Type parameters: 'T
@@ -1553,10 +1553,10 @@

Functions and values

- + flatmap map source -
+
Signature: map:('S -> IObservable<'R>) -> source:IObservable<'S> -> IObservable<'R>
Type parameters: 'S, 'R
@@ -1573,10 +1573,10 @@

Functions and values

- + flatmapOther other source -
+
Signature: other:IObservable<'Other> -> source:IObservable<'Source> -> IObservable<'Other>
Type parameters: 'Other, 'Source
@@ -1595,10 +1595,10 @@

Functions and values

- + flatmapSeq map source -
+
Signature: map:('Source -> seq<'Result>) -> source:IObservable<'Source> -> IObservable<'Result>
Type parameters: 'Source, 'Result
@@ -1615,10 +1615,10 @@

Functions and values

- + flatmapTask map source -
+
Signature: map:('Source -> Task<'Result>) -> source:IObservable<'Source> -> IObservable<'Result>
Type parameters: 'Source, 'Result
@@ -1636,10 +1636,10 @@

Functions and values

- + fold accumulator init source -
+
Signature: accumulator:('?6481 -> '?6482 -> '?6481) -> init:'?6481 -> source:IObservable<'?6482> -> IObservable<'?6481>
Type parameters: '?6481, '?6482
@@ -1659,10 +1659,10 @@

Functions and values

- + foldMap accumulator init map source -
+
Signature: accumulator:('?6484 -> '?6485 -> '?6484) -> init:'?6484 -> map:('?6484 -> '?6486) -> source:IObservable<'?6485> -> IObservable<'?6486>
Type parameters: '?6484, '?6485, '?6486
@@ -1680,10 +1680,10 @@

Functions and values

- + fromEvent addHandler removeHandler -
+
Signature: addHandler:('Delegate -> unit) -> removeHandler:('Delegate -> unit) -> IObservable<unit>
Type parameters: 'Delegate
@@ -1700,10 +1700,10 @@

Functions and values

- + fromEventConversion (...) -
+
Signature: conversion:(('EventArgs -> unit) -> 'Delegate) -> addHandler:('Delegate -> unit) -> removeHandler:('Delegate -> unit) -> IObservable<'EventArgs>
Type parameters: 'EventArgs, 'Delegate
@@ -1721,10 +1721,10 @@

Functions and values

- + fromEventGeneric (...) -
+
Signature: addHandler:(('TEventArgs -> unit) -> unit) -> removeHandler:(('TEventArgs -> unit) -> unit) -> IObservable<'TEventArgs>
Type parameters: 'TEventArgs
@@ -1741,10 +1741,10 @@

Functions and values

- + fromEventHandler (...) -
+
Signature: addHandler:(EventHandler<EventArgs> -> unit) -> removeHandler:(EventHandler<EventArgs> -> unit) -> IObservable<EventArgs>
Type parameters: 'EventArgs
@@ -1761,10 +1761,10 @@

Functions and values

- + fromEventPattern eventName target -
+
Signature: eventName:string -> target:obj -> IObservable<EventPattern<EventArgs>>
@@ -1780,10 +1780,10 @@

Functions and values

- + generate (...) -
+
Signature: initialState:'State -> condition:('State -> bool) -> iterator:('State -> 'State) -> resultMap:('State -> 'Result) -> IObservable<'Result>
Type parameters: 'State, 'Result
@@ -1799,10 +1799,10 @@

Functions and values

- + generateTimed (...) -
+
Signature: initialState:'State -> condition:('State -> bool) -> iterate:('State -> 'State) -> resultMap:('State -> 'Result) -> timeSelector:('State -> DateTimeOffset) -> IObservable<'Result>
Type parameters: 'State, 'Result
@@ -1818,10 +1818,10 @@

Functions and values

- + generateTimeSpan (...) -
+
Signature: initialState:'State -> condition:Func<'State,bool> -> iterate:Func<'State,'State> -> resultMap:('State -> 'Result) -> genTime:('State -> TimeSpan) -> IObservable<'Result>
Type parameters: 'State, 'Result
@@ -1837,10 +1837,10 @@

Functions and values

- + getEnumerator source -
+
Signature: source:IObservable<'?6507> -> IEnumerator<'?6507>
Type parameters: '?6507
@@ -1856,10 +1856,10 @@

Functions and values

- + groupBy keySelector source -
+
Signature: keySelector:('Source -> 'Key) -> source:IObservable<'Source> -> IObservable<IGroupedObservable<'Key,'Source>>
Type parameters: 'Source, 'Key
@@ -1875,10 +1875,10 @@

Functions and values

- + groupByCapacityElement (...) -
+
Signature: keySelector:('Source -> 'Key) -> capacity:int -> elementSelector:('Source -> 'Element) -> source:IObservable<'Source> -> IObservable<IGroupedObservable<'Key,'Element>>
Type parameters: 'Source, 'Key, 'Element
@@ -1897,10 +1897,10 @@

Functions and values

- + groupByCompare (...) -
+
Signature: keySelector:('?6512 -> '?6513) -> comparer:IEqualityComparer<'?6514> -> source:IObservable<'?6512> -> IObservable<IGroupedObservable<'?6513,'?6513>>
Type parameters: '?6512, '?6513, '?6514
@@ -1918,10 +1918,10 @@

Functions and values

- + groupByCompareElement (...) -
+
Signature: keySelector:('Source -> 'Key) -> comparer:IEqualityComparer<'Key> -> elementSelector:('Source -> 'Element) -> source:IObservable<'Source> -> IObservable<IGroupedObservable<'Key,'Element>>
Type parameters: 'Source, 'Key, 'Element
@@ -1938,10 +1938,10 @@

Functions and values

- + groupByComparerElementUntil (...) -
+
Signature: keySelector:('Source -> 'Key) -> comparer:IEqualityComparer<'Key> -> elementSelector:('Source -> 'Element) -> durationSelector:(IGroupedObservable<'Key,'Element> -> IObservable<'TDuration>) -> source:IObservable<'Source> -> IObservable<IGroupedObservable<'Key,'Element>>
Type parameters: 'Source, 'Key, 'Element, 'TDuration
@@ -1969,10 +1969,10 @@

Functions and values

- + groupByComparerUntil (...) -
+
Signature: keySelector:('Source -> 'Key) -> comparer:IEqualityComparer<'Key> -> durationSelector:(IGroupedObservable<'Key,'Source> -> IObservable<'TDuration>) -> source:IObservable<'Source> -> IObservable<IGroupedObservable<'Key,'Source>>
Type parameters: 'Source, 'Key, 'TDuration
@@ -1995,10 +1995,10 @@

Functions and values

- + groupByElement (...) -
+
Signature: keySelector:('Source -> 'Key) -> elementSelector:('Source -> 'Element) -> source:IObservable<'Source> -> IObservable<IGroupedObservable<'Key,'Element>>
Type parameters: 'Source, 'Key, 'Element
@@ -2014,10 +2014,10 @@

Functions and values

- + groupByElementUntil (...) -
+
Signature: keySelector:('Source -> 'Key) -> elementSelector:('Source -> 'Element) -> durationSelector:(IGroupedObservable<'Key,'Element> -> IObservable<'TDuration>) -> source:IObservable<'Source> -> IObservable<IGroupedObservable<'Key,'Element>>
Type parameters: 'Source, 'Key, 'Element, 'TDuration
@@ -2037,10 +2037,10 @@

Functions and values

- + groupByUntil (...) -
+
Signature: keySelector:('Source -> 'Key) -> durationSelector:(IGroupedObservable<'Key,'Source> -> IObservable<'TDuration>) -> source:IObservable<'Source> -> IObservable<IGroupedObservable<'Key,'Source>>
Type parameters: 'Source, 'Key, 'TDuration
@@ -2061,10 +2061,10 @@

Functions and values

- + groupJoin (...) -
+
Signature: left:IObservable<'Left> -> right:IObservable<'Right> -> leftselect:('Left -> IObservable<'a>) -> rightselect:('Right -> IObservable<'b>) -> resultselect:('Left -> IObservable<'Right> -> 'Result) -> IObservable<'Result>
Type parameters: 'Left, 'Right, 'a, 'b, 'Result
@@ -2086,10 +2086,10 @@

Functions and values

- + guard f source -
+
Signature: f:(unit -> unit) -> source:IObservable<'Args> -> IObservable<'Args>
Type parameters: 'Args
@@ -2107,10 +2107,10 @@

Functions and values

- + head obs -
+
Signature: obs:IObservable<'?6554> -> IObservable<'?6554>
Type parameters: '?6554
@@ -2126,10 +2126,10 @@

Functions and values

- + infinite () -
+
Signature: unit -> IObservable<'?6618>
Type parameters: '?6618
@@ -2146,10 +2146,10 @@

Functions and values

- + interval period -
+
Signature: period:TimeSpan -> IObservable<int64>
@@ -2165,10 +2165,10 @@

Functions and values

- + isEmpty source -
+
Signature: source:IObservable<'?6557> -> bool
Type parameters: '?6557
@@ -2184,10 +2184,10 @@

Functions and values

- + iter onNext source -
+
Signature: onNext:('Source -> unit) -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
@@ -2205,10 +2205,10 @@

Functions and values

- + iterEnd onNext onCompleted source -
+
Signature: onNext:('Source -> unit) -> onCompleted:(unit -> unit) -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
@@ -2227,10 +2227,10 @@

Functions and values

- + iterError onNext onError source -
+
Signature: onNext:('Source -> unit) -> onError:(exn -> unit) -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
@@ -2249,10 +2249,10 @@

Functions and values

- + iterErrorEnd (...) -
+
Signature: onNext:('Source -> unit) -> onError:(exn -> unit) -> onCompleted:(unit -> unit) -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
@@ -2271,10 +2271,10 @@

Functions and values

- + iterObserver observer source -
+
Signature: observer:IObserver<'Source> -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
@@ -2292,10 +2292,10 @@

Functions and values

- + joinWhen plans -
+
Signature: plans:seq<Plan<'T>> -> IObservable<'T>
Type parameters: 'T
@@ -2311,10 +2311,10 @@

Functions and values

- + last source -
+
Signature: source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
@@ -2330,10 +2330,10 @@

Functions and values

- + lastIf predicate source -
+
Signature: predicate:('Source -> bool) -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
@@ -2349,10 +2349,10 @@

Functions and values

- + latest source -
+
Signature: source:IObservable<'?6575> -> IEnumerable<'?6575>
Type parameters: '?6575
@@ -2370,10 +2370,10 @@

Functions and values

- + longCount source -
+
Signature: source:IObservable<'?6577> -> IObservable<int64>
Type parameters: '?6577
@@ -2390,10 +2390,10 @@

Functions and values

- + longCountSatisfy predicate source -
+
Signature: predicate:Func<'?6579,bool> -> source:IObservable<'?6579> -> IObservable<int64>
Type parameters: '?6579
@@ -2410,10 +2410,10 @@

Functions and values

- + map f source -
+
Signature: f:('?6581 -> '?6582) -> source:IObservable<'?6581> -> IObservable<'?6582>
Type parameters: '?6581, '?6582
@@ -2429,10 +2429,10 @@

Functions and values

- + map2 f a b -
+
Signature: f:IObservable<('?6587 -> '?6588 -> '?6589)> -> a:IObservable<'?6587> -> b:IObservable<'?6588> -> IObservable<'?6589>
Type parameters: '?6587, '?6588, '?6589
@@ -2448,10 +2448,10 @@

Functions and values

- + mapi f source -
+
Signature: f:(int -> 'Source -> 'Result) -> source:IObservable<'Source> -> IObservable<'Result>
Type parameters: 'Source, 'Result
@@ -2468,10 +2468,10 @@

Functions and values

- + materialize source -
+
Signature: source:IObservable<'?6591> -> IObservable<Notification<'?6591>>
Type parameters: '?6591
@@ -2488,10 +2488,10 @@

Functions and values

- + maxOf source -
+
Signature: source:IObservable<'T> -> IObservable<'T>
Type parameters: 'T
@@ -2507,10 +2507,10 @@

Functions and values

- + merge second first -
+
Signature: second:IObservable<'T> -> first:IObservable<'T> -> IObservable<'T>
Type parameters: 'T
@@ -2526,10 +2526,10 @@

Functions and values

- + mergeArray sources -
+
Signature: sources:IObservable<'T> [] -> IObservable<'T>
Type parameters: 'T
@@ -2545,10 +2545,10 @@

Functions and values

- + mergeInner sources -
+
Signature: sources:IObservable<IObservable<'T>> -> IObservable<'T>
Type parameters: 'T
@@ -2565,10 +2565,10 @@

Functions and values

- + mergeInnerMax maxConcurrent sources -
+
Signature: maxConcurrent:int -> sources:IObservable<IObservable<'T>> -> IObservable<'T>
Type parameters: 'T
@@ -2586,10 +2586,10 @@

Functions and values

- + mergeSeq sources -
+
Signature: sources:seq<IObservable<'T>> -> IObservable<'T>
Type parameters: 'T
@@ -2605,10 +2605,10 @@

Functions and values

- + mergeSeqMax maxConcurrent sources -
+
Signature: maxConcurrent:int -> sources:seq<IObservable<'T>> -> IObservable<'T>
Type parameters: 'T
@@ -2625,10 +2625,10 @@

Functions and values

- + mergeTasks sources -
+
Signature: sources:IObservable<Task<'T>> -> IObservable<'T>
Type parameters: 'T
@@ -2644,10 +2644,10 @@

Functions and values

- + mostRecent initialVal source -
+
Signature: initialVal:'?6609 -> source:IObservable<'?6609> -> IEnumerable<'?6609>
Type parameters: '?6609
@@ -2665,10 +2665,10 @@

Functions and values

- + multicast subject source -
+
Signature: subject:ISubject<'?6611,'?6612> -> source:IObservable<'?6611> -> IConnectableObservable<'?6612>
Type parameters: '?6611, '?6612
@@ -2688,10 +2688,10 @@

Functions and values

- + multicastMap (...) -
+
Signature: subjectSelector:Func<ISubject<'?6614,'?6615>> -> selector:Func<IObservable<'?6615>,IObservable<'?6616>> -> source:IObservable<'?6614> -> IObservable<'?6616>
Type parameters: '?6614, '?6615, '?6616
@@ -2711,10 +2711,10 @@

Functions and values

- + neverWitness witness -
+
Signature: witness:'?6620 -> IObservable<'?6620>
Type parameters: '?6620
@@ -2731,10 +2731,10 @@

Functions and values

- + next source -
+
Signature: source:IObservable<'?6622> -> IEnumerable<'?6622>
Type parameters: '?6622
@@ -2753,10 +2753,10 @@

Functions and values

- + observeOn scheduler source -
+
Signature: scheduler:IScheduler -> source:IObservable<'?6626> -> IObservable<'?6626>
Type parameters: '?6626
@@ -2772,10 +2772,10 @@

Functions and values

- + observeOnContext context source -
+
Signature: context:SynchronizationContext -> source:IObservable<'?6628> -> IObservable<'?6628>
Type parameters: '?6628
@@ -2792,10 +2792,10 @@

Functions and values

- + ofSeq items -
+
Signature: items:seq<'Item> -> IObservable<'Item>
Type parameters: 'Item
@@ -2811,10 +2811,10 @@

Functions and values

- + ofType source -
+
Signature: source:IObservable<obj> -> IObservable<'?6630>
Type parameters: '?6630
@@ -2830,10 +2830,10 @@

Functions and values

- + onErrorConcat second first -
+
Signature: second:IObservable<'Source> -> first:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
@@ -2850,10 +2850,10 @@

Functions and values

- + onErrorConcatArray sources -
+
Signature: sources:IObservable<'Source> [] -> IObservable<'Source>
Type parameters: 'Source
@@ -2869,10 +2869,10 @@

Functions and values

- + onErrorConcatSeq sources -
+
Signature: sources:seq<IObservable<'Source>> -> IObservable<'Source>
Type parameters: 'Source
@@ -2889,10 +2889,10 @@

Functions and values

- + perform f source -
+
Signature: f:('?6638 -> unit) -> source:IObservable<'?6638> -> IObservable<'?6638>
Type parameters: '?6638
@@ -2908,10 +2908,10 @@

Functions and values

- + performFinally f source -
+
Signature: f:(unit -> unit) -> source:IObservable<'?6640> -> IObservable<'?6640>
Type parameters: '?6640
@@ -2927,10 +2927,10 @@

Functions and values

- + publish source -
+
Signature: source:IObservable<'?6642> -> IConnectableObservable<'?6642>
Type parameters: '?6642
@@ -2948,10 +2948,10 @@

Functions and values

- + publishInitial initial source -
+
Signature: initial:'Source -> source:IObservable<'Source> -> IConnectableObservable<'Source>
Type parameters: 'Source
@@ -2969,10 +2969,10 @@

Functions and values

- + publishInitialMap initial map source -
+
Signature: initial:'Source -> map:(IObservable<'Source> -> IObservable<'Result>) -> source:IObservable<'Source> -> IObservable<'Result>
Type parameters: 'Source, 'Result
@@ -2991,10 +2991,10 @@

Functions and values

- + publishLast source -
+
Signature: source:IObservable<'?6652> -> IConnectableObservable<'?6652>
Type parameters: '?6652
@@ -3013,10 +3013,10 @@

Functions and values

- + publishLastMap map source -
+
Signature: map:(IObservable<'Source> -> IObservable<'Result>) -> source:IObservable<'Source> -> IObservable<'Result>
Type parameters: 'Source, 'Result
@@ -3035,10 +3035,10 @@

Functions and values

- + publishMap map source -
+
Signature: map:(IObservable<'Source> -> IObservable<'Result>) -> source:IObservable<'Source> -> IObservable<'Result>
Type parameters: 'Source, 'Result
@@ -3057,10 +3057,10 @@

Functions and values

- + range start count -
+
Signature: start:int -> count:int -> IObservable<int>
@@ -3076,10 +3076,10 @@

Functions and values

- + reduce f source -
+
Signature: f:('?6658 -> '?6658 -> '?6658) -> source:IObservable<'?6658> -> IObservable<'?6658>
Type parameters: '?6658
@@ -3095,10 +3095,10 @@

Functions and values

- + refCount source -
+
Signature: source:IConnectableObservable<'?6660> -> IObservable<'?6660>
Type parameters: '?6660
@@ -3116,10 +3116,10 @@

Functions and values

- + repeat source -
+
Signature: source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
@@ -3135,10 +3135,10 @@

Functions and values

- + repeatCount value repeatCount -
+
Signature: value:'Result -> repeatCount:int -> IObservable<'Result>
Type parameters: 'Result
@@ -3154,10 +3154,10 @@

Functions and values

- + repeatValue value -
+
Signature: value:'Result -> IObservable<'Result>
Type parameters: 'Result
@@ -3173,10 +3173,10 @@

Functions and values

- + repeatWhile condition source -
+
Signature: condition:(unit -> bool) -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
@@ -3193,10 +3193,10 @@

Functions and values

- + replay source -
+
Signature: source:IObservable<'Source> -> IConnectableObservable<'Source>
Type parameters: 'Source
@@ -3213,10 +3213,10 @@

Functions and values

- + replayBuffer bufferSize source -
+
Signature: bufferSize:int -> source:IObservable<'Source> -> IConnectableObservable<'Source>
Type parameters: 'Source
@@ -3233,10 +3233,10 @@

Functions and values

- + replayBufferWindow (...) -
+
Signature: bufferSize:int -> window:TimeSpan -> source:IObservable<'Source> -> IConnectableObservable<'Source>
Type parameters: 'Source
@@ -3252,10 +3252,10 @@

Functions and values

- + replayMap map source -
+
Signature: map:(IObservable<'Source> -> IObservable<'Result>) -> source:IObservable<'Source> -> IObservable<'Result>
Type parameters: 'Source, 'Result
@@ -3272,10 +3272,10 @@

Functions and values

- + replayMapBuffer map bufferSize source -
+
Signature: map:(IObservable<'Source> -> IObservable<'Result>) -> bufferSize:int -> source:IObservable<'Source> -> IObservable<'Result>
Type parameters: 'Source, 'Result
@@ -3293,10 +3293,10 @@

Functions and values

- + replayMapBufferWindow (...) -
+
Signature: map:(IObservable<'Source> -> IObservable<'Result>) -> bufferSize:int -> window:TimeSpan -> source:IObservable<'Source> -> IObservable<'Result>
Type parameters: 'Source, 'Result
@@ -3314,10 +3314,10 @@

Functions and values

- + replayMapWindow map window source -
+
Signature: map:(IObservable<'Source> -> IObservable<'Result>) -> window:TimeSpan -> source:IObservable<'Source> -> IObservable<'Result>
Type parameters: 'Source, 'Result
@@ -3335,10 +3335,10 @@

Functions and values

- + replayWindow window source -
+
Signature: window:TimeSpan -> source:IObservable<'Source> -> IConnectableObservable<'Source>
Type parameters: 'Source
@@ -3355,10 +3355,10 @@

Functions and values

- + result x -
+
Signature: x:'?6694 -> IObservable<'?6694>
Type parameters: '?6694
@@ -3373,10 +3373,10 @@

Functions and values

- + retry source -
+
Signature: source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
@@ -3392,10 +3392,10 @@

Functions and values

- + retryCount count source -
+
Signature: count:int -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
@@ -3411,10 +3411,10 @@

Functions and values

- + sample interval source -
+
Signature: interval:TimeSpan -> source:IObservable<'?6696> -> IObservable<'?6696>
Type parameters: '?6696
@@ -3430,10 +3430,10 @@

Functions and values

- + sampleWith sampler source -
+
Signature: sampler:IObservable<'Sample> -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Sample, 'Source
@@ -3451,10 +3451,10 @@

Functions and values

- + scan accumulator source -
+
Signature: accumulator:('a -> 'a -> 'a) -> source:IObservable<'a> -> IObservable<'a>
Type parameters: 'a
@@ -3470,10 +3470,10 @@

Functions and values

- + scanInit source init accumulator -
+
Signature: source:IObservable<'Source> -> init:'TAccumulate -> accumulator:('TAccumulate -> 'Source -> 'TAccumulate) -> IObservable<'TAccumulate>
Type parameters: 'Source, 'TAccumulate
@@ -3490,10 +3490,10 @@

Functions and values

- + selectIf condition thenSource -
+
Signature: condition:(unit -> bool) -> thenSource:IObservable<'?6706> -> IObservable<'?6706>
Type parameters: '?6706
@@ -3509,10 +3509,10 @@

Functions and values

- + selectIfElse (...) -
+
Signature: condition:(unit -> bool) -> elseSource:IObservable<'Result> -> thenSource:IObservable<'Result> -> IObservable<'Result>
Type parameters: 'Result
@@ -3528,10 +3528,10 @@

Functions and values

- + single value -
+
Signature: value:'Result -> IObservable<'Result>
Type parameters: 'Result
@@ -3547,10 +3547,10 @@

Functions and values

- + skip count source -
+
Signature: count:int -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
@@ -3566,10 +3566,10 @@

Functions and values

- + skipLast count source -
+
Signature: count:int -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
@@ -3585,10 +3585,10 @@

Functions and values

- + skipLastSpan duration source -
+
Signature: duration:TimeSpan -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
@@ -3604,10 +3604,10 @@

Functions and values

- + skipSpan duration source -
+
Signature: duration:TimeSpan -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
@@ -3623,10 +3623,10 @@

Functions and values

- + skipUntil startTime source -
+
Signature: startTime:DateTimeOffset -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
@@ -3642,10 +3642,10 @@

Functions and values

- + skipUntilOther other source -
+
Signature: other:IObservable<'Other> -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Other, 'Source
@@ -3661,10 +3661,10 @@

Functions and values

- + skipWhile predicate source -
+
Signature: predicate:('Source -> bool) -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
@@ -3680,10 +3680,10 @@

Functions and values

- + skipWhilei predicate source -
+
Signature: predicate:('Source -> int -> bool) -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
@@ -3700,10 +3700,10 @@

Functions and values

- + startWith values source -
+
Signature: values:'?6729 -> source:IObservable<'T> -> IObservable<'T>
Type parameters: '?6729, 'T
@@ -3719,10 +3719,10 @@

Functions and values

- + subscribe onNext observable -
+
Signature: onNext:('T -> unit) -> observable:IObservable<'T> -> IDisposable
Type parameters: 'T
@@ -3738,10 +3738,10 @@

Functions and values

- + subscribeObserver observer observable -
+
Signature: observer:IObserver<'T> -> observable:IObservable<'T> -> IDisposable
Type parameters: 'T
@@ -3757,10 +3757,10 @@

Functions and values

- + subscribeOn context source -
+
Signature: context:SynchronizationContext -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
@@ -3779,10 +3779,10 @@

Functions and values

- + subscribeWithCallbacks (...) -
+
Signature: onNext:('T -> unit) -> onError:(exn -> unit) -> onCompleted:(unit -> unit) -> observable:IObservable<'T> -> IDisposable
Type parameters: 'T
@@ -3798,10 +3798,10 @@

Functions and values

- + subscribeWithCompletion (...) -
+
Signature: onNext:('T -> unit) -> onCompleted:(unit -> unit) -> observable:IObservable<'T> -> IDisposable
Type parameters: 'T
@@ -3817,10 +3817,10 @@

Functions and values

- + subscribeWithError (...) -
+
Signature: onNext:('T -> unit) -> onError:(exn -> unit) -> observable:IObservable<'T> -> IDisposable
Type parameters: 'T
@@ -3836,10 +3836,10 @@

Functions and values

- + switch sources -
+
Signature: sources:IObservable<IObservable<'Source>> -> IObservable<'Source>
Type parameters: 'Source
@@ -3858,10 +3858,10 @@

Functions and values

- + switchTask sources -
+
Signature: sources:IObservable<Task<'Source>> -> IObservable<'Source>
Type parameters: 'Source
@@ -3879,10 +3879,10 @@

Functions and values

- + synchronize source -
+
Signature: source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
@@ -3900,10 +3900,10 @@

Functions and values

- + synchronizeGate gate source -
+
Signature: gate:obj -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
@@ -3922,10 +3922,10 @@

Functions and values

- + take n source -
+
Signature: n:int -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
@@ -3941,10 +3941,10 @@

Functions and values

- + takeLast count source -
+
Signature: count:int -> source:IObservable<'?6754> -> IObservable<'?6754>
Type parameters: '?6754
@@ -3960,10 +3960,10 @@

Functions and values

- + takeLastBuffer duration source -
+
Signature: duration:TimeSpan -> source:IObservable<'Source> -> IObservable<IList<'Source>>
Type parameters: 'Source
@@ -3979,10 +3979,10 @@

Functions and values

- + takeLastBufferCount count source -
+
Signature: count:int -> source:IObservable<'Source> -> IObservable<IList<'Source>>
Type parameters: 'Source
@@ -3998,10 +3998,10 @@

Functions and values

- + takeLastSpan duration source -
+
Signature: duration:TimeSpan -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
@@ -4017,10 +4017,10 @@

Functions and values

- + takeUntilOther other source -
+
Signature: other:IObservable<'Other> -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Other, 'Source
@@ -4036,10 +4036,10 @@

Functions and values

- + takeUntilTime endtime source -
+
Signature: endtime:DateTimeOffset -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
@@ -4055,10 +4055,10 @@

Functions and values

- + takeWhile predicate source -
+
Signature: predicate:('Source -> bool) -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
@@ -4074,10 +4074,10 @@

Functions and values

- + takeWhilei predicate source -
+
Signature: predicate:('Source -> int -> bool) -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
@@ -4094,10 +4094,10 @@

Functions and values

- + thenMap map source -
+
Signature: map:('Source -> 'Result) -> source:IObservable<'Source> -> Plan<'Result>
Type parameters: 'Source, 'Result
@@ -4114,10 +4114,10 @@

Functions and values

- + throttle dueTime source -
+
Signature: dueTime:TimeSpan -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
@@ -4133,10 +4133,10 @@

Functions and values

- + throttleComputed (...) -
+
Signature: source:IObservable<'Source> -> throttleDurationSelector:('Source -> IObservable<'Throttle>) -> IObservable<'Source>
Type parameters: 'Source, 'Throttle
@@ -4152,10 +4152,10 @@

Functions and values

- + throw except -
+
Signature: except:exn -> IObservable<'Result>
Type parameters: 'Result
@@ -4171,10 +4171,10 @@

Functions and values

- + timeInterval source -
+
Signature: source:IObservable<'Source> -> IObservable<TimeInterval<'Source>>
Type parameters: 'Source
@@ -4190,10 +4190,10 @@

Functions and values

- + timeout timeout source -
+
Signature: timeout:DateTimeOffset -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
@@ -4210,10 +4210,10 @@

Functions and values

- + timeout2Duration (...) -
+
Signature: timeout:IObservable<'Timeout> -> durationSelector:('Source -> IObservable<'Timeout>) -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Timeout, 'Source
@@ -4232,10 +4232,10 @@

Functions and values

- + timeout2DurationOther (...) -
+
Signature: timeout:IObservable<'Timeout> -> durationSelector:('Source -> IObservable<'Timeout>) -> other:IObservable<'Source> -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Timeout, 'Source
@@ -4254,10 +4254,10 @@

Functions and values

- + timeoutDuration durationSelector source -
+
Signature: durationSelector:('Source -> IObservable<'Timeout>) -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source, 'Timeout
@@ -4275,10 +4275,10 @@

Functions and values

- + timeoutOther timeout other source -
+
Signature: timeout:DateTimeOffset -> other:IObservable<'Source> -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
@@ -4296,10 +4296,10 @@

Functions and values

- + timeoutSpan timeout source -
+
Signature: timeout:TimeSpan -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
@@ -4317,10 +4317,10 @@

Functions and values

- + timeoutSpanOther timeout other source -
+
Signature: timeout:TimeSpan -> other:IObservable<'Source> -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
@@ -4338,10 +4338,10 @@

Functions and values

- + timer dueTime -
+
Signature: dueTime:DateTimeOffset -> IObservable<int64>
@@ -4357,10 +4357,10 @@

Functions and values

- + timerPeriod dueTime period -
+
Signature: dueTime:DateTimeOffset -> period:TimeSpan -> IObservable<int64>
@@ -4376,10 +4376,10 @@

Functions and values

- + timerSpan dueTime -
+
Signature: dueTime:TimeSpan -> IObservable<int64>
@@ -4395,10 +4395,10 @@

Functions and values

- + timerSpanPeriod (dueTime, period) -
+
Signature: (dueTime:TimeSpan * period:TimeSpan) -> IObservable<int64>
@@ -4415,10 +4415,10 @@

Functions and values

- + timestamp source -
+
Signature: source:IObservable<'Source> -> IObservable<Timestamped<'Source>>
Type parameters: 'Source
@@ -4434,10 +4434,10 @@

Functions and values

- + toArray source -
+
Signature: source:IObservable<'?6808> -> IObservable<'?6808 []>
Type parameters: '?6808
@@ -4454,10 +4454,10 @@

Functions and values

- + toDictionary keySelector source -
+
Signature: keySelector:Func<'?6810,'?6811> -> source:IObservable<'?6810> -> IObservable<IDictionary<'?6811,'?6810>>
Type parameters: '?6810, '?6811
@@ -4473,10 +4473,10 @@

Functions and values

- + toDictionaryCompareElements (...) -
+
Signature: keySelector:('Source -> 'Key) -> elementSelector:('Source -> 'Elm) -> comparer:'Key -> source:'Source -> IObservable<IDictionary<'Key,'Elm>>
Type parameters: 'Source, 'Key, 'Elm
@@ -4492,10 +4492,10 @@

Functions and values

- + toDictionaryComparer (...) -
+
Signature: keySelector:('Source -> 'Key) -> comparer:'Key -> source:'Source -> IObservable<IDictionary<'Key,'Source>>
Type parameters: 'Source, 'Key
@@ -4512,10 +4512,10 @@

Functions and values

- + toDictionaryElements (...) -
+
Signature: keySelector:('Source -> 'Key) -> elementSelector:('Source -> 'Elm) -> source:'Source -> IObservable<IDictionary<'Key,'Elm>>
Type parameters: 'Source, 'Key, 'Elm
@@ -4531,10 +4531,10 @@

Functions and values

- + toEnumerable source -
+
Signature: source:IObservable<'T> -> IEnumerable<'T>
Type parameters: 'T
@@ -4550,10 +4550,10 @@

Functions and values

- + toEvent source -
+
Signature: source:IObservable<unit> -> IEventSource<unit>
@@ -4569,10 +4569,10 @@

Functions and values

- + toEventType source -
+
Signature: source:IObservable<'Source> -> IEventSource<'Source>
Type parameters: 'Source
@@ -4588,10 +4588,10 @@

Functions and values

- + toList source -
+
Signature: source:IObservable<'?6827> -> IObservable<IList<'?6827>>
Type parameters: '?6827
@@ -4607,10 +4607,10 @@

Functions and values

- + toLookup keySelector source -
+
Signature: keySelector:('Source -> 'Key) -> source:IObservable<'Source> -> IObservable<ILookup<'Key,'Source>>
Type parameters: 'Source, 'Key
@@ -4626,10 +4626,10 @@

Functions and values

- + toLookupCompare (...) -
+
Signature: keySelector:('Source -> 'Key) -> comparer:IEqualityComparer<'Key> -> source:IObservable<'Source> -> IObservable<ILookup<'Key,'Source>>
Type parameters: 'Source, 'Key
@@ -4645,10 +4645,10 @@

Functions and values

- + toLookupCompareElement (...) -
+
Signature: keySelector:('Source -> 'Key) -> elementSelector:('Source -> 'Element) -> source:IObservable<'Source> -> IObservable<ILookup<'Key,'Element>>
Type parameters: 'Source, 'Key, 'Element
@@ -4664,10 +4664,10 @@

Functions and values

- + toLookupElement (...) -
+
Signature: keySelector:('Source -> 'Key) -> elementSelector:('Source -> 'Element) -> comparer:IEqualityComparer<'Key> -> source:IObservable<'Source> -> IObservable<ILookup<'Key,'Element>>
Type parameters: 'Source, 'Key, 'Element
@@ -4683,10 +4683,10 @@

Functions and values

- + toObservable source -
+
Signature: source:seq<'T> -> IObservable<'T>
Type parameters: 'T
@@ -4702,10 +4702,10 @@

Functions and values

- + using resourceFactory observableFactory -
+
Signature: resourceFactory:(unit -> 'TResource) -> observableFactory:('TResource -> IObservable<'Result>) -> IObservable<'Result>
Type parameters: 'TResource, 'Result
@@ -4722,10 +4722,10 @@

Functions and values

- + wait source -
+
Signature: source:IObservable<'?6848> -> '?6848
Type parameters: '?6848
@@ -4743,10 +4743,10 @@

Functions and values

- + whileLoop condition source -
+
Signature: condition:(unit -> bool) -> source:IObservable<'?6850> -> IObservable<'?6850>
Type parameters: '?6850
@@ -4764,10 +4764,10 @@

Functions and values

- + window windowClosingSelector source -
+
Signature: windowClosingSelector:(unit -> IObservable<'WindowClosing>) -> source:IObservable<'Source> -> IObservable<IObservable<'Source>>
Type parameters: 'WindowClosing, 'Source
@@ -4785,10 +4785,10 @@

Functions and values

- + windowBounded windowBoundaries source -
+
Signature: windowBoundaries:IObservable<'WindowBoundary> -> source:IObservable<'Source> -> IObservable<IObservable<'Source>>
Type parameters: 'WindowBoundary, 'Source
@@ -4806,10 +4806,10 @@

Functions and values

- + windowCount count source -
+
Signature: count:int -> source:IObservable<'Source> -> IObservable<IObservable<'Source>>
Type parameters: 'Source
@@ -4826,10 +4826,10 @@

Functions and values

- + windowCountSkip count skip source -
+
Signature: count:int -> skip:int -> source:IObservable<'Source> -> IObservable<IObservable<'Source>>
Type parameters: 'Source
@@ -4845,10 +4845,10 @@

Functions and values

- + windowOpenClose (...) -
+
Signature: windowOpenings:IObservable<'WinOpen> -> windowClosingSelector:('WinOpen -> IObservable<'WinClose>) -> source:IObservable<'Source> -> IObservable<IObservable<'Source>>
Type parameters: 'WinOpen, 'WinClose, 'Source
@@ -4866,10 +4866,10 @@

Functions and values

- + windowTimeCount timeSpan count source -
+
Signature: timeSpan:TimeSpan -> count:int -> source:IObservable<'Source> -> IObservable<IObservable<'Source>>
Type parameters: 'Source
@@ -4888,10 +4888,10 @@

Functions and values

- + windowTimeShift (...) -
+
Signature: timeSpan:TimeSpan -> timeShift:TimeSpan -> source:IObservable<'Source> -> IObservable<IObservable<'Source>>
Type parameters: 'Source
@@ -4908,10 +4908,10 @@

Functions and values

- + windowTimeSpan timeSpan source -
+
Signature: timeSpan:TimeSpan -> source:IObservable<'Source> -> IObservable<IObservable<'Source>>
Type parameters: 'Source
@@ -4928,10 +4928,10 @@

Functions and values

- + zip first second resultSelector -
+
Signature: first:IObservable<'Source1> -> second:IObservable<'Source2> -> resultSelector:('Source1 -> 'Source2 -> 'Result) -> IObservable<'Result>
Type parameters: 'Source1, 'Source2, 'Result
@@ -4947,10 +4947,10 @@

Functions and values

- + zipArray sources -
+
Signature: sources:IObservable<'Source> [] -> IObservable<IList<'Source>>
Type parameters: 'Source
@@ -4967,10 +4967,10 @@

Functions and values

- + zipSeq sources -
+
Signature: sources:seq<IObservable<'Source>> -> IObservable<IList<'Source>>
Type parameters: 'Source
@@ -4987,10 +4987,10 @@

Functions and values

- + zipSeqMap resultSelector sources -
+
Signature: resultSelector:(IList<'S> -> 'R) -> sources:seq<IObservable<'S>> -> IObservable<'R>
Type parameters: 'S, 'R
@@ -5008,10 +5008,10 @@

Functions and values

- + zipWithSeq resultSelector second first -
+
Signature: resultSelector:('Source1 -> 'Source2 -> 'Result) -> second:seq<'Source2> -> first:IObservable<'Source1> -> IObservable<'Result>
Type parameters: 'Source1, 'Source2, 'Result
From 6490426fd1842a6edd813de3588fcaf61409d230 Mon Sep 17 00:00:00 2001 From: Ryan Riley Date: Mon, 13 Oct 2014 23:43:46 -0500 Subject: [PATCH 03/18] Update generated documentation for version 2.4.0 --- ...tive-buildersmodule-observablebuilder.html | 56 +- ...eactive-buildersmodule-rxquerybuilder.html | 124 +-- ...arp-control-reactive-observablemodule.html | 819 +++++++++--------- 3 files changed, 509 insertions(+), 490 deletions(-) diff --git a/reference/fsharp-control-reactive-buildersmodule-observablebuilder.html b/reference/fsharp-control-reactive-buildersmodule-observablebuilder.html index 4f66fd6..10a5cbd 100644 --- a/reference/fsharp-control-reactive-buildersmodule-observablebuilder.html +++ b/reference/fsharp-control-reactive-buildersmodule-observablebuilder.html @@ -48,10 +48,10 @@

Constructors

- + new() -
+
Signature: unit -> ObservableBuilder
@@ -74,10 +74,10 @@

Instance members

- + Bind(m, f) -
+
Signature: (m:IObservable<'?6098> * f:('?6098 -> IObservable<'?6099>)) -> IObservable<'?6099>
Type parameters: '?6098, '?6099
@@ -92,10 +92,10 @@

Instance members

- + Combine(comp1, comp2) -
+
Signature: (comp1:IObservable<'?6101> * comp2:IObservable<'?6101>) -> IObservable<'?6101>
Type parameters: '?6101
@@ -110,10 +110,10 @@

Instance members

- + Delay(f) -
+
Signature: (f:(unit -> IObservable<'?6103>)) -> IObservable<'?6103>
Type parameters: '?6103
@@ -128,10 +128,10 @@

Instance members

- + For(sequence, body) -
+
Signature: (sequence:IEnumerable<'?6107> * body:Func<'?6107,IObservable<'?6108>>) -> IObservable<'?6108>
Type parameters: '?6107, '?6108
@@ -146,10 +146,10 @@

Instance members

- + Return(x) -
+
Signature: x:'?6094 -> IObservable<'?6094>
Type parameters: '?6094
@@ -164,10 +164,10 @@

Instance members

- + ReturnFrom(m) -
+
Signature: m:IObservable<'?6096> -> IObservable<'?6096>
Type parameters: '?6096
@@ -182,10 +182,10 @@

Instance members

- + TryFinally(m, compensation) -
+
Signature: (m:IObservable<'?6113> * compensation:(unit -> unit)) -> IObservable<'?6113>
Type parameters: '?6113
@@ -200,10 +200,10 @@

Instance members

- + TryWith(m, h) -
+
Signature: (m:IObservable<'?6110> * h:('?6111 -> IObservable<'?6110>)) -> IObservable<'?6110>
Type parameters: '?6110, '?6111
@@ -218,10 +218,10 @@

Instance members

- + Using(res, body) -
+
Signature: (res:'?6115 * body:Func<'?6115,IObservable<'?6116>>) -> IObservable<'?6116>
Type parameters: '?6115, '?6116
@@ -236,10 +236,10 @@

Instance members

- + While(guard, m) -
+
Signature: (guard:Func<bool> * m:IObservable<'?6118>) -> IObservable<'?6118>
Type parameters: '?6118
@@ -254,10 +254,10 @@

Instance members

- + Yield(x) -
+
Signature: x:'?6120 -> IObservable<'?6120>
Type parameters: '?6120
@@ -272,10 +272,10 @@

Instance members

- + YieldFrom(m) -
+
Signature: m:IObservable<'?6122> -> IObservable<'?6122>
Type parameters: '?6122
@@ -290,10 +290,10 @@

Instance members

- + Zero() -
+
Signature: unit -> IObservable<'?6105>
Type parameters: '?6105
diff --git a/reference/fsharp-control-reactive-buildersmodule-rxquerybuilder.html b/reference/fsharp-control-reactive-buildersmodule-rxquerybuilder.html index ff630e8..67976ed 100644 --- a/reference/fsharp-control-reactive-buildersmodule-rxquerybuilder.html +++ b/reference/fsharp-control-reactive-buildersmodule-rxquerybuilder.html @@ -49,10 +49,10 @@

Constructors

- + new() -
+
Signature: unit -> RxQueryBuilder
@@ -75,10 +75,10 @@

Instance members

- + All(s, predicate) -
+
Signature: (s:IObservable<'?6148> * predicate:('?6148 -> bool)) -> IObservable<bool>
Type parameters: '?6148
@@ -93,10 +93,10 @@

Instance members

- + Contains(s, key) -
+
Signature: (s:IObservable<'?6150> * key:'?6150) -> IObservable<bool>
Type parameters: '?6150
@@ -111,10 +111,10 @@

Instance members

- + Count(s) -
+
Signature: s:IObservable<'?6146> -> IObservable<int>
Type parameters: '?6146
@@ -129,10 +129,10 @@

Instance members

- + Distinct(s) -
+
Signature: s:IObservable<'?6152> -> IObservable<'?6152>
Type parameters: '?6152
@@ -147,10 +147,10 @@

Instance members

- + ExactlyOne(s) -
+
Signature: s:IObservable<'?6154> -> '?6154
Type parameters: '?6154
@@ -165,10 +165,10 @@

Instance members

- + ExactlyOneOrDefault(s) -
+
Signature: s:IObservable<'?6156> -> '?6156
Type parameters: '?6156
@@ -183,10 +183,10 @@

Instance members

- + Find(s, predicate) -
+
Signature: (s:IObservable<'?6158> * predicate:('?6158 -> bool)) -> '?6158
Type parameters: '?6158
@@ -201,10 +201,10 @@

Instance members

- + For(s, body) -
+
Signature: (s:IObservable<'?6126> * body:('?6126 -> IObservable<'?6127>)) -> IObservable<'?6127>
Type parameters: '?6126, '?6127
@@ -219,10 +219,10 @@

Instance members

- + GroupBy(s, keySelector) -
+
Signature: (s:IObservable<'?6180> * keySelector:('?6180 -> '?6181)) -> IObservable<IGroupedObservable<'?6181,'?6180>>
Type parameters: '?6180, '?6181
@@ -237,10 +237,10 @@

Instance members

- + GroupJoin(...) -
+
Signature: (s1:IObservable<'?6193> * s2:IObservable<'?6194> * s1KeySelector:('?6193 -> IObservable<'?6195>) * s2KeySelector:('?6194 -> IObservable<'?6196>) * resultSelector:('?6193 -> IObservable<'?6194> -> '?6197)) -> IObservable<'?6197>
Type parameters: '?6193, '?6194, '?6195, '?6196, '?6197
@@ -255,10 +255,10 @@

Instance members

- + GroupValBy(...) -
+
Signature: (s:IObservable<'?6183> * resultSelector:('?6183 -> '?6184) * keySelector:('?6183 -> '?6185)) -> IObservable<IGroupedObservable<'?6185,'?6184>>
Type parameters: '?6183, '?6184, '?6185
@@ -273,10 +273,10 @@

Instance members

- + Head(s) -
+
Signature: s:IObservable<'?6160> -> '?6160
Type parameters: '?6160
@@ -291,10 +291,10 @@

Instance members

- + HeadOrDefault(s) -
+
Signature: s:IObservable<'?6162> -> '?6162
Type parameters: '?6162
@@ -309,10 +309,10 @@

Instance members

- + Iter(s, selector) -
+
Signature: (s:IObservable<'?6203> * selector:('?6203 -> unit)) -> IObservable<'?6203>
Type parameters: '?6203
@@ -327,10 +327,10 @@

Instance members

- + Join(...) -
+
Signature: (s1:IObservable<'?6187> * s2:IObservable<'?6188> * s1KeySelector:('?6187 -> IObservable<'?6189>) * s2KeySelector:('?6188 -> IObservable<'?6190>) * resultSelector:('?6187 -> '?6188 -> '?6191)) -> IObservable<'?6191>
Type parameters: '?6187, '?6188, '?6189, '?6190, '?6191
@@ -345,10 +345,10 @@

Instance members

- + Last(s) -
+
Signature: s:IObservable<'?6164> -> '?6164
Type parameters: '?6164
@@ -363,10 +363,10 @@

Instance members

- + LastOrDefault(s) -
+
Signature: s:IObservable<'?6166> -> '?6166
Type parameters: '?6166
@@ -381,10 +381,10 @@

Instance members

- + MaxBy(s, valueSelector) -
+
Signature: (s:IObservable<'a> * valueSelector:('a -> 'b)) -> IObservable<IList<'a>>
Type parameters: 'a, 'b
@@ -399,10 +399,10 @@

Instance members

- + MinBy(s, valueSelector) -
+
Signature: (s:IObservable<'a> * valueSelector:('a -> 'b)) -> IObservable<IList<'a>>
Type parameters: 'a, 'b
@@ -417,10 +417,10 @@

Instance members

- + Nth(s, index) -
+
Signature: (s:IObservable<'a> * index:int) -> IObservable<'a>
Type parameters: 'a
@@ -435,10 +435,10 @@

Instance members

- + Select(s, selector) -
+
Signature: (s:IObservable<'?6129> * selector:('?6129 -> '?6130)) -> IObservable<'?6130>
Type parameters: '?6129, '?6130
@@ -453,10 +453,10 @@

Instance members

- + Skip(s, count) -
+
Signature: (s:IObservable<'?6140> * count:int) -> IObservable<'?6140>
Type parameters: '?6140
@@ -471,10 +471,10 @@

Instance members

- + SkipWhile(s, predicate) -
+
Signature: (s:IObservable<'?6138> * predicate:('?6138 -> bool)) -> IObservable<'?6138>
Type parameters: '?6138
@@ -489,10 +489,10 @@

Instance members

- + SumBy(s, valueSelector) -
+
Signature: (s:IObservable<'?6176> * valueSelector:('?6176 -> ^?6177)) -> IObservable<^?6178>
Type parameters: '?6176, ^?6177, ^?6178
@@ -507,10 +507,10 @@

Instance members

- + Take(s, count) -
+
Signature: (s:IObservable<'?6136> * count:int) -> IObservable<'?6136>
Type parameters: '?6136
@@ -525,10 +525,10 @@

Instance members

- + TakeWhile(s, predicate) -
+
Signature: (s:IObservable<'?6134> * predicate:('?6134 -> bool)) -> IObservable<'?6134>
Type parameters: '?6134
@@ -543,10 +543,10 @@

Instance members

- + Where(s, predicate) -
+
Signature: (s:IObservable<'?6132> * predicate:('?6132 -> bool)) -> IObservable<'?6132>
Type parameters: '?6132
@@ -561,10 +561,10 @@

Instance members

- + Yield(value) -
+
Signature: value:'?6144 -> IObservable<'?6144>
Type parameters: '?6144
@@ -579,10 +579,10 @@

Instance members

- + Zero() -
+
Signature: unit -> IObservable<'?6142>
Type parameters: '?6142
@@ -597,10 +597,10 @@

Instance members

- + Zip(s1, s2, resultSelector) -
+
Signature: (s1:IObservable<'?6199> * s2:IObservable<'?6200> * resultSelector:('?6199 -> '?6200 -> '?6201)) -> IObservable<'?6201>
Type parameters: '?6199, '?6200, '?6201
diff --git a/reference/fsharp-control-reactive-observablemodule.html b/reference/fsharp-control-reactive-observablemodule.html index 73cd20a..3d59a19 100644 --- a/reference/fsharp-control-reactive-observablemodule.html +++ b/reference/fsharp-control-reactive-observablemodule.html @@ -1114,18 +1114,18 @@

Functions and values

- distincKey keySelector source + distinct source
- Signature: keySelector:Func<'Source,'Key> -> source:IObservable<'Source> -> IObservable<'Source>
- Type parameters: 'Source, 'Key
+ Signature: source:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Source
- + -

Returns an observable sequence that contains only distinct elements according to the keySelector.

+

Returns an observable sequence that only contains distinct elements

@@ -1133,18 +1133,18 @@

Functions and values

- distincKeyCompare (...) + distinctCompare comparer source
- Signature: keySelector:Func<'Source,'Key> -> comparer:IEqualityComparer<'Key> -> source:IObservable<'Source> -> IObservable<'Source>
- Type parameters: 'Source, 'Key
+ Signature: comparer:IEqualityComparer<'Source> -> source:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Source
- + -

Returns an observable sequence that contains only distinct elements according to the keySelector and the comparer.

+

Returns an observable sequence that contains only distinct elements according to the comparer.

@@ -1152,18 +1152,18 @@

Functions and values

- distinct source + distinctKey keySelector source
- Signature: source:IObservable<'Source> -> IObservable<'Source>
- Type parameters: 'Source
+ Signature: keySelector:('Source -> 'Key) -> source:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Source, 'Key
- + -

Returns an observable sequence that only contains distinct elements

+

Returns an observable sequence that contains only distinct elements according to the keySelector.

@@ -1171,18 +1171,18 @@

Functions and values

- distinctCompare comparer source + distinctKeyCompare (...)
- Signature: comparer:IEqualityComparer<'Source> -> source:IObservable<'Source> -> IObservable<'Source>
- Type parameters: 'Source
+ Signature: keySelector:('Source -> 'Key) -> comparer:IEqualityComparer<'Key> -> source:IObservable<'Source> -> IObservable<'Source>
+ Type parameters: 'Source, 'Key
- + -

Returns an observable sequence that contains only distinct elements according to the comparer.

+

Returns an observable sequence that contains only distinct elements according to the keySelector and the comparer.

@@ -1231,7 +1231,7 @@

Functions and values

distinctUntilChangedKey (...)
- Signature: keySelector:Func<'Source,'Key> -> source:IObservable<'Source> -> IObservable<'Source>
+ Signature: keySelector:('Source -> 'Key) -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source, 'Key
@@ -1250,7 +1250,7 @@

Functions and values

distinctUntilChangedKeyCompare (...)
- Signature: keySelector:Func<'Source,'Key> -> comparer:IEqualityComparer<'Key> -> source:IObservable<'Source> -> IObservable<'Source>
+ Signature: keySelector:('Source -> 'Key) -> comparer:IEqualityComparer<'Key> -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source, 'Key
@@ -2757,11 +2757,11 @@

Functions and values

observeOn scheduler source
- Signature: scheduler:IScheduler -> source:IObservable<'?6626> -> IObservable<'?6626>
- Type parameters: '?6626
+ Signature: scheduler:IScheduler -> source:IObservable<'?6628> -> IObservable<'?6628>
+ Type parameters: '?6628
- + @@ -2776,11 +2776,11 @@

Functions and values

observeOnContext context source
- Signature: context:SynchronizationContext -> source:IObservable<'?6628> -> IObservable<'?6628>
- Type parameters: '?6628
+ Signature: context:SynchronizationContext -> source:IObservable<'?6630> -> IObservable<'?6630>
+ Type parameters: '?6630
- + @@ -2812,18 +2812,18 @@

Functions and values

- ofType source + ofSeqOn scheduler items
- Signature: source:IObservable<obj> -> IObservable<'?6630>
- Type parameters: '?6630
+ Signature: scheduler:IScheduler -> items:seq<'Item> -> IObservable<'Item>
+ Type parameters: 'Item
- + -

Filters the elements of an observable sequence based on the specified type

+

Returns the sequence as an observable, using the specified scheduler to run the enumeration loop

@@ -2831,14 +2831,33 @@

Functions and values

- onErrorConcat second first + ofType source
+ Signature: source:IObservable<obj> -> IObservable<'?6632>
+ Type parameters: '?6632
+ + + + + + +

Filters the elements of an observable sequence based on the specified type

+ + + + + + + + onErrorConcat second first + +
Signature: second:IObservable<'Source> -> first:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
- + @@ -2850,15 +2869,15 @@

Functions and values

- + onErrorConcatArray sources -
+
Signature: sources:IObservable<'Source> [] -> IObservable<'Source>
Type parameters: 'Source
- + @@ -2869,15 +2888,15 @@

Functions and values

- + onErrorConcatSeq sources -
+
Signature: sources:seq<IObservable<'Source>> -> IObservable<'Source>
Type parameters: 'Source
- + @@ -2889,15 +2908,15 @@

Functions and values

- + perform f source -
- Signature: f:('?6638 -> unit) -> source:IObservable<'?6638> -> IObservable<'?6638>
- Type parameters: '?6638
+
+ Signature: f:('?6640 -> unit) -> source:IObservable<'?6640> -> IObservable<'?6640>
+ Type parameters: '?6640
- + @@ -2908,15 +2927,15 @@

Functions and values

- + performFinally f source -
- Signature: f:(unit -> unit) -> source:IObservable<'?6640> -> IObservable<'?6640>
- Type parameters: '?6640
+
+ Signature: f:(unit -> unit) -> source:IObservable<'?6642> -> IObservable<'?6642>
+ Type parameters: '?6642
- + @@ -2927,15 +2946,15 @@

Functions and values

- + publish source -
- Signature: source:IObservable<'?6642> -> IConnectableObservable<'?6642>
- Type parameters: '?6642
+
+ Signature: source:IObservable<'?6644> -> IConnectableObservable<'?6644>
+ Type parameters: '?6644
- + @@ -2948,15 +2967,15 @@

Functions and values

- + publishInitial initial source -
+
Signature: initial:'Source -> source:IObservable<'Source> -> IConnectableObservable<'Source>
Type parameters: 'Source
- + @@ -2969,15 +2988,15 @@

Functions and values

- + publishInitialMap initial map source -
+
Signature: initial:'Source -> map:(IObservable<'Source> -> IObservable<'Result>) -> source:IObservable<'Source> -> IObservable<'Result>
Type parameters: 'Source, 'Result
- + @@ -2991,15 +3010,15 @@

Functions and values

- + publishLast source -
- Signature: source:IObservable<'?6652> -> IConnectableObservable<'?6652>
- Type parameters: '?6652
+
+ Signature: source:IObservable<'?6654> -> IConnectableObservable<'?6654>
+ Type parameters: '?6654
- + @@ -3013,15 +3032,15 @@

Functions and values

- + publishLastMap map source -
+
Signature: map:(IObservable<'Source> -> IObservable<'Result>) -> source:IObservable<'Source> -> IObservable<'Result>
Type parameters: 'Source, 'Result
- + @@ -3035,15 +3054,15 @@

Functions and values

- + publishMap map source -
+
Signature: map:(IObservable<'Source> -> IObservable<'Result>) -> source:IObservable<'Source> -> IObservable<'Result>
Type parameters: 'Source, 'Result
- + @@ -3057,15 +3076,15 @@

Functions and values

- + range start count -
+
Signature: start:int -> count:int -> IObservable<int>
- + @@ -3076,15 +3095,15 @@

Functions and values

- + reduce f source -
- Signature: f:('?6658 -> '?6658 -> '?6658) -> source:IObservable<'?6658> -> IObservable<'?6658>
- Type parameters: '?6658
+
+ Signature: f:('?6660 -> '?6660 -> '?6660) -> source:IObservable<'?6660> -> IObservable<'?6660>
+ Type parameters: '?6660
- + @@ -3095,15 +3114,15 @@

Functions and values

- + refCount source -
- Signature: source:IConnectableObservable<'?6660> -> IObservable<'?6660>
- Type parameters: '?6660
+
+ Signature: source:IConnectableObservable<'?6662> -> IObservable<'?6662>
+ Type parameters: '?6662
- + @@ -3116,15 +3135,15 @@

Functions and values

- + repeat source -
+
Signature: source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
- + @@ -3135,15 +3154,15 @@

Functions and values

- + repeatCount value repeatCount -
+
Signature: value:'Result -> repeatCount:int -> IObservable<'Result>
Type parameters: 'Result
- + @@ -3154,15 +3173,15 @@

Functions and values

- + repeatValue value -
+
Signature: value:'Result -> IObservable<'Result>
Type parameters: 'Result
- + @@ -3173,15 +3192,15 @@

Functions and values

- + repeatWhile condition source -
+
Signature: condition:(unit -> bool) -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
- + @@ -3193,15 +3212,15 @@

Functions and values

- + replay source -
+
Signature: source:IObservable<'Source> -> IConnectableObservable<'Source>
Type parameters: 'Source
- + @@ -3213,15 +3232,15 @@

Functions and values

- + replayBuffer bufferSize source -
+
Signature: bufferSize:int -> source:IObservable<'Source> -> IConnectableObservable<'Source>
Type parameters: 'Source
- + @@ -3233,15 +3252,15 @@

Functions and values

- + replayBufferWindow (...) -
+
Signature: bufferSize:int -> window:TimeSpan -> source:IObservable<'Source> -> IConnectableObservable<'Source>
Type parameters: 'Source
- + @@ -3252,15 +3271,15 @@

Functions and values

- + replayMap map source -
+
Signature: map:(IObservable<'Source> -> IObservable<'Result>) -> source:IObservable<'Source> -> IObservable<'Result>
Type parameters: 'Source, 'Result
- + @@ -3272,15 +3291,15 @@

Functions and values

- + replayMapBuffer map bufferSize source -
+
Signature: map:(IObservable<'Source> -> IObservable<'Result>) -> bufferSize:int -> source:IObservable<'Source> -> IObservable<'Result>
Type parameters: 'Source, 'Result
- + @@ -3293,15 +3312,15 @@

Functions and values

- + replayMapBufferWindow (...) -
+
Signature: map:(IObservable<'Source> -> IObservable<'Result>) -> bufferSize:int -> window:TimeSpan -> source:IObservable<'Source> -> IObservable<'Result>
Type parameters: 'Source, 'Result
- + @@ -3314,15 +3333,15 @@

Functions and values

- + replayMapWindow map window source -
+
Signature: map:(IObservable<'Source> -> IObservable<'Result>) -> window:TimeSpan -> source:IObservable<'Source> -> IObservable<'Result>
Type parameters: 'Source, 'Result
- + @@ -3335,15 +3354,15 @@

Functions and values

- + replayWindow window source -
+
Signature: window:TimeSpan -> source:IObservable<'Source> -> IConnectableObservable<'Source>
Type parameters: 'Source
- + @@ -3355,15 +3374,15 @@

Functions and values

- + result x -
- Signature: x:'?6694 -> IObservable<'?6694>
- Type parameters: '?6694
+
+ Signature: x:'?6696 -> IObservable<'?6696>
+ Type parameters: '?6696
- + @@ -3373,15 +3392,15 @@

Functions and values

- + retry source -
+
Signature: source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
- + @@ -3392,15 +3411,15 @@

Functions and values

- + retryCount count source -
+
Signature: count:int -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
- + @@ -3411,15 +3430,15 @@

Functions and values

- + sample interval source -
- Signature: interval:TimeSpan -> source:IObservable<'?6696> -> IObservable<'?6696>
- Type parameters: '?6696
+
+ Signature: interval:TimeSpan -> source:IObservable<'?6698> -> IObservable<'?6698>
+ Type parameters: '?6698
- + @@ -3430,15 +3449,15 @@

Functions and values

- + sampleWith sampler source -
+
Signature: sampler:IObservable<'Sample> -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Sample, 'Source
- + @@ -3451,15 +3470,15 @@

Functions and values

- + scan accumulator source -
+
Signature: accumulator:('a -> 'a -> 'a) -> source:IObservable<'a> -> IObservable<'a>
Type parameters: 'a
- + @@ -3470,15 +3489,15 @@

Functions and values

- - scanInit source init accumulator + + scanInit init accumulator source -
- Signature: source:IObservable<'Source> -> init:'TAccumulate -> accumulator:('TAccumulate -> 'Source -> 'TAccumulate) -> IObservable<'TAccumulate>
- Type parameters: 'Source, 'TAccumulate
+
+ Signature: init:'TAccumulate -> accumulator:('TAccumulate -> 'Source -> 'TAccumulate) -> source:IObservable<'Source> -> IObservable<'TAccumulate>
+ Type parameters: 'TAccumulate, 'Source
- + @@ -3490,15 +3509,15 @@

Functions and values

- + selectIf condition thenSource -
- Signature: condition:(unit -> bool) -> thenSource:IObservable<'?6706> -> IObservable<'?6706>
- Type parameters: '?6706
+
+ Signature: condition:(unit -> bool) -> thenSource:IObservable<'?6708> -> IObservable<'?6708>
+ Type parameters: '?6708
- + @@ -3509,15 +3528,15 @@

Functions and values

- + selectIfElse (...) -
+
Signature: condition:(unit -> bool) -> elseSource:IObservable<'Result> -> thenSource:IObservable<'Result> -> IObservable<'Result>
Type parameters: 'Result
- + @@ -3528,15 +3547,15 @@

Functions and values

- + single value -
+
Signature: value:'Result -> IObservable<'Result>
Type parameters: 'Result
- + @@ -3547,15 +3566,15 @@

Functions and values

- + skip count source -
+
Signature: count:int -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
- + @@ -3566,15 +3585,15 @@

Functions and values

- + skipLast count source -
+
Signature: count:int -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
- + @@ -3585,15 +3604,15 @@

Functions and values

- + skipLastSpan duration source -
+
Signature: duration:TimeSpan -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
- + @@ -3604,15 +3623,15 @@

Functions and values

- + skipSpan duration source -
+
Signature: duration:TimeSpan -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
- + @@ -3623,15 +3642,15 @@

Functions and values

- + skipUntil startTime source -
+
Signature: startTime:DateTimeOffset -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
- + @@ -3642,15 +3661,15 @@

Functions and values

- + skipUntilOther other source -
+
Signature: other:IObservable<'Other> -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Other, 'Source
- + @@ -3661,15 +3680,15 @@

Functions and values

- + skipWhile predicate source -
+
Signature: predicate:('Source -> bool) -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
- + @@ -3680,15 +3699,15 @@

Functions and values

- + skipWhilei predicate source -
+
Signature: predicate:('Source -> int -> bool) -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
- + @@ -3700,15 +3719,15 @@

Functions and values

- + startWith values source -
- Signature: values:'?6729 -> source:IObservable<'T> -> IObservable<'T>
- Type parameters: '?6729, 'T
+
+ Signature: values:'?6731 -> source:IObservable<'T> -> IObservable<'T>
+ Type parameters: '?6731, 'T
- + @@ -3719,15 +3738,15 @@

Functions and values

- + subscribe onNext observable -
+
Signature: onNext:('T -> unit) -> observable:IObservable<'T> -> IDisposable
Type parameters: 'T
- + @@ -3738,15 +3757,15 @@

Functions and values

- + subscribeObserver observer observable -
+
Signature: observer:IObserver<'T> -> observable:IObservable<'T> -> IDisposable
Type parameters: 'T
- + @@ -3757,15 +3776,15 @@

Functions and values

- + subscribeOn context source -
+
Signature: context:SynchronizationContext -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
- + @@ -3779,15 +3798,15 @@

Functions and values

- + subscribeWithCallbacks (...) -
+
Signature: onNext:('T -> unit) -> onError:(exn -> unit) -> onCompleted:(unit -> unit) -> observable:IObservable<'T> -> IDisposable
Type parameters: 'T
- + @@ -3798,15 +3817,15 @@

Functions and values

- + subscribeWithCompletion (...) -
+
Signature: onNext:('T -> unit) -> onCompleted:(unit -> unit) -> observable:IObservable<'T> -> IDisposable
Type parameters: 'T
- + @@ -3817,15 +3836,15 @@

Functions and values

- + subscribeWithError (...) -
+
Signature: onNext:('T -> unit) -> onError:(exn -> unit) -> observable:IObservable<'T> -> IDisposable
Type parameters: 'T
- + @@ -3836,15 +3855,15 @@

Functions and values

- + switch sources -
+
Signature: sources:IObservable<IObservable<'Source>> -> IObservable<'Source>
Type parameters: 'Source
- + @@ -3858,15 +3877,15 @@

Functions and values

- + switchTask sources -
+
Signature: sources:IObservable<Task<'Source>> -> IObservable<'Source>
Type parameters: 'Source
- + @@ -3879,15 +3898,15 @@

Functions and values

- + synchronize source -
+
Signature: source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
- + @@ -3900,15 +3919,15 @@

Functions and values

- + synchronizeGate gate source -
+
Signature: gate:obj -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
- + @@ -3922,15 +3941,15 @@

Functions and values

- + take n source -
+
Signature: n:int -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
- + @@ -3941,15 +3960,15 @@

Functions and values

- + takeLast count source -
- Signature: count:int -> source:IObservable<'?6754> -> IObservable<'?6754>
- Type parameters: '?6754
+
+ Signature: count:int -> source:IObservable<'?6756> -> IObservable<'?6756>
+ Type parameters: '?6756
- + @@ -3960,15 +3979,15 @@

Functions and values

- + takeLastBuffer duration source -
+
Signature: duration:TimeSpan -> source:IObservable<'Source> -> IObservable<IList<'Source>>
Type parameters: 'Source
- + @@ -3979,15 +3998,15 @@

Functions and values

- + takeLastBufferCount count source -
+
Signature: count:int -> source:IObservable<'Source> -> IObservable<IList<'Source>>
Type parameters: 'Source
- + @@ -3998,15 +4017,15 @@

Functions and values

- + takeLastSpan duration source -
+
Signature: duration:TimeSpan -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
- + @@ -4017,15 +4036,15 @@

Functions and values

- + takeUntilOther other source -
+
Signature: other:IObservable<'Other> -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Other, 'Source
- + @@ -4036,15 +4055,15 @@

Functions and values

- + takeUntilTime endtime source -
+
Signature: endtime:DateTimeOffset -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
- + @@ -4055,15 +4074,15 @@

Functions and values

- + takeWhile predicate source -
+
Signature: predicate:('Source -> bool) -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
- + @@ -4074,15 +4093,15 @@

Functions and values

- + takeWhilei predicate source -
+
Signature: predicate:('Source -> int -> bool) -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
- + @@ -4094,15 +4113,15 @@

Functions and values

- + thenMap map source -
+
Signature: map:('Source -> 'Result) -> source:IObservable<'Source> -> Plan<'Result>
Type parameters: 'Source, 'Result
- + @@ -4114,15 +4133,15 @@

Functions and values

- + throttle dueTime source -
+
Signature: dueTime:TimeSpan -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
- + @@ -4133,15 +4152,15 @@

Functions and values

- + throttleComputed (...) -
+
Signature: source:IObservable<'Source> -> throttleDurationSelector:('Source -> IObservable<'Throttle>) -> IObservable<'Source>
Type parameters: 'Source, 'Throttle
- + @@ -4152,15 +4171,15 @@

Functions and values

- + throw except -
+
Signature: except:exn -> IObservable<'Result>
Type parameters: 'Result
- + @@ -4171,15 +4190,15 @@

Functions and values

- + timeInterval source -
+
Signature: source:IObservable<'Source> -> IObservable<TimeInterval<'Source>>
Type parameters: 'Source
- + @@ -4190,15 +4209,15 @@

Functions and values

- + timeout timeout source -
+
Signature: timeout:DateTimeOffset -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
- + @@ -4210,15 +4229,15 @@

Functions and values

- + timeout2Duration (...) -
+
Signature: timeout:IObservable<'Timeout> -> durationSelector:('Source -> IObservable<'Timeout>) -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Timeout, 'Source
- + @@ -4232,15 +4251,15 @@

Functions and values

- + timeout2DurationOther (...) -
+
Signature: timeout:IObservable<'Timeout> -> durationSelector:('Source -> IObservable<'Timeout>) -> other:IObservable<'Source> -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Timeout, 'Source
- + @@ -4254,15 +4273,15 @@

Functions and values

- + timeoutDuration durationSelector source -
+
Signature: durationSelector:('Source -> IObservable<'Timeout>) -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source, 'Timeout
- + @@ -4275,15 +4294,15 @@

Functions and values

- + timeoutOther timeout other source -
+
Signature: timeout:DateTimeOffset -> other:IObservable<'Source> -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
- + @@ -4296,15 +4315,15 @@

Functions and values

- + timeoutSpan timeout source -
+
Signature: timeout:TimeSpan -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
- + @@ -4317,15 +4336,15 @@

Functions and values

- + timeoutSpanOther timeout other source -
+
Signature: timeout:TimeSpan -> other:IObservable<'Source> -> source:IObservable<'Source> -> IObservable<'Source>
Type parameters: 'Source
- + @@ -4338,15 +4357,15 @@

Functions and values

- + timer dueTime -
+
Signature: dueTime:DateTimeOffset -> IObservable<int64>
- + @@ -4357,15 +4376,15 @@

Functions and values

- + timerPeriod dueTime period -
+
Signature: dueTime:DateTimeOffset -> period:TimeSpan -> IObservable<int64>
- + @@ -4376,15 +4395,15 @@

Functions and values

- + timerSpan dueTime -
+
Signature: dueTime:TimeSpan -> IObservable<int64>
- + @@ -4395,15 +4414,15 @@

Functions and values

- + timerSpanPeriod (dueTime, period) -
+
Signature: (dueTime:TimeSpan * period:TimeSpan) -> IObservable<int64>
- + @@ -4415,15 +4434,15 @@

Functions and values

- + timestamp source -
+
Signature: source:IObservable<'Source> -> IObservable<Timestamped<'Source>>
Type parameters: 'Source
- + @@ -4434,15 +4453,15 @@

Functions and values

- + toArray source -
- Signature: source:IObservable<'?6808> -> IObservable<'?6808 []>
- Type parameters: '?6808
+
+ Signature: source:IObservable<'?6810> -> IObservable<'?6810 []>
+ Type parameters: '?6810
- + @@ -4454,15 +4473,15 @@

Functions and values

- + toDictionary keySelector source -
- Signature: keySelector:Func<'?6810,'?6811> -> source:IObservable<'?6810> -> IObservable<IDictionary<'?6811,'?6810>>
- Type parameters: '?6810, '?6811
+
+ Signature: keySelector:Func<'?6812,'?6813> -> source:IObservable<'?6812> -> IObservable<IDictionary<'?6813,'?6812>>
+ Type parameters: '?6812, '?6813
- + @@ -4473,15 +4492,15 @@

Functions and values

- + toDictionaryCompareElements (...) -
+
Signature: keySelector:('Source -> 'Key) -> elementSelector:('Source -> 'Elm) -> comparer:'Key -> source:'Source -> IObservable<IDictionary<'Key,'Elm>>
Type parameters: 'Source, 'Key, 'Elm
- + @@ -4492,15 +4511,15 @@

Functions and values

- + toDictionaryComparer (...) -
+
Signature: keySelector:('Source -> 'Key) -> comparer:'Key -> source:'Source -> IObservable<IDictionary<'Key,'Source>>
Type parameters: 'Source, 'Key
- + @@ -4512,15 +4531,15 @@

Functions and values

- + toDictionaryElements (...) -
+
Signature: keySelector:('Source -> 'Key) -> elementSelector:('Source -> 'Elm) -> source:'Source -> IObservable<IDictionary<'Key,'Elm>>
Type parameters: 'Source, 'Key, 'Elm
- + @@ -4531,15 +4550,15 @@

Functions and values

- + toEnumerable source -
+
Signature: source:IObservable<'T> -> IEnumerable<'T>
Type parameters: 'T
- + @@ -4550,15 +4569,15 @@

Functions and values

- + toEvent source -
+
Signature: source:IObservable<unit> -> IEventSource<unit>
- + @@ -4569,15 +4588,15 @@

Functions and values

- + toEventType source -
+
Signature: source:IObservable<'Source> -> IEventSource<'Source>
Type parameters: 'Source
- + @@ -4588,15 +4607,15 @@

Functions and values

- + toList source -
- Signature: source:IObservable<'?6827> -> IObservable<IList<'?6827>>
- Type parameters: '?6827
+
+ Signature: source:IObservable<'?6829> -> IObservable<IList<'?6829>>
+ Type parameters: '?6829
- + @@ -4607,15 +4626,15 @@

Functions and values

- + toLookup keySelector source -
+
Signature: keySelector:('Source -> 'Key) -> source:IObservable<'Source> -> IObservable<ILookup<'Key,'Source>>
Type parameters: 'Source, 'Key
- + @@ -4626,15 +4645,15 @@

Functions and values

- + toLookupCompare (...) -
+
Signature: keySelector:('Source -> 'Key) -> comparer:IEqualityComparer<'Key> -> source:IObservable<'Source> -> IObservable<ILookup<'Key,'Source>>
Type parameters: 'Source, 'Key
- + @@ -4645,15 +4664,15 @@

Functions and values

- + toLookupCompareElement (...) -
+
Signature: keySelector:('Source -> 'Key) -> elementSelector:('Source -> 'Element) -> source:IObservable<'Source> -> IObservable<ILookup<'Key,'Element>>
Type parameters: 'Source, 'Key, 'Element
- + @@ -4664,15 +4683,15 @@

Functions and values

- + toLookupElement (...) -
+
Signature: keySelector:('Source -> 'Key) -> elementSelector:('Source -> 'Element) -> comparer:IEqualityComparer<'Key> -> source:IObservable<'Source> -> IObservable<ILookup<'Key,'Element>>
Type parameters: 'Source, 'Key, 'Element
- + @@ -4683,15 +4702,15 @@

Functions and values

- + toObservable source -
+
Signature: source:seq<'T> -> IObservable<'T>
Type parameters: 'T
- + @@ -4702,15 +4721,15 @@

Functions and values

- + using resourceFactory observableFactory -
+
Signature: resourceFactory:(unit -> 'TResource) -> observableFactory:('TResource -> IObservable<'Result>) -> IObservable<'Result>
Type parameters: 'TResource, 'Result
- + @@ -4722,15 +4741,15 @@

Functions and values

- + wait source -
- Signature: source:IObservable<'?6848> -> '?6848
- Type parameters: '?6848
+
+ Signature: source:IObservable<'?6850> -> '?6850
+ Type parameters: '?6850
- + @@ -4743,15 +4762,15 @@

Functions and values

- + whileLoop condition source -
- Signature: condition:(unit -> bool) -> source:IObservable<'?6850> -> IObservable<'?6850>
- Type parameters: '?6850
+
+ Signature: condition:(unit -> bool) -> source:IObservable<'?6852> -> IObservable<'?6852>
+ Type parameters: '?6852
- + @@ -4764,15 +4783,15 @@

Functions and values

- + window windowClosingSelector source -
+
Signature: windowClosingSelector:(unit -> IObservable<'WindowClosing>) -> source:IObservable<'Source> -> IObservable<IObservable<'Source>>
Type parameters: 'WindowClosing, 'Source
- + @@ -4785,15 +4804,15 @@

Functions and values

- + windowBounded windowBoundaries source -
+
Signature: windowBoundaries:IObservable<'WindowBoundary> -> source:IObservable<'Source> -> IObservable<IObservable<'Source>>
Type parameters: 'WindowBoundary, 'Source
- + @@ -4806,15 +4825,15 @@

Functions and values

- + windowCount count source -
+
Signature: count:int -> source:IObservable<'Source> -> IObservable<IObservable<'Source>>
Type parameters: 'Source
- + @@ -4826,15 +4845,15 @@

Functions and values

- + windowCountSkip count skip source -
+
Signature: count:int -> skip:int -> source:IObservable<'Source> -> IObservable<IObservable<'Source>>
Type parameters: 'Source
- + @@ -4845,15 +4864,15 @@

Functions and values

- + windowOpenClose (...) -
+
Signature: windowOpenings:IObservable<'WinOpen> -> windowClosingSelector:('WinOpen -> IObservable<'WinClose>) -> source:IObservable<'Source> -> IObservable<IObservable<'Source>>
Type parameters: 'WinOpen, 'WinClose, 'Source
- + @@ -4866,15 +4885,15 @@

Functions and values

- + windowTimeCount timeSpan count source -
+
Signature: timeSpan:TimeSpan -> count:int -> source:IObservable<'Source> -> IObservable<IObservable<'Source>>
Type parameters: 'Source
- + @@ -4888,15 +4907,15 @@

Functions and values

- + windowTimeShift (...) -
+
Signature: timeSpan:TimeSpan -> timeShift:TimeSpan -> source:IObservable<'Source> -> IObservable<IObservable<'Source>>
Type parameters: 'Source
- + @@ -4908,15 +4927,15 @@

Functions and values

- + windowTimeSpan timeSpan source -
+
Signature: timeSpan:TimeSpan -> source:IObservable<'Source> -> IObservable<IObservable<'Source>>
Type parameters: 'Source
- + @@ -4928,15 +4947,15 @@

Functions and values

- + zip first second resultSelector -
+
Signature: first:IObservable<'Source1> -> second:IObservable<'Source2> -> resultSelector:('Source1 -> 'Source2 -> 'Result) -> IObservable<'Result>
Type parameters: 'Source1, 'Source2, 'Result
- + @@ -4947,15 +4966,15 @@

Functions and values

- + zipArray sources -
+
Signature: sources:IObservable<'Source> [] -> IObservable<IList<'Source>>
Type parameters: 'Source
- + @@ -4967,15 +4986,15 @@

Functions and values

- + zipSeq sources -
+
Signature: sources:seq<IObservable<'Source>> -> IObservable<IList<'Source>>
Type parameters: 'Source
- + @@ -4987,15 +5006,15 @@

Functions and values

- + zipSeqMap resultSelector sources -
+
Signature: resultSelector:(IList<'S> -> 'R) -> sources:seq<IObservable<'S>> -> IObservable<'R>
Type parameters: 'S, 'R
- + @@ -5008,15 +5027,15 @@

Functions and values

- + zipWithSeq resultSelector second first -
+
Signature: resultSelector:('Source1 -> 'Source2 -> 'Result) -> second:seq<'Source2> -> first:IObservable<'Source1> -> IObservable<'Result>
Type parameters: 'Source1, 'Source2, 'Result
- + From 53b04396d91c354a94bb91ca65961b68b562e003 Mon Sep 17 00:00:00 2001 From: Ryan Riley Date: Mon, 20 Oct 2014 21:20:00 -0500 Subject: [PATCH 04/18] Update generated documentation for version 2.4.0 --- img/logo.pdn | Bin 0 -> 39058 bytes img/logo.png | Bin 29944 -> 13848 bytes 2 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 img/logo.pdn diff --git a/img/logo.pdn b/img/logo.pdn new file mode 100644 index 0000000000000000000000000000000000000000..f15ebca8bf1ade7f596dfc2c19c5122e4edbb1ce GIT binary patch literal 39058 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 F6#&2f*rEUc literal 0 HcmV?d00001 diff --git a/img/logo.png b/img/logo.png index f1bc0093ec7f96f04c9434d72025ebac52f25cee..dd7984ab8b3415b663a000be9f79aa3598a62e11 100644 GIT binary patch literal 13848 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 Date: Mon, 20 Oct 2014 21:39:48 -0500 Subject: [PATCH 05/18] Update generated documentation for version 2.4.0 --- index.html | 2 +- tutorial.html | 79 ++++++++++++++++++++++++++++++++++++++++++++++++--- 2 files changed, 76 insertions(+), 5 deletions(-) diff --git a/index.html b/index.html index 2155293..d7fba92 100644 --- a/index.html +++ b/index.html @@ -35,7 +35,7 @@

FSharp.Control.R

FSharp.Control.Reactive

-

Documentation

+

FSharp.Control.Reactive provides F#-style modules for working with the Reactive Extensions (Rx) as a set of extensions to the built-in Observable module. The library includes observe and rxquery computation expressions, as well.

diff --git a/tutorial.html b/tutorial.html index 4edd28e..6544dca 100644 --- a/tutorial.html +++ b/tutorial.html @@ -2,7 +2,8 @@ - tutorial + FSharp.Control.Reactive Tutorial + @@ -32,10 +33,80 @@

FSharp.Control.R
-

- TODO: Add Getting Started tutorial - *

+

FSharp.Control.Reactive Tutorial

+

The easiest way to get started using FSharp.Control.Reactive is to take a look at the tests. In general, you can consider the Observable module as providing a set of extensions to the built-in Observable module.

+ +

As a first, simple example, the built-in module does not include a zip operator, but FSharp.Control.Reactive fills in this gap:

+ + + + +
+1: 
+2: 
+3: 
+4: 
+5: 
+
+
+let tuple x y = x,y
+let obs1 = Observable.Return 1
+let obs2 = Observable.Return "A"
+Observable.zip obs1 obs2 tuple
+|> Observable.subscribe (printfn "%A")
+
+ +

The provided computation expressions open new approaches for constructing and combining Observable computations. The observe computation expression provides a simple workflow using the essential LINQ operators:

+ + + + +
+1: 
+2: 
+3: 
+4: 
+5: 
+6: 
+7: 
+8: 
+
+
+let rec generate x =
+    observe {
+        yield x
+        if x < 100000 then
+            yield! g (x + 1) }
+generate 5
+|> Observable.subscribeWithCallbacks ignore ignore ignore
+|> ignore
+
+ +

TODO: Continue tutorial with more complex examples, including use of rxquery.

+ +
namespace System
+
namespace System.Reactive
+
namespace System.Reactive.Linq
+
namespace FSharp
+
namespace FSharp.Control
+
namespace FSharp.Control.Reactive
+
module Builders

from FSharp.Control.Reactive
+
val tuple : x:'a -> y:'b -> 'a * 'b

Full name: Tutorial.tuple
+
val x : 'a
+
val y : 'b
+
val obs1 : IObservable<int>

Full name: Tutorial.obs1
+
type Observable =
  static member Aggregate<'TSource> : source:IObservable<'TSource> * accumulator:Func<'TSource, 'TSource, 'TSource> -> IObservable<'TSource> + 2 overloads
  static member All<'TSource> : source:IObservable<'TSource> * predicate:Func<'TSource, bool> -> IObservable<bool>
  static member Amb<'TSource> : params sources:IObservable<'TSource>[] -> IObservable<'TSource> + 2 overloads
  static member And<'TLeft, 'TRight> : left:IObservable<'TLeft> * right:IObservable<'TRight> -> Pattern<'TLeft, 'TRight>
  static member Any<'TSource> : source:IObservable<'TSource> -> IObservable<bool> + 1 overload
  static member AsObservable<'TSource> : source:IObservable<'TSource> -> IObservable<'TSource>
  static member Average : source:IObservable<float> -> IObservable<float> + 19 overloads
  static member Buffer<'TSource, 'TBufferClosing> : source:IObservable<'TSource> * bufferClosingSelector:Func<IObservable<'TBufferClosing>> -> IObservable<IList<'TSource>> + 10 overloads
  static member Case<'TValue, 'TResult> : selector:Func<'TValue> * sources:IDictionary<'TValue, IObservable<'TResult>> -> IObservable<'TResult> + 2 overloads
  static member Cast<'TResult> : source:IObservable<obj> -> IObservable<'TResult>
  ...

Full name: System.Reactive.Linq.Observable
+
Observable.Return<'TResult>(value: 'TResult) : IObservable<'TResult>
Observable.Return<'TResult>(value: 'TResult, scheduler: Reactive.Concurrency.IScheduler) : IObservable<'TResult>
+
val obs2 : IObservable<string>

Full name: Tutorial.obs2
+
val zip : first:IObservable<'Source1> -> second:IObservable<'Source2> -> resultSelector:('Source1 -> 'Source2 -> 'Result) -> IObservable<'Result>

Full name: FSharp.Control.Reactive.Observable.zip
+
Multiple items
val subscribe : onNext:('T -> unit) -> observable:IObservable<'T> -> IDisposable

Full name: FSharp.Control.Reactive.Observable.subscribe

--------------------
val subscribe : callback:('T -> unit) -> source:IObservable<'T> -> IDisposable

Full name: Microsoft.FSharp.Control.Observable.subscribe
+
val printfn : format:Printf.TextWriterFormat<'T> -> 'T

Full name: Microsoft.FSharp.Core.ExtraTopLevelOperators.printfn
+
val generate : x:int -> IObservable<int>

Full name: Tutorial.generate
+
val x : int
+
val observe : ObservableBuilder

Full name: FSharp.Control.Reactive.Builders.observe
+
val subscribeWithCallbacks : onNext:('T -> unit) -> onError:(exn -> unit) -> onCompleted:(unit -> unit) -> observable:IObservable<'T> -> IDisposable

Full name: FSharp.Control.Reactive.Observable.subscribeWithCallbacks
+
val ignore : value:'T -> unit

Full name: Microsoft.FSharp.Core.Operators.ignore
From 1b00a7ad39db276b5427fa43685c3f1abd01c831 Mon Sep 17 00:00:00 2001 From: Ryan Riley Date: Mon, 20 Oct 2014 21:50:49 -0500 Subject: [PATCH 06/18] Update generated documentation for version 2.4.0 --- tutorial.html | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/tutorial.html b/tutorial.html index 6544dca..db4c253 100644 --- a/tutorial.html +++ b/tutorial.html @@ -2,7 +2,7 @@ - FSharp.Control.Reactive Tutorial + <title>Getting Started @@ -33,10 +33,12 @@

FSharp.Control.R
-

FSharp.Control.Reactive Tutorial

+

Getting Started

The easiest way to get started using FSharp.Control.Reactive is to take a look at the tests. In general, you can consider the Observable module as providing a set of extensions to the built-in Observable module.

+

Observable Module

+

As a first, simple example, the built-in module does not include a zip operator, but FSharp.Control.Reactive fills in this gap:

@@ -57,6 +59,8 @@ 

FSharp.Control.Reactive Tutorial

+

Computation Expressions

+

The provided computation expressions open new approaches for constructing and combining Observable computations. The observe computation expression provides a simple workflow using the essential LINQ operators:

@@ -83,7 +87,13 @@ 

FSharp.Control.Reactive Tutorial

-

TODO: Continue tutorial with more complex examples, including use of rxquery.

+

You can find a few additional examples of both the observe and rxquery computation expressions on the soruce blog post.

+ +

Reactive Extensions

+ +

For more information on Rx, check out the Rx Workshop on Channel 9. The examples provided in the workshop should be easy to port to FSharp.Control.Reactive. The Beginner's Guide to the Reactive Extensions includes many other links to excellent content.

+ +

TODO: Continue tutorial with examples from the above, including use of rxquery.

namespace System
namespace System.Reactive
From b11ec088eec00c1acf7dc147c94a1a4e3d9c22cf Mon Sep 17 00:00:00 2001 From: Ryan Riley Date: Mon, 20 Oct 2014 21:52:39 -0500 Subject: [PATCH 07/18] Update generated documentation for version 2.4.0 --- tutorial.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tutorial.html b/tutorial.html index db4c253..bc94455 100644 --- a/tutorial.html +++ b/tutorial.html @@ -87,7 +87,7 @@

Computation Expressions

-

You can find a few additional examples of both the observe and rxquery computation expressions on the soruce blog post.

+

You can find a few additional examples of both the observe and rxquery computation expressions on the source blog post.

Reactive Extensions

From e656435fff7c5fbee5e0704c5bfe8b2529d8afb6 Mon Sep 17 00:00:00 2001 From: Ryan Riley Date: Mon, 20 Oct 2014 22:01:08 -0500 Subject: [PATCH 08/18] Update generated documentation for version 2.4.0 --- tutorial.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tutorial.html b/tutorial.html index bc94455..29e9abc 100644 --- a/tutorial.html +++ b/tutorial.html @@ -37,7 +37,7 @@

Getting Started

The easiest way to get started using FSharp.Control.Reactive is to take a look at the tests. In general, you can consider the Observable module as providing a set of extensions to the built-in Observable module.

-

Observable Module

+

Observable Module

As a first, simple example, the built-in module does not include a zip operator, but FSharp.Control.Reactive fills in this gap:

From ec5ec4c2469293afa56c5ae76c789ebe1acf3206 Mon Sep 17 00:00:00 2001 From: Ryan Riley Date: Tue, 21 Oct 2014 08:25:15 -0500 Subject: [PATCH 09/18] Update generated documentation for version 2.4.0 --- index.html | 2 +- ...sharp-control-reactive-buildersmodule-observablebuilder.html | 2 +- .../fsharp-control-reactive-buildersmodule-rxquerybuilder.html | 2 +- reference/fsharp-control-reactive-buildersmodule.html | 2 +- reference/fsharp-control-reactive-observablemodule.html | 2 +- reference/index.html | 2 +- tutorial.html | 2 +- 7 files changed, 7 insertions(+), 7 deletions(-) diff --git a/index.html b/index.html index d7fba92..7ac41f7 100644 --- a/index.html +++ b/index.html @@ -79,7 +79,7 @@

Contributing and copyright

  • Home page
  • -
  • Get Library via NuGet
  • +
  • Get Library via NuGet
  • Source Code on GitHub
  • License
  • Release Notes
  • diff --git a/reference/fsharp-control-reactive-buildersmodule-observablebuilder.html b/reference/fsharp-control-reactive-buildersmodule-observablebuilder.html index 10a5cbd..87675e7 100644 --- a/reference/fsharp-control-reactive-buildersmodule-observablebuilder.html +++ b/reference/fsharp-control-reactive-buildersmodule-observablebuilder.html @@ -315,7 +315,7 @@

    Instance members

  • Home page
  • -
  • Get Library via NuGet
  • +
  • Get Library via NuGet
  • Source Code on GitHub
  • License
  • Release Notes
  • diff --git a/reference/fsharp-control-reactive-buildersmodule-rxquerybuilder.html b/reference/fsharp-control-reactive-buildersmodule-rxquerybuilder.html index 67976ed..398b38e 100644 --- a/reference/fsharp-control-reactive-buildersmodule-rxquerybuilder.html +++ b/reference/fsharp-control-reactive-buildersmodule-rxquerybuilder.html @@ -622,7 +622,7 @@

    Instance members

  • Home page
  • -
  • Get Library via NuGet
  • +
  • Get Library via NuGet
  • Source Code on GitHub
  • License
  • Release Notes
  • diff --git a/reference/fsharp-control-reactive-buildersmodule.html b/reference/fsharp-control-reactive-buildersmodule.html index 7248721..be4a61e 100644 --- a/reference/fsharp-control-reactive-buildersmodule.html +++ b/reference/fsharp-control-reactive-buildersmodule.html @@ -119,7 +119,7 @@

    Functions and values

  • Home page
  • -
  • Get Library via NuGet
  • +
  • Get Library via NuGet
  • Source Code on GitHub
  • License
  • Release Notes
  • diff --git a/reference/fsharp-control-reactive-observablemodule.html b/reference/fsharp-control-reactive-observablemodule.html index 3d59a19..3bf5a80 100644 --- a/reference/fsharp-control-reactive-observablemodule.html +++ b/reference/fsharp-control-reactive-observablemodule.html @@ -5054,7 +5054,7 @@

    Functions and values

  • Home page
  • -
  • Get Library via NuGet
  • +
  • Get Library via NuGet
  • Source Code on GitHub
  • License
  • Release Notes
  • diff --git a/reference/index.html b/reference/index.html index b5a5d05..12c5cfc 100644 --- a/reference/index.html +++ b/reference/index.html @@ -67,7 +67,7 @@

    FSharp.Control.Reactive Namespace

  • Home page
  • -
  • Get Library via NuGet
  • +
  • Get Library via NuGet
  • Source Code on GitHub
  • License
  • Release Notes
  • diff --git a/tutorial.html b/tutorial.html index 29e9abc..2e38c6f 100644 --- a/tutorial.html +++ b/tutorial.html @@ -125,7 +125,7 @@

    Reactive Extensions

  • Home page
  • -
  • Get Library via NuGet
  • +
  • Get Library via NuGet
  • Source Code on GitHub
  • License
  • Release Notes
  • From 5e2d89d38bca91b86ce10bff3ebacc249aca2dee Mon Sep 17 00:00:00 2001 From: Ryan Riley Date: Mon, 11 Jun 2018 14:40:07 -0500 Subject: [PATCH 10/18] Update generated documentation for version 4.1.0 --- content/style.css | 79 +- content/style_light.css | 227 + img/enable-disable.gif | Bin 0 -> 78339 bytes img/red-green.gif | Bin 0 -> 126972 bytes img/reversed.gif | Bin 0 -> 60343 bytes index.html | 45 +- introduction.html | 248 + ...tive-buildersmodule-observablebuilder.html | 176 +- ...eactive-buildersmodule-rxquerybuilder.html | 432 +- ...sharp-control-reactive-buildersmodule.html | 45 +- ...arp-control-reactive-disposablemodule.html | 231 + .../fsharp-control-reactive-disposables.html | 101 + ...arp-control-reactive-observablemodule.html | 5322 +++++++++++------ .../fsharp-control-reactive-schedule.html | 894 +++ ...-control-reactive-scheduler-scheduler.html | 149 + .../fsharp-control-reactive-scheduler.html | 120 + .../fsharp-control-reactive-subject-1.html | 166 + ...fsharp-control-reactive-subjectmodule.html | 168 + ...-reactive-testing-gentestnotification.html | 97 + ...l-reactive-testing-testnotification-1.html | 109 + ...active-testing-testnotificationmodule.html | 437 ++ ...-reactive-testing-testnotifications-1.html | 97 + ...l-reactive-testing-testobservermodule.html | 148 + ...l-reactive-testing-testschedulemodule.html | 336 ++ ...arp-control-reactive-waithandlemodule.html | 146 + reference/index.html | 174 +- tutorial.html | 260 +- 27 files changed, 8063 insertions(+), 2144 deletions(-) create mode 100644 content/style_light.css create mode 100644 img/enable-disable.gif create mode 100644 img/red-green.gif create mode 100644 img/reversed.gif create mode 100644 introduction.html create mode 100644 reference/fsharp-control-reactive-disposablemodule.html create mode 100644 reference/fsharp-control-reactive-disposables.html create mode 100644 reference/fsharp-control-reactive-schedule.html create mode 100644 reference/fsharp-control-reactive-scheduler-scheduler.html create mode 100644 reference/fsharp-control-reactive-scheduler.html create mode 100644 reference/fsharp-control-reactive-subject-1.html create mode 100644 reference/fsharp-control-reactive-subjectmodule.html create mode 100644 reference/fsharp-control-reactive-testing-gentestnotification.html create mode 100644 reference/fsharp-control-reactive-testing-testnotification-1.html create mode 100644 reference/fsharp-control-reactive-testing-testnotificationmodule.html create mode 100644 reference/fsharp-control-reactive-testing-testnotifications-1.html create mode 100644 reference/fsharp-control-reactive-testing-testobservermodule.html create mode 100644 reference/fsharp-control-reactive-testing-testschedulemodule.html create mode 100644 reference/fsharp-control-reactive-waithandlemodule.html diff --git a/content/style.css b/content/style.css index cfabb35..1dbbd0c 100644 --- a/content/style.css +++ b/content/style.css @@ -1,24 +1,54 @@ @import url(https://fonts.googleapis.com/css?family=Droid+Sans|Droid+Sans+Mono|Open+Sans:400,600,700); -/*-------------------------------------------------------------------------- - Formatting for F# code snippets +/*-------------------------------------------------------------------------- + Formatting for F# code snippets /*--------------------------------------------------------------------------*/ -/* identifier */ -span.i { color:#d1d1d1; } -/* string */ -span.s { color:#d4b43c; } +/* strings --- and stlyes for other string related formats */ +span.s { color:#E0E268; } +/* printf formatters */ +span.pf { color:#E0C57F; } +/* escaped chars */ +span.e { color:#EA8675; } + +/* identifiers --- and styles for more specific identifier types */ +span.id { color:#d1d1d1; } +/* module */ +span.m { color:#43AEC6; } +/* reference type */ +span.rt { color:#43AEC6; } +/* value type */ +span.vt { color:#43AEC6; } +/* interface */ +span.if{ color:#43AEC6; } +/* type argument */ +span.ta { color:#43AEC6; } +/* disposable */ +span.d { color:#43AEC6; } +/* property */ +span.prop { color:#43AEC6; } +/* punctuation */ +span.p { color:#43AEC6; } +/* function */ +span.f { color:#e1e1e1; } +/* active pattern */ +span.pat { color:#4ec9b0; } +/* union case */ +span.u { color:#4ec9b0; } +/* enumeration */ +span.e { color:#4ec9b0; } /* keywords */ -span.k { color:#4e98dc; } +span.k { color:#FAB11D; } /* comment */ -span.c { color:#96C71D; } +span.c { color:#808080; } /* operators */ span.o { color:#af75c1; } /* numbers */ span.n { color:#96C71D; } /* line number */ span.l { color:#80b0b0; } - +/* mutable var or ref cell */ +span.v { color:#d1d1d1; font-weight: bold; } /* inactive code */ span.inactive { color:#808080; } /* preprocessor */ @@ -27,7 +57,7 @@ span.prep { color:#af75c1; } span.fsi { color:#808080; } /* omitted */ -span.omitted { +span.omitted { background:#3c4e52; border-radius:5px; color:#808080; @@ -41,12 +71,13 @@ div.tip { padding:6px 8px 6px 8px; display:none; color:#d1d1d1; + pointer-events:none; } table.pre pre { padding:0px; margin:0px; border:none; -} +} table.pre, pre.fssnip, pre { line-height:13pt; border:1px solid #d8d8d8; @@ -58,7 +89,11 @@ table.pre, pre.fssnip, pre { background-color:#212d30; padding:10px; border-radius:5px; - color:#d1d1d1; + color:#d1d1d1; + max-width: none; +} +pre.fssnip code { + font: 9pt 'Droid Sans Mono',consolas,monospace; } table.pre pre { padding:0px; @@ -75,7 +110,7 @@ table.pre td.lines { width:30px; } -/*-------------------------------------------------------------------------- +/*-------------------------------------------------------------------------- Formatting for page & standard document content /*--------------------------------------------------------------------------*/ @@ -143,7 +178,7 @@ td.title, thead { #main li { font-size: 11pt; margin: 5px 0px 5px 0px; } #main strong { font-weight:700; } -/*-------------------------------------------------------------------------- +/*-------------------------------------------------------------------------- Formatting for API reference /*--------------------------------------------------------------------------*/ @@ -175,8 +210,8 @@ td.title, thead { .github-link .normal { display: block; } .github-link:hover .normal { display: none; } -/*-------------------------------------------------------------------------- - Links +/*-------------------------------------------------------------------------- + Links /*--------------------------------------------------------------------------*/ h1 a, h1 a:hover, h1 a:focus, @@ -186,14 +221,14 @@ h4 a, h4 a:hover, h4 a:focus, h5 a, h5 a:hover, h5 a:focus, h6 a, h6 a:hover, h6 a:focus { color : inherit; text-decoration : inherit; outline:none } -/*-------------------------------------------------------------------------- - Additional formatting for the homepage +/*-------------------------------------------------------------------------- + Additional formatting for the homepage /*--------------------------------------------------------------------------*/ -#nuget { +#nuget { margin-top:20px; - font-size: 11pt; - padding:20px; + font-size: 11pt; + padding:20px; } #nuget pre { @@ -205,4 +240,4 @@ h6 a, h6 a:hover, h6 a:focus { color : inherit; text-decoration : inherit; outli border-style:none; color: #e0e0e0; margin-top:15px; -} \ No newline at end of file +} diff --git a/content/style_light.css b/content/style_light.css new file mode 100644 index 0000000..0685b48 --- /dev/null +++ b/content/style_light.css @@ -0,0 +1,227 @@ +@import url(https://fonts.googleapis.com/css?family=Droid+Sans|Droid+Sans+Mono|Open+Sans:400,600,700); + +/*-------------------------------------------------------------------------- + Formatting for F# code snippets +/*--------------------------------------------------------------------------*/ + +/* identifier */ +span.i { color:#000000; } +/* string */ +span.s { color:#a31515; } +/* keywords */ +span.k { color:#0000ff; } +/* comment */ +span.c { color:#008000; } +/* operators */ +span.o { color:#000000; } +/* numbers */ +span.n { color:#000000; } +/* line number */ +span.l { color:#96c2cd; } +/* type or module */ +span.t { color:#2b91af; } +/* function */ +span.f { color:#0000a0; } +/* DU case or active pattern */ +span.p { color:#800080; } +/* mutable var or ref cell */ +span.v { color:#000000; font-weight: bold; } +/* printf formatters */ +span.pf { color:#2b91af; } +/* escaped chars */ +span.e { color:#ff0080; } +/* mutable var or ref cell */ + + +/* inactive code */ +span.inactive { color:#808080; } +/* preprocessor */ +span.prep { color:#0000ff; } +/* fsi output */ +span.fsi { color:#808080; } + +/* omitted */ +span.omitted { + background:#3c4e52; + border-radius:5px; + color:#808080; + padding:0px 0px 1px 0px; +} +/* tool tip */ +div.tip { + background:#e5e5e5; + border-radius:4px; + font:9pt 'Droid Sans', arial, sans-serif; + padding:6px 8px 6px 8px; + display:none; + color:#000000; + pointer-events:none; +} +table.pre pre { + padding:0px; + margin:0px; + border:none; +} +table.pre, pre.fssnip, pre { + line-height:13pt; + border:1px solid #d8d8d8; + border-collapse:separate; + white-space:pre; + font: 10pt consolas,monospace; + width:90%; + margin:10px 20px 20px 20px; + background-color:#fdfdfd; + padding:10px; + border-radius:5px; + color:#000000; + max-width: none; +} +pre.fssnip code { + font: 9pt 'Droid Sans Mono',consolas,monospace; +} +table.pre pre { + padding:0px; + margin:0px; + border-radius:0px; + width: 100%; +} +table.pre td { + padding:0px; + white-space:normal; + margin:0px; +} +table.pre td.lines { + width:30px; +} + +/*-------------------------------------------------------------------------- + Formatting for page & standard document content +/*--------------------------------------------------------------------------*/ + +body { + font-family: 'Open Sans', serif; + padding-top: 0px; + padding-bottom: 40px; +} + +pre { + word-wrap: inherit; +} + +/* Format the heading - nicer spacing etc. */ +.masthead { + overflow: hidden; +} +.masthead .muted a { + text-decoration:none; + color:#999999; +} +.masthead ul, .masthead li { + margin-bottom:0px; +} +.masthead .nav li { + margin-top: 15px; + font-size:110%; +} +.masthead h3 { + margin-bottom:5px; + font-size:170%; +} +hr { + margin:0px 0px 20px 0px; +} + +/* Make table headings and td.title bold */ +td.title, thead { + font-weight:bold; +} + +/* Format the right-side menu */ +#menu { + margin-top:50px; + font-size:11pt; + padding-left:20px; +} + +#menu .nav-header { + font-size:12pt; + color:#606060; + margin-top:20px; +} + +#menu li { + line-height:25px; +} + +/* Change font sizes for headings etc. */ +#main h1 { font-size: 26pt; margin:10px 0px 15px 0px; font-weight:400; } +#main h2 { font-size: 20pt; margin:20px 0px 0px 0px; font-weight:400; } +#main h3 { font-size: 14pt; margin:15px 0px 0px 0px; font-weight:600; } +#main p { font-size: 11pt; margin:5px 0px 15px 0px; } +#main ul { font-size: 11pt; margin-top:10px; } +#main li { font-size: 11pt; margin: 5px 0px 5px 0px; } +#main strong { font-weight:700; } + +/*-------------------------------------------------------------------------- + Formatting for API reference +/*--------------------------------------------------------------------------*/ + +.type-list .type-name, .module-list .module-name { + width:25%; + font-weight:bold; +} +.member-list .member-name { + width:35%; +} +#main .xmldoc h2 { + font-size:14pt; + margin:10px 0px 0px 0px; +} +#main .xmldoc h3 { + font-size:12pt; + margin:10px 0px 0px 0px; +} +.github-link { + float:right; + text-decoration:none; +} +.github-link img { + border-style:none; + margin-left:10px; +} +.github-link .hover { display:none; } +.github-link:hover .hover { display:block; } +.github-link .normal { display: block; } +.github-link:hover .normal { display: none; } + +/*-------------------------------------------------------------------------- + Links +/*--------------------------------------------------------------------------*/ + +h1 a, h1 a:hover, h1 a:focus, +h2 a, h2 a:hover, h2 a:focus, +h3 a, h3 a:hover, h3 a:focus, +h4 a, h4 a:hover, h4 a:focus, +h5 a, h5 a:hover, h5 a:focus, +h6 a, h6 a:hover, h6 a:focus { color : inherit; text-decoration : inherit; outline:none } + +/*-------------------------------------------------------------------------- + Additional formatting for the homepage +/*--------------------------------------------------------------------------*/ + +#nuget { + margin-top:20px; + font-size: 11pt; + padding:20px; +} + +#nuget pre { + font-size:11pt; + -moz-border-radius: 0px; + -webkit-border-radius: 0px; + border-radius: 0px; + background: #404040; + border-style:none; + color: #e0e0e0; + margin-top:15px; +} diff --git a/img/enable-disable.gif b/img/enable-disable.gif new file mode 100644 index 0000000000000000000000000000000000000000..2ef4db8058805c04db17bac62e6d1b52619e326e GIT binary patch literal 78339 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 z%0D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 z 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 z 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 XCNnn81Xj%VIG~gJL%(!IAOSoJ6NbZ=gQv z2eZ7~wk{hxHTri|ivp!GJSL&<J&FU$Okj_ z1O`Y)c~FxaBSUc=ThQFe+470!GPHe+$H z2dpA^+Qgx#AdM2_n|alKMM}DT<1_h{2aeLpalBX9D#usJUMCN^$Un%vBcH7ub&{){ zq!hQ@5wF`9pqAGk;U#jKtqP4*_uSjhcPCgU>!Fs9hD9(LUExAso2gaQ?m;9pF0wFx zBhfk**9fXz*WuL}i!vI{4_J6Wlg`m~gb*mnRIrWEWmobka`6x1l(r#BO=MolJ}9f` z%CmdgG0_RPD0>>G(RyX$Ls-Y;VhV4W!#7FC3{KsLB8OF@UHLBM&quxx z9##)B=Q~u&P3>qemMkh1xQPu2t#o(Q&Ia+gwp34@j33q=b@3F`&`ce-mzSOp6uO(= znntCGX5I+0dwuoAG^Xg$2Vy(k*Ew=C=Nh9GB;5{=`*LOoGXy_uJu39cTb&_|J8ERB zTlK!b{)IwEu!)zD%g;pKt_`);f7dUjr%JV-LMFzfDh(!m!sQ(9rQgej> literal 0 HcmV?d00001 diff --git a/img/red-green.gif b/img/red-green.gif new file mode 100644 index 0000000000000000000000000000000000000000..1c325c5d0fd5e04160c0ad2be16bd9c2592286ef GIT binary patch literal 126972 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%0A=^L_lVHs$%sK8yW7HwCVlJgB$j)Dm6ViApf{JlJ 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

    RxvgSviohBj^7d)dh19W4bW8)@T`mTg) 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 literal 0 HcmV?d00001 diff --git a/img/reversed.gif b/img/reversed.gif new file mode 100644 index 0000000000000000000000000000000000000000..cdcfc0134f163d347395ef258c7c133de5f8b3a8 GIT binary patch literal 60343 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⁡x`9%`*#e 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 literal 0 HcmV?d00001 diff --git a/index.html b/index.html index 7ac41f7..8cd4b33 100644 --- a/index.html +++ b/index.html @@ -13,8 +13,8 @@ - - + + + + + +

    + Fork me on GitHub + + + diff --git a/reference/fsharp-control-reactive-buildersmodule-observablebuilder.html b/reference/fsharp-control-reactive-buildersmodule-observablebuilder.html index 87675e7..f6926d4 100644 --- a/reference/fsharp-control-reactive-buildersmodule-observablebuilder.html +++ b/reference/fsharp-control-reactive-buildersmodule-observablebuilder.html @@ -12,8 +12,8 @@ - - + + + + + +
    + +
    +
    +
    + + + + +

    Disposable

    +

    + Namespace: FSharp.Control.Reactive
    + + Attributes:
    +[<CompilationRepresentation(4)>]
    + +
    +

    +
    +

    Operators to work on disposable types

    + +
    + + + +

    Functions and values

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Function or valueDescription
    + + + compose x d + +
    + Signature: x:IDisposable -> d:IDisposable -> IDisposable
    +
    +
    + + + + +

    Compose two disposables together so they are both disposed when disposed is called on the 'composite' disposable.

    + + +
    + + + composite + +
    + Signature: IDisposable
    +
    +
    + + + + +

    Creates a new composite disposable with no disposables contained initially.

    + + +
    + + + create f + +
    + Signature: f:(unit -> unit) -> IDisposable
    +
    +
    + + + + +

    Creates an disposable object that invokes the specified function when disposed.

    + + +
    + + + dispose x + +
    + Signature: x:IDisposable -> unit
    +
    +
    + + + + +

    Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.

    + + +
    + + + ignoring f d + +
    + Signature: f:(unit -> '?8925) -> d:IDisposable -> unit
    + Type parameters: '?8925
    +
    + + + + +

    Execute and action without the resource while the disposable is still 'active'. +The used resource will be disposed afterwards.

    + + +
    + + + setIndirectly disposableFactory d + +
    + Signature: disposableFactory:(unit -> '?8933) -> d:SerialDisposable -> unit
    + Type parameters: '?8933
    +
    + + + + +

    Uses the double-indirection pattern to assign the disposable returned by the specified disposableFactory +to the 'Disposable' property of the specified serial disposable.

    + + +
    + + + using f d + +
    + Signature: f:('?8927 -> '?8928) -> d:'?8927 -> '?8928
    + Type parameters: '?8927, '?8928
    +
    + + + + +

    Execute and action with the resource while the disposable is still 'active'. +The used resource will be disposed afterwards.

    + + +
    + +
    +
    + F# Project + +
    +
    +
    + Fork me on GitHub + + + diff --git a/reference/fsharp-control-reactive-disposables.html b/reference/fsharp-control-reactive-disposables.html new file mode 100644 index 0000000..7988b9e --- /dev/null +++ b/reference/fsharp-control-reactive-disposables.html @@ -0,0 +1,101 @@ + + + + + Disposables - FSharp.Control.Reactive + + + + + + + + + + + + + + + +
    + +
    +
    +
    + + + + +

    Disposables

    +

    + Namespace: FSharp.Control.Reactive
    +

    +
    +
    + + + +

    Functions and values

    + + + + + + + + + + +
    Function or valueDescription
    + + + compose disposables + +
    + Signature: disposables:'a -> IDisposable
    + Type parameters: 'a
    +
    + + + + +

    Returns an IDisposable that disposes all the underlying disposables

    + + +
    + +
    +
    + F# Project + +
    +
    +
    + Fork me on GitHub + + + diff --git a/reference/fsharp-control-reactive-observablemodule.html b/reference/fsharp-control-reactive-observablemodule.html index 3bf5a80..ae5169f 100644 --- a/reference/fsharp-control-reactive-observablemodule.html +++ b/reference/fsharp-control-reactive-observablemodule.html @@ -12,8 +12,8 @@ - - + + @@ -51,206 +60,216 @@

    Functions and values

    - + aggregate accumulator source -
    - Signature: accumulator:('?6295 -> '?6295 -> '?6295) -> source:IObservable<'?6295> -> IObservable<'?6295>
    - Type parameters: '?6295
    +
    + Signature: accumulator:('?8185 -> '?8185 -> '?8185) -> source:IObservable<'?8185> -> IObservable<'?8185>
    + Type parameters: '?8185
    - + -

    Applies an accumulator function over an observable sequence, returning the +

    Applies an accumulator function over an observable sequence, returning the result of the aggregation as a single element in the result sequence

    + - + all pred source -
    - Signature: pred:Func<'?6297,bool> -> source:IObservable<'?6297> -> IObservable<bool>
    - Type parameters: '?6297
    +
    + Signature: pred:('?8187 -> bool) -> source:IObservable<'?8187> -> IObservable<bool>
    + Type parameters: '?8187
    - + -

    Determines whether all elements of and observable satisfy a predicate

    +

    Determines whether all elements of an observable satisfy a predicate

    + - + amb second first -
    - Signature: second:IObservable<'?6299> -> first:IObservable<'?6299> -> IObservable<'?6299>
    - Type parameters: '?6299
    +
    + Signature: second:IObservable<'?8189> -> first:IObservable<'?8189> -> IObservable<'?8189>
    + Type parameters: '?8189
    - +

    Returns the observable sequence that reacts first

    + - + ambArray source -
    +
    Signature: source:IObservable<'T> [] -> IObservable<'T>
    - Type parameters: 'T
    + Type parameters: 'T
    - +

    Propagates the observable sequence that reacts first

    + - + ambSeq source -
    +
    Signature: source:seq<IObservable<'T>> -> IObservable<'T>
    - Type parameters: 'T
    + Type parameters: 'T
    - +

    Propagates the observable sequence that reacts first

    + - + any source -
    +
    Signature: source:IObservable<'Source> -> IObservable<bool>
    - Type parameters: 'Source
    + Type parameters: 'Source
    - +

    Determines whether an observable sequence contains any elements

    + - + apply f m -
    - Signature: f:IObservable<('?6312 -> '?6313)> -> m:IObservable<'?6312> -> IObservable<'?6313>
    - Type parameters: '?6312, '?6313
    +
    + Signature: f:IObservable<('?8202 -> '?8203)> -> m:IObservable<'?8202> -> IObservable<'?8203>
    + Type parameters: '?8202, '?8203
    - +

    Lifts the values of f and m and applies f to m, returning an IObservable of the result.

    + - + asObservable source -
    +
    Signature: source:IObservable<'Source> -> IObservable<'Source>
    - Type parameters: 'Source
    + Type parameters: 'Source
    - +

    Hides the identy of an observable sequence

    + - + bind f m -
    +
    Signature: f:('T -> IObservable<'TNext>) -> m:IObservable<'T> -> IObservable<'TNext>
    - Type parameters: 'T, 'TNext
    + Type parameters: 'T, 'TNext
    - +

    Binds an observable to generate a subsequent observable.

    + - + both second first -
    - Signature: second:IObservable<'?6315> -> first:IObservable<'?6316> -> Pattern<'?6316,'?6315>
    - Type parameters: '?6315, '?6316
    +
    + Signature: second:IObservable<'?8205> -> first:IObservable<'?8206> -> Pattern<'?8206,'?8205>
    + Type parameters: '?8205, '?8206
    - +

    Matches when both observable sequences have an available value

    + - + buffer bufferClosingSelector source -
    - Signature: bufferClosingSelector:IObservable<'BufferClosing> -> source:IObservable<'?6319> -> IObservable<IList<'?6319>>
    - Type parameters: 'BufferClosing, '?6319
    +
    + Signature: bufferClosingSelector:IObservable<'BufferClosing> -> source:IObservable<'?8209> -> IObservable<IList<'?8209>>
    + Type parameters: 'BufferClosing, '?8209
    - + @@ -260,116 +279,121 @@

    Functions and values

    - + bufferBounded boundaries source -
    +
    Signature: boundaries:IObservable<'BufferClosing> -> source:IObservable<'T> -> IObservable<IList<'T>>
    - Type parameters: 'BufferClosing, 'T
    + Type parameters: 'BufferClosing, 'T
    - + -

    Projects each element of an observable sequence into +

    Projects each element of an observable sequence into consequtive non-overlapping buffers based on a sequence of boundary markers

    + - + bufferCount count source -
    - Signature: count:int -> source:IObservable<'?6324> -> IObservable<IList<'?6324>>
    - Type parameters: '?6324
    +
    + Signature: count:int -> source:IObservable<'?8214> -> IObservable<IList<'?8214>>
    + Type parameters: '?8214
    - + -

    Projects each element of an observable sequence into +

    Projects each element of an observable sequence into consequtive non-overlapping buffers produced based on count information

    + - + bufferCountSkip count skip source -
    - Signature: count:int -> skip:int -> source:IObservable<'?6326> -> IObservable<IList<'?6326>>
    - Type parameters: '?6326
    +
    + Signature: count:int -> skip:int -> source:IObservable<'?8216> -> IObservable<IList<'?8216>>
    + Type parameters: '?8216
    - +

    Projects each element of an observable sequence into zero or more buffers which are produced based on element count information

    + - + bufferFork (...) -
    - Signature: bufferOpenings:IObservable<'BufferOpening> -> bufferClosingSelector:('BufferOpening -> IObservable<'T>) -> source:IObservable<'?6334> -> IObservable<IList<'?6334>>
    - Type parameters: 'BufferOpening, 'T, '?6334
    +
    + Signature: bufferOpenings:IObservable<'BufferOpening> -> bufferClosingSelector:('BufferOpening -> IObservable<'T>) -> source:IObservable<'?8228> -> IObservable<IList<'?8228>>
    + Type parameters: 'BufferOpening, 'T, '?8228
    - + -

    Projects each element of an observable sequence into zero of more buffers. +

    Projects each element of an observable sequence into zero of more buffers. bufferOpenings - observable sequence whose elements denote the opening of each produced buffer bufferClosing - observable sequence whose elements denote the closing of each produced buffer

    + - + bufferSpan timeSpan source -
    - Signature: timeSpan:TimeSpan -> source:IObservable<'?6328> -> IObservable<IList<'?6328>>
    - Type parameters: '?6328
    +
    + Signature: timeSpan:TimeSpan -> source:IObservable<'?8218> -> IObservable<IList<'?8218>>
    + Type parameters: '?8218
    - + -

    Projects each element of an observable sequence into +

    Projects each element of an observable sequence into consequtive non-overlapping buffers produced based on timing information

    + - + bufferSpanCount timeSpan count source -
    - Signature: timeSpan:TimeSpan -> count:int -> source:IObservable<'?6330> -> IObservable<IList<'?6330>>
    - Type parameters: '?6330
    +
    + Signature: timeSpan:TimeSpan -> count:int -> source:IObservable<'?8222> -> IObservable<IList<'?8222>>
    + Type parameters: '?8222
    - + @@ -377,215 +401,313 @@

    Functions and values

    sent out when either it's full or a specific amount of time has elapsed Analogy - A boat that departs when it's full or at its scheduled time to leave

    + - + + bufferSpanCountOn (...) + +
    + Signature: scheduler:IScheduler -> timeSpan:TimeSpan -> count:int -> source:IObservable<'?8224> -> IObservable<IList<'?8224>>
    + Type parameters: '?8224
    + + + + + + +

    Projects each element of an observable sequence into a buffer that's sent out +when either it's full or a given amount of time has elapsed, using the specified scheduler to run timers. +Analogy - A ferry leaves the dock when all the seats are taken, or at the scheduled time or departure, +whichever event occurs first.

    + + + + + + + + + bufferSpanOn scheduler timeSpan source + +
    + Signature: scheduler:IScheduler -> timeSpan:TimeSpan -> source:IObservable<'?8220> -> IObservable<IList<'?8220>>
    + Type parameters: '?8220
    + + + + + + +

    Projects each element of an observable sequence into consecutive non-overlapping buffers +which are produced based on timing information, using the specified scheduler to run timers.

    + + + + + + + + bufferSpanShift (...) -
    - Signature: timeSpan:TimeSpan -> timeShift:TimeSpan -> source:IObservable<'?6336> -> IObservable<IList<'?6336>>
    - Type parameters: '?6336
    +
    + Signature: timeSpan:TimeSpan -> timeShift:TimeSpan -> source:IObservable<'?8230> -> IObservable<IList<'?8230>>
    + Type parameters: '?8230
    - + -

    Projects each element of an observable sequence into +

    Projects each element of an observable sequence into zero or more buffers produced based on timing information

    + - + + bufferSpanShiftOn (...) + +
    + Signature: scheduler:IScheduler -> timeSpan:TimeSpan -> timeShift:TimeSpan -> source:IObservable<'?8232> -> IObservable<IList<'?8232>>
    + Type parameters: '?8232
    + + + + + + +

    Projects each element of an observable sequence into +zero or more buffers which are produced based on timing information, +using the specified scheduler to run timers.

    + + + + + + + + case selector sources -
    - Signature: selector:(unit -> '?6340) -> sources:IDictionary<'?6340,IObservable<'?6341>> -> IObservable<'?6341>
    - Type parameters: '?6340, '?6341
    +
    + Signature: selector:(unit -> '?8236) -> sources:IDictionary<'?8236,IObservable<'?8237>> -> IObservable<'?8237>
    + Type parameters: '?8236, '?8237
    - +

    Uses selector to determine which source in sources to return, choosing an empty sequence if no match is found

    + - + caseDefault (...) -
    +
    Signature: selector:(unit -> 'Value) -> defaulSource:IObservable<'Result> -> sources:IDictionary<'Value,IObservable<'Result>> -> IObservable<'Result>
    - Type parameters: 'Value, 'Result
    + Type parameters: 'Value, 'Result
    - +

    Uses selector to determine which source in sources to return, choosing defaulSource if no match is found

    + - + + caseOn scheduler selector sources + +
    + Signature: scheduler:IScheduler -> selector:Func<'?8242> -> sources:IDictionary<'?8242,IObservable<'?8243>> -> IObservable<'?8243>
    + Type parameters: '?8242, '?8243
    + + + + + + +

    Uses selector to determine which source in sources to return, +choosing an empty sequence on the specified scheduler if no match is found.

    + + + + + + + + cast source -
    +
    Signature: source:IObservable<obj> -> IObservable<'CastType>
    - Type parameters: 'CastType
    + Type parameters: 'CastType
    - +

    Converts the elements of the sequence to the specified type

    + - + catch second first -
    +
    Signature: second:IObservable<'T> -> first:IObservable<'T> -> IObservable<'T>
    - Type parameters: 'T
    + Type parameters: 'T
    - +

    Continues an observable sequence that is terminated by an exception with the next observable sequence.

    + - + catchArray sources -
    +
    Signature: sources:IObservable<'T> [] -> IObservable<'T>
    - Type parameters: 'T
    + Type parameters: 'T
    - +

    Continues an observable sequence that is terminated by an exception with the next observable sequence.

    + - + catchSeq sources -
    +
    Signature: sources:seq<IObservable<'T>> -> IObservable<'T>
    - Type parameters: 'T
    + Type parameters: 'T
    - +

    Continues an observable sequence that is terminated by an exception with the next observable sequence.

    + - + catchWith handler source -
    - Signature: handler:('?6348 -> IObservable<'?6349>) -> source:IObservable<'?6349> -> IObservable<'?6349>
    - Type parameters: '?6348, '?6349
    +
    + Signature: handler:('?8247 -> IObservable<'?8248>) -> source:IObservable<'?8248> -> IObservable<'?8248>
    + Type parameters: '?8247, '?8248
    - +

    Continues an observable sequence that is terminated by an exception of the specified type with the observable sequence produced by the handler.

    + - + chunkify source -
    +
    Signature: source:IObservable<'Source> -> seq<IList<'Source>>
    - Type parameters: 'Source
    + Type parameters: 'Source
    - +

    Produces an enumerable sequence of consequtive (possibly empty) chunks of the source observable

    + - + collect map source -
    +
    Signature: map:('Source -> IObservable<'Result>) -> source:seq<'Source> -> IObservable<'Result>
    - Type parameters: 'Source, 'Result
    + Type parameters: 'Source, 'Result
    - +

    Concatenates the observable sequences obtained by applying the map for each element in the given enumerable

    + - - collectMerge source newCollector merge + + collectMerge newCollector merge source -
    - Signature: source:IObservable<'?6360> -> newCollector:(unit -> '?6361) -> merge:('?6361 -> '?6360 -> '?6361) -> IEnumerable<'?6361>
    - Type parameters: '?6360, '?6361
    +
    + Signature: newCollector:(unit -> '?8259) -> merge:('?8259 -> '?8260 -> '?8259) -> source:IObservable<'?8260> -> IEnumerable<'?8259>
    + Type parameters: '?8259, '?8260
    - + @@ -593,20 +715,21 @@

    Functions and values

    merge - Merges a sequence element with the current collector newCollector - Factory to create a new collector object.

    + - + collectMergeInit (...) -
    - Signature: getInitialCollector:(unit -> '?6363) -> merge:('?6363 -> '?6364 -> '?6363) -> getNewCollector:('?6363 -> '?6363) -> source:IObservable<'?6364> -> IEnumerable<'?6363>
    - Type parameters: '?6363, '?6364
    +
    + Signature: getInitialCollector:(unit -> '?8262) -> merge:('?8262 -> '?8263 -> '?8262) -> getNewCollector:('?8262 -> '?8262) -> source:IObservable<'?8263> -> IEnumerable<'?8262>
    + Type parameters: '?8262, '?8263
    - + @@ -615,817 +738,966 @@

    Functions and values

    getNewCollector - Factory to replace the current collector by a new collector getInitialCollector - Factory to create the initial collector object.

    + - - combineLatest source + + combineLatest source1 source2 -
    - Signature: source:seq<IObservable<'T>> -> IObservable<IList<'T>>
    - Type parameters: 'T
    +
    + Signature: source1:IObservable<'T1> -> source2:IObservable<'T2> -> IObservable<'T1 * 'T2>
    + Type parameters: 'T1, 'T2
    - + -

    Merges the specified observable sequences into one observable sequence by -emmiting a list with the latest source elements of whenever any of the -observable sequences produces and element.

    +

    Merges the specified observable sequences into one observable sequence +whenever either of the observable sequences produces an element.

    + - + combineLatestArray source -
    +
    Signature: source:IObservable<'T> [] -> IObservable<IList<'T>>
    - Type parameters: 'T
    + Type parameters: 'T
    - +

    Merges the specified observable sequences into one observable sequence by applying the map -whenever any of the observable sequences produces and element.

    +whenever any of the observable sequences produces an element.

    + - - combineLatestMap map source + + combineLatestSeq source -
    +
    + Signature: source:seq<IObservable<'T>> -> IObservable<IList<'T>>
    + Type parameters: 'T
    + + + + + + +

    Merges the specified observable sequences into one observable sequence by +emmiting a list with the latest source elements of whenever any of the +observable sequences produces an element.

    + + + + + + + + + combineLatestSeqMap map source + +
    Signature: map:(IList<'T> -> 'Result) -> source:seq<IObservable<'T>> -> IObservable<'Result>
    - Type parameters: 'T, 'Result
    + Type parameters: 'T, 'Result
    - +

    Merges the specified observable sequences into one observable sequence by applying the map -whenever any of the observable sequences produces and element.

    +whenever any of the observable sequences produces an element.

    + - + concat second first -
    +
    Signature: second:IObservable<'T> -> first:IObservable<'T> -> IObservable<'T>
    - Type parameters: 'T
    + Type parameters: 'T
    - +

    Concatenates the second observable sequence to the first observable sequence upn the successful termination of the first

    + - + concatArray sources -
    +
    Signature: sources:IObservable<'T> [] -> IObservable<'T>
    - Type parameters: 'T
    + Type parameters: 'T
    - +

    Concatenates all of the specified observable sequences as long as the previous observable sequence terminated successfully

    + - + concatInner sources -
    +
    Signature: sources:IObservable<IObservable<'T>> -> IObservable<'T>
    - Type parameters: 'T
    + Type parameters: 'T
    - +

    Concatenates all of the inner observable sequences as long as the previous observable sequence terminated successfully

    + - + concatSeq sources -
    +
    Signature: sources:seq<IObservable<'T>> -> IObservable<'T>
    - Type parameters: 'T
    + Type parameters: 'T
    - +

    Concatenates all observable sequences within the sequence as long as the previous observable sequence terminated successfully

    + - + concatTasks sources -
    +
    Signature: sources:IObservable<Task<'T>> -> IObservable<'T>
    - Type parameters: 'T
    + Type parameters: 'T
    - +

    Concatenates all task results as long as the previous taskterminated successfully

    + - + connect source -
    - Signature: source:IConnectableObservable<'?6383> -> IDisposable
    - Type parameters: '?6383
    +
    + Signature: source:IConnectableObservable<'?8285> -> IDisposable
    + Type parameters: '?8285
    - +

    Connects the observable wrapper to its source. All subscribed observers will recieve values from the underlying observable -sequence as long as the connection is established.
    +sequence as long as the connection is established.
    ( publish an Observable to get a ConnectableObservable )

    + - + contains value source -
    - Signature: value:'?6385 -> source:IObservable<'?6385> -> IObservable<bool>
    - Type parameters: '?6385
    +
    + Signature: value:'?8287 -> source:IObservable<'?8287> -> IObservable<bool>
    + Type parameters: '?8287
    - + -

    Determines whether an observable sequence contains a specified +

    Determines whether an observable sequence contains a specified element by using the default equality comparer.

    + - + containsCompare comparer value source -
    - Signature: comparer:IEqualityComparer<'?6387> -> value:'?6387 -> source:IObservable<'?6387> -> IObservable<bool>
    - Type parameters: '?6387
    +
    + Signature: comparer:IEqualityComparer<'?8289> -> value:'?8289 -> source:IObservable<'?8289> -> IObservable<bool>
    + Type parameters: '?8289
    - + -

    Determines whether an observable sequence contains a +

    Determines whether an observable sequence contains a specified element by using a specified EqualityComparer

    + - + count source -
    - Signature: source:IObservable<'?6389> -> IObservable<int>
    - Type parameters: '?6389
    +
    + Signature: source:IObservable<'?8291> -> IObservable<int>
    + Type parameters: '?8291
    - +

    Counts the elements

    + - + countSatisfy predicate source -
    - Signature: predicate:Func<'?6391,bool> -> source:IObservable<'?6391> -> IObservable<int>
    - Type parameters: '?6391
    +
    + Signature: predicate:('?8293 -> bool) -> source:IObservable<'?8293> -> IObservable<int>
    + Type parameters: '?8293
    - + -

    Returns an observable sequence containing an int that represents how many elements +

    Returns an observable sequence containing an int that represents how many elements in the specified observable sequence satisfy a condition.

    + - - create subscribe + + defaultIfEmpty source -
    - Signature: subscribe:(IObserver<'Result> -> Action) -> IObservable<'Result>
    - Type parameters: 'Result
    +
    + Signature: source:IObservable<'Source> -> IObservable<'Source>
    + Type parameters: 'Source
    - + -

    Creates an observable sequence from a specified Subscribe method implementation.

    +

    Returns the elements of the specified sequence or the type parameter's default value +in a singleton sequence if the sequence is empty.

    + - - createWithDisposable subscribe + + defaultIfEmptyIs defaultValue source -
    - Signature: subscribe:(IObserver<'Result> -> IDisposable) -> IObservable<'Result>
    - Type parameters: 'Result
    +
    + Signature: defaultValue:'Source -> source:IObservable<'Source> -> IObservable<'Source>
    + Type parameters: 'Source
    - + -

    Creates an observable sequence from a specified Subscribe method implementation.

    +

    Returns the elements of the specified sequence or the specified value in a singleton sequence if the sequence is empty.

    + - - defaultIfEmpty source + + defer observableFactory -
    - Signature: source:IObservable<'Source> -> IObservable<'Source>
    - Type parameters: 'Source
    +
    + Signature: observableFactory:(unit -> IObservable<'Result>) -> IObservable<'Result>
    + Type parameters: 'Result
    - + -

    Returns the elements of the specified sequence or the type parameter's default value -in a singleton sequence if the sequence is empty.

    +

    Returns an observable sequence that invokes the specified factory function whenever a new observer subscribes.

    + - - defaultIfEmptyIs defaultValue source + + delay dueTime source -
    - Signature: defaultValue:'Source -> source:IObservable<'Source> -> IObservable<'Source>
    - Type parameters: 'Source
    +
    + Signature: dueTime:TimeSpan -> source:IObservable<'Source> -> IObservable<'Source>
    + Type parameters: 'Source
    - + -

    Returns the elements of the specified sequence or the specified value in a singleton sequence if the sequence is empty.

    +

    Time shifts the observable sequence by the specified relative time duration. +The relative time intervals between the values are preserved.

    + - - defer observableFactory + + delayMap delayDurationSelector source -
    - Signature: observableFactory:(unit -> IObservable<'Result>) -> IObservable<'Result>
    - Type parameters: 'Result
    +
    + Signature: delayDurationSelector:('Source -> IObservable<'TDelay>) -> source:IObservable<'Source> -> IObservable<'Source>
    + Type parameters: 'Source, 'TDelay
    - + -

    Returns an observable sequence that invokes the specified factory function whenever a new observer subscribes.

    +

    Time shifts the observable sequence based on a delay selector function for each element.

    + - - delay dueTime source + + delayMapFilter (...) -
    - Signature: dueTime:TimeSpan -> source:IObservable<'Source> -> IObservable<'Source>
    - Type parameters: 'Source
    +
    + Signature: delayDurationSelector:('Source -> IObservable<'TDelay>) -> subscriptionDelay:IObservable<'TDelay> -> source:IObservable<'Source> -> IObservable<'Source>
    + Type parameters: 'Source, 'TDelay
    - + -

    Time shifts the observable sequence by the specified relative time duration. -The relative time intervals between the values are preserved.

    +

    Time shifts the observable sequence based on a subscription delay and a delay selector function for each element.

    + - - delayMap delayDurationSelector source + + delayOn scheduler dueTime source -
    - Signature: delayDurationSelector:('Source -> IObservable<'TDelay>) -> source:IObservable<'Source> -> IObservable<'Source>
    - Type parameters: 'Source, 'TDelay
    +
    + Signature: scheduler:IScheduler -> dueTime:TimeSpan -> source:IObservable<'?8303> -> IObservable<'?8303>
    + Type parameters: '?8303
    - + -

    Time shifts the observable sequence based on a delay selector function for each element.

    +

    Time shifts the observable sequence by the specified relative time duration, +using the specified scheduler to run timers. +The relative time intervals between the values are preserved.

    + - - delayMapFilter (...) + + delaySubscription dueTime source -
    - Signature: delayDurationSelector:('Source -> IObservable<'TDelay>) -> subscriptionDelay:IObservable<'TDelay> -> source:IObservable<'Source> -> IObservable<'Source>
    - Type parameters: 'Source, 'TDelay
    +
    + Signature: dueTime:TimeSpan -> source:IObservable<'Source> -> IObservable<'Source>
    + Type parameters: 'Source
    - + -

    Time shifts the observable sequence based on a subscription delay and a delay selector function for each element.

    +

    Time shifts the observable sequence by delaying the subscription with the specified relative time duration.

    + - - delaySubscription dueTime source + + delaySubscriptionOn (...) -
    - Signature: dueTime:TimeSpan -> source:IObservable<'Source> -> IObservable<'Source>
    - Type parameters: 'Source
    +
    + Signature: scheduler:IScheduler -> dueTime:TimeSpan -> source:IObservable<'?8317> -> IObservable<'?8317>
    + Type parameters: '?8317
    - + -

    Time shifts the observable sequence by delaying the subscription with the specified relative time duration.

    +

    Time shifts the observable sequence by delaying the subscription with the specified relative time duration, +using the specified scheduler to run timers.

    + - + delaySubscriptionUntil dueTime source -
    +
    Signature: dueTime:DateTimeOffset -> source:IObservable<'Source> -> IObservable<'Source>
    - Type parameters: 'Source
    + Type parameters: 'Source
    - +

    Time shifts the observable sequence by delaying the subscription to the specified absolute time.

    + - - delayUnitl dueTime source + + delaySubscriptionUntilOn (...) -
    - Signature: dueTime:DateTimeOffset -> source:IObservable<'Source> -> IObservable<'Source>
    - Type parameters: 'Source
    +
    + Signature: scheduler:IScheduler -> dueTime:DateTimeOffset -> source:IObservable<'?8321> -> IObservable<'?8321>
    + Type parameters: '?8321
    + + + + + + +

    Time shifts the observable sequence by delaying the subscription to the specified absolute time, +using the specified scheduler to run timers.

    + + + + + + + + + delayUntil source dueTime + +
    + Signature: source:IObservable<'Source> -> dueTime:DateTimeOffset -> IObservable<'Source>
    + Type parameters: 'Source
    - +

    Time shifts the observable sequence to start propagating notifications at the specified absolute time. The relative time intervals between the values are preserved.

    + - + + delayUntilOn scheduler dueTime source + +
    + Signature: scheduler:IScheduler -> dueTime:DateTimeOffset -> source:IObservable<'?8307> -> IObservable<'?8307>
    + Type parameters: '?8307
    + + + + + + +

    Time shifts the observable sequence to start propagating notifications at the specified absolute time, +using the specified scheduler to run timers. +The relative time intervals between the values are preserved.

    + + + + + + + + dematerialize source -
    - Signature: source:IObservable<Notification<'?6417>> -> IObservable<'?6417>
    - Type parameters: '?6417
    +
    + Signature: source:IObservable<Notification<'?8323>> -> IObservable<'?8323>
    + Type parameters: '?8323
    - +

    Dematerializes the explicit notification values of an observable sequence as implicit notifications.

    + - + distinct source -
    +
    Signature: source:IObservable<'Source> -> IObservable<'Source>
    - Type parameters: 'Source
    + Type parameters: 'Source
    - +

    Returns an observable sequence that only contains distinct elements

    + - + distinctCompare comparer source -
    +
    Signature: comparer:IEqualityComparer<'Source> -> source:IObservable<'Source> -> IObservable<'Source>
    - Type parameters: 'Source
    + Type parameters: 'Source
    - +

    Returns an observable sequence that contains only distinct elements according to the comparer.

    + - + distinctKey keySelector source -
    +
    Signature: keySelector:('Source -> 'Key) -> source:IObservable<'Source> -> IObservable<'Source>
    - Type parameters: 'Source, 'Key
    + Type parameters: 'Source, 'Key
    - +

    Returns an observable sequence that contains only distinct elements according to the keySelector.

    + - + distinctKeyCompare (...) -
    +
    Signature: keySelector:('Source -> 'Key) -> comparer:IEqualityComparer<'Key> -> source:IObservable<'Source> -> IObservable<'Source>
    - Type parameters: 'Source, 'Key
    + Type parameters: 'Source, 'Key
    - +

    Returns an observable sequence that contains only distinct elements according to the keySelector and the comparer.

    + - + distinctUntilChanged source -
    +
    Signature: source:IObservable<'Source> -> IObservable<'Source>
    - Type parameters: 'Source
    + Type parameters: 'Source
    - +

    Returns an observable sequence that only contains distinct contiguous elements

    + - + distinctUntilChangedCompare (...) -
    +
    Signature: comparer:IEqualityComparer<'Source> -> source:IObservable<'Source> -> IObservable<'Source>
    - Type parameters: 'Source
    + Type parameters: 'Source
    - +

    Returns an observable sequence that contains only distinct contiguous elements according to the comparer.

    + - + distinctUntilChangedKey (...) -
    +
    Signature: keySelector:('Source -> 'Key) -> source:IObservable<'Source> -> IObservable<'Source>
    - Type parameters: 'Source, 'Key
    + Type parameters: 'Source, 'Key
    - +

    Returns an observable sequence that contains only distinct contiguous elements according to the keySelector.

    + - + distinctUntilChangedKeyCompare (...) -
    +
    Signature: keySelector:('Source -> 'Key) -> comparer:IEqualityComparer<'Key> -> source:IObservable<'Source> -> IObservable<'Source>
    - Type parameters: 'Source, 'Key
    + Type parameters: 'Source, 'Key
    - +

    Returns an observable sequence that contains only distinct contiguous elements according to the keySelector and the comparer.

    + - + elementAt index source -
    +
    Signature: index:int -> source:IObservable<'Source> -> IObservable<'Source>
    - Type parameters: 'Source
    + Type parameters: 'Source
    - +

    Returns the element at a specified index in a sequence.

    + - + elementAtOrDefault index source -
    +
    Signature: index:int -> source:IObservable<'Source> -> IObservable<'Source>
    - Type parameters: 'Source
    + Type parameters: 'Source
    - +

    Returns the element at a specified index in a sequence or a default value if the index is out of range

    + - + empty -
    +
    Signature: IObservable<'T>
    - Type parameters: 'T
    + Type parameters: 'T
    - +

    Returns an empty observable

    + - - emptyWitness witness + + emptyCompleted scheduler -
    - Signature: witness:'T -> IObservable<'T>
    - Type parameters: 'T
    +
    + Signature: scheduler:IScheduler -> IObservable<'?8353>
    + Type parameters: '?8353
    - + -

    Returns an empty Observable sequence

    +

    Returns an empty sequence, using the specified scheduler to send out the single OnCompleted message.

    + - - equals first second + + emptyCompletedWitness scheduler witness -
    - Signature: first:IObservable<'Source> -> second:IObservable<'Source> -> IObservable<bool>
    - Type parameters: 'Source
    +
    + Signature: scheduler:IScheduler -> witness:'?8355 -> IObservable<'?8355>
    + Type parameters: '?8355
    - + -

    Determines whether two sequences are equal by comparing the elements pairwise.

    +

    Returns an empty sequence, using the specified scheduler to send out the single OnCompleted message.

    + - - equalsCompare first second comparer + + emptyWitness witness -
    - Signature: first:IObservable<'Source> -> second:IObservable<'Source> -> comparer:IEqualityComparer<'Source> -> IObservable<bool>
    - Type parameters: 'Source
    +
    + Signature: witness:'T -> IObservable<'T>
    + Type parameters: 'T
    - + -

    Determines whether two sequences are equal by comparing the elements pairwise using a specified equality comparer.

    +

    Returns an empty Observable sequence

    + - - equalsSeq first second + + equals first second -
    - Signature: first:IObservable<'Source> -> second:seq<'Source> -> IObservable<bool>
    - Type parameters: 'Source
    +
    + Signature: first:IObservable<'Source> -> second:IObservable<'Source> -> IObservable<bool>
    + Type parameters: 'Source
    - + -

    Determines whether an observable and enumerable sequence are equal by comparing the elements pairwise.

    +

    Determines whether two sequences are equal by comparing the elements pairwise.

    + - - equalsSeqComparer first second comparer + + equalsComparer comparer first second -
    - Signature: first:IObservable<'Source> -> second:seq<'Source> -> comparer:IEqualityComparer<'Source> -> IObservable<bool>
    - Type parameters: 'Source
    +
    + Signature: comparer:IEqualityComparer<'Source> -> first:IObservable<'Source> -> second:IObservable<'Source> -> IObservable<bool>
    + Type parameters: 'Source
    - + -

    Determines whether an observable and enumerable sequence are equal by comparing the elements pairwise using a specified equality comparer.

    +

    Determines whether two sequences are equal by comparing the elements pairwise using a specified equality comparer.

    + - - error e + + equalsSeq first second -
    - Signature: e:exn -> IObservable<'?6455>
    - Type parameters: '?6455
    +
    + Signature: first:IObservable<'Source> -> second:seq<'Source> -> IObservable<bool>
    + Type parameters: 'Source
    + + + + + + +

    Determines whether an observable and enumerable sequence are equal by comparing the elements pairwise.

    + + + + + + + + + equalsSeqComparer comparer first second + +
    + Signature: comparer:IEqualityComparer<'Source> -> first:IObservable<'Source> -> second:seq<'Source> -> IObservable<bool>
    + Type parameters: 'Source
    + + + + + + +

    Determines whether an observable and enumerable sequence are equal by comparing the elements pairwise using a specified equality comparer.

    + + + + + + + + + error e + +
    + Signature: e:exn -> IObservable<'?8365>
    + Type parameters: '?8365
    - + @@ -1435,3613 +1707,5154 @@

    Functions and values

    - + exists predicate source -
    - Signature: predicate:Func<'?6457,bool> -> source:IObservable<'?6457> -> IObservable<bool>
    - Type parameters: '?6457
    +
    + Signature: predicate:('?8367 -> bool) -> source:IObservable<'?8367> -> IObservable<bool>
    + Type parameters: '?8367
    - +

    Determines whether an observable sequence contains a specified value which satisfies the given predicate

    + - + filter predicate source -
    +
    Signature: predicate:('T -> bool) -> source:IObservable<'T> -> IObservable<'T>
    - Type parameters: 'T
    + Type parameters: 'T
    - +

    Filters the observable elements of a sequence based on a predicate

    + - + filteri predicate source -
    - Signature: predicate:('T -> int -> bool) -> source:IObservable<'T> -> IObservable<'T>
    - Type parameters: 'T
    +
    + Signature: predicate:(int -> 'T -> bool) -> source:IObservable<'T> -> IObservable<'T>
    + Type parameters: 'T
    - + -

    Filters the observable elements of a sequence based on a predicate by +

    Filters the observable elements of a sequence based on a predicate by incorporating the element's index

    + - + finallyDo finallyAction source -
    - Signature: finallyAction:(unit -> unit) -> source:IObservable<'?6463> -> IObservable<'?6463>
    - Type parameters: '?6463
    +
    + Signature: finallyAction:(unit -> unit) -> source:IObservable<'?8373> -> IObservable<'?8373>
    + Type parameters: '?8373
    - +

    Invokes a specified action after the source observable sequence terminates gracefully of exceptionally

    + - + first source -
    +
    Signature: source:IObservable<'T> -> IObservable<'T>
    - Type parameters: 'T
    + Type parameters: 'T
    - +

    Returns the first element of an observable sequence

    + - + firstIf predicate source -
    - Signature: predicate:Func<'T,bool> -> source:IObservable<'T> -> IObservable<'T>
    - Type parameters: 'T
    +
    + Signature: predicate:('T -> bool) -> source:IObservable<'T> -> IObservable<'T>
    + Type parameters: 'T
    - +

    Returns the first element of an observable sequence if it satisfies the predicate

    + - + flatmap map source -
    +
    Signature: map:('S -> IObservable<'R>) -> source:IObservable<'S> -> IObservable<'R>
    - Type parameters: 'S, 'R
    + Type parameters: 'S, 'R
    - + -

    Projects each element of an observable sequence to an observable sequence +

    Projects each element of an observable sequence to an observable sequence and merges the resulting observable sequences into one observable sequenc

    + - + + flatmapAsync asyncOperation source + +
    + Signature: asyncOperation:('Source -> Async<'?8397>) -> source:IObservable<'Source> -> IObservable<'?8397>
    + Type parameters: 'Source, '?8397
    + + + + + + +

    Projects each element of an observable sequence to a async workflow and merges all of the async worksflow results into one observable sequence.

    + + + + + + + + flatmapOther other source -
    +
    Signature: other:IObservable<'Other> -> source:IObservable<'Source> -> IObservable<'Other>
    - Type parameters: 'Other, 'Source
    + Type parameters: 'Other, 'Source
    - + -

    Projects each element of an observable sequence to an observable sequence by incorporating the -element's index and merges the resulting observable sequences into one observable sequence. -Projects each element of the source observable sequence to the other observable sequence +

    Projects each element of the source observable sequence to the other observable sequence and merges the resulting observable sequences into one observable sequence.

    + - + flatmapSeq map source -
    +
    Signature: map:('Source -> seq<'Result>) -> source:IObservable<'Source> -> IObservable<'Result>
    - Type parameters: 'Source, 'Result
    + Type parameters: 'Source, 'Result
    - + -

    Projects each element of an observable sequence to an enumerable sequence and concatenates +

    Projects each element of an observable sequence to an enumerable sequence and concatenates the resulting enumerable sequences into one observable sequence.

    + - + flatmapTask map source -
    +
    Signature: map:('Source -> Task<'Result>) -> source:IObservable<'Source> -> IObservable<'Result>
    - Type parameters: 'Source, 'Result
    + Type parameters: 'Source, 'Result
    - + -

    Projects each element of an observable sequence to an enumerable sequence by incorporating the -element's index and concatenates the resulting enumerable sequences into one observable sequence. -Projects each element of an observable sequence to a task and merges all of the task results into one observable sequence.

    +

    Projects each element of an observable sequence to a task and merges all of the task results into one observable sequence.

    + - + fold accumulator init source -
    - Signature: accumulator:('?6481 -> '?6482 -> '?6481) -> init:'?6481 -> source:IObservable<'?6482> -> IObservable<'?6481>
    - Type parameters: '?6481, '?6482
    +
    + Signature: accumulator:('?8399 -> '?8400 -> '?8399) -> init:'?8399 -> source:IObservable<'?8400> -> IObservable<'?8399>
    + Type parameters: '?8399, '?8400
    - + -

    Projects each element of an observable sequence to a task by incorporating the element's index -and merges all of the task results into one observable sequence. -Applies an accumulator function over an observable sequence, returning the +

    Applies an accumulator function over an observable sequence, returning the result of the fold as a single element in the result sequence init is the initial accumulator value

    + - + foldMap accumulator init map source -
    - Signature: accumulator:('?6484 -> '?6485 -> '?6484) -> init:'?6484 -> map:('?6484 -> '?6486) -> source:IObservable<'?6485> -> IObservable<'?6486>
    - Type parameters: '?6484, '?6485, '?6486
    +
    + Signature: accumulator:('?8402 -> '?8403 -> '?8402) -> init:'?8402 -> map:('?8402 -> '?8404) -> source:IObservable<'?8403> -> IObservable<'?8404>
    + Type parameters: '?8402, '?8403, '?8404
    - + -

    Applies an accumulator function over an observable sequence, returning the +

    Applies an accumulator function over an observable sequence, returning the result of the fold as a single element in the result sequence init is the initial accumulator value, map is performed after the fold

    + - + fromEvent addHandler removeHandler -
    +
    Signature: addHandler:('Delegate -> unit) -> removeHandler:('Delegate -> unit) -> IObservable<unit>
    - Type parameters: 'Delegate
    + Type parameters: 'Delegate
    - +

    Converts an Action-based .NET event to an observable sequence. Each event invocation is surfaced through an OnNext message in the resulting sequence. For conversion of events conforming to the standard .NET event pattern, use any of the FromEventPattern overloads instead.

    + - + fromEventConversion (...) -
    +
    Signature: conversion:(('EventArgs -> unit) -> 'Delegate) -> addHandler:('Delegate -> unit) -> removeHandler:('Delegate -> unit) -> IObservable<'EventArgs>
    - Type parameters: 'EventArgs, 'Delegate
    + Type parameters: 'EventArgs, 'Delegate
    - + -

    Converts a .NET event to an observable sequence, using a conversion function to obtain the event delegate. +

    Converts a .NET event to an observable sequence, using a conversion function to obtain the event delegate. Each event invocation is surfaced through an OnNext message in the resulting sequence. For conversion of events conforming to the standard .NET event pattern, use any of the FromEventPattern functions instead.

    + - - fromEventGeneric (...) + + fromEventConversionOn (...) -
    - Signature: addHandler:(('TEventArgs -> unit) -> unit) -> removeHandler:(('TEventArgs -> unit) -> unit) -> IObservable<'TEventArgs>
    - Type parameters: 'TEventArgs
    +
    + Signature: scheduler:IScheduler -> conversion:(EventHandler<'TEventArgs> -> 'TDelegate) -> addHandler:('TDelegate -> unit) -> removeHandler:('TDelegate -> unit) -> IObservable<EventPattern<'TEventArgs>>
    + Type parameters: 'TEventArgs, 'TDelegate
    - + -

    Converts an generic Action-based .NET event to an observable sequence. Each event invocation is surfaced through an OnNext message in the resulting sequence. -For conversion of events conforming to the standard .NET event pattern, use any of the FromEventPattern overloads instead.

    +

    Converts a .NET event to an observable sequence, using a conversion function to obtain the event delegate, using a specified scheduler to run timers. +Each event invocation is surfaced through an OnNext message in the resulting sequence. +For conversion of events conforming to the standard .NET event pattern, use any of the FromEventPattern functions instead.

    + - - fromEventHandler (...) + + fromEventGeneric (...) -
    - Signature: addHandler:(EventHandler<EventArgs> -> unit) -> removeHandler:(EventHandler<EventArgs> -> unit) -> IObservable<EventArgs>
    - Type parameters: 'EventArgs
    +
    + Signature: addHandler:(('TEventArgs -> unit) -> unit) -> removeHandler:(('TEventArgs -> unit) -> unit) -> IObservable<'TEventArgs>
    + Type parameters: 'TEventArgs
    - + -

    Converts a .NET event to an observable sequence, using a supplied event delegate type. -Each event invocation is surfaced through an OnNext message in the resulting sequence.

    +

    Converts an generic Action-based .NET event to an observable sequence. Each event invocation is surfaced through an OnNext message in the resulting sequence. +For conversion of events conforming to the standard .NET event pattern, use any of the FromEventPattern overloads instead.

    + - - fromEventPattern eventName target + + fromEventGenericOn (...) -
    - Signature: eventName:string -> target:obj -> IObservable<EventPattern<EventArgs>>
    -
    +
    + Signature: scheduler:IScheduler -> addHandler:(('TEventArgs -> unit) -> unit) -> removeHandler:(('TEventArgs -> unit) -> unit) -> IObservable<'?8412>
    + Type parameters: 'TEventArgs, '?8412
    - + -

    Generates an observable from an IEvent<_> as an EventPattern.

    +

    Converts an generic Action-based .NET event to an observable sequence. Each event invocation is surfaced through an OnNext message in the resulting sequence. +For conversion of events conforming to the standard .NET event pattern, use any of the FromEventPattern overloads instead.

    + - - generate (...) + + fromEventHandler (...) -
    - Signature: initialState:'State -> condition:('State -> bool) -> iterator:('State -> 'State) -> resultMap:('State -> 'Result) -> IObservable<'Result>
    - Type parameters: 'State, 'Result
    +
    + Signature: addHandler:(EventHandler<obj> -> unit) -> removeHandler:(EventHandler<obj> -> unit) -> IObservable<obj>
    + Type parameters: 'EventArgs
    - + -

    Generates an observable sequence by running a state-driven loop producing the sequence's elements.

    +

    Converts a .NET event to an observable sequence, using a supplied event delegate type. +Each event invocation is surfaced through an OnNext message in the resulting sequence.

    + - - generateTimed (...) + + fromEventHandlerOn (...) -
    - Signature: initialState:'State -> condition:('State -> bool) -> iterate:('State -> 'State) -> resultMap:('State -> 'Result) -> timeSelector:('State -> DateTimeOffset) -> IObservable<'Result>
    - Type parameters: 'State, 'Result
    +
    + Signature: scheduler:IScheduler -> addHandler:(EventHandler<'EventArgs> -> unit) -> removeHandler:(EventHandler<'EventArgs> -> unit) -> IObservable<EventPattern<'EventArgs>>
    + Type parameters: 'EventArgs
    - + -

    Generates an observable sequence by running a state-driven and temporal loop producing the sequence's elements.

    +

    Converts a .NET event to an observable sequence, using a supplied event delegate type on a specified scheduler. +Each event invocation is surfaced through an OnNext message in the resulting sequence.

    + - - generateTimeSpan (...) + + fromEventOn (...) -
    - Signature: initialState:'State -> condition:Func<'State,bool> -> iterate:Func<'State,'State> -> resultMap:('State -> 'Result) -> genTime:('State -> TimeSpan) -> IObservable<'Result>
    - Type parameters: 'State, 'Result
    +
    + Signature: scheduler:IScheduler -> addHandler:(Action -> unit) -> removeHandler:(Action -> unit) -> IObservable<Unit>
    +
    - + -

    Generates an observable sequence by running a state-driven and temporal loop producing the sequence's elements.

    +

    Converts an Action-based .NET event to an observable sequence. Each event invocation is surfaced through an OnNext message in the resulting sequence. +For conversion of events conforming to the standard .NET event pattern, use any of the FromEventPattern overloads instead.

    + - - getEnumerator source + + fromEventPattern eventName target -
    - Signature: source:IObservable<'?6507> -> IEnumerator<'?6507>
    - Type parameters: '?6507
    +
    + Signature: eventName:string -> target:obj -> IObservable<EventPattern<obj>>
    +
    - + -

    Returns an enumerator that enumerates all values of the observable sequence.

    +

    Generates an observable from an IEvent<_> as an EventPattern.

    + - - groupBy keySelector source + + generate (...) -
    - Signature: keySelector:('Source -> 'Key) -> source:IObservable<'Source> -> IObservable<IGroupedObservable<'Key,'Source>>
    - Type parameters: 'Source, 'Key
    +
    + Signature: initialState:'State -> condition:('State -> bool) -> iterator:('State -> 'State) -> resultMap:('State -> 'Result) -> IObservable<'Result>
    + Type parameters: 'State, 'Result
    - + -

    Groups the elements of an observable sequence according to a specified key selector function.

    +

    Generates an observable sequence by running a state-driven loop producing the sequence's elements.

    + - - groupByCapacityElement (...) + + generateOn (...) -
    - Signature: keySelector:('Source -> 'Key) -> capacity:int -> elementSelector:('Source -> 'Element) -> source:IObservable<'Source> -> IObservable<IGroupedObservable<'Key,'Element>>
    - Type parameters: 'Source, 'Key, 'Element
    +
    + Signature: scheduler:IScheduler -> initialState:'State -> condition:('State -> bool) -> iterator:('State -> 'State) -> resultMap:('State -> 'TResult) -> IObservable<'TResult>
    + Type parameters: 'State, 'TResult
    - + -

    Groups the elements of an observable sequence with the specified initial capacity -according to a specified key selector function and comparer. -Groups the elements of an observable sequence with the specified initial capacity -and selects the resulting elements by using a specified function.

    +

    Generates an observable sequence by running a state-driven loop producing the sequence's elements.

    + - - groupByCompare (...) + + generateTimed (...) -
    - Signature: keySelector:('?6512 -> '?6513) -> comparer:IEqualityComparer<'?6514> -> source:IObservable<'?6512> -> IObservable<IGroupedObservable<'?6513,'?6513>>
    - Type parameters: '?6512, '?6513, '?6514
    +
    + Signature: initialState:'State -> condition:('State -> bool) -> iterate:('State -> 'State) -> resultMap:('State -> 'Result) -> timeSelector:('State -> DateTimeOffset) -> IObservable<'Result>
    + Type parameters: 'State, 'Result
    - + -

    Groups the elements of an observable sequence with the specified initial -capacity according to a specified key selector function. -Groups the elements of an observable sequence according to a specified key selector function and comparer.

    +

    Generates an observable sequence by running a state-driven and temporal loop producing the sequence's elements.

    + - - groupByCompareElement (...) + + generateTimedOn (...) -
    - Signature: keySelector:('Source -> 'Key) -> comparer:IEqualityComparer<'Key> -> elementSelector:('Source -> 'Element) -> source:IObservable<'Source> -> IObservable<IGroupedObservable<'Key,'Element>>
    - Type parameters: 'Source, 'Key, 'Element
    +
    + Signature: scheduler:IScheduler -> initialState:'State -> condition:('State -> bool) -> iterate:('State -> 'State) -> resultMap:('State -> 'Result) -> timeSelector:('State -> DateTimeOffset) -> IObservable<'Result>
    + Type parameters: 'State, 'Result
    - + -

    Groups the elements of an observable sequence according to a specified key selector function -and comparer and selects the resulting elements by using a specified function.

    +

    Generates an observable sequence by running a state-driven and temporal loop producing the sequence's elements, +using a specified scheduler to run timers and to send out observer messages.

    + - - groupByComparerElementUntil (...) + + generateTimeSpan (...) -
    - Signature: keySelector:('Source -> 'Key) -> comparer:IEqualityComparer<'Key> -> elementSelector:('Source -> 'Element) -> durationSelector:(IGroupedObservable<'Key,'Element> -> IObservable<'TDuration>) -> source:IObservable<'Source> -> IObservable<IGroupedObservable<'Key,'Element>>
    - Type parameters: 'Source, 'Key, 'Element, 'TDuration
    +
    + Signature: initialState:'State -> condition:('State -> bool) -> iterate:('State -> 'State) -> resultMap:('State -> 'Result) -> genTime:('State -> TimeSpan) -> IObservable<'Result>
    + Type parameters: 'State, 'Result
    - + -

    Groups the elements of an observable sequence with the specified initial capacity according to a specified key selector function and comparer. -A duration selector function is used to control the lifetime of groups. When a group expires, it receives an OnCompleted notification. When a new element with the same -key value as a reclaimed group occurs, the group will be reborn with a new lifetime request. -Groups the elements of an observable sequence with the specified initial capacity according to a specified key -selector function and selects the resulting elements by using a specified function. -A duration selector function is used to control the lifetime of groups. When a group -expires, it receives an OnCompleted notification. When a new element with the same -key value as a reclaimed group occurs, the group will be reborn with a new lifetime request. -Groups the elements of an observable sequence according to a specified key selector function and -comparer and selects the resulting elements by using a specified function. -A duration selector function is used to control the lifetime of groups. When a group expires, -it receives an OnCompleted notification. When a new element with the same -key value as a reclaimed group occurs, the group will be reborn with a new lifetime request.

    +

    Generates an observable sequence by running a state-driven and temporal loop producing the sequence's elements.

    + - - groupByComparerUntil (...) + + generateTimeSpanOn (...) -
    - Signature: keySelector:('Source -> 'Key) -> comparer:IEqualityComparer<'Key> -> durationSelector:(IGroupedObservable<'Key,'Source> -> IObservable<'TDuration>) -> source:IObservable<'Source> -> IObservable<IGroupedObservable<'Key,'Source>>
    - Type parameters: 'Source, 'Key, 'TDuration
    +
    + Signature: scheduler:IScheduler -> initialState:'State -> condition:('State -> bool) -> iterate:('State -> 'State) -> resultMap:('State -> 'Result) -> genTime:('State -> TimeSpan) -> IObservable<'Result>
    + Type parameters: 'State, 'Result
    - + -

    Groups the elements of an observable sequence with the specified initial capacity according to a specified key selector function. -A duration selector function is used to control the lifetime of groups. When a group -expires, it receives an OnCompleted notification. When a new element with the same -key value as a reclaimed group occurs, the group will be reborn with a new lifetime request. -Groups the elements of an observable sequence according to a specified key selector function and comparer. -A duration selector function is used to control the lifetime of groups. When a group expires, -it receives an OnCompleted notification. When a new element with the same -key value as a reclaimed group occurs, the group will be reborn with a new lifetime request.

    +

    Generates an observable sequence by running a state-driven and temporal loop producing the sequence's elements, +using a specified scheduler to run timers and to send out observer messages.

    + - - groupByElement (...) + + getEnumerator source -
    - Signature: keySelector:('Source -> 'Key) -> elementSelector:('Source -> 'Element) -> source:IObservable<'Source> -> IObservable<IGroupedObservable<'Key,'Element>>
    - Type parameters: 'Source, 'Key, 'Element
    +
    + Signature: source:IObservable<'?8443> -> IEnumerator<'?8443>
    + Type parameters: '?8443
    - + + + + +

    Returns an enumerator that enumerates all values of the observable sequence.

    + + + + + + + + + groupBy keySelector source + +
    + Signature: keySelector:('Source -> 'Key) -> source:IObservable<'Source> -> IObservable<IGroupedObservable<'Key,'Source>>
    + Type parameters: 'Source, 'Key
    + + + + + + +

    Groups the elements of an observable sequence according to a specified key selector function.

    + + + + + + + + + groupByCapacityElement (...) + +
    + Signature: keySelector:('Source -> 'Key) -> capacity:int -> elementSelector:('Source -> 'Element) -> source:IObservable<'Source> -> IObservable<IGroupedObservable<'Key,'Element>>
    + Type parameters: 'Source, 'Key, 'Element
    + + + + + + +

    Groups the elements of an observable sequence with the specified initial capacity +and selects the resulting elements by using a specified function.

    + + + + + + + + + groupByCompare (...) + +
    + Signature: keySelector:('?8448 -> '?8449) -> comparer:IEqualityComparer<'?8449> -> source:IObservable<'?8448> -> IObservable<IGroupedObservable<'?8449,'?8448>>
    + Type parameters: '?8448, '?8449
    + + + + + + +

    Groups the elements of an observable sequence according to a specified key selector function and comparer.

    + + + + + + + + + groupByCompareElement (...) + +
    + Signature: keySelector:('Source -> 'Key) -> comparer:IEqualityComparer<'Key> -> elementSelector:('Source -> 'Element) -> source:IObservable<'Source> -> IObservable<IGroupedObservable<'Key,'Element>>
    + Type parameters: 'Source, 'Key, 'Element
    + + + + + + +

    Groups the elements of an observable sequence according to a specified key selector function +and comparer and selects the resulting elements by using a specified function.

    + + + + + + + + + groupByComparerElementUntil (...) + +
    + Signature: keySelector:('Source -> 'Key) -> comparer:IEqualityComparer<'Key> -> elementSelector:('Source -> 'Element) -> durationSelector:(IGroupedObservable<'Key,'Element> -> IObservable<'TDuration>) -> source:IObservable<'Source> -> IObservable<IGroupedObservable<'Key,'Element>>
    + Type parameters: 'Source, 'Key, 'Element, 'TDuration
    + + + + + + +

    Groups the elements of an observable sequence according to a specified key selector function and +comparer and selects the resulting elements by using a specified function. +A duration selector function is used to control the lifetime of groups. When a group expires, +it receives an OnCompleted notification. When a new element with the same +key value as a reclaimed group occurs, the group will be reborn with a new lifetime request.

    + + + + + + + + + groupByComparerUntil (...) + +
    + Signature: keySelector:('Source -> 'Key) -> comparer:IEqualityComparer<'Key> -> durationSelector:(IGroupedObservable<'Key,'Source> -> IObservable<'TDuration>) -> source:IObservable<'Source> -> IObservable<IGroupedObservable<'Key,'Source>>
    + Type parameters: 'Source, 'Key, 'TDuration
    + + + + + + +

    Groups the elements of an observable sequence according to a specified key selector function and comparer. +A duration selector function is used to control the lifetime of groups. When a group expires, +it receives an OnCompleted notification. When a new element with the same +key value as a reclaimed group occurs, the group will be reborn with a new lifetime request.

    + + + + + + + + + groupByElement (...) + +
    + Signature: keySelector:('Source -> 'Key) -> elementSelector:('Source -> 'Element) -> source:IObservable<'Source> -> IObservable<IGroupedObservable<'Key,'Element>>
    + Type parameters: 'Source, 'Key, 'Element
    + + +

    Groups the elements of an observable sequence and selects the resulting elements by using a specified function.

    + - + groupByElementUntil (...) -
    +
    Signature: keySelector:('Source -> 'Key) -> elementSelector:('Source -> 'Element) -> durationSelector:(IGroupedObservable<'Key,'Element> -> IObservable<'TDuration>) -> source:IObservable<'Source> -> IObservable<IGroupedObservable<'Key,'Element>>
    - Type parameters: 'Source, 'Key, 'Element, 'TDuration
    + Type parameters: 'Source, 'Key, 'Element, 'TDuration
    - + -

    Groups the elements of an observable sequence according to a specified key selector function +

    Groups the elements of an observable sequence according to a specified key selector function and selects the resulting elements by using a specified function. -A duration selector function is used to control the lifetime of groups. When a group expires, +A duration selector function is used to control the lifetime of groups. When a group expires, it receives an OnCompleted notification. When a new element with the same key value as a reclaimed group occurs, the group will be reborn with a new lifetime request.

    + - + groupByUntil (...) -
    +
    Signature: keySelector:('Source -> 'Key) -> durationSelector:(IGroupedObservable<'Key,'Source> -> IObservable<'TDuration>) -> source:IObservable<'Source> -> IObservable<IGroupedObservable<'Key,'Source>>
    - Type parameters: 'Source, 'Key, 'TDuration
    + Type parameters: 'Source, 'Key, 'TDuration
    - + -

    Groups the elements of an observable sequence with the specified initial capacity according to a -specified key selector function and comparer and selects the resulting elements by using a specified function. - Groups the elements of an observable sequence according to a specified key selector function. - A duration selector function is used to control the lifetime of groups. When a group expires, - it receives an OnCompleted notification. When a new element with the same - key value as a reclaimed group occurs, the group will be reborn with a new lifetime request.

    +

    Groups the elements of an observable sequence according to a specified key selector function. +A duration selector function is used to control the lifetime of groups. When a group expires, +it receives an OnCompleted notification. When a new element with the same +key value as a reclaimed group occurs, the group will be reborn with a new lifetime request.

    + - + groupJoin (...) -
    +
    Signature: left:IObservable<'Left> -> right:IObservable<'Right> -> leftselect:('Left -> IObservable<'a>) -> rightselect:('Right -> IObservable<'b>) -> resultselect:('Left -> IObservable<'Right> -> 'Result) -> IObservable<'Result>
    - Type parameters: 'Left, 'Right, 'a, 'b, 'Result
    + Type parameters: 'Left, 'Right, 'a, 'b, 'Result
    - + -

    Groups the elements of an observable sequence with the specified initial capacity according to a specified -key selector function and comparer and selects the resulting elements by using a specified function. -A duration selector function is used to control the lifetime of groups. When a group expires, it receives -an OnCompleted notification. When a new element with the same -key value as a reclaimed group occurs, the group will be reborn with a new lifetime request. -Correlates the elements of two sequences based on overlapping +

    Correlates the elements of two sequences based on overlapping durations and groups the results

    + - + guard f source -
    +
    Signature: f:(unit -> unit) -> source:IObservable<'Args> -> IObservable<'Args>
    - Type parameters: 'Args
    + Type parameters: 'Args
    - +

    Creates an observable that calls the specified function (each time) -after an observer is attached to the observable. This is useful to +after an observer is attached to the observable. This is useful to make sure that events triggered by the function are handled.

    + - + head obs -
    - Signature: obs:IObservable<'?6554> -> IObservable<'?6554>
    - Type parameters: '?6554
    +
    + Signature: obs:IObservable<'?8489> -> IObservable<'?8489>
    + Type parameters: '?8489
    - +

    Takes the first element of the observable sequence

    + - + infinite () -
    - Signature: unit -> IObservable<'?6618>
    - Type parameters: '?6618
    +
    + Signature: unit -> IObservable<'?8567>
    + Type parameters: '?8567
    - + -

    Returns a non-terminating observable sequence, which can +

    Returns a non-terminating observable sequence, which can be used to denote an infinite duration (e.g. when using reactive joins).

    + - + interval period -
    +
    Signature: period:TimeSpan -> IObservable<int64>
    -
    +
    - + -

    Returns and observable sequence that produces a value after each period

    +

    Returns an observable sequence that produces a value after each period

    + - + + intervalOn scheduler period + +
    + Signature: scheduler:IScheduler -> period:TimeSpan -> IObservable<int64>
    +
    + + + + + + +

    Returns an observable sequence that produces a value on the specified scheduler after each period

    + + + + + + + + isEmpty source -
    - Signature: source:IObservable<'?6557> -> bool
    - Type parameters: '?6557
    +
    + Signature: source:IObservable<'?8493> -> IObservable<bool>
    + Type parameters: '?8493
    - + -

    Determines whether the given observable is empty

    +

    IsEmpty returns an Observable that emits true if and only if the +source Observable completes without emitting any items.

    + - + iter onNext source -
    +
    Signature: onNext:('Source -> unit) -> source:IObservable<'Source> -> IObservable<'Source>
    - Type parameters: 'Source
    + Type parameters: 'Source
    - + -

    Invokes an action for each element in the observable sequence, and propagates all observer -messages through the result sequence. This method can be used for debugging, logging, etc. of query +

    Invokes an action for each element in the observable sequence, and propagates all observer +messages through the result sequence. This method can be used for debugging, logging, etc. of query behavior by intercepting the message stream to run arbitrary actions for messages on the pipeline.

    + - + iterEnd onNext onCompleted source -
    +
    Signature: onNext:('Source -> unit) -> onCompleted:(unit -> unit) -> source:IObservable<'Source> -> IObservable<'Source>
    - Type parameters: 'Source
    + Type parameters: 'Source
    - + -

    Invokes an action for each element in the observable sequence and invokes an action +

    Invokes an action for each element in the observable sequence and invokes an action upon graceful termination of the observable sequence. This method can be used for debugging, - logging, etc. of query behavior by intercepting the message stream to run arbitrary +logging, etc. of query behavior by intercepting the message stream to run arbitrary actions for messages on the pipeline.

    + - + iterError onNext onError source -
    +
    Signature: onNext:('Source -> unit) -> onError:(exn -> unit) -> source:IObservable<'Source> -> IObservable<'Source>
    - Type parameters: 'Source
    + Type parameters: 'Source
    - + -

    Invokes an action for each element in the observable sequence and invokes an action upon -exceptional termination of the observable sequence. This method can be used for debugging, -logging, etc. of query behavior by intercepting the message stream to run arbitrary +

    Invokes an action for each element in the observable sequence and invokes an action upon +exceptional termination of the observable sequence. This method can be used for debugging, +logging, etc. of query behavior by intercepting the message stream to run arbitrary actions for messages on the pipeline.

    + - + iterErrorEnd (...) -
    +
    Signature: onNext:('Source -> unit) -> onError:(exn -> unit) -> onCompleted:(unit -> unit) -> source:IObservable<'Source> -> IObservable<'Source>
    - Type parameters: 'Source
    + Type parameters: 'Source
    - + -

    Invokes an action for each element in the observable sequence and invokes an action +

    Invokes an action for each element in the observable sequence and invokes an action upon graceful or exceptional termination of the observable sequence. -This method can be used for debugging, logging, etc. of query behavior by intercepting +This method can be used for debugging, logging, etc. of query behavior by intercepting the message stream to run arbitrary actions for messages on the pipeline.

    + - + iterObserver observer source -
    +
    Signature: observer:IObserver<'Source> -> source:IObservable<'Source> -> IObservable<'Source>
    - Type parameters: 'Source
    + Type parameters: 'Source
    - +

    Invokes the observer's methods for each message in the source sequence. -This method can be used for debugging, logging, etc. of query behavior by intercepting +This method can be used for debugging, logging, etc. of query behavior by intercepting the message stream to run arbitrary actions for messages on the pipeline.

    + - + joinWhen plans -
    - Signature: plans:seq<Plan<'T>> -> IObservable<'T>
    - Type parameters: 'T
    +
    + Signature: plans:seq<Plan<'T>> -> IObservable<'T>
    + Type parameters: 'T
    + + + + + + +

    Joins together the results from several patterns

    + + + + + + + + + last source + +
    + Signature: source:IObservable<'Source> -> IObservable<'Source>
    + Type parameters: 'Source
    + + + + + + +

    Returns the last element of an observable sequence.

    + + + + + + + + + lastIf predicate source + +
    + Signature: predicate:('Source -> bool) -> source:IObservable<'Source> -> IObservable<'Source>
    + Type parameters: 'Source
    + + + + + + +

    Returns the last element of an observable sequence that satisfies the condition in the predicate

    + + + + + + + + + latest source + +
    + Signature: source:IObservable<'?8511> -> IEnumerable<'?8511>
    + Type parameters: '?8511
    + + + + + + +

    Returns an enumerable sequence whose enumeration returns the latest observed element in the source observable sequence. +Enumerators on the resulting sequence will never produce the same element repeatedly, +and will block until the next element becomes available.

    + + + + + + + + + liftAsync asyncOperation + +
    + Signature: asyncOperation:('?8393 -> Async<'?8394>) -> '?8393 -> IObservable<'?8394>
    + Type parameters: '?8393, '?8394
    + + + + + + +

    Helper function for turning async workflows into observables

    + + + + + + + + + longCount source + +
    + Signature: source:IObservable<'?8513> -> IObservable<int64>
    + Type parameters: '?8513
    + + + + + + +

    Returns an observable sequence containing a int64 that represents +the total number of elements in an observable sequence

    + + + + + + + + + longCountSatisfy predicate source + +
    + Signature: predicate:('?8515 -> bool) -> source:IObservable<'?8515> -> IObservable<int64>
    + Type parameters: '?8515
    + + + + + + +

    Returns an observable sequence containing an int that represents how many elements +in the specified observable sequence satisfy a condition.

    + + + + + + + + + map f source + +
    + Signature: f:('?8517 -> '?8518) -> source:IObservable<'?8517> -> IObservable<'?8518>
    + Type parameters: '?8517, '?8518
    + + + + + + +

    Maps the given observable with the given function

    + + + + + + + + + map2 f a b + +
    + Signature: f:IObservable<('?8523 -> '?8524 -> '?8525)> -> a:IObservable<'?8523> -> b:IObservable<'?8524> -> IObservable<'?8525>
    + Type parameters: '?8523, '?8524, '?8525
    + + + + + + +

    Maps two observables to the specified function.

    + + + + + + + + + mapi f source + +
    + Signature: f:(int -> 'Source -> 'Result) -> source:IObservable<'Source> -> IObservable<'Result>
    + Type parameters: 'Source, 'Result
    + + + + + + +

    Maps the given observable with the given function and the +index of the element

    + + + + + + + + + mapTo x source + +
    + Signature: x:'?8527 -> source:IObservable<'T> -> IObservable<'?8527>
    + Type parameters: '?8527, 'T
    + + + + + + +

    Maps every emission to a constant value.

    + + + + + + + + + mapToLazy xLazy source + +
    + Signature: xLazy:Lazy<'T> -> source:IObservable<'T> -> IObservable<'T>
    + Type parameters: 'T
    + + + + + + +

    Maps every emission to a constant lazy value.

    + + + + + + + + + materialize source + +
    + Signature: source:IObservable<'?8532> -> IObservable<Notification<'?8532>>
    + Type parameters: '?8532
    + + + + + + +

    Materializes the implicit notifications of an observable sequence as +explicit notification values

    + + + + + + + + + maxOf source + +
    + Signature: source:IObservable<'T> -> IObservable<'T>
    + Type parameters: 'T
    + + + + + + +

    Returns the maximum element in an observable sequence.

    + + + + + + + + + merge second first + +
    + Signature: second:IObservable<'T> -> first:IObservable<'T> -> IObservable<'T>
    + Type parameters: 'T
    + + + + + + +

    Merges the two observables

    + + + + + + + + + mergeArray sources + +
    + Signature: sources:IObservable<'T> [] -> IObservable<'T>
    + Type parameters: 'T
    + + + + + + +

    Merges all the observable sequences into a single observable sequence.

    + + + + + + + + + mergeArrayOn scheduler sources + +
    + Signature: scheduler:IScheduler -> sources:IObservable<'T> [] -> IObservable<'T>
    + Type parameters: 'T
    + + + + + + +

    Merges all the observable sequences into a single observable sequence, +using a specified scheduler for enumeration of and subscription to the sources.

    + + + + + + + + + mergeInner sources + +
    + Signature: sources:IObservable<IObservable<'T>> -> IObservable<'T>
    + Type parameters: 'T
    + + + + + + +

    Merges elements from all inner observable sequences +into a single observable sequence.

    + + + + + + + + + mergeInnerMax maxConcurrent sources + +
    + Signature: maxConcurrent:int -> sources:IObservable<IObservable<'T>> -> IObservable<'T>
    + Type parameters: 'T
    + + + + + + +

    Merges elements from all inner observable sequences +into a single observable sequence limiting the number of concurrent +subscriptions to inner sequences

    + + + + + + + + + mergeOn scheduler second first + +
    + Signature: scheduler:IScheduler -> second:IObservable<'T> -> first:IObservable<'T> -> IObservable<'T>
    + Type parameters: 'T
    + + + + + + +

    Merges the two observables, using a specified scheduler for enumeration of and subscription to the sources.

    + + + + + + + + + mergeSeq sources + +
    + Signature: sources:seq<IObservable<'T>> -> IObservable<'T>
    + Type parameters: 'T
    + + + + + + +

    Merges an enumerable sequence of observable sequences into a single observable sequence.

    + + + + + + + + + mergeSeqMax maxConcurrent sources + +
    + Signature: maxConcurrent:int -> sources:seq<IObservable<'T>> -> IObservable<'T>
    + Type parameters: 'T
    + + + + + + +

    Merges an enumerable sequence of observable sequences into an observable sequence, +limiting the number of concurrent subscriptions to inner sequences.

    + + + + + + + + + mergeSeqMaxOn (...) + +
    + Signature: scheduler:IScheduler -> maxConcurrent:int -> sources:seq<IObservable<'T>> -> IObservable<'T>
    + Type parameters: 'T
    + + + + + + +

    Merges an enumerable sequence of observable sequences into an observable sequence, +limiting the number of concurrent subscriptions to inner sequences, +using a specified scheduler for enumeration of and subscription to the sources.

    + + + + + + + + + mergeSeqOn scheduler sources + +
    + Signature: scheduler:IScheduler -> sources:seq<IObservable<'T>> -> IObservable<'T>
    + Type parameters: 'T
    + + + + + + +

    Merges an enumerable sequence of observable sequences into a single observable sequence, +using a specified scheduler for enumeration of and subscription to the sources.

    + + + + + + + + + mergeTasks sources + +
    + Signature: sources:IObservable<Task<'T>> -> IObservable<'T>
    + Type parameters: 'T
    + + + + + + +

    Merge results from all source tasks into a single observable sequence

    + + + + + + + + + mostRecent initialVal source + +
    + Signature: initialVal:'?8558 -> source:IObservable<'?8558> -> IEnumerable<'?8558>
    + Type parameters: '?8558
    + + + + + + +

    Returns an enumerable sequence whose sequence whose enumeration returns the +most recently observed element in the source observable sequence, using +the specified

    + + + + + + + + + multicast subject source + +
    + Signature: subject:ISubject<'?8560,'?8561> -> source:IObservable<'?8560> -> IConnectableObservable<'?8561>
    + Type parameters: '?8560, '?8561
    + + + + + + +

    Multicasts the source sequence notifications through the specified subject to +the resulting connectable observable. Upon connection of the connectable +observable, the subject is subscribed to the source exactly one, and messages +are forwarded to the observers registered with the connectable observable. +For specializations with fixed subject types, see Publish, PublishLast, and Replay.

    + + + + + + + + + multicastMap (...) + +
    + Signature: subjectSelector:(unit -> ISubject<'?8563,'?8564>) -> selector:(IObservable<'?8564> -> IObservable<'?8565>) -> source:IObservable<'?8563> -> IObservable<'?8565>
    + Type parameters: '?8563, '?8564, '?8565
    + + + + + + +

    Multicasts the source sequence notifications through an instantiated subject into +all uses of the sequence within a selector function. Each subscription to the +resulting sequence causes a separate multicast invocation, exposing the sequence +resulting from the selector function's invocation. For specializations with fixed +subject types, see Publish, PublishLast, and Replay.

    + + + + + + + + + neverWitness witness + +
    + Signature: witness:'?8569 -> IObservable<'?8569>
    + Type parameters: '?8569
    + + + + + + +

    Returns a non-terminating observable sequence, which can be +used to denote an infinite duration (e.g. when using reactive joins).

    + + + + + + + + + next source + +
    + Signature: source:IObservable<'?8571> -> IEnumerable<'?8571>
    + Type parameters: '?8571
    + + + + + + +

    Returns an observable sequence whose enumeration blocks until the next +element in the source observable sequence becomes available. +Enumerators on the resulting sequence will block until the next +element becomes available.

    + + + + + + + + + observeOn scheduler source + +
    + Signature: scheduler:IScheduler -> source:IObservable<'?8577> -> IObservable<'?8577>
    + Type parameters: '?8577
    + + + + + + +

    Wraps the source sequence in order to run its observer callbacks on the specified scheduler.

    + + + + + + + + + observeOnContext context source + +
    + Signature: context:SynchronizationContext -> source:IObservable<'?8579> -> IObservable<'?8579>
    + Type parameters: '?8579
    + + + + + + +

    Wraps the source sequence in order to run its observer callbacks +on the specified synchronization context.

    + + + + + + + + + ofAsync asyncOperation + +
    + Signature: asyncOperation:Async<'?8391> -> IObservable<'?8391>
    + Type parameters: '?8391
    + + + + + + +

    Turns an F# async workflow into an observable

    + + + + + + + + + ofSeq items + +
    + Signature: items:seq<'Item> -> IObservable<'Item>
    + Type parameters: 'Item
    + + + + + + +

    Returns the sequence as an observable

    + + + + + + + + + ofSeqOn scheduler items + +
    + Signature: scheduler:IScheduler -> items:seq<'Item> -> IObservable<'Item>
    + Type parameters: 'Item
    + + + + + + +

    Returns the sequence as an observable, using the specified scheduler to run the enumeration loop

    + + + + + + + + + ofType source + +
    + Signature: source:IObservable<obj> -> IObservable<'?8581>
    + Type parameters: '?8581
    + + + + + + +

    Filters the elements of an observable sequence based on the specified type

    + + + + + + + + + onErrorConcat second first + +
    + Signature: second:IObservable<'Source> -> first:IObservable<'Source> -> IObservable<'Source>
    + Type parameters: 'Source
    + + + + + + +

    Concatenates the second observable sequence to the first observable sequence +upon successful or exceptional termination of the first.

    + + + + + + + + + onErrorConcatArray sources + +
    + Signature: sources:IObservable<'Source> [] -> IObservable<'Source>
    + Type parameters: 'Source
    + + + + + + +

    Concatenates all of the specified observable sequences, even if the previous observable sequence terminated exceptionally.

    + + + + + + + + + onErrorConcatSeq sources + +
    + Signature: sources:seq<IObservable<'Source>> -> IObservable<'Source>
    + Type parameters: 'Source
    + + + + + + +

    Concatenates all observable sequences in the given enumerable sequence, even if the +previous observable sequence terminated exceptionally.

    + + + + + + + + + perform f source + +
    + Signature: f:('?8589 -> unit) -> source:IObservable<'?8589> -> IObservable<'?8589>
    + Type parameters: '?8589
    + + + + + + +

    Iterates through the observable and performs the given side-effect

    + + + + + + + + + performFinally f source + +
    + Signature: f:(unit -> unit) -> source:IObservable<'?8591> -> IObservable<'?8591>
    + Type parameters: '?8591
    + + + + + + +

    Invokes the finally action after source observable sequence terminates normally or by an exception.

    + + + + + + + + + publish source + +
    + Signature: source:IObservable<'?8593> -> IConnectableObservable<'?8593>
    + Type parameters: '?8593
    + + + + + + +

    Returns a connectable observable sequence (IConnectableObsevable) that shares +a single subscription to the underlying sequence. This operator is a +specialization of Multicast using a regular Subject

    + + + + + + + + + publishInitial initial source + +
    + Signature: initial:'Source -> source:IObservable<'Source> -> IConnectableObservable<'Source>
    + Type parameters: 'Source
    + + + + + + +

    Returns a connectable observable sequence (IConnectableObsevable) that shares +a single subscription to the underlying sequence and starts with the value +initial. This operator is a specialization of Multicast using a regular Subject

    + + + + + + + + + publishInitialMap initial map source + +
    + Signature: initial:'Source -> map:(IObservable<'Source> -> IObservable<'Result>) -> source:IObservable<'Source> -> IObservable<'Result>
    + Type parameters: 'Source, 'Result
    + + + + + + +

    Returns an observable sequence that is the result of +the map on a connectable observable sequence that shares a +a single subscription to the underlying sequence. This operator is a +specialization of Multicast using a regular Subject

    + + + + + + + + + publishLast source + +
    + Signature: source:IObservable<'?8603> -> IConnectableObservable<'?8603>
    + Type parameters: '?8603
    + + + + + + +

    Returns an observable sequence that is the result of invoking +the selector on a connectable observable sequence containing +only the last notification This operator is a +specialization of Multicast using a regular Subject

    + + + + + + + + + publishLastMap map source + +
    + Signature: map:(IObservable<'Source> -> IObservable<'Result>) -> source:IObservable<'Source> -> IObservable<'Result>
    + Type parameters: 'Source, 'Result
    + + + + + + +

    Returns an observable sequence that is the result of invoking +the selector on a connectable observable sequence that shares a +a single subscription to the underlying sequence. This operator is a +specialization of Multicast using a regular Subject

    + + + + + + + + + publishMap map source + +
    + Signature: map:(IObservable<'Source> -> IObservable<'Result>) -> source:IObservable<'Source> -> IObservable<'Result>
    + Type parameters: 'Source, 'Result
    + + + + + + +

    Returns an observable sequence that is the result of invoking +the selector on a connectable observable sequence that shares a +a single subscription to the underlying sequence. This operator is a +specialization of Multicast using a regular Subject

    + + + + + + + + + range start count + +
    + Signature: start:int -> count:int -> IObservable<int>
    +
    + + + + + + +

    Creates a range as an observable

    + + + + + + + + + rangeOn scheduler start count + +
    + Signature: scheduler:IScheduler -> start:int -> count:int -> IObservable<int>
    +
    + + + + + + +

    Creates a range as an observable, using the specified scheduler to send out observer messages.

    + + + + + + + + + reduce f source + +
    + Signature: f:('?8610 -> '?8610 -> '?8610) -> source:IObservable<'?8610> -> IObservable<'?8610>
    + Type parameters: '?8610
    + + + + + + +

    Reduces the observable

    + + + + + + + + + refCount source + +
    + Signature: source:IConnectableObservable<'?8612> -> IObservable<'?8612>
    + Type parameters: '?8612
    + + + + + + +

    Returns an observable that remains connected to the source as long +as there is at least one subscription to the observable sequence +( publish an Observable to get a ConnectableObservable )

    + + + + + + + + + repeat source + +
    + Signature: source:IObservable<'Source> -> IObservable<'Source>
    + Type parameters: 'Source
    + + + + + + +

    Repeats the observable sequence indefinitely.

    + + + + + + + + + repeatCount repeatCount value + +
    + Signature: repeatCount:int -> value:'Result -> IObservable<'Result>
    + Type parameters: 'Result
    + + + + + + +

    Repeats the observable sequence a specified number of times.

    + + + + + + + + + repeatValue value + +
    + Signature: value:'Result -> IObservable<'Result>
    + Type parameters: 'Result
    + + + + + + +

    Generates an observable sequence that repeats the given element infinitely.

    + + + + + + + + + repeatWhile condition source + +
    + Signature: condition:(unit -> bool) -> source:IObservable<'Source> -> IObservable<'Source>
    + Type parameters: 'Source
    + + + + + + +

    Repeats the given observable sequence as long as the specified condition holds, where the +condition is evaluated after each repeated source is completed.

    + + + + + + + + + replay source + +
    + Signature: source:IObservable<'Source> -> IConnectableObservable<'Source>
    + Type parameters: 'Source
    + + + + + + +

    Returns a connectable observable sequence that shares a single subscription to the +underlying sequence replaying all notifications.

    + + + + + + + + + replayBuffer bufferSize source + +
    + Signature: bufferSize:int -> source:IObservable<'Source> -> IConnectableObservable<'Source>
    + Type parameters: 'Source
    + + + + + + +

    Returns a connectable observable sequence that shares a single subscription to the underlying sequence +replaying notifications subject to a maximum element count for the replay buffer.

    + + + + + + + + + replayBufferWindow (...) + +
    + Signature: bufferSize:int -> window:TimeSpan -> source:IObservable<'Source> -> IConnectableObservable<'Source>
    + Type parameters: 'Source
    - + -

    Joins together the results from several patterns

    +

    Returns a connectable observable sequence that shares a single subscription to the underlying sequence

    + - - last source + + replayBufferWindowOn (...) -
    - Signature: source:IObservable<'Source> -> IObservable<'Source>
    - Type parameters: 'Source
    +
    + Signature: scheduler:IScheduler -> bufferSize:int -> window:TimeSpan -> source:IObservable<'Source> -> IConnectableObservable<'Source>
    + Type parameters: 'Source
    - + -

    Returns the last element of an observable sequence.

    +

    Returns a connectable observable sequence that shares a single subscription to the underlying sequence

    + - - lastIf predicate source + + replayMap map source -
    - Signature: predicate:('Source -> bool) -> source:IObservable<'Source> -> IObservable<'Source>
    - Type parameters: 'Source
    +
    + Signature: map:(IObservable<'Source> -> IObservable<'Result>) -> source:IObservable<'Source> -> IObservable<'Result>
    + Type parameters: 'Source, 'Result
    - + -

    Returns the last element of an observable sequence that satisfies the condition in the predicate

    +

    Returns an observable sequence that is the result of invoking the selector on a connectable observable +sequence that shares a single subscription to the underlying sequence replaying all notifications.

    + - - latest source + + replayMapBuffer map bufferSize source -
    - Signature: source:IObservable<'?6575> -> IEnumerable<'?6575>
    - Type parameters: '?6575
    +
    + Signature: map:(IObservable<'Source> -> IObservable<'Result>) -> bufferSize:int -> source:IObservable<'Source> -> IObservable<'Result>
    + Type parameters: 'Source, 'Result
    - + -

    Returns an enumerable sequence whose enumeration returns the latest observed element in the source observable sequence. -Enumerators on the resulting sequence will never produce the same element repeatedly, -and will block until the next element becomes available.

    +

    Returns an observable sequence that is the result of apply a map to a connectable observable sequence that +shares a single subscription to the underlying sequence replaying notifications subject to +a maximum element count for the replay buffer.

    + - - longCount source + + replayMapBufferWindow (...) -
    - Signature: source:IObservable<'?6577> -> IObservable<int64>
    - Type parameters: '?6577
    +
    + Signature: map:(IObservable<'Source> -> IObservable<'Result>) -> bufferSize:int -> window:TimeSpan -> source:IObservable<'Source> -> IObservable<'Result>
    + Type parameters: 'Source, 'Result
    - + -

    Returns an observable sequence containing a int64 that represents -the total number of elements in an observable sequence

    +

    Returns an observable sequence that is the result of apply a map to a connectable observable sequence that +shares a single subscription to the underlying sequence replaying notifications subject to +a maximum time length and element count for the replay buffer.

    + - - longCountSatisfy predicate source + + replayMapBufferWindowOn (...) -
    - Signature: predicate:Func<'?6579,bool> -> source:IObservable<'?6579> -> IObservable<int64>
    - Type parameters: '?6579
    +
    + Signature: scheduler:IScheduler -> map:(IObservable<'Source> -> IObservable<'Result>) -> bufferSize:int -> window:TimeSpan -> source:IObservable<'Source> -> IObservable<'Result>
    + Type parameters: 'Source, 'Result
    - + -

    Returns an observable sequence containing an int that represents how many elements -in the specified observable sequence satisfy a condition.

    +

    Returns an observable sequence that is the result of apply a map to a connectable observable sequence that +shares a single subscription to the underlying sequence replaying notifications subject to +a maximum time length and element count for the replay buffer.

    + - - map f source + + replayMapWindow map window source -
    - Signature: f:('?6581 -> '?6582) -> source:IObservable<'?6581> -> IObservable<'?6582>
    - Type parameters: '?6581, '?6582
    +
    + Signature: map:(IObservable<'Source> -> IObservable<'Result>) -> window:TimeSpan -> source:IObservable<'Source> -> IObservable<'Result>
    + Type parameters: 'Source, 'Result
    - + -

    Maps the given observable with the given function

    +

    Returns an observable sequence that is the result of apply a map to a connectable observable sequence that +shares a single subscription to the underlying sequence replaying notifications subject to +a maximum time length.

    + - - map2 f a b + + replayMapWindowOn (...) -
    - Signature: f:IObservable<('?6587 -> '?6588 -> '?6589)> -> a:IObservable<'?6587> -> b:IObservable<'?6588> -> IObservable<'?6589>
    - Type parameters: '?6587, '?6588, '?6589
    +
    + Signature: scheduler:IScheduler -> map:(IObservable<'Source> -> IObservable<'Result>) -> window:TimeSpan -> source:IObservable<'Source> -> IObservable<'Result>
    + Type parameters: 'Source, 'Result
    - + -

    Maps two observables to the specified function.

    +

    Returns an observable sequence that is the result of apply a map to a connectable observable sequence that +shares a single subscription to the underlying sequence replaying notifications subject to +a maximum time length.

    + - - mapi f source + + replayWindow window source -
    - Signature: f:(int -> 'Source -> 'Result) -> source:IObservable<'Source> -> IObservable<'Result>
    - Type parameters: 'Source, 'Result
    +
    + Signature: window:TimeSpan -> source:IObservable<'Source> -> IConnectableObservable<'Source>
    + Type parameters: 'Source
    - + -

    Maps the given observable with the given function and the -index of the element

    +

    Returns a connectable observable sequence that shares a single subscription to the underlying sequence +replaying notifications subject to a maximum time length for the replay buffer.

    + - - materialize source + + replayWindowOn scheduler window source -
    - Signature: source:IObservable<'?6591> -> IObservable<Notification<'?6591>>
    - Type parameters: '?6591
    +
    + Signature: scheduler:IScheduler -> window:TimeSpan -> source:IObservable<'Source> -> IConnectableObservable<'Source>
    + Type parameters: 'Source
    - + -

    Materializes the implicit notifications of an observable sequence as -explicit notification values

    +

    Returns a connectable observable sequence that shares a single subscription to the underlying sequence +replaying notifications subject to a maximum time length for the replay buffer.

    + - - maxOf source + + result x -
    - Signature: source:IObservable<'T> -> IObservable<'T>
    - Type parameters: 'T
    +
    + Signature: x:'?8656 -> IObservable<'?8656>
    + Type parameters: '?8656
    - + -

    Returns the maximum element in an observable sequence.

    - + - - merge second first + + retry source -
    - Signature: second:IObservable<'T> -> first:IObservable<'T> -> IObservable<'T>
    - Type parameters: 'T
    +
    + Signature: source:IObservable<'Source> -> IObservable<'Source>
    + Type parameters: 'Source
    - + -

    Merges the two observables

    +

    Repeats the source observable sequence until it successfully terminates.

    + - - mergeArray sources + + retryCount count source -
    - Signature: sources:IObservable<'T> [] -> IObservable<'T>
    - Type parameters: 'T
    +
    + Signature: count:int -> source:IObservable<'Source> -> IObservable<'Source>
    + Type parameters: 'Source
    - + -

    Merges all the observable sequences into a single observable sequence.

    +

    Repeats the source observable sequence the specified number of times or until it successfully terminates.

    + - - mergeInner sources + + sample interval source -
    - Signature: sources:IObservable<IObservable<'T>> -> IObservable<'T>
    - Type parameters: 'T
    +
    + Signature: interval:TimeSpan -> source:IObservable<'?8658> -> IObservable<'?8658>
    + Type parameters: '?8658
    - + -

    Merges elements from all inner observable sequences -into a single observable sequence.

    +

    Samples the observable at the given interval

    + - - mergeInnerMax maxConcurrent sources + + sampleOn scheduler interval source -
    - Signature: maxConcurrent:int -> sources:IObservable<IObservable<'T>> -> IObservable<'T>
    - Type parameters: 'T
    +
    + Signature: scheduler:IScheduler -> interval:TimeSpan -> source:IObservable<'?8660> -> IObservable<'?8660>
    + Type parameters: '?8660
    - + -

    Merges elements from all inner observable sequences -into a single observable sequence limiting the number of concurrent -subscriptions to inner sequences

    +

    Samples the observable sequence at each interval, using the specified scheduler to run sampling timers. +Upon each sampling tick, the latest element (if any) in the source sequence during the +last sampling interval is sent to the resulting sequence.

    + - - mergeSeq sources + + sampleWith sampler source -
    - Signature: sources:seq<IObservable<'T>> -> IObservable<'T>
    - Type parameters: 'T
    +
    + Signature: sampler:IObservable<'Sample> -> source:IObservable<'Source> -> IObservable<'Source>
    + Type parameters: 'Sample, 'Source
    - + -

    Merges an enumerable sequence of observable sequences into a single observable sequence.

    +

    Samples the source observable sequence using a samper observable sequence producing sampling ticks. +Upon each sampling tick, the latest element (if any) in the source sequence during the +last sampling interval is sent to the resulting sequence.

    + - - mergeSeqMax maxConcurrent sources + + scan accumulator source -
    - Signature: maxConcurrent:int -> sources:seq<IObservable<'T>> -> IObservable<'T>
    - Type parameters: 'T
    +
    + Signature: accumulator:('a -> 'a -> 'a) -> source:IObservable<'a> -> IObservable<'a>
    + Type parameters: 'a
    - + -

    Merges an enumerable sequence of observable sequences into an observable sequence, - limiting the number of concurrent subscriptions to inner sequences.

    +

    Applies an accumulator function over an observable sequence and returns each intermediate result.

    + - - mergeTasks sources + + scanInit init accumulator source -
    - Signature: sources:IObservable<Task<'T>> -> IObservable<'T>
    - Type parameters: 'T
    +
    + Signature: init:'TAccumulate -> accumulator:('TAccumulate -> 'Source -> 'TAccumulate) -> source:IObservable<'Source> -> IObservable<'TAccumulate>
    + Type parameters: 'TAccumulate, 'Source
    - + -

    Merge results from all source tasks into a single observable sequence

    +

    Applies an accumulator function over an observable sequence and returns each intermediate result. +The specified init value is used as the initial accumulator value.

    + - - mostRecent initialVal source + + selectIf condition thenSource -
    - Signature: initialVal:'?6609 -> source:IObservable<'?6609> -> IEnumerable<'?6609>
    - Type parameters: '?6609
    +
    + Signature: condition:(unit -> bool) -> thenSource:IObservable<'?8670> -> IObservable<'?8670>
    + Type parameters: '?8670
    - + -

    Returns an enumerable sequence whose sequence whose enumeration returns the -most recently observed element in the source observable sequence, using -the specified

    +

    If the condition evaluates true, select the "thenSource" sequence. Otherwise, return an empty sequence.

    + - - multicast subject source + + selectIfElse (...) -
    - Signature: subject:ISubject<'?6611,'?6612> -> source:IObservable<'?6611> -> IConnectableObservable<'?6612>
    - Type parameters: '?6611, '?6612
    +
    + Signature: condition:(unit -> bool) -> elseSource:IObservable<'Result> -> thenSource:IObservable<'Result> -> IObservable<'Result>
    + Type parameters: 'Result
    - + -

    Multicasts the source sequence notifications through the specified subject to -the resulting connectable observable. Upon connection of the connectable -observable, the subject is subscribed to the source exactly one, and messages -are forwarded to the observers registered with the connectable observable. -For specializations with fixed subject types, see Publish, PublishLast, and Replay.

    +

    If the condition evaluates true, select the "thenSource" sequence. Otherwise, select the else source

    + - - multicastMap (...) + + selectIfOn (...) -
    - Signature: subjectSelector:Func<ISubject<'?6614,'?6615>> -> selector:Func<IObservable<'?6615>,IObservable<'?6616>> -> source:IObservable<'?6614> -> IObservable<'?6616>
    - Type parameters: '?6614, '?6615, '?6616
    +
    + Signature: scheduler:IScheduler -> condition:(unit -> bool) -> thenSource:IObservable<'?8672> -> IObservable<'?8672>
    + Type parameters: '?8672
    - + -

    Multicasts the source sequence notifications through an instantiated subject into -all uses of the sequence within a selector function. Each subscription to the -resulting sequence causes a separate multicast invocation, exposing the sequence -resulting from the selector function's invocation. For specializations with fixed -subject types, see Publish, PublishLast, and Replay.

    +

    If the condition evaluates true, select the "thenSource" sequence. +Otherwise, return an empty sequence generated on the specified scheduler.

    + - - neverWitness witness + + single value -
    - Signature: witness:'?6620 -> IObservable<'?6620>
    - Type parameters: '?6620
    +
    + Signature: value:'Result -> IObservable<'Result>
    + Type parameters: 'Result
    - + -

    Returns a non-terminating observable sequence, which can be -used to denote an infinite duration (e.g. when using reactive joins).

    +

    Returns an observable sequence that contains a single element.

    + - - next source + + singleOn scheduler value -
    - Signature: source:IObservable<'?6622> -> IEnumerable<'?6622>
    - Type parameters: '?6622
    +
    + Signature: scheduler:IScheduler -> value:'?8678 -> IObservable<'?8678>
    + Type parameters: '?8678
    - + -

    Returns an observable sequence whose enumeration blocks until the next -element in the source observable sequence becomes available. -Enumerators on the resulting sequence will block until the next -element becomes available.

    +

    Returns an observable sequence that contains a single element, +using a specified scheduler to send out observer messages.

    + - - observeOn scheduler source + + skip count source -
    - Signature: scheduler:IScheduler -> source:IObservable<'?6628> -> IObservable<'?6628>
    - Type parameters: '?6628
    +
    + Signature: count:int -> source:IObservable<'Source> -> IObservable<'Source>
    + Type parameters: 'Source
    - + -

    Wraps the source sequence in order to run its observer callbacks on the specified scheduler.

    +

    Bypasses a specified number of elements in an observable sequence and then returns the remaining elements.

    + - - observeOnContext context source + + skipLast count source -
    - Signature: context:SynchronizationContext -> source:IObservable<'?6630> -> IObservable<'?6630>
    - Type parameters: '?6630
    +
    + Signature: count:int -> source:IObservable<'Source> -> IObservable<'Source>
    + Type parameters: 'Source
    - + -

    Wraps the source sequence in order to run its observer callbacks -on the specified synchronization context.

    +

    Bypasses a specified number of elements at the end of an observable sequence.

    + - - ofSeq items + + skipLastSpan duration source -
    - Signature: items:seq<'Item> -> IObservable<'Item>
    - Type parameters: 'Item
    +
    + Signature: duration:TimeSpan -> source:IObservable<'Source> -> IObservable<'Source>
    + Type parameters: 'Source
    - + -

    Returns the sequence as an observable

    +

    Skips elements for the specified duration from the end of the observable source sequence.

    + - - ofSeqOn scheduler items + + skipLastSpanOn scheduler duration source -
    - Signature: scheduler:IScheduler -> items:seq<'Item> -> IObservable<'Item>
    - Type parameters: 'Item
    +
    + Signature: scheduler:IScheduler -> duration:TimeSpan -> source:IObservable<'?8690> -> IObservable<'?8690>
    + Type parameters: '?8690
    - + -

    Returns the sequence as an observable, using the specified scheduler to run the enumeration loop

    +

    Skips elements for the specified duration from the end of the observable source sequence, +using the specified scheduler to run timers.

    + - - ofType source + + skipSpan duration source -
    - Signature: source:IObservable<obj> -> IObservable<'?6632>
    - Type parameters: '?6632
    +
    + Signature: duration:TimeSpan -> source:IObservable<'Source> -> IObservable<'Source>
    + Type parameters: 'Source
    - + -

    Filters the elements of an observable sequence based on the specified type

    +

    Skips elements for the specified duration from the start of the observable source sequence.

    + - - onErrorConcat second first + + skipSpanOn scheduler duration source -
    - Signature: second:IObservable<'Source> -> first:IObservable<'Source> -> IObservable<'Source>
    - Type parameters: 'Source
    +
    + Signature: scheduler:IScheduler -> duration:TimeSpan -> source:IObservable<'?8684> -> IObservable<'?8684>
    + Type parameters: '?8684
    - + -

    Concatenates the second observable sequence to the first observable sequence -upon successful or exceptional termination of the first.

    +

    Skips elements for the specified duration from the start of the observable source sequence, +using a specified scheduler to run timers.

    + - - onErrorConcatArray sources + + skipUntil startTime source -
    - Signature: sources:IObservable<'Source> [] -> IObservable<'Source>
    - Type parameters: 'Source
    +
    + Signature: startTime:DateTimeOffset -> source:IObservable<'Source> -> IObservable<'Source>
    + Type parameters: 'Source
    - + -

    Concatenates all of the specified observable sequences, even if the previous observable sequence terminated exceptionally.

    +

    Skips elements from the observable source sequence until the specified start time.

    + - - onErrorConcatSeq sources + + skipUntilOn scheduler startTime source -
    - Signature: sources:seq<IObservable<'Source>> -> IObservable<'Source>
    - Type parameters: 'Source
    +
    + Signature: scheduler:IScheduler -> startTime:DateTimeOffset -> source:IObservable<'?8694> -> IObservable<'?8694>
    + Type parameters: '?8694
    - + -

    Concatenates all observable sequences in the given enumerable sequence, even if the -previous observable sequence terminated exceptionally.

    +

    Skips elements from the observable source sequence until the specified start time, +using the specified scheduler to run timers.

    + - - perform f source + + skipUntilOther other source -
    - Signature: f:('?6640 -> unit) -> source:IObservable<'?6640> -> IObservable<'?6640>
    - Type parameters: '?6640
    +
    + Signature: other:IObservable<'Other> -> source:IObservable<'Source> -> IObservable<'Source>
    + Type parameters: 'Other, 'Source
    - + -

    Iterates through the observable and performs the given side-effect

    +

    Returns the elements from the source observable sequence only after the other observable sequence produces an element.

    + - - performFinally f source + + skipWhile predicate source -
    - Signature: f:(unit -> unit) -> source:IObservable<'?6642> -> IObservable<'?6642>
    - Type parameters: '?6642
    +
    + Signature: predicate:('Source -> bool) -> source:IObservable<'Source> -> IObservable<'Source>
    + Type parameters: 'Source
    - + -

    Invokes the finally action after source observable sequence terminates normally or by an exception.

    +

    Bypasses elements in an observable sequence as long as a specified condition is true and then returns the remaining elements.

    + - - publish source + + skipWhilei predicate source -
    - Signature: source:IObservable<'?6644> -> IConnectableObservable<'?6644>
    - Type parameters: '?6644
    +
    + Signature: predicate:('Source -> int -> bool) -> source:IObservable<'Source> -> IObservable<'Source>
    + Type parameters: 'Source
    - + -

    Returns a connectable observable sequence (IConnectableObsevable) that shares -a single subscription to the underlying sequence. This operator is a -specialization of Multicast using a regular Subject

    +

    Bypasses elements in an observable sequence as long as a specified condition is true and then returns the remaining elements. +The element's index is used in the logic of the predicate functio

    + - - publishInitial initial source + + startWith values source -
    - Signature: initial:'Source -> source:IObservable<'Source> -> IConnectableObservable<'Source>
    - Type parameters: 'Source
    +
    + Signature: values:'?8703 -> source:IObservable<'T> -> IObservable<'T>
    + Type parameters: '?8703, 'T
    - + -

    Returns a connectable observable sequence (IConnectableObsevable) that shares -a single subscription to the underlying sequence and starts with the value -initial. This operator is a specialization of Multicast using a regular Subject

    +

    Prepends a sequence of values to an observable sequence.

    + - - publishInitialMap initial map source + + startWithOn scheduler values source -
    - Signature: initial:'Source -> map:(IObservable<'Source> -> IObservable<'Result>) -> source:IObservable<'Source> -> IObservable<'Result>
    - Type parameters: 'Source, 'Result
    +
    + Signature: scheduler:IScheduler -> values:'?8706 -> source:IObservable<'T> -> IObservable<'T>
    + Type parameters: '?8706, 'T
    - + -

    Returns an observable sequence that is the result of -the map on a connectable observable sequence that shares a -a single subscription to the underlying sequence. This operator is a -specialization of Multicast using a regular Subject

    +

    Prepends a sequence of values to an observable sequence.

    + - - publishLast source + + subscribe onNext observable -
    - Signature: source:IObservable<'?6654> -> IConnectableObservable<'?6654>
    - Type parameters: '?6654
    +
    + Signature: onNext:('T -> unit) -> observable:IObservable<'T> -> IDisposable
    + Type parameters: 'T
    - + -

    Returns an observable sequence that is the result of invoking -the selector on a connectable observable sequence containing -only the last notification This operator is a -specialization of Multicast using a regular Subject

    +

    Subscribes to the Observable with a next fuction.

    + - - publishLastMap map source + + subscribeObserver observer observable -
    - Signature: map:(IObservable<'Source> -> IObservable<'Result>) -> source:IObservable<'Source> -> IObservable<'Result>
    - Type parameters: 'Source, 'Result
    +
    + Signature: observer:IObserver<'T> -> observable:IObservable<'T> -> IDisposable
    + Type parameters: 'T
    - + -

    Returns an observable sequence that is the result of invoking -the selector on a connectable observable sequence that shares a -a single subscription to the underlying sequence. This operator is a -specialization of Multicast using a regular Subject

    +

    Subscribes to the observable with the given observer

    + - - publishMap map source + + subscribeOn scheduler source -
    - Signature: map:(IObservable<'Source> -> IObservable<'Result>) -> source:IObservable<'Source> -> IObservable<'Result>
    - Type parameters: 'Source, 'Result
    +
    + Signature: scheduler:IScheduler -> source:IObservable<'Source> -> IObservable<'Source>
    + Type parameters: 'Source
    - + -

    Returns an observable sequence that is the result of invoking -the selector on a connectable observable sequence that shares a -a single subscription to the underlying sequence. This operator is a -specialization of Multicast using a regular Subject

    +

    Wraps the source sequence in order to run its subscription and unsubscription logic +on the specified scheduler. This operation is not commonly used; This only performs +the side-effects of subscription and unsubscription on the specified scheduler. +In order to invoke observer callbacks on a scheduler, use 'observeOn'

    + - - range start count + + subscribeOnContext context source -
    - Signature: start:int -> count:int -> IObservable<int>
    -
    +
    + Signature: context:SynchronizationContext -> source:IObservable<'Source> -> IObservable<'Source>
    + Type parameters: 'Source
    - + -

    Creates a range as an observable

    +

    Wraps the source sequence in order to run its subscription and unsubscription logic +on the specified SynchronizationContext. This operation is not commonly used; This only performs +the side-effects of subscription and unsubscription on the specified scheduler. +In order to invoke observer callbacks on a scheduler, use 'observeOn'

    + - - reduce f source + + subscribeWithCallbacks (...) -
    - Signature: f:('?6660 -> '?6660 -> '?6660) -> source:IObservable<'?6660> -> IObservable<'?6660>
    - Type parameters: '?6660
    +
    + Signature: onNext:('T -> unit) -> onError:(exn -> unit) -> onCompleted:(unit -> unit) -> observable:IObservable<'T> -> IDisposable
    + Type parameters: 'T
    - + -

    Reduces the observable

    +

    Subscribes to the observable with all three callbacks

    + - - refCount source + + subscribeWithCompletion (...) -
    - Signature: source:IConnectableObservable<'?6662> -> IObservable<'?6662>
    - Type parameters: '?6662
    +
    + Signature: onNext:('T -> unit) -> onCompleted:(unit -> unit) -> observable:IObservable<'T> -> IDisposable
    + Type parameters: 'T
    - + -

    Returns an observable that remains connected to the source as long -as there is at least one subscription to the observable sequence -( publish an Observable to get a ConnectableObservable )

    +

    Subscribes to the Observable with a next and a completion callback.

    + - - repeat source + + subscribeWithError (...) -
    - Signature: source:IObservable<'Source> -> IObservable<'Source>
    - Type parameters: 'Source
    +
    + Signature: onNext:('T -> unit) -> onError:(exn -> unit) -> observable:IObservable<'T> -> IDisposable
    + Type parameters: 'T
    - + -

    Repeats the observable sequence indefinitely.

    +

    Subscribes to the Observable with a next and an error-function.

    + - - repeatCount value repeatCount + + switch sources -
    - Signature: value:'Result -> repeatCount:int -> IObservable<'Result>
    - Type parameters: 'Result
    +
    + Signature: sources:IObservable<IObservable<'Source>> -> IObservable<'Source>
    + Type parameters: 'Source
    - + -

    Repeats the observable sequence a specified number of times.

    +

    Transforms an observable sequence of observable sequences into an +observable sequence producing values only from the most recent +observable sequence.Each time a new inner observable sequnce is recieved, +unsubscribe from the previous inner sequence

    + - - repeatValue value + + switchTask sources -
    - Signature: value:'Result -> IObservable<'Result>
    - Type parameters: 'Result
    +
    + Signature: sources:IObservable<Task<'Source>> -> IObservable<'Source>
    + Type parameters: 'Source
    - + -

    Generates an observable sequence that repeats the given element infinitely.

    +

    Transforms an observable sequence of tasks into an observable sequence +producing values only from the most recent observable sequence. +Each time a new task is received, the previous task's result is ignored.

    + - - repeatWhile condition source + + synchronize source -
    - Signature: condition:(unit -> bool) -> source:IObservable<'Source> -> IObservable<'Source>
    - Type parameters: 'Source
    +
    + Signature: source:IObservable<'Source> -> IObservable<'Source>
    + Type parameters: 'Source
    - + -

    Repeats the given observable sequence as long as the specified condition holds, where the -condition is evaluated after each repeated source is completed.

    +

    Synchronizes the observable sequence so that notifications cannot be delivered concurrently +this overload is useful to "fix" an observable sequence that exhibits concurrent +callbacks on individual observers, which is invalid behavior for the query processor

    + - - replay source + + synchronizeGate gate source -
    - Signature: source:IObservable<'Source> -> IConnectableObservable<'Source>
    - Type parameters: 'Source
    +
    + Signature: gate:obj -> source:IObservable<'Source> -> IObservable<'Source>
    + Type parameters: 'Source
    - + -

    Returns a connectable observable sequence that shares a single subscription to the -underlying sequence replaying all notifications.

    +

    Synchronizes the observable sequence such that observer notifications +cannot be delivered concurrently, using the specified gate object.This +overload is useful when writing n-ary query operators, in order to prevent +concurrent callbacks from different sources by synchronizing on a common gate object.

    + - - replayBuffer bufferSize source + + take n source -
    - Signature: bufferSize:int -> source:IObservable<'Source> -> IConnectableObservable<'Source>
    - Type parameters: 'Source
    +
    + Signature: n:int -> source:IObservable<'Source> -> IObservable<'Source>
    + Type parameters: 'Source
    - + -

    Returns a connectable observable sequence that shares a single subscription to the underlying sequence -replaying notifications subject to a maximum element count for the replay buffer.

    +

    Takes n elements (from the beginning of an observable sequence? )

    + - - replayBufferWindow (...) + + takeLast count source -
    - Signature: bufferSize:int -> window:TimeSpan -> source:IObservable<'Source> -> IConnectableObservable<'Source>
    - Type parameters: 'Source
    +
    + Signature: count:int -> source:IObservable<'?8739> -> IObservable<'?8739>
    + Type parameters: '?8739
    - + -

    Returns a connectable observable sequence that shares a single subscription to the underlying sequence

    +

    Returns a specified number of contiguous elements from the end of an obserable sequence

    + - - - replayMap map source + + + takeLastBuffer duration source -
    - Signature: map:(IObservable<'Source> -> IObservable<'Result>) -> source:IObservable<'Source> -> IObservable<'Result>
    - Type parameters: 'Source, 'Result
    +
    + Signature: duration:TimeSpan -> source:IObservable<'Source> -> IObservable<IList<'Source>>
    + Type parameters: 'Source
    - + -

    Returns an observable sequence that is the result of invoking the selector on a connectable observable -sequence that shares a single subscription to the underlying sequence replaying all notifications.

    +

    Returns a list with the elements within the specified duration from the end of the observable source sequence.

    + - - replayMapBuffer map bufferSize source + + takeLastBufferCount count source -
    - Signature: map:(IObservable<'Source> -> IObservable<'Result>) -> bufferSize:int -> source:IObservable<'Source> -> IObservable<'Result>
    - Type parameters: 'Source, 'Result
    +
    + Signature: count:int -> source:IObservable<'Source> -> IObservable<IList<'Source>>
    + Type parameters: 'Source
    - + -

    Returns an observable sequence that is the result of apply a map to a connectable observable sequence that -shares a single subscription to the underlying sequence replaying notifications subject to -a maximum element count for the replay buffer.

    +

    Returns a list with the specified number of contiguous elements from the end of an observable sequence.

    + - - replayMapBufferWindow (...) + + takeLastBufferOn (...) -
    - Signature: map:(IObservable<'Source> -> IObservable<'Result>) -> bufferSize:int -> window:TimeSpan -> source:IObservable<'Source> -> IObservable<'Result>
    - Type parameters: 'Source, 'Result
    +
    + Signature: scheduler:IScheduler -> duration:TimeSpan -> source:IObservable<'?8749> -> IObservable<IList<'?8749>>
    + Type parameters: '?8749
    - + -

    Returns an observable sequence that is the result of apply a map to a connectable observable sequence that -shares a single subscription to the underlying sequence replaying notifications subject to -a maximum time length and element count for the replay buffer.

    +

    Returns a list with the elements within the specified duration from the end of the observable source sequence, +using the specified scheduler to run timers.

    + - - replayMapWindow map window source + + takeLastOn scheduler count source -
    - Signature: map:(IObservable<'Source> -> IObservable<'Result>) -> window:TimeSpan -> source:IObservable<'Source> -> IObservable<'Result>
    - Type parameters: 'Source, 'Result
    +
    + Signature: scheduler:IScheduler -> count:int -> source:IObservable<'?8741> -> IObservable<'?8741>
    + Type parameters: '?8741
    - + -

    Returns an observable sequence that is the result of apply a map to a connectable observable sequence that -shares a single subscription to the underlying sequence replaying notifications subject to -a maximum time length.

    +

    Returns a specified number of contiguous elements from the end of an obserable sequence, +using the specified scheduler to drain the queue.

    + - - replayWindow window source + + takeLastSpan duration source -
    - Signature: window:TimeSpan -> source:IObservable<'Source> -> IConnectableObservable<'Source>
    - Type parameters: 'Source
    +
    + Signature: duration:TimeSpan -> source:IObservable<'Source> -> IObservable<'Source>
    + Type parameters: 'Source
    - + -

    Returns a connectable observable sequence that shares a single subscription to the underlying sequence -replaying notifications subject to a maximum time length for the replay buffer.

    +

    Returns elements within the specified duration from the end of the observable source sequence.

    + - - result x + + takeLastSpanOn scheduler duration source -
    - Signature: x:'?6696 -> IObservable<'?6696>
    - Type parameters: '?6696
    +
    + Signature: scheduler:IScheduler -> duration:TimeSpan -> source:IObservable<'?8745> -> IObservable<'?8745>
    + Type parameters: '?8745
    - + - +

    Returns elements within the specified duration from the end of the observable source sequence, +using the specified scheduler to run timers.

    + + - - retry source + + takeOn scheduler n source -
    - Signature: source:IObservable<'Source> -> IObservable<'Source>
    - Type parameters: 'Source
    +
    + Signature: scheduler:IScheduler -> n:int -> source:IObservable<'?8733> -> IObservable<'?8733>
    + Type parameters: '?8733
    - + -

    Repeats the source observable sequence until it successfully terminates.

    +

    Returns a specified number of contiguous elemenents from the start of an observable sequence, +using the specified scheduler for the edge case of take(0).

    + - - retryCount count source + + takeSpan duration source -
    - Signature: count:int -> source:IObservable<'Source> -> IObservable<'Source>
    - Type parameters: 'Source
    +
    + Signature: duration:TimeSpan -> source:IObservable<'?8735> -> IObservable<'?8735>
    + Type parameters: '?8735
    - + -

    Repeats the source observable sequence the specified number of times or until it successfully terminates.

    +

    Takes elements for a specified duration from the start of the observable source sequence.

    + - - sample interval source + + takeSpanOn scheduler duration source -
    - Signature: interval:TimeSpan -> source:IObservable<'?6698> -> IObservable<'?6698>
    - Type parameters: '?6698
    +
    + Signature: scheduler:IScheduler -> duration:TimeSpan -> source:IObservable<'?8737> -> IObservable<'?8737>
    + Type parameters: '?8737
    - + -

    Samples the observable at the given interval

    +

    Takes elements for a specified duration from the start of the observable source sequence, +using the specified scheduler to run timers.

    + - - sampleWith sampler source + + takeUntilOther other source -
    - Signature: sampler:IObservable<'Sample> -> source:IObservable<'Source> -> IObservable<'Source>
    - Type parameters: 'Sample, 'Source
    +
    + Signature: other:IObservable<'Other> -> source:IObservable<'Source> -> IObservable<'Source>
    + Type parameters: 'Other, 'Source
    - + -

    Samples the source observable sequence using a samper observable sequence producing sampling ticks. -Upon each sampling tick, the latest element (if any) in the source sequence during the -last sampling interval is sent to the resulting sequence.

    +

    Returns the elements from the source observable sequence until the other produces and element

    + - - scan accumulator source + + takeUntilTime endtime source -
    - Signature: accumulator:('a -> 'a -> 'a) -> source:IObservable<'a> -> IObservable<'a>
    - Type parameters: 'a
    +
    + Signature: endtime:DateTimeOffset -> source:IObservable<'Source> -> IObservable<'Source>
    + Type parameters: 'Source
    - + -

    Applies an accumulator function over an observable sequence and returns each intermediate result.

    +

    Returns the elements from the source observable until the specified time

    + - - scanInit init accumulator source + + takeUntilTimeOn scheduler endtime source -
    - Signature: init:'TAccumulate -> accumulator:('TAccumulate -> 'Source -> 'TAccumulate) -> source:IObservable<'Source> -> IObservable<'TAccumulate>
    - Type parameters: 'TAccumulate, 'Source
    +
    + Signature: scheduler:IScheduler -> endtime:DateTimeOffset -> source:IObservable<'?8758> -> IObservable<'?8758>
    + Type parameters: '?8758
    - + -

    Applies an accumulator function over an observable sequence and returns each intermediate result. -The specified init value is used as the initial accumulator value.

    +

    Returns the elements from the source observable until the specified time, +using the specified scheduler to run timers.

    + - - selectIf condition thenSource + + takeWhile predicate source -
    - Signature: condition:(unit -> bool) -> thenSource:IObservable<'?6708> -> IObservable<'?6708>
    - Type parameters: '?6708
    +
    + Signature: predicate:('Source -> bool) -> source:IObservable<'Source> -> IObservable<'Source>
    + Type parameters: 'Source
    - + -

    If the condition evaluates true, select the "thenSource" sequence. Otherwise, return an empty sequence.

    +

    Returns elements from an observable sequence as long as a specified condition is true.

    + - - selectIfElse (...) + + takeWhilei predicate source -
    - Signature: condition:(unit -> bool) -> elseSource:IObservable<'Result> -> thenSource:IObservable<'Result> -> IObservable<'Result>
    - Type parameters: 'Result
    +
    + Signature: predicate:('Source -> int -> bool) -> source:IObservable<'Source> -> IObservable<'Source>
    + Type parameters: 'Source
    - + -

    If the condition evaluates true, select the "thenSource" sequence. Otherwise, select the else source

    +

    Returns elements from an observable sequence as long as a specified condition is true. +The element's index is used in the logic of the predicate functi

    + - - single value + + thenMap map source -
    - Signature: value:'Result -> IObservable<'Result>
    - Type parameters: 'Result
    +
    + Signature: map:('Source -> 'Result) -> source:IObservable<'Source> -> Plan<'Result>
    + Type parameters: 'Source, 'Result
    - + -

    Returns an observable sequence that contains a single element.

    +

    matches when the observable sequence has an available element and +applies the map

    + - - skip count source + + throttle dueTime source -
    - Signature: count:int -> source:IObservable<'Source> -> IObservable<'Source>
    - Type parameters: 'Source
    +
    + Signature: dueTime:TimeSpan -> source:IObservable<'Source> -> IObservable<'Source>
    + Type parameters: 'Source
    - + -

    Bypasses a specified number of elements in an observable sequence and then returns the remaining elements.

    +

    Ignores elements from an observable sequence which are followed by another element within a specified relative time duration.

    + - - skipLast count source + + throttleComputed (...) -
    - Signature: count:int -> source:IObservable<'Source> -> IObservable<'Source>
    - Type parameters: 'Source
    +
    + Signature: throttleDurationSelector:('Source -> IObservable<'Throttle>) -> source:IObservable<'Source> -> IObservable<'Source>
    + Type parameters: 'Source, 'Throttle
    - + -

    Bypasses a specified number of elements at the end of an observable sequence.

    +

    Ignores elements from an observable sequence which are followed by another value within a computed throttle duration

    + - - skipLastSpan duration source + + throttleOn scheduler dueTime source -
    - Signature: duration:TimeSpan -> source:IObservable<'Source> -> IObservable<'Source>
    - Type parameters: 'Source
    +
    + Signature: scheduler:IScheduler -> dueTime:TimeSpan -> source:IObservable<'Source> -> IObservable<'Source>
    + Type parameters: 'Source
    - + -

    Skips elements for the specified duration from the end of the observable source sequence.

    +

    Ignores elements from an observable sequence which are followed by another element within a specified relative time duration.

    + - - skipSpan duration source + + throw except -
    - Signature: duration:TimeSpan -> source:IObservable<'Source> -> IObservable<'Source>
    - Type parameters: 'Source
    +
    + Signature: except:exn -> IObservable<'Result>
    + Type parameters: 'Result
    - + -

    Skips elements for the specified duration from the start of the observable source sequence.

    +

    Returns an observable sequence that terminates with an exception.

    + - - skipUntil startTime source + + throwOn scheduler ex -
    - Signature: startTime:DateTimeOffset -> source:IObservable<'Source> -> IObservable<'Source>
    - Type parameters: 'Source
    +
    + Signature: scheduler:IScheduler -> ex:exn -> IObservable<'?8775>
    + Type parameters: '?8775
    - + -

    Skips elements from the observable source sequence until the specified start time.

    +

    Returns an observable sequence that terminates with an exception, +using the specified scheduler to send out the single OnError message.

    + - - skipUntilOther other source + + throwWitness witness ex -
    - Signature: other:IObservable<'Other> -> source:IObservable<'Source> -> IObservable<'Source>
    - Type parameters: 'Other, 'Source
    +
    + Signature: witness:'?8773 -> ex:exn -> IObservable<'?8773>
    + Type parameters: '?8773
    - + -

    Returns the elements from the source observable sequence only after the other observable sequence produces an element.

    +

    Returns an observable sequence that terminates with an exception.

    + - - skipWhile predicate source + + throwWitnessOn scheduler witeness ex -
    - Signature: predicate:('Source -> bool) -> source:IObservable<'Source> -> IObservable<'Source>
    - Type parameters: 'Source
    +
    + Signature: scheduler:'?8777 -> witeness:IScheduler -> ex:exn -> IObservable<'?8777>
    + Type parameters: '?8777
    - + -

    Bypasses elements in an observable sequence as long as a specified condition is true and then returns the remaining elements.

    +

    Returns an observable sequence that terminates with an exception, +using the specified scheduler to send out the single OnError message.

    + - - skipWhilei predicate source + + timeInterval source -
    - Signature: predicate:('Source -> int -> bool) -> source:IObservable<'Source> -> IObservable<'Source>
    - Type parameters: 'Source
    +
    + Signature: source:IObservable<'Source> -> IObservable<TimeInterval<'Source>>
    + Type parameters: 'Source
    - + -

    Bypasses elements in an observable sequence as long as a specified condition is true and then returns the remaining elements. -The element's index is used in the logic of the predicate functio

    +

    Records the time interval between consecutive elements in an observable sequence.

    + - - startWith values source + + timeIntervalOn scheduler source -
    - Signature: values:'?6731 -> source:IObservable<'T> -> IObservable<'T>
    - Type parameters: '?6731, 'T
    +
    + Signature: scheduler:IScheduler -> source:IObservable<'?8784> -> IObservable<TimeInterval<'?8784>>
    + Type parameters: '?8784
    - + -

    Prepends a sequence of values to an observable sequence.

    +

    Records the time interval between consecutive elements in an observable sequence, +using the specified scheduler to compute time intervals.

    + - - subscribe onNext observable + + timeout timeout source -
    - Signature: onNext:('T -> unit) -> observable:IObservable<'T> -> IDisposable
    - Type parameters: 'T
    +
    + Signature: timeout:DateTimeOffset -> source:IObservable<'Source> -> IObservable<'Source>
    + Type parameters: 'Source
    - + -

    Subscribes to the Observable with a next fuction.

    +

    Applies a timeout policy to the observable sequence based on an absolute time. +If the sequence doesn't terminate before the specified absolute due time, a TimeoutException is propagated to the observer.

    + - - subscribeObserver observer observable + + timeout2Duration (...) -
    - Signature: observer:IObserver<'T> -> observable:IObservable<'T> -> IDisposable
    - Type parameters: 'T
    +
    + Signature: timeout:IObservable<'Timeout> -> durationSelector:('Source -> IObservable<'Timeout>) -> source:IObservable<'Source> -> IObservable<'Source>
    + Type parameters: 'Timeout, 'Source
    - + -

    Subscribes to the observable with the given observer

    +

    Applies a timeout policy to the observable sequence based on an initial timeout duration +for the first element, and a timeout duration computed for each subsequent element. +If the next element isn't received within the computed duration starting from its predecessor, +a TimeoutException is propagated to the observer.

    + - - subscribeOn context source + + timeout2DurationOther (...) -
    - Signature: context:SynchronizationContext -> source:IObservable<'Source> -> IObservable<'Source>
    - Type parameters: 'Source
    +
    + Signature: timeout:IObservable<'Timeout> -> durationSelector:('Source -> IObservable<'Timeout>) -> other:IObservable<'Source> -> source:IObservable<'Source> -> IObservable<'Source>
    + Type parameters: 'Timeout, 'Source
    - + -

    Wraps the source sequence in order to run its subscription and unsubscription logic -on the specified scheduler. This operation is not commonly used; This only performs -the side-effects of subscription and unsubscription on the specified scheduler. - In order to invoke observer callbacks on a scheduler, use 'observeOn'

    +

    Applies a timeout policy to the observable sequence based on an initial timeout duration for the first +element, and a timeout duration computed for each subsequent element. +If the next element isn't received within the computed duration starting from its predecessor, +the other observable sequence is used to produce future messages from that point on.

    + - - subscribeWithCallbacks (...) + + timeoutDuration durationSelector source -
    - Signature: onNext:('T -> unit) -> onError:(exn -> unit) -> onCompleted:(unit -> unit) -> observable:IObservable<'T> -> IDisposable
    - Type parameters: 'T
    +
    + Signature: durationSelector:('Source -> IObservable<'Timeout>) -> source:IObservable<'Source> -> IObservable<'Source>
    + Type parameters: 'Source, 'Timeout
    - + -

    Subscribes to the observable with all three callbacks

    +

    Applies a timeout policy to the observable sequence based on a timeout duration computed for each element. +If the next element isn't received within the computed duration starting from its predecessor, +a TimeoutException is propagated to the observer.

    + - - subscribeWithCompletion (...) + + timeoutOn scheduler timeout source -
    - Signature: onNext:('T -> unit) -> onCompleted:(unit -> unit) -> observable:IObservable<'T> -> IDisposable
    - Type parameters: 'T
    +
    + Signature: scheduler:IScheduler -> timeout:DateTimeOffset -> source:IObservable<'?8788> -> IObservable<'?8788>
    + Type parameters: '?8788
    - + -

    Subscribes to the Observable with a next and a completion callback.

    +

    Applies a timeout policy to the observable sequence based on an absolute time, using the specified scheduler to run timeout timers. +If the sequence doesn't terminate before the specified absolute due time, a TimeoutException is propagated to the observer.

    + - - subscribeWithError (...) - -
    - Signature: onNext:('T -> unit) -> onError:(exn -> unit) -> observable:IObservable<'T> -> IDisposable
    - Type parameters: 'T
    + + timeoutOther timeout other source + +
    + Signature: timeout:DateTimeOffset -> other:IObservable<'Source> -> source:IObservable<'Source> -> IObservable<'Source>
    + Type parameters: 'Source
    - + -

    Subscribes to the Observable with a next and an error-function.

    +

    Applies a timeout policy to the observable sequence based on an absolute time. +If the sequence doesn't terminate before the specified absolute due time, the other +observable sequence is used to produce future messages from that point on.

    + - - switch sources + + timeoutOtherOn (...) -
    - Signature: sources:IObservable<IObservable<'Source>> -> IObservable<'Source>
    - Type parameters: 'Source
    +
    + Signature: scheduler:IScheduler -> timeout:DateTimeOffset -> other:IObservable<'?8792> -> source:IObservable<'?8792> -> IObservable<'?8792>
    + Type parameters: '?8792
    - + -

    Transforms an observable sequence of observable sequences into an -observable sequence producing values only from the most recent -observable sequence.Each time a new inner observable sequnce is recieved, -unsubscribe from the previous inner sequence

    +

    Applies a timeout policy to the observable sequence based on an absolute time, +using the specified scheduler to run timeout timers. +If the sequence doesn't terminate before the specified absolute due time, the other +observable sequence is used to produce future messages from that point on.

    + - - switchTask sources + + timeoutSpan timeout source -
    - Signature: sources:IObservable<Task<'Source>> -> IObservable<'Source>
    - Type parameters: 'Source
    +
    + Signature: timeout:TimeSpan -> source:IObservable<'Source> -> IObservable<'Source>
    + Type parameters: 'Source
    - + -

    Transforms an observable sequence of tasks into an observable sequence -producing values only from the most recent observable sequence. -Each time a new task is received, the previous task's result is ignored.

    +

    Applies a timeout policy for each element in the observable sequence. +If the next element isn't received within the specified timeout duration starting from its +predecessor, a TimeoutException is propagated to the observer.

    + - - synchronize source + + timeoutSpanOn scheduler timeout source -
    - Signature: source:IObservable<'Source> -> IObservable<'Source>
    - Type parameters: 'Source
    +
    + Signature: scheduler:IScheduler -> timeout:TimeSpan -> source:IObservable<'?8796> -> IObservable<'?8796>
    + Type parameters: '?8796
    - + -

    Synchronizes the observable sequence so that notifications cannot be delivered concurrently -this voerload is useful to "fix" and observable sequence that exhibits concurrent -callbacks on individual observers, which is invalid behavior for the query processor

    +

    Applies a timeout policy for each element in the observable sequence, using the specified scheduler to run timeout timers. +If the next element isn't received within the specified timeout duration starting from its +predecessor, a TimeoutException is propagated to the observer.

    + - - synchronizeGate gate source + + timeoutSpanOther timeout other source -
    - Signature: gate:obj -> source:IObservable<'Source> -> IObservable<'Source>
    - Type parameters: 'Source
    +
    + Signature: timeout:TimeSpan -> other:IObservable<'Source> -> source:IObservable<'Source> -> IObservable<'Source>
    + Type parameters: 'Source
    - + -

    Synchronizes the observable sequence such that observer notifications -cannot be delivered concurrently, using the specified gate object.This -overload is useful when writing n-ary query operators, in order to prevent -concurrent callbacks from different sources by synchronizing on a common gate object.

    +

    Applies a timeout policy for each element in the observable sequence. +If the next element isn't received within the specified timeout duration starting from +its predecessor, the other observable sequence is used to produce future messages from that point on.

    + - - take n source + + timeoutSpanOtherOn (...) -
    - Signature: n:int -> source:IObservable<'Source> -> IObservable<'Source>
    - Type parameters: 'Source
    +
    + Signature: scheduler:IScheduler -> timeout:TimeSpan -> other:IObservable<'?8800> -> source:IObservable<'?8800> -> IObservable<'?8800>
    + Type parameters: '?8800
    - + -

    Takes n elements (from the beginning of an observable sequence? )

    +

    Applies a timeout policy for each element in the observable sequence, using the specified scheduler to run timeout timers. +If the next element isn't received within the specified timeout duration starting from +its predecessor, the other observable sequence is used to produce future messages from that point on.

    + - - takeLast count source + + timer dueTime -
    - Signature: count:int -> source:IObservable<'?6756> -> IObservable<'?6756>
    - Type parameters: '?6756
    +
    + Signature: dueTime:DateTimeOffset -> IObservable<int64>
    +
    - + -

    Returns a specified number of contiguous elements from the end of an obserable sequence

    +

    Returns an observable sequence that produces a single value at the specified absolute due time.

    + - - takeLastBuffer duration source + + timerOn scheduler dueTime -
    - Signature: duration:TimeSpan -> source:IObservable<'Source> -> IObservable<IList<'Source>>
    - Type parameters: 'Source
    +
    + Signature: scheduler:IScheduler -> dueTime:DateTimeOffset -> IObservable<int64>
    +
    - + -

    Returns a list with the elements within the specified duration from the end of the observable source sequence.

    +

    Returns an observable sequence that produces a single value at the specified absolute due time, +using the specified scheduler to run the timer.

    + - - takeLastBufferCount count source + + timerPeriod dueTime period -
    - Signature: count:int -> source:IObservable<'Source> -> IObservable<IList<'Source>>
    - Type parameters: 'Source
    +
    + Signature: dueTime:DateTimeOffset -> period:TimeSpan -> IObservable<int64>
    +
    - + -

    Returns a list with the specified number of contiguous elements from the end of an observable sequence.

    +

    Returns an observable sequence that periodically produces a value starting at the specified initial absolute due time.

    + - - takeLastSpan duration source + + timerSpan dueTime -
    - Signature: duration:TimeSpan -> source:IObservable<'Source> -> IObservable<'Source>
    - Type parameters: 'Source
    +
    + Signature: dueTime:TimeSpan -> IObservable<int64>
    +
    - + -

    Returns elements within the specified duration from the end of the observable source sequence.

    +

    Returns an observable sequence that produces a single value after the specified relative due time has elapsed.

    + - - takeUntilOther other source + + timerSpanOn scheduler dueTime -
    - Signature: other:IObservable<'Other> -> source:IObservable<'Source> -> IObservable<'Source>
    - Type parameters: 'Other, 'Source
    +
    + Signature: scheduler:IScheduler -> dueTime:TimeSpan -> IObservable<int64>
    +
    - + -

    Returns the elements from the source observable sequence until the other produces and element

    +

    Returns an observable sequence that produces a single value after the specified relative due time has elapsed, +using the specified scheduler to run the timer.

    + - - takeUntilTime endtime source + + timerSpanPeriod (dueTime, period) -
    - Signature: endtime:DateTimeOffset -> source:IObservable<'Source> -> IObservable<'Source>
    - Type parameters: 'Source
    +
    + Signature: (dueTime:TimeSpan * period:TimeSpan) -> IObservable<int64>
    +
    - + -

    Returns the elements from the source observable until the specified time

    +

    Returns an observable sequence that periodically produces a value after the specified +initial relative due time has elapsed.

    + - - takeWhile predicate source + + timerSpanPeriodOn (...) -
    - Signature: predicate:('Source -> bool) -> source:IObservable<'Source> -> IObservable<'Source>
    - Type parameters: 'Source
    +
    + Signature: scheduler:IScheduler -> dueTime:TimeSpan -> period:TimeSpan -> IObservable<int64>
    +
    - + -

    Returns elements from an observable sequence as long as a specified condition is true.

    +

    Returns an observable sequence that periodically produces a value after the specified +initial relative due time has elapsed, using the specified scheduler to run the timer.

    + - - takeWhilei predicate source + + timestamp source -
    - Signature: predicate:('Source -> int -> bool) -> source:IObservable<'Source> -> IObservable<'Source>
    - Type parameters: 'Source
    +
    + Signature: source:IObservable<'Source> -> IObservable<Timestamped<'Source>>
    + Type parameters: 'Source
    - + -

    Returns elements from an observable sequence as long as a specified condition is true. -The element's index is used in the logic of the predicate functi

    +

    Timestamps each element in an observable sequence using the local system clock.

    + - - thenMap map source + + timestampOn scheduler source -
    - Signature: map:('Source -> 'Result) -> source:IObservable<'Source> -> Plan<'Result>
    - Type parameters: 'Source, 'Result
    +
    + Signature: scheduler:IScheduler -> source:IObservable<'Source> -> IObservable<Timestamped<'Source>>
    + Type parameters: 'Source
    - + -

    matches when the observable sequence has an available element and -applies the map

    +

    Timestamps each element in an observable sequence using the supplied scheduler.

    + - - throttle dueTime source + + toArray source -
    - Signature: dueTime:TimeSpan -> source:IObservable<'Source> -> IObservable<'Source>
    - Type parameters: 'Source
    +
    + Signature: source:IObservable<'?8824> -> IObservable<'?8824 []>
    + Type parameters: '?8824
    - + -

    Ignores elements from an observable sequence which are followed by another element within a specified relative time duration.

    +

    Creates an array from an observable sequence.

    + - - throttleComputed (...) + + toDictionary keySelector source -
    - Signature: source:IObservable<'Source> -> throttleDurationSelector:('Source -> IObservable<'Throttle>) -> IObservable<'Source>
    - Type parameters: 'Source, 'Throttle
    +
    + Signature: keySelector:('?8826 -> '?8827) -> source:IObservable<'?8826> -> IObservable<IDictionary<'?8827,'?8826>>
    + Type parameters: '?8826, '?8827
    - + -

    Ignores elements from an observable sequence which are followed by another value within a computed throttle duration

    +

    Creates an observable sequence according to a specified key selector function

    + - - throw except + + toDictionaryCompareElements (...) -
    - Signature: except:exn -> IObservable<'Result>
    - Type parameters: 'Result
    +
    + Signature: keySelector:('Source -> 'Key) -> elementSelector:('Source -> 'Elm) -> comparer:'Key -> source:'Source -> IObservable<IDictionary<'Key,'Elm>>
    + Type parameters: 'Source, 'Key, 'Elm
    - + -

    Returns an observable sequence that terminates with an exception.

    +

    Creates an observable sequence according to a specified key selector function

    + - - timeInterval source + + toDictionaryComparer (...) -
    - Signature: source:IObservable<'Source> -> IObservable<TimeInterval<'Source>>
    - Type parameters: 'Source
    +
    + Signature: keySelector:('Source -> 'Key) -> comparer:'Key -> source:'Source -> IObservable<IDictionary<'Key,'Source>>
    + Type parameters: 'Source, 'Key
    - + -

    Records the time interval between consecutive elements in an observable sequence.

    +

    Creates an observable sequence according to a specified key selector function +and an a comparer

    + - - timeout timeout source + + toDictionaryElements (...) -
    - Signature: timeout:DateTimeOffset -> source:IObservable<'Source> -> IObservable<'Source>
    - Type parameters: 'Source
    +
    + Signature: keySelector:('Source -> 'Key) -> elementSelector:('Source -> 'Elm) -> source:'Source -> IObservable<IDictionary<'Key,'Elm>>
    + Type parameters: 'Source, 'Key, 'Elm
    - + -

    Applies a timeout policy to the observable sequence based on an absolute time. -If the sequence doesn't terminate before the specified absolute due time, a TimeoutException is propagated to the observer.

    +

    Creates an observable sequence according to a specified key selector function

    + - - timeout2Duration (...) + + toEnumerable source -
    - Signature: timeout:IObservable<'Timeout> -> durationSelector:('Source -> IObservable<'Timeout>) -> source:IObservable<'Source> -> IObservable<'Source>
    - Type parameters: 'Timeout, 'Source
    +
    + Signature: source:IObservable<'T> -> IEnumerable<'T>
    + Type parameters: 'T
    - + -

    Applies a timeout policy to the observable sequence based on an initial timeout duration -for the first element, and a timeout duration computed for each subsequent element. -If the next element isn't received within the computed duration starting from its predecessor, -a TimeoutException is propagated to the observer.

    +

    Converts an observable into a seq

    + - - timeout2DurationOther (...) + + toEvent source -
    - Signature: timeout:IObservable<'Timeout> -> durationSelector:('Source -> IObservable<'Timeout>) -> other:IObservable<'Source> -> source:IObservable<'Source> -> IObservable<'Source>
    - Type parameters: 'Timeout, 'Source
    +
    + Signature: source:IObservable<unit> -> IEventSource<unit>
    +
    - + -

    Applies a timeout policy to the observable sequence based on an initial timeout duration for the first -element, and a timeout duration computed for each subsequent element. -If the next element isn't received within the computed duration starting from its predecessor, -the other observable sequence is used to produce future messages from that point on.

    +

    Exposes an observable sequence as an object with an Action based .NET event

    + - - timeoutDuration durationSelector source + + toEventType source -
    - Signature: durationSelector:('Source -> IObservable<'Timeout>) -> source:IObservable<'Source> -> IObservable<'Source>
    - Type parameters: 'Source, 'Timeout
    +
    + Signature: source:IObservable<'Source> -> IEventSource<'Source>
    + Type parameters: 'Source
    - + -

    Applies a timeout policy to the observable sequence based on a timeout duration computed for each element. -If the next element isn't received within the computed duration starting from its predecessor, -a TimeoutException is propagated to the observer.

    +

    Exposes an observable sequence as an object with an Action<'Source> based .NET event.

    + - - timeoutOther timeout other source + + toList source -
    - Signature: timeout:DateTimeOffset -> other:IObservable<'Source> -> source:IObservable<'Source> -> IObservable<'Source>
    - Type parameters: 'Source
    +
    + Signature: source:IObservable<'?8843> -> IObservable<IList<'?8843>>
    + Type parameters: '?8843
    - + -

    Applies a timeout policy to the observable sequence based on an absolute time. -If the sequence doesn't terminate before the specified absolute due time, the other -observable sequence is used to produce future messages from that point on.

    +

    Creates a list from an observable sequence

    + - - timeoutSpan timeout source + + toLookup keySelector source -
    - Signature: timeout:TimeSpan -> source:IObservable<'Source> -> IObservable<'Source>
    - Type parameters: 'Source
    +
    + Signature: keySelector:('Source -> 'Key) -> source:IObservable<'Source> -> IObservable<ILookup<'Key,'Source>>
    + Type parameters: 'Source, 'Key
    - + -

    Applies a timeout policy for each element in the observable sequence. -If the next element isn't received within the specified timeout duration starting from its -predecessor, a TimeoutException is propagated to the observer.

    +

    Creates a lookup from an observable sequence according to a specified key selector function.

    + - - timeoutSpanOther timeout other source + + toLookupCompare (...) -
    - Signature: timeout:TimeSpan -> other:IObservable<'Source> -> source:IObservable<'Source> -> IObservable<'Source>
    - Type parameters: 'Source
    +
    + Signature: keySelector:('Source -> 'Key) -> comparer:IEqualityComparer<'Key> -> source:IObservable<'Source> -> IObservable<ILookup<'Key,'Source>>
    + Type parameters: 'Source, 'Key
    - + -

    Applies a timeout policy for each element in the observable sequence. -If the next element isn't received within the specified timeout duration starting from -its predecessor, the other observable sequence is used to produce future messages from that point on.

    +

    Creates a lookup from an observable sequence according to a specified key selector function, and a comparer.

    + - - timer dueTime + + toLookupCompareElement (...) -
    - Signature: dueTime:DateTimeOffset -> IObservable<int64>
    -
    +
    + Signature: keySelector:('Source -> 'Key) -> elementSelector:('Source -> 'Element) -> source:IObservable<'Source> -> IObservable<ILookup<'Key,'Element>>
    + Type parameters: 'Source, 'Key, 'Element
    - + -

    Returns an observable sequence that produces a single value at the specified absolute due time.

    +

    Creates a lookup from an observable sequence according to a specified key selector function, and an element selector function.

    + - - timerPeriod dueTime period + + toLookupElement (...) -
    - Signature: dueTime:DateTimeOffset -> period:TimeSpan -> IObservable<int64>
    -
    +
    + Signature: keySelector:('Source -> 'Key) -> elementSelector:('Source -> 'Element) -> comparer:IEqualityComparer<'Key> -> source:IObservable<'Source> -> IObservable<ILookup<'Key,'Element>>
    + Type parameters: 'Source, 'Key, 'Element
    - + -

    Returns an observable sequence that periodically produces a value starting at the specified initial absolute due time.

    +

    Creates a lookup from an observable sequence according to a specified key selector function, and an element selector function.

    + - - timerSpan dueTime + + toObservable source -
    - Signature: dueTime:TimeSpan -> IObservable<int64>
    -
    +
    + Signature: source:seq<'T> -> IObservable<'T>
    + Type parameters: 'T
    - + -

    Returns an observable sequence that produces a single value after the specified relative due time has elapsed.

    +

    Converts a seq into an observable

    + - - timerSpanPeriod (dueTime, period) + + using resourceFactory observableFactory -
    - Signature: (dueTime:TimeSpan * period:TimeSpan) -> IObservable<int64>
    -
    +
    + Signature: resourceFactory:(unit -> 'TResource) -> observableFactory:('TResource -> IObservable<'Result>) -> IObservable<'Result>
    + Type parameters: 'TResource, 'Result
    - + -

    Returns an observable sequence that periodically produces a value after the specified -initial relative due time has elapsed.

    +

    Constructs an observable sequence that depends on a resource object, whose +lifetime is tied to the resulting observable sequence's lifetime.

    + - - timestamp source + + wait source -
    - Signature: source:IObservable<'Source> -> IObservable<Timestamped<'Source>>
    - Type parameters: 'Source
    +
    + Signature: source:IObservable<'?8864> -> '?8864
    + Type parameters: '?8864
    - + -

    Timestamps each element in an observable sequence using the local system clock.

    +

    waits for the observable sequence to complete and returns the last +element of the sequence. If the sequence terminates with OnError +notification, the exception is thrown

    + - - toArray source + + whileLoop condition source -
    - Signature: source:IObservable<'?6810> -> IObservable<'?6810 []>
    - Type parameters: '?6810
    +
    + Signature: condition:(unit -> bool) -> source:IObservable<'?8866> -> IObservable<'?8866>
    + Type parameters: '?8866
    - + -

    Creates an array from an observable sequence -Creates an array from an observable sequence.

    +

    Repeats the given function as long as the specified condition holds +where the condition is evaluated before each repeated source is +subscribed to

    + - - toDictionary keySelector source + + window windowClosingSelector source -
    - Signature: keySelector:Func<'?6812,'?6813> -> source:IObservable<'?6812> -> IObservable<IDictionary<'?6813,'?6812>>
    - Type parameters: '?6812, '?6813
    +
    + Signature: windowClosingSelector:(unit -> IObservable<'WindowClosing>) -> source:IObservable<'Source> -> IObservable<IObservable<'Source>>
    + Type parameters: 'WindowClosing, 'Source
    - + -

    Creates an observable sequence according to a specified key selector function

    +

    Projects each element of an observable sequence into consecutive non-overlapping windows. +windowClosingSelector - A function invoked to define the boundaries of the produced windows. +A new window is started when the previous one is closed

    + - - toDictionaryCompareElements (...) + + windowBounded windowBoundaries source -
    - Signature: keySelector:('Source -> 'Key) -> elementSelector:('Source -> 'Elm) -> comparer:'Key -> source:'Source -> IObservable<IDictionary<'Key,'Elm>>
    - Type parameters: 'Source, 'Key, 'Elm
    +
    + Signature: windowBoundaries:IObservable<'WindowBoundary> -> source:IObservable<'Source> -> IObservable<IObservable<'Source>>
    + Type parameters: 'WindowBoundary, 'Source
    - + -

    Creates an observable sequence according to a specified key selector function

    +

    Projects each element of an observable sequence into consecutive non-overlapping windows +windowBoundaries - Sequence of window boundary markers. The current window is closed +and a new window is opened upon receiving a boundary marker

    + - - toDictionaryComparer (...) + + windowCount count source -
    - Signature: keySelector:('Source -> 'Key) -> comparer:'Key -> source:'Source -> IObservable<IDictionary<'Key,'Source>>
    - Type parameters: 'Source, 'Key
    +
    + Signature: count:int -> source:IObservable<'Source> -> IObservable<IObservable<'Source>>
    + Type parameters: 'Source
    - + -

    Creates an observable sequence according to a specified key selector function -and an a comparer

    +

    Projects each element of an observable sequence into consecutive non-overlapping windows +which are produced based on element count information.

    + - - toDictionaryElements (...) + + windowCountSkip count skip source -
    - Signature: keySelector:('Source -> 'Key) -> elementSelector:('Source -> 'Elm) -> source:'Source -> IObservable<IDictionary<'Key,'Elm>>
    - Type parameters: 'Source, 'Key, 'Elm
    +
    + Signature: count:int -> skip:int -> source:IObservable<'Source> -> IObservable<IObservable<'Source>>
    + Type parameters: 'Source
    - + -

    Creates an observable sequence according to a specified key selector function

    +

    Projects each element of an observable sequence into zero or more windows which are produced based on element count information

    + - - toEnumerable source + + windowOpenClose (...) -
    - Signature: source:IObservable<'T> -> IEnumerable<'T>
    - Type parameters: 'T
    +
    + Signature: windowOpenings:IObservable<'WinOpen> -> windowClosingSelector:('WinOpen -> IObservable<'WinClose>) -> source:IObservable<'Source> -> IObservable<IObservable<'Source>>
    + Type parameters: 'WinOpen, 'WinClose, 'Source
    - + -

    Converts an observable into a seq

    +

    Projects each element of an observable sequence into zero or more windows. +windowOpenings - Observable sequence whose elements denote the creation of new windows. +windowClosingSelector - A function invoked to define the closing of each produced window.

    + - - toEvent source + + windowTimeCount timeSpan count source -
    - Signature: source:IObservable<unit> -> IEventSource<unit>
    -
    +
    + Signature: timeSpan:TimeSpan -> count:int -> source:IObservable<'Source> -> IObservable<IObservable<'Source>>
    + Type parameters: 'Source
    - + -

    Exposes and observable sequence as an object with an Action based .NET event

    +

    Projects each element of an observable sequence into a window that is completed when either it's full or +a given amount of time has elapsed. +A useful real-world analogy of this overload is the behavior of a ferry leaving the dock when all seats are +taken, or at the scheduled time of departure, whichever event occurs first

    + - - toEventType source + + windowTimeCountOn (...) -
    - Signature: source:IObservable<'Source> -> IEventSource<'Source>
    - Type parameters: 'Source
    +
    + Signature: scheduler:IScheduler -> timeSpan:TimeSpan -> count:int -> source:IObservable<'?8892> -> IObservable<IObservable<'?8892>>
    + Type parameters: '?8892
    - + -

    Exposes an observable sequence as an object with an Action<'Source> based .NET event.

    +

    Projects each element of an observable sequence into a window that is completed when either it's full or +a given amount of time has elapsed, using the specified scheduler to run timers. +A useful real-world analogy of this overload is the behavior of a ferry leaving the dock when all seats are +taken, or at the scheduled time of departure, whichever event occurs first

    + - - toList source + + windowTimeShift (...) -
    - Signature: source:IObservable<'?6829> -> IObservable<IList<'?6829>>
    - Type parameters: '?6829
    +
    + Signature: timeSpan:TimeSpan -> timeShift:TimeSpan -> source:IObservable<'Source> -> IObservable<IObservable<'Source>>
    + Type parameters: 'Source
    - + -

    Creates a list from an observable sequence

    +

    Projects each element of an observable sequence into consecutive non-overlapping windows. +windowBoundaries - Sequence of window boundary markers. The current window is closed and a new window is opened upon receiving a boundary marker.

    + - - toLookup keySelector source + + windowTimeShiftOn (...) -
    - Signature: keySelector:('Source -> 'Key) -> source:IObservable<'Source> -> IObservable<ILookup<'Key,'Source>>
    - Type parameters: 'Source, 'Key
    +
    + Signature: scheduler:IScheduler -> timeSpan:TimeSpan -> timeShift:TimeSpan -> source:IObservable<'?8881> -> IObservable<IObservable<'?8881>>
    + Type parameters: '?8881
    - + -

    Creates a lookup from an observable sequence according to a specified key selector function.

    +

    Projects each element of an observable sequence into consecutive non-overlapping windows, using the specified scheduler to run timers. +windowBoundaries - Sequence of window boundary markers. The current window is closed and a new window is opened upon receiving a boundary marker.

    + - - toLookupCompare (...) + + windowTimeSpan timeSpan source -
    - Signature: keySelector:('Source -> 'Key) -> comparer:IEqualityComparer<'Key> -> source:IObservable<'Source> -> IObservable<ILookup<'Key,'Source>>
    - Type parameters: 'Source, 'Key
    +
    + Signature: timeSpan:TimeSpan -> source:IObservable<'Source> -> IObservable<IObservable<'Source>>
    + Type parameters: 'Source
    - + -

    Creates a lookup from an observable sequence according to a specified key selector function, and a comparer.

    +

    Projects each element of an observable sequence into consecutive non-overlapping windows +which are produced based on timing information.

    + - - toLookupCompareElement (...) + + windowTimeSpanOn (...) -
    - Signature: keySelector:('Source -> 'Key) -> elementSelector:('Source -> 'Element) -> source:IObservable<'Source> -> IObservable<ILookup<'Key,'Element>>
    - Type parameters: 'Source, 'Key, 'Element
    +
    + Signature: scheduler:IScheduler -> timeSpan:TimeSpan -> source:IObservable<'?8873> -> IObservable<IObservable<'?8873>>
    + Type parameters: '?8873
    - + -

    Creates a lookup from an observable sequence according to a specified key selector function, and an element selector function.

    +

    Projects each element of an observable sequence into consecutive non-overlapping windows +which are produced based on timing information, using the specified scheduler to run timers.

    + - - toLookupElement (...) + + withLatestFrom (...) -
    - Signature: keySelector:('Source -> 'Key) -> elementSelector:('Source -> 'Element) -> comparer:IEqualityComparer<'Key> -> source:IObservable<'Source> -> IObservable<ILookup<'Key,'Element>>
    - Type parameters: 'Source, 'Key, 'Element
    +
    + Signature: resultSelector:('?8894 -> '?8895 -> '?8896) -> second:IObservable<'?8895> -> first:IObservable<'?8894> -> IObservable<'?8896>
    + Type parameters: '?8894, '?8895, '?8896
    - + -

    Creates a lookup from an observable sequence according to a specified key selector function, and an element selector function.

    +

    Merges the specified observable sequences into one observable sequence by using the selector function +only when the first observable sequence produces an element and there was some element produced by the second +observable sequence

    + - - toObservable source + + zip first second -
    - Signature: source:seq<'T> -> IObservable<'T>
    - Type parameters: 'T
    +
    + Signature: first:IObservable<'Source1> -> second:IObservable<'Source2> -> IObservable<'Source1 * 'Source2>
    + Type parameters: 'Source1, 'Source2
    - + -

    Converts a seq into an observable

    +

    Merges two observable sequences into one observable sequence of pairs.

    + - - using resourceFactory observableFactory + + zip3 first second third -
    - Signature: resourceFactory:(unit -> 'TResource) -> observableFactory:('TResource -> IObservable<'Result>) -> IObservable<'Result>
    - Type parameters: 'TResource, 'Result
    +
    + Signature: first:IObservable<'Source1> -> second:IObservable<'Source2> -> third:IObservable<'Source3> -> IObservable<'Source1 * 'Source2 * 'Source3>
    + Type parameters: 'Source1, 'Source2, 'Source3
    - + -

    Constructs an observable sequence that depends on a resource object, whose -lifetime is tied to the resulting observable sequence's lifetime.

    +

    Merges three observable sequences into one observable sequence of triples.

    + - - wait source + + zipArray sources -
    - Signature: source:IObservable<'?6850> -> '?6850
    - Type parameters: '?6850
    +
    + Signature: sources:IObservable<'Source> [] -> IObservable<IList<'Source>>
    + Type parameters: 'Source
    - + -

    waits for the observable sequence to complete and returns the last -element of the sequence. If the sequence terminates with OnError -notification, the exception is thrown

    +

    Merges the specified observable sequences into one observable sequence by emitting +a list with the elements of the observable sequences at corresponding indexe

    + - - whileLoop condition source + + zipSeq sources -
    - Signature: condition:(unit -> bool) -> source:IObservable<'?6852> -> IObservable<'?6852>
    - Type parameters: '?6852
    +
    + Signature: sources:seq<IObservable<'Source>> -> IObservable<IList<'Source>>
    + Type parameters: 'Source
    - + -

    Repeats the given function as long as the specified condition holds -where the condition is evaluated before each repeated source is -subscribed to

    +

    Merges the specified observable sequences into one observable sequence by emitting a +list with the elements of the observable sequences at corresponding indexes.

    + - - window windowClosingSelector source + + zipSeqMap resultSelector sources -
    - Signature: windowClosingSelector:(unit -> IObservable<'WindowClosing>) -> source:IObservable<'Source> -> IObservable<IObservable<'Source>>
    - Type parameters: 'WindowClosing, 'Source
    +
    + Signature: resultSelector:(IList<'S> -> 'R) -> sources:seq<IObservable<'S>> -> IObservable<'R>
    + Type parameters: 'S, 'R
    - + -

    Projects each element of an observable sequence into consecutive non-overlapping windows. -windowClosingSelector - A function invoked to define the boundaries of the produced windows. -A new window is started when the previous one is closed

    +

    Merges the specified observable sequences into one observable sequence by using +the selector function whenever all of the observable sequences have produced an +element at a corresponding index.

    + - - windowBounded windowBoundaries source + + zipWith resultSelector first second -
    - Signature: windowBoundaries:IObservable<'WindowBoundary> -> source:IObservable<'Source> -> IObservable<IObservable<'Source>>
    - Type parameters: 'WindowBoundary, 'Source
    +
    + Signature: resultSelector:('Source1 -> 'Source2 -> 'Result) -> first:IObservable<'Source1> -> second:IObservable<'Source2> -> IObservable<'Result>
    + Type parameters: 'Source1, 'Source2, 'Result
    - + -

    Projects each element of an observable sequence into consecutive non-overlapping windows -windowBoundaries - Sequence of window boundary markers. The current window is closed -and a new window is opened upon receiving a boundary marker

    +

    Merges two observable sequences into one observable sequence by combining their elements through a projection function.

    + - - windowCount count source + + zipWithSeq resultSelector second first -
    - Signature: count:int -> source:IObservable<'Source> -> IObservable<IObservable<'Source>>
    - Type parameters: 'Source
    +
    + Signature: resultSelector:('Source1 -> 'Source2 -> 'Result) -> second:seq<'Source2> -> first:IObservable<'Source1> -> IObservable<'Result>
    + Type parameters: 'Source1, 'Source2, 'Result
    - + -

    Projects each element of an observable sequence into consecutive non-overlapping windows -which are produced based on element count information.

    +

    Merges an observable sequence and an enumerable sequence into one +observable sequence by using the selector function.

    + + + +

    Type extensions

    + + + + + @@ -5049,10 +6862,10 @@

    Functions and values

    - F# Project + F# Project
    diff --git a/reference/fsharp-control-reactive-schedule.html b/reference/fsharp-control-reactive-schedule.html new file mode 100644 index 0000000..4f1440a --- /dev/null +++ b/reference/fsharp-control-reactive-schedule.html @@ -0,0 +1,894 @@ + + + + + Schedule - FSharp.Control.Reactive + + + + + + + + + + + + + + + +
    + +
    +
    +
    + + + + +

    Schedule

    +

    + Namespace: FSharp.Control.Reactive
    +

    +
    +

    The Reactive module provides operators for working with IScheduler<_> in F#.

    + +
    + + + +

    Functions and values

    +
    Type extensionDescription
    - - windowCountSkip count skip source + + Create(onNext) -
    - Signature: count:int -> skip:int -> source:IObservable<'Source> -> IObservable<IObservable<'Source>>
    - Type parameters: 'Source
    +
    + Signature: (onNext:('?8165 -> unit)) -> IObserver<'?8165>
    + Type parameters: '?8165
    - + -

    Projects each element of an observable sequence into zero or more windows which are produced based on element count information

    +

    Creates an observer from the specified onNext function.

    + +

    CompiledName: Observer.Create.Static

    - - windowOpenClose (...) + + Create(onNext, onError) -
    - Signature: windowOpenings:IObservable<'WinOpen> -> windowClosingSelector:('WinOpen -> IObservable<'WinClose>) -> source:IObservable<'Source> -> IObservable<IObservable<'Source>>
    - Type parameters: 'WinOpen, 'WinClose, 'Source
    +
    + Signature: (onNext:('?8167 -> unit) * onError:(exn -> unit)) -> IObserver<'?8167>
    + Type parameters: '?8167
    - + -

    Projects each element of an observable sequence into zero or more windows. -windowOpenings - Observable sequence whose elements denote the creation of new windows. -windowClosingSelector - A function invoked to define the closing of each produced window.

    +

    Creates an observer from the specified onNext and onError functions.

    + +

    CompiledName: Observer.Create.Static

    - - windowTimeCount timeSpan count source + + Create(onNext, onCompleted) -
    - Signature: timeSpan:TimeSpan -> count:int -> source:IObservable<'Source> -> IObservable<IObservable<'Source>>
    - Type parameters: 'Source
    +
    + Signature: (onNext:('?8169 -> unit) * onCompleted:(unit -> unit)) -> IObserver<'?8169>
    + Type parameters: '?8169
    - + -

    Projects each element of an observable sequence into a window that is completed when either it's full or -a given amount of time has elapsed. -A useful real-world analogy of this overload is the behavior of a ferry leaving the dock when all seats are -taken, or at the scheduled time of departure, whichever event occurs first

    +

    Creates an observer from the specified onNext and onCompleted functions.

    + +

    CompiledName: Observer.Create.Static

    - - windowTimeShift (...) + + Create(onNext, onError, onCompleted) -
    - Signature: timeSpan:TimeSpan -> timeShift:TimeSpan -> source:IObservable<'Source> -> IObservable<IObservable<'Source>>
    - Type parameters: 'Source
    +
    + Signature: (onNext:('?8171 -> unit) * onError:(exn -> unit) * onCompleted:(unit -> unit)) -> IObserver<'?8171>
    + Type parameters: '?8171
    - + -

    Projects each element of an observable sequence into consecutive non-overlapping windows. -windowBoundaries - Sequence of window boundary markers. The current window is closed and a new window is opened upon receiving a boundary marker.

    +

    Creates an observer from the specified onNext, onError, and onCompleted functions.

    + +

    CompiledName: Observer.Create.Static

    - - windowTimeSpan timeSpan source + + Create(subscribe) -
    - Signature: timeSpan:TimeSpan -> source:IObservable<'Source> -> IObservable<IObservable<'Source>>
    - Type parameters: 'Source
    +
    + Signature: (subscribe:(IObserver<'T> -> unit -> unit)) -> IObservable<'T>
    + Type parameters: 'T
    - + -

    Projects each element of an observable sequence into consecutive non-overlapping windows -which are produced based on timing information.

    +

    Creates an observable sequence from the specified Subscribe method implementation.

    + +

    CompiledName: Observable.Create.Static

    - - zip first second resultSelector + + Create(subscribe) -
    - Signature: first:IObservable<'Source1> -> second:IObservable<'Source2> -> resultSelector:('Source1 -> 'Source2 -> 'Result) -> IObservable<'Result>
    - Type parameters: 'Source1, 'Source2, 'Result
    +
    + Signature: (subscribe:(IObserver<'?8175> -> IDisposable)) -> IObservable<'?8175>
    + Type parameters: '?8175
    - + -

    Merges two observable sequences into one observable sequence by combining their elements in a pairwise fashion.

    +

    Creates an observable sequence from the specified Subscribe method implementation.

    + +

    CompiledName: Observable.Create.Static

    - - zipArray sources + + Subscribe(onNext) -
    - Signature: sources:IObservable<'Source> [] -> IObservable<IList<'Source>>
    - Type parameters: 'Source
    +
    + Signature: (onNext:('T -> unit)) -> IDisposable
    +
    - + -

    Merges the specified observable sequences into one observable sequence by emitting -a list with the elements of the observable sequences at corresponding indexe

    +

    Subscribes to the Observable with just a next-function.

    + +

    CompiledName: IObservable`1.Subscribe

    - - zipSeq sources + + Subscribe(onNext, onError) -
    - Signature: sources:seq<IObservable<'Source>> -> IObservable<IList<'Source>>
    - Type parameters: 'Source
    +
    + Signature: (onNext:('T -> unit) * onError:(exn -> unit)) -> IDisposable
    +
    - + -

    Merges the specified observable sequences into one observable sequence by emitting a - list with the elements of the observable sequences at corresponding indexes.

    +

    Subscribes to the Observable with a next and an error-function.

    + +

    CompiledName: IObservable`1.Subscribe

    - - zipSeqMap resultSelector sources + + Subscribe(onNext, onCompleted) -
    - Signature: resultSelector:(IList<'S> -> 'R) -> sources:seq<IObservable<'S>> -> IObservable<'R>
    - Type parameters: 'S, 'R
    +
    + Signature: (onNext:('T -> unit) * onCompleted:(unit -> unit)) -> IDisposable
    +
    - + -

    Merges the specified observable sequences into one observable sequence by using -the selector function whenever all of the observable sequences have produced an -element at a corresponding index.

    +

    Subscribes to the Observable with a next and a completion callback.

    + +

    CompiledName: IObservable`1.Subscribe

    - - zipWithSeq resultSelector second first + + Subscribe(onNext, onError, onCompleted) -
    - Signature: resultSelector:('Source1 -> 'Source2 -> 'Result) -> second:seq<'Source2> -> first:IObservable<'Source1> -> IObservable<'Result>
    - Type parameters: 'Source1, 'Source2, 'Result
    +
    + Signature: (onNext:('T -> unit) * onError:(exn -> unit) * onCompleted:(unit -> unit)) -> IDisposable
    +
    - + -

    Merges an observable sequence and an enumerable sequence into one -observable sequence by using the selector function.

    +

    Subscribes to the Observable with all 3 callbacks.

    + +

    CompiledName: IObservable`1.Subscribe

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Function or valueDescription
    + + + action f sch + +
    + Signature: f:(unit -> unit) -> sch:IScheduler -> IDisposable
    +
    +
    + + + + +

    Schedules an function to be executed.

    + + +
    + + + actionAccOffsetRec state dueTime ff sch + +
    + Signature: state:'state -> dueTime:DateTimeOffset -> ff:('state -> ('state -> DateTimeOffset -> unit) -> unit) -> sch:IScheduler -> IDisposable
    + Type parameters: 'state
    +
    + + + + +

    Schedules an function to be executed recursively at a specified absolute due time.

    + + +
    + + + actionAccRec state ff sch + +
    + Signature: state:'state -> ff:('state -> ('state -> unit) -> unit) -> sch:IScheduler -> IDisposable
    + Type parameters: 'state
    +
    + + + + +

    Schedules an function to be executed recursively.

    + + +
    + + + actionAccSpanRec state dueTime ff sch + +
    + Signature: state:'state -> dueTime:TimeSpan -> ff:('state -> ('state -> TimeSpan -> unit) -> unit) -> sch:IScheduler -> IDisposable
    + Type parameters: 'state
    +
    + + + + +

    Schedules an function to be executed recursively after a specified relative due time.

    + + +
    + + + actionLong f sch + +
    + Signature: f:(ICancelable -> unit) -> sch:ISchedulerLongRunning -> IDisposable
    +
    +
    + + + + +

    Schedules an function to be executed.

    + + +
    + + + actionLongState state f sch + +
    + Signature: state:'?7922 -> f:('?7922 -> ICancelable -> '?7923) -> sch:ISchedulerLongRunning -> IDisposable
    + Type parameters: '?7922, '?7923
    +
    + + + + +

    Schedules a long-running piece of work.

    + + +
    + + + actionOffset offset f sch + +
    + Signature: offset:DateTimeOffset -> f:(unit -> unit) -> sch:IScheduler -> IDisposable
    +
    +
    + + + + +

    Schedules an function to be executed at a specified absolute time.

    + + +
    + + + actionOffsetRec dueTime ff sch + +
    + Signature: dueTime:DateTimeOffset -> ff:((unit -> unit) -> unit) -> sch:IScheduler -> IDisposable
    +
    +
    + + + + +

    Schedules an function to be executed recursively at a specified absolute due time.

    + + +
    + + + actionRec ff sch + +
    + Signature: ff:((unit -> unit) -> unit) -> sch:IScheduler -> IDisposable
    +
    +
    + + + + +

    Schedules an function to be executed recursively.

    + + +
    + + + actionSpanRec time ff sch + +
    + Signature: time:TimeSpan -> ff:(TimeSpan -> (TimeSpan -> unit) -> unit) -> sch:IScheduler -> IDisposable
    +
    +
    + + + + +

    Schedules an function to be executed recursively.

    + + +
    + + + asAsync cta + +
    + Signature: cta:SchedulerOperation -> Async<unit>
    +
    +
    + + + + + +
    + + + asTask ct async + +
    + Signature: ct:CancellationToken -> async:Async<'T> -> Task<'T>
    + Type parameters: 'T
    +
    + + + + + +
    + + + async f sch + +
    + Signature: f:(IScheduler -> CancellationToken -> Async<'?7958>) -> sch:IScheduler -> IDisposable
    + Type parameters: '?7958
    +
    + + + + +

    Schedules the work using an asynchonous function, allowing for cooperative scheduling in a imperative coding style.

    + + +
    + + + asyncAccOffsetResult state dueTime f sch + +
    + Signature: state:'state -> dueTime:DateTimeOffset -> f:(IScheduler -> 'state -> CancellationToken -> Async<IDisposable>) -> sch:IScheduler -> IDisposable
    + Type parameters: 'state
    +
    + + + + +

    Schedules the work using an asynchonous function, allowing for cooperative scheduling in a imperative coding style.

    + + +
    + + + asyncAccOffsetUnit state dueTime f sch + +
    + Signature: state:'state -> dueTime:DateTimeOffset -> f:(IScheduler -> 'state -> CancellationToken -> Async<'?7978>) -> sch:IScheduler -> IDisposable
    + Type parameters: 'state, '?7978
    +
    + + + + +

    Schedules the work using an asynchonous function, allowing for cooperative scheduling in a imperative coding style.

    + + +
    + + + asyncAccResult state f sch + +
    + Signature: state:'state -> f:(IScheduler -> 'state -> CancellationToken -> Async<IDisposable>) -> sch:IScheduler -> IDisposable
    + Type parameters: 'state
    +
    + + + + +

    Schedules the work using an asynchonous function, allowing for cooperative scheduling in a imperative coding style.

    + + +
    + + + asyncAccSpanResult state dueTime f sch + +
    + Signature: state:'state -> dueTime:TimeSpan -> f:(IScheduler -> 'state -> CancellationToken -> Async<IDisposable>) -> sch:IScheduler -> IDisposable
    + Type parameters: 'state
    +
    + + + + +

    Schedules the work using an asynchonous function, allowing for cooperative scheduling in a imperative coding style.

    + + +
    + + + asyncAccSpanUnit state dueTime f sch + +
    + Signature: state:'state -> dueTime:TimeSpan -> f:(IScheduler -> 'state -> CancellationToken -> Async<'?7973>) -> sch:IScheduler -> IDisposable
    + Type parameters: 'state, '?7973
    +
    + + + + +

    Schedules the work using an asynchonous function, allowing for cooperative scheduling in a imperative coding style.

    + + +
    + + + asyncAccUnit state f sch + +
    + Signature: state:'state -> f:(IScheduler -> 'state -> CancellationToken -> Async<'?7962>) -> sch:IScheduler -> IDisposable
    + Type parameters: 'state, '?7962
    +
    + + + + +

    Schedules the work using an asynchonous function, allowing for cooperative scheduling in a imperative coding style.

    + + +
    + + + asyncOffsetResult dueTime f sch + +
    + Signature: dueTime:DateTimeOffset -> f:(IScheduler -> CancellationToken -> Async<IDisposable>) -> sch:IScheduler -> IDisposable
    +
    +
    + + + + +

    Schedules the work using an asynchonous function, allowing for cooperative scheduling in a imperative coding style.

    + + +
    + + + asyncOffsetUnit dueTime f sch + +
    + Signature: dueTime:DateTimeOffset -> f:(IScheduler -> CancellationToken -> Async<'?7969>) -> sch:IScheduler -> IDisposable
    + Type parameters: '?7969
    +
    + + + + +

    Schedules the work using an asynchonous function, allowing for cooperative scheduling in a imperative coding style.

    + + +
    + + + asyncResult f sch + +
    + Signature: f:(IScheduler -> CancellationToken -> Async<IDisposable>) -> sch:IScheduler -> IDisposable
    +
    +
    + + + + +

    Schedules the work using an asynchonous function, allowing for cooperative scheduling in a imperative coding style.

    + + +
    + + + asyncSpanResult dueTime f sch + +
    + Signature: dueTime:TimeSpan -> f:(IScheduler -> CancellationToken -> Async<IDisposable>) -> sch:IScheduler -> IDisposable
    +
    +
    + + + + +

    Schedules the work using an asynchonous function, allowing for cooperative scheduling in a imperative coding style.

    + + +
    + + + asyncSpanUnit dueTime f sch + +
    + Signature: dueTime:TimeSpan -> f:(IScheduler -> CancellationToken -> Async<'?7966>) -> sch:IScheduler -> IDisposable
    + Type parameters: '?7966
    +
    + + + + +

    Schedules the work using an asynchonous function, allowing for cooperative scheduling in a imperative coding style.

    + + +
    + + + catch f sch + +
    + Signature: f:('?7947 -> bool) -> sch:IScheduler -> IScheduler
    + Type parameters: '?7947
    +
    + + + + +

    Returns a scheduler that wraps the original scheduler, adding exception handling for scheduled actions.

    + + +
    + + + disableOptimizations arg00 + +
    + Signature: arg00:IScheduler -> IScheduler
    +
    +
    + + + + +

    Returns a scheduler that represents the original scheduler, without any of its interface-based optimizations (e.g. long running scheduling).

    + + +
    + + + disableOptimizationsTypes (...) + +
    + Signature: optimizationInterfaces:Type list -> sch:IScheduler -> IScheduler
    +
    +
    + + + + +

    Returns a scheduler that represents the original scheduler, without any of its interface-based optimizations (e.g. long running scheduling).

    + + +
    + + + func state f sch + +
    + Signature: state:'?7925 -> f:(IScheduler -> '?7925 -> IDisposable) -> sch:IScheduler -> IDisposable
    + Type parameters: '?7925
    +
    + + + + +

    Schedules a function to be executed.

    + + +
    + + + funcOffset state dueTime f sch + +
    + Signature: state:'?7929 -> dueTime:DateTimeOffset -> f:(IScheduler -> '?7929 -> IDisposable) -> sch:IScheduler -> IDisposable
    + Type parameters: '?7929
    +
    + + + + +

    Schedules a function to be executed at dueTime.

    + + +
    + + + funcSpan state dueTime f sch + +
    + Signature: state:'?7927 -> dueTime:TimeSpan -> f:(IScheduler -> '?7927 -> IDisposable) -> sch:IScheduler -> IDisposable
    + Type parameters: '?7927
    +
    + + + + +

    Schedules a function to be executed after dueTime.

    + + +
    + + + multiple fs sch + +
    + Signature: fs:(IScheduler -> IDisposable) list -> sch:IScheduler -> IDisposable
    +
    +
    + + + + +

    Schedule multiple 'schedule' operations together

    + + +
    + + + periodicAcc state period f sch + +
    + Signature: state:'?7940 -> period:TimeSpan -> f:('?7940 -> '?7940) -> sch:IScheduler -> IDisposable
    + Type parameters: '?7940
    +
    + + + + +

    Schedules a periodic piece of work by dynamically discovering the scheduler's capabilities. +If the scheduler supports periodic scheduling, the request will be forwarded to the periodic scheduling implementation. +If the scheduler provides stopwatch functionality, the periodic task will be emulated using recursive scheduling with a stopwatch to correct for time slippage. +Otherwise, the periodic task will be emulated using recursive scheduling.

    + + +
    + + + periodicAccAction state period f sch + +
    + Signature: state:'?7942 -> period:TimeSpan -> f:('?7942 -> unit) -> sch:IScheduler -> IDisposable
    + Type parameters: '?7942
    +
    + + + + +

    Schedules a periodic piece of work by dynamically discovering the scheduler's capabilities. +If the scheduler supports periodic scheduling, the request will be forwarded to the periodic scheduling implementation. +If the scheduler provides stopwatch functionality, the periodic task will be emulated using recursive scheduling with a stopwatch to correct for time slippage. +Otherwise, the periodic task will be emulated using recursive scheduling.

    + + +
    + + + periodicAction period f sch + +
    + Signature: period:TimeSpan -> f:(unit -> unit) -> sch:IScheduler -> IDisposable
    +
    +
    + + + + +

    Schedules a periodic piece of work by dynamically discovering the scheduler's capabilities. +If the scheduler supports periodic scheduling, the request will be forwarded to the periodic scheduling implementation. +If the scheduler provides stopwatch functionality, the periodic task will be emulated using recursive scheduling with a stopwatch to correct for time slippage. +Otherwise, the periodic task will be emulated using recursive scheduling.

    + + +
    + + + sleep dueTime sch + +
    + Signature: dueTime:TimeSpan -> sch:IScheduler -> Async<unit>
    +
    +
    + + + + +

    Suspends execution of the current work item on the scheduler for the specified duration. +The caller should await the result of calling 'sleep' to schedule the remainder of the current work item (known as the continuation) after the specified duration.

    + + +
    + + + sleepCancel dueTime ct sch + +
    + Signature: dueTime:TimeSpan -> ct:CancellationToken -> sch:IScheduler -> Async<unit>
    +
    +
    + + + + +

    Suspends execution of the current work item on the scheduler for the specified duration. +The caller should await the result of calling 'sleep' to schedule the remainder of the current work item (known as the continuation) after the specified duration.

    + + +
    + + + sleepOffset dueTime sch + +
    + Signature: dueTime:DateTimeOffset -> sch:IScheduler -> Async<unit>
    +
    +
    + + + + +

    Suspends execution of the current work item on the scheduler for the specified duration. +The caller should await the result of calling 'sleep' to schedule the remainder of the current work item (known as the continuation) after the specified due time.

    + + +
    + + + sleepOffsetCancel dueTime ct sch + +
    + Signature: dueTime:DateTimeOffset -> ct:CancellationToken -> sch:IScheduler -> Async<unit>
    +
    +
    + + + + +

    Suspends execution of the current work item on the scheduler for the specified duration. +The caller should await the result of calling 'sleep' to schedule the remainder of the current work item (known as the continuation) after the specified due time.

    + + +
    + + + yield_ x + +
    + Signature: x:IScheduler -> Async<unit>
    +
    +
    + + + + +

    Yields execution of the current work item on the scheduler to another work item on the scheduler. +The caller should await the result of calling 'yield' to schedule the remainder of the current work item (known as the continuation).

    + + +
    + + + yieldCancel ct sch + +
    + Signature: ct:CancellationToken -> sch:IScheduler -> Async<unit>
    +
    +
    + + + + +

    Yields execution of the current work item on the scheduler to another work item on the scheduler. +The caller should await the result of calling 'yield' to schedule the remainder of the current work item (known as the continuation).

    + + +
    + +
    + +
    +
    +
    + +

    Introduction to Observables

    +

    Prerequisits

    +

    This page contains some basic examples of how to use Observable's. +This is by no means a complete stable example and should only be used for demonstration purposes.

    +

    Subscribing on Observable

    +

    The following example show how the Enabling/Disabling of a button can be controled by looking at the input of another input field (TextBox).

    +

    Enable Disable Button

    + + + +
     1: 
    + 2: 
    + 3: 
    + 4: 
    + 5: 
    + 6: 
    + 7: 
    + 8: 
    + 9: 
    +10: 
    +11: 
    +12: 
    +13: 
    +14: 
    +15: 
    +16: 
    +17: 
    +18: 
    +19: 
    +
    open System
    +open FSharp.Control.Reactive
    +open System.Windows.Forms
    +
    +
    +let buttonForm = new Form ()
    +let btn = new Button()
    +let txb = new TextBox()
    +
    +txb.TextChanged
    +|> Observable.startWith [EventArgs.Empty]
    +|> Observable.subscribe (fun _ -> btn.Enabled <- not (String.IsNullOrEmpty txb.Text))
    +
    +btn.Text <- "OK"
    +btn.Top <- 20
    +
    +buttonForm.Controls.Add txb
    +buttonForm.Controls.Add btn
    +buttonForm.Show ()
    +
    +

    Transforming Observable

    +

    Incoming emits can be transformed using the mapping functionality. +Following example show how the input of a textbox can be transformed into the reversed value.

    +

    Reversed

    + + + +
     1: 
    + 2: 
    + 3: 
    + 4: 
    + 5: 
    + 6: 
    + 7: 
    + 8: 
    + 9: 
    +10: 
    +11: 
    +12: 
    +13: 
    +14: 
    +15: 
    +
    module String = 
    +    let rev (s : string) = new String (s.ToCharArray () |> Array.rev)
    +
    +let input = new TextBox()
    +let reversed = new Label()
    +
    +input.TextChanged
    +|> Observable.map (fun _ -> input.Text |> String.rev)
    +|> Observable.subscribe (fun x -> reversed.Text <- x)
    +
    +reversed.Top <- 20
    +let reverseForm = new Form ()
    +reverseForm.Controls.Add input
    +reverseForm.Controls.Add reversed
    +reverseForm.Show ()
    +
    +

    Merging Two emits into one

    +

    Merging multiple events into one can be done with the Observable.merge primitive. +Following example shows how we change the value of a label with the buttons ("Red" and "Green").

    +

    Red-Green

    + + + +
     1: 
    + 2: 
    + 3: 
    + 4: 
    + 5: 
    + 6: 
    + 7: 
    + 8: 
    + 9: 
    +10: 
    +11: 
    +12: 
    +13: 
    +14: 
    +15: 
    +16: 
    +17: 
    +18: 
    +19: 
    +
    let redBtn = new Button()
    +let greenBtn = new Button()
    +let result = new Label()
    +
    +let red = redBtn.Click |> Observable.mapTo "Red"
    +let green = greenBtn.Click |> Observable.mapTo "Green"
    +
    +Observable.merge red green
    +|> Observable.subscribe (fun x -> result.Text <- x)
    +
    +redBtn.Text <- "Red"
    +greenBtn.Text <- "Green"
    +greenBtn.Top <- 20
    +result.Left <- 100
    +let colorForm = new Form ()
    +colorForm.Controls.Add redBtn
    +colorForm.Controls.Add greenBtn
    +colorForm.Controls.Add result
    +colorForm.Show ()
    +
    + +
    namespace System
    +
    Multiple items
    namespace FSharp

    --------------------
    namespace Microsoft.FSharp
    +
    Multiple items
    namespace FSharp.Control

    --------------------
    namespace Microsoft.FSharp.Control
    +
    namespace FSharp.Control.Reactive
    +
    namespace System.Windows
    +
    namespace System.Windows.Forms
    +
    val buttonForm : Form
    +
    Multiple items
    type Form =
      inherit ContainerControl
      new : unit -> Form
      member AcceptButton : IButtonControl with get, set
      member Activate : unit -> unit
      member ActiveMdiChild : Form
      member AddOwnedForm : ownedForm:Form -> unit
      member AllowTransparency : bool with get, set
      member AutoScale : bool with get, set
      member AutoScaleBaseSize : Size with get, set
      member AutoScroll : bool with get, set
      member AutoSize : bool with get, set
      ...
      nested type ControlCollection

    --------------------
    Form() : Form
    +
    val btn : Button
    +
    Multiple items
    type Button =
      inherit ButtonBase
      new : unit -> Button
      member AutoSizeMode : AutoSizeMode with get, set
      member DialogResult : DialogResult with get, set
      member NotifyDefault : value:bool -> unit
      member PerformClick : unit -> unit
      member ToString : unit -> string
      event DoubleClick : EventHandler
      event MouseDoubleClick : MouseEventHandler

    --------------------
    Button() : Button
    +
    val txb : TextBox
    +
    Multiple items
    type TextBox =
      inherit TextBoxBase
      new : unit -> TextBox
      member AcceptsReturn : bool with get, set
      member AutoCompleteCustomSource : AutoCompleteStringCollection with get, set
      member AutoCompleteMode : AutoCompleteMode with get, set
      member AutoCompleteSource : AutoCompleteSource with get, set
      member CharacterCasing : CharacterCasing with get, set
      member Multiline : bool with get, set
      member PasswordChar : char with get, set
      member Paste : text:string -> unit
      member ScrollBars : ScrollBars with get, set
      ...

    --------------------
    TextBox() : TextBox
    +
    event Control.TextChanged: IEvent<EventHandler,EventArgs>
    +
    Multiple items
    module Observable

    from FSharp.Control.Reactive

    --------------------
    module Observable

    from Microsoft.FSharp.Control
    +
    val startWith : values:#seq<'T> -> source:IObservable<'T> -> IObservable<'T>
    +
    Multiple items
    type EventArgs =
      new : unit -> EventArgs
      static val Empty : EventArgs

    --------------------
    EventArgs() : EventArgs
    +
    field EventArgs.Empty: EventArgs
    +
    Multiple items
    val subscribe : onNext:('T -> unit) -> observable:IObservable<'T> -> IDisposable

    --------------------
    val subscribe : callback:('T -> unit) -> source:IObservable<'T> -> IDisposable
    +
    property Control.Enabled: bool
    +
    val not : value:bool -> bool
    +
    Multiple items
    type String =
      new : value:char -> string + 7 overloads
      member Chars : int -> char
      member Clone : unit -> obj
      member CompareTo : value:obj -> int + 1 overload
      member Contains : value:string -> bool
      member CopyTo : sourceIndex:int * destination:char[] * destinationIndex:int * count:int -> unit
      member EndsWith : value:string -> bool + 2 overloads
      member Equals : obj:obj -> bool + 2 overloads
      member GetEnumerator : unit -> CharEnumerator
      member GetHashCode : unit -> int
      ...

    --------------------
    String(value: nativeptr<char>) : String
    String(value: nativeptr<sbyte>) : String
    String(value: char []) : String
    String(c: char, count: int) : String
    String(value: nativeptr<char>, startIndex: int, length: int) : String
    String(value: nativeptr<sbyte>, startIndex: int, length: int) : String
    String(value: char [], startIndex: int, length: int) : String
    String(value: nativeptr<sbyte>, startIndex: int, length: int, enc: Text.Encoding) : String
    +
    String.IsNullOrEmpty(value: string) : bool
    +
    property TextBox.Text: string
    +
    property ButtonBase.Text: string
    +
    property Control.Top: int
    +
    property Control.Controls: Control.ControlCollection
    +
    Control.ControlCollection.Add(value: Control) : unit
    +
    Control.Show() : unit
    Form.Show(owner: IWin32Window) : unit
    +
    val rev : s:string -> String
    +
    val s : string
    +
    Multiple items
    val string : value:'T -> string

    --------------------
    type string = String
    +
    String.ToCharArray() : char []
    String.ToCharArray(startIndex: int, length: int) : char []
    +
    type Array =
      member Clone : unit -> obj
      member CopyTo : array:Array * index:int -> unit + 1 overload
      member GetEnumerator : unit -> IEnumerator
      member GetLength : dimension:int -> int
      member GetLongLength : dimension:int -> int64
      member GetLowerBound : dimension:int -> int
      member GetUpperBound : dimension:int -> int
      member GetValue : [<ParamArray>] indices:int[] -> obj + 7 overloads
      member Initialize : unit -> unit
      member IsFixedSize : bool
      ...
    +
    val rev : array:'T [] -> 'T []
    +
    val input : TextBox
    +
    val reversed : Label
    +
    Multiple items
    type Label =
      inherit Control
      new : unit -> Label
      member AutoEllipsis : bool with get, set
      member AutoSize : bool with get, set
      member BackgroundImage : Image with get, set
      member BackgroundImageLayout : ImageLayout with get, set
      member BorderStyle : BorderStyle with get, set
      member FlatStyle : FlatStyle with get, set
      member GetPreferredSize : proposedSize:Size -> Size
      member Image : Image with get, set
      member ImageAlign : ContentAlignment with get, set
      ...

    --------------------
    Label() : Label
    +
    Multiple items
    val map : f:('a -> 'b) -> source:IObservable<'a> -> IObservable<'b>

    --------------------
    val map : mapping:('T -> 'U) -> source:IObservable<'T> -> IObservable<'U>
    +
    val x : String
    +
    property Label.Text: string
    +
    val reverseForm : Form
    +
    val redBtn : Button
    +
    val greenBtn : Button
    +
    val result : Label
    +
    val red : IObservable<string>
    +
    event Control.Click: IEvent<EventHandler,EventArgs>
    +
    val mapTo : x:'a -> source:IObservable<'T> -> IObservable<'a>
    +
    val green : IObservable<string>
    +
    Multiple items
    val merge : second:IObservable<'T> -> first:IObservable<'T> -> IObservable<'T>

    --------------------
    val merge : source1:IObservable<'T> -> source2:IObservable<'T> -> IObservable<'T>
    +
    val x : string
    +
    property Control.Left: int
    +
    val colorForm : Form
    + +
    +
    + F# Project + +
    +
    +
    +
    + F# Project + +
    +
    +

    + Fork me on GitHub + + + diff --git a/reference/fsharp-control-reactive-scheduler-scheduler.html b/reference/fsharp-control-reactive-scheduler-scheduler.html new file mode 100644 index 0000000..fc0d8c4 --- /dev/null +++ b/reference/fsharp-control-reactive-scheduler-scheduler.html @@ -0,0 +1,149 @@ + + + + + Scheduler - FSharp.Control.Reactive + + + + + + + + + + + + + + + +
    + +
    +
    +
    + + + + +

    Scheduler

    +

    + + Namespace: FSharp.Control.Reactive
    + Parent Module: Scheduler
    +

    +
    +
    +

    Constructors

    + + + + + + + + + + +
    ConstructorDescription
    + + + new() + +
    + Signature: unit -> Scheduler
    +
    +
    + + + + + +

    CompiledName: .ctor

    +
    +

    Static members

    + + + + + + + + + + + + + + +
    Static memberDescription
    + + + EventLoop + +
    + Signature: EventLoopScheduler
    +
    +
    + + + + +

    Creates an object that schedules units of work on a designated thread.

    + + +

    CompiledName: get_EventLoop

    +
    + + + Historical + +
    + Signature: HistoricalScheduler
    +
    +
    + + + + +

    Creates a historical scheduler with a minimum value of DateTimeOffset as initial clock.

    + + +

    CompiledName: get_Historical

    +
    + +
    +
    + F# Project + +
    +
    +
    + Fork me on GitHub + + + diff --git a/reference/fsharp-control-reactive-scheduler.html b/reference/fsharp-control-reactive-scheduler.html new file mode 100644 index 0000000..8186638 --- /dev/null +++ b/reference/fsharp-control-reactive-scheduler.html @@ -0,0 +1,120 @@ + + + + + Scheduler - FSharp.Control.Reactive + + + + + + + + + + + + + + + +
    + +
    +
    +
    + + + + +

    Scheduler

    +

    + Namespace: FSharp.Control.Reactive
    +

    +
    +
    + + +

    Nested types and modules

    +
    + + + + + + + + + + +
    TypeDescription
    + Scheduler + + +
    + +
    + +

    Functions and values

    + + + + + + + + + + +
    Function or valueDescription
    + + + asLongRunning sch + +
    + Signature: sch:IScheduler -> ISchedulerLongRunning option
    +
    +
    + + + + +

    Returns the 'ISchedulerLongRunning' implementation of the specified scheduler, or 'None' if no such implementation is available.

    + + +
    + +
    +
    + F# Project + +
    +
    +
    + Fork me on GitHub + + + diff --git a/reference/fsharp-control-reactive-subject-1.html b/reference/fsharp-control-reactive-subject-1.html new file mode 100644 index 0000000..f38027e --- /dev/null +++ b/reference/fsharp-control-reactive-subject-1.html @@ -0,0 +1,166 @@ + + + + + Subject<'a> - FSharp.Control.Reactive + + + + + + + + + + + + + + + +
    + +
    +
    +
    + + + + +

    Subject<'a>

    +

    + + Namespace: FSharp.Control.Reactive
    +

    +
    +
    +

    Static members

    + + + + + + + + + + + + + + + + + + + + + + +
    Static memberDescription
    + + + async + +
    + Signature: AsyncSubject<'a>
    +
    +
    + + + + +

    Represents the result of an asynchronous operation. +The last value before the OnCompleted notification, or the error received through OnError, is sent to all subscribed observers.

    + + +

    CompiledName: get_async

    +
    + + + behavior(x) + +
    + Signature: x:'a -> BehaviorSubject<'a>
    +
    +
    + + + + +

    Represents a value that changes over time. +Observers can subscribe to the subject to receive the last (or initial) value and all subsequent notifications.

    + + +
    + + + broadcast + +
    + Signature: Subject<'a>
    +
    +
    + + + + +

    Represents and object that is both an observable sequence as well as an observer. +Each notification is broadcasted to all subscribed observers.

    + + +

    CompiledName: get_broadcast

    +
    + + + replay + +
    + Signature: ReplaySubject<'a>
    +
    +
    + + + + +

    Represents an object that is both an observable sequence as well as an observer. +Each notification is broadcasted to all subscribed and future observers, subject to buffer trimming policies.

    + + +

    CompiledName: get_replay

    +
    + +
    +
    + F# Project + +
    +
    +
    + Fork me on GitHub + + + diff --git a/reference/fsharp-control-reactive-subjectmodule.html b/reference/fsharp-control-reactive-subjectmodule.html new file mode 100644 index 0000000..77826de --- /dev/null +++ b/reference/fsharp-control-reactive-subjectmodule.html @@ -0,0 +1,168 @@ + + + + + Subject - FSharp.Control.Reactive + + + + + + + + + + + + + + + +
    + +
    +
    +
    + + + + +

    Subject

    +

    + Namespace: FSharp.Control.Reactive
    + + Attributes:
    +[<CompilationRepresentation(4)>]
    + +
    +

    +
    +

    The Reactive module provides operators working with Subjects in F#.

    + +
    + + + +

    Functions and values

    + + + + + + + + + + + + + + + + + + + + + + +
    Function or valueDescription
    + + + onCompleted s + +
    + Signature: s:SubjectBase<'a> -> SubjectBase<'a>
    + Type parameters: 'a
    +
    + + + + +

    Notifies all subscribed observers about the end of the sequence.

    + + +
    + + + onError ex s + +
    + Signature: ex:exn -> s:SubjectBase<'a> -> SubjectBase<'a>
    + Type parameters: 'a
    +
    + + + + +

    Notifies all subscribed observers about the specified exception.

    + + +
    + + + onNext x s + +
    + Signature: x:'a -> s:SubjectBase<'a> -> SubjectBase<'a>
    + Type parameters: 'a
    +
    + + + + +

    Notifies all subscribed observers about the arrival of the specified element in the sequence.

    + + +
    + + + onNexts xs s + +
    + Signature: xs:seq<'?7904> -> s:'?7905 -> '?7905
    + Type parameters: '?7904, '?7905
    +
    + + + + +

    Notifies all subscribed observers about the arrival of the specified elements in the sequence.

    + + +
    + +
    +
    + F# Project + +
    +
    +
    + Fork me on GitHub + + + diff --git a/reference/fsharp-control-reactive-testing-gentestnotification.html b/reference/fsharp-control-reactive-testing-gentestnotification.html new file mode 100644 index 0000000..2d12563 --- /dev/null +++ b/reference/fsharp-control-reactive-testing-gentestnotification.html @@ -0,0 +1,97 @@ + + + + + GenTestNotification - FSharp.Control.Reactive + + + + + + + + + + + + + + + +
    + +
    +
    +
    + + + + +

    GenTestNotification

    +

    + + Namespace: FSharp.Control.Reactive.Testing
    +

    +
    +
    +

    Static members

    + + + + + + + + + + +
    Static memberDescription
    + + + GenNotifications() + +
    + Signature: unit -> Arbitrary<TestNotifications<'a>>
    + Type parameters: 'a
    +
    + + + + + +
    + +
    +
    + F# Project + +
    +
    +
    + Fork me on GitHub + + + diff --git a/reference/fsharp-control-reactive-testing-testnotification-1.html b/reference/fsharp-control-reactive-testing-testnotification-1.html new file mode 100644 index 0000000..8d63dc1 --- /dev/null +++ b/reference/fsharp-control-reactive-testing-testnotification-1.html @@ -0,0 +1,109 @@ + + + + + TestNotification<'a> - FSharp.Control.Reactive + + + + + + + + + + + + + + + +
    + +
    +
    +
    + + + + +

    TestNotification<'a>

    +

    + + Namespace: FSharp.Control.Reactive.Testing
    +

    +
    +

    Represents a recorded notification list to an observer.

    + +
    +

    Instance members

    + + + + + + + + + + + + + + +
    Instance memberDescription
    + + + Time + +
    + Signature: int64
    +
    +
    + +
    + + + Value + +
    + Signature: Notification<'a>
    +
    +
    + +
    + +
    +
    + F# Project + +
    +
    +
    + Fork me on GitHub + + + diff --git a/reference/fsharp-control-reactive-testing-testnotificationmodule.html b/reference/fsharp-control-reactive-testing-testnotificationmodule.html new file mode 100644 index 0000000..478781d --- /dev/null +++ b/reference/fsharp-control-reactive-testing-testnotificationmodule.html @@ -0,0 +1,437 @@ + + + + + TestNotification - FSharp.Control.Reactive + + + + + + + + + + + + + + + +
    + +
    +
    +
    + + + + +

    TestNotification

    +

    + Namespace: FSharp.Control.Reactive.Testing
    + + Attributes:
    +[<CompilationRepresentation(4)>]
    + +
    +

    +
    +

    The Reactive module provides operators for working with TestObserver<_> in F#.

    + +
    + + + +

    Functions and values

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Function or valueDescription
    + + + errors arg1 + +
    + Signature: TestNotifications<'b> -> exn list
    + Type parameters: 'b
    +
    + + + + +

    Filters the OnError recorded notifications of the specified list.

    + + +
    + + + filter f arg2 + +
    + Signature: f:(TestNotification<'?9014> -> bool) -> TestNotifications<'?9014> -> TestNotifications<'?9014>
    + Type parameters: '?9014
    +
    + + + + +

    Filters the incoming TestNotifications on a given predicate function.

    + + +
    + + + isError _arg1 + +
    + Signature: _arg1:TestNotification<'?9008> -> bool
    + Type parameters: '?9008
    +
    + + + + +

    Determines if the incoming TestNotification is an 'OnError()' notification.

    + + +
    + + + isNext _arg1 + +
    + Signature: _arg1:TestNotification<'?9006> -> bool
    + Type parameters: '?9006
    +
    + + + + +

    Determines if the incoming TestNotification is an 'OnNext()' notification.

    + + +
    + + + mapErrors f + +
    + Signature: f:(exn -> '?9033) -> TestNotifications<'?9034> -> '?9033 list
    + Type parameters: '?9033, '?9034
    +
    + + + + +

    Maps the OnError recorded notifications of the specified list to other values.

    + + +
    + + + mapNexts f + +
    + Signature: f:('?9028 -> '?9029) -> TestNotifications<'?9028> -> '?9029 list
    + Type parameters: '?9028, '?9029
    +
    + + + + +

    Maps the OnNext recorded notification values of the specified list to other values.

    + + +
    + + + nexts arg1 + +
    + Signature: TestNotifications<'b> -> 'b list
    + Type parameters: 'b
    +
    + + + + +

    Filters the OnNexts recorded notifiation values of the specified list.

    + + +
    + + + onCompleted t + +
    + Signature: t:int64 -> Recorded<Notification<'?9024>>
    + Type parameters: '?9024
    +
    + + + + +

    Factory function for an OnCompleted notification record at a given time.

    + + +
    + + + onError t ex + +
    + Signature: t:int64 -> ex:exn -> Recorded<Notification<'?9022>>
    + Type parameters: '?9022
    +
    + + + + +

    Factory function for an OnError notification record at a given time with a given error.

    + + +
    + + + onErrors ms + +
    + Signature: ms:TestNotifications<'?9018> -> TestNotifications<'?9018>
    + Type parameters: '?9018
    +
    + + + + +

    Filters the 'OnError()' recorded notifiations values of the specified list.

    + + +
    + + + onNext t x + +
    + Signature: t:int64 -> x:'a -> Recorded<Notification<'a>>
    + Type parameters: 'a
    +
    + + + + +

    Factory function for an OnNext notification record at a given time with a given value.

    + + +
    + + + onNexts ms + +
    + Signature: ms:TestNotifications<'?9016> -> TestNotifications<'?9016>
    + Type parameters: '?9016
    +
    + + + + +

    Filters the 'OnNext()' recorded notifiations of the specified list.

    + + +
    + + + toOption _arg1 + +
    + Signature: _arg1:TestNotification<'?9010> -> '?9010 option
    + Type parameters: '?9010
    +
    + + + + +

    Converts the incoming TestNotification to an Option with: +'OnNext()' notifications as Some and 'OnError()' and 'OnCompleted()' as None.

    + + +
    + + + toResult _arg1 + +
    + Signature: _arg1:TestNotification<'?9012> -> Result<'?9012,exn>
    + Type parameters: '?9012
    +
    + + + + +

    Converts the incoming TestNotification to an Result with: +'OnNext()' notifications as Some and 'OnError()' and 'OnCompleted()' as Error.

    + + +
    + + + unwrap arg1 + +
    + Signature: TestNotifications<'?9002> -> TestNotification<'?9002> list
    + Type parameters: '?9002
    +
    + + + + +

    Unwraps the 'TestNotifications' pattern into a 'TestNotification list'.

    + + +
    + + + wrap arg0 + +
    + Signature: arg0:TestNotification<'?9000> list -> TestNotifications<'?9000>
    + Type parameters: '?9000
    +
    + + + + + +
    +

    Active patterns

    + + + + + + + + + + +
    Active patternDescription
    + + + ( |Next|Error|Completed| ) x + +
    + Signature: x:TestNotification<'a> -> Choice<'a,exn,unit>
    + Type parameters: 'a
    +
    + + + + +

    Active pattern on the different kind of 'TestNotification''s (a.k.a. 'Recorded>').

    + + +

    CompiledName: |Next|Error|Completed|

    +
    + +
    +
    + F# Project + +
    +
    +
    + Fork me on GitHub + + + diff --git a/reference/fsharp-control-reactive-testing-testnotifications-1.html b/reference/fsharp-control-reactive-testing-testnotifications-1.html new file mode 100644 index 0000000..7b4aa10 --- /dev/null +++ b/reference/fsharp-control-reactive-testing-testnotifications-1.html @@ -0,0 +1,97 @@ + + + + + TestNotifications<'a> - FSharp.Control.Reactive + + + + + + + + + + + + + + + +
    + +
    +
    +
    + + + + +

    TestNotifications<'a>

    +

    + + Namespace: FSharp.Control.Reactive.Testing
    +

    +
    +
    +

    Union Cases

    + + + + + + + + + + +
    Union CaseDescription
    + + + TestNotifications(...) + +
    + Signature: TestNotification<'a> list
    +
    +
    + + + + + +
    + +
    +
    + F# Project + +
    +
    +
    + Fork me on GitHub + + + diff --git a/reference/fsharp-control-reactive-testing-testobservermodule.html b/reference/fsharp-control-reactive-testing-testobservermodule.html new file mode 100644 index 0000000..1dda1bf --- /dev/null +++ b/reference/fsharp-control-reactive-testing-testobservermodule.html @@ -0,0 +1,148 @@ + + + + + TestObserver - FSharp.Control.Reactive + + + + + + + + + + + + + + + +
    + +
    +
    +
    + + + + +

    TestObserver

    +

    + Namespace: FSharp.Control.Reactive.Testing
    + + Attributes:
    +[<CompilationRepresentation(4)>]
    + +
    +

    +
    +

    The Reactive module provides operators for working with TestObserver<_> in F#.

    + +
    + + + +

    Functions and values

    + + + + + + + + + + + + + + + + + + +
    Function or valueDescription
    + + + all o + +
    + Signature: o:ITestableObserver<'a> -> TestNotifications<'a>
    + Type parameters: 'a
    +
    + + + + +

    Gets recorded timestamped notification messages received by the observer.

    + + +
    + + + errors o + +
    + Signature: o:ITestableObserver<'a> -> exn list
    + Type parameters: 'a
    +
    + + + + +

    Gets recorded timestamped "OnError" notification messages received by the observer.

    + + +
    + + + nexts o + +
    + Signature: o:ITestableObserver<'a> -> 'a list
    + Type parameters: 'a
    +
    + + + + +

    Gets recorded timestamped "OnNext" notification messages received by the observer.

    + + +
    + +
    +
    + F# Project + +
    +
    +
    + Fork me on GitHub + + + diff --git a/reference/fsharp-control-reactive-testing-testschedulemodule.html b/reference/fsharp-control-reactive-testing-testschedulemodule.html new file mode 100644 index 0000000..d809251 --- /dev/null +++ b/reference/fsharp-control-reactive-testing-testschedulemodule.html @@ -0,0 +1,336 @@ + + + + + TestSchedule - FSharp.Control.Reactive + + + + + + + + + + + + + + + +
    + +
    +
    +
    + + + + +

    TestSchedule

    +

    + Namespace: FSharp.Control.Reactive.Testing
    + + Attributes:
    +[<CompilationRepresentation(4)>]
    + +
    +

    +
    +

    The Reactive module provides operators for working with TestScheduler in F#.

    + +
    + + + +

    Functions and values

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Function or valueDescription
    + + + advanceBy s time + +
    + Signature: s:TestScheduler -> time:int64 -> TestScheduler
    +
    +
    + + + + +

    Advances the scheduler's clock by the specified relative time, running all work scheduled for that timespan.

    + + +
    + + + advanceTo s time + +
    + Signature: s:TestScheduler -> time:int64 -> TestScheduler
    +
    +
    + + + + +

    Advances the scheduler's clock to the specified time, running all work till that point.

    + + +
    + + + coldObservable s arg2 + +
    + Signature: s:TestScheduler -> TestNotifications<'a> -> ITestableObservable<'a>
    + Type parameters: 'a
    +
    + + + + +

    Creates a cold observable using the specified timestamped notification messages.

    + + +
    + + + createObserver s + +
    + Signature: s:TestScheduler -> ITestableObserver<'a>
    + Type parameters: 'a
    +
    + + + + +

    Creates an observer that records received notification messages and timestamps those.

    + + +
    + + + hotObservable s arg2 + +
    + Signature: s:TestScheduler -> TestNotifications<'?8971> -> ITestableObservable<'?8971>
    + Type parameters: '?8971
    +
    + + + + +

    Creates a hot observable using the specified timestamped notification messages.

    + + +
    + + + schedule s state dueTime f + +
    + Signature: s:TestScheduler -> state:'?8977 -> dueTime:DateTimeOffset -> f:(IScheduler -> '?8977 -> IDisposable) -> IDisposable
    + Type parameters: '?8977 + Attributes:
    +[<Obsolete("Use the 'Schedule' module for scheduling actions")>]
    +
    +
    +
    +
    + WARNING: This API is obsolete +

    Use the 'Schedule' module for scheduling actions

    +
    + + + + +

    Schedules an action to be executed at dueTime

    + + +
    + + + start s + +
    + Signature: s:TestScheduler -> TestScheduler
    +
    +
    + + + + +

    Starts the virtual time scheduler.

    + + +
    + + + startObservable s source + +
    + Signature: s:TestScheduler -> source:IObservable<'?8980> -> ITestableObserver<'?8980>
    + Type parameters: '?8980
    +
    + + + + +

    Starts the test scheduler and uses default virtual times to "ReactiveTest.Created", to "ReactiveTest.Subscribed", and to "ReactiveTest.Disposed".

    + + +
    + + + subscribeBeforeAfter sch source f + +
    + Signature: sch:TestScheduler -> source:'?8986 -> f:('?8986 -> '?8988) -> ITestableObserver<'?8987> * ITestableObserver<'?8987>
    + Type parameters: '?8986, '?8987, '?8988
    +
    + + + + +

    Subscribes before and after and specified function to the observable with an observer that records received notification messasges and timestamps those.

    + + +
    + + + subscribeTestObserver sch source + +
    + Signature: sch:TestScheduler -> source:IObservable<'?8982> -> ITestableObserver<'?8982>
    + Type parameters: '?8982
    +
    + + + + +

    Subscribes to the observable with an observer that records received notification messages and timestamps those.

    + + +
    + + + subscribeTestObserverStart sch source + +
    + Signature: sch:TestScheduler -> source:IObservable<'?8984> -> ITestableObserver<'?8984>
    + Type parameters: '?8984
    +
    + + + + +

    Subscribes (before starting) to the observable with an observer that records received notification messages and timestamps those.

    + + +
    + + + usage f + +
    + Signature: f:(TestScheduler -> '?8967) -> '?8967
    + Type parameters: '?8967
    +
    + + + + +

    Virtual time scheduler used for testing applications and libraries built using Reactive Extensions.

    + + +
    + +
    +
    + F# Project + +
    +
    +
    + Fork me on GitHub + + + diff --git a/reference/fsharp-control-reactive-waithandlemodule.html b/reference/fsharp-control-reactive-waithandlemodule.html new file mode 100644 index 0000000..0cf8514 --- /dev/null +++ b/reference/fsharp-control-reactive-waithandlemodule.html @@ -0,0 +1,146 @@ + + + + + WaitHandle - FSharp.Control.Reactive + + + + + + + + + + + + + + + +
    + +
    +
    +
    + + + + +

    WaitHandle

    +

    + Namespace: FSharp.Control.Reactive
    + + Attributes:
    +[<CompilationRepresentation(4)>]
    + +
    +

    +
    +
    + + + +

    Functions and values

    + + + + + + + + + + + + + + + + + + +
    Function or valueDescription
    + + + flag s + +
    + Signature: s:EventWaitHandle -> unit
    +
    +
    + + + + +

    Sets the state of the event to signaled, allowing one or more waiting threads to proceed.

    + + +
    + + + signal + +
    + Signature: ManualResetEvent
    +
    +
    + + + + +

    Initializes a new instance of the ManualResetEvent class with initial state set to 'false'.

    + + +
    + + + wait s + +
    + Signature: s:WaitHandle -> unit
    +
    +
    + + + + +

    Blocks the current thread until the WaitHandle receives a signal.

    + + +
    + +
    +
    + F# Project + +
    +
    +
    + Fork me on GitHub + + + diff --git a/reference/index.html b/reference/index.html index 12c5cfc..9aff0db 100644 --- a/reference/index.html +++ b/reference/index.html @@ -12,8 +12,8 @@ - - + + + + + +
    + +
    +
    +
    + + + + +

    Disposable

    +

    + + Namespace: FSharp.Control.Reactive
    +

    +
    +
    +

    Constructors

    + + + + + + + + + + +
    ConstructorDescription
    + + + new() + +
    + Signature: unit -> Disposable
    +
    +
    + + + + + +

    CompiledName: .ctor

    +
    +

    Static members

    + + + + + + + + + + + + + + +
    Static memberDescription
    + + + Composite + +
    + Signature: CompositeDisposable
    +
    +
    + + + + +

    Creates a new composite disposable with no disposables contained initially.

    + + +

    CompiledName: get_Composite

    +
    + + + Serial + +
    + Signature: SerialDisposable
    +
    +
    + + + + +

    Represents a disposable resource whose underlying disposable resource can be replaced by another disposable resource, +causing automatic disposal of the previous underlying disposable resource.

    + + +

    CompiledName: get_Serial

    +
    + +
    +
    + F# Project + +
    +
    +
    + Fork me on GitHub + + + diff --git a/reference/fsharp-control-reactive-disposablemodule.html b/reference/fsharp-control-reactive-disposablemodule.html index 922a564..e027113 100644 --- a/reference/fsharp-control-reactive-disposablemodule.html +++ b/reference/fsharp-control-reactive-disposablemodule.html @@ -68,7 +68,7 @@

    Functions and values

    - + @@ -81,18 +81,18 @@

    Functions and values

    - composite + create f
    - Signature: IDisposable
    + Signature: f:(unit -> unit) -> IDisposable
    - + -

    Creates a new composite disposable with no disposables contained initially.

    +

    Creates an disposable object that invokes the specified function when disposed.

    @@ -101,18 +101,18 @@

    Functions and values

    - create f + dispose x
    - Signature: f:(unit -> unit) -> IDisposable
    + Signature: x:IDisposable -> unit
    - + -

    Creates an disposable object that invokes the specified function when disposed.

    +

    Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.

    @@ -121,18 +121,19 @@

    Functions and values

    - dispose x + ignoring f d
    - Signature: x:IDisposable -> unit
    -
    + Signature: f:(unit -> '?9022) -> d:IDisposable -> unit
    + Type parameters: '?9022

    - + -

    Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.

    +

    Execute and action without the resource while the disposable is still 'active'. +The used resource will be disposed afterwards.

    @@ -141,19 +142,19 @@

    Functions and values

    - ignoring f d + setIndirectly disposableFactory d
    - Signature: f:(unit -> '?8925) -> d:IDisposable -> unit
    - Type parameters: '?8925
    + Signature: disposableFactory:(unit -> 'b) -> d:SerialDisposable -> unit
    + Type parameters: 'b

    - + -

    Execute and action without the resource while the disposable is still 'active'. -The used resource will be disposed afterwards.

    +

    Uses the double-indirection pattern to assign the disposable returned by the specified disposableFactory +to the 'Disposable' property of the specified serial disposable.

    @@ -162,21 +163,18 @@

    Functions and values

    - setIndirectly disposableFactory d + setInnerDisposalOf d x
    - Signature: disposableFactory:(unit -> '?8933) -> d:SerialDisposable -> unit
    - Type parameters: '?8933
    + Signature: d:SerialDisposable -> x:IDisposable -> unit
    +
    - + -

    Uses the double-indirection pattern to assign the disposable returned by the specified disposableFactory -to the 'Disposable' property of the specified serial disposable.

    - - + @@ -186,11 +184,11 @@

    Functions and values

    using f d
    - Signature: f:('?8927 -> '?8928) -> d:'?8927 -> '?8928
    - Type parameters: '?8927, '?8928
    + Signature: f:('?9024 -> '?9025) -> d:'?9024 -> '?9025
    + Type parameters: '?9024, '?9025
    - + diff --git a/reference/fsharp-control-reactive-observablemodule.html b/reference/fsharp-control-reactive-observablemodule.html index e0e56cc..c289a2c 100644 --- a/reference/fsharp-control-reactive-observablemodule.html +++ b/reference/fsharp-control-reactive-observablemodule.html @@ -64,11 +64,11 @@

    Functions and values

    aggregate accumulator source
    - Signature: accumulator:('?8185 -> '?8185 -> '?8185) -> source:IObservable<'?8185> -> IObservable<'?8185>
    - Type parameters: '?8185
    + Signature: accumulator:('?8104 -> '?8104 -> '?8104) -> source:IObservable<'?8104> -> IObservable<'?8104>
    + Type parameters: '?8104
    - + @@ -85,11 +85,11 @@

    Functions and values

    all pred source
    - Signature: pred:('?8187 -> bool) -> source:IObservable<'?8187> -> IObservable<bool>
    - Type parameters: '?8187
    + Signature: pred:('?8106 -> bool) -> source:IObservable<'?8106> -> IObservable<bool>
    + Type parameters: '?8106
    - + @@ -105,11 +105,11 @@

    Functions and values

    amb second first
    - Signature: second:IObservable<'?8189> -> first:IObservable<'?8189> -> IObservable<'?8189>
    - Type parameters: '?8189
    + Signature: second:IObservable<'?8108> -> first:IObservable<'?8108> -> IObservable<'?8108>
    + Type parameters: '?8108
    - + @@ -129,7 +129,7 @@

    Functions and values

    Type parameters: 'T
    - + @@ -149,7 +149,7 @@

    Functions and values

    Type parameters: 'T
    - + @@ -169,7 +169,7 @@

    Functions and values

    Type parameters: 'Source
    - + @@ -185,11 +185,11 @@

    Functions and values

    apply f m
    - Signature: f:IObservable<('?8202 -> '?8203)> -> m:IObservable<'?8202> -> IObservable<'?8203>
    - Type parameters: '?8202, '?8203
    + Signature: f:IObservable<('?8121 -> '?8122)> -> m:IObservable<'?8121> -> IObservable<'?8122>
    + Type parameters: '?8121, '?8122
    - + @@ -209,7 +209,7 @@

    Functions and values

    Type parameters: 'Source
    - + @@ -229,7 +229,7 @@

    Functions and values

    Type parameters: 'T, 'TNext
    - + @@ -245,11 +245,11 @@

    Functions and values

    both second first
    - Signature: second:IObservable<'?8205> -> first:IObservable<'?8206> -> Pattern<'?8206,'?8205>
    - Type parameters: '?8205, '?8206
    + Signature: second:IObservable<'?8124> -> first:IObservable<'?8125> -> Pattern<'?8125,'?8124>
    + Type parameters: '?8124, '?8125
    - + @@ -265,11 +265,11 @@

    Functions and values

    buffer bufferClosingSelector source
    - Signature: bufferClosingSelector:IObservable<'BufferClosing> -> source:IObservable<'?8209> -> IObservable<IList<'?8209>>
    - Type parameters: 'BufferClosing, '?8209
    + Signature: bufferClosingSelector:IObservable<'BufferClosing> -> source:IObservable<'?8128> -> IObservable<IList<'?8128>>
    + Type parameters: 'BufferClosing, '?8128
    - + @@ -287,7 +287,7 @@

    Functions and values

    Type parameters: 'BufferClosing, 'T
    - + @@ -304,11 +304,11 @@

    Functions and values

    bufferCount count source
    - Signature: count:int -> source:IObservable<'?8214> -> IObservable<IList<'?8214>>
    - Type parameters: '?8214
    + Signature: count:int -> source:IObservable<'?8133> -> IObservable<IList<'?8133>>
    + Type parameters: '?8133
    - + @@ -325,11 +325,11 @@

    Functions and values

    bufferCountSkip count skip source
    - Signature: count:int -> skip:int -> source:IObservable<'?8216> -> IObservable<IList<'?8216>>
    - Type parameters: '?8216
    + Signature: count:int -> skip:int -> source:IObservable<'?8135> -> IObservable<IList<'?8135>>
    + Type parameters: '?8135
    - + @@ -346,11 +346,11 @@

    Functions and values

    bufferFork (...)
    - Signature: bufferOpenings:IObservable<'BufferOpening> -> bufferClosingSelector:('BufferOpening -> IObservable<'T>) -> source:IObservable<'?8228> -> IObservable<IList<'?8228>>
    - Type parameters: 'BufferOpening, 'T, '?8228
    + Signature: bufferOpenings:IObservable<'BufferOpening> -> bufferClosingSelector:('BufferOpening -> IObservable<'T>) -> source:IObservable<'?8147> -> IObservable<IList<'?8147>>
    + Type parameters: 'BufferOpening, 'T, '?8147
    - + @@ -368,11 +368,11 @@

    Functions and values

    bufferSpan timeSpan source
    - Signature: timeSpan:TimeSpan -> source:IObservable<'?8218> -> IObservable<IList<'?8218>>
    - Type parameters: '?8218
    + Signature: timeSpan:TimeSpan -> source:IObservable<'?8137> -> IObservable<IList<'?8137>>
    + Type parameters: '?8137
    - + @@ -389,11 +389,11 @@

    Functions and values

    bufferSpanCount timeSpan count source
    - Signature: timeSpan:TimeSpan -> count:int -> source:IObservable<'?8222> -> IObservable<IList<'?8222>>
    - Type parameters: '?8222
    + Signature: timeSpan:TimeSpan -> count:int -> source:IObservable<'?8141> -> IObservable<IList<'?8141>>
    + Type parameters: '?8141
    - + @@ -411,11 +411,11 @@

    Functions and values

    bufferSpanCountOn (...)
    - Signature: scheduler:IScheduler -> timeSpan:TimeSpan -> count:int -> source:IObservable<'?8224> -> IObservable<IList<'?8224>>
    - Type parameters: '?8224
    + Signature: scheduler:IScheduler -> timeSpan:TimeSpan -> count:int -> source:IObservable<'?8143> -> IObservable<IList<'?8143>>
    + Type parameters: '?8143
    - + @@ -434,11 +434,11 @@

    Functions and values

    bufferSpanOn scheduler timeSpan source
    - Signature: scheduler:IScheduler -> timeSpan:TimeSpan -> source:IObservable<'?8220> -> IObservable<IList<'?8220>>
    - Type parameters: '?8220
    + Signature: scheduler:IScheduler -> timeSpan:TimeSpan -> source:IObservable<'?8139> -> IObservable<IList<'?8139>>
    + Type parameters: '?8139
    - + @@ -455,11 +455,11 @@

    Functions and values

    bufferSpanShift (...)
    - Signature: timeSpan:TimeSpan -> timeShift:TimeSpan -> source:IObservable<'?8230> -> IObservable<IList<'?8230>>
    - Type parameters: '?8230
    + Signature: timeSpan:TimeSpan -> timeShift:TimeSpan -> source:IObservable<'?8149> -> IObservable<IList<'?8149>>
    + Type parameters: '?8149
    - + @@ -476,11 +476,11 @@

    Functions and values

    bufferSpanShiftOn (...)
    - Signature: scheduler:IScheduler -> timeSpan:TimeSpan -> timeShift:TimeSpan -> source:IObservable<'?8232> -> IObservable<IList<'?8232>>
    - Type parameters: '?8232
    + Signature: scheduler:IScheduler -> timeSpan:TimeSpan -> timeShift:TimeSpan -> source:IObservable<'?8151> -> IObservable<IList<'?8151>>
    + Type parameters: '?8151
    - + @@ -498,11 +498,11 @@

    Functions and values

    case selector sources
    - Signature: selector:(unit -> '?8236) -> sources:IDictionary<'?8236,IObservable<'?8237>> -> IObservable<'?8237>
    - Type parameters: '?8236, '?8237
    + Signature: selector:(unit -> '?8155) -> sources:IDictionary<'?8155,IObservable<'?8156>> -> IObservable<'?8156>
    + Type parameters: '?8155, '?8156
    - + @@ -523,7 +523,7 @@

    Functions and values

    Type parameters: 'Value, 'Result
    - + @@ -540,11 +540,11 @@

    Functions and values

    caseOn scheduler selector sources
    - Signature: scheduler:IScheduler -> selector:Func<'?8242> -> sources:IDictionary<'?8242,IObservable<'?8243>> -> IObservable<'?8243>
    - Type parameters: '?8242, '?8243
    + Signature: scheduler:IScheduler -> selector:Func<'?8161> -> sources:IDictionary<'?8161,IObservable<'?8162>> -> IObservable<'?8162>
    + Type parameters: '?8161, '?8162
    - + @@ -565,7 +565,7 @@

    Functions and values

    Type parameters: 'CastType
    - + @@ -585,7 +585,7 @@

    Functions and values

    Type parameters: 'T
    - + @@ -606,7 +606,7 @@

    Functions and values

    Type parameters: 'T
    - + @@ -619,14 +619,57 @@

    Functions and values

    - catchSeq sources + catchOption source
    + Signature: source:IObservable<'?8166> -> IObservable<'?8166 option>
    + Type parameters: '?8166
    + + + + + + +

    Continues an observable sequence that is terminated by an exception +with an optional as result type.

    + + + + + + + + + catchResult handler source + +
    + Signature: handler:('?8168 -> IObservable<'?8169>) -> source:IObservable<'?8170> -> IObservable<Result<'?8170,'?8169>>
    + Type parameters: '?8168, '?8169, '?8170
    + + + + + + +

    Continues an observable sequence that is terminated by an exception of +the specified type with the observable sequence produced by the handler, +wrapped in a 'Result' type.

    + + + + + + + + + catchSeq sources + +
    Signature: sources:seq<IObservable<'T>> -> IObservable<'T>
    Type parameters: 'T
    - + @@ -638,15 +681,15 @@

    Functions and values

    - + catchWith handler source -
    - Signature: handler:('?8247 -> IObservable<'?8248>) -> source:IObservable<'?8248> -> IObservable<'?8248>
    - Type parameters: '?8247, '?8248
    +
    + Signature: handler:('?8172 -> IObservable<'?8173>) -> source:IObservable<'?8173> -> IObservable<'?8173>
    + Type parameters: '?8172, '?8173
    - + @@ -659,15 +702,40 @@

    Functions and values

    - + + choose f source + +
    + Signature: f:('?8889 -> '?8890 option) -> source:IObservable<'?8889> -> IObservable<'?8890>
    + Type parameters: '?8889, '?8890
    + + + + + + +

    Description +Applies the given function to each value of the given source Observable +comprimised of the results x for each element for which the function returns Some(x).

    +

    Parameters +- f - Accepts a chooser function to only pick a subset of emits. +- source - The source observable to take a subset from.

    + + + + + + + + chunkify source -
    +
    Signature: source:IObservable<'Source> -> seq<IList<'Source>>
    Type parameters: 'Source
    - + @@ -679,15 +747,15 @@

    Functions and values

    - + collect map source -
    +
    Signature: map:('Source -> IObservable<'Result>) -> source:seq<'Source> -> IObservable<'Result>
    Type parameters: 'Source, 'Result
    - + @@ -699,15 +767,15 @@

    Functions and values

    - + collectMerge newCollector merge source -
    - Signature: newCollector:(unit -> '?8259) -> merge:('?8259 -> '?8260 -> '?8259) -> source:IObservable<'?8260> -> IEnumerable<'?8259>
    - Type parameters: '?8259, '?8260
    +
    + Signature: newCollector:(unit -> '?8184) -> merge:('?8184 -> '?8185 -> '?8184) -> source:IObservable<'?8185> -> IEnumerable<'?8184>
    + Type parameters: '?8184, '?8185
    - + @@ -721,15 +789,15 @@

    Functions and values

    - + collectMergeInit (...) -
    - Signature: getInitialCollector:(unit -> '?8262) -> merge:('?8262 -> '?8263 -> '?8262) -> getNewCollector:('?8262 -> '?8262) -> source:IObservable<'?8263> -> IEnumerable<'?8262>
    - Type parameters: '?8262, '?8263
    +
    + Signature: getInitialCollector:(unit -> '?8187) -> merge:('?8187 -> '?8188 -> '?8187) -> getNewCollector:('?8187 -> '?8187) -> source:IObservable<'?8188> -> IEnumerable<'?8187>
    + Type parameters: '?8187, '?8188
    - + @@ -744,15 +812,15 @@

    Functions and values

    - + combineLatest source1 source2 -
    +
    Signature: source1:IObservable<'T1> -> source2:IObservable<'T2> -> IObservable<'T1 * 'T2>
    Type parameters: 'T1, 'T2
    - + @@ -765,15 +833,15 @@

    Functions and values

    - + combineLatestArray source -
    +
    Signature: source:IObservable<'T> [] -> IObservable<IList<'T>>
    Type parameters: 'T
    - + @@ -786,15 +854,15 @@

    Functions and values

    - + combineLatestSeq source -
    +
    Signature: source:seq<IObservable<'T>> -> IObservable<IList<'T>>
    Type parameters: 'T
    - + @@ -808,15 +876,15 @@

    Functions and values

    - + combineLatestSeqMap map source -
    +
    Signature: map:(IList<'T> -> 'Result) -> source:seq<IObservable<'T>> -> IObservable<'Result>
    Type parameters: 'T, 'Result
    - + @@ -829,15 +897,15 @@

    Functions and values

    - + concat second first -
    +
    Signature: second:IObservable<'T> -> first:IObservable<'T> -> IObservable<'T>
    Type parameters: 'T
    - + @@ -850,15 +918,15 @@

    Functions and values

    - + concatArray sources -
    +
    Signature: sources:IObservable<'T> [] -> IObservable<'T>
    Type parameters: 'T
    - + @@ -871,15 +939,15 @@

    Functions and values

    - + concatInner sources -
    +
    Signature: sources:IObservable<IObservable<'T>> -> IObservable<'T>
    Type parameters: 'T
    - + @@ -892,15 +960,15 @@

    Functions and values

    - + concatSeq sources -
    +
    Signature: sources:seq<IObservable<'T>> -> IObservable<'T>
    Type parameters: 'T
    - + @@ -913,15 +981,15 @@

    Functions and values

    - + concatTasks sources -
    +
    Signature: sources:IObservable<Task<'T>> -> IObservable<'T>
    Type parameters: 'T
    - + @@ -934,15 +1002,15 @@

    Functions and values

    - + connect source -
    - Signature: source:IConnectableObservable<'?8285> -> IDisposable
    - Type parameters: '?8285
    +
    + Signature: source:IConnectableObservable<'?8210> -> IDisposable
    + Type parameters: '?8210
    - + @@ -957,15 +1025,207 @@

    Functions and values

    - + + consume consumer source + +
    + Signature: consumer:IObservable<'?8919> -> source:IObservable<'?8920> -> IObservable<'?8919>
    + Type parameters: '?8919, '?8920
    + + + + + + +

    Generates a sequence using the producer/consumer pattern. +The purpose of the source sequence is simply to notify the consumer when out-of-band data becomes available. +The data in the source sequence provides additional information to the function, +but it does not have to be the actual data being produced.

    +

    The function is not necessarily called for every value in the source sequence. +It is only called if the previous consumer's observable has completed; otherwise, the current notification is ignored. This ensures +that only one consumer is active at any given time, but it also means that the function is not guaranteed +to receive every value in the source sequence; therefore, the function must read +data from out-of-band storage instead; e.g., from a shared stream or queue.

    +

    The function may also be called when data is not available. For example, if the current consuming +observable completes and additional notifications from the source were received, then the function +is called again to check whether new data was missed. This avoids a race condition between the source sequence +and the consuming observable's completion notification. If no data is available when function is called, then +an empty sequence should be returned and the function will not be called again until another notification is observed +from the source.

    +

    Producers and the single active consumer are intended to access shared objects concurrently, yet it remains their responsibility +to ensure thread-safety. The consume operator cannot do so without breaking concurrency. For example, +a producer/consumer implementation that uses an in-memory queue must manually ensure that reads and writes to the queue are thread-safe.

    +

    Multiple producers are supported. Simply create an observable sequence for each producer that notifies when data is generated, +merge them together using the merge operator, and use the merged observable as the source argument in the consume operator. +Multiple consumers are supported by calling consume once and then calling subscribe multiple times on the cold observable that is returned.
    +Just be sure that the source sequence is hot so that each subscription will consume based on the same producers' notifications.

    +

    Parameters

    +
      +
    • f - A function that generates an observable sequence from out-of-band data.
    • +
    • source - Indicates when data becomes available from one or more producers.
    • +
    +

    Returns

    +

    An observable sequence that is the concatenation of all subscriptions to the consumer observable.

    + + + + + + + + + consumeMap f source + +
    + Signature: f:('a -> IObservable<'b>) -> source:IObservable<'a> -> IObservable<'b>
    + Type parameters: 'a, 'b
    + + + + + + +

    Generates a sequence using the producer/consumer pattern. +The purpose of the source sequence is simply to notify the consumer when out-of-band data becomes available. +The data in the source sequence provides additional information to the function, +but it does not have to be the actual data being produced.

    +

    The function is not necessarily called for every value in the source sequence. +It is only called if the previous consumer's observable has completed; otherwise, the current notification is ignored. This ensures +that only one consumer is active at any given time, but it also means that the function is not guaranteed +to receive every value in the source sequence; therefore, the function must read +data from out-of-band storage instead; e.g., from a shared stream or queue.

    +

    The function may also be called when data is not available. For example, if the current consuming +observable completes and additional notifications from the source were received, then the function +is called again to check whether new data was missed. This avoids a race condition between the source sequence +and the consuming observable's completion notification. If no data is available when function is called, then +an empty sequence should be returned and the function will not be called again until another notification is observed +from the source.

    +

    Producers and the single active consumer are intended to access shared objects concurrently, yet it remains their responsibility +to ensure thread-safety. The consume operator cannot do so without breaking concurrency. For example, +a producer/consumer implementation that uses an in-memory queue must manually ensure that reads and writes to the queue are thread-safe.

    +

    Multiple producers are supported. Simply create an observable sequence for each producer that notifies when data is generated, +merge them together using the merge operator, and use the merged observable as the source argument in the consume operator. +Multiple consumers are supported by calling consume once and then calling subscribe multiple times on the cold observable that is returned.
    +Just be sure that the source sequence is hot so that each subscription will consume based on the same producers' notifications.

    +

    Parameters

    +
      +
    • f - A function that generates an observable sequence from out-of-band data.
    • +
    • source - Indicates when data becomes available from one or more producers.
    • +
    +

    Returns

    +

    An observable sequence that is the concatenation of all subscriptions to the consumer observable.

    + + + + + + + + + consumeNext f source + +
    + Signature: f:('?8925 -> '?8926 option) -> source:IObservable<'?8925> -> IObservable<'?8926>
    + Type parameters: '?8925, '?8926
    + + + + + + +

    Generates a sequence using the producer/consumer pattern. +The purpose of the source sequence is simply to notify the consumer when out-of-band data becomes available. +The data in the source sequence provides additional information to the function, +but it does not have to be the actual data being produced.

    +

    The function is not necessarily called for every value in the source sequence. +It is only called if the previous consumer's observable has completed; otherwise, the current notification is ignored. This ensures +that only one consumer is active at any given time, but it also means that the function is not guaranteed +to receive every value in the source sequence; therefore, the function must read +data from out-of-band storage instead; e.g., from a shared stream or queue.

    +

    The function may also be called when data is not available. For example, if the current consuming +observable completes and additional notifications from the source were received, then the function +is called again to check whether new data was missed. This avoids a race condition between the source sequence +and the consuming observable's completion notification. If no data is available when function is called, then +an empty sequence should be returned and the function will not be called again until another notification is observed +from the source.

    +

    Producers and the single active consumer are intended to access shared objects concurrently, yet it remains their responsibility +to ensure thread-safety. The consume operator cannot do so without breaking concurrency. For example, +a producer/consumer implementation that uses an in-memory queue must manually ensure that reads and writes to the queue are thread-safe.

    +

    Multiple producers are supported. Simply create an observable sequence for each producer that notifies when data is generated, +merge them together using the merge operator, and use the merged observable as the source argument in the consume operator. +Multiple consumers are supported by calling consume once and then calling subscribe multiple times on the cold observable that is returned.
    +Just be sure that the source sequence is hot so that each subscription will consume based on the same producers' notifications.

    +

    Parameters

    +
      +
    • f - A function that is called iteratively to generate values from out-of-band data.
    • +
    • source - Indicates when data becomes available from one or more producers.
    • +
    +

    Returns

    +

    An observable sequence that is the concatenation of the values returned by the consumeNext function.

    + + + + + + + + + consumeNextOn sch f source + +
    + Signature: sch:IScheduler -> f:('?8922 -> '?8923 option) -> source:IObservable<'?8922> -> IObservable<'?8923>
    + Type parameters: '?8922, '?8923
    + + + + + + +

    Generates a sequence using the producer/consumer pattern. +The purpose of the source sequence is simply to notify the consumer when out-of-band data becomes available. +The data in the source sequence provides additional information to the function, +but it does not have to be the actual data being produced.

    +

    The function is not necessarily called for every value in the source sequence. +It is only called if the previous consumer's observable has completed; otherwise, the current notification is ignored. This ensures +that only one consumer is active at any given time, but it also means that the function is not guaranteed +to receive every value in the source sequence; therefore, the function must read +data from out-of-band storage instead; e.g., from a shared stream or queue.

    +

    The function may also be called when data is not available. For example, if the current consuming +observable completes and additional notifications from the source were received, then the function +is called again to check whether new data was missed. This avoids a race condition between the source sequence +and the consuming observable's completion notification. If no data is available when function is called, then +an empty sequence should be returned and the function will not be called again until another notification is observed +from the source.

    +

    Producers and the single active consumer are intended to access shared objects concurrently, yet it remains their responsibility +to ensure thread-safety. The consume operator cannot do so without breaking concurrency. For example, +a producer/consumer implementation that uses an in-memory queue must manually ensure that reads and writes to the queue are thread-safe.

    +

    Multiple producers are supported. Simply create an observable sequence for each producer that notifies when data is generated, +merge them together using the merge operator, and use the merged observable as the source argument in the consume operator. +Multiple consumers are supported by calling consume once and then calling subscribe multiple times on the cold observable that is returned.
    +Just be sure that the source sequence is hot so that each subscription will consume based on the same producers' notifications.

    +

    Parameters

    +
      +
    • f - A function that is called iteratively to generate values from out-of-band data.
    • +
    • source - Indicates when data becomes available from one or more producers.
    • +
    +

    Returns

    +

    An observable sequence that is the concatenation of the values returned by the consumeNext function.

    + + + + + + + + contains value source -
    - Signature: value:'?8287 -> source:IObservable<'?8287> -> IObservable<bool>
    - Type parameters: '?8287
    +
    + Signature: value:'?8212 -> source:IObservable<'?8212> -> IObservable<bool>
    + Type parameters: '?8212
    - + @@ -978,15 +1238,15 @@

    Functions and values

    - + containsCompare comparer value source -
    - Signature: comparer:IEqualityComparer<'?8289> -> value:'?8289 -> source:IObservable<'?8289> -> IObservable<bool>
    - Type parameters: '?8289
    +
    + Signature: comparer:IEqualityComparer<'?8214> -> value:'?8214 -> source:IObservable<'?8214> -> IObservable<bool>
    + Type parameters: '?8214
    - + @@ -999,15 +1259,15 @@

    Functions and values

    - + count source -
    - Signature: source:IObservable<'?8291> -> IObservable<int>
    - Type parameters: '?8291
    +
    + Signature: source:IObservable<'?8216> -> IObservable<int>
    + Type parameters: '?8216
    - + @@ -1019,15 +1279,15 @@

    Functions and values

    - + countSatisfy predicate source -
    - Signature: predicate:('?8293 -> bool) -> source:IObservable<'?8293> -> IObservable<int>
    - Type parameters: '?8293
    +
    + Signature: predicate:('?8218 -> bool) -> source:IObservable<'?8218> -> IObservable<int>
    + Type parameters: '?8218
    - + @@ -1040,15 +1300,15 @@

    Functions and values

    - + defaultIfEmpty source -
    +
    Signature: source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -1061,15 +1321,15 @@

    Functions and values

    - + defaultIfEmptyIs defaultValue source -
    +
    Signature: defaultValue:'Source -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -1081,15 +1341,15 @@

    Functions and values

    - + defer observableFactory -
    +
    Signature: observableFactory:(unit -> IObservable<'Result>) -> IObservable<'Result>
    Type parameters: 'Result
    - + @@ -1101,15 +1361,15 @@

    Functions and values

    - + delay dueTime source -
    +
    Signature: dueTime:TimeSpan -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -1122,15 +1382,15 @@

    Functions and values

    - + delayMap delayDurationSelector source -
    +
    Signature: delayDurationSelector:('Source -> IObservable<'TDelay>) -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source, 'TDelay
    - + @@ -1142,15 +1402,15 @@

    Functions and values

    - + delayMapFilter (...) -
    +
    Signature: delayDurationSelector:('Source -> IObservable<'TDelay>) -> subscriptionDelay:IObservable<'TDelay> -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source, 'TDelay
    - + @@ -1162,15 +1422,15 @@

    Functions and values

    - + delayOn scheduler dueTime source -
    - Signature: scheduler:IScheduler -> dueTime:TimeSpan -> source:IObservable<'?8303> -> IObservable<'?8303>
    - Type parameters: '?8303
    +
    + Signature: scheduler:IScheduler -> dueTime:TimeSpan -> source:IObservable<'?8228> -> IObservable<'?8228>
    + Type parameters: '?8228
    - + @@ -1184,15 +1444,15 @@

    Functions and values

    - + delaySubscription dueTime source -
    +
    Signature: dueTime:TimeSpan -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -1204,15 +1464,15 @@

    Functions and values

    - + delaySubscriptionOn (...) -
    - Signature: scheduler:IScheduler -> dueTime:TimeSpan -> source:IObservable<'?8317> -> IObservable<'?8317>
    - Type parameters: '?8317
    +
    + Signature: scheduler:IScheduler -> dueTime:TimeSpan -> source:IObservable<'?8242> -> IObservable<'?8242>
    + Type parameters: '?8242
    - + @@ -1225,15 +1485,15 @@

    Functions and values

    - + delaySubscriptionUntil dueTime source -
    +
    Signature: dueTime:DateTimeOffset -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -1245,15 +1505,15 @@

    Functions and values

    - + delaySubscriptionUntilOn (...) -
    - Signature: scheduler:IScheduler -> dueTime:DateTimeOffset -> source:IObservable<'?8321> -> IObservable<'?8321>
    - Type parameters: '?8321
    +
    + Signature: scheduler:IScheduler -> dueTime:DateTimeOffset -> source:IObservable<'?8246> -> IObservable<'?8246>
    + Type parameters: '?8246
    - + @@ -1266,15 +1526,15 @@

    Functions and values

    - + delayUntil source dueTime -
    +
    Signature: source:IObservable<'Source> -> dueTime:DateTimeOffset -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -1287,15 +1547,15 @@

    Functions and values

    - + delayUntilOn scheduler dueTime source -
    - Signature: scheduler:IScheduler -> dueTime:DateTimeOffset -> source:IObservable<'?8307> -> IObservable<'?8307>
    - Type parameters: '?8307
    +
    + Signature: scheduler:IScheduler -> dueTime:DateTimeOffset -> source:IObservable<'?8232> -> IObservable<'?8232>
    + Type parameters: '?8232
    - + @@ -1309,15 +1569,15 @@

    Functions and values

    - + dematerialize source -
    - Signature: source:IObservable<Notification<'?8323>> -> IObservable<'?8323>
    - Type parameters: '?8323
    +
    + Signature: source:IObservable<Notification<'?8248>> -> IObservable<'?8248>
    + Type parameters: '?8248
    - + @@ -1329,15 +1589,15 @@

    Functions and values

    - + distinct source -
    +
    Signature: source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -1349,15 +1609,15 @@

    Functions and values

    - + distinctCompare comparer source -
    +
    Signature: comparer:IEqualityComparer<'Source> -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -1369,15 +1629,15 @@

    Functions and values

    - + distinctKey keySelector source -
    +
    Signature: keySelector:('Source -> 'Key) -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source, 'Key
    - + @@ -1389,15 +1649,15 @@

    Functions and values

    - + distinctKeyCompare (...) -
    +
    Signature: keySelector:('Source -> 'Key) -> comparer:IEqualityComparer<'Key> -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source, 'Key
    - + @@ -1409,15 +1669,15 @@

    Functions and values

    - + distinctUntilChanged source -
    +
    Signature: source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -1429,15 +1689,15 @@

    Functions and values

    - + distinctUntilChangedCompare (...) -
    +
    Signature: comparer:IEqualityComparer<'Source> -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -1449,15 +1709,15 @@

    Functions and values

    - + distinctUntilChangedKey (...) -
    +
    Signature: keySelector:('Source -> 'Key) -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source, 'Key
    - + @@ -1469,15 +1729,15 @@

    Functions and values

    - + distinctUntilChangedKeyCompare (...) -
    +
    Signature: keySelector:('Source -> 'Key) -> comparer:IEqualityComparer<'Key> -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source, 'Key
    - + @@ -1489,15 +1749,15 @@

    Functions and values

    - + elementAt index source -
    +
    Signature: index:int -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -1509,15 +1769,15 @@

    Functions and values

    - + elementAtOrDefault index source -
    +
    Signature: index:int -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -1529,15 +1789,15 @@

    Functions and values

    - + empty -
    +
    Signature: IObservable<'T>
    Type parameters: 'T
    - + @@ -1549,15 +1809,15 @@

    Functions and values

    - + emptyCompleted scheduler -
    - Signature: scheduler:IScheduler -> IObservable<'?8353>
    - Type parameters: '?8353
    +
    + Signature: scheduler:IScheduler -> IObservable<'?8278>
    + Type parameters: '?8278
    - + @@ -1569,15 +1829,15 @@

    Functions and values

    - + emptyCompletedWitness scheduler witness -
    - Signature: scheduler:IScheduler -> witness:'?8355 -> IObservable<'?8355>
    - Type parameters: '?8355
    +
    + Signature: scheduler:IScheduler -> witness:'?8280 -> IObservable<'?8280>
    + Type parameters: '?8280
    - + @@ -1589,15 +1849,15 @@

    Functions and values

    - + emptyWitness witness -
    +
    Signature: witness:'T -> IObservable<'T>
    Type parameters: 'T
    - + @@ -1609,15 +1869,15 @@

    Functions and values

    - + equals first second -
    +
    Signature: first:IObservable<'Source> -> second:IObservable<'Source> -> IObservable<bool>
    Type parameters: 'Source
    - + @@ -1629,15 +1889,15 @@

    Functions and values

    - + equalsComparer comparer first second -
    +
    Signature: comparer:IEqualityComparer<'Source> -> first:IObservable<'Source> -> second:IObservable<'Source> -> IObservable<bool>
    Type parameters: 'Source
    - + @@ -1649,15 +1909,15 @@

    Functions and values

    - + equalsSeq first second -
    +
    Signature: first:IObservable<'Source> -> second:seq<'Source> -> IObservable<bool>
    Type parameters: 'Source
    - + @@ -1669,15 +1929,15 @@

    Functions and values

    - + equalsSeqComparer comparer first second -
    +
    Signature: comparer:IEqualityComparer<'Source> -> first:IObservable<'Source> -> second:seq<'Source> -> IObservable<bool>
    Type parameters: 'Source
    - + @@ -1689,15 +1949,15 @@

    Functions and values

    - + error e -
    - Signature: e:exn -> IObservable<'?8365>
    - Type parameters: '?8365
    +
    + Signature: e:exn -> IObservable<'?8290>
    + Type parameters: '?8290
    - + @@ -1707,15 +1967,43 @@

    Functions and values

    - + + exhaustMap f source + +
    + Signature: f:('?8896 -> '?8897) -> source:IObservable<'?8896> -> IObservable<'?8898>
    + Type parameters: '?8896, '?8897, '?8898
    + + + + + + +

    Returns +Returns an Observable that emits items based on applying a function that you +supply to each item emitted by the source Observable, where that function +returns an (so-called "inner") Observable. When it projects a source value to +an Observable, the output Observable begins emitting the items emitted by +that projected Observable. However, exhaustMap ignores every new projected +Observable if the previous projected Observable has not yet completed. Once +that one completes, it will accept and flatten the next projected Observable +and repeat this process.

    + + + + + + + + exists predicate source -
    - Signature: predicate:('?8367 -> bool) -> source:IObservable<'?8367> -> IObservable<bool>
    - Type parameters: '?8367
    +
    + Signature: predicate:('?8292 -> bool) -> source:IObservable<'?8292> -> IObservable<bool>
    + Type parameters: '?8292
    - + @@ -1728,15 +2016,15 @@

    Functions and values

    - + filter predicate source -
    +
    Signature: predicate:('T -> bool) -> source:IObservable<'T> -> IObservable<'T>
    Type parameters: 'T
    - + @@ -1748,15 +2036,15 @@

    Functions and values

    - + filteri predicate source -
    +
    Signature: predicate:(int -> 'T -> bool) -> source:IObservable<'T> -> IObservable<'T>
    Type parameters: 'T
    - + @@ -1769,15 +2057,15 @@

    Functions and values

    - + finallyDo finallyAction source -
    - Signature: finallyAction:(unit -> unit) -> source:IObservable<'?8373> -> IObservable<'?8373>
    - Type parameters: '?8373
    +
    + Signature: finallyAction:(unit -> unit) -> source:IObservable<'?8298> -> IObservable<'?8298>
    + Type parameters: '?8298
    - + @@ -1790,15 +2078,15 @@

    Functions and values

    - + first source -
    +
    Signature: source:IObservable<'T> -> IObservable<'T>
    Type parameters: 'T
    - + @@ -1810,15 +2098,15 @@

    Functions and values

    - + firstIf predicate source -
    +
    Signature: predicate:('T -> bool) -> source:IObservable<'T> -> IObservable<'T>
    Type parameters: 'T
    - + @@ -1831,15 +2119,15 @@

    Functions and values

    - + flatmap map source -
    +
    Signature: map:('S -> IObservable<'R>) -> source:IObservable<'S> -> IObservable<'R>
    Type parameters: 'S, 'R
    - + @@ -1852,15 +2140,15 @@

    Functions and values

    - + flatmapAsync asyncOperation source -
    - Signature: asyncOperation:('Source -> Async<'?8397>) -> source:IObservable<'Source> -> IObservable<'?8397>
    - Type parameters: 'Source, '?8397
    +
    + Signature: asyncOperation:('Source -> Async<'?8322>) -> source:IObservable<'Source> -> IObservable<'?8322>
    + Type parameters: 'Source, '?8322
    - + @@ -1872,15 +2160,15 @@

    Functions and values

    - + flatmapOther other source -
    +
    Signature: other:IObservable<'Other> -> source:IObservable<'Source> -> IObservable<'Other>
    Type parameters: 'Other, 'Source
    - + @@ -1893,15 +2181,15 @@

    Functions and values

    - + flatmapSeq map source -
    +
    Signature: map:('Source -> seq<'Result>) -> source:IObservable<'Source> -> IObservable<'Result>
    Type parameters: 'Source, 'Result
    - + @@ -1914,15 +2202,15 @@

    Functions and values

    - + flatmapTask map source -
    +
    Signature: map:('Source -> Task<'Result>) -> source:IObservable<'Source> -> IObservable<'Result>
    Type parameters: 'Source, 'Result
    - + @@ -1934,15 +2222,15 @@

    Functions and values

    - + fold accumulator init source -
    - Signature: accumulator:('?8399 -> '?8400 -> '?8399) -> init:'?8399 -> source:IObservable<'?8400> -> IObservable<'?8399>
    - Type parameters: '?8399, '?8400
    +
    + Signature: accumulator:('?8324 -> '?8325 -> '?8324) -> init:'?8324 -> source:IObservable<'?8325> -> IObservable<'?8324>
    + Type parameters: '?8324, '?8325
    - + @@ -1956,15 +2244,15 @@

    Functions and values

    - + foldMap accumulator init map source -
    - Signature: accumulator:('?8402 -> '?8403 -> '?8402) -> init:'?8402 -> map:('?8402 -> '?8404) -> source:IObservable<'?8403> -> IObservable<'?8404>
    - Type parameters: '?8402, '?8403, '?8404
    +
    + Signature: accumulator:('?8327 -> '?8328 -> '?8327) -> init:'?8327 -> map:('?8327 -> '?8329) -> source:IObservable<'?8328> -> IObservable<'?8329>
    + Type parameters: '?8327, '?8328, '?8329
    - + @@ -1978,15 +2266,15 @@

    Functions and values

    - + fromEvent addHandler removeHandler -
    +
    Signature: addHandler:('Delegate -> unit) -> removeHandler:('Delegate -> unit) -> IObservable<unit>
    Type parameters: 'Delegate
    - + @@ -1999,15 +2287,15 @@

    Functions and values

    - + fromEventConversion (...) -
    +
    Signature: conversion:(('EventArgs -> unit) -> 'Delegate) -> addHandler:('Delegate -> unit) -> removeHandler:('Delegate -> unit) -> IObservable<'EventArgs>
    Type parameters: 'EventArgs, 'Delegate
    - + @@ -2021,15 +2309,15 @@

    Functions and values

    - + fromEventConversionOn (...) -
    +
    Signature: scheduler:IScheduler -> conversion:(EventHandler<'TEventArgs> -> 'TDelegate) -> addHandler:('TDelegate -> unit) -> removeHandler:('TDelegate -> unit) -> IObservable<EventPattern<'TEventArgs>>
    Type parameters: 'TEventArgs, 'TDelegate
    - + @@ -2043,15 +2331,15 @@

    Functions and values

    - + fromEventGeneric (...) -
    +
    Signature: addHandler:(('TEventArgs -> unit) -> unit) -> removeHandler:(('TEventArgs -> unit) -> unit) -> IObservable<'TEventArgs>
    Type parameters: 'TEventArgs
    - + @@ -2064,15 +2352,15 @@

    Functions and values

    - + fromEventGenericOn (...) -
    - Signature: scheduler:IScheduler -> addHandler:(('TEventArgs -> unit) -> unit) -> removeHandler:(('TEventArgs -> unit) -> unit) -> IObservable<'?8412>
    - Type parameters: 'TEventArgs, '?8412
    +
    + Signature: scheduler:IScheduler -> addHandler:(('TEventArgs -> unit) -> unit) -> removeHandler:(('TEventArgs -> unit) -> unit) -> IObservable<'?8337>
    + Type parameters: 'TEventArgs, '?8337
    - + @@ -2085,15 +2373,15 @@

    Functions and values

    - + fromEventHandler (...) -
    +
    Signature: addHandler:(EventHandler<obj> -> unit) -> removeHandler:(EventHandler<obj> -> unit) -> IObservable<obj>
    Type parameters: 'EventArgs
    - + @@ -2106,15 +2394,15 @@

    Functions and values

    - + fromEventHandlerOn (...) -
    +
    Signature: scheduler:IScheduler -> addHandler:(EventHandler<'EventArgs> -> unit) -> removeHandler:(EventHandler<'EventArgs> -> unit) -> IObservable<EventPattern<'EventArgs>>
    Type parameters: 'EventArgs
    - + @@ -2127,15 +2415,15 @@

    Functions and values

    - + fromEventOn (...) -
    +
    Signature: scheduler:IScheduler -> addHandler:(Action -> unit) -> removeHandler:(Action -> unit) -> IObservable<Unit>
    - + @@ -2148,15 +2436,15 @@

    Functions and values

    - + fromEventPattern eventName target -
    +
    Signature: eventName:string -> target:obj -> IObservable<EventPattern<obj>>
    - + @@ -2168,15 +2456,15 @@

    Functions and values

    - + generate (...) -
    +
    Signature: initialState:'State -> condition:('State -> bool) -> iterator:('State -> 'State) -> resultMap:('State -> 'Result) -> IObservable<'Result>
    Type parameters: 'State, 'Result
    - + @@ -2188,15 +2476,15 @@

    Functions and values

    - + generateOn (...) -
    +
    Signature: scheduler:IScheduler -> initialState:'State -> condition:('State -> bool) -> iterator:('State -> 'State) -> resultMap:('State -> 'TResult) -> IObservable<'TResult>
    Type parameters: 'State, 'TResult
    - + @@ -2208,15 +2496,15 @@

    Functions and values

    - + generateTimed (...) -
    +
    Signature: initialState:'State -> condition:('State -> bool) -> iterate:('State -> 'State) -> resultMap:('State -> 'Result) -> timeSelector:('State -> DateTimeOffset) -> IObservable<'Result>
    Type parameters: 'State, 'Result
    - + @@ -2228,15 +2516,15 @@

    Functions and values

    - + generateTimedOn (...) -
    +
    Signature: scheduler:IScheduler -> initialState:'State -> condition:('State -> bool) -> iterate:('State -> 'State) -> resultMap:('State -> 'Result) -> timeSelector:('State -> DateTimeOffset) -> IObservable<'Result>
    Type parameters: 'State, 'Result
    - + @@ -2249,15 +2537,15 @@

    Functions and values

    - + generateTimeSpan (...) -
    +
    Signature: initialState:'State -> condition:('State -> bool) -> iterate:('State -> 'State) -> resultMap:('State -> 'Result) -> genTime:('State -> TimeSpan) -> IObservable<'Result>
    Type parameters: 'State, 'Result
    - + @@ -2269,15 +2557,15 @@

    Functions and values

    - + generateTimeSpanOn (...) -
    +
    Signature: scheduler:IScheduler -> initialState:'State -> condition:('State -> bool) -> iterate:('State -> 'State) -> resultMap:('State -> 'Result) -> genTime:('State -> TimeSpan) -> IObservable<'Result>
    Type parameters: 'State, 'Result
    - + @@ -2290,15 +2578,15 @@

    Functions and values

    - + getEnumerator source -
    - Signature: source:IObservable<'?8443> -> IEnumerator<'?8443>
    - Type parameters: '?8443
    +
    + Signature: source:IObservable<'?8368> -> IEnumerator<'?8368>
    + Type parameters: '?8368
    - + @@ -2310,15 +2598,15 @@

    Functions and values

    - + groupBy keySelector source -
    +
    Signature: keySelector:('Source -> 'Key) -> source:IObservable<'Source> -> IObservable<IGroupedObservable<'Key,'Source>>
    Type parameters: 'Source, 'Key
    - + @@ -2330,15 +2618,15 @@

    Functions and values

    - + groupByCapacityElement (...) -
    +
    Signature: keySelector:('Source -> 'Key) -> capacity:int -> elementSelector:('Source -> 'Element) -> source:IObservable<'Source> -> IObservable<IGroupedObservable<'Key,'Element>>
    Type parameters: 'Source, 'Key, 'Element
    - + @@ -2351,15 +2639,15 @@

    Functions and values

    - + groupByCompare (...) -
    - Signature: keySelector:('?8448 -> '?8449) -> comparer:IEqualityComparer<'?8449> -> source:IObservable<'?8448> -> IObservable<IGroupedObservable<'?8449,'?8448>>
    - Type parameters: '?8448, '?8449
    +
    + Signature: keySelector:('?8373 -> '?8374) -> comparer:IEqualityComparer<'?8374> -> source:IObservable<'?8373> -> IObservable<IGroupedObservable<'?8374,'?8373>>
    + Type parameters: '?8373, '?8374
    - + @@ -2371,15 +2659,15 @@

    Functions and values

    - + groupByCompareElement (...) -
    +
    Signature: keySelector:('Source -> 'Key) -> comparer:IEqualityComparer<'Key> -> elementSelector:('Source -> 'Element) -> source:IObservable<'Source> -> IObservable<IGroupedObservable<'Key,'Element>>
    Type parameters: 'Source, 'Key, 'Element
    - + @@ -2392,15 +2680,15 @@

    Functions and values

    - + groupByComparerElementUntil (...) -
    +
    Signature: keySelector:('Source -> 'Key) -> comparer:IEqualityComparer<'Key> -> elementSelector:('Source -> 'Element) -> durationSelector:(IGroupedObservable<'Key,'Element> -> IObservable<'TDuration>) -> source:IObservable<'Source> -> IObservable<IGroupedObservable<'Key,'Element>>
    Type parameters: 'Source, 'Key, 'Element, 'TDuration
    - + @@ -2416,15 +2704,15 @@

    Functions and values

    - + groupByComparerUntil (...) -
    +
    Signature: keySelector:('Source -> 'Key) -> comparer:IEqualityComparer<'Key> -> durationSelector:(IGroupedObservable<'Key,'Source> -> IObservable<'TDuration>) -> source:IObservable<'Source> -> IObservable<IGroupedObservable<'Key,'Source>>
    Type parameters: 'Source, 'Key, 'TDuration
    - + @@ -2439,15 +2727,15 @@

    Functions and values

    - + groupByElement (...) -
    +
    Signature: keySelector:('Source -> 'Key) -> elementSelector:('Source -> 'Element) -> source:IObservable<'Source> -> IObservable<IGroupedObservable<'Key,'Element>>
    Type parameters: 'Source, 'Key, 'Element
    - + @@ -2459,15 +2747,15 @@

    Functions and values

    - + groupByElementUntil (...) -
    +
    Signature: keySelector:('Source -> 'Key) -> elementSelector:('Source -> 'Element) -> durationSelector:(IGroupedObservable<'Key,'Element> -> IObservable<'TDuration>) -> source:IObservable<'Source> -> IObservable<IGroupedObservable<'Key,'Element>>
    Type parameters: 'Source, 'Key, 'Element, 'TDuration
    - + @@ -2483,15 +2771,15 @@

    Functions and values

    - + groupByUntil (...) -
    +
    Signature: keySelector:('Source -> 'Key) -> durationSelector:(IGroupedObservable<'Key,'Source> -> IObservable<'TDuration>) -> source:IObservable<'Source> -> IObservable<IGroupedObservable<'Key,'Source>>
    Type parameters: 'Source, 'Key, 'TDuration
    - + @@ -2506,15 +2794,15 @@

    Functions and values

    - + groupJoin (...) -
    +
    Signature: left:IObservable<'Left> -> right:IObservable<'Right> -> leftselect:('Left -> IObservable<'a>) -> rightselect:('Right -> IObservable<'b>) -> resultselect:('Left -> IObservable<'Right> -> 'Result) -> IObservable<'Result>
    Type parameters: 'Left, 'Right, 'a, 'b, 'Result
    - + @@ -2527,15 +2815,15 @@

    Functions and values

    - + guard f source -
    +
    Signature: f:(unit -> unit) -> source:IObservable<'Args> -> IObservable<'Args>
    Type parameters: 'Args
    - + @@ -2549,15 +2837,15 @@

    Functions and values

    - + head obs -
    - Signature: obs:IObservable<'?8489> -> IObservable<'?8489>
    - Type parameters: '?8489
    +
    + Signature: obs:IObservable<'?8414> -> IObservable<'?8414>
    + Type parameters: '?8414
    - + @@ -2569,15 +2857,15 @@

    Functions and values

    - + infinite () -
    - Signature: unit -> IObservable<'?8567>
    - Type parameters: '?8567
    +
    + Signature: unit -> IObservable<'?8506>
    + Type parameters: '?8506
    - + @@ -2590,15 +2878,15 @@

    Functions and values

    - + interval period -
    +
    Signature: period:TimeSpan -> IObservable<int64>
    - + @@ -2610,15 +2898,15 @@

    Functions and values

    - + intervalOn scheduler period -
    +
    Signature: scheduler:IScheduler -> period:TimeSpan -> IObservable<int64>
    - + @@ -2630,15 +2918,15 @@

    Functions and values

    - + isEmpty source -
    - Signature: source:IObservable<'?8493> -> IObservable<bool>
    - Type parameters: '?8493
    +
    + Signature: source:IObservable<'?8418> -> IObservable<bool>
    + Type parameters: '?8418
    - + @@ -2651,15 +2939,15 @@

    Functions and values

    - + iter onNext source -
    +
    Signature: onNext:('Source -> unit) -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -2673,15 +2961,15 @@

    Functions and values

    - + iterEnd onNext onCompleted source -
    +
    Signature: onNext:('Source -> unit) -> onCompleted:(unit -> unit) -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -2696,15 +2984,15 @@

    Functions and values

    - + iterError onNext onError source -
    +
    Signature: onNext:('Source -> unit) -> onError:(exn -> unit) -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -2719,15 +3007,15 @@

    Functions and values

    - + iterErrorEnd (...) -
    +
    Signature: onNext:('Source -> unit) -> onError:(exn -> unit) -> onCompleted:(unit -> unit) -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -2742,15 +3030,15 @@

    Functions and values

    - + iterObserver observer source -
    +
    Signature: observer:IObserver<'Source> -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -2764,15 +3052,55 @@

    Functions and values

    - + + join right f left + +
    + Signature: right:IObservable<'?8430> -> f:('?8431 -> '?8430 -> '?8432) -> left:IObservable<'?8431> -> IObservable<'?8432>
    + Type parameters: '?8430, '?8431, '?8432
    + + + + + + +

    Correlates the elements of two sequences based on overlapping durations.

    + + + + + + + + + joinMap right fLeft fRight fResult left + +
    + Signature: right:IObservable<'?8434> -> fLeft:('?8435 -> IObservable<'?8436>) -> fRight:('?8434 -> IObservable<'?8437>) -> fResult:('?8435 -> '?8434 -> '?8438) -> left:IObservable<'?8435> -> IObservable<'?8438>
    + Type parameters: '?8434, '?8435, '?8436, '?8437, '?8438
    + + + + + + +

    Correlates the elements of two sequences based on overlapping durations.

    + + + + + + + + joinWhen plans -
    +
    Signature: plans:seq<Plan<'T>> -> IObservable<'T>
    Type parameters: 'T
    - + @@ -2784,15 +3112,15 @@

    Functions and values

    - + last source -
    +
    Signature: source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -2804,15 +3132,15 @@

    Functions and values

    - + lastIf predicate source -
    +
    Signature: predicate:('Source -> bool) -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -2824,15 +3152,15 @@

    Functions and values

    - + latest source -
    - Signature: source:IObservable<'?8511> -> IEnumerable<'?8511>
    - Type parameters: '?8511
    +
    + Signature: source:IObservable<'?8446> -> IEnumerable<'?8446>
    + Type parameters: '?8446
    - + @@ -2846,15 +3174,15 @@

    Functions and values

    - + liftAsync asyncOperation -
    - Signature: asyncOperation:('?8393 -> Async<'?8394>) -> '?8393 -> IObservable<'?8394>
    - Type parameters: '?8393, '?8394
    +
    + Signature: asyncOperation:('?8318 -> Async<'?8319>) -> '?8318 -> IObservable<'?8319>
    + Type parameters: '?8318, '?8319
    - + @@ -2866,15 +3194,55 @@

    Functions and values

    - + + log prefix source + +
    + Signature: prefix:string -> source:IObservable<'?8532> -> IObservable<'?8532>
    + Type parameters: '?8532
    + + + + + + +

    Logs the incoming emits with a given prefix to the console.

    + + + + + + + + + logTo prefix f source + +
    + Signature: prefix:string -> f:(string -> unit) -> source:IObservable<'?8530> -> IObservable<'?8530>
    + Type parameters: '?8530
    + + + + + + +

    Logs the incoming emits with a given prefix to a specified target.

    + + + + + + + + longCount source -
    - Signature: source:IObservable<'?8513> -> IObservable<int64>
    - Type parameters: '?8513
    +
    + Signature: source:IObservable<'?8448> -> IObservable<int64>
    + Type parameters: '?8448
    - + @@ -2887,15 +3255,15 @@

    Functions and values

    - + longCountSatisfy predicate source -
    - Signature: predicate:('?8515 -> bool) -> source:IObservable<'?8515> -> IObservable<int64>
    - Type parameters: '?8515
    +
    + Signature: predicate:('?8450 -> bool) -> source:IObservable<'?8450> -> IObservable<int64>
    + Type parameters: '?8450
    - + @@ -2908,15 +3276,15 @@

    Functions and values

    - + map f source -
    - Signature: f:('?8517 -> '?8518) -> source:IObservable<'?8517> -> IObservable<'?8518>
    - Type parameters: '?8517, '?8518
    +
    + Signature: f:('?8452 -> '?8453) -> source:IObservable<'?8452> -> IObservable<'?8453>
    + Type parameters: '?8452, '?8453
    - + @@ -2928,15 +3296,15 @@

    Functions and values

    - + map2 f a b -
    - Signature: f:IObservable<('?8523 -> '?8524 -> '?8525)> -> a:IObservable<'?8523> -> b:IObservable<'?8524> -> IObservable<'?8525>
    - Type parameters: '?8523, '?8524, '?8525
    +
    + Signature: f:IObservable<('?8458 -> '?8459 -> '?8460)> -> a:IObservable<'?8458> -> b:IObservable<'?8459> -> IObservable<'?8460>
    + Type parameters: '?8458, '?8459, '?8460
    - + @@ -2948,15 +3316,36 @@

    Functions and values

    - + + mapFold f init source + +
    + Signature: f:('TState -> 'T -> 'TResult * 'TState) -> init:'TState -> source:IObservable<'T> -> IObservable<'TResult list * 'TState>
    + Type parameters: 'TState, 'T, 'TResult
    + + + + + + +

    Combines 'map' and 'fold'. Builds an observable whose emits are the result of applying the given function to each of the emits of the source observable. +The function is also used to accumulate a final value.

    + + + + + + + + mapi f source -
    +
    Signature: f:(int -> 'Source -> 'Result) -> source:IObservable<'Source> -> IObservable<'Result>
    Type parameters: 'Source, 'Result
    - + @@ -2969,15 +3358,15 @@

    Functions and values

    - + mapTo x source -
    - Signature: x:'?8527 -> source:IObservable<'T> -> IObservable<'?8527>
    - Type parameters: '?8527, 'T
    +
    + Signature: x:'?8466 -> source:IObservable<'T> -> IObservable<'?8466>
    + Type parameters: '?8466, 'T
    - + @@ -2989,15 +3378,15 @@

    Functions and values

    - + mapToLazy xLazy source -
    +
    Signature: xLazy:Lazy<'T> -> source:IObservable<'T> -> IObservable<'T>
    Type parameters: 'T
    - + @@ -3009,15 +3398,15 @@

    Functions and values

    - + materialize source -
    - Signature: source:IObservable<'?8532> -> IObservable<Notification<'?8532>>
    - Type parameters: '?8532
    +
    + Signature: source:IObservable<'?8471> -> IObservable<Notification<'?8471>>
    + Type parameters: '?8471
    - + @@ -3030,15 +3419,15 @@

    Functions and values

    - + maxOf source -
    +
    Signature: source:IObservable<'T> -> IObservable<'T>
    Type parameters: 'T
    - + @@ -3050,15 +3439,15 @@

    Functions and values

    - + merge second first -
    +
    Signature: second:IObservable<'T> -> first:IObservable<'T> -> IObservable<'T>
    Type parameters: 'T
    - + @@ -3070,15 +3459,15 @@

    Functions and values

    - + mergeArray sources -
    +
    Signature: sources:IObservable<'T> [] -> IObservable<'T>
    Type parameters: 'T
    - + @@ -3090,15 +3479,15 @@

    Functions and values

    - + mergeArrayOn scheduler sources -
    +
    Signature: scheduler:IScheduler -> sources:IObservable<'T> [] -> IObservable<'T>
    Type parameters: 'T
    - + @@ -3111,15 +3500,15 @@

    Functions and values

    - + mergeInner sources -
    +
    Signature: sources:IObservable<IObservable<'T>> -> IObservable<'T>
    Type parameters: 'T
    - + @@ -3132,15 +3521,15 @@

    Functions and values

    - + mergeInnerMax maxConcurrent sources -
    +
    Signature: maxConcurrent:int -> sources:IObservable<IObservable<'T>> -> IObservable<'T>
    Type parameters: 'T
    - + @@ -3154,15 +3543,15 @@

    Functions and values

    - + mergeOn scheduler second first -
    +
    Signature: scheduler:IScheduler -> second:IObservable<'T> -> first:IObservable<'T> -> IObservable<'T>
    Type parameters: 'T
    - + @@ -3174,15 +3563,15 @@

    Functions and values

    - + mergeSeq sources -
    +
    Signature: sources:seq<IObservable<'T>> -> IObservable<'T>
    Type parameters: 'T
    - + @@ -3194,15 +3583,15 @@

    Functions and values

    - + mergeSeqMax maxConcurrent sources -
    +
    Signature: maxConcurrent:int -> sources:seq<IObservable<'T>> -> IObservable<'T>
    Type parameters: 'T
    - + @@ -3215,15 +3604,15 @@

    Functions and values

    - + mergeSeqMaxOn (...) -
    +
    Signature: scheduler:IScheduler -> maxConcurrent:int -> sources:seq<IObservable<'T>> -> IObservable<'T>
    Type parameters: 'T
    - + @@ -3237,15 +3626,15 @@

    Functions and values

    - + mergeSeqOn scheduler sources -
    +
    Signature: scheduler:IScheduler -> sources:seq<IObservable<'T>> -> IObservable<'T>
    Type parameters: 'T
    - + @@ -3258,15 +3647,15 @@

    Functions and values

    - + mergeTasks sources -
    +
    Signature: sources:IObservable<Task<'T>> -> IObservable<'T>
    Type parameters: 'T
    - + @@ -3278,15 +3667,15 @@

    Functions and values

    - + mostRecent initialVal source -
    - Signature: initialVal:'?8558 -> source:IObservable<'?8558> -> IEnumerable<'?8558>
    - Type parameters: '?8558
    +
    + Signature: initialVal:'?8497 -> source:IObservable<'?8497> -> IEnumerable<'?8497>
    + Type parameters: '?8497
    - + @@ -3300,15 +3689,15 @@

    Functions and values

    - + multicast subject source -
    - Signature: subject:ISubject<'?8560,'?8561> -> source:IObservable<'?8560> -> IConnectableObservable<'?8561>
    - Type parameters: '?8560, '?8561
    +
    + Signature: subject:ISubject<'?8499,'?8500> -> source:IObservable<'?8499> -> IConnectableObservable<'?8500>
    + Type parameters: '?8499, '?8500
    - + @@ -3324,15 +3713,15 @@

    Functions and values

    - + multicastMap (...) -
    - Signature: subjectSelector:(unit -> ISubject<'?8563,'?8564>) -> selector:(IObservable<'?8564> -> IObservable<'?8565>) -> source:IObservable<'?8563> -> IObservable<'?8565>
    - Type parameters: '?8563, '?8564, '?8565
    +
    + Signature: subjectSelector:(unit -> ISubject<'?8502,'?8503>) -> selector:(IObservable<'?8503> -> IObservable<'?8504>) -> source:IObservable<'?8502> -> IObservable<'?8504>
    + Type parameters: '?8502, '?8503, '?8504
    - + @@ -3348,15 +3737,15 @@

    Functions and values

    - + neverWitness witness -
    - Signature: witness:'?8569 -> IObservable<'?8569>
    - Type parameters: '?8569
    +
    + Signature: witness:'?8508 -> IObservable<'?8508>
    + Type parameters: '?8508
    - + @@ -3369,15 +3758,15 @@

    Functions and values

    - + next source -
    - Signature: source:IObservable<'?8571> -> IEnumerable<'?8571>
    - Type parameters: '?8571
    +
    + Signature: source:IObservable<'?8510> -> IEnumerable<'?8510>
    + Type parameters: '?8510
    - + @@ -3392,15 +3781,15 @@

    Functions and values

    - + observeOn scheduler source -
    - Signature: scheduler:IScheduler -> source:IObservable<'?8577> -> IObservable<'?8577>
    - Type parameters: '?8577
    +
    + Signature: scheduler:IScheduler -> source:IObservable<'?8516> -> IObservable<'?8516>
    + Type parameters: '?8516
    - + @@ -3412,15 +3801,15 @@

    Functions and values

    - + observeOnContext context source -
    - Signature: context:SynchronizationContext -> source:IObservable<'?8579> -> IObservable<'?8579>
    - Type parameters: '?8579
    +
    + Signature: context:SynchronizationContext -> source:IObservable<'?8518> -> IObservable<'?8518>
    + Type parameters: '?8518
    - + @@ -3433,15 +3822,15 @@

    Functions and values

    - + ofAsync asyncOperation -
    - Signature: asyncOperation:Async<'?8391> -> IObservable<'?8391>
    - Type parameters: '?8391
    +
    + Signature: asyncOperation:Async<'?8316> -> IObservable<'?8316>
    + Type parameters: '?8316
    - + @@ -3453,15 +3842,15 @@

    Functions and values

    - + ofSeq items -
    +
    Signature: items:seq<'Item> -> IObservable<'Item>
    Type parameters: 'Item
    - + @@ -3473,15 +3862,15 @@

    Functions and values

    - + ofSeqOn scheduler items -
    +
    Signature: scheduler:IScheduler -> items:seq<'Item> -> IObservable<'Item>
    Type parameters: 'Item
    - + @@ -3493,15 +3882,15 @@

    Functions and values

    - + ofType source -
    - Signature: source:IObservable<obj> -> IObservable<'?8581>
    - Type parameters: '?8581
    +
    + Signature: source:IObservable<obj> -> IObservable<'?8520>
    + Type parameters: '?8520
    - + @@ -3513,15 +3902,15 @@

    Functions and values

    - + onErrorConcat second first -
    +
    Signature: second:IObservable<'Source> -> first:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -3534,15 +3923,15 @@

    Functions and values

    - + onErrorConcatArray sources -
    +
    Signature: sources:IObservable<'Source> [] -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -3554,15 +3943,15 @@

    Functions and values

    - + onErrorConcatSeq sources -
    +
    Signature: sources:seq<IObservable<'Source>> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -3575,15 +3964,15 @@

    Functions and values

    - + perform f source -
    - Signature: f:('?8589 -> unit) -> source:IObservable<'?8589> -> IObservable<'?8589>
    - Type parameters: '?8589
    +
    + Signature: f:('?8528 -> unit) -> source:IObservable<'?8528> -> IObservable<'?8528>
    + Type parameters: '?8528
    - + @@ -3595,15 +3984,15 @@

    Functions and values

    - + performFinally f source -
    - Signature: f:(unit -> unit) -> source:IObservable<'?8591> -> IObservable<'?8591>
    - Type parameters: '?8591
    +
    + Signature: f:(unit -> unit) -> source:IObservable<'?8534> -> IObservable<'?8534>
    + Type parameters: '?8534
    - + @@ -3615,15 +4004,65 @@

    Functions and values

    - + + poll period source + +
    + Signature: period:DateTimeOffset -> source:IObservable<Result<'?8886,'?8887>> -> IObservable<Result<'?8886,'?8887>>
    + Type parameters: '?8886, '?8887
    + + + + + + +

    Description +Periodically repeats the observable sequence exposing a responses or failures. +Using the Scheduler.Default on which the polling period should run.

    +

    Parameters +- period - Accepts the period in which the polling should happen. +- source - The source observable on which the polling happen.

    + + + + + + + + + pollOn sch period source + +
    + Signature: sch:IScheduler -> period:DateTimeOffset -> source:IObservable<Result<'?8883,'?8884>> -> IObservable<Result<'?8883,'?8884>>
    + Type parameters: '?8883, '?8884
    + + + + + + +

    Description +Periodically repeats the observable sequence exposing a responses or failures.

    +

    Parameters +- sch - Accepts the scheduler on which the polling period should be run. +- period - Accepts the period in which the polling should happen. +- source - The source observable on which the polling happen.

    + + + + + + + + publish source -
    - Signature: source:IObservable<'?8593> -> IConnectableObservable<'?8593>
    - Type parameters: '?8593
    +
    + Signature: source:IObservable<'?8536> -> IConnectableObservable<'?8536>
    + Type parameters: '?8536
    - + @@ -3637,15 +4076,15 @@

    Functions and values

    - + publishInitial initial source -
    +
    Signature: initial:'Source -> source:IObservable<'Source> -> IConnectableObservable<'Source>
    Type parameters: 'Source
    - + @@ -3659,15 +4098,15 @@

    Functions and values

    - + publishInitialMap initial map source -
    +
    Signature: initial:'Source -> map:(IObservable<'Source> -> IObservable<'Result>) -> source:IObservable<'Source> -> IObservable<'Result>
    Type parameters: 'Source, 'Result
    - + @@ -3682,15 +4121,15 @@

    Functions and values

    - + publishLast source -
    - Signature: source:IObservable<'?8603> -> IConnectableObservable<'?8603>
    - Type parameters: '?8603
    +
    + Signature: source:IObservable<'?8546> -> IConnectableObservable<'?8546>
    + Type parameters: '?8546
    - + @@ -3705,15 +4144,15 @@

    Functions and values

    - + publishLastMap map source -
    +
    Signature: map:(IObservable<'Source> -> IObservable<'Result>) -> source:IObservable<'Source> -> IObservable<'Result>
    Type parameters: 'Source, 'Result
    - + @@ -3728,15 +4167,15 @@

    Functions and values

    - + publishMap map source -
    +
    Signature: map:(IObservable<'Source> -> IObservable<'Result>) -> source:IObservable<'Source> -> IObservable<'Result>
    Type parameters: 'Source, 'Result
    - + @@ -3751,15 +4190,15 @@

    Functions and values

    - + range start count -
    +
    Signature: start:int -> count:int -> IObservable<int>
    - + @@ -3771,15 +4210,15 @@

    Functions and values

    - + rangeOn scheduler start count -
    +
    Signature: scheduler:IScheduler -> start:int -> count:int -> IObservable<int>
    - + @@ -3791,15 +4230,15 @@

    Functions and values

    - + reduce f source -
    - Signature: f:('?8610 -> '?8610 -> '?8610) -> source:IObservable<'?8610> -> IObservable<'?8610>
    - Type parameters: '?8610
    +
    + Signature: f:('?8553 -> '?8553 -> '?8553) -> source:IObservable<'?8553> -> IObservable<'?8553>
    + Type parameters: '?8553
    - + @@ -3811,15 +4250,15 @@

    Functions and values

    - + refCount source -
    - Signature: source:IConnectableObservable<'?8612> -> IObservable<'?8612>
    - Type parameters: '?8612
    +
    + Signature: source:IConnectableObservable<'?8555> -> IObservable<'?8555>
    + Type parameters: '?8555
    - + @@ -3833,15 +4272,15 @@

    Functions and values

    - + repeat source -
    +
    Signature: source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -3853,15 +4292,15 @@

    Functions and values

    - + repeatCount repeatCount value -
    +
    Signature: repeatCount:int -> value:'Result -> IObservable<'Result>
    Type parameters: 'Result
    - + @@ -3873,15 +4312,15 @@

    Functions and values

    - + repeatValue value -
    +
    Signature: value:'Result -> IObservable<'Result>
    Type parameters: 'Result
    - + @@ -3893,15 +4332,15 @@

    Functions and values

    - + repeatWhile condition source -
    +
    Signature: condition:(unit -> bool) -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -3914,15 +4353,15 @@

    Functions and values

    - + replay source -
    +
    Signature: source:IObservable<'Source> -> IConnectableObservable<'Source>
    Type parameters: 'Source
    - + @@ -3935,15 +4374,15 @@

    Functions and values

    - + replayBuffer bufferSize source -
    +
    Signature: bufferSize:int -> source:IObservable<'Source> -> IConnectableObservable<'Source>
    Type parameters: 'Source
    - + @@ -3956,15 +4395,15 @@

    Functions and values

    - + replayBufferWindow (...) -
    +
    Signature: bufferSize:int -> window:TimeSpan -> source:IObservable<'Source> -> IConnectableObservable<'Source>
    Type parameters: 'Source
    - + @@ -3976,15 +4415,15 @@

    Functions and values

    - + replayBufferWindowOn (...) -
    +
    Signature: scheduler:IScheduler -> bufferSize:int -> window:TimeSpan -> source:IObservable<'Source> -> IConnectableObservable<'Source>
    Type parameters: 'Source
    - + @@ -3996,15 +4435,15 @@

    Functions and values

    - + replayMap map source -
    +
    Signature: map:(IObservable<'Source> -> IObservable<'Result>) -> source:IObservable<'Source> -> IObservable<'Result>
    Type parameters: 'Source, 'Result
    - + @@ -4017,15 +4456,15 @@

    Functions and values

    - + replayMapBuffer map bufferSize source -
    +
    Signature: map:(IObservable<'Source> -> IObservable<'Result>) -> bufferSize:int -> source:IObservable<'Source> -> IObservable<'Result>
    Type parameters: 'Source, 'Result
    - + @@ -4039,15 +4478,15 @@

    Functions and values

    - + replayMapBufferWindow (...) -
    +
    Signature: map:(IObservable<'Source> -> IObservable<'Result>) -> bufferSize:int -> window:TimeSpan -> source:IObservable<'Source> -> IObservable<'Result>
    Type parameters: 'Source, 'Result
    - + @@ -4061,15 +4500,15 @@

    Functions and values

    - + replayMapBufferWindowOn (...) -
    +
    Signature: scheduler:IScheduler -> map:(IObservable<'Source> -> IObservable<'Result>) -> bufferSize:int -> window:TimeSpan -> source:IObservable<'Source> -> IObservable<'Result>
    Type parameters: 'Source, 'Result
    - + @@ -4083,15 +4522,15 @@

    Functions and values

    - + replayMapWindow map window source -
    +
    Signature: map:(IObservable<'Source> -> IObservable<'Result>) -> window:TimeSpan -> source:IObservable<'Source> -> IObservable<'Result>
    Type parameters: 'Source, 'Result
    - + @@ -4105,15 +4544,15 @@

    Functions and values

    - + replayMapWindowOn (...) -
    +
    Signature: scheduler:IScheduler -> map:(IObservable<'Source> -> IObservable<'Result>) -> window:TimeSpan -> source:IObservable<'Source> -> IObservable<'Result>
    Type parameters: 'Source, 'Result
    - + @@ -4127,15 +4566,36 @@

    Functions and values

    - + + replayOn sch source + +
    + Signature: sch:IScheduler -> source:IObservable<'?8567> -> IConnectableObservable<'?8567>
    + Type parameters: '?8567
    + + + + + + +

    Returns a connectable observable sequence that shares a single subscription to the +underlying sequence replaying all notifications.

    + + + + + + + + replayWindow window source -
    +
    Signature: window:TimeSpan -> source:IObservable<'Source> -> IConnectableObservable<'Source>
    Type parameters: 'Source
    - + @@ -4148,15 +4608,15 @@

    Functions and values

    - + replayWindowOn scheduler window source -
    +
    Signature: scheduler:IScheduler -> window:TimeSpan -> source:IObservable<'Source> -> IConnectableObservable<'Source>
    Type parameters: 'Source
    - + @@ -4169,15 +4629,15 @@

    Functions and values

    - + result x -
    - Signature: x:'?8656 -> IObservable<'?8656>
    - Type parameters: '?8656
    +
    + Signature: x:'?8601 -> IObservable<'?8601>
    + Type parameters: '?8601
    - + @@ -4187,15 +4647,15 @@

    Functions and values

    - + retry source -
    +
    Signature: source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -4207,15 +4667,15 @@

    Functions and values

    - + retryCount count source -
    +
    Signature: count:int -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -4227,15 +4687,15 @@

    Functions and values

    - + sample interval source -
    - Signature: interval:TimeSpan -> source:IObservable<'?8658> -> IObservable<'?8658>
    - Type parameters: '?8658
    +
    + Signature: interval:TimeSpan -> source:IObservable<'?8603> -> IObservable<'?8603>
    + Type parameters: '?8603
    - + @@ -4247,15 +4707,15 @@

    Functions and values

    - + sampleOn scheduler interval source -
    - Signature: scheduler:IScheduler -> interval:TimeSpan -> source:IObservable<'?8660> -> IObservable<'?8660>
    - Type parameters: '?8660
    +
    + Signature: scheduler:IScheduler -> interval:TimeSpan -> source:IObservable<'?8605> -> IObservable<'?8605>
    + Type parameters: '?8605
    - + @@ -4269,15 +4729,15 @@

    Functions and values

    - + sampleWith sampler source -
    +
    Signature: sampler:IObservable<'Sample> -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Sample, 'Source
    - + @@ -4291,15 +4751,15 @@

    Functions and values

    - + scan accumulator source -
    +
    Signature: accumulator:('a -> 'a -> 'a) -> source:IObservable<'a> -> IObservable<'a>
    Type parameters: 'a
    - + @@ -4311,15 +4771,15 @@

    Functions and values

    - + scanInit init accumulator source -
    +
    Signature: init:'TAccumulate -> accumulator:('TAccumulate -> 'Source -> 'TAccumulate) -> source:IObservable<'Source> -> IObservable<'TAccumulate>
    Type parameters: 'TAccumulate, 'Source
    - + @@ -4332,15 +4792,15 @@

    Functions and values

    - + selectIf condition thenSource -
    - Signature: condition:(unit -> bool) -> thenSource:IObservable<'?8670> -> IObservable<'?8670>
    - Type parameters: '?8670
    +
    + Signature: condition:(unit -> bool) -> thenSource:IObservable<'?8615> -> IObservable<'?8615>
    + Type parameters: '?8615
    - + @@ -4352,15 +4812,15 @@

    Functions and values

    - + selectIfElse (...) -
    +
    Signature: condition:(unit -> bool) -> elseSource:IObservable<'Result> -> thenSource:IObservable<'Result> -> IObservable<'Result>
    Type parameters: 'Result
    - + @@ -4372,15 +4832,15 @@

    Functions and values

    - + selectIfOn (...) -
    - Signature: scheduler:IScheduler -> condition:(unit -> bool) -> thenSource:IObservable<'?8672> -> IObservable<'?8672>
    - Type parameters: '?8672
    +
    + Signature: scheduler:IScheduler -> condition:(unit -> bool) -> thenSource:IObservable<'?8617> -> IObservable<'?8617>
    + Type parameters: '?8617
    - + @@ -4393,15 +4853,122 @@

    Functions and values

    - + + serve max sourceFactory + +
    + Signature: max:int -> sourceFactory:(unit -> '?8913) -> IObservable<'?8914>
    + Type parameters: '?8913, '?8914
    + + + + + + +

    Description +Concurrently invokes the specified factory to create observables as fast and often as possible and subscribes to all of them +up to the default maximum concurrency.

    +

    Parameters +- max - The maximum number of observables to be subscribed simultaneously. +- sourceFactory - Function that returns the observable to invoke concurrently.

    + + + + + + + + + serveCustomOn (...) + +
    + Signature: sch:IScheduler -> max:int -> callOnError:(exn -> bool) -> sourceFactory:(unit -> '?8907) -> IObservable<'?8908>
    + Type parameters: '?8907, '?8908
    + + + + + + +

    Description +Concurrently invokes the specified factory to create observables as fast and often as possible and subscribes to all of them +up to the default maximum concurrency.

    +

    Parameters +- sch - The scheduler on which the invocation should happen. +- max - The maximum number of observables to be subscribed simultaneously. +- callOnError - Function to determine whether or not the given exception should call the OnError. +- sourceFactory - Function that returns the observable to invoke concurrently.

    + + + + + + + + + serveGateCustomOn (...) + +
    + Signature: sch:IScheduler -> gate:'?8903 -> max:int -> callOnError:(exn -> bool) -> sourceFactory:(unit -> '?8904) -> IObservable<'?8905>
    + Type parameters: '?8903, '?8904, '?8905
    + + + + + + +

    Description +Concurrently invokes the specified factory to create observables as fast and often as possible and subscribes to all of them +up to the default maximum concurrency.

    +

    Parameters +- sch - The scheduler on which the invocation should happen. +- gate - Common gate on which the synchronization should happen. +- max - The maximum number of observables to be subscribed simultaneously. +- callOnError - Function to determine whether or not the given exception should call the OnError. +- sourceFactory - Function that returns the observable to invoke concurrently.

    + + + + + + + + + serveOn sch max sourceFactory + +
    + Signature: sch:IScheduler -> max:int -> sourceFactory:(unit -> '?8910) -> IObservable<'?8911>
    + Type parameters: '?8910, '?8911
    + + + + + + +

    Description +Concurrently invokes the specified factory to create observables as fast and often as possible and subscribes to all of them +up to the default maximum concurrency.

    +

    Parameters +- sch - The scheduler on which the invocation should happen. +- gate - Common gate on which the synchronization should happen. +- max - The maximum number of observables to be subscribed simultaneously. +- sourceFactory - Function that returns the observable to invoke concurrently.

    + + + + + + + + single value -
    +
    Signature: value:'Result -> IObservable<'Result>
    Type parameters: 'Result
    - + @@ -4413,15 +4980,15 @@

    Functions and values

    - + singleOn scheduler value -
    - Signature: scheduler:IScheduler -> value:'?8678 -> IObservable<'?8678>
    - Type parameters: '?8678
    +
    + Signature: scheduler:IScheduler -> value:'?8623 -> IObservable<'?8623>
    + Type parameters: '?8623
    - + @@ -4434,15 +5001,15 @@

    Functions and values

    - + skip count source -
    +
    Signature: count:int -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -4454,15 +5021,15 @@

    Functions and values

    - + skipLast count source -
    +
    Signature: count:int -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -4474,15 +5041,15 @@

    Functions and values

    - + skipLastSpan duration source -
    +
    Signature: duration:TimeSpan -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -4494,15 +5061,15 @@

    Functions and values

    - + skipLastSpanOn scheduler duration source -
    - Signature: scheduler:IScheduler -> duration:TimeSpan -> source:IObservable<'?8690> -> IObservable<'?8690>
    - Type parameters: '?8690
    +
    + Signature: scheduler:IScheduler -> duration:TimeSpan -> source:IObservable<'?8635> -> IObservable<'?8635>
    + Type parameters: '?8635
    - + @@ -4515,15 +5082,15 @@

    Functions and values

    - + skipSpan duration source -
    +
    Signature: duration:TimeSpan -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -4535,15 +5102,15 @@

    Functions and values

    - + skipSpanOn scheduler duration source -
    - Signature: scheduler:IScheduler -> duration:TimeSpan -> source:IObservable<'?8684> -> IObservable<'?8684>
    - Type parameters: '?8684
    +
    + Signature: scheduler:IScheduler -> duration:TimeSpan -> source:IObservable<'?8629> -> IObservable<'?8629>
    + Type parameters: '?8629
    - + @@ -4556,15 +5123,15 @@

    Functions and values

    - + skipUntil startTime source -
    +
    Signature: startTime:DateTimeOffset -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -4576,15 +5143,15 @@

    Functions and values

    - + skipUntilOn scheduler startTime source -
    - Signature: scheduler:IScheduler -> startTime:DateTimeOffset -> source:IObservable<'?8694> -> IObservable<'?8694>
    - Type parameters: '?8694
    +
    + Signature: scheduler:IScheduler -> startTime:DateTimeOffset -> source:IObservable<'?8639> -> IObservable<'?8639>
    + Type parameters: '?8639
    - + @@ -4597,15 +5164,15 @@

    Functions and values

    - + skipUntilOther other source -
    +
    Signature: other:IObservable<'Other> -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Other, 'Source
    - + @@ -4617,15 +5184,15 @@

    Functions and values

    - + skipWhile predicate source -
    +
    Signature: predicate:('Source -> bool) -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -4637,15 +5204,15 @@

    Functions and values

    - + skipWhilei predicate source -
    +
    Signature: predicate:('Source -> int -> bool) -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -4658,15 +5225,15 @@

    Functions and values

    - + startWith values source -
    - Signature: values:'?8703 -> source:IObservable<'T> -> IObservable<'T>
    - Type parameters: '?8703, 'T
    +
    + Signature: values:'?8648 -> source:IObservable<'T> -> IObservable<'T>
    + Type parameters: '?8648, 'T
    - + @@ -4678,15 +5245,15 @@

    Functions and values

    - + startWithOn scheduler values source -
    - Signature: scheduler:IScheduler -> values:'?8706 -> source:IObservable<'T> -> IObservable<'T>
    - Type parameters: '?8706, 'T
    +
    + Signature: scheduler:IScheduler -> values:'?8651 -> source:IObservable<'T> -> IObservable<'T>
    + Type parameters: '?8651, 'T
    - + @@ -4698,15 +5265,15 @@

    Functions and values

    - + subscribe onNext observable -
    +
    Signature: onNext:('T -> unit) -> observable:IObservable<'T> -> IDisposable
    Type parameters: 'T
    - + @@ -4718,15 +5285,15 @@

    Functions and values

    - + subscribeObserver observer observable -
    +
    Signature: observer:IObserver<'T> -> observable:IObservable<'T> -> IDisposable
    Type parameters: 'T
    - + @@ -4738,15 +5305,15 @@

    Functions and values

    - + subscribeOn scheduler source -
    +
    Signature: scheduler:IScheduler -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -4761,15 +5328,15 @@

    Functions and values

    - + subscribeOnContext context source -
    +
    Signature: context:SynchronizationContext -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -4784,15 +5351,120 @@

    Functions and values

    - + + subscribeSafe onNext source + +
    + Signature: onNext:('?8668 -> unit) -> source:IObservable<'?8668> -> IDisposable
    + Type parameters: '?8668
    + + + + + + +

    Subscribes to the specified source, re-routing synchronous exceptions during invocation of the +Subscribe function to the observer's 'OnError channel. This function is typically used to write query operators.

    + + + + + + + + + subscribeSafeObserver observer source + +
    + Signature: observer:IObserver<'?8675> -> source:IObservable<'?8675> -> IDisposable
    + Type parameters: '?8675
    + + + + + + +

    Subscribes to the specified source, re-routing synchronous exceptions during invocation of the +Subscribe function to the observer's 'OnError channel. This function is typically used to write query operators.

    + + + + + + + + + subscribeSafeWithCallbacks (...) + +
    + Signature: onNext:('?8677 -> unit) -> onError:(exn -> unit) -> onCompleted:(unit -> unit) -> source:IObservable<'?8677> -> IDisposable
    + Type parameters: '?8677
    + + + + + + +

    Subscribes to the specified source, re-routing synchronous exceptions during invocation of the +Subscribe function to the observer's 'OnError channel. This function is typically used to write query operators.

    + + + + + + + + + subscribeSafeWithCompletion (...) + +
    + Signature: onNext:('?8672 -> unit) -> onCompleted:'?8673 -> source:IObservable<'?8672> -> IDisposable
    + Type parameters: '?8672, '?8673
    + + + + + + +

    Subscribes to the specified source, re-routing synchronous exceptions during invocation of the +Subscribe function to the observer's 'OnError channel. This function is typically used to write query operators.

    + + + + + + + + + subscribeSafeWithError (...) + +
    + Signature: onNext:('?8670 -> unit) -> onError:(exn -> unit) -> source:IObservable<'?8670> -> IDisposable
    + Type parameters: '?8670
    + + + + + + +

    Subscribes to the specified source, re-routing synchronous exceptions during invocation of the +Subscribe function to the observer's 'OnError channel. This function is typically used to write query operators.

    + + + + + + + + subscribeWithCallbacks (...) -
    +
    Signature: onNext:('T -> unit) -> onError:(exn -> unit) -> onCompleted:(unit -> unit) -> observable:IObservable<'T> -> IDisposable
    Type parameters: 'T
    - + @@ -4804,15 +5476,15 @@

    Functions and values

    - + subscribeWithCompletion (...) -
    +
    Signature: onNext:('T -> unit) -> onCompleted:(unit -> unit) -> observable:IObservable<'T> -> IDisposable
    Type parameters: 'T
    - + @@ -4824,15 +5496,15 @@

    Functions and values

    - + subscribeWithError (...) -
    +
    Signature: onNext:('T -> unit) -> onError:(exn -> unit) -> observable:IObservable<'T> -> IDisposable
    Type parameters: 'T
    - + @@ -4844,15 +5516,15 @@

    Functions and values

    - + switch sources -
    +
    Signature: sources:IObservable<IObservable<'Source>> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -4867,15 +5539,68 @@

    Functions and values

    - + + switchAsync sources + +
    + Signature: sources:IObservable<Async<'?8683>> -> IObservable<'?8683>
    + Type parameters: '?8683
    + + + + + + +

    Transforms an observable sequence of tasks into an observable sequence +producing values only from the most recent observable sequence. +Each time a new task is received, the previous task's result is ignored.

    + + + + + + + + + switchMap f source + +
    + Signature: f:('?8892 -> '?8893) -> source:IObservable<'?8892> -> IObservable<'?8894>
    + Type parameters: '?8892, '?8893, '?8894
    + + + + + + +

    Description +Projects each source value to an Observable which is merged in the output +Observable, emitting values only from the most recently projected Observable.

    +

    Returns +Returns an Observable that emits items based on applying a function that you +supply to each item emitted by the source Observable, where that function +returns an (so-called "inner") Observable. Each time it observes one of these +inner Observables, the output Observable begins emitting the items emitted by +that inner Observable. When a new inner Observable is emitted, switchMap +stops emitting items from the earlier-emitted inner Observable and begins +emitting items from the new one. It continues to behave like this for +subsequent inner Observables.

    + + + + + + + + switchTask sources -
    +
    Signature: sources:IObservable<Task<'Source>> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -4889,15 +5614,15 @@

    Functions and values

    - + synchronize source -
    +
    Signature: source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -4911,15 +5636,15 @@

    Functions and values

    - + synchronizeGate gate source -
    +
    Signature: gate:obj -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -4934,15 +5659,35 @@

    Functions and values

    - + + tail source + +
    + Signature: source:IObservable<'?8689> -> IObservable<'?8689>
    + Type parameters: '?8689
    + + + + + + +

    Bypasses the first element in an observable sequence and then returns the remaining elements.

    + + + + + + + + take n source -
    +
    Signature: n:int -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -4954,15 +5699,15 @@

    Functions and values

    - + takeLast count source -
    - Signature: count:int -> source:IObservable<'?8739> -> IObservable<'?8739>
    - Type parameters: '?8739
    +
    + Signature: count:int -> source:IObservable<'?8699> -> IObservable<'?8699>
    + Type parameters: '?8699
    - + @@ -4974,15 +5719,15 @@

    Functions and values

    - + takeLastBuffer duration source -
    +
    Signature: duration:TimeSpan -> source:IObservable<'Source> -> IObservable<IList<'Source>>
    Type parameters: 'Source
    - + @@ -4994,15 +5739,15 @@

    Functions and values

    - + takeLastBufferCount count source -
    +
    Signature: count:int -> source:IObservable<'Source> -> IObservable<IList<'Source>>
    Type parameters: 'Source
    - + @@ -5014,15 +5759,15 @@

    Functions and values

    - + takeLastBufferOn (...) -
    - Signature: scheduler:IScheduler -> duration:TimeSpan -> source:IObservable<'?8749> -> IObservable<IList<'?8749>>
    - Type parameters: '?8749
    +
    + Signature: scheduler:IScheduler -> duration:TimeSpan -> source:IObservable<'?8709> -> IObservable<IList<'?8709>>
    + Type parameters: '?8709
    - + @@ -5035,15 +5780,15 @@

    Functions and values

    - + takeLastOn scheduler count source -
    - Signature: scheduler:IScheduler -> count:int -> source:IObservable<'?8741> -> IObservable<'?8741>
    - Type parameters: '?8741
    +
    + Signature: scheduler:IScheduler -> count:int -> source:IObservable<'?8701> -> IObservable<'?8701>
    + Type parameters: '?8701
    - + @@ -5056,15 +5801,15 @@

    Functions and values

    - + takeLastSpan duration source -
    +
    Signature: duration:TimeSpan -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -5076,15 +5821,15 @@

    Functions and values

    - + takeLastSpanOn scheduler duration source -
    - Signature: scheduler:IScheduler -> duration:TimeSpan -> source:IObservable<'?8745> -> IObservable<'?8745>
    - Type parameters: '?8745
    +
    + Signature: scheduler:IScheduler -> duration:TimeSpan -> source:IObservable<'?8705> -> IObservable<'?8705>
    + Type parameters: '?8705
    - + @@ -5097,15 +5842,15 @@

    Functions and values

    - + takeOn scheduler n source -
    - Signature: scheduler:IScheduler -> n:int -> source:IObservable<'?8733> -> IObservable<'?8733>
    - Type parameters: '?8733
    +
    + Signature: scheduler:IScheduler -> n:int -> source:IObservable<'?8693> -> IObservable<'?8693>
    + Type parameters: '?8693
    - + @@ -5118,15 +5863,15 @@

    Functions and values

    - + takeSpan duration source -
    - Signature: duration:TimeSpan -> source:IObservable<'?8735> -> IObservable<'?8735>
    - Type parameters: '?8735
    +
    + Signature: duration:TimeSpan -> source:IObservable<'?8695> -> IObservable<'?8695>
    + Type parameters: '?8695
    - + @@ -5138,15 +5883,15 @@

    Functions and values

    - + takeSpanOn scheduler duration source -
    - Signature: scheduler:IScheduler -> duration:TimeSpan -> source:IObservable<'?8737> -> IObservable<'?8737>
    - Type parameters: '?8737
    +
    + Signature: scheduler:IScheduler -> duration:TimeSpan -> source:IObservable<'?8697> -> IObservable<'?8697>
    + Type parameters: '?8697
    - + @@ -5159,15 +5904,15 @@

    Functions and values

    - + takeUntilOther other source -
    +
    Signature: other:IObservable<'Other> -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Other, 'Source
    - + @@ -5179,15 +5924,15 @@

    Functions and values

    - + takeUntilTime endtime source -
    +
    Signature: endtime:DateTimeOffset -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -5199,15 +5944,15 @@

    Functions and values

    - + takeUntilTimeOn scheduler endtime source -
    - Signature: scheduler:IScheduler -> endtime:DateTimeOffset -> source:IObservable<'?8758> -> IObservable<'?8758>
    - Type parameters: '?8758
    +
    + Signature: scheduler:IScheduler -> endtime:DateTimeOffset -> source:IObservable<'?8718> -> IObservable<'?8718>
    + Type parameters: '?8718
    - + @@ -5220,15 +5965,15 @@

    Functions and values

    - + takeWhile predicate source -
    +
    Signature: predicate:('Source -> bool) -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -5240,15 +5985,15 @@

    Functions and values

    - + takeWhilei predicate source -
    +
    Signature: predicate:('Source -> int -> bool) -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -5261,15 +6006,15 @@

    Functions and values

    - + thenMap map source -
    +
    Signature: map:('Source -> 'Result) -> source:IObservable<'Source> -> Plan<'Result>
    Type parameters: 'Source, 'Result
    - + @@ -5282,15 +6027,15 @@

    Functions and values

    - + throttle dueTime source -
    +
    Signature: dueTime:TimeSpan -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -5302,15 +6047,15 @@

    Functions and values

    - + throttleComputed (...) -
    +
    Signature: throttleDurationSelector:('Source -> IObservable<'Throttle>) -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source, 'Throttle
    - + @@ -5322,15 +6067,15 @@

    Functions and values

    - + throttleOn scheduler dueTime source -
    +
    Signature: scheduler:IScheduler -> dueTime:TimeSpan -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -5342,15 +6087,15 @@

    Functions and values

    - + throw except -
    +
    Signature: except:exn -> IObservable<'Result>
    Type parameters: 'Result
    - + @@ -5362,15 +6107,15 @@

    Functions and values

    - + throwOn scheduler ex -
    - Signature: scheduler:IScheduler -> ex:exn -> IObservable<'?8775>
    - Type parameters: '?8775
    +
    + Signature: scheduler:IScheduler -> ex:exn -> IObservable<'?8735>
    + Type parameters: '?8735
    - + @@ -5383,15 +6128,15 @@

    Functions and values

    - + throwWitness witness ex -
    - Signature: witness:'?8773 -> ex:exn -> IObservable<'?8773>
    - Type parameters: '?8773
    +
    + Signature: witness:'?8733 -> ex:exn -> IObservable<'?8733>
    + Type parameters: '?8733
    - + @@ -5403,15 +6148,15 @@

    Functions and values

    - + throwWitnessOn scheduler witeness ex -
    - Signature: scheduler:'?8777 -> witeness:IScheduler -> ex:exn -> IObservable<'?8777>
    - Type parameters: '?8777
    +
    + Signature: scheduler:'?8737 -> witeness:IScheduler -> ex:exn -> IObservable<'?8737>
    + Type parameters: '?8737
    - + @@ -5424,15 +6169,15 @@

    Functions and values

    - + timeInterval source -
    +
    Signature: source:IObservable<'Source> -> IObservable<TimeInterval<'Source>>
    Type parameters: 'Source
    - + @@ -5444,15 +6189,15 @@

    Functions and values

    - + timeIntervalOn scheduler source -
    - Signature: scheduler:IScheduler -> source:IObservable<'?8784> -> IObservable<TimeInterval<'?8784>>
    - Type parameters: '?8784
    +
    + Signature: scheduler:IScheduler -> source:IObservable<'?8744> -> IObservable<TimeInterval<'?8744>>
    + Type parameters: '?8744
    - + @@ -5465,15 +6210,15 @@

    Functions and values

    - + timeout timeout source -
    +
    Signature: timeout:DateTimeOffset -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -5486,15 +6231,15 @@

    Functions and values

    - + timeout2Duration (...) -
    +
    Signature: timeout:IObservable<'Timeout> -> durationSelector:('Source -> IObservable<'Timeout>) -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Timeout, 'Source
    - + @@ -5509,15 +6254,15 @@

    Functions and values

    - + timeout2DurationOther (...) -
    +
    Signature: timeout:IObservable<'Timeout> -> durationSelector:('Source -> IObservable<'Timeout>) -> other:IObservable<'Source> -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Timeout, 'Source
    - + @@ -5532,15 +6277,15 @@

    Functions and values

    - + timeoutDuration durationSelector source -
    +
    Signature: durationSelector:('Source -> IObservable<'Timeout>) -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source, 'Timeout
    - + @@ -5554,15 +6299,15 @@

    Functions and values

    - + timeoutOn scheduler timeout source -
    - Signature: scheduler:IScheduler -> timeout:DateTimeOffset -> source:IObservable<'?8788> -> IObservable<'?8788>
    - Type parameters: '?8788
    +
    + Signature: scheduler:IScheduler -> timeout:DateTimeOffset -> source:IObservable<'?8748> -> IObservable<'?8748>
    + Type parameters: '?8748
    - + @@ -5575,15 +6320,15 @@

    Functions and values

    - + timeoutOther timeout other source -
    +
    Signature: timeout:DateTimeOffset -> other:IObservable<'Source> -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -5597,15 +6342,15 @@

    Functions and values

    - + timeoutOtherOn (...) -
    - Signature: scheduler:IScheduler -> timeout:DateTimeOffset -> other:IObservable<'?8792> -> source:IObservable<'?8792> -> IObservable<'?8792>
    - Type parameters: '?8792
    +
    + Signature: scheduler:IScheduler -> timeout:DateTimeOffset -> other:IObservable<'?8752> -> source:IObservable<'?8752> -> IObservable<'?8752>
    + Type parameters: '?8752
    - + @@ -5620,15 +6365,15 @@

    Functions and values

    - + timeoutSpan timeout source -
    +
    Signature: timeout:TimeSpan -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -5642,15 +6387,15 @@

    Functions and values

    - + timeoutSpanOn scheduler timeout source -
    - Signature: scheduler:IScheduler -> timeout:TimeSpan -> source:IObservable<'?8796> -> IObservable<'?8796>
    - Type parameters: '?8796
    +
    + Signature: scheduler:IScheduler -> timeout:TimeSpan -> source:IObservable<'?8756> -> IObservable<'?8756>
    + Type parameters: '?8756
    - + @@ -5664,15 +6409,15 @@

    Functions and values

    - + timeoutSpanOther timeout other source -
    +
    Signature: timeout:TimeSpan -> other:IObservable<'Source> -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -5686,15 +6431,15 @@

    Functions and values

    - + timeoutSpanOtherOn (...) -
    - Signature: scheduler:IScheduler -> timeout:TimeSpan -> other:IObservable<'?8800> -> source:IObservable<'?8800> -> IObservable<'?8800>
    - Type parameters: '?8800
    +
    + Signature: scheduler:IScheduler -> timeout:TimeSpan -> other:IObservable<'?8760> -> source:IObservable<'?8760> -> IObservable<'?8760>
    + Type parameters: '?8760
    - + @@ -5708,15 +6453,15 @@

    Functions and values

    - + timer dueTime -
    +
    Signature: dueTime:DateTimeOffset -> IObservable<int64>
    - + @@ -5728,15 +6473,15 @@

    Functions and values

    - + timerOn scheduler dueTime -
    +
    Signature: scheduler:IScheduler -> dueTime:DateTimeOffset -> IObservable<int64>
    - + @@ -5749,15 +6494,15 @@

    Functions and values

    - + timerPeriod dueTime period -
    +
    Signature: dueTime:DateTimeOffset -> period:TimeSpan -> IObservable<int64>
    - + @@ -5769,15 +6514,15 @@

    Functions and values

    - + timerSpan dueTime -
    +
    Signature: dueTime:TimeSpan -> IObservable<int64>
    - + @@ -5789,15 +6534,15 @@

    Functions and values

    - + timerSpanOn scheduler dueTime -
    +
    Signature: scheduler:IScheduler -> dueTime:TimeSpan -> IObservable<int64>
    - + @@ -5810,15 +6555,15 @@

    Functions and values

    - + timerSpanPeriod (dueTime, period) -
    +
    Signature: (dueTime:TimeSpan * period:TimeSpan) -> IObservable<int64>
    - + @@ -5831,15 +6576,15 @@

    Functions and values

    - + timerSpanPeriodOn (...) -
    +
    Signature: scheduler:IScheduler -> dueTime:TimeSpan -> period:TimeSpan -> IObservable<int64>
    - + @@ -5852,15 +6597,15 @@

    Functions and values

    - + timestamp source -
    +
    Signature: source:IObservable<'Source> -> IObservable<Timestamped<'Source>>
    Type parameters: 'Source
    - + @@ -5872,15 +6617,15 @@

    Functions and values

    - + timestampOn scheduler source -
    +
    Signature: scheduler:IScheduler -> source:IObservable<'Source> -> IObservable<Timestamped<'Source>>
    Type parameters: 'Source
    - + @@ -5892,15 +6637,15 @@

    Functions and values

    - + toArray source -
    - Signature: source:IObservable<'?8824> -> IObservable<'?8824 []>
    - Type parameters: '?8824
    +
    + Signature: source:IObservable<'?8784> -> IObservable<'?8784 []>
    + Type parameters: '?8784
    - + @@ -5912,15 +6657,15 @@

    Functions and values

    - + toDictionary keySelector source -
    - Signature: keySelector:('?8826 -> '?8827) -> source:IObservable<'?8826> -> IObservable<IDictionary<'?8827,'?8826>>
    - Type parameters: '?8826, '?8827
    +
    + Signature: keySelector:('?8786 -> '?8787) -> source:IObservable<'?8786> -> IObservable<IDictionary<'?8787,'?8786>>
    + Type parameters: '?8786, '?8787
    - + @@ -5932,15 +6677,15 @@

    Functions and values

    - + toDictionaryCompareElements (...) -
    +
    Signature: keySelector:('Source -> 'Key) -> elementSelector:('Source -> 'Elm) -> comparer:'Key -> source:'Source -> IObservable<IDictionary<'Key,'Elm>>
    Type parameters: 'Source, 'Key, 'Elm
    - + @@ -5952,15 +6697,15 @@

    Functions and values

    - + toDictionaryComparer (...) -
    +
    Signature: keySelector:('Source -> 'Key) -> comparer:'Key -> source:'Source -> IObservable<IDictionary<'Key,'Source>>
    Type parameters: 'Source, 'Key
    - + @@ -5973,15 +6718,15 @@

    Functions and values

    - + toDictionaryElements (...) -
    +
    Signature: keySelector:('Source -> 'Key) -> elementSelector:('Source -> 'Elm) -> source:'Source -> IObservable<IDictionary<'Key,'Elm>>
    Type parameters: 'Source, 'Key, 'Elm
    - + @@ -5993,15 +6738,15 @@

    Functions and values

    - + toEnumerable source -
    +
    Signature: source:IObservable<'T> -> IEnumerable<'T>
    Type parameters: 'T
    - + @@ -6013,15 +6758,15 @@

    Functions and values

    - + toEvent source -
    +
    Signature: source:IObservable<unit> -> IEventSource<unit>
    - + @@ -6033,15 +6778,15 @@

    Functions and values

    - + toEventType source -
    +
    Signature: source:IObservable<'Source> -> IEventSource<'Source>
    Type parameters: 'Source
    - + @@ -6053,15 +6798,15 @@

    Functions and values

    - + toList source -
    - Signature: source:IObservable<'?8843> -> IObservable<IList<'?8843>>
    - Type parameters: '?8843
    +
    + Signature: source:IObservable<'?8803> -> IObservable<IList<'?8803>>
    + Type parameters: '?8803
    - + @@ -6073,15 +6818,15 @@

    Functions and values

    - + toLookup keySelector source -
    +
    Signature: keySelector:('Source -> 'Key) -> source:IObservable<'Source> -> IObservable<ILookup<'Key,'Source>>
    Type parameters: 'Source, 'Key
    - + @@ -6093,15 +6838,15 @@

    Functions and values

    - + toLookupCompare (...) -
    +
    Signature: keySelector:('Source -> 'Key) -> comparer:IEqualityComparer<'Key> -> source:IObservable<'Source> -> IObservable<ILookup<'Key,'Source>>
    Type parameters: 'Source, 'Key
    - + @@ -6113,15 +6858,15 @@

    Functions and values

    - + toLookupCompareElement (...) -
    +
    Signature: keySelector:('Source -> 'Key) -> elementSelector:('Source -> 'Element) -> source:IObservable<'Source> -> IObservable<ILookup<'Key,'Element>>
    Type parameters: 'Source, 'Key, 'Element
    - + @@ -6133,15 +6878,15 @@

    Functions and values

    - + toLookupElement (...) -
    +
    Signature: keySelector:('Source -> 'Key) -> elementSelector:('Source -> 'Element) -> comparer:IEqualityComparer<'Key> -> source:IObservable<'Source> -> IObservable<ILookup<'Key,'Element>>
    Type parameters: 'Source, 'Key, 'Element
    - + @@ -6153,15 +6898,15 @@

    Functions and values

    - + toObservable source -
    +
    Signature: source:seq<'T> -> IObservable<'T>
    Type parameters: 'T
    - + @@ -6173,15 +6918,15 @@

    Functions and values

    - + using resourceFactory observableFactory -
    +
    Signature: resourceFactory:(unit -> 'TResource) -> observableFactory:('TResource -> IObservable<'Result>) -> IObservable<'Result>
    Type parameters: 'TResource, 'Result
    - + @@ -6194,15 +6939,39 @@

    Functions and values

    - + + usingAsync (...) + +
    + Signature: resourceFactory:(CancellationToken -> Async<'?8824>) -> observableFactory:('?8824 -> CancellationToken -> Async<IObservable<'?8825>>) -> IObservable<'?8825>
    + Type parameters: '?8824, '?8825
    + + + + + + +

    Constructs an observable sequence that depends on a resource object, whose +lifetime is tied to the resulting observable sequence's lifetime. +The resource is obtained and used through asynchronous functions. +The cancellation token passed to the asyncrhonous functions is tied to the returned disposable subscription, +allowing best-effor cancellation at any stage of the resource acquisition or usage.

    + + + + + + + + wait source -
    - Signature: source:IObservable<'?8864> -> '?8864
    - Type parameters: '?8864
    +
    + Signature: source:IObservable<'?8827> -> '?8827
    + Type parameters: '?8827
    - + @@ -6216,15 +6985,15 @@

    Functions and values

    - + whileLoop condition source -
    - Signature: condition:(unit -> bool) -> source:IObservable<'?8866> -> IObservable<'?8866>
    - Type parameters: '?8866
    +
    + Signature: condition:(unit -> bool) -> source:IObservable<'?8829> -> IObservable<'?8829>
    + Type parameters: '?8829
    - + @@ -6238,15 +7007,15 @@

    Functions and values

    - + window windowClosingSelector source -
    +
    Signature: windowClosingSelector:(unit -> IObservable<'WindowClosing>) -> source:IObservable<'Source> -> IObservable<IObservable<'Source>>
    Type parameters: 'WindowClosing, 'Source
    - + @@ -6260,15 +7029,15 @@

    Functions and values

    - + windowBounded windowBoundaries source -
    +
    Signature: windowBoundaries:IObservable<'WindowBoundary> -> source:IObservable<'Source> -> IObservable<IObservable<'Source>>
    Type parameters: 'WindowBoundary, 'Source
    - + @@ -6282,15 +7051,15 @@

    Functions and values

    - + windowCount count source -
    +
    Signature: count:int -> source:IObservable<'Source> -> IObservable<IObservable<'Source>>
    Type parameters: 'Source
    - + @@ -6303,15 +7072,15 @@

    Functions and values

    - + windowCountSkip count skip source -
    +
    Signature: count:int -> skip:int -> source:IObservable<'Source> -> IObservable<IObservable<'Source>>
    Type parameters: 'Source
    - + @@ -6323,15 +7092,15 @@

    Functions and values

    - + windowOpenClose (...) -
    +
    Signature: windowOpenings:IObservable<'WinOpen> -> windowClosingSelector:('WinOpen -> IObservable<'WinClose>) -> source:IObservable<'Source> -> IObservable<IObservable<'Source>>
    Type parameters: 'WinOpen, 'WinClose, 'Source
    - + @@ -6345,15 +7114,15 @@

    Functions and values

    - + windowTimeCount timeSpan count source -
    +
    Signature: timeSpan:TimeSpan -> count:int -> source:IObservable<'Source> -> IObservable<IObservable<'Source>>
    Type parameters: 'Source
    - + @@ -6368,15 +7137,15 @@

    Functions and values

    - + windowTimeCountOn (...) -
    - Signature: scheduler:IScheduler -> timeSpan:TimeSpan -> count:int -> source:IObservable<'?8892> -> IObservable<IObservable<'?8892>>
    - Type parameters: '?8892
    +
    + Signature: scheduler:IScheduler -> timeSpan:TimeSpan -> count:int -> source:IObservable<'?8855> -> IObservable<IObservable<'?8855>>
    + Type parameters: '?8855
    - + @@ -6391,15 +7160,15 @@

    Functions and values

    - + windowTimeShift (...) -
    +
    Signature: timeSpan:TimeSpan -> timeShift:TimeSpan -> source:IObservable<'Source> -> IObservable<IObservable<'Source>>
    Type parameters: 'Source
    - + @@ -6412,15 +7181,15 @@

    Functions and values

    - + windowTimeShiftOn (...) -
    - Signature: scheduler:IScheduler -> timeSpan:TimeSpan -> timeShift:TimeSpan -> source:IObservable<'?8881> -> IObservable<IObservable<'?8881>>
    - Type parameters: '?8881
    +
    + Signature: scheduler:IScheduler -> timeSpan:TimeSpan -> timeShift:TimeSpan -> source:IObservable<'?8844> -> IObservable<IObservable<'?8844>>
    + Type parameters: '?8844
    - + @@ -6433,15 +7202,15 @@

    Functions and values

    - + windowTimeSpan timeSpan source -
    +
    Signature: timeSpan:TimeSpan -> source:IObservable<'Source> -> IObservable<IObservable<'Source>>
    Type parameters: 'Source
    - + @@ -6454,15 +7223,15 @@

    Functions and values

    - + windowTimeSpanOn (...) -
    - Signature: scheduler:IScheduler -> timeSpan:TimeSpan -> source:IObservable<'?8873> -> IObservable<IObservable<'?8873>>
    - Type parameters: '?8873
    +
    + Signature: scheduler:IScheduler -> timeSpan:TimeSpan -> source:IObservable<'?8836> -> IObservable<IObservable<'?8836>>
    + Type parameters: '?8836
    - + @@ -6475,15 +7244,15 @@

    Functions and values

    - + withLatestFrom (...) -
    - Signature: resultSelector:('?8894 -> '?8895 -> '?8896) -> second:IObservable<'?8895> -> first:IObservable<'?8894> -> IObservable<'?8896>
    - Type parameters: '?8894, '?8895, '?8896
    +
    + Signature: resultSelector:('?8857 -> '?8858 -> '?8859) -> second:IObservable<'?8858> -> first:IObservable<'?8857> -> IObservable<'?8859>
    + Type parameters: '?8857, '?8858, '?8859
    - + @@ -6497,15 +7266,15 @@

    Functions and values

    - + zip first second -
    +
    Signature: first:IObservable<'Source1> -> second:IObservable<'Source2> -> IObservable<'Source1 * 'Source2>
    Type parameters: 'Source1, 'Source2
    - + @@ -6517,15 +7286,15 @@

    Functions and values

    - + zip3 first second third -
    +
    Signature: first:IObservable<'Source1> -> second:IObservable<'Source2> -> third:IObservable<'Source3> -> IObservable<'Source1 * 'Source2 * 'Source3>
    Type parameters: 'Source1, 'Source2, 'Source3
    - + @@ -6537,15 +7306,15 @@

    Functions and values

    - + zipArray sources -
    +
    Signature: sources:IObservable<'Source> [] -> IObservable<IList<'Source>>
    Type parameters: 'Source
    - + @@ -6558,15 +7327,15 @@

    Functions and values

    - + zipSeq sources -
    +
    Signature: sources:seq<IObservable<'Source>> -> IObservable<IList<'Source>>
    Type parameters: 'Source
    - + @@ -6579,15 +7348,15 @@

    Functions and values

    - + zipSeqMap resultSelector sources -
    +
    Signature: resultSelector:(IList<'S> -> 'R) -> sources:seq<IObservable<'S>> -> IObservable<'R>
    Type parameters: 'S, 'R
    - + @@ -6601,15 +7370,15 @@

    Functions and values

    - + zipWith resultSelector first second -
    +
    Signature: resultSelector:('Source1 -> 'Source2 -> 'Result) -> first:IObservable<'Source1> -> second:IObservable<'Source2> -> IObservable<'Result>
    Type parameters: 'Source1, 'Source2, 'Result
    - + @@ -6621,15 +7390,15 @@

    Functions and values

    - + zipWithSeq resultSelector second first -
    +
    Signature: resultSelector:('Source1 -> 'Source2 -> 'Result) -> second:seq<'Source2> -> first:IObservable<'Source1> -> IObservable<'Result>
    Type parameters: 'Source1, 'Source2, 'Result
    - + @@ -6650,15 +7419,15 @@

    Type extensions

    - + Create(onNext) -
    - Signature: (onNext:('?8165 -> unit)) -> IObserver<'?8165>
    - Type parameters: '?8165
    +
    + Signature: (onNext:('?8081 -> unit)) -> IObserver<'?8081>
    + Type parameters: '?8081
    - + @@ -6671,15 +7440,15 @@

    Type extensions

    - + Create(onNext, onError) -
    - Signature: (onNext:('?8167 -> unit) * onError:(exn -> unit)) -> IObserver<'?8167>
    - Type parameters: '?8167
    +
    + Signature: (onNext:('?8083 -> unit) * onError:(exn -> unit)) -> IObserver<'?8083>
    + Type parameters: '?8083
    - + @@ -6692,15 +7461,15 @@

    Type extensions

    - + Create(onNext, onCompleted) -
    - Signature: (onNext:('?8169 -> unit) * onCompleted:(unit -> unit)) -> IObserver<'?8169>
    - Type parameters: '?8169
    +
    + Signature: (onNext:('?8085 -> unit) * onCompleted:(unit -> unit)) -> IObserver<'?8085>
    + Type parameters: '?8085
    - + @@ -6713,15 +7482,15 @@

    Type extensions

    - + Create(onNext, onError, onCompleted) -
    - Signature: (onNext:('?8171 -> unit) * onError:(exn -> unit) * onCompleted:(unit -> unit)) -> IObserver<'?8171>
    - Type parameters: '?8171
    +
    + Signature: (onNext:('?8087 -> unit) * onError:(exn -> unit) * onCompleted:(unit -> unit)) -> IObserver<'?8087>
    + Type parameters: '?8087
    - + @@ -6734,15 +7503,15 @@

    Type extensions

    - + Create(subscribe) -
    +
    Signature: (subscribe:(IObserver<'T> -> unit -> unit)) -> IObservable<'T>
    Type parameters: 'T
    - + @@ -6755,15 +7524,15 @@

    Type extensions

    - + Create(subscribe) -
    - Signature: (subscribe:(IObserver<'?8175> -> IDisposable)) -> IObservable<'?8175>
    - Type parameters: '?8175
    +
    + Signature: (subscribe:(IObserver<'?8092> -> IDisposable)) -> IObservable<'?8092>
    + Type parameters: '?8092
    - + @@ -6776,15 +7545,78 @@

    Type extensions

    - + + CreateAsync(subscribe) + +
    + Signature: (subscribe:(IObserver<'T> -> Async<IDisposable>)) -> IObservable<'T>
    + Type parameters: 'T
    + + + + + + +

    Creates an observable sequence from the specified asynchronous Subscribe method implementation.

    + + +

    CompiledName: Observable.CreateAsync.Static

    + + + + + + + Empty + +
    + Signature: IObserver<obj>
    +
    + + + + + + +

    Creates an observer that ignores the incoming emits from 'OnNext', 'OnError', and 'OnCompleted'.

    + + +

    CompiledName: Observer.get_Empty.Static

    + + + + + + + Empty + +
    + Signature: IObserver<obj>
    +
    + + + + + + +

    Creates an observer that ignores the incoming emits from 'OnNext', 'OnError', and 'OnCompleted'.

    + + +

    CompiledName: Observer.get_Empty.Static

    + + + + + + Subscribe(onNext) -
    +
    Signature: (onNext:('T -> unit)) -> IDisposable
    - + @@ -6797,15 +7629,15 @@

    Type extensions

    - + Subscribe(onNext, onError) -
    +
    Signature: (onNext:('T -> unit) * onError:(exn -> unit)) -> IDisposable
    - + @@ -6818,15 +7650,15 @@

    Type extensions

    - + Subscribe(onNext, onCompleted) -
    +
    Signature: (onNext:('T -> unit) * onCompleted:(unit -> unit)) -> IDisposable
    - + @@ -6839,15 +7671,15 @@

    Type extensions

    - + Subscribe(onNext, onError, onCompleted) -
    +
    Signature: (onNext:('T -> unit) * onError:(exn -> unit) * onCompleted:(unit -> unit)) -> IDisposable
    - + diff --git a/reference/fsharp-control-reactive-schedule.html b/reference/fsharp-control-reactive-schedule.html index 6fb5b9e..63c7a53 100644 --- a/reference/fsharp-control-reactive-schedule.html +++ b/reference/fsharp-control-reactive-schedule.html @@ -55,10 +55,10 @@

    Functions and values

    - + action f sch -
    +
    Signature: f:(unit -> unit) -> sch:IScheduler -> IDisposable
    @@ -75,10 +75,10 @@

    Functions and values

    - + actionAccOffsetRec state dueTime ff sch -
    +
    Signature: state:'state -> dueTime:DateTimeOffset -> ff:('state -> ('state -> DateTimeOffset -> unit) -> unit) -> sch:IScheduler -> IDisposable
    Type parameters: 'state
    @@ -95,10 +95,10 @@

    Functions and values

    - + actionAccRec state ff sch -
    +
    Signature: state:'state -> ff:('state -> ('state -> unit) -> unit) -> sch:IScheduler -> IDisposable
    Type parameters: 'state
    @@ -115,10 +115,10 @@

    Functions and values

    - + actionAccSpanRec state dueTime ff sch -
    +
    Signature: state:'state -> dueTime:TimeSpan -> ff:('state -> ('state -> TimeSpan -> unit) -> unit) -> sch:IScheduler -> IDisposable
    Type parameters: 'state
    @@ -135,10 +135,10 @@

    Functions and values

    - + actionLong f sch -
    +
    Signature: f:(ICancelable -> unit) -> sch:ISchedulerLongRunning -> IDisposable
    @@ -155,12 +155,12 @@

    Functions and values

    - + actionLongState state f sch -
    - Signature: state:'?7922 -> f:('?7922 -> ICancelable -> '?7923) -> sch:ISchedulerLongRunning -> IDisposable
    - Type parameters: '?7922, '?7923
    +
    + Signature: state:'?8956 -> f:('?8956 -> ICancelable -> '?8957) -> sch:ISchedulerLongRunning -> IDisposable
    + Type parameters: '?8956, '?8957
    @@ -175,10 +175,10 @@

    Functions and values

    - + actionOffset offset f sch -
    +
    Signature: offset:DateTimeOffset -> f:(unit -> unit) -> sch:IScheduler -> IDisposable
    @@ -195,10 +195,10 @@

    Functions and values

    - + actionOffsetRec dueTime ff sch -
    +
    Signature: dueTime:DateTimeOffset -> ff:((unit -> unit) -> unit) -> sch:IScheduler -> IDisposable
    @@ -215,10 +215,10 @@

    Functions and values

    - + actionRec ff sch -
    +
    Signature: ff:((unit -> unit) -> unit) -> sch:IScheduler -> IDisposable
    @@ -235,10 +235,10 @@

    Functions and values

    - + actionSpanRec time ff sch -
    +
    Signature: time:TimeSpan -> ff:(TimeSpan -> (TimeSpan -> unit) -> unit) -> sch:IScheduler -> IDisposable
    @@ -255,10 +255,10 @@

    Functions and values

    - + asAsync cta -
    +
    Signature: cta:SchedulerOperation -> Async<unit>
    @@ -273,10 +273,10 @@

    Functions and values

    - + asTask ct async -
    +
    Signature: ct:CancellationToken -> async:Async<'T> -> Task<'T>
    Type parameters: 'T
    @@ -291,12 +291,12 @@

    Functions and values

    - + async f sch -
    - Signature: f:(IScheduler -> CancellationToken -> Async<'?7958>) -> sch:IScheduler -> IDisposable
    - Type parameters: '?7958
    +
    + Signature: f:(IScheduler -> CancellationToken -> Async<'?8992>) -> sch:IScheduler -> IDisposable
    + Type parameters: '?8992
    @@ -311,10 +311,10 @@

    Functions and values

    - + asyncAccOffsetResult state dueTime f sch -
    +
    Signature: state:'state -> dueTime:DateTimeOffset -> f:(IScheduler -> 'state -> CancellationToken -> Async<IDisposable>) -> sch:IScheduler -> IDisposable
    Type parameters: 'state
    @@ -331,12 +331,12 @@

    Functions and values

    - + asyncAccOffsetUnit state dueTime f sch -
    - Signature: state:'state -> dueTime:DateTimeOffset -> f:(IScheduler -> 'state -> CancellationToken -> Async<'?7978>) -> sch:IScheduler -> IDisposable
    - Type parameters: 'state, '?7978
    +
    + Signature: state:'state -> dueTime:DateTimeOffset -> f:(IScheduler -> 'state -> CancellationToken -> Async<'?9012>) -> sch:IScheduler -> IDisposable
    + Type parameters: 'state, '?9012
    @@ -351,10 +351,10 @@

    Functions and values

    - + asyncAccResult state f sch -
    +
    Signature: state:'state -> f:(IScheduler -> 'state -> CancellationToken -> Async<IDisposable>) -> sch:IScheduler -> IDisposable
    Type parameters: 'state
    @@ -371,10 +371,10 @@

    Functions and values

    - + asyncAccSpanResult state dueTime f sch -
    +
    Signature: state:'state -> dueTime:TimeSpan -> f:(IScheduler -> 'state -> CancellationToken -> Async<IDisposable>) -> sch:IScheduler -> IDisposable
    Type parameters: 'state
    @@ -391,12 +391,12 @@

    Functions and values

    - + asyncAccSpanUnit state dueTime f sch -
    - Signature: state:'state -> dueTime:TimeSpan -> f:(IScheduler -> 'state -> CancellationToken -> Async<'?7973>) -> sch:IScheduler -> IDisposable
    - Type parameters: 'state, '?7973
    +
    + Signature: state:'state -> dueTime:TimeSpan -> f:(IScheduler -> 'state -> CancellationToken -> Async<'?9007>) -> sch:IScheduler -> IDisposable
    + Type parameters: 'state, '?9007
    @@ -411,12 +411,12 @@

    Functions and values

    - + asyncAccUnit state f sch -
    - Signature: state:'state -> f:(IScheduler -> 'state -> CancellationToken -> Async<'?7962>) -> sch:IScheduler -> IDisposable
    - Type parameters: 'state, '?7962
    +
    + Signature: state:'state -> f:(IScheduler -> 'state -> CancellationToken -> Async<'?8996>) -> sch:IScheduler -> IDisposable
    + Type parameters: 'state, '?8996
    @@ -431,10 +431,10 @@

    Functions and values

    - + asyncOffsetResult dueTime f sch -
    +
    Signature: dueTime:DateTimeOffset -> f:(IScheduler -> CancellationToken -> Async<IDisposable>) -> sch:IScheduler -> IDisposable
    @@ -451,12 +451,12 @@

    Functions and values

    - + asyncOffsetUnit dueTime f sch -
    - Signature: dueTime:DateTimeOffset -> f:(IScheduler -> CancellationToken -> Async<'?7969>) -> sch:IScheduler -> IDisposable
    - Type parameters: '?7969
    +
    + Signature: dueTime:DateTimeOffset -> f:(IScheduler -> CancellationToken -> Async<'?9003>) -> sch:IScheduler -> IDisposable
    + Type parameters: '?9003
    @@ -471,10 +471,10 @@

    Functions and values

    - + asyncResult f sch -
    +
    Signature: f:(IScheduler -> CancellationToken -> Async<IDisposable>) -> sch:IScheduler -> IDisposable
    @@ -491,10 +491,10 @@

    Functions and values

    - + asyncSpanResult dueTime f sch -
    +
    Signature: dueTime:TimeSpan -> f:(IScheduler -> CancellationToken -> Async<IDisposable>) -> sch:IScheduler -> IDisposable
    @@ -511,12 +511,12 @@

    Functions and values

    - + asyncSpanUnit dueTime f sch -
    - Signature: dueTime:TimeSpan -> f:(IScheduler -> CancellationToken -> Async<'?7966>) -> sch:IScheduler -> IDisposable
    - Type parameters: '?7966
    +
    + Signature: dueTime:TimeSpan -> f:(IScheduler -> CancellationToken -> Async<'?9000>) -> sch:IScheduler -> IDisposable
    + Type parameters: '?9000
    @@ -531,12 +531,12 @@

    Functions and values

    - + catch f sch -
    - Signature: f:('?7947 -> bool) -> sch:IScheduler -> IScheduler
    - Type parameters: '?7947
    +
    + Signature: f:('?8981 -> bool) -> sch:IScheduler -> IScheduler
    + Type parameters: '?8981
    @@ -551,10 +551,10 @@

    Functions and values

    - + disableOptimizations arg00 -
    +
    Signature: arg00:IScheduler -> IScheduler
    @@ -571,10 +571,10 @@

    Functions and values

    - + disableOptimizationsTypes (...) -
    +
    Signature: optimizationInterfaces:Type list -> sch:IScheduler -> IScheduler
    @@ -591,12 +591,12 @@

    Functions and values

    - + func state f sch -
    - Signature: state:'?7925 -> f:(IScheduler -> '?7925 -> IDisposable) -> sch:IScheduler -> IDisposable
    - Type parameters: '?7925
    +
    + Signature: state:'?8959 -> f:(IScheduler -> '?8959 -> IDisposable) -> sch:IScheduler -> IDisposable
    + Type parameters: '?8959
    @@ -611,12 +611,12 @@

    Functions and values

    - + funcOffset state dueTime f sch -
    - Signature: state:'?7929 -> dueTime:DateTimeOffset -> f:(IScheduler -> '?7929 -> IDisposable) -> sch:IScheduler -> IDisposable
    - Type parameters: '?7929
    +
    + Signature: state:'?8963 -> dueTime:DateTimeOffset -> f:(IScheduler -> '?8963 -> IDisposable) -> sch:IScheduler -> IDisposable
    + Type parameters: '?8963
    @@ -631,12 +631,12 @@

    Functions and values

    - + funcSpan state dueTime f sch -
    - Signature: state:'?7927 -> dueTime:TimeSpan -> f:(IScheduler -> '?7927 -> IDisposable) -> sch:IScheduler -> IDisposable
    - Type parameters: '?7927
    +
    + Signature: state:'?8961 -> dueTime:TimeSpan -> f:(IScheduler -> '?8961 -> IDisposable) -> sch:IScheduler -> IDisposable
    + Type parameters: '?8961
    @@ -651,10 +651,10 @@

    Functions and values

    - + multiple fs sch -
    +
    Signature: fs:(IScheduler -> IDisposable) list -> sch:IScheduler -> IDisposable
    @@ -671,12 +671,12 @@

    Functions and values

    - + periodicAcc state period f sch -
    - Signature: state:'?7940 -> period:TimeSpan -> f:('?7940 -> '?7940) -> sch:IScheduler -> IDisposable
    - Type parameters: '?7940
    +
    + Signature: state:'?8974 -> period:TimeSpan -> f:('?8974 -> '?8974) -> sch:IScheduler -> IDisposable
    + Type parameters: '?8974
    @@ -694,12 +694,12 @@

    Functions and values

    - + periodicAccAction state period f sch -
    - Signature: state:'?7942 -> period:TimeSpan -> f:('?7942 -> unit) -> sch:IScheduler -> IDisposable
    - Type parameters: '?7942
    +
    + Signature: state:'?8976 -> period:TimeSpan -> f:('?8976 -> unit) -> sch:IScheduler -> IDisposable
    + Type parameters: '?8976
    @@ -717,10 +717,10 @@

    Functions and values

    - + periodicAction period f sch -
    +
    Signature: period:TimeSpan -> f:(unit -> unit) -> sch:IScheduler -> IDisposable
    @@ -740,10 +740,10 @@

    Functions and values

    - + sleep dueTime sch -
    +
    Signature: dueTime:TimeSpan -> sch:IScheduler -> Async<unit>
    @@ -761,10 +761,10 @@

    Functions and values

    - + sleepCancel dueTime ct sch -
    +
    Signature: dueTime:TimeSpan -> ct:CancellationToken -> sch:IScheduler -> Async<unit>
    @@ -782,10 +782,10 @@

    Functions and values

    - + sleepOffset dueTime sch -
    +
    Signature: dueTime:DateTimeOffset -> sch:IScheduler -> Async<unit>
    @@ -803,10 +803,10 @@

    Functions and values

    - + sleepOffsetCancel dueTime ct sch -
    +
    Signature: dueTime:DateTimeOffset -> ct:CancellationToken -> sch:IScheduler -> Async<unit>
    @@ -824,10 +824,10 @@

    Functions and values

    - + yield_ x -
    +
    Signature: x:IScheduler -> Async<unit>
    @@ -845,10 +845,10 @@

    Functions and values

    - + yieldCancel ct sch -
    +
    Signature: ct:CancellationToken -> sch:IScheduler -> Async<unit>
    diff --git a/reference/fsharp-control-reactive-scheduler-scheduler.html b/reference/fsharp-control-reactive-scheduler-scheduler.html index f4c866c..af49e96 100644 --- a/reference/fsharp-control-reactive-scheduler-scheduler.html +++ b/reference/fsharp-control-reactive-scheduler-scheduler.html @@ -52,10 +52,10 @@

    Constructors

    - + new() -
    +
    Signature: unit -> Scheduler
    @@ -79,10 +79,10 @@

    Static members

    - + EventLoop -
    +
    Signature: EventLoopScheduler
    @@ -100,10 +100,10 @@

    Static members

    - + Historical -
    +
    Signature: HistoricalScheduler
    diff --git a/reference/fsharp-control-reactive-scheduler.html b/reference/fsharp-control-reactive-scheduler.html index c51bbbe..895a5e0 100644 --- a/reference/fsharp-control-reactive-scheduler.html +++ b/reference/fsharp-control-reactive-scheduler.html @@ -72,10 +72,10 @@

    Functions and values

    - + asLongRunning sch -
    +
    Signature: sch:IScheduler -> ISchedulerLongRunning option
    diff --git a/reference/fsharp-control-reactive-subject-1.html b/reference/fsharp-control-reactive-subject-1.html index a340a30..61e3ffb 100644 --- a/reference/fsharp-control-reactive-subject-1.html +++ b/reference/fsharp-control-reactive-subject-1.html @@ -51,10 +51,10 @@

    Static members

    - + async -
    +
    Signature: AsyncSubject<'a>
    @@ -73,10 +73,10 @@

    Static members

    - + behavior(x) -
    +
    Signature: x:'a -> BehaviorSubject<'a>
    @@ -94,10 +94,10 @@

    Static members

    - + broadcast -
    +
    Signature: Subject<'a>
    @@ -116,10 +116,10 @@

    Static members

    - + replay -
    +
    Signature: ReplaySubject<'a>
    diff --git a/reference/fsharp-control-reactive-subjectmodule.html b/reference/fsharp-control-reactive-subjectmodule.html index 18807a1..8407d74 100644 --- a/reference/fsharp-control-reactive-subjectmodule.html +++ b/reference/fsharp-control-reactive-subjectmodule.html @@ -60,10 +60,10 @@

    Functions and values

    - + onCompleted s -
    +
    Signature: s:SubjectBase<'a> -> SubjectBase<'a>
    Type parameters: 'a
    @@ -80,10 +80,10 @@

    Functions and values

    - + onError ex s -
    +
    Signature: ex:exn -> s:SubjectBase<'a> -> SubjectBase<'a>
    Type parameters: 'a
    @@ -100,10 +100,10 @@

    Functions and values

    - + onNext x s -
    +
    Signature: x:'a -> s:SubjectBase<'a> -> SubjectBase<'a>
    Type parameters: 'a
    @@ -120,12 +120,12 @@

    Functions and values

    - + onNexts xs s -
    - Signature: xs:seq<'?7904> -> s:'?7905 -> '?7905
    - Type parameters: '?7904, '?7905
    +
    + Signature: xs:seq<'?8938> -> s:'?8939 -> '?8939
    + Type parameters: '?8938, '?8939
    diff --git a/reference/fsharp-control-reactive-testing-gentestnotification.html b/reference/fsharp-control-reactive-testing-gentestnotification.html index 3c295e0..a91d9c6 100644 --- a/reference/fsharp-control-reactive-testing-gentestnotification.html +++ b/reference/fsharp-control-reactive-testing-gentestnotification.html @@ -51,10 +51,10 @@

    Static members

    - + GenNotifications() -
    +
    Signature: unit -> Arbitrary<TestNotifications<'a>>
    Type parameters: 'a
    diff --git a/reference/fsharp-control-reactive-testing-marbles.html b/reference/fsharp-control-reactive-testing-marbles.html new file mode 100644 index 0000000..71459bf --- /dev/null +++ b/reference/fsharp-control-reactive-testing-marbles.html @@ -0,0 +1,255 @@ + + + + + Marbles - FSharp.Control.Reactive + + + + + + + + + + + + + + + +
    + +
    +
    +
    + + + + +

    Marbles

    +

    + Namespace: FSharp.Control.Reactive.Testing
    +

    +
    +

    Reactive Marbles representation to make working with recorded test notifications like visualising the notifications as marbles.

    + +
    + + + +

    Functions and values

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Function or valueDescription
    + + + cold x sch + +
    + Signature: x:string -> sch:TestScheduler -> ITestableObservable<string>
    +
    +
    + + + + +

    Creates from the given marble representation a Cold Observable +using the specified TestScheduler. +Note that the marble representation can't have a subscription marker (^), +only Hot Observables can have these.

    +

    Parameters

    +
      +
    • x - Marble text representation. Example: --a---b--|.
    • +
    • sch - The given TestScheduler to use to create the Cold Observable.
    • +
    + + +
    + + + expectMessages sch txt obs + +
    + Signature: sch:TestScheduler -> txt:string -> obs:IObservable<string> -> unit
    +
    +
    + + + + +

    Verifies that the given marble representation is indeed the same as the observed messages found in the given test observer.

    + + +
    + + + expectSubscription txt xs + +
    + Signature: txt:string -> xs:Subscription -> unit
    +
    +
    + + + + +

    Verifies that the given marble representation is indeed the same as the subscription found in the given test observable sequence.

    + + +
    + + + expectSubscriptions txt xs + +
    + Signature: txt:string list -> xs:Subscription list -> unit
    +
    +
    + + + + +

    Verifies that the given marble representation is indeed the same as the subscriptions found in the given test observable sequence.

    + + +
    + + + hot x sch + +
    + Signature: x:string -> sch:TestScheduler -> ITestableObservable<string>
    +
    +
    + + + + +

    Creates from the given marble representation a Hot Observable +using the specified TestScheduler.

    +

    ## Parameters +- x - Marble text represetantion. Example: --^-a---b--|. +- sch - The given TestScheduler to use to create the Hot Observable.

    + + +
    + + + messages txt + +
    + Signature: txt:string -> TestNotifications<string>
    +
    +
    + + + + +

    Creates from the given marble representation a TestNotifications<'a> model.

    + + +
    + + + subscription + +
    + Signature: string -> Subscription
    +
    +
    + + + + +

    Creates from the given marble representation a Subscription model.

    + + +
    + + + subscriptions + +
    + Signature: string list -> Subscription list
    +
    +
    + + + + +

    Creates from the given marble representation a Subscription list model.

    + + +
    + +
    +
    + F# Project + +
    +
    +
    + Fork me on GitHub + + + diff --git a/reference/fsharp-control-reactive-testing-testnotification-1.html b/reference/fsharp-control-reactive-testing-testnotification-1.html index d14ec07..8e1b32f 100644 --- a/reference/fsharp-control-reactive-testing-testnotification-1.html +++ b/reference/fsharp-control-reactive-testing-testnotification-1.html @@ -53,10 +53,10 @@

    Instance members

    - + Time -
    +
    Signature: int64
    @@ -67,10 +67,10 @@

    Instance members

    - + Value -
    +
    Signature: Notification<'a>
    diff --git a/reference/fsharp-control-reactive-testing-testnotificationmodule.html b/reference/fsharp-control-reactive-testing-testnotificationmodule.html index 17ebece..5c7360d 100644 --- a/reference/fsharp-control-reactive-testing-testnotificationmodule.html +++ b/reference/fsharp-control-reactive-testing-testnotificationmodule.html @@ -60,10 +60,10 @@

    Functions and values

    - + errors arg1 -
    +
    Signature: TestNotifications<'b> -> exn list
    Type parameters: 'b
    @@ -80,12 +80,12 @@

    Functions and values

    - + filter f arg2 -
    - Signature: f:(TestNotification<'?9014> -> bool) -> TestNotifications<'?9014> -> TestNotifications<'?9014>
    - Type parameters: '?9014
    +
    + Signature: f:(TestNotification<'?9164> -> bool) -> TestNotifications<'?9164> -> TestNotifications<'?9164>
    + Type parameters: '?9164
    @@ -100,12 +100,12 @@

    Functions and values

    - + isError _arg1 -
    - Signature: _arg1:TestNotification<'?9008> -> bool
    - Type parameters: '?9008
    +
    + Signature: _arg1:TestNotification<'?9158> -> bool
    + Type parameters: '?9158
    @@ -120,12 +120,12 @@

    Functions and values

    - + isNext _arg1 -
    - Signature: _arg1:TestNotification<'?9006> -> bool
    - Type parameters: '?9006
    +
    + Signature: _arg1:TestNotification<'?9156> -> bool
    + Type parameters: '?9156
    @@ -140,12 +140,12 @@

    Functions and values

    - + mapErrors f -
    - Signature: f:(exn -> '?9033) -> TestNotifications<'?9034> -> '?9033 list
    - Type parameters: '?9033, '?9034
    +
    + Signature: f:(exn -> '?9183) -> TestNotifications<'?9184> -> '?9183 list
    + Type parameters: '?9183, '?9184
    @@ -160,12 +160,12 @@

    Functions and values

    - + mapNexts f -
    - Signature: f:('?9028 -> '?9029) -> TestNotifications<'?9028> -> '?9029 list
    - Type parameters: '?9028, '?9029
    +
    + Signature: f:('?9178 -> '?9179) -> TestNotifications<'?9178> -> '?9179 list
    + Type parameters: '?9178, '?9179
    @@ -180,10 +180,10 @@

    Functions and values

    - + nexts arg1 -
    +
    Signature: TestNotifications<'b> -> 'b list
    Type parameters: 'b
    @@ -200,12 +200,12 @@

    Functions and values

    - + onCompleted t -
    - Signature: t:int64 -> Recorded<Notification<'?9024>>
    - Type parameters: '?9024
    +
    + Signature: t:int64 -> Recorded<Notification<'b>>
    + Type parameters: 'b
    @@ -220,12 +220,12 @@

    Functions and values

    - + onError t ex -
    - Signature: t:int64 -> ex:exn -> Recorded<Notification<'?9022>>
    - Type parameters: '?9022
    +
    + Signature: t:int64 -> ex:exn -> Recorded<Notification<'b>>
    + Type parameters: 'b
    @@ -240,12 +240,12 @@

    Functions and values

    - + onErrors ms -
    - Signature: ms:TestNotifications<'?9018> -> TestNotifications<'?9018>
    - Type parameters: '?9018
    +
    + Signature: ms:TestNotifications<'?9168> -> TestNotifications<'?9168>
    + Type parameters: '?9168
    @@ -260,10 +260,10 @@

    Functions and values

    - + onNext t x -
    +
    Signature: t:int64 -> x:'a -> Recorded<Notification<'a>>
    Type parameters: 'a
    @@ -280,12 +280,12 @@

    Functions and values

    - + onNexts ms -
    - Signature: ms:TestNotifications<'?9016> -> TestNotifications<'?9016>
    - Type parameters: '?9016
    +
    + Signature: ms:TestNotifications<'?9166> -> TestNotifications<'?9166>
    + Type parameters: '?9166
    @@ -300,12 +300,12 @@

    Functions and values

    - + toOption _arg1 -
    - Signature: _arg1:TestNotification<'?9010> -> '?9010 option
    - Type parameters: '?9010
    +
    + Signature: _arg1:TestNotification<'?9160> -> '?9160 option
    + Type parameters: '?9160
    @@ -321,12 +321,12 @@

    Functions and values

    - + toResult _arg1 -
    - Signature: _arg1:TestNotification<'?9012> -> Result<'?9012,exn>
    - Type parameters: '?9012
    +
    + Signature: _arg1:TestNotification<'?9162> -> Result<'?9162,exn>
    + Type parameters: '?9162
    @@ -342,12 +342,12 @@

    Functions and values

    - + unwrap arg1 -
    - Signature: TestNotifications<'?9002> -> TestNotification<'?9002> list
    - Type parameters: '?9002
    +
    + Signature: TestNotifications<'?9152> -> TestNotification<'?9152> list
    + Type parameters: '?9152
    @@ -362,12 +362,12 @@

    Functions and values

    - + wrap arg0 -
    - Signature: arg0:TestNotification<'?9000> list -> TestNotifications<'?9000>
    - Type parameters: '?9000
    +
    + Signature: arg0:TestNotification<'?9150> list -> TestNotifications<'?9150>
    + Type parameters: '?9150
    @@ -388,10 +388,10 @@

    Active patterns

    - + ( |Next|Error|Completed| ) x -
    +
    Signature: x:TestNotification<'a> -> Choice<'a,exn,unit>
    Type parameters: 'a
    diff --git a/reference/fsharp-control-reactive-testing-testnotifications-1.html b/reference/fsharp-control-reactive-testing-testnotifications-1.html index f3d8178..d4c829b 100644 --- a/reference/fsharp-control-reactive-testing-testnotifications-1.html +++ b/reference/fsharp-control-reactive-testing-testnotifications-1.html @@ -51,10 +51,10 @@

    Union Cases

    - + TestNotifications(...) -
    +
    Signature: TestNotification<'a> list
    diff --git a/reference/fsharp-control-reactive-testing-testobservable.html b/reference/fsharp-control-reactive-testing-testobservable.html new file mode 100644 index 0000000..8a17b3f --- /dev/null +++ b/reference/fsharp-control-reactive-testing-testobservable.html @@ -0,0 +1,101 @@ + + + + + TestObservable - FSharp.Control.Reactive + + + + + + + + + + + + + + + +
    + +
    +
    +
    + + + + +

    TestObservable

    +

    + Namespace: FSharp.Control.Reactive.Testing
    +

    +
    +
    + + + +

    Functions and values

    + + + + + + + + + + +
    Function or valueDescription
    + + + subscriptions o + +
    + Signature: o:ITestableObservable<'a> -> Subscription list
    + Type parameters: 'a
    +
    + + + + +

    Gets a list of all the subscriptions to the observable sequence., including their lifetimes.

    + + +
    + +
    +
    + F# Project + +
    +
    +
    + Fork me on GitHub + + + diff --git a/reference/fsharp-control-reactive-testing-testobservermodule.html b/reference/fsharp-control-reactive-testing-testobservermodule.html index c6d27e8..89ee11f 100644 --- a/reference/fsharp-control-reactive-testing-testobservermodule.html +++ b/reference/fsharp-control-reactive-testing-testobservermodule.html @@ -60,15 +60,23 @@

    Functions and values

    - + all o -
    +
    Signature: o:ITestableObserver<'a> -> TestNotifications<'a>
    - Type parameters: 'a
    + Type parameters: 'a + Attributes:
    +[<Obsolete("Use 'messages' to get all the recored timestamped notifications")>]
    +
    +
    - +
    + WARNING: This API is obsolete +

    Use 'messages' to get all the recored timestamped notifications

    +
    +
    @@ -80,15 +88,15 @@

    Functions and values

    - + errors o -
    +
    Signature: o:ITestableObserver<'a> -> exn list
    Type parameters: 'a
    - + @@ -100,15 +108,35 @@

    Functions and values

    - + + messages o + +
    + Signature: o:ITestableObserver<'a> -> TestNotifications<'a>
    + Type parameters: 'a
    + + + + + + +

    Gets recorded timestamped notification messages received by the observer.

    + + + + + + + + nexts o -
    +
    Signature: o:ITestableObserver<'a> -> 'a list
    Type parameters: 'a
    - + diff --git a/reference/fsharp-control-reactive-testing-testschedulemodule.html b/reference/fsharp-control-reactive-testing-testschedulemodule.html index 380d91f..9a4fa95 100644 --- a/reference/fsharp-control-reactive-testing-testschedulemodule.html +++ b/reference/fsharp-control-reactive-testing-testschedulemodule.html @@ -60,10 +60,10 @@

    Functions and values

    - + advanceBy s time -
    +
    Signature: s:TestScheduler -> time:int64 -> TestScheduler
    @@ -80,10 +80,10 @@

    Functions and values

    - + advanceTo s time -
    +
    Signature: s:TestScheduler -> time:int64 -> TestScheduler
    @@ -100,10 +100,10 @@

    Functions and values

    - + coldObservable s arg2 -
    +
    Signature: s:TestScheduler -> TestNotifications<'a> -> ITestableObservable<'a>
    Type parameters: 'a
    @@ -120,10 +120,10 @@

    Functions and values

    - + createObserver s -
    +
    Signature: s:TestScheduler -> ITestableObserver<'a>
    Type parameters: 'a
    @@ -140,12 +140,12 @@

    Functions and values

    - + hotObservable s arg2 -
    - Signature: s:TestScheduler -> TestNotifications<'?8971> -> ITestableObservable<'?8971>
    - Type parameters: '?8971
    +
    + Signature: s:TestScheduler -> TestNotifications<'a> -> ITestableObservable<'a>
    + Type parameters: 'a
    @@ -160,12 +160,12 @@

    Functions and values

    - + schedule s state dueTime f -
    - Signature: s:TestScheduler -> state:'?8977 -> dueTime:DateTimeOffset -> f:(IScheduler -> '?8977 -> IDisposable) -> IDisposable
    - Type parameters: '?8977 +
    + Signature: s:TestScheduler -> state:'?9127 -> dueTime:DateTimeOffset -> f:(IScheduler -> '?9127 -> IDisposable) -> IDisposable
    + Type parameters: '?9127 Attributes:
    [<Obsolete("Use the 'Schedule' module for scheduling actions")>]
    @@ -188,10 +188,10 @@

    Functions and values

    - + start s -
    +
    Signature: s:TestScheduler -> TestScheduler
    @@ -208,12 +208,12 @@

    Functions and values

    - + startObservable s source -
    - Signature: s:TestScheduler -> source:IObservable<'?8980> -> ITestableObserver<'?8980>
    - Type parameters: '?8980
    +
    + Signature: s:TestScheduler -> source:IObservable<'?9130> -> ITestableObserver<'?9130>
    + Type parameters: '?9130
    @@ -228,12 +228,12 @@

    Functions and values

    - + subscribeBeforeAfter sch source f -
    - Signature: sch:TestScheduler -> source:'?8986 -> f:('?8986 -> '?8988) -> ITestableObserver<'?8987> * ITestableObserver<'?8987>
    - Type parameters: '?8986, '?8987, '?8988
    +
    + Signature: sch:TestScheduler -> source:'?9136 -> f:('?9136 -> '?9138) -> ITestableObserver<'?9137> * ITestableObserver<'?9137>
    + Type parameters: '?9136, '?9137, '?9138
    @@ -248,12 +248,12 @@

    Functions and values

    - + subscribeTestObserver sch source -
    - Signature: sch:TestScheduler -> source:IObservable<'?8982> -> ITestableObserver<'?8982>
    - Type parameters: '?8982
    +
    + Signature: sch:TestScheduler -> source:IObservable<'?9132> -> ITestableObserver<'?9132>
    + Type parameters: '?9132
    @@ -268,12 +268,12 @@

    Functions and values

    - + subscribeTestObserverStart sch source -
    - Signature: sch:TestScheduler -> source:IObservable<'?8984> -> ITestableObserver<'?8984>
    - Type parameters: '?8984
    +
    + Signature: sch:TestScheduler -> source:IObservable<'a> -> ITestableObserver<'a>
    + Type parameters: 'a
    @@ -288,12 +288,12 @@

    Functions and values

    - + usage f -
    - Signature: f:(TestScheduler -> '?8967) -> '?8967
    - Type parameters: '?8967
    +
    + Signature: f:(TestScheduler -> '?9117) -> '?9117
    + Type parameters: '?9117
    diff --git a/reference/fsharp-control-reactive-waithandle.html b/reference/fsharp-control-reactive-waithandle.html new file mode 100644 index 0000000..6ee7c73 --- /dev/null +++ b/reference/fsharp-control-reactive-waithandle.html @@ -0,0 +1,100 @@ + + + + + WaitHandle - FSharp.Control.Reactive + + + + + + + + + + + + + + + +
    + +
    +
    +
    + + + + +

    WaitHandle

    +

    + + Namespace: FSharp.Control.Reactive
    +

    +
    +
    +

    Static members

    + + + + + + + + + + +
    Static memberDescription
    + + + Signal + +
    + Signature: ManualResetEvent
    +
    +
    + + + + +

    Initializes a new instance of the ManualResetEvent class with initial state set to 'false'.

    + + +

    CompiledName: get_Signal

    +
    + +
    +
    + F# Project + +
    +
    +
    + Fork me on GitHub + + + diff --git a/reference/fsharp-control-reactive-waithandlemodule.html b/reference/fsharp-control-reactive-waithandlemodule.html index 723af96..eee91fb 100644 --- a/reference/fsharp-control-reactive-waithandlemodule.html +++ b/reference/fsharp-control-reactive-waithandlemodule.html @@ -58,15 +58,15 @@

    Functions and values

    - + flag s -
    +
    Signature: s:EventWaitHandle -> unit
    - + @@ -78,35 +78,15 @@

    Functions and values

    - - signal - -
    - Signature: ManualResetEvent
    -
    - - - - - - -

    Initializes a new instance of the ManualResetEvent class with initial state set to 'false'.

    - - - - - - - - + wait s -
    +
    Signature: s:WaitHandle -> unit
    - + diff --git a/reference/index.html b/reference/index.html index d10e9fd..7e86735 100644 --- a/reference/index.html +++ b/reference/index.html @@ -43,12 +43,28 @@

    FSharp.Control.Reactive Namespace

    TypeDescription + + + Disposable + + + + + Subject<'a> + + + + + WaitHandle + + + @@ -174,6 +190,16 @@

    FSharp.Control.Reactive.Testing Namespace

    ModuleDescription + + + Marbles + + +

    Reactive Marbles representation to make working with recorded test notifications like visualising the notifications as marbles.

    + + + + TestNotification @@ -182,6 +208,14 @@

    FSharp.Control.Reactive.Testing Namespace

    The Reactive module provides operators for working with TestObserver<_> in F#.

    + + + + + TestObservable + + + From 1e82e56583df2630f953f2879a3963b82770753b Mon Sep 17 00:00:00 2001 From: Ryan Riley Date: Fri, 22 May 2020 00:08:01 -0500 Subject: [PATCH 14/18] Update generated documentation for version 4.3.0 --- index.html | 5 +- introduction.html | 169 +- ...tive-buildersmodule-observablebuilder.html | 152 +- ...eactive-buildersmodule-rxquerybuilder.html | 327 ++- ...sharp-control-reactive-buildersmodule.html | 10 +- .../fsharp-control-reactive-disposable.html | 23 +- ...arp-control-reactive-disposablemodule.html | 23 +- .../fsharp-control-reactive-disposables.html | 7 +- ...arp-control-reactive-observablemodule.html | 1986 +++++++---------- .../fsharp-control-reactive-schedule.html | 264 +-- ...-control-reactive-scheduler-scheduler.html | 23 +- .../fsharp-control-reactive-scheduler.html | 11 +- .../fsharp-control-reactive-subject-1.html | 32 +- ...fsharp-control-reactive-subjectmodule.html | 30 +- ...-reactive-testing-gentestnotification.html | 11 +- ...harp-control-reactive-testing-marbles.html | 50 +- ...l-reactive-testing-testnotification-1.html | 18 +- ...active-testing-testnotificationmodule.html | 161 +- ...-reactive-testing-testnotifications-1.html | 9 +- ...ntrol-reactive-testing-testobservable.html | 11 +- ...l-reactive-testing-testobservermodule.html | 32 +- ...l-reactive-testing-testschedulemodule.html | 90 +- .../fsharp-control-reactive-waithandle.html | 11 +- ...arp-control-reactive-waithandlemodule.html | 18 +- reference/index.html | 4 +- tutorial.html | 7 +- 26 files changed, 1441 insertions(+), 2043 deletions(-) diff --git a/index.html b/index.html index 472f804..174bb69 100644 --- a/index.html +++ b/index.html @@ -6,7 +6,7 @@ - + @@ -32,8 +32,7 @@

    FSharp.Control.R
    - -

    FSharp.Control.Reactive

    +

    FSharp.Control.Reactive

    FSharp.Control.Reactive provides F#-style modules for working with the Reactive Extensions (Rx) as a set of extensions to the built-in Observable module. The library includes observe and rxquery computation expressions, as well.

    diff --git a/introduction.html b/introduction.html index fd33cfd..28dafb4 100644 --- a/introduction.html +++ b/introduction.html @@ -6,7 +6,7 @@ - + @@ -32,8 +32,7 @@

    FSharp.Control.R
    - -

    Introduction to Observables

    +

    Introduction to Observables

    Prerequisits

    This page contains some basic examples of how to use Observable's. This is by no means a complete stable example and should only be used for demonstration purposes.

    @@ -62,23 +61,23 @@

    open System
     open FSharp.Control.Reactive
    -open System.Windows.Forms
    +open System.Windows.Forms
     
     
    -let buttonForm = new Form ()
    -let btn = new Button()
    -let txb = new TextBox()
    +let buttonForm = new Form ()
    +let btn = new Button()
    +let txb = new TextBox()
     
    -txb.TextChanged
    -|> Observable.startWith [EventArgs.Empty]
    -|> Observable.subscribe (fun _ -> btn.Enabled <- not (String.IsNullOrEmpty txb.Text))
    +txb.TextChanged
    +|> Observable.startWith [EventArgs.Empty]
    +|> Observable.subscribe (fun _ -> btn.Enabled <- not (String.IsNullOrEmpty txb.Text))
     
    -btn.Text <- "OK"
    -btn.Top <- 20
    +btn.Text <- "OK"
    +btn.Top <- 20
     
    -buttonForm.Controls.Add txb
    -buttonForm.Controls.Add btn
    -buttonForm.Show ()
    +buttonForm.Controls.Add txb
    +buttonForm.Controls.Add btn
    +buttonForm.Show ()
     
    @@ -102,21 +101,21 @@

    14: 15: -
    module String = 
    -    let rev (s : string) = new String (s.ToCharArray () |> Array.rev)
    +
    module String = 
    +    let rev (s : string) = new String (s.ToCharArray () |> Array.rev)
     
    -let input = new TextBox()
    -let reversed = new Label()
    +let input = new TextBox()
    +let reversed = new Label()
     
    -input.TextChanged
    -|> Observable.map (fun _ -> input.Text |> String.rev)
    -|> Observable.subscribe (fun x -> reversed.Text <- x)
    +input.TextChanged
    +|> Observable.map (fun _ -> input.Text |> String.rev)
    +|> Observable.subscribe (fun x -> reversed.Text <- x)
     
    -reversed.Top <- 20
    -let reverseForm = new Form ()
    -reverseForm.Controls.Add input
    -reverseForm.Controls.Add reversed
    -reverseForm.Show ()
    +reversed.Top <- 20
    +let reverseForm = new Form ()
    +reverseForm.Controls.Add input
    +reverseForm.Controls.Add reversed
    +reverseForm.Show ()
     
    @@ -144,25 +143,25 @@

    18: 19:

    -
    let redBtn = new Button()
    -let greenBtn = new Button()
    -let result = new Label()
    -
    -let red = redBtn.Click |> Observable.mapTo "Red"
    -let green = greenBtn.Click |> Observable.mapTo "Green"
    -
    -Observable.merge red green
    -|> Observable.subscribe (fun x -> result.Text <- x)
    -
    -redBtn.Text <- "Red"
    -greenBtn.Text <- "Green"
    -greenBtn.Top <- 20
    -result.Left <- 100
    -let colorForm = new Form ()
    -colorForm.Controls.Add redBtn
    -colorForm.Controls.Add greenBtn
    -colorForm.Controls.Add result
    -colorForm.Show ()
    +
    let redBtn = new Button()
    +let greenBtn = new Button()
    +let result = new Label()
    +
    +let red = redBtn.Click |> Observable.mapTo "Red"
    +let green = greenBtn.Click |> Observable.mapTo "Green"
    +
    +Observable.merge red green
    +|> Observable.subscribe (fun x -> result.Text <- x)
    +
    +redBtn.Text <- "Red"
    +greenBtn.Text <- "Green"
    +greenBtn.Top <- 20
    +result.Left <- 100
    +let colorForm = new Form ()
    +colorForm.Controls.Add redBtn
    +colorForm.Controls.Add greenBtn
    +colorForm.Controls.Add result
    +colorForm.Show ()
     
    @@ -172,53 +171,37 @@

    Multiple items
    namespace FSharp.Control

    --------------------
    namespace Microsoft.FSharp.Control

    namespace FSharp.Control.Reactive
    namespace System.Windows
    -
    namespace System.Windows.Forms
    -
    val buttonForm : Form
    -
    Multiple items
    type Form =
      inherit ContainerControl
      new : unit -> Form
      member AcceptButton : IButtonControl with get, set
      member Activate : unit -> unit
      member ActiveMdiChild : Form
      member AddOwnedForm : ownedForm:Form -> unit
      member AllowTransparency : bool with get, set
      member AutoScale : bool with get, set
      member AutoScaleBaseSize : Size with get, set
      member AutoScroll : bool with get, set
      member AutoSize : bool with get, set
      ...
      nested type ControlCollection

    --------------------
    Form() : Form
    -
    val btn : Button
    -
    Multiple items
    type Button =
      inherit ButtonBase
      new : unit -> Button
      member AutoSizeMode : AutoSizeMode with get, set
      member DialogResult : DialogResult with get, set
      member NotifyDefault : value:bool -> unit
      member PerformClick : unit -> unit
      member ToString : unit -> string
      event DoubleClick : EventHandler
      event MouseDoubleClick : MouseEventHandler

    --------------------
    Button() : Button
    -
    val txb : TextBox
    -
    Multiple items
    type TextBox =
      inherit TextBoxBase
      new : unit -> TextBox
      member AcceptsReturn : bool with get, set
      member AutoCompleteCustomSource : AutoCompleteStringCollection with get, set
      member AutoCompleteMode : AutoCompleteMode with get, set
      member AutoCompleteSource : AutoCompleteSource with get, set
      member CharacterCasing : CharacterCasing with get, set
      member Multiline : bool with get, set
      member PasswordChar : char with get, set
      member Paste : text:string -> unit
      member ScrollBars : ScrollBars with get, set
      ...

    --------------------
    TextBox() : TextBox
    -
    event Control.TextChanged: IEvent<EventHandler,EventArgs>
    -
    Multiple items
    module Observable

    from FSharp.Control.Reactive

    --------------------
    module Observable

    from Microsoft.FSharp.Control
    -
    val startWith : values:#seq<'T> -> source:IObservable<'T> -> IObservable<'T>
    -
    Multiple items
    type EventArgs =
      new : unit -> EventArgs
      static val Empty : EventArgs

    --------------------
    EventArgs() : EventArgs
    -
    field EventArgs.Empty: EventArgs
    -
    Multiple items
    val subscribe : onNext:('T -> unit) -> observable:IObservable<'T> -> IDisposable

    --------------------
    val subscribe : callback:('T -> unit) -> source:IObservable<'T> -> IDisposable
    -
    property Control.Enabled: bool
    -
    val not : value:bool -> bool
    -
    Multiple items
    type String =
      new : value:char -> string + 7 overloads
      member Chars : int -> char
      member Clone : unit -> obj
      member CompareTo : value:obj -> int + 1 overload
      member Contains : value:string -> bool
      member CopyTo : sourceIndex:int * destination:char[] * destinationIndex:int * count:int -> unit
      member EndsWith : value:string -> bool + 2 overloads
      member Equals : obj:obj -> bool + 2 overloads
      member GetEnumerator : unit -> CharEnumerator
      member GetHashCode : unit -> int
      ...

    --------------------
    String(value: nativeptr<char>) : String
    String(value: nativeptr<sbyte>) : String
    String(value: char []) : String
    String(c: char, count: int) : String
    String(value: nativeptr<char>, startIndex: int, length: int) : String
    String(value: nativeptr<sbyte>, startIndex: int, length: int) : String
    String(value: char [], startIndex: int, length: int) : String
    String(value: nativeptr<sbyte>, startIndex: int, length: int, enc: Text.Encoding) : String
    -
    String.IsNullOrEmpty(value: string) : bool
    -
    property TextBox.Text: string
    -
    property ButtonBase.Text: string
    -
    property Control.Top: int
    -
    property Control.Controls: Control.ControlCollection
    -
    Control.ControlCollection.Add(value: Control) : unit
    -
    Control.Show() : unit
    Form.Show(owner: IWin32Window) : unit
    -
    val rev : s:string -> String
    -
    val s : string
    -
    Multiple items
    val string : value:'T -> string

    --------------------
    type string = String
    -
    String.ToCharArray() : char []
    String.ToCharArray(startIndex: int, length: int) : char []
    -
    type Array =
      member Clone : unit -> obj
      member CopyTo : array:Array * index:int -> unit + 1 overload
      member GetEnumerator : unit -> IEnumerator
      member GetLength : dimension:int -> int
      member GetLongLength : dimension:int -> int64
      member GetLowerBound : dimension:int -> int
      member GetUpperBound : dimension:int -> int
      member GetValue : [<ParamArray>] indices:int[] -> obj + 7 overloads
      member Initialize : unit -> unit
      member IsFixedSize : bool
      ...
    -
    val rev : array:'T [] -> 'T []
    -
    val input : TextBox
    -
    val reversed : Label
    -
    Multiple items
    type Label =
      inherit Control
      new : unit -> Label
      member AutoEllipsis : bool with get, set
      member AutoSize : bool with get, set
      member BackgroundImage : Image with get, set
      member BackgroundImageLayout : ImageLayout with get, set
      member BorderStyle : BorderStyle with get, set
      member FlatStyle : FlatStyle with get, set
      member GetPreferredSize : proposedSize:Size -> Size
      member Image : Image with get, set
      member ImageAlign : ContentAlignment with get, set
      ...

    --------------------
    Label() : Label
    -
    Multiple items
    val map : f:('a -> 'b) -> source:IObservable<'a> -> IObservable<'b>

    --------------------
    val map : mapping:('T -> 'U) -> source:IObservable<'T> -> IObservable<'U>
    -
    val x : String
    -
    property Label.Text: string
    -
    val reverseForm : Form
    -
    val redBtn : Button
    -
    val greenBtn : Button
    -
    val result : Label
    -
    val red : IObservable<string>
    -
    event Control.Click: IEvent<EventHandler,EventArgs>
    -
    val mapTo : x:'a -> source:IObservable<'T> -> IObservable<'a>
    -
    val green : IObservable<string>
    -
    Multiple items
    val merge : second:IObservable<'T> -> first:IObservable<'T> -> IObservable<'T>

    --------------------
    val merge : source1:IObservable<'T> -> source2:IObservable<'T> -> IObservable<'T>
    -
    val x : string
    -
    property Control.Left: int
    -
    val colorForm : Form
    +
    val buttonForm : obj
    +
    val btn : obj
    +
    val txb : obj
    +
    +
    Multiple items
    module Observable

    from FSharp.Control.Reactive

    --------------------
    module Observable

    from Microsoft.FSharp.Control
    +
    val startWith : values:#seq<'T> -> source:IObservable<'T> -> IObservable<'T>
    +
    Multiple items
    type EventArgs =
      new : unit -> EventArgs
      static val Empty : EventArgs

    --------------------
    EventArgs() : EventArgs
    +
    field EventArgs.Empty: EventArgs
    +
    Multiple items
    val subscribe : onNext:('T -> unit) -> observable:IObservable<'T> -> IDisposable

    --------------------
    val subscribe : callback:('T -> unit) -> source:IObservable<'T> -> IDisposable
    +
    val not : value:bool -> bool
    +
    Multiple items
    type String =
      new : value:char[] -> string + 8 overloads
      member Chars : int -> char
      member Clone : unit -> obj
      member CompareTo : value:obj -> int + 1 overload
      member Contains : value:string -> bool + 3 overloads
      member CopyTo : sourceIndex:int * destination:char[] * destinationIndex:int * count:int -> unit
      member EndsWith : value:string -> bool + 3 overloads
      member EnumerateRunes : unit -> StringRuneEnumerator
      member Equals : obj:obj -> bool + 2 overloads
      member GetEnumerator : unit -> CharEnumerator
      ...

    --------------------
    String(value: char []) : String
    String(value: nativeptr<char>) : String
    String(value: nativeptr<sbyte>) : String
    String(value: ReadOnlySpan<char>) : String
    String(c: char, count: int) : String
    String(value: char [], startIndex: int, length: int) : String
    String(value: nativeptr<char>, startIndex: int, length: int) : String
    String(value: nativeptr<sbyte>, startIndex: int, length: int) : String
    String(value: nativeptr<sbyte>, startIndex: int, length: int, enc: Text.Encoding) : String
    +
    String.IsNullOrEmpty(value: string) : bool
    +
    val rev : s:string -> String
    +
    val s : string
    +
    Multiple items
    val string : value:'T -> string

    --------------------
    type string = String
    +
    type Array =
      member Clone : unit -> obj
      member CopyTo : array:Array * index:int -> unit + 1 overload
      member GetEnumerator : unit -> IEnumerator
      member GetLength : dimension:int -> int
      member GetLongLength : dimension:int -> int64
      member GetLowerBound : dimension:int -> int
      member GetUpperBound : dimension:int -> int
      member GetValue : [<ParamArray>] indices:int[] -> obj + 7 overloads
      member Initialize : unit -> unit
      member IsFixedSize : bool
      ...
    +
    val rev : array:'T [] -> 'T []
    +
    val input : obj
    +
    val reversed : obj
    +
    Multiple items
    val map : f:('a -> 'b) -> source:IObservable<'a> -> IObservable<'b>

    --------------------
    val map : mapping:('T -> 'U) -> source:IObservable<'T> -> IObservable<'U>
    +
    val x : String
    +
    val reverseForm : obj
    +
    val redBtn : obj
    +
    val greenBtn : obj
    +
    val result : obj
    +
    val red : IObservable<string>
    +
    val mapTo : x:'a -> source:IObservable<'T> -> IObservable<'a>
    +
    val green : IObservable<string>
    +
    Multiple items
    val merge : second:IObservable<'T> -> first:IObservable<'T> -> IObservable<'T>

    --------------------
    val merge : source1:IObservable<'T> -> source2:IObservable<'T> -> IObservable<'T>
    +
    val x : string
    +
    val colorForm : obj
    diff --git a/reference/fsharp-control-reactive-buildersmodule-observablebuilder.html b/reference/fsharp-control-reactive-buildersmodule-observablebuilder.html index 30c9ca8..6b396eb 100644 --- a/reference/fsharp-control-reactive-buildersmodule-observablebuilder.html +++ b/reference/fsharp-control-reactive-buildersmodule-observablebuilder.html @@ -5,7 +5,7 @@ ObservableBuilder - FSharp.Control.Reactive - + @@ -33,8 +33,6 @@

    FSharp.Control.R
    - -

    ObservableBuilder

    @@ -53,11 +51,10 @@

    Constructors

    - - + new() -
    +
    Signature: unit -> ObservableBuilder
    @@ -80,13 +77,12 @@

    Instance members

    - - - Bind(m, f) + + x.Bind(m, f) -
    - Signature: (m:IObservable<'?7900> * f:('?7900 -> IObservable<'?7901>)) -> IObservable<'?7901>
    - Type parameters: '?7900, '?7901
    +
    + Signature: (m:IObservable<'?7863> * f:('?7863 -> IObservable<'?7864>)) -> IObservable<'?7864>
    + Type parameters: '?7863, '?7864
    @@ -98,13 +94,12 @@

    Instance members

    - - - Combine(comp1, comp2) + + x.Combine(comp1, comp2) -
    - Signature: (comp1:IObservable<'?7903> * comp2:IObservable<'?7903>) -> IObservable<'?7903>
    - Type parameters: '?7903
    +
    + Signature: (comp1:IObservable<'?7866> * comp2:IObservable<'?7866>) -> IObservable<'?7866>
    + Type parameters: '?7866
    @@ -116,13 +111,12 @@

    Instance members

    - - - Delay(f) + + x.Delay(f) -
    - Signature: (f:(unit -> IObservable<'?7905>)) -> IObservable<'?7905>
    - Type parameters: '?7905
    +
    + Signature: (f:(unit -> IObservable<'?7868>)) -> IObservable<'?7868>
    + Type parameters: '?7868
    @@ -134,13 +128,12 @@

    Instance members

    - - - For(sequence, body) + + x.For(sequence, body) -
    - Signature: (sequence:IEnumerable<'?7909> * body:('?7909 -> IObservable<'?7910>)) -> IObservable<'?7910>
    - Type parameters: '?7909, '?7910
    +
    + Signature: (sequence:IEnumerable<'?7872> * body:('?7872 -> IObservable<'?7873>)) -> IObservable<'?7873>
    + Type parameters: '?7872, '?7873
    @@ -152,13 +145,12 @@

    Instance members

    - - - Return(x) + + x.Return(x) -
    - Signature: x:'?7926 -> IObservable<'?7926>
    - Type parameters: '?7926 +
    + Signature: x:'?7889 -> IObservable<'?7889>
    + Type parameters: '?7889 Attributes:
    [<Obsolete("Use Yield. Return will be removed in an upcoming version of FSharp.Control.Reactive.")>]
    @@ -178,13 +170,12 @@

    Instance members

    - - - ReturnFrom(m) + + x.ReturnFrom(m) -
    - Signature: m:IObservable<'?7928> -> IObservable<'?7928>
    - Type parameters: '?7928 +
    + Signature: m:IObservable<'?7891> -> IObservable<'?7891>
    + Type parameters: '?7891 Attributes:
    [<Obsolete("Use Yield. Return will be removed in an upcoming version of FSharp.Control.Reactive.")>]
    @@ -204,13 +195,12 @@

    Instance members

    - - - TryFinally(m, compensation) + + x.TryFinally(m, compensation) -
    - Signature: (m:IObservable<'?7915> * compensation:(unit -> unit)) -> IObservable<'?7915>
    - Type parameters: '?7915
    +
    + Signature: (m:IObservable<'?7878> * compensation:(unit -> unit)) -> IObservable<'?7878>
    + Type parameters: '?7878
    @@ -222,13 +212,12 @@

    Instance members

    - - - TryWith(m, h) + + x.TryWith(m, h) -
    - Signature: (m:IObservable<'?7912> * h:('?7913 -> IObservable<'?7912>)) -> IObservable<'?7912>
    - Type parameters: '?7912, '?7913
    +
    + Signature: (m:IObservable<'?7875> * h:('?7876 -> IObservable<'?7875>)) -> IObservable<'?7875>
    + Type parameters: '?7875, '?7876
    @@ -240,13 +229,12 @@

    Instance members

    - - - Using(res, body) + + x.Using(res, body) -
    - Signature: (res:'?7917 * body:('?7917 -> IObservable<'?7918>)) -> IObservable<'?7918>
    - Type parameters: '?7917, '?7918
    +
    + Signature: (res:'?7880 * body:('?7880 -> IObservable<'?7881>)) -> IObservable<'?7881>
    + Type parameters: '?7880, '?7881
    @@ -258,13 +246,12 @@

    Instance members

    - - - While(guard, m) + + x.While(guard, m) -
    - Signature: (guard:(unit -> bool) * m:IObservable<'?7920>) -> IObservable<'?7920>
    - Type parameters: '?7920
    +
    + Signature: (guard:(unit -> bool) * m:IObservable<'?7883>) -> IObservable<'?7883>
    + Type parameters: '?7883
    @@ -276,13 +263,12 @@

    Instance members

    - - - Yield(x) + + x.Yield(x) -
    - Signature: x:'?7922 -> IObservable<'?7922>
    - Type parameters: '?7922
    +
    + Signature: x:'?7885 -> IObservable<'?7885>
    + Type parameters: '?7885
    @@ -294,13 +280,12 @@

    Instance members

    - - - YieldFrom(m) + + x.YieldFrom(m) -
    - Signature: m:IObservable<'?7924> -> IObservable<'?7924>
    - Type parameters: '?7924
    +
    + Signature: m:IObservable<'?7887> -> IObservable<'?7887>
    + Type parameters: '?7887
    @@ -312,13 +297,12 @@

    Instance members

    - - - Zero() + + x.Zero() -
    - Signature: unit -> IObservable<'?7907>
    - Type parameters: '?7907
    +
    + Signature: unit -> IObservable<'?7870>
    + Type parameters: '?7870
    diff --git a/reference/fsharp-control-reactive-buildersmodule-rxquerybuilder.html b/reference/fsharp-control-reactive-buildersmodule-rxquerybuilder.html index 9814d1c..a724ac4 100644 --- a/reference/fsharp-control-reactive-buildersmodule-rxquerybuilder.html +++ b/reference/fsharp-control-reactive-buildersmodule-rxquerybuilder.html @@ -5,7 +5,7 @@ RxQueryBuilder - FSharp.Control.Reactive - + @@ -33,8 +33,6 @@

    FSharp.Control.R
    - -

    RxQueryBuilder

    @@ -54,11 +52,10 @@

    Constructors

    - - + new() -
    +
    Signature: unit -> RxQueryBuilder
    @@ -81,13 +78,12 @@

    Instance members

    - - - All(s, predicate) + + x.All(s, predicate) -
    - Signature: (s:IObservable<'?7954> * predicate:('?7954 -> bool)) -> IObservable<bool>
    - Type parameters: '?7954 +
    + Signature: (s:IObservable<'?7917> * predicate:('?7917 -> bool)) -> IObservable<bool>
    + Type parameters: '?7917 Attributes:
    [<CustomOperation("all")>]
    @@ -103,13 +99,12 @@

    Instance members

    - - - Contains(s, key) + + x.Contains(s, key) -
    - Signature: (s:IObservable<'?7956> * key:'?7956) -> IObservable<bool>
    - Type parameters: '?7956 +
    + Signature: (s:IObservable<'?7919> * key:'?7919) -> IObservable<bool>
    + Type parameters: '?7919 Attributes:
    [<CustomOperation("contains")>]
    @@ -125,13 +120,12 @@

    Instance members

    - - - Count(s) + + x.Count(s) -
    - Signature: s:IObservable<'?7952> -> IObservable<int>
    - Type parameters: '?7952 +
    + Signature: s:IObservable<'?7915> -> IObservable<int>
    + Type parameters: '?7915 Attributes:
    [<CustomOperation("count")>]
    @@ -147,13 +141,12 @@

    Instance members

    - - - Distinct(s) + + x.Distinct(s) -
    - Signature: s:IObservable<'?7958> -> IObservable<'?7958>
    - Type parameters: '?7958 +
    + Signature: s:IObservable<'?7921> -> IObservable<'?7921>
    + Type parameters: '?7921 Attributes:
    [<CustomOperation("distinct", MaintainsVariableSpace = true, AllowIntoPattern = true)>]
    @@ -169,13 +162,12 @@

    Instance members

    - - - ExactlyOne(s) + + x.ExactlyOne(s) -
    - Signature: s:IObservable<'?7960> -> IObservable<'?7960>
    - Type parameters: '?7960 +
    + Signature: s:IObservable<'?7923> -> IObservable<'?7923>
    + Type parameters: '?7923 Attributes:
    [<CustomOperation("exactlyOne")>]
    @@ -191,13 +183,12 @@

    Instance members

    - - - ExactlyOneOrDefault(s) + + x.ExactlyOneOrDefault(s) -
    - Signature: s:IObservable<'?7962> -> IObservable<'?7962>
    - Type parameters: '?7962 +
    + Signature: s:IObservable<'?7925> -> IObservable<'?7925>
    + Type parameters: '?7925 Attributes:
    [<CustomOperation("exactlyOneOrDefault")>]
    @@ -213,13 +204,12 @@

    Instance members

    - - - Find(s, predicate) + + x.Find(s, predicate) -
    - Signature: (s:IObservable<'?7964> * predicate:('?7964 -> bool)) -> IObservable<'?7964>
    - Type parameters: '?7964 +
    + Signature: (s:IObservable<'?7927> * predicate:('?7927 -> bool)) -> IObservable<'?7927>
    + Type parameters: '?7927 Attributes:
    [<CustomOperation("find")>]
    @@ -235,13 +225,12 @@

    Instance members

    - - - For(s, body) + + x.For(s, body) -
    - Signature: (s:IObservable<'?7932> * body:('?7932 -> IObservable<'?7933>)) -> IObservable<'?7933>
    - Type parameters: '?7932, '?7933
    +
    + Signature: (s:IObservable<'?7895> * body:('?7895 -> IObservable<'?7896>)) -> IObservable<'?7896>
    + Type parameters: '?7895, '?7896
    @@ -253,13 +242,12 @@

    Instance members

    - - - GroupBy(s, keySelector) + + x.GroupBy(s, keySelector) -
    - Signature: (s:IObservable<'?7986> * keySelector:('?7986 -> '?7987)) -> IObservable<IGroupedObservable<'?7987,'?7986>>
    - Type parameters: '?7986, '?7987 +
    + Signature: (s:IObservable<'?7949> * keySelector:('?7949 -> '?7950)) -> IObservable<IGroupedObservable<'?7950,'?7949>>
    + Type parameters: '?7949, '?7950 Attributes:
    [<CustomOperation("groupBy", AllowIntoPattern = true)>]
    @@ -275,13 +263,12 @@

    Instance members

    - - - GroupJoin(...) + + x.GroupJoin(...) -
    - Signature: (s1:IObservable<'?7999> * s2:IObservable<'?8000> * s1KeySelector:('?7999 -> IObservable<'?8001>) * s2KeySelector:('?8000 -> IObservable<'?8002>) * resultSelector:('?7999 -> IObservable<'?8000> -> '?8003)) -> IObservable<'?8003>
    - Type parameters: '?7999, '?8000, '?8001, '?8002, '?8003 +
    + Signature: (s1:IObservable<'?7962> * s2:IObservable<'?7963> * s1KeySelector:('?7962 -> IObservable<'?7964>) * s2KeySelector:('?7963 -> IObservable<'?7965>) * resultSelector:('?7962 -> IObservable<'?7963> -> '?7966)) -> IObservable<'?7966>
    + Type parameters: '?7962, '?7963, '?7964, '?7965, '?7966 Attributes:
    [<CustomOperation("groupJoin", AllowIntoPattern = true)>]
    @@ -297,13 +284,12 @@

    Instance members

    - - - GroupValBy(...) + + x.GroupValBy(...) -
    - Signature: (s:IObservable<'?7989> * resultSelector:('?7989 -> '?7990) * keySelector:('?7989 -> '?7991)) -> IObservable<IGroupedObservable<'?7991,'?7990>>
    - Type parameters: '?7989, '?7990, '?7991 +
    + Signature: (s:IObservable<'?7952> * resultSelector:('?7952 -> '?7953) * keySelector:('?7952 -> '?7954)) -> IObservable<IGroupedObservable<'?7954,'?7953>>
    + Type parameters: '?7952, '?7953, '?7954 Attributes:
    [<CustomOperation("groupValBy", AllowIntoPattern = true)>]
    @@ -319,13 +305,12 @@

    Instance members

    - - - Head(s) + + x.Head(s) -
    - Signature: s:IObservable<'?7966> -> IObservable<'?7966>
    - Type parameters: '?7966 +
    + Signature: s:IObservable<'?7929> -> IObservable<'?7929>
    + Type parameters: '?7929 Attributes:
    [<CustomOperation("head")>]
    @@ -341,13 +326,12 @@

    Instance members

    - - - HeadOrDefault(s) + + x.HeadOrDefault(s) -
    - Signature: s:IObservable<'?7968> -> IObservable<'?7968>
    - Type parameters: '?7968 +
    + Signature: s:IObservable<'?7931> -> IObservable<'?7931>
    + Type parameters: '?7931 Attributes:
    [<CustomOperation("headOrDefault")>]
    @@ -363,13 +347,12 @@

    Instance members

    - - - Iter(s, selector) + + x.Iter(s, selector) -
    - Signature: (s:IObservable<'?8009> * selector:('?8009 -> unit)) -> IObservable<'?8009>
    - Type parameters: '?8009 +
    + Signature: (s:IObservable<'?7972> * selector:('?7972 -> unit)) -> IObservable<'?7972>
    + Type parameters: '?7972 Attributes:
    [<CustomOperation("iter")>]
    @@ -385,13 +368,12 @@

    Instance members

    - - - Join(...) + + x.Join(...) -
    - Signature: (s1:IObservable<'?7993> * s2:IObservable<'?7994> * s1KeySelector:('?7993 -> IObservable<'?7995>) * s2KeySelector:('?7994 -> IObservable<'?7996>) * resultSelector:('?7993 -> '?7994 -> '?7997)) -> IObservable<'?7997>
    - Type parameters: '?7993, '?7994, '?7995, '?7996, '?7997 +
    + Signature: (s1:IObservable<'?7956> * s2:IObservable<'?7957> * s1KeySelector:('?7956 -> IObservable<'?7958>) * s2KeySelector:('?7957 -> IObservable<'?7959>) * resultSelector:('?7956 -> '?7957 -> '?7960)) -> IObservable<'?7960>
    + Type parameters: '?7956, '?7957, '?7958, '?7959, '?7960 Attributes:
    [<CustomOperation("join", IsLikeJoin = true)>]
    @@ -407,13 +389,12 @@

    Instance members

    - - - Last(s) + + x.Last(s) -
    - Signature: s:IObservable<'?7970> -> IObservable<'?7970>
    - Type parameters: '?7970 +
    + Signature: s:IObservable<'?7933> -> IObservable<'?7933>
    + Type parameters: '?7933 Attributes:
    [<CustomOperation("last")>]
    @@ -429,13 +410,12 @@

    Instance members

    - - - LastOrDefault(s) + + x.LastOrDefault(s) -
    - Signature: s:IObservable<'?7972> -> IObservable<'?7972>
    - Type parameters: '?7972 +
    + Signature: s:IObservable<'?7935> -> IObservable<'?7935>
    + Type parameters: '?7935 Attributes:
    [<CustomOperation("lastOrDefault")>]
    @@ -451,11 +431,10 @@

    Instance members

    - - - MaxBy(s, valueSelector) + + x.MaxBy(s, valueSelector) -
    +
    Signature: (s:IObservable<'a> * valueSelector:('a -> 'b)) -> IObservable<IList<'a>>
    Type parameters: 'a, 'b Attributes:
    @@ -473,11 +452,10 @@

    Instance members

    - - - MinBy(s, valueSelector) + + x.MinBy(s, valueSelector) -
    +
    Signature: (s:IObservable<'a> * valueSelector:('a -> 'b)) -> IObservable<IList<'a>>
    Type parameters: 'a, 'b Attributes:
    @@ -495,11 +473,10 @@

    Instance members

    - - - Nth(s, index) + + x.Nth(s, index) -
    +
    Signature: (s:IObservable<'a> * index:int) -> IObservable<'a>
    Type parameters: 'a Attributes:
    @@ -517,13 +494,12 @@

    Instance members

    - - - Select(s, selector) + + x.Select(s, selector) -
    - Signature: (s:IObservable<'?7935> * selector:('?7935 -> '?7936)) -> IObservable<'?7936>
    - Type parameters: '?7935, '?7936 +
    + Signature: (s:IObservable<'?7898> * selector:('?7898 -> '?7899)) -> IObservable<'?7899>
    + Type parameters: '?7898, '?7899 Attributes:
    [<CustomOperation("select", AllowIntoPattern = true)>]
    @@ -539,13 +515,12 @@

    Instance members

    - - - Skip(s, count) + + x.Skip(s, count) -
    - Signature: (s:IObservable<'?7946> * count:int) -> IObservable<'?7946>
    - Type parameters: '?7946 +
    + Signature: (s:IObservable<'?7909> * count:int) -> IObservable<'?7909>
    + Type parameters: '?7909 Attributes:
    [<CustomOperation("skip", MaintainsVariableSpace = true, AllowIntoPattern = true)>]
    @@ -561,13 +536,12 @@

    Instance members

    - - - SkipWhile(s, predicate) + + x.SkipWhile(s, predicate) -
    - Signature: (s:IObservable<'?7944> * predicate:('?7944 -> bool)) -> IObservable<'?7944>
    - Type parameters: '?7944 +
    + Signature: (s:IObservable<'?7907> * predicate:('?7907 -> bool)) -> IObservable<'?7907>
    + Type parameters: '?7907 Attributes:
    [<CustomOperation("skipWhile", MaintainsVariableSpace = true, AllowIntoPattern = true)>]
    @@ -583,13 +557,12 @@

    Instance members

    - - - SumBy(s, valueSelector) + + x.SumBy(s, valueSelector) -
    - Signature: (s:IObservable<'?7982> * valueSelector:('?7982 -> ^?7983)) -> IObservable<^?7984>
    - Type parameters: '?7982, ^?7983, ^?7984 +
    + Signature: (s:IObservable<'?7945> * valueSelector:('?7945 -> ^?7946)) -> IObservable<^?7947>
    + Type parameters: '?7945, ^?7946, ^?7947 Attributes:
    [<CustomOperation("sumBy")>]
    @@ -605,13 +578,12 @@

    Instance members

    - - - Take(s, count) + + x.Take(s, count) -
    - Signature: (s:IObservable<'?7942> * count:int) -> IObservable<'?7942>
    - Type parameters: '?7942 +
    + Signature: (s:IObservable<'?7905> * count:int) -> IObservable<'?7905>
    + Type parameters: '?7905 Attributes:
    [<CustomOperation("take", MaintainsVariableSpace = true, AllowIntoPattern = true)>]
    @@ -627,13 +599,12 @@

    Instance members

    - - - TakeWhile(s, predicate) + + x.TakeWhile(s, predicate) -
    - Signature: (s:IObservable<'?7940> * predicate:('?7940 -> bool)) -> IObservable<'?7940>
    - Type parameters: '?7940 +
    + Signature: (s:IObservable<'?7903> * predicate:('?7903 -> bool)) -> IObservable<'?7903>
    + Type parameters: '?7903 Attributes:
    [<CustomOperation("takeWhile", MaintainsVariableSpace = true, AllowIntoPattern = true)>]
    @@ -649,13 +620,12 @@

    Instance members

    - - - Where(s, predicate) + + x.Where(s, predicate) -
    - Signature: (s:IObservable<'?7938> * predicate:('?7938 -> bool)) -> IObservable<'?7938>
    - Type parameters: '?7938 +
    + Signature: (s:IObservable<'?7901> * predicate:('?7901 -> bool)) -> IObservable<'?7901>
    + Type parameters: '?7901 Attributes:
    [<CustomOperation("where", MaintainsVariableSpace = true, AllowIntoPattern = true)>]
    @@ -671,13 +641,12 @@

    Instance members

    - - - Yield(value) + + x.Yield(value) -
    - Signature: value:'?7950 -> IObservable<'?7950>
    - Type parameters: '?7950
    +
    + Signature: value:'?7913 -> IObservable<'?7913>
    + Type parameters: '?7913
    @@ -689,13 +658,12 @@

    Instance members

    - - - Zero() + + x.Zero() -
    - Signature: unit -> IObservable<'?7948>
    - Type parameters: '?7948
    +
    + Signature: unit -> IObservable<'?7911>
    + Type parameters: '?7911
    @@ -707,13 +675,12 @@

    Instance members

    - - - Zip(s1, s2, resultSelector) + + x.Zip(s1, s2, resultSelector) -
    - Signature: (s1:IObservable<'?8005> * s2:IObservable<'?8006> * resultSelector:('?8005 -> '?8006 -> '?8007)) -> IObservable<'?8007>
    - Type parameters: '?8005, '?8006, '?8007 +
    + Signature: (s1:IObservable<'?7968> * s2:IObservable<'?7969> * resultSelector:('?7968 -> '?7969 -> '?7970)) -> IObservable<'?7970>
    + Type parameters: '?7968, '?7969, '?7970 Attributes:
    [<CustomOperation("zip", IsLikeZip = true)>]
    diff --git a/reference/fsharp-control-reactive-buildersmodule.html b/reference/fsharp-control-reactive-buildersmodule.html index d262f51..2099be2 100644 --- a/reference/fsharp-control-reactive-buildersmodule.html +++ b/reference/fsharp-control-reactive-buildersmodule.html @@ -5,7 +5,7 @@ Builders - FSharp.Control.Reactive - + @@ -33,8 +33,6 @@

    FSharp.Control.R
    - -

    Builders

    Namespace: FSharp.Control.Reactive
    @@ -89,9 +87,8 @@

    Functions and values

    - - observe + observe
    Signature: ObservableBuilder
    @@ -107,9 +104,8 @@

    Functions and values

    - - rxquery + rxquery
    Signature: RxQueryBuilder
    diff --git a/reference/fsharp-control-reactive-disposable.html b/reference/fsharp-control-reactive-disposable.html index bcde374..28116a3 100644 --- a/reference/fsharp-control-reactive-disposable.html +++ b/reference/fsharp-control-reactive-disposable.html @@ -5,7 +5,7 @@ Disposable - FSharp.Control.Reactive - + @@ -33,8 +33,6 @@

    FSharp.Control.R
    - -

    Disposable

    @@ -50,11 +48,10 @@

    Constructors

    - - + new() -
    +
    Signature: unit -> Disposable
    @@ -77,11 +74,10 @@

    Static members

    - - - Composite + + Disposable.Composite -
    +
    Signature: CompositeDisposable
    @@ -98,11 +94,10 @@

    Static members

    - - - Serial + + Disposable.Serial -
    +
    Signature: SerialDisposable
    diff --git a/reference/fsharp-control-reactive-disposablemodule.html b/reference/fsharp-control-reactive-disposablemodule.html index e027113..52b5086 100644 --- a/reference/fsharp-control-reactive-disposablemodule.html +++ b/reference/fsharp-control-reactive-disposablemodule.html @@ -5,7 +5,7 @@ Disposable - FSharp.Control.Reactive - + @@ -33,8 +33,6 @@

    FSharp.Control.R
    - -

    Disposable

    Namespace: FSharp.Control.Reactive
    @@ -59,7 +57,6 @@

    Functions and values

    - compose x d @@ -79,9 +76,8 @@

    Functions and values

    - - create f + create(f)
    diff --git a/reference/fsharp-control-reactive-disposables.html b/reference/fsharp-control-reactive-disposables.html index 97b53e3..73996a4 100644 --- a/reference/fsharp-control-reactive-disposables.html +++ b/reference/fsharp-control-reactive-disposables.html @@ -5,7 +5,7 @@ Disposables - FSharp.Control.Reactive - + @@ -33,8 +33,6 @@

    FSharp.Control.R
    - -

    Disposables

    Namespace: FSharp.Control.Reactive
    @@ -52,9 +50,8 @@

    Functions and values

    - - compose disposables + compose(disposables)
    - + @@ -100,16 +96,15 @@

    Functions and values

    - amb second first
    - Signature: second:IObservable<'?8108> -> first:IObservable<'?8108> -> IObservable<'?8108>
    - Type parameters: '?8108
    + Signature: second:IObservable<'?8069> -> first:IObservable<'?8069> -> IObservable<'?8069>
    + Type parameters: '?8069
    - + @@ -120,16 +115,15 @@

    Functions and values

    - - ambArray source + ambArray(source)
    Signature: source:IObservable<'T> [] -> IObservable<'T>
    Type parameters: 'T
    - + @@ -140,16 +134,15 @@

    Functions and values

    - - ambSeq source + ambSeq(source)
    Signature: source:seq<IObservable<'T>> -> IObservable<'T>
    Type parameters: 'T
    - + @@ -160,16 +153,15 @@

    Functions and values

    - - any source + any(source)
    Signature: source:IObservable<'Source> -> IObservable<bool>
    Type parameters: 'Source
    - + @@ -180,16 +172,15 @@

    Functions and values

    - apply f m
    - Signature: f:IObservable<('?8121 -> '?8122)> -> m:IObservable<'?8121> -> IObservable<'?8122>
    - Type parameters: '?8121, '?8122
    + Signature: f:IObservable<('?8082 -> '?8083)> -> m:IObservable<'?8082> -> IObservable<'?8083>
    + Type parameters: '?8082, '?8083
    -
    + @@ -200,16 +191,15 @@

    Functions and values

    - - asObservable source + asObservable(source)
    Signature: source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -220,7 +210,6 @@

    Functions and values

    - bind f m @@ -229,7 +218,7 @@

    Functions and values

    Type parameters: 'T, 'TNext
    - + @@ -240,16 +229,15 @@

    Functions and values

    - both second first
    - Signature: second:IObservable<'?8124> -> first:IObservable<'?8125> -> Pattern<'?8125,'?8124>
    - Type parameters: '?8124, '?8125
    + Signature: second:IObservable<'?8085> -> first:IObservable<'?8086> -> Pattern<'?8086,'?8085>
    + Type parameters: '?8085, '?8086
    - + @@ -260,16 +248,15 @@

    Functions and values

    - buffer bufferClosingSelector source
    - Signature: bufferClosingSelector:IObservable<'BufferClosing> -> source:IObservable<'?8128> -> IObservable<IList<'?8128>>
    - Type parameters: 'BufferClosing, '?8128
    + Signature: bufferClosingSelector:IObservable<'BufferClosing> -> source:IObservable<'?8089> -> IObservable<IList<'?8089>>
    + Type parameters: 'BufferClosing, '?8089
    - + @@ -278,7 +265,6 @@

    Functions and values

    - bufferBounded boundaries source @@ -287,7 +273,7 @@

    Functions and values

    Type parameters: 'BufferClosing, 'T
    - + @@ -299,16 +285,15 @@

    Functions and values

    - bufferCount count source
    - Signature: count:int -> source:IObservable<'?8133> -> IObservable<IList<'?8133>>
    - Type parameters: '?8133
    + Signature: count:int -> source:IObservable<'?8094> -> IObservable<IList<'?8094>>
    + Type parameters: '?8094

    - + @@ -320,16 +305,15 @@

    Functions and values

    - bufferCountSkip count skip source
    - Signature: count:int -> skip:int -> source:IObservable<'?8135> -> IObservable<IList<'?8135>>
    - Type parameters: '?8135
    + Signature: count:int -> skip:int -> source:IObservable<'?8096> -> IObservable<IList<'?8096>>
    + Type parameters: '?8096
    -
    + @@ -341,16 +325,15 @@

    Functions and values

    - - bufferFork (...) + bufferFork(...)
    - Signature: bufferOpenings:IObservable<'BufferOpening> -> bufferClosingSelector:('BufferOpening -> IObservable<'T>) -> source:IObservable<'?8147> -> IObservable<IList<'?8147>>
    - Type parameters: 'BufferOpening, 'T, '?8147
    + Signature: bufferOpenings:IObservable<'BufferOpening> -> bufferClosingSelector:('BufferOpening -> IObservable<'T>) -> source:IObservable<'?8108> -> IObservable<IList<'?8108>>
    + Type parameters: 'BufferOpening, 'T, '?8108
    - + @@ -363,16 +346,15 @@

    Functions and values

    - bufferSpan timeSpan source
    - Signature: timeSpan:TimeSpan -> source:IObservable<'?8137> -> IObservable<IList<'?8137>>
    - Type parameters: '?8137
    + Signature: timeSpan:TimeSpan -> source:IObservable<'?8098> -> IObservable<IList<'?8098>>
    + Type parameters: '?8098

    - + @@ -384,16 +366,15 @@

    Functions and values

    - bufferSpanCount timeSpan count source
    - Signature: timeSpan:TimeSpan -> count:int -> source:IObservable<'?8141> -> IObservable<IList<'?8141>>
    - Type parameters: '?8141
    + Signature: timeSpan:TimeSpan -> count:int -> source:IObservable<'?8102> -> IObservable<IList<'?8102>>
    + Type parameters: '?8102
    - + @@ -406,16 +387,15 @@

    Functions and values

    - - bufferSpanCountOn (...) + bufferSpanCountOn(...)
    - Signature: scheduler:IScheduler -> timeSpan:TimeSpan -> count:int -> source:IObservable<'?8143> -> IObservable<IList<'?8143>>
    - Type parameters: '?8143
    + Signature: scheduler:IScheduler -> timeSpan:TimeSpan -> count:int -> source:IObservable<'?8104> -> IObservable<IList<'?8104>>
    + Type parameters: '?8104
    - + @@ -429,16 +409,15 @@

    Functions and values

    - bufferSpanOn scheduler timeSpan source
    - Signature: scheduler:IScheduler -> timeSpan:TimeSpan -> source:IObservable<'?8139> -> IObservable<IList<'?8139>>
    - Type parameters: '?8139
    + Signature: scheduler:IScheduler -> timeSpan:TimeSpan -> source:IObservable<'?8100> -> IObservable<IList<'?8100>>
    + Type parameters: '?8100
    - + @@ -450,16 +429,15 @@

    Functions and values

    - - bufferSpanShift (...) + bufferSpanShift(...)
    - Signature: timeSpan:TimeSpan -> timeShift:TimeSpan -> source:IObservable<'?8149> -> IObservable<IList<'?8149>>
    - Type parameters: '?8149
    + Signature: timeSpan:TimeSpan -> timeShift:TimeSpan -> source:IObservable<'?8110> -> IObservable<IList<'?8110>>
    + Type parameters: '?8110
    - + @@ -471,16 +449,15 @@

    Functions and values

    - - bufferSpanShiftOn (...) + bufferSpanShiftOn(...)
    - Signature: scheduler:IScheduler -> timeSpan:TimeSpan -> timeShift:TimeSpan -> source:IObservable<'?8151> -> IObservable<IList<'?8151>>
    - Type parameters: '?8151
    + Signature: scheduler:IScheduler -> timeSpan:TimeSpan -> timeShift:TimeSpan -> source:IObservable<'?8112> -> IObservable<IList<'?8112>>
    + Type parameters: '?8112
    - + @@ -493,16 +470,15 @@

    Functions and values

    - case selector sources
    - Signature: selector:(unit -> '?8155) -> sources:IDictionary<'?8155,IObservable<'?8156>> -> IObservable<'?8156>
    - Type parameters: '?8155, '?8156
    + Signature: selector:(unit -> '?8116) -> sources:IDictionary<'?8116,IObservable<'?8117>> -> IObservable<'?8117>
    + Type parameters: '?8116, '?8117
    - + @@ -514,16 +490,15 @@

    Functions and values

    - - caseDefault (...) + caseDefault(...)
    Signature: selector:(unit -> 'Value) -> defaulSource:IObservable<'Result> -> sources:IDictionary<'Value,IObservable<'Result>> -> IObservable<'Result>
    Type parameters: 'Value, 'Result
    - + @@ -535,16 +510,15 @@

    Functions and values

    - caseOn scheduler selector sources
    - Signature: scheduler:IScheduler -> selector:Func<'?8161> -> sources:IDictionary<'?8161,IObservable<'?8162>> -> IObservable<'?8162>
    - Type parameters: '?8161, '?8162
    + Signature: scheduler:IScheduler -> selector:Func<'?8122> -> sources:IDictionary<'?8122,IObservable<'?8123>> -> IObservable<'?8123>
    + Type parameters: '?8122, '?8123
    - + @@ -556,16 +530,15 @@

    Functions and values

    - - cast source + cast(source)
    Signature: source:IObservable<obj> -> IObservable<'CastType>
    Type parameters: 'CastType
    - + @@ -576,7 +549,6 @@

    Functions and values

    - catch second first @@ -585,7 +557,7 @@

    Functions and values

    Type parameters: 'T
    - + @@ -597,16 +569,15 @@

    Functions and values

    - - catchArray sources + catchArray(sources)
    Signature: sources:IObservable<'T> [] -> IObservable<'T>
    Type parameters: 'T
    - + @@ -617,16 +588,15 @@

    Functions and values

    - - catchOption source + catchOption(source)
    - Signature: source:IObservable<'?8166> -> IObservable<'?8166 option>
    - Type parameters: '?8166
    + Signature: source:IObservable<'?8127> -> IObservable<'?8127 option>
    + Type parameters: '?8127
    - + @@ -638,16 +608,15 @@

    Functions and values

    - catchResult handler source
    - Signature: handler:('?8168 -> IObservable<'?8169>) -> source:IObservable<'?8170> -> IObservable<Result<'?8170,'?8169>>
    - Type parameters: '?8168, '?8169, '?8170
    + Signature: handler:('?8129 -> IObservable<'?8130>) -> source:IObservable<'?8131> -> IObservable<Result<'?8131,'?8130>>
    + Type parameters: '?8129, '?8130, '?8131
    - + @@ -660,16 +629,15 @@

    Functions and values

    - - catchSeq sources + catchSeq(sources)
    Signature: sources:seq<IObservable<'T>> -> IObservable<'T>
    Type parameters: 'T
    - + @@ -680,16 +648,15 @@

    Functions and values

    - catchWith handler source
    - Signature: handler:('?8172 -> IObservable<'?8173>) -> source:IObservable<'?8173> -> IObservable<'?8173>
    - Type parameters: '?8172, '?8173
    + Signature: handler:('?8133 -> IObservable<'?8134>) -> source:IObservable<'?8134> -> IObservable<'?8134>
    + Type parameters: '?8133, '?8134
    - + @@ -701,16 +668,15 @@

    Functions and values

    - choose f source
    - Signature: f:('?8889 -> '?8890 option) -> source:IObservable<'?8889> -> IObservable<'?8890>
    - Type parameters: '?8889, '?8890
    + Signature: f:('?8850 -> '?8851 option) -> source:IObservable<'?8850> -> IObservable<'?8851>
    + Type parameters: '?8850, '?8851
    - + @@ -726,16 +692,15 @@

    Functions and values

    - - chunkify source + chunkify(source)
    Signature: source:IObservable<'Source> -> seq<IList<'Source>>
    Type parameters: 'Source
    - + @@ -746,7 +711,6 @@

    Functions and values

    - collect map source @@ -755,7 +719,7 @@

    Functions and values

    Type parameters: 'Source, 'Result
    - + @@ -766,16 +730,15 @@

    Functions and values

    - collectMerge newCollector merge source
    - Signature: newCollector:(unit -> '?8184) -> merge:('?8184 -> '?8185 -> '?8184) -> source:IObservable<'?8185> -> IEnumerable<'?8184>
    - Type parameters: '?8184, '?8185
    + Signature: newCollector:(unit -> '?8145) -> merge:('?8145 -> '?8146 -> '?8145) -> source:IObservable<'?8146> -> IEnumerable<'?8145>
    + Type parameters: '?8145, '?8146
    - + @@ -788,16 +751,15 @@

    Functions and values

    - - collectMergeInit (...) + collectMergeInit(...)
    - Signature: getInitialCollector:(unit -> '?8187) -> merge:('?8187 -> '?8188 -> '?8187) -> getNewCollector:('?8187 -> '?8187) -> source:IObservable<'?8188> -> IEnumerable<'?8187>
    - Type parameters: '?8187, '?8188
    + Signature: getInitialCollector:(unit -> '?8148) -> merge:('?8148 -> '?8149 -> '?8148) -> getNewCollector:('?8148 -> '?8148) -> source:IObservable<'?8149> -> IEnumerable<'?8148>
    + Type parameters: '?8148, '?8149
    - + @@ -811,7 +773,6 @@

    Functions and values

    - combineLatest source1 source2 @@ -820,7 +781,7 @@

    Functions and values

    Type parameters: 'T1, 'T2
    - + @@ -832,16 +793,15 @@

    Functions and values

    - - combineLatestArray source + combineLatestArray(source)
    Signature: source:IObservable<'T> [] -> IObservable<IList<'T>>
    Type parameters: 'T
    - + @@ -853,16 +813,15 @@

    Functions and values

    - - combineLatestSeq source + combineLatestSeq(source)
    Signature: source:seq<IObservable<'T>> -> IObservable<IList<'T>>
    Type parameters: 'T
    - + @@ -875,7 +834,6 @@

    Functions and values

    - combineLatestSeqMap map source @@ -884,7 +842,7 @@

    Functions and values

    Type parameters: 'T, 'Result
    - + @@ -896,7 +854,6 @@

    Functions and values

    - concat second first @@ -905,7 +862,7 @@

    Functions and values

    Type parameters: 'T
    - + @@ -917,16 +874,15 @@

    Functions and values

    - - concatArray sources + concatArray(sources)
    Signature: sources:IObservable<'T> [] -> IObservable<'T>
    Type parameters: 'T
    - + @@ -938,16 +894,15 @@

    Functions and values

    - - concatInner sources + concatInner(sources)
    Signature: sources:IObservable<IObservable<'T>> -> IObservable<'T>
    Type parameters: 'T
    - + @@ -959,16 +914,15 @@

    Functions and values

    - - concatSeq sources + concatSeq(sources)
    Signature: sources:seq<IObservable<'T>> -> IObservable<'T>
    Type parameters: 'T
    - + @@ -980,16 +934,15 @@

    Functions and values

    - - concatTasks sources + concatTasks(sources)
    Signature: sources:IObservable<Task<'T>> -> IObservable<'T>
    Type parameters: 'T
    - + @@ -1001,16 +954,15 @@

    Functions and values

    - - connect source + connect(source)
    - Signature: source:IConnectableObservable<'?8210> -> IDisposable
    - Type parameters: '?8210
    + Signature: source:IConnectableObservable<'?8171> -> IDisposable
    + Type parameters: '?8171
    - + @@ -1024,16 +976,15 @@

    Functions and values

    - consume consumer source
    - Signature: consumer:IObservable<'?8919> -> source:IObservable<'?8920> -> IObservable<'?8919>
    - Type parameters: '?8919, '?8920
    + Signature: consumer:IObservable<'?8880> -> source:IObservable<'?8881> -> IObservable<'?8880>
    + Type parameters: '?8880, '?8881
    - + @@ -1072,7 +1023,6 @@

    Returns

    - consumeMap f source @@ -1081,7 +1031,7 @@

    Returns

    Type parameters: 'a, 'b
    - + @@ -1120,16 +1070,15 @@

    Returns

    - consumeNext f source
    - Signature: f:('?8925 -> '?8926 option) -> source:IObservable<'?8925> -> IObservable<'?8926>
    - Type parameters: '?8925, '?8926
    + Signature: f:('?8886 -> '?8887 option) -> source:IObservable<'?8886> -> IObservable<'?8887>
    + Type parameters: '?8886, '?8887
    - + @@ -1168,16 +1117,15 @@

    Returns

    - consumeNextOn sch f source
    - Signature: sch:IScheduler -> f:('?8922 -> '?8923 option) -> source:IObservable<'?8922> -> IObservable<'?8923>
    - Type parameters: '?8922, '?8923
    + Signature: sch:IScheduler -> f:('?8883 -> '?8884 option) -> source:IObservable<'?8883> -> IObservable<'?8884>
    + Type parameters: '?8883, '?8884
    - + @@ -1216,16 +1164,15 @@

    Returns

    - contains value source
    - Signature: value:'?8212 -> source:IObservable<'?8212> -> IObservable<bool>
    - Type parameters: '?8212
    + Signature: value:'?8173 -> source:IObservable<'?8173> -> IObservable<bool>
    + Type parameters: '?8173
    - + @@ -1237,16 +1184,15 @@

    Returns

    - containsCompare comparer value source
    - Signature: comparer:IEqualityComparer<'?8214> -> value:'?8214 -> source:IObservable<'?8214> -> IObservable<bool>
    - Type parameters: '?8214
    + Signature: comparer:IEqualityComparer<'?8175> -> value:'?8175 -> source:IObservable<'?8175> -> IObservable<bool>
    + Type parameters: '?8175
    - + @@ -1258,16 +1204,15 @@

    Returns

    - - count source + count(source)
    - Signature: source:IObservable<'?8216> -> IObservable<int>
    - Type parameters: '?8216
    + Signature: source:IObservable<'?8177> -> IObservable<int>
    + Type parameters: '?8177
    - + @@ -1278,16 +1223,15 @@

    Returns

    - countSatisfy predicate source
    - Signature: predicate:('?8218 -> bool) -> source:IObservable<'?8218> -> IObservable<int>
    - Type parameters: '?8218
    + Signature: predicate:('?8179 -> bool) -> source:IObservable<'?8179> -> IObservable<int>
    + Type parameters: '?8179
    - + @@ -1299,16 +1243,15 @@

    Returns

    - - defaultIfEmpty source + defaultIfEmpty(source)
    Signature: source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -1320,7 +1263,6 @@

    Returns

    - defaultIfEmptyIs defaultValue source @@ -1329,7 +1271,7 @@

    Returns

    Type parameters: 'Source
    - + @@ -1340,16 +1282,15 @@

    Returns

    - - defer observableFactory + defer(observableFactory)
    Signature: observableFactory:(unit -> IObservable<'Result>) -> IObservable<'Result>
    Type parameters: 'Result
    - + @@ -1360,7 +1301,6 @@

    Returns

    - delay dueTime source @@ -1369,7 +1309,7 @@

    Returns

    Type parameters: 'Source
    - + @@ -1381,7 +1321,6 @@

    Returns

    - delayMap delayDurationSelector source @@ -1390,7 +1329,7 @@

    Returns

    Type parameters: 'Source, 'TDelay
    - + @@ -1401,16 +1340,15 @@

    Returns

    - - delayMapFilter (...) + delayMapFilter(...)
    Signature: delayDurationSelector:('Source -> IObservable<'TDelay>) -> subscriptionDelay:IObservable<'TDelay> -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source, 'TDelay
    - + @@ -1421,16 +1359,15 @@

    Returns

    - delayOn scheduler dueTime source
    - Signature: scheduler:IScheduler -> dueTime:TimeSpan -> source:IObservable<'?8228> -> IObservable<'?8228>
    - Type parameters: '?8228
    + Signature: scheduler:IScheduler -> dueTime:TimeSpan -> source:IObservable<'?8189> -> IObservable<'?8189>
    + Type parameters: '?8189
    - + @@ -1443,7 +1380,6 @@

    Returns

    - delaySubscription dueTime source @@ -1452,7 +1388,7 @@

    Returns

    Type parameters: 'Source
    - + @@ -1463,16 +1399,15 @@

    Returns

    - - delaySubscriptionOn (...) + delaySubscriptionOn(...)
    - Signature: scheduler:IScheduler -> dueTime:TimeSpan -> source:IObservable<'?8242> -> IObservable<'?8242>
    - Type parameters: '?8242
    + Signature: scheduler:IScheduler -> dueTime:TimeSpan -> source:IObservable<'?8203> -> IObservable<'?8203>
    + Type parameters: '?8203
    - + @@ -1484,7 +1419,6 @@

    Returns

    - delaySubscriptionUntil dueTime source @@ -1493,7 +1427,7 @@

    Returns

    Type parameters: 'Source
    - + @@ -1504,16 +1438,15 @@

    Returns

    - - delaySubscriptionUntilOn (...) + delaySubscriptionUntilOn(...)
    - Signature: scheduler:IScheduler -> dueTime:DateTimeOffset -> source:IObservable<'?8246> -> IObservable<'?8246>
    - Type parameters: '?8246
    + Signature: scheduler:IScheduler -> dueTime:DateTimeOffset -> source:IObservable<'?8207> -> IObservable<'?8207>
    + Type parameters: '?8207
    - + @@ -1525,7 +1458,6 @@

    Returns

    - delayUntil source dueTime @@ -1534,7 +1466,7 @@

    Returns

    Type parameters: 'Source
    - + @@ -1546,16 +1478,15 @@

    Returns

    - delayUntilOn scheduler dueTime source
    - Signature: scheduler:IScheduler -> dueTime:DateTimeOffset -> source:IObservable<'?8232> -> IObservable<'?8232>
    - Type parameters: '?8232
    + Signature: scheduler:IScheduler -> dueTime:DateTimeOffset -> source:IObservable<'?8193> -> IObservable<'?8193>
    + Type parameters: '?8193
    - + @@ -1568,16 +1499,15 @@

    Returns

    - - dematerialize source + dematerialize(source)
    - Signature: source:IObservable<Notification<'?8248>> -> IObservable<'?8248>
    - Type parameters: '?8248
    + Signature: source:IObservable<Notification<'?8209>> -> IObservable<'?8209>
    + Type parameters: '?8209
    - + @@ -1588,16 +1518,15 @@

    Returns

    - - distinct source + distinct(source)
    Signature: source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -1608,7 +1537,6 @@

    Returns

    - distinctCompare comparer source @@ -1617,7 +1545,7 @@

    Returns

    Type parameters: 'Source
    - + @@ -1628,7 +1556,6 @@

    Returns

    - distinctKey keySelector source @@ -1637,7 +1564,7 @@

    Returns

    Type parameters: 'Source, 'Key
    - + @@ -1648,16 +1575,15 @@

    Returns

    - - distinctKeyCompare (...) + distinctKeyCompare(...)
    Signature: keySelector:('Source -> 'Key) -> comparer:IEqualityComparer<'Key> -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source, 'Key
    - + @@ -1668,16 +1594,15 @@

    Returns

    - - distinctUntilChanged source + distinctUntilChanged(source)
    Signature: source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -1688,16 +1613,15 @@

    Returns

    - - distinctUntilChangedCompare (...) + distinctUntilChangedCompare(...)
    Signature: comparer:IEqualityComparer<'Source> -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -1708,16 +1632,15 @@

    Returns

    - - distinctUntilChangedKey (...) + distinctUntilChangedKey(...)
    Signature: keySelector:('Source -> 'Key) -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source, 'Key
    - + @@ -1728,16 +1651,15 @@

    Returns

    - - distinctUntilChangedKeyCompare (...) + distinctUntilChangedKeyCompare(...)
    Signature: keySelector:('Source -> 'Key) -> comparer:IEqualityComparer<'Key> -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source, 'Key
    - + @@ -1748,7 +1670,6 @@

    Returns

    - elementAt index source @@ -1757,7 +1678,7 @@

    Returns

    Type parameters: 'Source
    - + @@ -1768,7 +1689,6 @@

    Returns

    - elementAtOrDefault index source @@ -1777,7 +1697,7 @@

    Returns

    Type parameters: 'Source
    - + @@ -1788,16 +1708,15 @@

    Returns

    - - empty + empty
    Signature: IObservable<'T>
    Type parameters: 'T
    - + @@ -1808,16 +1727,15 @@

    Returns

    - - emptyCompleted scheduler + emptyCompleted(scheduler)
    - Signature: scheduler:IScheduler -> IObservable<'?8278>
    - Type parameters: '?8278
    + Signature: scheduler:IScheduler -> IObservable<'?8239>
    + Type parameters: '?8239
    - + @@ -1828,16 +1746,15 @@

    Returns

    - emptyCompletedWitness scheduler witness
    - Signature: scheduler:IScheduler -> witness:'?8280 -> IObservable<'?8280>
    - Type parameters: '?8280
    + Signature: scheduler:IScheduler -> witness:'?8241 -> IObservable<'?8241>
    + Type parameters: '?8241
    - + @@ -1848,16 +1765,15 @@

    Returns

    - - emptyWitness witness + emptyWitness(witness)
    Signature: witness:'T -> IObservable<'T>
    Type parameters: 'T
    - + @@ -1868,7 +1784,6 @@

    Returns

    - equals first second @@ -1877,7 +1792,7 @@

    Returns

    Type parameters: 'Source
    - + @@ -1888,7 +1803,6 @@

    Returns

    - equalsComparer comparer first second @@ -1897,7 +1811,7 @@

    Returns

    Type parameters: 'Source
    - + @@ -1908,7 +1822,6 @@

    Returns

    - equalsSeq first second @@ -1917,7 +1830,7 @@

    Returns

    Type parameters: 'Source
    - + @@ -1928,7 +1841,6 @@

    Returns

    - equalsSeqComparer comparer first second @@ -1937,7 +1849,7 @@

    Returns

    Type parameters: 'Source
    - + @@ -1948,16 +1860,15 @@

    Returns

    - - error e + error(e)
    - Signature: e:exn -> IObservable<'?8290>
    - Type parameters: '?8290
    + Signature: e:exn -> IObservable<'?8251>
    + Type parameters: '?8251
    - + @@ -1966,16 +1877,15 @@

    Returns

    - exhaustMap f source
    - Signature: f:('?8896 -> '?8897) -> source:IObservable<'?8896> -> IObservable<'?8898>
    - Type parameters: '?8896, '?8897, '?8898
    + Signature: f:('?8857 -> '?8858) -> source:IObservable<'?8857> -> IObservable<'?8859>
    + Type parameters: '?8857, '?8858, '?8859
    - + @@ -1994,16 +1904,15 @@

    Returns

    - exists predicate source
    - Signature: predicate:('?8292 -> bool) -> source:IObservable<'?8292> -> IObservable<bool>
    - Type parameters: '?8292
    + Signature: predicate:('?8253 -> bool) -> source:IObservable<'?8253> -> IObservable<bool>
    + Type parameters: '?8253
    - + @@ -2015,7 +1924,6 @@

    Returns

    - filter predicate source @@ -2024,7 +1932,7 @@

    Returns

    Type parameters: 'T
    - + @@ -2035,7 +1943,6 @@

    Returns

    - filteri predicate source @@ -2044,7 +1951,7 @@

    Returns

    Type parameters: 'T
    - + @@ -2056,16 +1963,15 @@

    Returns

    - finallyDo finallyAction source
    - Signature: finallyAction:(unit -> unit) -> source:IObservable<'?8298> -> IObservable<'?8298>
    - Type parameters: '?8298
    + Signature: finallyAction:(unit -> unit) -> source:IObservable<'?8259> -> IObservable<'?8259>
    + Type parameters: '?8259
    - + @@ -2077,16 +1983,15 @@

    Returns

    - - first source + first(source)
    Signature: source:IObservable<'T> -> IObservable<'T>
    Type parameters: 'T
    - + @@ -2097,7 +2002,6 @@

    Returns

    - firstIf predicate source @@ -2106,7 +2010,7 @@

    Returns

    Type parameters: 'T
    - + @@ -2118,7 +2022,6 @@

    Returns

    - flatmap map source @@ -2127,7 +2030,7 @@

    Returns

    Type parameters: 'S, 'R

    - + @@ -2139,16 +2042,15 @@

    Returns

    - flatmapAsync asyncOperation source
    - Signature: asyncOperation:('Source -> Async<'?8322>) -> source:IObservable<'Source> -> IObservable<'?8322>
    - Type parameters: 'Source, '?8322
    + Signature: asyncOperation:('Source -> Async<'?8283>) -> source:IObservable<'Source> -> IObservable<'?8283>
    + Type parameters: 'Source, '?8283
    - + @@ -2159,7 +2061,6 @@

    Returns

    - flatmapOther other source @@ -2168,7 +2069,7 @@

    Returns

    Type parameters: 'Other, 'Source
    - + @@ -2180,7 +2081,6 @@

    Returns

    - flatmapSeq map source @@ -2189,7 +2089,7 @@

    Returns

    Type parameters: 'Source, 'Result
    - + @@ -2201,7 +2101,6 @@

    Returns

    - flatmapTask map source @@ -2210,7 +2109,7 @@

    Returns

    Type parameters: 'Source, 'Result
    - + @@ -2221,16 +2120,15 @@

    Returns

    - fold accumulator init source
    - Signature: accumulator:('?8324 -> '?8325 -> '?8324) -> init:'?8324 -> source:IObservable<'?8325> -> IObservable<'?8324>
    - Type parameters: '?8324, '?8325
    + Signature: accumulator:('?8285 -> '?8286 -> '?8285) -> init:'?8285 -> source:IObservable<'?8286> -> IObservable<'?8285>
    + Type parameters: '?8285, '?8286
    - + @@ -2243,16 +2141,15 @@

    Returns

    - foldMap accumulator init map source
    - Signature: accumulator:('?8327 -> '?8328 -> '?8327) -> init:'?8327 -> map:('?8327 -> '?8329) -> source:IObservable<'?8328> -> IObservable<'?8329>
    - Type parameters: '?8327, '?8328, '?8329
    + Signature: accumulator:('?8288 -> '?8289 -> '?8288) -> init:'?8288 -> map:('?8288 -> '?8290) -> source:IObservable<'?8289> -> IObservable<'?8290>
    + Type parameters: '?8288, '?8289, '?8290

    - + @@ -2265,7 +2162,6 @@

    Returns

    - fromEvent addHandler removeHandler @@ -2274,7 +2170,7 @@

    Returns

    Type parameters: 'Delegate

    - + @@ -2286,16 +2182,15 @@

    Returns

    - - fromEventConversion (...) + fromEventConversion(...)
    Signature: conversion:(('EventArgs -> unit) -> 'Delegate) -> addHandler:('Delegate -> unit) -> removeHandler:('Delegate -> unit) -> IObservable<'EventArgs>
    Type parameters: 'EventArgs, 'Delegate
    - + @@ -2308,16 +2203,15 @@

    Returns

    - - fromEventConversionOn (...) + fromEventConversionOn(...)
    Signature: scheduler:IScheduler -> conversion:(EventHandler<'TEventArgs> -> 'TDelegate) -> addHandler:('TDelegate -> unit) -> removeHandler:('TDelegate -> unit) -> IObservable<EventPattern<'TEventArgs>>
    Type parameters: 'TEventArgs, 'TDelegate
    - + @@ -2330,16 +2224,15 @@

    Returns

    - - fromEventGeneric (...) + fromEventGeneric(...)
    Signature: addHandler:(('TEventArgs -> unit) -> unit) -> removeHandler:(('TEventArgs -> unit) -> unit) -> IObservable<'TEventArgs>
    Type parameters: 'TEventArgs
    - + @@ -2351,16 +2244,15 @@

    Returns

    - - fromEventGenericOn (...) + fromEventGenericOn(...)
    - Signature: scheduler:IScheduler -> addHandler:(('TEventArgs -> unit) -> unit) -> removeHandler:(('TEventArgs -> unit) -> unit) -> IObservable<'?8337>
    - Type parameters: 'TEventArgs, '?8337
    + Signature: scheduler:IScheduler -> addHandler:(('TEventArgs -> unit) -> unit) -> removeHandler:(('TEventArgs -> unit) -> unit) -> IObservable<'?8298>
    + Type parameters: 'TEventArgs, '?8298
    - + @@ -2372,16 +2264,15 @@

    Returns

    - - fromEventHandler (...) + fromEventHandler(...)
    - Signature: addHandler:(EventHandler<obj> -> unit) -> removeHandler:(EventHandler<obj> -> unit) -> IObservable<obj>
    + Signature: addHandler:(EventHandler<'EventArgs> -> unit) -> removeHandler:(EventHandler<'EventArgs> -> unit) -> IObservable<'EventArgs>
    Type parameters: 'EventArgs
    - + @@ -2393,16 +2284,15 @@

    Returns

    - - fromEventHandlerOn (...) + fromEventHandlerOn(...)
    Signature: scheduler:IScheduler -> addHandler:(EventHandler<'EventArgs> -> unit) -> removeHandler:(EventHandler<'EventArgs> -> unit) -> IObservable<EventPattern<'EventArgs>>
    Type parameters: 'EventArgs
    - + @@ -2414,16 +2304,15 @@

    Returns

    - - fromEventOn (...) + fromEventOn(...)
    Signature: scheduler:IScheduler -> addHandler:(Action -> unit) -> removeHandler:(Action -> unit) -> IObservable<Unit>
    - + @@ -2435,7 +2324,6 @@

    Returns

    - fromEventPattern eventName target @@ -2444,7 +2332,7 @@

    Returns

    - + @@ -2455,16 +2343,15 @@

    Returns

    - - generate (...) + generate(...)
    Signature: initialState:'State -> condition:('State -> bool) -> iterator:('State -> 'State) -> resultMap:('State -> 'Result) -> IObservable<'Result>
    Type parameters: 'State, 'Result
    - + @@ -2475,16 +2362,15 @@

    Returns

    - - generateOn (...) + generateOn(...)
    Signature: scheduler:IScheduler -> initialState:'State -> condition:('State -> bool) -> iterator:('State -> 'State) -> resultMap:('State -> 'TResult) -> IObservable<'TResult>
    Type parameters: 'State, 'TResult
    - + @@ -2495,16 +2381,15 @@

    Returns

    - - generateTimed (...) + generateTimed(...)
    Signature: initialState:'State -> condition:('State -> bool) -> iterate:('State -> 'State) -> resultMap:('State -> 'Result) -> timeSelector:('State -> DateTimeOffset) -> IObservable<'Result>
    Type parameters: 'State, 'Result
    - + @@ -2515,16 +2400,15 @@

    Returns

    - - generateTimedOn (...) + generateTimedOn(...)
    Signature: scheduler:IScheduler -> initialState:'State -> condition:('State -> bool) -> iterate:('State -> 'State) -> resultMap:('State -> 'Result) -> timeSelector:('State -> DateTimeOffset) -> IObservable<'Result>
    Type parameters: 'State, 'Result
    - + @@ -2536,16 +2420,15 @@

    Returns

    - - generateTimeSpan (...) + generateTimeSpan(...)
    Signature: initialState:'State -> condition:('State -> bool) -> iterate:('State -> 'State) -> resultMap:('State -> 'Result) -> genTime:('State -> TimeSpan) -> IObservable<'Result>
    Type parameters: 'State, 'Result
    - + @@ -2556,16 +2439,15 @@

    Returns

    - - generateTimeSpanOn (...) + generateTimeSpanOn(...)
    Signature: scheduler:IScheduler -> initialState:'State -> condition:('State -> bool) -> iterate:('State -> 'State) -> resultMap:('State -> 'Result) -> genTime:('State -> TimeSpan) -> IObservable<'Result>
    Type parameters: 'State, 'Result
    - + @@ -2577,16 +2459,15 @@

    Returns

    - - getEnumerator source + getEnumerator(source)
    - Signature: source:IObservable<'?8368> -> IEnumerator<'?8368>
    - Type parameters: '?8368
    + Signature: source:IObservable<'?8329> -> IEnumerator<'?8329>
    + Type parameters: '?8329

    - + @@ -2597,7 +2478,6 @@

    Returns

    - groupBy keySelector source @@ -2606,7 +2486,7 @@

    Returns

    Type parameters: 'Source, 'Key
    - + @@ -2617,16 +2497,15 @@

    Returns

    - - groupByCapacityElement (...) + groupByCapacityElement(...)
    Signature: keySelector:('Source -> 'Key) -> capacity:int -> elementSelector:('Source -> 'Element) -> source:IObservable<'Source> -> IObservable<IGroupedObservable<'Key,'Element>>
    Type parameters: 'Source, 'Key, 'Element
    - + @@ -2638,16 +2517,15 @@

    Returns

    - - groupByCompare (...) + groupByCompare(...)
    - Signature: keySelector:('?8373 -> '?8374) -> comparer:IEqualityComparer<'?8374> -> source:IObservable<'?8373> -> IObservable<IGroupedObservable<'?8374,'?8373>>
    - Type parameters: '?8373, '?8374
    + Signature: keySelector:('?8334 -> '?8335) -> comparer:IEqualityComparer<'?8335> -> source:IObservable<'?8334> -> IObservable<IGroupedObservable<'?8335,'?8334>>
    + Type parameters: '?8334, '?8335
    - + @@ -2658,16 +2536,15 @@

    Returns

    - - groupByCompareElement (...) + groupByCompareElement(...)
    Signature: keySelector:('Source -> 'Key) -> comparer:IEqualityComparer<'Key> -> elementSelector:('Source -> 'Element) -> source:IObservable<'Source> -> IObservable<IGroupedObservable<'Key,'Element>>
    Type parameters: 'Source, 'Key, 'Element
    - + @@ -2679,16 +2556,15 @@

    Returns

    - - groupByComparerElementUntil (...) + groupByComparerElementUntil(...)
    Signature: keySelector:('Source -> 'Key) -> comparer:IEqualityComparer<'Key> -> elementSelector:('Source -> 'Element) -> durationSelector:(IGroupedObservable<'Key,'Element> -> IObservable<'TDuration>) -> source:IObservable<'Source> -> IObservable<IGroupedObservable<'Key,'Element>>
    Type parameters: 'Source, 'Key, 'Element, 'TDuration
    - + @@ -2703,16 +2579,15 @@

    Returns

    - - groupByComparerUntil (...) + groupByComparerUntil(...)
    Signature: keySelector:('Source -> 'Key) -> comparer:IEqualityComparer<'Key> -> durationSelector:(IGroupedObservable<'Key,'Source> -> IObservable<'TDuration>) -> source:IObservable<'Source> -> IObservable<IGroupedObservable<'Key,'Source>>
    Type parameters: 'Source, 'Key, 'TDuration
    - + @@ -2726,16 +2601,15 @@

    Returns

    - - groupByElement (...) + groupByElement(...)
    Signature: keySelector:('Source -> 'Key) -> elementSelector:('Source -> 'Element) -> source:IObservable<'Source> -> IObservable<IGroupedObservable<'Key,'Element>>
    Type parameters: 'Source, 'Key, 'Element
    - + @@ -2746,16 +2620,15 @@

    Returns

    - - groupByElementUntil (...) + groupByElementUntil(...)
    Signature: keySelector:('Source -> 'Key) -> elementSelector:('Source -> 'Element) -> durationSelector:(IGroupedObservable<'Key,'Element> -> IObservable<'TDuration>) -> source:IObservable<'Source> -> IObservable<IGroupedObservable<'Key,'Element>>
    Type parameters: 'Source, 'Key, 'Element, 'TDuration
    - + @@ -2770,16 +2643,15 @@

    Returns

    - - groupByUntil (...) + groupByUntil(...)
    Signature: keySelector:('Source -> 'Key) -> durationSelector:(IGroupedObservable<'Key,'Source> -> IObservable<'TDuration>) -> source:IObservable<'Source> -> IObservable<IGroupedObservable<'Key,'Source>>
    Type parameters: 'Source, 'Key, 'TDuration
    - + @@ -2793,16 +2665,15 @@

    Returns

    - - groupJoin (...) + groupJoin(...)
    Signature: left:IObservable<'Left> -> right:IObservable<'Right> -> leftselect:('Left -> IObservable<'a>) -> rightselect:('Right -> IObservable<'b>) -> resultselect:('Left -> IObservable<'Right> -> 'Result) -> IObservable<'Result>
    Type parameters: 'Left, 'Right, 'a, 'b, 'Result
    - + @@ -2814,7 +2685,6 @@

    Returns

    - guard f source @@ -2823,7 +2693,7 @@

    Returns

    Type parameters: 'Args
    - + @@ -2836,16 +2706,15 @@

    Returns

    - - head obs + head(obs)
    - Signature: obs:IObservable<'?8414> -> IObservable<'?8414>
    - Type parameters: '?8414
    + Signature: obs:IObservable<'?8375> -> IObservable<'?8375>
    + Type parameters: '?8375
    - + @@ -2856,16 +2725,15 @@

    Returns

    - - infinite () + infinite()
    - Signature: unit -> IObservable<'?8506>
    - Type parameters: '?8506
    + Signature: unit -> IObservable<'?8467>
    + Type parameters: '?8467
    - + @@ -2877,16 +2745,15 @@

    Returns

    - - interval period + interval(period)
    Signature: period:TimeSpan -> IObservable<int64>
    - + @@ -2897,7 +2764,6 @@

    Returns

    - intervalOn scheduler period @@ -2906,7 +2772,7 @@

    Returns

    - + @@ -2917,16 +2783,15 @@

    Returns

    - - isEmpty source + isEmpty(source)
    - Signature: source:IObservable<'?8418> -> IObservable<bool>
    - Type parameters: '?8418
    + Signature: source:IObservable<'?8379> -> IObservable<bool>
    + Type parameters: '?8379
    - + @@ -2938,7 +2803,6 @@

    Returns

    - iter onNext source @@ -2947,7 +2811,7 @@

    Returns

    Type parameters: 'Source
    - + @@ -2960,7 +2824,6 @@

    Returns

    - iterEnd onNext onCompleted source @@ -2969,7 +2832,7 @@

    Returns

    Type parameters: 'Source
    - + @@ -2983,7 +2846,6 @@

    Returns

    - iterError onNext onError source @@ -2992,7 +2854,7 @@

    Returns

    Type parameters: 'Source
    - + @@ -3006,16 +2868,15 @@

    Returns

    - - iterErrorEnd (...) + iterErrorEnd(...)
    Signature: onNext:('Source -> unit) -> onError:(exn -> unit) -> onCompleted:(unit -> unit) -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -3029,7 +2890,6 @@

    Returns

    - iterObserver observer source @@ -3038,7 +2898,7 @@

    Returns

    Type parameters: 'Source
    - + @@ -3051,16 +2911,15 @@

    Returns

    - join right f left
    - Signature: right:IObservable<'?8430> -> f:('?8431 -> '?8430 -> '?8432) -> left:IObservable<'?8431> -> IObservable<'?8432>
    - Type parameters: '?8430, '?8431, '?8432
    + Signature: right:IObservable<'?8391> -> f:('?8392 -> '?8391 -> '?8393) -> left:IObservable<'?8392> -> IObservable<'?8393>
    + Type parameters: '?8391, '?8392, '?8393
    - + @@ -3071,16 +2930,15 @@

    Returns

    - joinMap right fLeft fRight fResult left
    - Signature: right:IObservable<'?8434> -> fLeft:('?8435 -> IObservable<'?8436>) -> fRight:('?8434 -> IObservable<'?8437>) -> fResult:('?8435 -> '?8434 -> '?8438) -> left:IObservable<'?8435> -> IObservable<'?8438>
    - Type parameters: '?8434, '?8435, '?8436, '?8437, '?8438
    + Signature: right:IObservable<'?8395> -> fLeft:('?8396 -> IObservable<'?8397>) -> fRight:('?8395 -> IObservable<'?8398>) -> fResult:('?8396 -> '?8395 -> '?8399) -> left:IObservable<'?8396> -> IObservable<'?8399>
    + Type parameters: '?8395, '?8396, '?8397, '?8398, '?8399
    - + @@ -3091,16 +2949,15 @@

    Returns

    - - joinWhen plans + joinWhen(plans)
    Signature: plans:seq<Plan<'T>> -> IObservable<'T>
    Type parameters: 'T
    - + @@ -3111,16 +2968,15 @@

    Returns

    - - last source + last(source)
    Signature: source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -3131,7 +2987,6 @@

    Returns

    - lastIf predicate source @@ -3140,7 +2995,7 @@

    Returns

    Type parameters: 'Source
    - + @@ -3151,16 +3006,15 @@

    Returns

    - - latest source + latest(source)
    - Signature: source:IObservable<'?8446> -> IEnumerable<'?8446>
    - Type parameters: '?8446
    + Signature: source:IObservable<'?8407> -> IEnumerable<'?8407>
    + Type parameters: '?8407
    - + @@ -3173,16 +3027,15 @@

    Returns

    - - liftAsync asyncOperation + liftAsync(asyncOperation)
    - Signature: asyncOperation:('?8318 -> Async<'?8319>) -> '?8318 -> IObservable<'?8319>
    - Type parameters: '?8318, '?8319
    + Signature: asyncOperation:('?8279 -> Async<'?8280>) -> '?8279 -> IObservable<'?8280>
    + Type parameters: '?8279, '?8280
    - + @@ -3193,16 +3046,15 @@

    Returns

    - log prefix source
    - Signature: prefix:string -> source:IObservable<'?8532> -> IObservable<'?8532>
    - Type parameters: '?8532
    + Signature: prefix:string -> source:IObservable<'?8493> -> IObservable<'?8493>
    + Type parameters: '?8493
    - + @@ -3213,16 +3065,15 @@

    Returns

    - logTo prefix f source
    - Signature: prefix:string -> f:(string -> unit) -> source:IObservable<'?8530> -> IObservable<'?8530>
    - Type parameters: '?8530
    + Signature: prefix:string -> f:(string -> unit) -> source:IObservable<'?8491> -> IObservable<'?8491>
    + Type parameters: '?8491
    - + @@ -3233,16 +3084,15 @@

    Returns

    - - longCount source + longCount(source)
    - Signature: source:IObservable<'?8448> -> IObservable<int64>
    - Type parameters: '?8448
    + Signature: source:IObservable<'?8409> -> IObservable<int64>
    + Type parameters: '?8409
    - + @@ -3254,16 +3104,15 @@

    Returns

    - longCountSatisfy predicate source
    - Signature: predicate:('?8450 -> bool) -> source:IObservable<'?8450> -> IObservable<int64>
    - Type parameters: '?8450
    + Signature: predicate:('?8411 -> bool) -> source:IObservable<'?8411> -> IObservable<int64>
    + Type parameters: '?8411
    - + @@ -3275,16 +3124,15 @@

    Returns

    - map f source
    - Signature: f:('?8452 -> '?8453) -> source:IObservable<'?8452> -> IObservable<'?8453>
    - Type parameters: '?8452, '?8453
    + Signature: f:('?8413 -> '?8414) -> source:IObservable<'?8413> -> IObservable<'?8414>
    + Type parameters: '?8413, '?8414
    - + @@ -3295,16 +3143,15 @@

    Returns

    - map2 f a b
    - Signature: f:IObservable<('?8458 -> '?8459 -> '?8460)> -> a:IObservable<'?8458> -> b:IObservable<'?8459> -> IObservable<'?8460>
    - Type parameters: '?8458, '?8459, '?8460
    + Signature: f:IObservable<('?8419 -> '?8420 -> '?8421)> -> a:IObservable<'?8419> -> b:IObservable<'?8420> -> IObservable<'?8421>
    + Type parameters: '?8419, '?8420, '?8421
    - + @@ -3315,7 +3162,6 @@

    Returns

    - mapFold f init source @@ -3324,7 +3170,7 @@

    Returns

    Type parameters: 'TState, 'T, 'TResult
    - + @@ -3336,7 +3182,6 @@

    Returns

    - mapi f source @@ -3345,7 +3190,7 @@

    Returns

    Type parameters: 'Source, 'Result
    - + @@ -3357,16 +3202,15 @@

    Returns

    - mapTo x source
    - Signature: x:'?8466 -> source:IObservable<'T> -> IObservable<'?8466>
    - Type parameters: '?8466, 'T
    + Signature: x:'?8427 -> source:IObservable<'T> -> IObservable<'?8427>
    + Type parameters: '?8427, 'T
    - + @@ -3377,7 +3221,6 @@

    Returns

    - mapToLazy xLazy source @@ -3386,7 +3229,7 @@

    Returns

    Type parameters: 'T
    - + @@ -3397,16 +3240,15 @@

    Returns

    - - materialize source + materialize(source)
    - Signature: source:IObservable<'?8471> -> IObservable<Notification<'?8471>>
    - Type parameters: '?8471
    + Signature: source:IObservable<'?8432> -> IObservable<Notification<'?8432>>
    + Type parameters: '?8432
    - + @@ -3418,16 +3260,15 @@

    Returns

    - - maxOf source + maxOf(source)
    Signature: source:IObservable<'T> -> IObservable<'T>
    Type parameters: 'T
    - + @@ -3438,7 +3279,6 @@

    Returns

    - merge second first @@ -3447,7 +3287,7 @@

    Returns

    Type parameters: 'T
    - + @@ -3458,16 +3298,15 @@

    Returns

    - - mergeArray sources + mergeArray(sources)
    Signature: sources:IObservable<'T> [] -> IObservable<'T>
    Type parameters: 'T
    - + @@ -3478,7 +3317,6 @@

    Returns

    - mergeArrayOn scheduler sources @@ -3487,7 +3325,7 @@

    Returns

    Type parameters: 'T
    - + @@ -3499,16 +3337,15 @@

    Returns

    - - mergeInner sources + mergeInner(sources)
    Signature: sources:IObservable<IObservable<'T>> -> IObservable<'T>
    Type parameters: 'T
    - + @@ -3520,7 +3357,6 @@

    Returns

    - mergeInnerMax maxConcurrent sources @@ -3529,7 +3365,7 @@

    Returns

    Type parameters: 'T
    - + @@ -3542,7 +3378,6 @@

    Returns

    - mergeOn scheduler second first @@ -3551,7 +3386,7 @@

    Returns

    Type parameters: 'T
    - + @@ -3562,16 +3397,15 @@

    Returns

    - - mergeSeq sources + mergeSeq(sources)
    Signature: sources:seq<IObservable<'T>> -> IObservable<'T>
    Type parameters: 'T
    - + @@ -3582,7 +3416,6 @@

    Returns

    - mergeSeqMax maxConcurrent sources @@ -3591,7 +3424,7 @@

    Returns

    Type parameters: 'T
    - + @@ -3603,16 +3436,15 @@

    Returns

    - - mergeSeqMaxOn (...) + mergeSeqMaxOn(...)
    Signature: scheduler:IScheduler -> maxConcurrent:int -> sources:seq<IObservable<'T>> -> IObservable<'T>
    Type parameters: 'T
    - + @@ -3625,7 +3457,6 @@

    Returns

    - mergeSeqOn scheduler sources @@ -3634,7 +3465,7 @@

    Returns

    Type parameters: 'T
    - + @@ -3646,16 +3477,15 @@

    Returns

    - - mergeTasks sources + mergeTasks(sources)
    Signature: sources:IObservable<Task<'T>> -> IObservable<'T>
    Type parameters: 'T
    - + @@ -3666,16 +3496,15 @@

    Returns

    - mostRecent initialVal source
    - Signature: initialVal:'?8497 -> source:IObservable<'?8497> -> IEnumerable<'?8497>
    - Type parameters: '?8497
    + Signature: initialVal:'?8458 -> source:IObservable<'?8458> -> IEnumerable<'?8458>
    + Type parameters: '?8458
    - + @@ -3688,16 +3517,15 @@

    Returns

    - multicast subject source
    - Signature: subject:ISubject<'?8499,'?8500> -> source:IObservable<'?8499> -> IConnectableObservable<'?8500>
    - Type parameters: '?8499, '?8500
    + Signature: subject:ISubject<'?8460,'?8461> -> source:IObservable<'?8460> -> IConnectableObservable<'?8461>
    + Type parameters: '?8460, '?8461
    - + @@ -3712,16 +3540,15 @@

    Returns

    - - multicastMap (...) + multicastMap(...)
    - Signature: subjectSelector:(unit -> ISubject<'?8502,'?8503>) -> selector:(IObservable<'?8503> -> IObservable<'?8504>) -> source:IObservable<'?8502> -> IObservable<'?8504>
    - Type parameters: '?8502, '?8503, '?8504
    + Signature: subjectSelector:(unit -> ISubject<'?8463,'?8464>) -> selector:(IObservable<'?8464> -> IObservable<'?8465>) -> source:IObservable<'?8463> -> IObservable<'?8465>
    + Type parameters: '?8463, '?8464, '?8465
    - + @@ -3736,16 +3563,15 @@

    Returns

    - - neverWitness witness + neverWitness(witness)
    - Signature: witness:'?8508 -> IObservable<'?8508>
    - Type parameters: '?8508
    + Signature: witness:'?8469 -> IObservable<'?8469>
    + Type parameters: '?8469
    - + @@ -3757,16 +3583,15 @@

    Returns

    - - next source + next(source)
    - Signature: source:IObservable<'?8510> -> IEnumerable<'?8510>
    - Type parameters: '?8510
    + Signature: source:IObservable<'?8471> -> IEnumerable<'?8471>
    + Type parameters: '?8471
    - + @@ -3780,16 +3605,15 @@

    Returns

    - observeOn scheduler source
    - Signature: scheduler:IScheduler -> source:IObservable<'?8516> -> IObservable<'?8516>
    - Type parameters: '?8516
    + Signature: scheduler:IScheduler -> source:IObservable<'?8477> -> IObservable<'?8477>
    + Type parameters: '?8477
    - + @@ -3800,16 +3624,15 @@

    Returns

    - observeOnContext context source
    - Signature: context:SynchronizationContext -> source:IObservable<'?8518> -> IObservable<'?8518>
    - Type parameters: '?8518
    + Signature: context:SynchronizationContext -> source:IObservable<'?8479> -> IObservable<'?8479>
    + Type parameters: '?8479
    - + @@ -3821,16 +3644,15 @@

    Returns

    - - ofAsync asyncOperation + ofAsync(asyncOperation)
    - Signature: asyncOperation:Async<'?8316> -> IObservable<'?8316>
    - Type parameters: '?8316
    + Signature: asyncOperation:Async<'?8277> -> IObservable<'?8277>
    + Type parameters: '?8277
    - + @@ -3841,16 +3663,15 @@

    Returns

    - - ofSeq items + ofSeq(items)
    Signature: items:seq<'Item> -> IObservable<'Item>
    Type parameters: 'Item
    - + @@ -3861,7 +3682,6 @@

    Returns

    - ofSeqOn scheduler items @@ -3870,7 +3690,7 @@

    Returns

    Type parameters: 'Item
    - + @@ -3881,16 +3701,15 @@

    Returns

    - - ofType source + ofType(source)
    - Signature: source:IObservable<obj> -> IObservable<'?8520>
    - Type parameters: '?8520
    + Signature: source:IObservable<obj> -> IObservable<'?8481>
    + Type parameters: '?8481
    - + @@ -3901,7 +3720,6 @@

    Returns

    - onErrorConcat second first @@ -3910,7 +3728,7 @@

    Returns

    Type parameters: 'Source
    - + @@ -3922,16 +3740,15 @@

    Returns

    - - onErrorConcatArray sources + onErrorConcatArray(sources)
    Signature: sources:IObservable<'Source> [] -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -3942,16 +3759,15 @@

    Returns

    - - onErrorConcatSeq sources + onErrorConcatSeq(sources)
    Signature: sources:seq<IObservable<'Source>> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -3963,16 +3779,15 @@

    Returns

    - perform f source
    - Signature: f:('?8528 -> unit) -> source:IObservable<'?8528> -> IObservable<'?8528>
    - Type parameters: '?8528
    + Signature: f:('?8489 -> unit) -> source:IObservable<'?8489> -> IObservable<'?8489>
    + Type parameters: '?8489
    - + @@ -3983,16 +3798,15 @@

    Returns

    - performFinally f source
    - Signature: f:(unit -> unit) -> source:IObservable<'?8534> -> IObservable<'?8534>
    - Type parameters: '?8534
    + Signature: f:(unit -> unit) -> source:IObservable<'?8495> -> IObservable<'?8495>
    + Type parameters: '?8495
    - + @@ -4003,16 +3817,15 @@

    Returns

    - poll period source
    - Signature: period:DateTimeOffset -> source:IObservable<Result<'?8886,'?8887>> -> IObservable<Result<'?8886,'?8887>>
    - Type parameters: '?8886, '?8887
    + Signature: period:DateTimeOffset -> source:IObservable<Result<'?8847,'?8848>> -> IObservable<Result<'?8847,'?8848>>
    + Type parameters: '?8847, '?8848
    - + @@ -4028,16 +3841,15 @@

    Returns

    - pollOn sch period source
    - Signature: sch:IScheduler -> period:DateTimeOffset -> source:IObservable<Result<'?8883,'?8884>> -> IObservable<Result<'?8883,'?8884>>
    - Type parameters: '?8883, '?8884
    + Signature: sch:IScheduler -> period:DateTimeOffset -> source:IObservable<Result<'?8844,'?8845>> -> IObservable<Result<'?8844,'?8845>>
    + Type parameters: '?8844, '?8845
    - + @@ -4053,16 +3865,15 @@

    Returns

    - - publish source + publish(source)
    - Signature: source:IObservable<'?8536> -> IConnectableObservable<'?8536>
    - Type parameters: '?8536
    + Signature: source:IObservable<'?8497> -> IConnectableObservable<'?8497>
    + Type parameters: '?8497
    - + @@ -4075,7 +3886,6 @@

    Returns

    - publishInitial initial source @@ -4084,7 +3894,7 @@

    Returns

    Type parameters: 'Source
    - + @@ -4097,7 +3907,6 @@

    Returns

    - publishInitialMap initial map source @@ -4106,7 +3915,7 @@

    Returns

    Type parameters: 'Source, 'Result
    - + @@ -4120,16 +3929,15 @@

    Returns

    - - publishLast source + publishLast(source)
    - Signature: source:IObservable<'?8546> -> IConnectableObservable<'?8546>
    - Type parameters: '?8546
    + Signature: source:IObservable<'?8507> -> IConnectableObservable<'?8507>
    + Type parameters: '?8507
    - + @@ -4143,7 +3951,6 @@

    Returns

    - publishLastMap map source @@ -4152,7 +3959,7 @@

    Returns

    Type parameters: 'Source, 'Result
    - + @@ -4166,7 +3973,6 @@

    Returns

    - publishMap map source @@ -4175,7 +3981,7 @@

    Returns

    Type parameters: 'Source, 'Result
    - + @@ -4189,7 +3995,6 @@

    Returns

    - range start count @@ -4198,7 +4003,7 @@

    Returns

    - + @@ -4209,7 +4014,6 @@

    Returns

    - rangeOn scheduler start count @@ -4218,7 +4022,7 @@

    Returns

    - + @@ -4229,16 +4033,15 @@

    Returns

    - reduce f source
    - Signature: f:('?8553 -> '?8553 -> '?8553) -> source:IObservable<'?8553> -> IObservable<'?8553>
    - Type parameters: '?8553
    + Signature: f:('?8514 -> '?8514 -> '?8514) -> source:IObservable<'?8514> -> IObservable<'?8514>
    + Type parameters: '?8514
    - + @@ -4249,16 +4052,15 @@

    Returns

    - - refCount source + refCount(source)
    - Signature: source:IConnectableObservable<'?8555> -> IObservable<'?8555>
    - Type parameters: '?8555
    + Signature: source:IConnectableObservable<'?8516> -> IObservable<'?8516>
    + Type parameters: '?8516
    - + @@ -4271,16 +4073,15 @@

    Returns

    - - repeat source + repeat(source)
    Signature: source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -4291,7 +4092,6 @@

    Returns

    - repeatCount repeatCount value @@ -4300,7 +4100,7 @@

    Returns

    Type parameters: 'Result
    - + @@ -4311,16 +4111,15 @@

    Returns

    - - repeatValue value + repeatValue(value)
    Signature: value:'Result -> IObservable<'Result>
    Type parameters: 'Result
    - + @@ -4331,7 +4130,6 @@

    Returns

    - repeatWhile condition source @@ -4340,7 +4138,7 @@

    Returns

    Type parameters: 'Source
    - + @@ -4352,16 +4150,15 @@

    Returns

    - - replay source + replay(source)
    Signature: source:IObservable<'Source> -> IConnectableObservable<'Source>
    Type parameters: 'Source
    - + @@ -4373,7 +4170,6 @@

    Returns

    - replayBuffer bufferSize source @@ -4382,7 +4178,7 @@

    Returns

    Type parameters: 'Source
    - + @@ -4394,16 +4190,15 @@

    Returns

    - - replayBufferWindow (...) + replayBufferWindow(...)
    Signature: bufferSize:int -> window:TimeSpan -> source:IObservable<'Source> -> IConnectableObservable<'Source>
    Type parameters: 'Source
    - + @@ -4414,16 +4209,15 @@

    Returns

    - - replayBufferWindowOn (...) + replayBufferWindowOn(...)
    Signature: scheduler:IScheduler -> bufferSize:int -> window:TimeSpan -> source:IObservable<'Source> -> IConnectableObservable<'Source>
    Type parameters: 'Source
    - + @@ -4434,7 +4228,6 @@

    Returns

    - replayMap map source @@ -4443,7 +4236,7 @@

    Returns

    Type parameters: 'Source, 'Result
    - + @@ -4455,7 +4248,6 @@

    Returns

    - replayMapBuffer map bufferSize source @@ -4464,7 +4256,7 @@

    Returns

    Type parameters: 'Source, 'Result
    - + @@ -4477,16 +4269,15 @@

    Returns

    - - replayMapBufferWindow (...) + replayMapBufferWindow(...)
    Signature: map:(IObservable<'Source> -> IObservable<'Result>) -> bufferSize:int -> window:TimeSpan -> source:IObservable<'Source> -> IObservable<'Result>
    Type parameters: 'Source, 'Result
    - + @@ -4499,16 +4290,15 @@

    Returns

    - - replayMapBufferWindowOn (...) + replayMapBufferWindowOn(...)
    Signature: scheduler:IScheduler -> map:(IObservable<'Source> -> IObservable<'Result>) -> bufferSize:int -> window:TimeSpan -> source:IObservable<'Source> -> IObservable<'Result>
    Type parameters: 'Source, 'Result
    - + @@ -4521,7 +4311,6 @@

    Returns

    - replayMapWindow map window source @@ -4530,7 +4319,7 @@

    Returns

    Type parameters: 'Source, 'Result
    - + @@ -4543,16 +4332,15 @@

    Returns

    - - replayMapWindowOn (...) + replayMapWindowOn(...)
    Signature: scheduler:IScheduler -> map:(IObservable<'Source> -> IObservable<'Result>) -> window:TimeSpan -> source:IObservable<'Source> -> IObservable<'Result>
    Type parameters: 'Source, 'Result
    - + @@ -4565,16 +4353,15 @@

    Returns

    - replayOn sch source
    - Signature: sch:IScheduler -> source:IObservable<'?8567> -> IConnectableObservable<'?8567>
    - Type parameters: '?8567
    + Signature: sch:IScheduler -> source:IObservable<'?8528> -> IConnectableObservable<'?8528>
    + Type parameters: '?8528
    - + @@ -4586,7 +4373,6 @@

    Returns

    - replayWindow window source @@ -4595,7 +4381,7 @@

    Returns

    Type parameters: 'Source
    - + @@ -4607,7 +4393,6 @@

    Returns

    - replayWindowOn scheduler window source @@ -4616,7 +4401,7 @@

    Returns

    Type parameters: 'Source
    - + @@ -4628,16 +4413,15 @@

    Returns

    - - result x + result(x)
    - Signature: x:'?8601 -> IObservable<'?8601>
    - Type parameters: '?8601
    + Signature: x:'?8562 -> IObservable<'?8562>
    + Type parameters: '?8562
    - + @@ -4646,16 +4430,15 @@

    Returns

    - - retry source + retry(source)
    Signature: source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -4666,7 +4449,6 @@

    Returns

    - retryCount count source @@ -4675,7 +4457,7 @@

    Returns

    Type parameters: 'Source
    - + @@ -4686,16 +4468,15 @@

    Returns

    - sample interval source
    - Signature: interval:TimeSpan -> source:IObservable<'?8603> -> IObservable<'?8603>
    - Type parameters: '?8603
    + Signature: interval:TimeSpan -> source:IObservable<'?8564> -> IObservable<'?8564>
    + Type parameters: '?8564
    - + @@ -4706,16 +4487,15 @@

    Returns

    - sampleOn scheduler interval source
    - Signature: scheduler:IScheduler -> interval:TimeSpan -> source:IObservable<'?8605> -> IObservable<'?8605>
    - Type parameters: '?8605
    + Signature: scheduler:IScheduler -> interval:TimeSpan -> source:IObservable<'?8566> -> IObservable<'?8566>
    + Type parameters: '?8566
    - + @@ -4728,7 +4508,6 @@

    Returns

    - sampleWith sampler source @@ -4737,7 +4516,7 @@

    Returns

    Type parameters: 'Sample, 'Source
    - + @@ -4750,7 +4529,6 @@

    Returns

    - scan accumulator source @@ -4759,7 +4537,7 @@

    Returns

    Type parameters: 'a
    - + @@ -4770,7 +4548,6 @@

    Returns

    - scanInit init accumulator source @@ -4779,7 +4556,7 @@

    Returns

    Type parameters: 'TAccumulate, 'Source
    - + @@ -4791,16 +4568,15 @@

    Returns

    - selectIf condition thenSource
    - Signature: condition:(unit -> bool) -> thenSource:IObservable<'?8615> -> IObservable<'?8615>
    - Type parameters: '?8615
    + Signature: condition:(unit -> bool) -> thenSource:IObservable<'?8576> -> IObservable<'?8576>
    + Type parameters: '?8576
    - + @@ -4811,16 +4587,15 @@

    Returns

    - - selectIfElse (...) + selectIfElse(...)
    Signature: condition:(unit -> bool) -> elseSource:IObservable<'Result> -> thenSource:IObservable<'Result> -> IObservable<'Result>
    Type parameters: 'Result
    - + @@ -4831,16 +4606,15 @@

    Returns

    - - selectIfOn (...) + selectIfOn(...)
    - Signature: scheduler:IScheduler -> condition:(unit -> bool) -> thenSource:IObservable<'?8617> -> IObservable<'?8617>
    - Type parameters: '?8617
    + Signature: scheduler:IScheduler -> condition:(unit -> bool) -> thenSource:IObservable<'?8578> -> IObservable<'?8578>
    + Type parameters: '?8578
    - + @@ -4852,16 +4626,15 @@

    Returns

    - serve max sourceFactory
    - Signature: max:int -> sourceFactory:(unit -> '?8913) -> IObservable<'?8914>
    - Type parameters: '?8913, '?8914
    + Signature: max:int -> sourceFactory:(unit -> '?8874) -> IObservable<'?8875>
    + Type parameters: '?8874, '?8875
    - + @@ -4877,16 +4650,15 @@

    Returns

    - - serveCustomOn (...) + serveCustomOn(...)
    - Signature: sch:IScheduler -> max:int -> callOnError:(exn -> bool) -> sourceFactory:(unit -> '?8907) -> IObservable<'?8908>
    - Type parameters: '?8907, '?8908
    + Signature: sch:IScheduler -> max:int -> callOnError:(exn -> bool) -> sourceFactory:(unit -> '?8868) -> IObservable<'?8869>
    + Type parameters: '?8868, '?8869
    - + @@ -4904,16 +4676,15 @@

    Returns

    - - serveGateCustomOn (...) + serveGateCustomOn(...)
    - Signature: sch:IScheduler -> gate:'?8903 -> max:int -> callOnError:(exn -> bool) -> sourceFactory:(unit -> '?8904) -> IObservable<'?8905>
    - Type parameters: '?8903, '?8904, '?8905
    + Signature: sch:IScheduler -> gate:'?8864 -> max:int -> callOnError:(exn -> bool) -> sourceFactory:(unit -> '?8865) -> IObservable<'?8866>
    + Type parameters: '?8864, '?8865, '?8866
    - + @@ -4932,16 +4703,15 @@

    Returns

    - serveOn sch max sourceFactory
    - Signature: sch:IScheduler -> max:int -> sourceFactory:(unit -> '?8910) -> IObservable<'?8911>
    - Type parameters: '?8910, '?8911
    + Signature: sch:IScheduler -> max:int -> sourceFactory:(unit -> '?8871) -> IObservable<'?8872>
    + Type parameters: '?8871, '?8872
    - + @@ -4959,16 +4729,15 @@

    Returns

    - - single value + single(value)
    Signature: value:'Result -> IObservable<'Result>
    Type parameters: 'Result
    - + @@ -4979,16 +4748,15 @@

    Returns

    - singleOn scheduler value
    - Signature: scheduler:IScheduler -> value:'?8623 -> IObservable<'?8623>
    - Type parameters: '?8623
    + Signature: scheduler:IScheduler -> value:'?8584 -> IObservable<'?8584>
    + Type parameters: '?8584
    - + @@ -5000,7 +4768,6 @@

    Returns

    - skip count source @@ -5009,7 +4776,7 @@

    Returns

    Type parameters: 'Source
    - + @@ -5020,7 +4787,6 @@

    Returns

    - skipLast count source @@ -5029,7 +4795,7 @@

    Returns

    Type parameters: 'Source
    - + @@ -5040,7 +4806,6 @@

    Returns

    - skipLastSpan duration source @@ -5049,7 +4814,7 @@

    Returns

    Type parameters: 'Source
    - + @@ -5060,16 +4825,15 @@

    Returns

    - skipLastSpanOn scheduler duration source
    - Signature: scheduler:IScheduler -> duration:TimeSpan -> source:IObservable<'?8635> -> IObservable<'?8635>
    - Type parameters: '?8635
    + Signature: scheduler:IScheduler -> duration:TimeSpan -> source:IObservable<'?8596> -> IObservable<'?8596>
    + Type parameters: '?8596
    - + @@ -5081,7 +4845,6 @@

    Returns

    - skipSpan duration source @@ -5090,7 +4853,7 @@

    Returns

    Type parameters: 'Source
    - + @@ -5101,16 +4864,15 @@

    Returns

    - skipSpanOn scheduler duration source
    - Signature: scheduler:IScheduler -> duration:TimeSpan -> source:IObservable<'?8629> -> IObservable<'?8629>
    - Type parameters: '?8629
    + Signature: scheduler:IScheduler -> duration:TimeSpan -> source:IObservable<'?8590> -> IObservable<'?8590>
    + Type parameters: '?8590
    - + @@ -5122,7 +4884,6 @@

    Returns

    - skipUntil startTime source @@ -5131,7 +4892,7 @@

    Returns

    Type parameters: 'Source
    - + @@ -5142,16 +4903,15 @@

    Returns

    - skipUntilOn scheduler startTime source
    - Signature: scheduler:IScheduler -> startTime:DateTimeOffset -> source:IObservable<'?8639> -> IObservable<'?8639>
    - Type parameters: '?8639
    + Signature: scheduler:IScheduler -> startTime:DateTimeOffset -> source:IObservable<'?8600> -> IObservable<'?8600>
    + Type parameters: '?8600
    - + @@ -5163,7 +4923,6 @@

    Returns

    - skipUntilOther other source @@ -5172,7 +4931,7 @@

    Returns

    Type parameters: 'Other, 'Source
    - + @@ -5183,7 +4942,6 @@

    Returns

    - skipWhile predicate source @@ -5192,7 +4950,7 @@

    Returns

    Type parameters: 'Source
    - + @@ -5203,7 +4961,6 @@

    Returns

    - skipWhilei predicate source @@ -5212,7 +4969,7 @@

    Returns

    Type parameters: 'Source
    - + @@ -5224,16 +4981,15 @@

    Returns

    - startWith values source
    - Signature: values:'?8648 -> source:IObservable<'T> -> IObservable<'T>
    - Type parameters: '?8648, 'T
    + Signature: values:'?8609 -> source:IObservable<'T> -> IObservable<'T>
    + Type parameters: '?8609, 'T
    - + @@ -5244,16 +5000,15 @@

    Returns

    - startWithOn scheduler values source
    - Signature: scheduler:IScheduler -> values:'?8651 -> source:IObservable<'T> -> IObservable<'T>
    - Type parameters: '?8651, 'T
    + Signature: scheduler:IScheduler -> values:'?8612 -> source:IObservable<'T> -> IObservable<'T>
    + Type parameters: '?8612, 'T
    - + @@ -5264,7 +5019,6 @@

    Returns

    - subscribe onNext observable @@ -5273,7 +5027,7 @@

    Returns

    Type parameters: 'T
    - + @@ -5284,7 +5038,6 @@

    Returns

    - subscribeObserver observer observable @@ -5293,7 +5046,7 @@

    Returns

    Type parameters: 'T
    - + @@ -5304,7 +5057,6 @@

    Returns

    - subscribeOn scheduler source @@ -5313,7 +5065,7 @@

    Returns

    Type parameters: 'Source
    - + @@ -5327,7 +5079,6 @@

    Returns

    - subscribeOnContext context source @@ -5336,7 +5087,7 @@

    Returns

    Type parameters: 'Source
    - + @@ -5350,16 +5101,15 @@

    Returns

    - subscribeSafe onNext source
    - Signature: onNext:('?8668 -> unit) -> source:IObservable<'?8668> -> IDisposable
    - Type parameters: '?8668
    + Signature: onNext:('?8629 -> unit) -> source:IObservable<'?8629> -> IDisposable
    + Type parameters: '?8629
    - + @@ -5371,16 +5121,15 @@

    Returns

    - subscribeSafeObserver observer source
    - Signature: observer:IObserver<'?8675> -> source:IObservable<'?8675> -> IDisposable
    - Type parameters: '?8675
    + Signature: observer:IObserver<'?8636> -> source:IObservable<'?8636> -> IDisposable
    + Type parameters: '?8636
    - + @@ -5392,16 +5141,15 @@

    Returns

    - - subscribeSafeWithCallbacks (...) + subscribeSafeWithCallbacks(...)
    - Signature: onNext:('?8677 -> unit) -> onError:(exn -> unit) -> onCompleted:(unit -> unit) -> source:IObservable<'?8677> -> IDisposable
    - Type parameters: '?8677
    + Signature: onNext:('?8638 -> unit) -> onError:(exn -> unit) -> onCompleted:(unit -> unit) -> source:IObservable<'?8638> -> IDisposable
    + Type parameters: '?8638
    - + @@ -5413,16 +5161,15 @@

    Returns

    - - subscribeSafeWithCompletion (...) + subscribeSafeWithCompletion(...)
    - Signature: onNext:('?8672 -> unit) -> onCompleted:'?8673 -> source:IObservable<'?8672> -> IDisposable
    - Type parameters: '?8672, '?8673
    + Signature: onNext:('?8633 -> unit) -> onCompleted:'?8634 -> source:IObservable<'?8633> -> IDisposable
    + Type parameters: '?8633, '?8634
    - + @@ -5434,16 +5181,15 @@

    Returns

    - - subscribeSafeWithError (...) + subscribeSafeWithError(...)
    - Signature: onNext:('?8670 -> unit) -> onError:(exn -> unit) -> source:IObservable<'?8670> -> IDisposable
    - Type parameters: '?8670
    + Signature: onNext:('?8631 -> unit) -> onError:(exn -> unit) -> source:IObservable<'?8631> -> IDisposable
    + Type parameters: '?8631
    - + @@ -5455,16 +5201,15 @@

    Returns

    - - subscribeWithCallbacks (...) + subscribeWithCallbacks(...)
    Signature: onNext:('T -> unit) -> onError:(exn -> unit) -> onCompleted:(unit -> unit) -> observable:IObservable<'T> -> IDisposable
    Type parameters: 'T
    - + @@ -5475,16 +5220,15 @@

    Returns

    - - subscribeWithCompletion (...) + subscribeWithCompletion(...)
    Signature: onNext:('T -> unit) -> onCompleted:(unit -> unit) -> observable:IObservable<'T> -> IDisposable
    Type parameters: 'T
    - + @@ -5495,16 +5239,15 @@

    Returns

    - - subscribeWithError (...) + subscribeWithError(...)
    Signature: onNext:('T -> unit) -> onError:(exn -> unit) -> observable:IObservable<'T> -> IDisposable
    Type parameters: 'T
    - + @@ -5515,16 +5258,15 @@

    Returns

    - - switch sources + switch(sources)
    Signature: sources:IObservable<IObservable<'Source>> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -5538,16 +5280,15 @@

    Returns

    - - switchAsync sources + switchAsync(sources)
    - Signature: sources:IObservable<Async<'?8683>> -> IObservable<'?8683>
    - Type parameters: '?8683
    + Signature: sources:IObservable<Async<'?8644>> -> IObservable<'?8644>
    + Type parameters: '?8644
    - + @@ -5560,16 +5301,15 @@

    Returns

    - switchMap f source
    - Signature: f:('?8892 -> '?8893) -> source:IObservable<'?8892> -> IObservable<'?8894>
    - Type parameters: '?8892, '?8893, '?8894
    + Signature: f:('?8853 -> '?8854) -> source:IObservable<'?8853> -> IObservable<'?8855>
    + Type parameters: '?8853, '?8854, '?8855
    - + @@ -5591,16 +5331,15 @@

    Returns

    - - switchTask sources + switchTask(sources)
    Signature: sources:IObservable<Task<'Source>> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -5613,16 +5352,15 @@

    Returns

    - - synchronize source + synchronize(source)
    Signature: source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -5635,7 +5373,6 @@

    Returns

    - synchronizeGate gate source @@ -5644,7 +5381,7 @@

    Returns

    Type parameters: 'Source
    - + @@ -5658,16 +5395,15 @@

    Returns

    - - tail source + tail(source)
    - Signature: source:IObservable<'?8689> -> IObservable<'?8689>
    - Type parameters: '?8689
    + Signature: source:IObservable<'?8650> -> IObservable<'?8650>
    + Type parameters: '?8650
    - + @@ -5678,7 +5414,6 @@

    Returns

    - take n source @@ -5687,7 +5422,7 @@

    Returns

    Type parameters: 'Source
    - + @@ -5698,16 +5433,15 @@

    Returns

    - takeLast count source
    - Signature: count:int -> source:IObservable<'?8699> -> IObservable<'?8699>
    - Type parameters: '?8699
    + Signature: count:int -> source:IObservable<'?8660> -> IObservable<'?8660>
    + Type parameters: '?8660
    - + @@ -5718,7 +5452,6 @@

    Returns

    - takeLastBuffer duration source @@ -5727,7 +5460,7 @@

    Returns

    Type parameters: 'Source
    - + @@ -5738,7 +5471,6 @@

    Returns

    - takeLastBufferCount count source @@ -5747,7 +5479,7 @@

    Returns

    Type parameters: 'Source
    - + @@ -5758,16 +5490,15 @@

    Returns

    - - takeLastBufferOn (...) + takeLastBufferOn(...)
    - Signature: scheduler:IScheduler -> duration:TimeSpan -> source:IObservable<'?8709> -> IObservable<IList<'?8709>>
    - Type parameters: '?8709
    + Signature: scheduler:IScheduler -> duration:TimeSpan -> source:IObservable<'?8670> -> IObservable<IList<'?8670>>
    + Type parameters: '?8670
    - + @@ -5779,16 +5510,15 @@

    Returns

    - takeLastOn scheduler count source
    - Signature: scheduler:IScheduler -> count:int -> source:IObservable<'?8701> -> IObservable<'?8701>
    - Type parameters: '?8701
    + Signature: scheduler:IScheduler -> count:int -> source:IObservable<'?8662> -> IObservable<'?8662>
    + Type parameters: '?8662
    - + @@ -5800,7 +5530,6 @@

    Returns

    - takeLastSpan duration source @@ -5809,7 +5538,7 @@

    Returns

    Type parameters: 'Source
    - + @@ -5820,16 +5549,15 @@

    Returns

    - takeLastSpanOn scheduler duration source
    - Signature: scheduler:IScheduler -> duration:TimeSpan -> source:IObservable<'?8705> -> IObservable<'?8705>
    - Type parameters: '?8705
    + Signature: scheduler:IScheduler -> duration:TimeSpan -> source:IObservable<'?8666> -> IObservable<'?8666>
    + Type parameters: '?8666
    - + @@ -5841,16 +5569,15 @@

    Returns

    - takeOn scheduler n source
    - Signature: scheduler:IScheduler -> n:int -> source:IObservable<'?8693> -> IObservable<'?8693>
    - Type parameters: '?8693
    + Signature: scheduler:IScheduler -> n:int -> source:IObservable<'?8654> -> IObservable<'?8654>
    + Type parameters: '?8654
    - + @@ -5862,16 +5589,15 @@

    Returns

    - takeSpan duration source
    - Signature: duration:TimeSpan -> source:IObservable<'?8695> -> IObservable<'?8695>
    - Type parameters: '?8695
    + Signature: duration:TimeSpan -> source:IObservable<'?8656> -> IObservable<'?8656>
    + Type parameters: '?8656
    - + @@ -5882,16 +5608,15 @@

    Returns

    - takeSpanOn scheduler duration source
    - Signature: scheduler:IScheduler -> duration:TimeSpan -> source:IObservable<'?8697> -> IObservable<'?8697>
    - Type parameters: '?8697
    + Signature: scheduler:IScheduler -> duration:TimeSpan -> source:IObservable<'?8658> -> IObservable<'?8658>
    + Type parameters: '?8658
    - + @@ -5903,7 +5628,6 @@

    Returns

    - takeUntilOther other source @@ -5912,7 +5636,7 @@

    Returns

    Type parameters: 'Other, 'Source
    - + @@ -5923,7 +5647,6 @@

    Returns

    - takeUntilTime endtime source @@ -5932,7 +5655,7 @@

    Returns

    Type parameters: 'Source
    - + @@ -5943,16 +5666,15 @@

    Returns

    - takeUntilTimeOn scheduler endtime source
    - Signature: scheduler:IScheduler -> endtime:DateTimeOffset -> source:IObservable<'?8718> -> IObservable<'?8718>
    - Type parameters: '?8718
    + Signature: scheduler:IScheduler -> endtime:DateTimeOffset -> source:IObservable<'?8679> -> IObservable<'?8679>
    + Type parameters: '?8679
    - + @@ -5964,7 +5686,6 @@

    Returns

    - takeWhile predicate source @@ -5973,7 +5694,7 @@

    Returns

    Type parameters: 'Source
    - + @@ -5984,7 +5705,6 @@

    Returns

    - takeWhilei predicate source @@ -5993,7 +5713,7 @@

    Returns

    Type parameters: 'Source
    - + @@ -6005,7 +5725,6 @@

    Returns

    - thenMap map source @@ -6014,7 +5733,7 @@

    Returns

    Type parameters: 'Source, 'Result
    - + @@ -6026,7 +5745,6 @@

    Returns

    - throttle dueTime source @@ -6035,7 +5753,7 @@

    Returns

    Type parameters: 'Source
    - + @@ -6046,16 +5764,15 @@

    Returns

    - - throttleComputed (...) + throttleComputed(...)
    Signature: throttleDurationSelector:('Source -> IObservable<'Throttle>) -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source, 'Throttle
    - + @@ -6066,7 +5783,6 @@

    Returns

    - throttleOn scheduler dueTime source @@ -6075,7 +5791,7 @@

    Returns

    Type parameters: 'Source
    - + @@ -6086,16 +5802,15 @@

    Returns

    - - throw except + throw(except)
    Signature: except:exn -> IObservable<'Result>
    Type parameters: 'Result
    - + @@ -6106,16 +5821,15 @@

    Returns

    - throwOn scheduler ex
    - Signature: scheduler:IScheduler -> ex:exn -> IObservable<'?8735>
    - Type parameters: '?8735
    + Signature: scheduler:IScheduler -> ex:exn -> IObservable<'?8696>
    + Type parameters: '?8696
    - + @@ -6127,16 +5841,15 @@

    Returns

    - throwWitness witness ex
    - Signature: witness:'?8733 -> ex:exn -> IObservable<'?8733>
    - Type parameters: '?8733
    + Signature: witness:'?8694 -> ex:exn -> IObservable<'?8694>
    + Type parameters: '?8694
    - + @@ -6147,16 +5860,15 @@

    Returns

    - throwWitnessOn scheduler witeness ex
    - Signature: scheduler:'?8737 -> witeness:IScheduler -> ex:exn -> IObservable<'?8737>
    - Type parameters: '?8737
    + Signature: scheduler:'?8698 -> witeness:IScheduler -> ex:exn -> IObservable<'?8698>
    + Type parameters: '?8698
    - + @@ -6168,16 +5880,15 @@

    Returns

    - - timeInterval source + timeInterval(source)
    Signature: source:IObservable<'Source> -> IObservable<TimeInterval<'Source>>
    Type parameters: 'Source
    - + @@ -6188,16 +5899,15 @@

    Returns

    - timeIntervalOn scheduler source
    - Signature: scheduler:IScheduler -> source:IObservable<'?8744> -> IObservable<TimeInterval<'?8744>>
    - Type parameters: '?8744
    + Signature: scheduler:IScheduler -> source:IObservable<'?8705> -> IObservable<TimeInterval<'?8705>>
    + Type parameters: '?8705
    - + @@ -6209,7 +5919,6 @@

    Returns

    - timeout timeout source @@ -6218,7 +5927,7 @@

    Returns

    Type parameters: 'Source
    - + @@ -6230,16 +5939,15 @@

    Returns

    - - timeout2Duration (...) + timeout2Duration(...)
    Signature: timeout:IObservable<'Timeout> -> durationSelector:('Source -> IObservable<'Timeout>) -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Timeout, 'Source
    - + @@ -6253,16 +5961,15 @@

    Returns

    - - timeout2DurationOther (...) + timeout2DurationOther(...)
    Signature: timeout:IObservable<'Timeout> -> durationSelector:('Source -> IObservable<'Timeout>) -> other:IObservable<'Source> -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Timeout, 'Source
    - + @@ -6276,7 +5983,6 @@

    Returns

    - timeoutDuration durationSelector source @@ -6285,7 +5991,7 @@

    Returns

    Type parameters: 'Source, 'Timeout
    - + @@ -6298,16 +6004,15 @@

    Returns

    - timeoutOn scheduler timeout source
    - Signature: scheduler:IScheduler -> timeout:DateTimeOffset -> source:IObservable<'?8748> -> IObservable<'?8748>
    - Type parameters: '?8748
    + Signature: scheduler:IScheduler -> timeout:DateTimeOffset -> source:IObservable<'?8709> -> IObservable<'?8709>
    + Type parameters: '?8709
    - + @@ -6319,7 +6024,6 @@

    Returns

    - timeoutOther timeout other source @@ -6328,7 +6032,7 @@

    Returns

    Type parameters: 'Source
    - + @@ -6341,16 +6045,15 @@

    Returns

    - - timeoutOtherOn (...) + timeoutOtherOn(...)
    - Signature: scheduler:IScheduler -> timeout:DateTimeOffset -> other:IObservable<'?8752> -> source:IObservable<'?8752> -> IObservable<'?8752>
    - Type parameters: '?8752
    + Signature: scheduler:IScheduler -> timeout:DateTimeOffset -> other:IObservable<'?8713> -> source:IObservable<'?8713> -> IObservable<'?8713>
    + Type parameters: '?8713
    - + @@ -6364,7 +6067,6 @@

    Returns

    - timeoutSpan timeout source @@ -6373,7 +6075,7 @@

    Returns

    Type parameters: 'Source
    - + @@ -6386,16 +6088,15 @@

    Returns

    - timeoutSpanOn scheduler timeout source
    - Signature: scheduler:IScheduler -> timeout:TimeSpan -> source:IObservable<'?8756> -> IObservable<'?8756>
    - Type parameters: '?8756
    + Signature: scheduler:IScheduler -> timeout:TimeSpan -> source:IObservable<'?8717> -> IObservable<'?8717>
    + Type parameters: '?8717
    - + @@ -6408,7 +6109,6 @@

    Returns

    - timeoutSpanOther timeout other source @@ -6417,7 +6117,7 @@

    Returns

    Type parameters: 'Source
    - + @@ -6430,16 +6130,15 @@

    Returns

    - - timeoutSpanOtherOn (...) + timeoutSpanOtherOn(...)
    - Signature: scheduler:IScheduler -> timeout:TimeSpan -> other:IObservable<'?8760> -> source:IObservable<'?8760> -> IObservable<'?8760>
    - Type parameters: '?8760
    + Signature: scheduler:IScheduler -> timeout:TimeSpan -> other:IObservable<'?8721> -> source:IObservable<'?8721> -> IObservable<'?8721>
    + Type parameters: '?8721
    - + @@ -6452,16 +6151,15 @@

    Returns

    - - timer dueTime + timer(dueTime)
    Signature: dueTime:DateTimeOffset -> IObservable<int64>
    - + @@ -6472,7 +6170,6 @@

    Returns

    - timerOn scheduler dueTime @@ -6481,7 +6178,7 @@

    Returns

    - + @@ -6493,7 +6190,6 @@

    Returns

    - timerPeriod dueTime period @@ -6502,7 +6198,7 @@

    Returns

    - + @@ -6513,16 +6209,15 @@

    Returns

    - - timerSpan dueTime + timerSpan(dueTime)
    Signature: dueTime:TimeSpan -> IObservable<int64>
    - + @@ -6533,7 +6228,6 @@

    Returns

    - timerSpanOn scheduler dueTime @@ -6542,7 +6236,7 @@

    Returns

    - + @@ -6554,16 +6248,15 @@

    Returns

    - - timerSpanPeriod (dueTime, period) + timerSpanPeriod(dueTime, period)
    Signature: (dueTime:TimeSpan * period:TimeSpan) -> IObservable<int64>
    - + @@ -6575,16 +6268,15 @@

    Returns

    - - timerSpanPeriodOn (...) + timerSpanPeriodOn(...)
    Signature: scheduler:IScheduler -> dueTime:TimeSpan -> period:TimeSpan -> IObservable<int64>
    - + @@ -6596,16 +6288,15 @@

    Returns

    - - timestamp source + timestamp(source)
    Signature: source:IObservable<'Source> -> IObservable<Timestamped<'Source>>
    Type parameters: 'Source
    - + @@ -6616,7 +6307,6 @@

    Returns

    - timestampOn scheduler source @@ -6625,7 +6315,7 @@

    Returns

    Type parameters: 'Source
    - + @@ -6636,16 +6326,15 @@

    Returns

    - - toArray source + toArray(source)
    - Signature: source:IObservable<'?8784> -> IObservable<'?8784 []>
    - Type parameters: '?8784
    + Signature: source:IObservable<'?8745> -> IObservable<'?8745 []>
    + Type parameters: '?8745
    - + @@ -6656,16 +6345,15 @@

    Returns

    - toDictionary keySelector source
    - Signature: keySelector:('?8786 -> '?8787) -> source:IObservable<'?8786> -> IObservable<IDictionary<'?8787,'?8786>>
    - Type parameters: '?8786, '?8787
    + Signature: keySelector:('?8747 -> '?8748) -> source:IObservable<'?8747> -> IObservable<IDictionary<'?8748,'?8747>>
    + Type parameters: '?8747, '?8748
    - + @@ -6676,16 +6364,15 @@

    Returns

    - - toDictionaryCompareElements (...) + toDictionaryCompareElements(...)
    Signature: keySelector:('Source -> 'Key) -> elementSelector:('Source -> 'Elm) -> comparer:'Key -> source:'Source -> IObservable<IDictionary<'Key,'Elm>>
    Type parameters: 'Source, 'Key, 'Elm
    - + @@ -6696,16 +6383,15 @@

    Returns

    - - toDictionaryComparer (...) + toDictionaryComparer(...)
    Signature: keySelector:('Source -> 'Key) -> comparer:'Key -> source:'Source -> IObservable<IDictionary<'Key,'Source>>
    Type parameters: 'Source, 'Key
    - + @@ -6717,16 +6403,15 @@

    Returns

    - - toDictionaryElements (...) + toDictionaryElements(...)
    Signature: keySelector:('Source -> 'Key) -> elementSelector:('Source -> 'Elm) -> source:'Source -> IObservable<IDictionary<'Key,'Elm>>
    Type parameters: 'Source, 'Key, 'Elm
    - + @@ -6737,16 +6422,15 @@

    Returns

    - - toEnumerable source + toEnumerable(source)
    Signature: source:IObservable<'T> -> IEnumerable<'T>
    Type parameters: 'T
    - + @@ -6757,16 +6441,15 @@

    Returns

    - - toEvent source + toEvent(source)
    Signature: source:IObservable<unit> -> IEventSource<unit>
    - + @@ -6777,16 +6460,15 @@

    Returns

    - - toEventType source + toEventType(source)
    Signature: source:IObservable<'Source> -> IEventSource<'Source>
    Type parameters: 'Source
    - + @@ -6797,16 +6479,15 @@

    Returns

    - - toList source + toList(source)
    - Signature: source:IObservable<'?8803> -> IObservable<IList<'?8803>>
    - Type parameters: '?8803
    + Signature: source:IObservable<'?8764> -> IObservable<IList<'?8764>>
    + Type parameters: '?8764
    - + @@ -6817,7 +6498,6 @@

    Returns

    - toLookup keySelector source @@ -6826,7 +6506,7 @@

    Returns

    Type parameters: 'Source, 'Key
    - + @@ -6837,16 +6517,15 @@

    Returns

    - - toLookupCompare (...) + toLookupCompare(...)
    Signature: keySelector:('Source -> 'Key) -> comparer:IEqualityComparer<'Key> -> source:IObservable<'Source> -> IObservable<ILookup<'Key,'Source>>
    Type parameters: 'Source, 'Key
    - + @@ -6857,16 +6536,15 @@

    Returns

    - - toLookupCompareElement (...) + toLookupCompareElement(...)
    Signature: keySelector:('Source -> 'Key) -> elementSelector:('Source -> 'Element) -> source:IObservable<'Source> -> IObservable<ILookup<'Key,'Element>>
    Type parameters: 'Source, 'Key, 'Element
    - + @@ -6877,16 +6555,15 @@

    Returns

    - - toLookupElement (...) + toLookupElement(...)
    Signature: keySelector:('Source -> 'Key) -> elementSelector:('Source -> 'Element) -> comparer:IEqualityComparer<'Key> -> source:IObservable<'Source> -> IObservable<ILookup<'Key,'Element>>
    Type parameters: 'Source, 'Key, 'Element
    - + @@ -6897,16 +6574,15 @@

    Returns

    - - toObservable source + toObservable(source)
    Signature: source:seq<'T> -> IObservable<'T>
    Type parameters: 'T
    - + @@ -6917,7 +6593,6 @@

    Returns

    - using resourceFactory observableFactory @@ -6926,7 +6601,7 @@

    Returns

    Type parameters: 'TResource, 'Result
    - + @@ -6938,16 +6613,15 @@

    Returns

    - - usingAsync (...) + usingAsync(...)
    - Signature: resourceFactory:(CancellationToken -> Async<'?8824>) -> observableFactory:('?8824 -> CancellationToken -> Async<IObservable<'?8825>>) -> IObservable<'?8825>
    - Type parameters: '?8824, '?8825
    + Signature: resourceFactory:(CancellationToken -> Async<'?8785>) -> observableFactory:('?8785 -> CancellationToken -> Async<IObservable<'?8786>>) -> IObservable<'?8786>
    + Type parameters: '?8785, '?8786
    - + @@ -6962,16 +6636,15 @@

    Returns

    - - wait source + wait(source)
    - Signature: source:IObservable<'?8827> -> '?8827
    - Type parameters: '?8827
    + Signature: source:IObservable<'?8788> -> '?8788
    + Type parameters: '?8788
    - + @@ -6984,16 +6657,15 @@

    Returns

    - whileLoop condition source
    - Signature: condition:(unit -> bool) -> source:IObservable<'?8829> -> IObservable<'?8829>
    - Type parameters: '?8829
    + Signature: condition:(unit -> bool) -> source:IObservable<'?8790> -> IObservable<'?8790>
    + Type parameters: '?8790
    - + @@ -7006,7 +6678,6 @@

    Returns

    - window windowClosingSelector source @@ -7015,7 +6686,7 @@

    Returns

    Type parameters: 'WindowClosing, 'Source
    - + @@ -7028,7 +6699,6 @@

    Returns

    - windowBounded windowBoundaries source @@ -7037,7 +6707,7 @@

    Returns

    Type parameters: 'WindowBoundary, 'Source
    - + @@ -7050,7 +6720,6 @@

    Returns

    - windowCount count source @@ -7059,7 +6728,7 @@

    Returns

    Type parameters: 'Source
    - + @@ -7071,7 +6740,6 @@

    Returns

    - windowCountSkip count skip source @@ -7080,7 +6748,7 @@

    Returns

    Type parameters: 'Source
    - + @@ -7091,16 +6759,15 @@

    Returns

    - - windowOpenClose (...) + windowOpenClose(...)
    Signature: windowOpenings:IObservable<'WinOpen> -> windowClosingSelector:('WinOpen -> IObservable<'WinClose>) -> source:IObservable<'Source> -> IObservable<IObservable<'Source>>
    Type parameters: 'WinOpen, 'WinClose, 'Source
    - + @@ -7113,7 +6780,6 @@

    Returns

    - windowTimeCount timeSpan count source @@ -7122,7 +6788,7 @@

    Returns

    Type parameters: 'Source
    - + @@ -7136,16 +6802,15 @@

    Returns

    - - windowTimeCountOn (...) + windowTimeCountOn(...)
    - Signature: scheduler:IScheduler -> timeSpan:TimeSpan -> count:int -> source:IObservable<'?8855> -> IObservable<IObservable<'?8855>>
    - Type parameters: '?8855
    + Signature: scheduler:IScheduler -> timeSpan:TimeSpan -> count:int -> source:IObservable<'?8816> -> IObservable<IObservable<'?8816>>
    + Type parameters: '?8816
    - + @@ -7159,16 +6824,15 @@

    Returns

    - - windowTimeShift (...) + windowTimeShift(...)
    Signature: timeSpan:TimeSpan -> timeShift:TimeSpan -> source:IObservable<'Source> -> IObservable<IObservable<'Source>>
    Type parameters: 'Source
    - + @@ -7180,16 +6844,15 @@

    Returns

    - - windowTimeShiftOn (...) + windowTimeShiftOn(...)
    - Signature: scheduler:IScheduler -> timeSpan:TimeSpan -> timeShift:TimeSpan -> source:IObservable<'?8844> -> IObservable<IObservable<'?8844>>
    - Type parameters: '?8844
    + Signature: scheduler:IScheduler -> timeSpan:TimeSpan -> timeShift:TimeSpan -> source:IObservable<'?8805> -> IObservable<IObservable<'?8805>>
    + Type parameters: '?8805
    - + @@ -7201,7 +6864,6 @@

    Returns

    - windowTimeSpan timeSpan source @@ -7210,7 +6872,7 @@

    Returns

    Type parameters: 'Source
    - + @@ -7222,16 +6884,15 @@

    Returns

    - - windowTimeSpanOn (...) + windowTimeSpanOn(...)
    - Signature: scheduler:IScheduler -> timeSpan:TimeSpan -> source:IObservable<'?8836> -> IObservable<IObservable<'?8836>>
    - Type parameters: '?8836
    + Signature: scheduler:IScheduler -> timeSpan:TimeSpan -> source:IObservable<'?8797> -> IObservable<IObservable<'?8797>>
    + Type parameters: '?8797
    - + @@ -7243,16 +6904,15 @@

    Returns

    - - withLatestFrom (...) + withLatestFrom(...)
    - Signature: resultSelector:('?8857 -> '?8858 -> '?8859) -> second:IObservable<'?8858> -> first:IObservable<'?8857> -> IObservable<'?8859>
    - Type parameters: '?8857, '?8858, '?8859
    + Signature: resultSelector:('?8818 -> '?8819 -> '?8820) -> second:IObservable<'?8819> -> first:IObservable<'?8818> -> IObservable<'?8820>
    + Type parameters: '?8818, '?8819, '?8820
    - + @@ -7265,7 +6925,6 @@

    Returns

    - zip first second @@ -7274,7 +6933,7 @@

    Returns

    Type parameters: 'Source1, 'Source2
    - + @@ -7285,7 +6944,6 @@

    Returns

    - zip3 first second third @@ -7294,7 +6952,7 @@

    Returns

    Type parameters: 'Source1, 'Source2, 'Source3
    - + @@ -7305,16 +6963,15 @@

    Returns

    - - zipArray sources + zipArray(sources)
    Signature: sources:IObservable<'Source> [] -> IObservable<IList<'Source>>
    Type parameters: 'Source
    - + @@ -7326,16 +6983,15 @@

    Returns

    - - zipSeq sources + zipSeq(sources)
    Signature: sources:seq<IObservable<'Source>> -> IObservable<IList<'Source>>
    Type parameters: 'Source
    - + @@ -7347,7 +7003,6 @@

    Returns

    - zipSeqMap resultSelector sources @@ -7356,7 +7011,7 @@

    Returns

    Type parameters: 'S, 'R
    - + @@ -7369,7 +7024,6 @@

    Returns

    - zipWith resultSelector first second @@ -7378,7 +7032,7 @@

    Returns

    Type parameters: 'Source1, 'Source2, 'Result
    - + @@ -7389,7 +7043,6 @@

    Returns

    - zipWithSeq resultSelector second first @@ -7398,7 +7051,7 @@

    Returns

    Type parameters: 'Source1, 'Source2, 'Result
    - + @@ -7418,16 +7071,15 @@

    Type extensions

    - - Create(onNext) + Observer.Create(onNext)
    - Signature: (onNext:('?8081 -> unit)) -> IObserver<'?8081>
    - Type parameters: '?8081
    + Signature: (onNext:('?8044 -> unit)) -> IObserver<'?8044>
    + Type parameters: '?8044
    - + @@ -7439,16 +7091,15 @@

    Type extensions

    - - Create(onNext, onError) + Observer.Create(onNext, onError)
    - Signature: (onNext:('?8083 -> unit) * onError:(exn -> unit)) -> IObserver<'?8083>
    - Type parameters: '?8083
    + Signature: (onNext:('?8046 -> unit) * onError:(exn -> unit)) -> IObserver<'?8046>
    + Type parameters: '?8046
    - + @@ -7460,16 +7111,15 @@

    Type extensions

    - - Create(onNext, onCompleted) + Observer.Create(onNext, onCompleted)
    - Signature: (onNext:('?8085 -> unit) * onCompleted:(unit -> unit)) -> IObserver<'?8085>
    - Type parameters: '?8085
    + Signature: (onNext:('?8048 -> unit) * onCompleted:(unit -> unit)) -> IObserver<'?8048>
    + Type parameters: '?8048
    - + @@ -7481,16 +7131,15 @@

    Type extensions

    - - Create(onNext, onError, onCompleted) + Observer.Create(...)
    - Signature: (onNext:('?8087 -> unit) * onError:(exn -> unit) * onCompleted:(unit -> unit)) -> IObserver<'?8087>
    - Type parameters: '?8087
    + Signature: (onNext:('?8050 -> unit) * onError:(exn -> unit) * onCompleted:(unit -> unit)) -> IObserver<'?8050>
    + Type parameters: '?8050
    - + @@ -7502,16 +7151,15 @@

    Type extensions

    - - Create(subscribe) + Observable.Create(subscribe)
    Signature: (subscribe:(IObserver<'T> -> unit -> unit)) -> IObservable<'T>
    Type parameters: 'T
    - + @@ -7523,37 +7171,15 @@

    Type extensions

    - - Create(subscribe) + Observable.CreateAsync(subscribe)
    - Signature: (subscribe:(IObserver<'?8092> -> IDisposable)) -> IObservable<'?8092>
    - Type parameters: '?8092
    - - - - - - -

    Creates an observable sequence from the specified Subscribe method implementation.

    - - -

    CompiledName: Observable.Create.Static

    - - - - - - - CreateAsync(subscribe) - -
    Signature: (subscribe:(IObserver<'T> -> Async<IDisposable>)) -> IObservable<'T>
    Type parameters: 'T
    - + @@ -7565,16 +7191,15 @@

    Type extensions

    - - - Empty + + Observer.Empty -
    +
    Signature: IObserver<obj>
    - + @@ -7586,16 +7211,15 @@

    Type extensions

    - - - Empty + + Observer.Empty -
    +
    Signature: IObserver<obj>
    - + @@ -7607,16 +7231,15 @@

    Type extensions

    - - - Subscribe(onNext) + + x.Subscribe(onNext) -
    +
    Signature: (onNext:('T -> unit)) -> IDisposable
    - + @@ -7628,16 +7251,15 @@

    Type extensions

    - - - Subscribe(onNext, onError) + + x.Subscribe(onNext, onError) -
    +
    Signature: (onNext:('T -> unit) * onError:(exn -> unit)) -> IDisposable
    - + @@ -7649,16 +7271,15 @@

    Type extensions

    - - - Subscribe(onNext, onCompleted) + + x.Subscribe(onNext, onCompleted) -
    +
    Signature: (onNext:('T -> unit) * onCompleted:(unit -> unit)) -> IDisposable
    - + @@ -7670,16 +7291,15 @@

    Type extensions

    - - - Subscribe(onNext, onError, onCompleted) + + x.Subscribe(...) -
    +
    Signature: (onNext:('T -> unit) * onError:(exn -> unit) * onCompleted:(unit -> unit)) -> IDisposable
    - + diff --git a/reference/fsharp-control-reactive-schedule.html b/reference/fsharp-control-reactive-schedule.html index 63c7a53..fc1ec73 100644 --- a/reference/fsharp-control-reactive-schedule.html +++ b/reference/fsharp-control-reactive-schedule.html @@ -5,7 +5,7 @@ Schedule - FSharp.Control.Reactive - + @@ -33,8 +33,6 @@

    FSharp.Control.R
    - -

    Schedule

    Namespace: FSharp.Control.Reactive
    @@ -54,11 +52,10 @@

    Functions and values

    - - + action f sch -
    +
    Signature: f:(unit -> unit) -> sch:IScheduler -> IDisposable
    @@ -74,11 +71,10 @@

    Functions and values

    - - + actionAccOffsetRec state dueTime ff sch -
    +
    Signature: state:'state -> dueTime:DateTimeOffset -> ff:('state -> ('state -> DateTimeOffset -> unit) -> unit) -> sch:IScheduler -> IDisposable
    Type parameters: 'state
    @@ -94,11 +90,10 @@

    Functions and values

    - - + actionAccRec state ff sch -
    +
    Signature: state:'state -> ff:('state -> ('state -> unit) -> unit) -> sch:IScheduler -> IDisposable
    Type parameters: 'state
    @@ -114,11 +109,10 @@

    Functions and values

    - - + actionAccSpanRec state dueTime ff sch -
    +
    Signature: state:'state -> dueTime:TimeSpan -> ff:('state -> ('state -> TimeSpan -> unit) -> unit) -> sch:IScheduler -> IDisposable
    Type parameters: 'state
    @@ -134,11 +128,10 @@

    Functions and values

    - - + actionLong f sch -
    +
    Signature: f:(ICancelable -> unit) -> sch:ISchedulerLongRunning -> IDisposable
    @@ -154,13 +147,12 @@

    Functions and values

    - - + actionLongState state f sch -
    - Signature: state:'?8956 -> f:('?8956 -> ICancelable -> '?8957) -> sch:ISchedulerLongRunning -> IDisposable
    - Type parameters: '?8956, '?8957
    +
    + Signature: state:'?8917 -> f:('?8917 -> ICancelable -> '?8918) -> sch:ISchedulerLongRunning -> IDisposable
    + Type parameters: '?8917, '?8918
    @@ -174,11 +166,10 @@

    Functions and values

    - - + actionOffset offset f sch -
    +
    Signature: offset:DateTimeOffset -> f:(unit -> unit) -> sch:IScheduler -> IDisposable
    @@ -194,11 +185,10 @@

    Functions and values

    - - + actionOffsetRec dueTime ff sch -
    +
    Signature: dueTime:DateTimeOffset -> ff:((unit -> unit) -> unit) -> sch:IScheduler -> IDisposable
    @@ -214,11 +204,10 @@

    Functions and values

    - - + actionRec ff sch -
    +
    Signature: ff:((unit -> unit) -> unit) -> sch:IScheduler -> IDisposable
    @@ -234,11 +223,10 @@

    Functions and values

    - - + actionSpanRec time ff sch -
    +
    Signature: time:TimeSpan -> ff:(TimeSpan -> (TimeSpan -> unit) -> unit) -> sch:IScheduler -> IDisposable
    @@ -254,11 +242,10 @@

    Functions and values

    - - - asAsync cta + + asAsync(cta) -
    +
    Signature: cta:SchedulerOperation -> Async<unit>
    @@ -272,11 +259,10 @@

    Functions and values

    - - + asTask ct async -
    +
    Signature: ct:CancellationToken -> async:Async<'T> -> Task<'T>
    Type parameters: 'T
    @@ -290,13 +276,12 @@

    Functions and values

    - - + async f sch -
    - Signature: f:(IScheduler -> CancellationToken -> Async<'?8992>) -> sch:IScheduler -> IDisposable
    - Type parameters: '?8992
    +
    + Signature: f:(IScheduler -> CancellationToken -> Async<'?8953>) -> sch:IScheduler -> IDisposable
    + Type parameters: '?8953
    @@ -310,11 +295,10 @@

    Functions and values

    - - + asyncAccOffsetResult state dueTime f sch -
    +
    Signature: state:'state -> dueTime:DateTimeOffset -> f:(IScheduler -> 'state -> CancellationToken -> Async<IDisposable>) -> sch:IScheduler -> IDisposable
    Type parameters: 'state
    @@ -330,13 +314,12 @@

    Functions and values

    - - + asyncAccOffsetUnit state dueTime f sch -
    - Signature: state:'state -> dueTime:DateTimeOffset -> f:(IScheduler -> 'state -> CancellationToken -> Async<'?9012>) -> sch:IScheduler -> IDisposable
    - Type parameters: 'state, '?9012
    +
    + Signature: state:'state -> dueTime:DateTimeOffset -> f:(IScheduler -> 'state -> CancellationToken -> Async<'?8973>) -> sch:IScheduler -> IDisposable
    + Type parameters: 'state, '?8973
    @@ -350,11 +333,10 @@

    Functions and values

    - - + asyncAccResult state f sch -
    +
    Signature: state:'state -> f:(IScheduler -> 'state -> CancellationToken -> Async<IDisposable>) -> sch:IScheduler -> IDisposable
    Type parameters: 'state
    @@ -370,11 +352,10 @@

    Functions and values

    - - + asyncAccSpanResult state dueTime f sch -
    +
    Signature: state:'state -> dueTime:TimeSpan -> f:(IScheduler -> 'state -> CancellationToken -> Async<IDisposable>) -> sch:IScheduler -> IDisposable
    Type parameters: 'state
    @@ -390,13 +371,12 @@

    Functions and values

    - - + asyncAccSpanUnit state dueTime f sch -
    - Signature: state:'state -> dueTime:TimeSpan -> f:(IScheduler -> 'state -> CancellationToken -> Async<'?9007>) -> sch:IScheduler -> IDisposable
    - Type parameters: 'state, '?9007
    +
    + Signature: state:'state -> dueTime:TimeSpan -> f:(IScheduler -> 'state -> CancellationToken -> Async<'?8968>) -> sch:IScheduler -> IDisposable
    + Type parameters: 'state, '?8968
    @@ -410,13 +390,12 @@

    Functions and values

    - - + asyncAccUnit state f sch -
    - Signature: state:'state -> f:(IScheduler -> 'state -> CancellationToken -> Async<'?8996>) -> sch:IScheduler -> IDisposable
    - Type parameters: 'state, '?8996
    +
    + Signature: state:'state -> f:(IScheduler -> 'state -> CancellationToken -> Async<'?8957>) -> sch:IScheduler -> IDisposable
    + Type parameters: 'state, '?8957
    @@ -430,11 +409,10 @@

    Functions and values

    - - + asyncOffsetResult dueTime f sch -
    +
    Signature: dueTime:DateTimeOffset -> f:(IScheduler -> CancellationToken -> Async<IDisposable>) -> sch:IScheduler -> IDisposable
    @@ -450,13 +428,12 @@

    Functions and values

    - - + asyncOffsetUnit dueTime f sch -
    - Signature: dueTime:DateTimeOffset -> f:(IScheduler -> CancellationToken -> Async<'?9003>) -> sch:IScheduler -> IDisposable
    - Type parameters: '?9003
    +
    + Signature: dueTime:DateTimeOffset -> f:(IScheduler -> CancellationToken -> Async<'?8964>) -> sch:IScheduler -> IDisposable
    + Type parameters: '?8964
    @@ -470,11 +447,10 @@

    Functions and values

    - - + asyncResult f sch -
    +
    Signature: f:(IScheduler -> CancellationToken -> Async<IDisposable>) -> sch:IScheduler -> IDisposable
    @@ -490,11 +466,10 @@

    Functions and values

    - - + asyncSpanResult dueTime f sch -
    +
    Signature: dueTime:TimeSpan -> f:(IScheduler -> CancellationToken -> Async<IDisposable>) -> sch:IScheduler -> IDisposable
    @@ -510,13 +485,12 @@

    Functions and values

    - - + asyncSpanUnit dueTime f sch -
    - Signature: dueTime:TimeSpan -> f:(IScheduler -> CancellationToken -> Async<'?9000>) -> sch:IScheduler -> IDisposable
    - Type parameters: '?9000
    +
    + Signature: dueTime:TimeSpan -> f:(IScheduler -> CancellationToken -> Async<'?8961>) -> sch:IScheduler -> IDisposable
    + Type parameters: '?8961
    @@ -530,13 +504,12 @@

    Functions and values

    - - + catch f sch -
    - Signature: f:('?8981 -> bool) -> sch:IScheduler -> IScheduler
    - Type parameters: '?8981
    +
    + Signature: f:('?8942 -> bool) -> sch:IScheduler -> IScheduler
    + Type parameters: '?8942
    @@ -550,11 +523,10 @@

    Functions and values

    - - - disableOptimizations arg00 + + disableOptimizations(arg00) -
    +
    Signature: arg00:IScheduler -> IScheduler
    @@ -570,11 +542,10 @@

    Functions and values

    - - - disableOptimizationsTypes (...) + + disableOptimizationsTypes(...) -
    +
    Signature: optimizationInterfaces:Type list -> sch:IScheduler -> IScheduler
    @@ -590,13 +561,12 @@

    Functions and values

    - - + func state f sch -
    - Signature: state:'?8959 -> f:(IScheduler -> '?8959 -> IDisposable) -> sch:IScheduler -> IDisposable
    - Type parameters: '?8959
    +
    + Signature: state:'?8920 -> f:(IScheduler -> '?8920 -> IDisposable) -> sch:IScheduler -> IDisposable
    + Type parameters: '?8920
    @@ -610,13 +580,12 @@

    Functions and values

    - - + funcOffset state dueTime f sch -
    - Signature: state:'?8963 -> dueTime:DateTimeOffset -> f:(IScheduler -> '?8963 -> IDisposable) -> sch:IScheduler -> IDisposable
    - Type parameters: '?8963
    +
    + Signature: state:'?8924 -> dueTime:DateTimeOffset -> f:(IScheduler -> '?8924 -> IDisposable) -> sch:IScheduler -> IDisposable
    + Type parameters: '?8924
    @@ -630,13 +599,12 @@

    Functions and values

    - - + funcSpan state dueTime f sch -
    - Signature: state:'?8961 -> dueTime:TimeSpan -> f:(IScheduler -> '?8961 -> IDisposable) -> sch:IScheduler -> IDisposable
    - Type parameters: '?8961
    +
    + Signature: state:'?8922 -> dueTime:TimeSpan -> f:(IScheduler -> '?8922 -> IDisposable) -> sch:IScheduler -> IDisposable
    + Type parameters: '?8922
    @@ -650,11 +618,10 @@

    Functions and values

    - - + multiple fs sch -
    +
    Signature: fs:(IScheduler -> IDisposable) list -> sch:IScheduler -> IDisposable
    @@ -670,13 +637,12 @@

    Functions and values

    - - + periodicAcc state period f sch -
    - Signature: state:'?8974 -> period:TimeSpan -> f:('?8974 -> '?8974) -> sch:IScheduler -> IDisposable
    - Type parameters: '?8974
    +
    + Signature: state:'?8935 -> period:TimeSpan -> f:('?8935 -> '?8935) -> sch:IScheduler -> IDisposable
    + Type parameters: '?8935
    @@ -693,13 +659,12 @@

    Functions and values

    - - + periodicAccAction state period f sch -
    - Signature: state:'?8976 -> period:TimeSpan -> f:('?8976 -> unit) -> sch:IScheduler -> IDisposable
    - Type parameters: '?8976
    +
    + Signature: state:'?8937 -> period:TimeSpan -> f:('?8937 -> unit) -> sch:IScheduler -> IDisposable
    + Type parameters: '?8937
    @@ -716,11 +681,10 @@

    Functions and values

    - - + periodicAction period f sch -
    +
    Signature: period:TimeSpan -> f:(unit -> unit) -> sch:IScheduler -> IDisposable
    @@ -739,11 +703,10 @@

    Functions and values

    - - + sleep dueTime sch -
    +
    Signature: dueTime:TimeSpan -> sch:IScheduler -> Async<unit>
    @@ -760,11 +723,10 @@

    Functions and values

    - - + sleepCancel dueTime ct sch -
    +
    Signature: dueTime:TimeSpan -> ct:CancellationToken -> sch:IScheduler -> Async<unit>
    @@ -781,11 +743,10 @@

    Functions and values

    - - + sleepOffset dueTime sch -
    +
    Signature: dueTime:DateTimeOffset -> sch:IScheduler -> Async<unit>
    @@ -802,11 +763,10 @@

    Functions and values

    - - + sleepOffsetCancel dueTime ct sch -
    +
    Signature: dueTime:DateTimeOffset -> ct:CancellationToken -> sch:IScheduler -> Async<unit>
    @@ -823,11 +783,10 @@

    Functions and values

    - - - yield_ x + + yield_(x) -
    +
    Signature: x:IScheduler -> Async<unit>
    @@ -844,11 +803,10 @@

    Functions and values

    - - + yieldCancel ct sch -
    +
    Signature: ct:CancellationToken -> sch:IScheduler -> Async<unit>
    diff --git a/reference/fsharp-control-reactive-scheduler-scheduler.html b/reference/fsharp-control-reactive-scheduler-scheduler.html index af49e96..ad1a641 100644 --- a/reference/fsharp-control-reactive-scheduler-scheduler.html +++ b/reference/fsharp-control-reactive-scheduler-scheduler.html @@ -5,7 +5,7 @@ Scheduler - FSharp.Control.Reactive - + @@ -33,8 +33,6 @@

    FSharp.Control.R
    - -

    Scheduler

    @@ -51,11 +49,10 @@

    Constructors

    - - + new() -
    +
    Signature: unit -> Scheduler
    @@ -78,11 +75,10 @@

    Static members

    - - - EventLoop + + Scheduler.EventLoop -
    +
    Signature: EventLoopScheduler
    @@ -99,11 +95,10 @@

    Static members

    - - - Historical + + Scheduler.Historical -
    +
    Signature: HistoricalScheduler
    diff --git a/reference/fsharp-control-reactive-scheduler.html b/reference/fsharp-control-reactive-scheduler.html index 895a5e0..75ae17f 100644 --- a/reference/fsharp-control-reactive-scheduler.html +++ b/reference/fsharp-control-reactive-scheduler.html @@ -5,7 +5,7 @@ Scheduler - FSharp.Control.Reactive - + @@ -33,8 +33,6 @@

    FSharp.Control.R
    - -

    Scheduler

    Namespace: FSharp.Control.Reactive
    @@ -71,11 +69,10 @@

    Functions and values

    - - - asLongRunning sch + + asLongRunning(sch) -
    +
    Signature: sch:IScheduler -> ISchedulerLongRunning option
    diff --git a/reference/fsharp-control-reactive-subject-1.html b/reference/fsharp-control-reactive-subject-1.html index 61e3ffb..c39e674 100644 --- a/reference/fsharp-control-reactive-subject-1.html +++ b/reference/fsharp-control-reactive-subject-1.html @@ -5,7 +5,7 @@ Subject<'a> - FSharp.Control.Reactive - + @@ -33,8 +33,6 @@

    FSharp.Control.R
    - -

    Subject<'a>

    @@ -50,11 +48,10 @@

    Static members

    - - - async + + Subject.async -
    +
    Signature: AsyncSubject<'a>
    @@ -72,11 +69,10 @@

    Static members

    - - - behavior(x) + + Subject.behavior(x) -
    +
    Signature: x:'a -> BehaviorSubject<'a>
    @@ -93,11 +89,10 @@

    Static members

    - - - broadcast + + Subject.broadcast -
    +
    Signature: Subject<'a>
    @@ -115,11 +110,10 @@

    Static members

    - - - replay + + Subject.replay -
    +
    Signature: ReplaySubject<'a>
    diff --git a/reference/fsharp-control-reactive-subjectmodule.html b/reference/fsharp-control-reactive-subjectmodule.html index 8407d74..2176e27 100644 --- a/reference/fsharp-control-reactive-subjectmodule.html +++ b/reference/fsharp-control-reactive-subjectmodule.html @@ -5,7 +5,7 @@ Subject - FSharp.Control.Reactive - + @@ -33,8 +33,6 @@

    FSharp.Control.R
    - -

    Subject

    Namespace: FSharp.Control.Reactive
    @@ -59,11 +57,10 @@

    Functions and values

    - - - onCompleted s + + onCompleted(s) -
    +
    Signature: s:SubjectBase<'a> -> SubjectBase<'a>
    Type parameters: 'a
    @@ -79,11 +76,10 @@

    Functions and values

    - - + onError ex s -
    +
    Signature: ex:exn -> s:SubjectBase<'a> -> SubjectBase<'a>
    Type parameters: 'a
    @@ -99,11 +95,10 @@

    Functions and values

    - - + onNext x s -
    +
    Signature: x:'a -> s:SubjectBase<'a> -> SubjectBase<'a>
    Type parameters: 'a
    @@ -119,13 +114,12 @@

    Functions and values

    - - + onNexts xs s -
    - Signature: xs:seq<'?8938> -> s:'?8939 -> '?8939
    - Type parameters: '?8938, '?8939
    +
    + Signature: xs:seq<'?8899> -> s:'?8900 -> '?8900
    + Type parameters: '?8899, '?8900
    diff --git a/reference/fsharp-control-reactive-testing-gentestnotification.html b/reference/fsharp-control-reactive-testing-gentestnotification.html index a91d9c6..a085ff0 100644 --- a/reference/fsharp-control-reactive-testing-gentestnotification.html +++ b/reference/fsharp-control-reactive-testing-gentestnotification.html @@ -5,7 +5,7 @@ GenTestNotification - FSharp.Control.Reactive - + @@ -33,8 +33,6 @@

    FSharp.Control.R
    - -

    GenTestNotification

    @@ -50,11 +48,10 @@

    Static members

    - - - GenNotifications() + + GenTestNotification.GenNotifications() -
    +
    Signature: unit -> Arbitrary<TestNotifications<'a>>
    Type parameters: 'a
    diff --git a/reference/fsharp-control-reactive-testing-marbles.html b/reference/fsharp-control-reactive-testing-marbles.html index 71459bf..1ade1ff 100644 --- a/reference/fsharp-control-reactive-testing-marbles.html +++ b/reference/fsharp-control-reactive-testing-marbles.html @@ -5,7 +5,7 @@ Marbles - FSharp.Control.Reactive - + @@ -33,8 +33,6 @@

    FSharp.Control.R
    - -

    Marbles

    Namespace: FSharp.Control.Reactive.Testing
    @@ -54,11 +52,10 @@

    Functions and values

    - - + cold x sch -
    +
    Signature: x:string -> sch:TestScheduler -> ITestableObservable<string>
    @@ -82,11 +79,10 @@

    Parameters

    - - + expectMessages sch txt obs -
    +
    Signature: sch:TestScheduler -> txt:string -> obs:IObservable<string> -> unit
    @@ -102,11 +98,10 @@

    Parameters

    - - + expectSubscription txt xs -
    +
    Signature: txt:string -> xs:Subscription -> unit
    @@ -122,11 +117,10 @@

    Parameters

    - - + expectSubscriptions txt xs -
    +
    Signature: txt:string list -> xs:Subscription list -> unit
    @@ -142,11 +136,10 @@

    Parameters

    - - + hot x sch -
    +
    Signature: x:string -> sch:TestScheduler -> ITestableObservable<string>
    @@ -166,11 +159,10 @@

    Parameters

    - - - messages txt + + messages(txt) -
    +
    Signature: txt:string -> TestNotifications<string>
    @@ -186,11 +178,10 @@

    Parameters

    - - - subscription + + subscription -
    +
    Signature: string -> Subscription
    @@ -206,11 +197,10 @@

    Parameters

    - - - subscriptions + + subscriptions -
    +
    Signature: string list -> Subscription list
    diff --git a/reference/fsharp-control-reactive-testing-testnotification-1.html b/reference/fsharp-control-reactive-testing-testnotification-1.html index 8e1b32f..d2c9e4c 100644 --- a/reference/fsharp-control-reactive-testing-testnotification-1.html +++ b/reference/fsharp-control-reactive-testing-testnotification-1.html @@ -5,7 +5,7 @@ TestNotification<'a> - FSharp.Control.Reactive - + @@ -33,8 +33,6 @@

    FSharp.Control.R
    - -

    TestNotification<'a>

    @@ -52,11 +50,10 @@

    Instance members

    - - - Time + + x.Time -
    +
    Signature: int64
    @@ -66,11 +63,10 @@

    Instance members

    - - - Value + + x.Value -
    +
    Signature: Notification<'a>
    diff --git a/reference/fsharp-control-reactive-testing-testnotificationmodule.html b/reference/fsharp-control-reactive-testing-testnotificationmodule.html index 5c7360d..084e92e 100644 --- a/reference/fsharp-control-reactive-testing-testnotificationmodule.html +++ b/reference/fsharp-control-reactive-testing-testnotificationmodule.html @@ -5,7 +5,7 @@ TestNotification - FSharp.Control.Reactive - + @@ -33,8 +33,6 @@

    FSharp.Control.R
    - -

    TestNotification

    Namespace: FSharp.Control.Reactive.Testing
    @@ -59,11 +57,10 @@

    Functions and values

    - - - errors arg1 + + errors(arg1) -
    +
    Signature: TestNotifications<'b> -> exn list
    Type parameters: 'b
    @@ -79,13 +76,12 @@

    Functions and values

    - - + filter f arg2 -
    - Signature: f:(TestNotification<'?9164> -> bool) -> TestNotifications<'?9164> -> TestNotifications<'?9164>
    - Type parameters: '?9164
    +
    + Signature: f:(TestNotification<'?9125> -> bool) -> TestNotifications<'?9125> -> TestNotifications<'?9125>
    + Type parameters: '?9125
    @@ -99,13 +95,12 @@

    Functions and values

    - - - isError _arg1 + + isError(_arg1) -
    - Signature: _arg1:TestNotification<'?9158> -> bool
    - Type parameters: '?9158
    +
    + Signature: _arg1:TestNotification<'?9119> -> bool
    + Type parameters: '?9119
    @@ -119,13 +114,12 @@

    Functions and values

    - - - isNext _arg1 + + isNext(_arg1) -
    - Signature: _arg1:TestNotification<'?9156> -> bool
    - Type parameters: '?9156
    +
    + Signature: _arg1:TestNotification<'?9117> -> bool
    + Type parameters: '?9117
    @@ -139,13 +133,12 @@

    Functions and values

    - - - mapErrors f + + mapErrors(f) -
    - Signature: f:(exn -> '?9183) -> TestNotifications<'?9184> -> '?9183 list
    - Type parameters: '?9183, '?9184
    +
    + Signature: f:(exn -> '?9144) -> TestNotifications<'?9145> -> '?9144 list
    + Type parameters: '?9144, '?9145
    @@ -159,13 +152,12 @@

    Functions and values

    - - - mapNexts f + + mapNexts(f) -
    - Signature: f:('?9178 -> '?9179) -> TestNotifications<'?9178> -> '?9179 list
    - Type parameters: '?9178, '?9179
    +
    + Signature: f:('?9139 -> '?9140) -> TestNotifications<'?9139> -> '?9140 list
    + Type parameters: '?9139, '?9140
    @@ -179,11 +171,10 @@

    Functions and values

    - - - nexts arg1 + + nexts(arg1) -
    +
    Signature: TestNotifications<'b> -> 'b list
    Type parameters: 'b
    @@ -199,11 +190,10 @@

    Functions and values

    - - - onCompleted t + + onCompleted(t) -
    +
    Signature: t:int64 -> Recorded<Notification<'b>>
    Type parameters: 'b
    @@ -219,11 +209,10 @@

    Functions and values

    - - + onError t ex -
    +
    Signature: t:int64 -> ex:exn -> Recorded<Notification<'b>>
    Type parameters: 'b
    @@ -239,13 +228,12 @@

    Functions and values

    - - - onErrors ms + + onErrors(ms) -
    - Signature: ms:TestNotifications<'?9168> -> TestNotifications<'?9168>
    - Type parameters: '?9168
    +
    + Signature: ms:TestNotifications<'?9129> -> TestNotifications<'?9129>
    + Type parameters: '?9129
    @@ -259,11 +247,10 @@

    Functions and values

    - - + onNext t x -
    +
    Signature: t:int64 -> x:'a -> Recorded<Notification<'a>>
    Type parameters: 'a
    @@ -279,13 +266,12 @@

    Functions and values

    - - - onNexts ms + + onNexts(ms) -
    - Signature: ms:TestNotifications<'?9166> -> TestNotifications<'?9166>
    - Type parameters: '?9166
    +
    + Signature: ms:TestNotifications<'?9127> -> TestNotifications<'?9127>
    + Type parameters: '?9127
    @@ -299,13 +285,12 @@

    Functions and values

    - - - toOption _arg1 + + toOption(_arg1) -
    - Signature: _arg1:TestNotification<'?9160> -> '?9160 option
    - Type parameters: '?9160
    +
    + Signature: _arg1:TestNotification<'?9121> -> '?9121 option
    + Type parameters: '?9121
    @@ -320,13 +305,12 @@

    Functions and values

    - - - toResult _arg1 + + toResult(_arg1) -
    - Signature: _arg1:TestNotification<'?9162> -> Result<'?9162,exn>
    - Type parameters: '?9162
    +
    + Signature: _arg1:TestNotification<'?9123> -> Result<'?9123,exn>
    + Type parameters: '?9123
    @@ -341,13 +325,12 @@

    Functions and values

    - - - unwrap arg1 + + unwrap(arg1) -
    - Signature: TestNotifications<'?9152> -> TestNotification<'?9152> list
    - Type parameters: '?9152
    +
    + Signature: TestNotifications<'?9113> -> TestNotification<'?9113> list
    + Type parameters: '?9113
    @@ -361,13 +344,12 @@

    Functions and values

    - - - wrap arg0 + + wrap(arg0) -
    - Signature: arg0:TestNotification<'?9150> list -> TestNotifications<'?9150>
    - Type parameters: '?9150
    +
    + Signature: arg0:TestNotification<'?9111> list -> TestNotifications<'?9111>
    + Type parameters: '?9111
    @@ -387,11 +369,10 @@

    Active patterns

    - - - ( |Next|Error|Completed| ) x + + ( |Next|Error|Completed| )(x) -
    +
    Signature: x:TestNotification<'a> -> Choice<'a,exn,unit>
    Type parameters: 'a
    diff --git a/reference/fsharp-control-reactive-testing-testnotifications-1.html b/reference/fsharp-control-reactive-testing-testnotifications-1.html index d4c829b..eb1a567 100644 --- a/reference/fsharp-control-reactive-testing-testnotifications-1.html +++ b/reference/fsharp-control-reactive-testing-testnotifications-1.html @@ -5,7 +5,7 @@ TestNotifications<'a> - FSharp.Control.Reactive - + @@ -33,8 +33,6 @@

    FSharp.Control.R
    - -

    TestNotifications<'a>

    @@ -50,11 +48,10 @@

    Union Cases

    - - + TestNotifications(...) -
    +
    Signature: TestNotification<'a> list
    diff --git a/reference/fsharp-control-reactive-testing-testobservable.html b/reference/fsharp-control-reactive-testing-testobservable.html index 8a17b3f..3da2f14 100644 --- a/reference/fsharp-control-reactive-testing-testobservable.html +++ b/reference/fsharp-control-reactive-testing-testobservable.html @@ -5,7 +5,7 @@ TestObservable - FSharp.Control.Reactive - + @@ -33,8 +33,6 @@

    FSharp.Control.R
    - -

    TestObservable

    Namespace: FSharp.Control.Reactive.Testing
    @@ -52,11 +50,10 @@

    Functions and values

    - - - subscriptions o + + subscriptions(o) -
    +
    Signature: o:ITestableObservable<'a> -> Subscription list
    Type parameters: 'a
    diff --git a/reference/fsharp-control-reactive-testing-testobservermodule.html b/reference/fsharp-control-reactive-testing-testobservermodule.html index 89ee11f..d89c064 100644 --- a/reference/fsharp-control-reactive-testing-testobservermodule.html +++ b/reference/fsharp-control-reactive-testing-testobservermodule.html @@ -5,7 +5,7 @@ TestObserver - FSharp.Control.Reactive - + @@ -33,8 +33,6 @@

    FSharp.Control.R
    - -

    TestObserver

    Namespace: FSharp.Control.Reactive.Testing
    @@ -59,11 +57,10 @@

    Functions and values

    - - - all o + + all(o) -
    +
    Signature: o:ITestableObserver<'a> -> TestNotifications<'a>
    Type parameters: 'a Attributes:
    @@ -87,11 +84,10 @@

    Functions and values

    - - - errors o + + errors(o) -
    +
    Signature: o:ITestableObserver<'a> -> exn list
    Type parameters: 'a
    @@ -107,11 +103,10 @@

    Functions and values

    - - - messages o + + messages(o) -
    +
    Signature: o:ITestableObserver<'a> -> TestNotifications<'a>
    Type parameters: 'a
    @@ -127,11 +122,10 @@

    Functions and values

    - - - nexts o + + nexts(o) -
    +
    Signature: o:ITestableObserver<'a> -> 'a list
    Type parameters: 'a
    diff --git a/reference/fsharp-control-reactive-testing-testschedulemodule.html b/reference/fsharp-control-reactive-testing-testschedulemodule.html index 9a4fa95..deadc49 100644 --- a/reference/fsharp-control-reactive-testing-testschedulemodule.html +++ b/reference/fsharp-control-reactive-testing-testschedulemodule.html @@ -5,7 +5,7 @@ TestSchedule - FSharp.Control.Reactive - + @@ -33,8 +33,6 @@

    FSharp.Control.R
    - -

    TestSchedule

    Namespace: FSharp.Control.Reactive.Testing
    @@ -59,11 +57,10 @@

    Functions and values

    - - + advanceBy s time -
    +
    Signature: s:TestScheduler -> time:int64 -> TestScheduler
    @@ -79,11 +76,10 @@

    Functions and values

    - - + advanceTo s time -
    +
    Signature: s:TestScheduler -> time:int64 -> TestScheduler
    @@ -99,11 +95,10 @@

    Functions and values

    - - + coldObservable s arg2 -
    +
    Signature: s:TestScheduler -> TestNotifications<'a> -> ITestableObservable<'a>
    Type parameters: 'a
    @@ -119,11 +114,10 @@

    Functions and values

    - - - createObserver s + + createObserver(s) -
    +
    Signature: s:TestScheduler -> ITestableObserver<'a>
    Type parameters: 'a
    @@ -139,11 +133,10 @@

    Functions and values

    - - + hotObservable s arg2 -
    +
    Signature: s:TestScheduler -> TestNotifications<'a> -> ITestableObservable<'a>
    Type parameters: 'a
    @@ -159,13 +152,12 @@

    Functions and values

    - - + schedule s state dueTime f -
    - Signature: s:TestScheduler -> state:'?9127 -> dueTime:DateTimeOffset -> f:(IScheduler -> '?9127 -> IDisposable) -> IDisposable
    - Type parameters: '?9127 +
    + Signature: s:TestScheduler -> state:'?9088 -> dueTime:DateTimeOffset -> f:(IScheduler -> '?9088 -> IDisposable) -> IDisposable
    + Type parameters: '?9088 Attributes:
    [<Obsolete("Use the 'Schedule' module for scheduling actions")>]
    @@ -187,11 +179,10 @@

    Functions and values

    - - - start s + + start(s) -
    +
    Signature: s:TestScheduler -> TestScheduler
    @@ -207,13 +198,12 @@

    Functions and values

    - - + startObservable s source -
    - Signature: s:TestScheduler -> source:IObservable<'?9130> -> ITestableObserver<'?9130>
    - Type parameters: '?9130
    +
    + Signature: s:TestScheduler -> source:IObservable<'?9091> -> ITestableObserver<'?9091>
    + Type parameters: '?9091
    @@ -227,13 +217,12 @@

    Functions and values

    - - + subscribeBeforeAfter sch source f -
    - Signature: sch:TestScheduler -> source:'?9136 -> f:('?9136 -> '?9138) -> ITestableObserver<'?9137> * ITestableObserver<'?9137>
    - Type parameters: '?9136, '?9137, '?9138
    +
    + Signature: sch:TestScheduler -> source:'?9097 -> f:('?9097 -> '?9099) -> ITestableObserver<'?9098> * ITestableObserver<'?9098>
    + Type parameters: '?9097, '?9098, '?9099
    @@ -247,13 +236,12 @@

    Functions and values

    - - + subscribeTestObserver sch source -
    - Signature: sch:TestScheduler -> source:IObservable<'?9132> -> ITestableObserver<'?9132>
    - Type parameters: '?9132
    +
    + Signature: sch:TestScheduler -> source:IObservable<'?9093> -> ITestableObserver<'?9093>
    + Type parameters: '?9093
    @@ -267,11 +255,10 @@

    Functions and values

    - - + subscribeTestObserverStart sch source -
    +
    Signature: sch:TestScheduler -> source:IObservable<'a> -> ITestableObserver<'a>
    Type parameters: 'a
    @@ -287,13 +274,12 @@

    Functions and values

    - - - usage f + + usage(f) -
    - Signature: f:(TestScheduler -> '?9117) -> '?9117
    - Type parameters: '?9117
    +
    + Signature: f:(TestScheduler -> '?9078) -> '?9078
    + Type parameters: '?9078
    diff --git a/reference/fsharp-control-reactive-waithandle.html b/reference/fsharp-control-reactive-waithandle.html index 6ee7c73..a751dba 100644 --- a/reference/fsharp-control-reactive-waithandle.html +++ b/reference/fsharp-control-reactive-waithandle.html @@ -5,7 +5,7 @@ WaitHandle - FSharp.Control.Reactive - + @@ -33,8 +33,6 @@

    FSharp.Control.R
    - -

    WaitHandle

    @@ -50,11 +48,10 @@

    Static members

    - - - Signal + + WaitHandle.Signal -
    +
    Signature: ManualResetEvent
    diff --git a/reference/fsharp-control-reactive-waithandlemodule.html b/reference/fsharp-control-reactive-waithandlemodule.html index eee91fb..8689029 100644 --- a/reference/fsharp-control-reactive-waithandlemodule.html +++ b/reference/fsharp-control-reactive-waithandlemodule.html @@ -5,7 +5,7 @@ WaitHandle - FSharp.Control.Reactive - + @@ -33,8 +33,6 @@

    FSharp.Control.R
    - -

    WaitHandle

    Namespace: FSharp.Control.Reactive
    @@ -57,11 +55,10 @@

    Functions and values

    - - - flag s + + flag(s) -
    +
    Signature: s:EventWaitHandle -> unit
    @@ -77,11 +74,10 @@

    Functions and values

    - - - wait s + + wait(s) -
    +
    Signature: s:WaitHandle -> unit
    diff --git a/reference/index.html b/reference/index.html index 7e86735..c3b60f4 100644 --- a/reference/index.html +++ b/reference/index.html @@ -5,7 +5,7 @@ Namespaces - FSharp.Control.Reactive - + @@ -32,10 +32,8 @@

    FSharp.Control.R
    -

    FSharp.Control.Reactive

    -

    FSharp.Control.Reactive Namespace

    diff --git a/tutorial.html b/tutorial.html index 93027e2..51ba33c 100644 --- a/tutorial.html +++ b/tutorial.html @@ -6,7 +6,7 @@ - + @@ -32,8 +32,7 @@

    FSharp.Control.R
    - -

    Getting Started

    +

    Getting Started

    The easiest way to get started using FSharp.Control.Reactive is to take a look at the tests. In general, you can consider the Observable module as providing a set of extensions to the built-in Observable module.

    Observable Module

    As a first, simple example, the built-in module does not include a zip operator, but FSharp.Control.Reactive fills in this gap:

    @@ -202,7 +201,7 @@

    Reactive
    val sch : Reactive.Testing.TestScheduler
    val s : System.Reactive.Subjects.Subject<int>
    Multiple items
    module Subject

    from FSharp.Control.Reactive

    --------------------
    type Subject<'a> =
      private new : unit -> Subject<'a>
      static member behavior : x:'a -> BehaviorSubject<'a>
      static member async : AsyncSubject<'a>
      static member broadcast : Subject<'a>
      static member replay : ReplaySubject<'a>
    -
    property Subject.broadcast: System.Reactive.Subjects.Subject<'a>
    +
    property Subject.broadcast: System.Reactive.Subjects.Subject<'a> with get
    val observer : Reactive.Testing.ITestableObserver<int>
    val subscribeTestObserver : sch:Reactive.Testing.TestScheduler -> source:System.IObservable<'a> -> Reactive.Testing.ITestableObserver<'a>
    val onNexts : xs:seq<'a> -> s:'b -> 'b (requires 'b :> System.Reactive.Subjects.SubjectBase<'a>)
    From d7a358419096ba34bb6e21a6eabbc0a91854c287 Mon Sep 17 00:00:00 2001 From: Ryan Riley Date: Fri, 22 May 2020 00:09:13 -0500 Subject: [PATCH 15/18] Update generated documentation for version 4.3.0 --- index.html | 10 +++++----- introduction.html | 10 +++++----- ...trol-reactive-buildersmodule-observablebuilder.html | 10 +++++----- ...control-reactive-buildersmodule-rxquerybuilder.html | 10 +++++----- reference/fsharp-control-reactive-buildersmodule.html | 10 +++++----- reference/fsharp-control-reactive-disposable.html | 10 +++++----- .../fsharp-control-reactive-disposablemodule.html | 10 +++++----- reference/fsharp-control-reactive-disposables.html | 10 +++++----- .../fsharp-control-reactive-observablemodule.html | 10 +++++----- reference/fsharp-control-reactive-schedule.html | 10 +++++----- .../fsharp-control-reactive-scheduler-scheduler.html | 10 +++++----- reference/fsharp-control-reactive-scheduler.html | 10 +++++----- reference/fsharp-control-reactive-subject-1.html | 10 +++++----- reference/fsharp-control-reactive-subjectmodule.html | 10 +++++----- ...p-control-reactive-testing-gentestnotification.html | 10 +++++----- reference/fsharp-control-reactive-testing-marbles.html | 10 +++++----- ...rp-control-reactive-testing-testnotification-1.html | 10 +++++----- ...ontrol-reactive-testing-testnotificationmodule.html | 10 +++++----- ...p-control-reactive-testing-testnotifications-1.html | 10 +++++----- ...fsharp-control-reactive-testing-testobservable.html | 10 +++++----- ...rp-control-reactive-testing-testobservermodule.html | 10 +++++----- ...rp-control-reactive-testing-testschedulemodule.html | 10 +++++----- reference/fsharp-control-reactive-waithandle.html | 10 +++++----- .../fsharp-control-reactive-waithandlemodule.html | 10 +++++----- reference/index.html | 10 +++++----- tutorial.html | 10 +++++----- 26 files changed, 130 insertions(+), 130 deletions(-) diff --git a/index.html b/index.html index 174bb69..ec61d98 100644 --- a/index.html +++ b/index.html @@ -25,7 +25,7 @@
    @@ -65,9 +65,9 @@

    Home page
  • Get Library via NuGet
  • -
  • Source Code on GitHub
  • -
  • License
  • -
  • Release Notes
  • +
  • Source Code on GitHub
  • +
  • License
  • +
  • Release Notes
  • Introduction
  • @@ -79,7 +79,7 @@

    Fork me on GitHub + Fork me on GitHub diff --git a/introduction.html b/introduction.html index 28dafb4..5ed8f0f 100644 --- a/introduction.html +++ b/introduction.html @@ -25,7 +25,7 @@ @@ -211,9 +211,9 @@

    Home page
  • Get Library via NuGet
  • -
  • Source Code on GitHub
  • -
  • License
  • -
  • Release Notes
  • +
  • Source Code on GitHub
  • +
  • License
  • +
  • Release Notes
  • Introduction
  • @@ -225,7 +225,7 @@

    Fork me on GitHub + Fork me on GitHub diff --git a/reference/fsharp-control-reactive-buildersmodule-observablebuilder.html b/reference/fsharp-control-reactive-buildersmodule-observablebuilder.html index 6b396eb..a37d93b 100644 --- a/reference/fsharp-control-reactive-buildersmodule-observablebuilder.html +++ b/reference/fsharp-control-reactive-buildersmodule-observablebuilder.html @@ -24,7 +24,7 @@ @@ -323,9 +323,9 @@

    Instance members

  • Home page
  • Get Library via NuGet
  • -
  • Source Code on GitHub
  • -
  • License
  • -
  • Release Notes
  • +
  • Source Code on GitHub
  • +
  • License
  • +
  • Release Notes
  • Introduction
  • @@ -337,7 +337,7 @@

    Instance members

    - Fork me on GitHub + Fork me on GitHub diff --git a/reference/fsharp-control-reactive-buildersmodule-rxquerybuilder.html b/reference/fsharp-control-reactive-buildersmodule-rxquerybuilder.html index a724ac4..b0eb0c6 100644 --- a/reference/fsharp-control-reactive-buildersmodule-rxquerybuilder.html +++ b/reference/fsharp-control-reactive-buildersmodule-rxquerybuilder.html @@ -24,7 +24,7 @@ @@ -705,9 +705,9 @@

    Instance members

  • Home page
  • Get Library via NuGet
  • -
  • Source Code on GitHub
  • -
  • License
  • -
  • Release Notes
  • +
  • Source Code on GitHub
  • +
  • License
  • +
  • Release Notes
  • Introduction
  • @@ -719,7 +719,7 @@

    Instance members

    - Fork me on GitHub + Fork me on GitHub diff --git a/reference/fsharp-control-reactive-buildersmodule.html b/reference/fsharp-control-reactive-buildersmodule.html index 2099be2..b1a5bb2 100644 --- a/reference/fsharp-control-reactive-buildersmodule.html +++ b/reference/fsharp-control-reactive-buildersmodule.html @@ -24,7 +24,7 @@ @@ -130,9 +130,9 @@

    Functions and values

  • Home page
  • Get Library via NuGet
  • -
  • Source Code on GitHub
  • -
  • License
  • -
  • Release Notes
  • +
  • Source Code on GitHub
  • +
  • License
  • +
  • Release Notes
  • Introduction
  • @@ -144,7 +144,7 @@

    Functions and values

    - Fork me on GitHub + Fork me on GitHub diff --git a/reference/fsharp-control-reactive-disposable.html b/reference/fsharp-control-reactive-disposable.html index 28116a3..05f3772 100644 --- a/reference/fsharp-control-reactive-disposable.html +++ b/reference/fsharp-control-reactive-disposable.html @@ -24,7 +24,7 @@ @@ -124,9 +124,9 @@

    Static members

  • Home page
  • Get Library via NuGet
  • -
  • Source Code on GitHub
  • -
  • License
  • -
  • Release Notes
  • +
  • Source Code on GitHub
  • +
  • License
  • +
  • Release Notes
  • Introduction
  • @@ -138,7 +138,7 @@

    Static members

    - Fork me on GitHub + Fork me on GitHub diff --git a/reference/fsharp-control-reactive-disposablemodule.html b/reference/fsharp-control-reactive-disposablemodule.html index 52b5086..dda3640 100644 --- a/reference/fsharp-control-reactive-disposablemodule.html +++ b/reference/fsharp-control-reactive-disposablemodule.html @@ -24,7 +24,7 @@ @@ -200,9 +200,9 @@

    Functions and values

  • Home page
  • Get Library via NuGet
  • -
  • Source Code on GitHub
  • -
  • License
  • -
  • Release Notes
  • +
  • Source Code on GitHub
  • +
  • License
  • +
  • Release Notes
  • Introduction
  • @@ -214,7 +214,7 @@

    Functions and values

    - Fork me on GitHub + Fork me on GitHub diff --git a/reference/fsharp-control-reactive-disposables.html b/reference/fsharp-control-reactive-disposables.html index 73996a4..79bcbf8 100644 --- a/reference/fsharp-control-reactive-disposables.html +++ b/reference/fsharp-control-reactive-disposables.html @@ -24,7 +24,7 @@ @@ -78,9 +78,9 @@

    Functions and values

  • Home page
  • Get Library via NuGet
  • -
  • Source Code on GitHub
  • -
  • License
  • -
  • Release Notes
  • +
  • Source Code on GitHub
  • +
  • License
  • +
  • Release Notes
  • Introduction
  • @@ -92,7 +92,7 @@

    Functions and values

    - Fork me on GitHub + Fork me on GitHub diff --git a/reference/fsharp-control-reactive-observablemodule.html b/reference/fsharp-control-reactive-observablemodule.html index 83744c3..61555bc 100644 --- a/reference/fsharp-control-reactive-observablemodule.html +++ b/reference/fsharp-control-reactive-observablemodule.html @@ -24,7 +24,7 @@ @@ -7320,9 +7320,9 @@

    Type extensions

  • Home page
  • Get Library via NuGet
  • -
  • Source Code on GitHub
  • -
  • License
  • -
  • Release Notes
  • +
  • Source Code on GitHub
  • +
  • License
  • +
  • Release Notes
  • Introduction
  • @@ -7334,7 +7334,7 @@

    Type extensions

    - Fork me on GitHub + Fork me on GitHub diff --git a/reference/fsharp-control-reactive-schedule.html b/reference/fsharp-control-reactive-schedule.html index fc1ec73..8e80646 100644 --- a/reference/fsharp-control-reactive-schedule.html +++ b/reference/fsharp-control-reactive-schedule.html @@ -24,7 +24,7 @@ @@ -832,9 +832,9 @@

    Functions and values

  • Home page
  • Get Library via NuGet
  • -
  • Source Code on GitHub
  • -
  • License
  • -
  • Release Notes
  • +
  • Source Code on GitHub
  • +
  • License
  • +
  • Release Notes
  • Introduction
  • @@ -846,7 +846,7 @@

    Functions and values

    - Fork me on GitHub + Fork me on GitHub diff --git a/reference/fsharp-control-reactive-scheduler-scheduler.html b/reference/fsharp-control-reactive-scheduler-scheduler.html index ad1a641..3c0315d 100644 --- a/reference/fsharp-control-reactive-scheduler-scheduler.html +++ b/reference/fsharp-control-reactive-scheduler-scheduler.html @@ -24,7 +24,7 @@ @@ -124,9 +124,9 @@

    Static members

  • Home page
  • Get Library via NuGet
  • -
  • Source Code on GitHub
  • -
  • License
  • -
  • Release Notes
  • +
  • Source Code on GitHub
  • +
  • License
  • +
  • Release Notes
  • Introduction
  • @@ -138,7 +138,7 @@

    Static members

    - Fork me on GitHub + Fork me on GitHub diff --git a/reference/fsharp-control-reactive-scheduler.html b/reference/fsharp-control-reactive-scheduler.html index 75ae17f..8294a0b 100644 --- a/reference/fsharp-control-reactive-scheduler.html +++ b/reference/fsharp-control-reactive-scheduler.html @@ -24,7 +24,7 @@ @@ -97,9 +97,9 @@

    Functions and values

  • Home page
  • Get Library via NuGet
  • -
  • Source Code on GitHub
  • -
  • License
  • -
  • Release Notes
  • +
  • Source Code on GitHub
  • +
  • License
  • +
  • Release Notes
  • Introduction
  • @@ -111,7 +111,7 @@

    Functions and values

    - Fork me on GitHub + Fork me on GitHub diff --git a/reference/fsharp-control-reactive-subject-1.html b/reference/fsharp-control-reactive-subject-1.html index c39e674..18bbf82 100644 --- a/reference/fsharp-control-reactive-subject-1.html +++ b/reference/fsharp-control-reactive-subject-1.html @@ -24,7 +24,7 @@ @@ -140,9 +140,9 @@

    Static members

  • Home page
  • Get Library via NuGet
  • -
  • Source Code on GitHub
  • -
  • License
  • -
  • Release Notes
  • +
  • Source Code on GitHub
  • +
  • License
  • +
  • Release Notes
  • Introduction
  • @@ -154,7 +154,7 @@

    Static members

    - Fork me on GitHub + Fork me on GitHub diff --git a/reference/fsharp-control-reactive-subjectmodule.html b/reference/fsharp-control-reactive-subjectmodule.html index 2176e27..f865e91 100644 --- a/reference/fsharp-control-reactive-subjectmodule.html +++ b/reference/fsharp-control-reactive-subjectmodule.html @@ -24,7 +24,7 @@ @@ -142,9 +142,9 @@

    Functions and values

  • Home page
  • Get Library via NuGet
  • -
  • Source Code on GitHub
  • -
  • License
  • -
  • Release Notes
  • +
  • Source Code on GitHub
  • +
  • License
  • +
  • Release Notes
  • Introduction
  • @@ -156,7 +156,7 @@

    Functions and values

    - Fork me on GitHub + Fork me on GitHub diff --git a/reference/fsharp-control-reactive-testing-gentestnotification.html b/reference/fsharp-control-reactive-testing-gentestnotification.html index a085ff0..6988170 100644 --- a/reference/fsharp-control-reactive-testing-gentestnotification.html +++ b/reference/fsharp-control-reactive-testing-gentestnotification.html @@ -24,7 +24,7 @@ @@ -74,9 +74,9 @@

    Static members

  • Home page
  • Get Library via NuGet
  • -
  • Source Code on GitHub
  • -
  • License
  • -
  • Release Notes
  • +
  • Source Code on GitHub
  • +
  • License
  • +
  • Release Notes
  • Introduction
  • @@ -88,7 +88,7 @@

    Static members

    - Fork me on GitHub + Fork me on GitHub diff --git a/reference/fsharp-control-reactive-testing-marbles.html b/reference/fsharp-control-reactive-testing-marbles.html index 1ade1ff..53040ce 100644 --- a/reference/fsharp-control-reactive-testing-marbles.html +++ b/reference/fsharp-control-reactive-testing-marbles.html @@ -24,7 +24,7 @@ @@ -225,9 +225,9 @@

    Parameters

  • Home page
  • Get Library via NuGet
  • -
  • Source Code on GitHub
  • -
  • License
  • -
  • Release Notes
  • +
  • Source Code on GitHub
  • +
  • License
  • +
  • Release Notes
  • Introduction
  • @@ -239,7 +239,7 @@

    Parameters

    - Fork me on GitHub + Fork me on GitHub diff --git a/reference/fsharp-control-reactive-testing-testnotification-1.html b/reference/fsharp-control-reactive-testing-testnotification-1.html index d2c9e4c..c38479e 100644 --- a/reference/fsharp-control-reactive-testing-testnotification-1.html +++ b/reference/fsharp-control-reactive-testing-testnotification-1.html @@ -24,7 +24,7 @@ @@ -85,9 +85,9 @@

    Instance members

  • Home page
  • Get Library via NuGet
  • -
  • Source Code on GitHub
  • -
  • License
  • -
  • Release Notes
  • +
  • Source Code on GitHub
  • +
  • License
  • +
  • Release Notes
  • Introduction
  • @@ -99,7 +99,7 @@

    Instance members

    - Fork me on GitHub + Fork me on GitHub diff --git a/reference/fsharp-control-reactive-testing-testnotificationmodule.html b/reference/fsharp-control-reactive-testing-testnotificationmodule.html index 084e92e..9d97acb 100644 --- a/reference/fsharp-control-reactive-testing-testnotificationmodule.html +++ b/reference/fsharp-control-reactive-testing-testnotificationmodule.html @@ -24,7 +24,7 @@ @@ -398,9 +398,9 @@

    Active patterns

  • Home page
  • Get Library via NuGet
  • -
  • Source Code on GitHub
  • -
  • License
  • -
  • Release Notes
  • +
  • Source Code on GitHub
  • +
  • License
  • +
  • Release Notes
  • Introduction
  • @@ -412,7 +412,7 @@

    Active patterns

    - Fork me on GitHub + Fork me on GitHub diff --git a/reference/fsharp-control-reactive-testing-testnotifications-1.html b/reference/fsharp-control-reactive-testing-testnotifications-1.html index eb1a567..28024e6 100644 --- a/reference/fsharp-control-reactive-testing-testnotifications-1.html +++ b/reference/fsharp-control-reactive-testing-testnotifications-1.html @@ -24,7 +24,7 @@ @@ -74,9 +74,9 @@

    Union Cases

  • Home page
  • Get Library via NuGet
  • -
  • Source Code on GitHub
  • -
  • License
  • -
  • Release Notes
  • +
  • Source Code on GitHub
  • +
  • License
  • +
  • Release Notes
  • Introduction
  • @@ -88,7 +88,7 @@

    Union Cases

    - Fork me on GitHub + Fork me on GitHub diff --git a/reference/fsharp-control-reactive-testing-testobservable.html b/reference/fsharp-control-reactive-testing-testobservable.html index 3da2f14..afd5b69 100644 --- a/reference/fsharp-control-reactive-testing-testobservable.html +++ b/reference/fsharp-control-reactive-testing-testobservable.html @@ -24,7 +24,7 @@ @@ -78,9 +78,9 @@

    Functions and values

  • Home page
  • Get Library via NuGet
  • -
  • Source Code on GitHub
  • -
  • License
  • -
  • Release Notes
  • +
  • Source Code on GitHub
  • +
  • License
  • +
  • Release Notes
  • Introduction
  • @@ -92,7 +92,7 @@

    Functions and values

    - Fork me on GitHub + Fork me on GitHub diff --git a/reference/fsharp-control-reactive-testing-testobservermodule.html b/reference/fsharp-control-reactive-testing-testobservermodule.html index d89c064..ff4e9d9 100644 --- a/reference/fsharp-control-reactive-testing-testobservermodule.html +++ b/reference/fsharp-control-reactive-testing-testobservermodule.html @@ -24,7 +24,7 @@ @@ -150,9 +150,9 @@

    Functions and values

  • Home page
  • Get Library via NuGet
  • -
  • Source Code on GitHub
  • -
  • License
  • -
  • Release Notes
  • +
  • Source Code on GitHub
  • +
  • License
  • +
  • Release Notes
  • Introduction
  • @@ -164,7 +164,7 @@

    Functions and values

    - Fork me on GitHub + Fork me on GitHub diff --git a/reference/fsharp-control-reactive-testing-testschedulemodule.html b/reference/fsharp-control-reactive-testing-testschedulemodule.html index deadc49..75bd634 100644 --- a/reference/fsharp-control-reactive-testing-testschedulemodule.html +++ b/reference/fsharp-control-reactive-testing-testschedulemodule.html @@ -24,7 +24,7 @@ @@ -302,9 +302,9 @@

    Functions and values

  • Home page
  • Get Library via NuGet
  • -
  • Source Code on GitHub
  • -
  • License
  • -
  • Release Notes
  • +
  • Source Code on GitHub
  • +
  • License
  • +
  • Release Notes
  • Introduction
  • @@ -316,7 +316,7 @@

    Functions and values

    - Fork me on GitHub + Fork me on GitHub diff --git a/reference/fsharp-control-reactive-waithandle.html b/reference/fsharp-control-reactive-waithandle.html index a751dba..596e679 100644 --- a/reference/fsharp-control-reactive-waithandle.html +++ b/reference/fsharp-control-reactive-waithandle.html @@ -24,7 +24,7 @@ @@ -77,9 +77,9 @@

    Static members

  • Home page
  • Get Library via NuGet
  • -
  • Source Code on GitHub
  • -
  • License
  • -
  • Release Notes
  • +
  • Source Code on GitHub
  • +
  • License
  • +
  • Release Notes
  • Introduction
  • @@ -91,7 +91,7 @@

    Static members

    - Fork me on GitHub + Fork me on GitHub diff --git a/reference/fsharp-control-reactive-waithandlemodule.html b/reference/fsharp-control-reactive-waithandlemodule.html index 8689029..094ac86 100644 --- a/reference/fsharp-control-reactive-waithandlemodule.html +++ b/reference/fsharp-control-reactive-waithandlemodule.html @@ -24,7 +24,7 @@ @@ -102,9 +102,9 @@

    Functions and values

  • Home page
  • Get Library via NuGet
  • -
  • Source Code on GitHub
  • -
  • License
  • -
  • Release Notes
  • +
  • Source Code on GitHub
  • +
  • License
  • +
  • Release Notes
  • Introduction
  • @@ -116,7 +116,7 @@

    Functions and values

    - Fork me on GitHub + Fork me on GitHub diff --git a/reference/index.html b/reference/index.html index c3b60f4..dc7917c 100644 --- a/reference/index.html +++ b/reference/index.html @@ -24,7 +24,7 @@ @@ -249,9 +249,9 @@

    FSharp.Control.Reactive.Testing Namespace

  • Home page
  • Get Library via NuGet
  • -
  • Source Code on GitHub
  • -
  • License
  • -
  • Release Notes
  • +
  • Source Code on GitHub
  • +
  • License
  • +
  • Release Notes
  • Introduction
  • @@ -263,7 +263,7 @@

    FSharp.Control.Reactive.Testing Namespace

    - Fork me on GitHub + Fork me on GitHub diff --git a/tutorial.html b/tutorial.html index 51ba33c..5afcc97 100644 --- a/tutorial.html +++ b/tutorial.html @@ -25,7 +25,7 @@ @@ -228,9 +228,9 @@

    Reactive
  • Home page
  • Get Library via NuGet
  • -
  • Source Code on GitHub
  • -
  • License
  • -
  • Release Notes
  • +
  • Source Code on GitHub
  • +
  • License
  • +
  • Release Notes
  • Introduction
  • @@ -242,7 +242,7 @@

    Reactive - Fork me on GitHub + Fork me on GitHub From a5012695c88c5650a9d897863ea1572c490b997a Mon Sep 17 00:00:00 2001 From: Ryan Riley Date: Fri, 22 May 2020 00:10:04 -0500 Subject: [PATCH 16/18] Update generated documentation for version 4.3.0 --- index.html | 10 +++++----- introduction.html | 10 +++++----- ...trol-reactive-buildersmodule-observablebuilder.html | 10 +++++----- ...control-reactive-buildersmodule-rxquerybuilder.html | 10 +++++----- reference/fsharp-control-reactive-buildersmodule.html | 10 +++++----- reference/fsharp-control-reactive-disposable.html | 10 +++++----- .../fsharp-control-reactive-disposablemodule.html | 10 +++++----- reference/fsharp-control-reactive-disposables.html | 10 +++++----- .../fsharp-control-reactive-observablemodule.html | 10 +++++----- reference/fsharp-control-reactive-schedule.html | 10 +++++----- .../fsharp-control-reactive-scheduler-scheduler.html | 10 +++++----- reference/fsharp-control-reactive-scheduler.html | 10 +++++----- reference/fsharp-control-reactive-subject-1.html | 10 +++++----- reference/fsharp-control-reactive-subjectmodule.html | 10 +++++----- ...p-control-reactive-testing-gentestnotification.html | 10 +++++----- reference/fsharp-control-reactive-testing-marbles.html | 10 +++++----- ...rp-control-reactive-testing-testnotification-1.html | 10 +++++----- ...ontrol-reactive-testing-testnotificationmodule.html | 10 +++++----- ...p-control-reactive-testing-testnotifications-1.html | 10 +++++----- ...fsharp-control-reactive-testing-testobservable.html | 10 +++++----- ...rp-control-reactive-testing-testobservermodule.html | 10 +++++----- ...rp-control-reactive-testing-testschedulemodule.html | 10 +++++----- reference/fsharp-control-reactive-waithandle.html | 10 +++++----- .../fsharp-control-reactive-waithandlemodule.html | 10 +++++----- reference/index.html | 10 +++++----- tutorial.html | 10 +++++----- 26 files changed, 130 insertions(+), 130 deletions(-) diff --git a/index.html b/index.html index ec61d98..187b5e7 100644 --- a/index.html +++ b/index.html @@ -25,7 +25,7 @@ @@ -65,9 +65,9 @@

    Home page
  • Get Library via NuGet
  • -
  • Source Code on GitHub
  • -
  • License
  • -
  • Release Notes
  • +
  • Source Code on GitHub
  • +
  • License
  • +
  • Release Notes
  • Introduction
  • @@ -79,7 +79,7 @@

    Fork me on GitHub + Fork me on GitHub diff --git a/introduction.html b/introduction.html index 5ed8f0f..2899948 100644 --- a/introduction.html +++ b/introduction.html @@ -25,7 +25,7 @@ @@ -211,9 +211,9 @@

    Home page
  • Get Library via NuGet
  • -
  • Source Code on GitHub
  • -
  • License
  • -
  • Release Notes
  • +
  • Source Code on GitHub
  • +
  • License
  • +
  • Release Notes
  • Introduction
  • @@ -225,7 +225,7 @@

    Fork me on GitHub + Fork me on GitHub diff --git a/reference/fsharp-control-reactive-buildersmodule-observablebuilder.html b/reference/fsharp-control-reactive-buildersmodule-observablebuilder.html index a37d93b..9b00a2e 100644 --- a/reference/fsharp-control-reactive-buildersmodule-observablebuilder.html +++ b/reference/fsharp-control-reactive-buildersmodule-observablebuilder.html @@ -24,7 +24,7 @@ @@ -323,9 +323,9 @@

    Instance members

  • Home page
  • Get Library via NuGet
  • -
  • Source Code on GitHub
  • -
  • License
  • -
  • Release Notes
  • +
  • Source Code on GitHub
  • +
  • License
  • +
  • Release Notes
  • Introduction
  • @@ -337,7 +337,7 @@

    Instance members

    - Fork me on GitHub + Fork me on GitHub diff --git a/reference/fsharp-control-reactive-buildersmodule-rxquerybuilder.html b/reference/fsharp-control-reactive-buildersmodule-rxquerybuilder.html index b0eb0c6..c188d37 100644 --- a/reference/fsharp-control-reactive-buildersmodule-rxquerybuilder.html +++ b/reference/fsharp-control-reactive-buildersmodule-rxquerybuilder.html @@ -24,7 +24,7 @@ @@ -705,9 +705,9 @@

    Instance members

  • Home page
  • Get Library via NuGet
  • -
  • Source Code on GitHub
  • -
  • License
  • -
  • Release Notes
  • +
  • Source Code on GitHub
  • +
  • License
  • +
  • Release Notes
  • Introduction
  • @@ -719,7 +719,7 @@

    Instance members

    - Fork me on GitHub + Fork me on GitHub diff --git a/reference/fsharp-control-reactive-buildersmodule.html b/reference/fsharp-control-reactive-buildersmodule.html index b1a5bb2..983cac5 100644 --- a/reference/fsharp-control-reactive-buildersmodule.html +++ b/reference/fsharp-control-reactive-buildersmodule.html @@ -24,7 +24,7 @@ @@ -130,9 +130,9 @@

    Functions and values

  • Home page
  • Get Library via NuGet
  • -
  • Source Code on GitHub
  • -
  • License
  • -
  • Release Notes
  • +
  • Source Code on GitHub
  • +
  • License
  • +
  • Release Notes
  • Introduction
  • @@ -144,7 +144,7 @@

    Functions and values

    - Fork me on GitHub + Fork me on GitHub diff --git a/reference/fsharp-control-reactive-disposable.html b/reference/fsharp-control-reactive-disposable.html index 05f3772..4be0742 100644 --- a/reference/fsharp-control-reactive-disposable.html +++ b/reference/fsharp-control-reactive-disposable.html @@ -24,7 +24,7 @@ @@ -124,9 +124,9 @@

    Static members

  • Home page
  • Get Library via NuGet
  • -
  • Source Code on GitHub
  • -
  • License
  • -
  • Release Notes
  • +
  • Source Code on GitHub
  • +
  • License
  • +
  • Release Notes
  • Introduction
  • @@ -138,7 +138,7 @@

    Static members

    - Fork me on GitHub + Fork me on GitHub diff --git a/reference/fsharp-control-reactive-disposablemodule.html b/reference/fsharp-control-reactive-disposablemodule.html index dda3640..9fad473 100644 --- a/reference/fsharp-control-reactive-disposablemodule.html +++ b/reference/fsharp-control-reactive-disposablemodule.html @@ -24,7 +24,7 @@ @@ -200,9 +200,9 @@

    Functions and values

  • Home page
  • Get Library via NuGet
  • -
  • Source Code on GitHub
  • -
  • License
  • -
  • Release Notes
  • +
  • Source Code on GitHub
  • +
  • License
  • +
  • Release Notes
  • Introduction
  • @@ -214,7 +214,7 @@

    Functions and values

    - Fork me on GitHub + Fork me on GitHub diff --git a/reference/fsharp-control-reactive-disposables.html b/reference/fsharp-control-reactive-disposables.html index 79bcbf8..d8c431b 100644 --- a/reference/fsharp-control-reactive-disposables.html +++ b/reference/fsharp-control-reactive-disposables.html @@ -24,7 +24,7 @@ @@ -78,9 +78,9 @@

    Functions and values

  • Home page
  • Get Library via NuGet
  • -
  • Source Code on GitHub
  • -
  • License
  • -
  • Release Notes
  • +
  • Source Code on GitHub
  • +
  • License
  • +
  • Release Notes
  • Introduction
  • @@ -92,7 +92,7 @@

    Functions and values

    - Fork me on GitHub + Fork me on GitHub diff --git a/reference/fsharp-control-reactive-observablemodule.html b/reference/fsharp-control-reactive-observablemodule.html index 61555bc..b0507b7 100644 --- a/reference/fsharp-control-reactive-observablemodule.html +++ b/reference/fsharp-control-reactive-observablemodule.html @@ -24,7 +24,7 @@ @@ -7320,9 +7320,9 @@

    Type extensions

  • Home page
  • Get Library via NuGet
  • -
  • Source Code on GitHub
  • -
  • License
  • -
  • Release Notes
  • +
  • Source Code on GitHub
  • +
  • License
  • +
  • Release Notes
  • Introduction
  • @@ -7334,7 +7334,7 @@

    Type extensions

    - Fork me on GitHub + Fork me on GitHub diff --git a/reference/fsharp-control-reactive-schedule.html b/reference/fsharp-control-reactive-schedule.html index 8e80646..c737c83 100644 --- a/reference/fsharp-control-reactive-schedule.html +++ b/reference/fsharp-control-reactive-schedule.html @@ -24,7 +24,7 @@ @@ -832,9 +832,9 @@

    Functions and values

  • Home page
  • Get Library via NuGet
  • -
  • Source Code on GitHub
  • -
  • License
  • -
  • Release Notes
  • +
  • Source Code on GitHub
  • +
  • License
  • +
  • Release Notes
  • Introduction
  • @@ -846,7 +846,7 @@

    Functions and values

    - Fork me on GitHub + Fork me on GitHub diff --git a/reference/fsharp-control-reactive-scheduler-scheduler.html b/reference/fsharp-control-reactive-scheduler-scheduler.html index 3c0315d..228b21a 100644 --- a/reference/fsharp-control-reactive-scheduler-scheduler.html +++ b/reference/fsharp-control-reactive-scheduler-scheduler.html @@ -24,7 +24,7 @@ @@ -124,9 +124,9 @@

    Static members

  • Home page
  • Get Library via NuGet
  • -
  • Source Code on GitHub
  • -
  • License
  • -
  • Release Notes
  • +
  • Source Code on GitHub
  • +
  • License
  • +
  • Release Notes
  • Introduction
  • @@ -138,7 +138,7 @@

    Static members

    - Fork me on GitHub + Fork me on GitHub diff --git a/reference/fsharp-control-reactive-scheduler.html b/reference/fsharp-control-reactive-scheduler.html index 8294a0b..a3013a3 100644 --- a/reference/fsharp-control-reactive-scheduler.html +++ b/reference/fsharp-control-reactive-scheduler.html @@ -24,7 +24,7 @@ @@ -97,9 +97,9 @@

    Functions and values

  • Home page
  • Get Library via NuGet
  • -
  • Source Code on GitHub
  • -
  • License
  • -
  • Release Notes
  • +
  • Source Code on GitHub
  • +
  • License
  • +
  • Release Notes
  • Introduction
  • @@ -111,7 +111,7 @@

    Functions and values

    - Fork me on GitHub + Fork me on GitHub diff --git a/reference/fsharp-control-reactive-subject-1.html b/reference/fsharp-control-reactive-subject-1.html index 18bbf82..21fe48a 100644 --- a/reference/fsharp-control-reactive-subject-1.html +++ b/reference/fsharp-control-reactive-subject-1.html @@ -24,7 +24,7 @@ @@ -140,9 +140,9 @@

    Static members

  • Home page
  • Get Library via NuGet
  • -
  • Source Code on GitHub
  • -
  • License
  • -
  • Release Notes
  • +
  • Source Code on GitHub
  • +
  • License
  • +
  • Release Notes
  • Introduction
  • @@ -154,7 +154,7 @@

    Static members

    - Fork me on GitHub + Fork me on GitHub diff --git a/reference/fsharp-control-reactive-subjectmodule.html b/reference/fsharp-control-reactive-subjectmodule.html index f865e91..238520c 100644 --- a/reference/fsharp-control-reactive-subjectmodule.html +++ b/reference/fsharp-control-reactive-subjectmodule.html @@ -24,7 +24,7 @@ @@ -142,9 +142,9 @@

    Functions and values

  • Home page
  • Get Library via NuGet
  • -
  • Source Code on GitHub
  • -
  • License
  • -
  • Release Notes
  • +
  • Source Code on GitHub
  • +
  • License
  • +
  • Release Notes
  • Introduction
  • @@ -156,7 +156,7 @@

    Functions and values

    - Fork me on GitHub + Fork me on GitHub diff --git a/reference/fsharp-control-reactive-testing-gentestnotification.html b/reference/fsharp-control-reactive-testing-gentestnotification.html index 6988170..de71c71 100644 --- a/reference/fsharp-control-reactive-testing-gentestnotification.html +++ b/reference/fsharp-control-reactive-testing-gentestnotification.html @@ -24,7 +24,7 @@ @@ -74,9 +74,9 @@

    Static members

  • Home page
  • Get Library via NuGet
  • -
  • Source Code on GitHub
  • -
  • License
  • -
  • Release Notes
  • +
  • Source Code on GitHub
  • +
  • License
  • +
  • Release Notes
  • Introduction
  • @@ -88,7 +88,7 @@

    Static members

    - Fork me on GitHub + Fork me on GitHub diff --git a/reference/fsharp-control-reactive-testing-marbles.html b/reference/fsharp-control-reactive-testing-marbles.html index 53040ce..d1c9e6d 100644 --- a/reference/fsharp-control-reactive-testing-marbles.html +++ b/reference/fsharp-control-reactive-testing-marbles.html @@ -24,7 +24,7 @@ @@ -225,9 +225,9 @@

    Parameters

  • Home page
  • Get Library via NuGet
  • -
  • Source Code on GitHub
  • -
  • License
  • -
  • Release Notes
  • +
  • Source Code on GitHub
  • +
  • License
  • +
  • Release Notes
  • Introduction
  • @@ -239,7 +239,7 @@

    Parameters

    - Fork me on GitHub + Fork me on GitHub diff --git a/reference/fsharp-control-reactive-testing-testnotification-1.html b/reference/fsharp-control-reactive-testing-testnotification-1.html index c38479e..494c59a 100644 --- a/reference/fsharp-control-reactive-testing-testnotification-1.html +++ b/reference/fsharp-control-reactive-testing-testnotification-1.html @@ -24,7 +24,7 @@ @@ -85,9 +85,9 @@

    Instance members

  • Home page
  • Get Library via NuGet
  • -
  • Source Code on GitHub
  • -
  • License
  • -
  • Release Notes
  • +
  • Source Code on GitHub
  • +
  • License
  • +
  • Release Notes
  • Introduction
  • @@ -99,7 +99,7 @@

    Instance members

    - Fork me on GitHub + Fork me on GitHub diff --git a/reference/fsharp-control-reactive-testing-testnotificationmodule.html b/reference/fsharp-control-reactive-testing-testnotificationmodule.html index 9d97acb..adb4759 100644 --- a/reference/fsharp-control-reactive-testing-testnotificationmodule.html +++ b/reference/fsharp-control-reactive-testing-testnotificationmodule.html @@ -24,7 +24,7 @@ @@ -398,9 +398,9 @@

    Active patterns

  • Home page
  • Get Library via NuGet
  • -
  • Source Code on GitHub
  • -
  • License
  • -
  • Release Notes
  • +
  • Source Code on GitHub
  • +
  • License
  • +
  • Release Notes
  • Introduction
  • @@ -412,7 +412,7 @@

    Active patterns

    - Fork me on GitHub + Fork me on GitHub diff --git a/reference/fsharp-control-reactive-testing-testnotifications-1.html b/reference/fsharp-control-reactive-testing-testnotifications-1.html index 28024e6..348f1f2 100644 --- a/reference/fsharp-control-reactive-testing-testnotifications-1.html +++ b/reference/fsharp-control-reactive-testing-testnotifications-1.html @@ -24,7 +24,7 @@ @@ -74,9 +74,9 @@

    Union Cases

  • Home page
  • Get Library via NuGet
  • -
  • Source Code on GitHub
  • -
  • License
  • -
  • Release Notes
  • +
  • Source Code on GitHub
  • +
  • License
  • +
  • Release Notes
  • Introduction
  • @@ -88,7 +88,7 @@

    Union Cases

    - Fork me on GitHub + Fork me on GitHub diff --git a/reference/fsharp-control-reactive-testing-testobservable.html b/reference/fsharp-control-reactive-testing-testobservable.html index afd5b69..b498d8a 100644 --- a/reference/fsharp-control-reactive-testing-testobservable.html +++ b/reference/fsharp-control-reactive-testing-testobservable.html @@ -24,7 +24,7 @@ @@ -78,9 +78,9 @@

    Functions and values

  • Home page
  • Get Library via NuGet
  • -
  • Source Code on GitHub
  • -
  • License
  • -
  • Release Notes
  • +
  • Source Code on GitHub
  • +
  • License
  • +
  • Release Notes
  • Introduction
  • @@ -92,7 +92,7 @@

    Functions and values

    - Fork me on GitHub + Fork me on GitHub diff --git a/reference/fsharp-control-reactive-testing-testobservermodule.html b/reference/fsharp-control-reactive-testing-testobservermodule.html index ff4e9d9..5b0b0f6 100644 --- a/reference/fsharp-control-reactive-testing-testobservermodule.html +++ b/reference/fsharp-control-reactive-testing-testobservermodule.html @@ -24,7 +24,7 @@ @@ -150,9 +150,9 @@

    Functions and values

  • Home page
  • Get Library via NuGet
  • -
  • Source Code on GitHub
  • -
  • License
  • -
  • Release Notes
  • +
  • Source Code on GitHub
  • +
  • License
  • +
  • Release Notes
  • Introduction
  • @@ -164,7 +164,7 @@

    Functions and values

    - Fork me on GitHub + Fork me on GitHub diff --git a/reference/fsharp-control-reactive-testing-testschedulemodule.html b/reference/fsharp-control-reactive-testing-testschedulemodule.html index 75bd634..c4ed807 100644 --- a/reference/fsharp-control-reactive-testing-testschedulemodule.html +++ b/reference/fsharp-control-reactive-testing-testschedulemodule.html @@ -24,7 +24,7 @@ @@ -302,9 +302,9 @@

    Functions and values

  • Home page
  • Get Library via NuGet
  • -
  • Source Code on GitHub
  • -
  • License
  • -
  • Release Notes
  • +
  • Source Code on GitHub
  • +
  • License
  • +
  • Release Notes
  • Introduction
  • @@ -316,7 +316,7 @@

    Functions and values

    - Fork me on GitHub + Fork me on GitHub diff --git a/reference/fsharp-control-reactive-waithandle.html b/reference/fsharp-control-reactive-waithandle.html index 596e679..155e042 100644 --- a/reference/fsharp-control-reactive-waithandle.html +++ b/reference/fsharp-control-reactive-waithandle.html @@ -24,7 +24,7 @@ @@ -77,9 +77,9 @@

    Static members

  • Home page
  • Get Library via NuGet
  • -
  • Source Code on GitHub
  • -
  • License
  • -
  • Release Notes
  • +
  • Source Code on GitHub
  • +
  • License
  • +
  • Release Notes
  • Introduction
  • @@ -91,7 +91,7 @@

    Static members

    - Fork me on GitHub + Fork me on GitHub diff --git a/reference/fsharp-control-reactive-waithandlemodule.html b/reference/fsharp-control-reactive-waithandlemodule.html index 094ac86..b774e00 100644 --- a/reference/fsharp-control-reactive-waithandlemodule.html +++ b/reference/fsharp-control-reactive-waithandlemodule.html @@ -24,7 +24,7 @@ @@ -102,9 +102,9 @@

    Functions and values

  • Home page
  • Get Library via NuGet
  • -
  • Source Code on GitHub
  • -
  • License
  • -
  • Release Notes
  • +
  • Source Code on GitHub
  • +
  • License
  • +
  • Release Notes
  • Introduction
  • @@ -116,7 +116,7 @@

    Functions and values

    - Fork me on GitHub + Fork me on GitHub diff --git a/reference/index.html b/reference/index.html index dc7917c..bc6ff5a 100644 --- a/reference/index.html +++ b/reference/index.html @@ -24,7 +24,7 @@ @@ -249,9 +249,9 @@

    FSharp.Control.Reactive.Testing Namespace

  • Home page
  • Get Library via NuGet
  • -
  • Source Code on GitHub
  • -
  • License
  • -
  • Release Notes
  • +
  • Source Code on GitHub
  • +
  • License
  • +
  • Release Notes
  • Introduction
  • @@ -263,7 +263,7 @@

    FSharp.Control.Reactive.Testing Namespace

    - Fork me on GitHub + Fork me on GitHub diff --git a/tutorial.html b/tutorial.html index 5afcc97..0b47f11 100644 --- a/tutorial.html +++ b/tutorial.html @@ -25,7 +25,7 @@ @@ -228,9 +228,9 @@

    Reactive
  • Home page
  • Get Library via NuGet
  • -
  • Source Code on GitHub
  • -
  • License
  • -
  • Release Notes
  • +
  • Source Code on GitHub
  • +
  • License
  • +
  • Release Notes
  • Introduction
  • @@ -242,7 +242,7 @@

    Reactive - Fork me on GitHub + Fork me on GitHub From e3e6c755076a8f8f7f395544bc1bdc06a163093a Mon Sep 17 00:00:00 2001 From: Ryan Riley Date: Fri, 5 Jun 2020 18:11:58 -0500 Subject: [PATCH 17/18] Update generated documentation for version 4.3.3 --- introduction.html | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/introduction.html b/introduction.html index 2899948..787f287 100644 --- a/introduction.html +++ b/introduction.html @@ -38,7 +38,7 @@

    Prerequisits< This is by no means a complete stable example and should only be used for demonstration purposes.

    Subscribing on Observable

    The following example show how the Enabling/Disabling of a button can be controled by looking at the input of another input field (TextBox).

    -

    Enable Disable Button

    +

    Enable Disable Button

     1: 
      2: 
      3: 
    @@ -84,7 +84,7 @@ 

    Transforming Observable

    Incoming emits can be transformed using the mapping functionality. Following example show how the input of a textbox can be transformed into the reversed value.

    -

    Reversed

    +

    Reversed

     1: 
      2: 
      3: 
    @@ -122,7 +122,7 @@ 

    Merging Two emits into one

    Merging multiple events into one can be done with the Observable.merge primitive. Following example shows how we change the value of a label with the buttons ("Red" and "Green").

    -

    Red-Green

    +

    Red-Green

    @@ -77,10 +77,10 @@

    Instance members

    @@ -94,10 +94,10 @@

    Instance members

    @@ -111,10 +111,10 @@

    Instance members

    @@ -128,10 +128,10 @@

    Instance members

    @@ -145,12 +145,12 @@

    Instance members

    diff --git a/reference/fsharp-control-reactive-buildersmodule-rxquerybuilder.html b/reference/fsharp-control-reactive-buildersmodule-rxquerybuilder.html index c188d37..e43ffa5 100644 --- a/reference/fsharp-control-reactive-buildersmodule-rxquerybuilder.html +++ b/reference/fsharp-control-reactive-buildersmodule-rxquerybuilder.html @@ -52,10 +52,10 @@

    Constructors

    @@ -78,12 +78,12 @@

    Instance members

    @@ -74,10 +74,10 @@

    Static members

    @@ -94,10 +94,10 @@

    Static members

    diff --git a/reference/fsharp-control-reactive-disposablemodule.html b/reference/fsharp-control-reactive-disposablemodule.html index 9fad473..8386943 100644 --- a/reference/fsharp-control-reactive-disposablemodule.html +++ b/reference/fsharp-control-reactive-disposablemodule.html @@ -58,18 +58,19 @@

    Functions and values

    @@ -115,11 +116,31 @@

    Functions and values

    + + + + diff --git a/reference/fsharp-control-reactive-observablemodule.html b/reference/fsharp-control-reactive-observablemodule.html index b0507b7..9ace4bd 100644 --- a/reference/fsharp-control-reactive-observablemodule.html +++ b/reference/fsharp-control-reactive-observablemodule.html @@ -57,12 +57,12 @@

    Functions and values

    @@ -134,10 +134,10 @@

    Functions and values

    @@ -153,10 +153,10 @@

    Functions and values

    @@ -172,12 +172,12 @@

    Functions and values

    @@ -210,10 +210,10 @@

    Functions and values

    @@ -229,12 +229,12 @@

    Functions and values

    @@ -285,12 +285,12 @@

    Functions and values

    @@ -510,12 +510,12 @@

    Functions and values

    @@ -549,10 +549,10 @@

    Functions and values

    @@ -569,10 +569,10 @@

    Functions and values

    @@ -588,12 +588,12 @@

    Functions and values

    @@ -648,12 +648,12 @@

    Functions and values

    @@ -711,10 +711,10 @@

    Functions and values

    @@ -730,12 +730,12 @@

    Functions and values

    @@ -793,10 +793,10 @@

    Functions and values

    @@ -813,10 +813,10 @@

    Functions and values

    @@ -834,10 +834,10 @@

    Functions and values

    @@ -854,10 +854,10 @@

    Functions and values

    @@ -874,10 +874,10 @@

    Functions and values

    @@ -894,10 +894,10 @@

    Functions and values

    @@ -914,10 +914,10 @@

    Functions and values

    @@ -934,10 +934,10 @@

    Functions and values

    @@ -954,12 +954,12 @@

    Functions and values

    @@ -1263,10 +1263,10 @@

    Returns

    @@ -1282,10 +1282,10 @@

    Returns

    @@ -1301,10 +1301,10 @@

    Returns

    @@ -1321,10 +1321,10 @@

    Returns

    @@ -1340,10 +1340,10 @@

    Returns

    @@ -1359,12 +1359,12 @@

    Returns

    @@ -1399,12 +1399,12 @@

    Returns

    @@ -1438,12 +1438,12 @@

    Returns

    @@ -1478,12 +1478,12 @@

    Returns

    @@ -1537,10 +1537,10 @@

    Returns

    @@ -1556,10 +1556,10 @@

    Returns

    @@ -1575,10 +1575,10 @@

    Returns

    @@ -1594,10 +1594,10 @@

    Returns

    @@ -1613,10 +1613,10 @@

    Returns

    @@ -1632,10 +1632,10 @@

    Returns

    @@ -1651,10 +1651,10 @@

    Returns

    @@ -1670,10 +1670,10 @@

    Returns

    @@ -1689,10 +1689,10 @@

    Returns

    @@ -1708,15 +1708,15 @@

    Returns

    + + + + @@ -7171,10 +7191,10 @@

    Type extensions

    @@ -7191,10 +7211,10 @@

    Type extensions

    @@ -7211,10 +7231,10 @@

    Type extensions

    @@ -7231,10 +7251,10 @@

    Type extensions

    @@ -7251,10 +7271,10 @@

    Type extensions

    @@ -7271,10 +7291,10 @@

    Type extensions

    @@ -7291,10 +7311,10 @@

    Type extensions

    diff --git a/reference/fsharp-control-reactive-schedule.html b/reference/fsharp-control-reactive-schedule.html index c737c83..0e98ec4 100644 --- a/reference/fsharp-control-reactive-schedule.html +++ b/reference/fsharp-control-reactive-schedule.html @@ -52,10 +52,10 @@

    Functions and values

    @@ -71,10 +71,10 @@

    Functions and values

    @@ -90,10 +90,10 @@

    Functions and values

    @@ -109,10 +109,10 @@

    Functions and values

    @@ -128,10 +128,10 @@

    Functions and values

    @@ -147,12 +147,12 @@

    Functions and values

    @@ -185,10 +185,10 @@

    Functions and values

    @@ -204,10 +204,10 @@

    Functions and values

    @@ -223,10 +223,10 @@

    Functions and values

    @@ -242,10 +242,10 @@

    Functions and values

    @@ -259,10 +259,10 @@

    Functions and values

    @@ -276,12 +276,12 @@

    Functions and values

    @@ -314,12 +314,12 @@

    Functions and values

    @@ -352,10 +352,10 @@

    Functions and values

    @@ -371,12 +371,12 @@

    Functions and values

    @@ -428,12 +428,12 @@

    Functions and values

    @@ -466,10 +466,10 @@

    Functions and values

    @@ -485,12 +485,12 @@

    Functions and values

    @@ -542,10 +542,10 @@

    Functions and values

    @@ -561,12 +561,12 @@

    Functions and values

    @@ -637,12 +637,12 @@

    Functions and values

    @@ -703,10 +703,10 @@

    Functions and values

    @@ -723,10 +723,10 @@

    Functions and values

    @@ -743,10 +743,10 @@

    Functions and values

    @@ -763,10 +763,10 @@

    Functions and values

    @@ -783,10 +783,10 @@

    Functions and values

    @@ -803,10 +803,10 @@

    Functions and values

    diff --git a/reference/fsharp-control-reactive-scheduler-scheduler.html b/reference/fsharp-control-reactive-scheduler-scheduler.html index 228b21a..0a742bd 100644 --- a/reference/fsharp-control-reactive-scheduler-scheduler.html +++ b/reference/fsharp-control-reactive-scheduler-scheduler.html @@ -49,10 +49,10 @@

    Constructors

    @@ -75,10 +75,10 @@

    Static members

    @@ -95,10 +95,10 @@

    Static members

    diff --git a/reference/fsharp-control-reactive-scheduler.html b/reference/fsharp-control-reactive-scheduler.html index a3013a3..5245c7e 100644 --- a/reference/fsharp-control-reactive-scheduler.html +++ b/reference/fsharp-control-reactive-scheduler.html @@ -69,10 +69,10 @@

    Functions and values

    diff --git a/reference/fsharp-control-reactive-subject-1.html b/reference/fsharp-control-reactive-subject-1.html index 21fe48a..52d5e45 100644 --- a/reference/fsharp-control-reactive-subject-1.html +++ b/reference/fsharp-control-reactive-subject-1.html @@ -48,10 +48,10 @@

    Static members

    @@ -69,10 +69,10 @@

    Static members

    @@ -89,10 +89,10 @@

    Static members

    @@ -110,10 +110,10 @@

    Static members

    diff --git a/reference/fsharp-control-reactive-subjectmodule.html b/reference/fsharp-control-reactive-subjectmodule.html index 238520c..f5ff9bb 100644 --- a/reference/fsharp-control-reactive-subjectmodule.html +++ b/reference/fsharp-control-reactive-subjectmodule.html @@ -57,10 +57,10 @@

    Functions and values

    @@ -76,10 +76,10 @@

    Functions and values

    @@ -95,10 +95,10 @@

    Functions and values

    @@ -114,12 +114,12 @@

    Functions and values

    diff --git a/reference/fsharp-control-reactive-testing-marbles.html b/reference/fsharp-control-reactive-testing-marbles.html index d1c9e6d..1d32128 100644 --- a/reference/fsharp-control-reactive-testing-marbles.html +++ b/reference/fsharp-control-reactive-testing-marbles.html @@ -52,10 +52,10 @@

    Functions and values

    @@ -79,10 +79,10 @@

    Parameters

    @@ -98,10 +98,10 @@

    Parameters

    @@ -117,10 +117,10 @@

    Parameters

    @@ -136,10 +136,10 @@

    Parameters

    @@ -159,10 +159,10 @@

    Parameters

    @@ -178,10 +178,10 @@

    Parameters

    @@ -197,10 +197,10 @@

    Parameters

    diff --git a/reference/fsharp-control-reactive-testing-testnotification-1.html b/reference/fsharp-control-reactive-testing-testnotification-1.html index 494c59a..f2f46bf 100644 --- a/reference/fsharp-control-reactive-testing-testnotification-1.html +++ b/reference/fsharp-control-reactive-testing-testnotification-1.html @@ -50,10 +50,10 @@

    Instance members

    @@ -63,10 +63,10 @@

    Instance members

    diff --git a/reference/fsharp-control-reactive-testing-testnotificationmodule.html b/reference/fsharp-control-reactive-testing-testnotificationmodule.html index adb4759..8e343ba 100644 --- a/reference/fsharp-control-reactive-testing-testnotificationmodule.html +++ b/reference/fsharp-control-reactive-testing-testnotificationmodule.html @@ -57,10 +57,10 @@

    Functions and values

    @@ -76,12 +76,12 @@

    Functions and values

    @@ -190,10 +190,10 @@

    Functions and values

    @@ -209,10 +209,10 @@

    Functions and values

    @@ -228,12 +228,12 @@

    Functions and values

    @@ -266,12 +266,12 @@

    Functions and values

    diff --git a/reference/fsharp-control-reactive-testing-testnotifications-1.html b/reference/fsharp-control-reactive-testing-testnotifications-1.html index 348f1f2..c457d63 100644 --- a/reference/fsharp-control-reactive-testing-testnotifications-1.html +++ b/reference/fsharp-control-reactive-testing-testnotifications-1.html @@ -48,10 +48,10 @@

    Union Cases

    diff --git a/reference/fsharp-control-reactive-testing-testobservable.html b/reference/fsharp-control-reactive-testing-testobservable.html index b498d8a..101cd27 100644 --- a/reference/fsharp-control-reactive-testing-testobservable.html +++ b/reference/fsharp-control-reactive-testing-testobservable.html @@ -50,10 +50,10 @@

    Functions and values

    diff --git a/reference/fsharp-control-reactive-testing-testobservermodule.html b/reference/fsharp-control-reactive-testing-testobservermodule.html index 5b0b0f6..d4af6ba 100644 --- a/reference/fsharp-control-reactive-testing-testobservermodule.html +++ b/reference/fsharp-control-reactive-testing-testobservermodule.html @@ -57,10 +57,10 @@

    Functions and values

    @@ -103,10 +103,10 @@

    Functions and values

    @@ -122,10 +122,10 @@

    Functions and values

    diff --git a/reference/fsharp-control-reactive-testing-testschedulemodule.html b/reference/fsharp-control-reactive-testing-testschedulemodule.html index c4ed807..603f234 100644 --- a/reference/fsharp-control-reactive-testing-testschedulemodule.html +++ b/reference/fsharp-control-reactive-testing-testschedulemodule.html @@ -57,10 +57,10 @@

    Functions and values

    @@ -76,10 +76,10 @@

    Functions and values

    @@ -95,10 +95,10 @@

    Functions and values

    @@ -114,10 +114,10 @@

    Functions and values

    @@ -133,10 +133,10 @@

    Functions and values

    @@ -152,12 +152,12 @@

    Functions and values

    @@ -198,12 +198,12 @@

    Functions and values

    @@ -274,12 +274,12 @@

    Functions and values

     1: 
      2: 
      3: 
    
    From 1372902f5d739462b40fef2cf4bdd956baa19a78 Mon Sep 17 00:00:00 2001
    From: Ryan Riley 
    Date: Wed, 10 Jun 2020 08:28:02 -0500
    Subject: [PATCH 18/18] Update generated documentation for version 4.4.0
    
    ---
     ...tive-buildersmodule-observablebuilder.html |   88 +-
     ...eactive-buildersmodule-rxquerybuilder.html |  232 +-
     .../fsharp-control-reactive-disposable.html   |   12 +-
     ...arp-control-reactive-disposablemodule.html |   57 +-
     .../fsharp-control-reactive-disposables.html  |    4 +-
     ...arp-control-reactive-observablemodule.html | 2176 +++++++++--------
     .../fsharp-control-reactive-schedule.html     |  212 +-
     ...-control-reactive-scheduler-scheduler.html |   12 +-
     .../fsharp-control-reactive-scheduler.html    |    4 +-
     .../fsharp-control-reactive-subject-1.html    |   16 +-
     ...fsharp-control-reactive-subjectmodule.html |   20 +-
     ...-reactive-testing-gentestnotification.html |    4 +-
     ...harp-control-reactive-testing-marbles.html |   32 +-
     ...l-reactive-testing-testnotification-1.html |    8 +-
     ...active-testing-testnotificationmodule.html |  112 +-
     ...-reactive-testing-testnotifications-1.html |    4 +-
     ...ntrol-reactive-testing-testobservable.html |    4 +-
     ...l-reactive-testing-testobservermodule.html |   16 +-
     ...l-reactive-testing-testschedulemodule.html |   68 +-
     .../fsharp-control-reactive-waithandle.html   |    6 +-
     ...arp-control-reactive-waithandlemodule.html |   12 +-
     21 files changed, 1570 insertions(+), 1529 deletions(-)
    
    diff --git a/reference/fsharp-control-reactive-buildersmodule-observablebuilder.html b/reference/fsharp-control-reactive-buildersmodule-observablebuilder.html
    index 9b00a2e..a1b3012 100644
    --- a/reference/fsharp-control-reactive-buildersmodule-observablebuilder.html
    +++ b/reference/fsharp-control-reactive-buildersmodule-observablebuilder.html
    @@ -51,10 +51,10 @@ 

    Constructors

    - + new() -
    +
    Signature: unit -> ObservableBuilder
    - + x.Bind(m, f) -
    +
    Signature: (m:IObservable<'?7863> * f:('?7863 -> IObservable<'?7864>)) -> IObservable<'?7864>
    Type parameters: '?7863, '?7864
    - + x.Combine(comp1, comp2) -
    +
    Signature: (comp1:IObservable<'?7866> * comp2:IObservable<'?7866>) -> IObservable<'?7866>
    Type parameters: '?7866
    - + x.Delay(f) -
    +
    Signature: (f:(unit -> IObservable<'?7868>)) -> IObservable<'?7868>
    Type parameters: '?7868
    - + x.For(sequence, body) -
    +
    Signature: (sequence:IEnumerable<'?7872> * body:('?7872 -> IObservable<'?7873>)) -> IObservable<'?7873>
    Type parameters: '?7872, '?7873
    - + x.Return(x) -
    - Signature: x:'?7889 -> IObservable<'?7889>
    - Type parameters: '?7889 +
    + Signature: x:'?7888 -> IObservable<'?7888>
    + Type parameters: '?7888 Attributes:
    [<Obsolete("Use Yield. Return will be removed in an upcoming version of FSharp.Control.Reactive.")>]
    @@ -170,12 +170,12 @@

    Instance members

    - + x.ReturnFrom(m) -
    - Signature: m:IObservable<'?7891> -> IObservable<'?7891>
    - Type parameters: '?7891 +
    + Signature: m:IObservable<'?7890> -> IObservable<'?7890>
    + Type parameters: '?7890 Attributes:
    [<Obsolete("Use Yield. Return will be removed in an upcoming version of FSharp.Control.Reactive.")>]
    @@ -195,12 +195,12 @@

    Instance members

    - + x.TryFinally(m, compensation) -
    - Signature: (m:IObservable<'?7878> * compensation:(unit -> unit)) -> IObservable<'?7878>
    - Type parameters: '?7878
    +
    + Signature: (m:IObservable<'?7877> * compensation:(unit -> unit)) -> IObservable<'?7877>
    + Type parameters: '?7877
    @@ -212,12 +212,12 @@

    Instance members

    - + x.TryWith(m, h) -
    - Signature: (m:IObservable<'?7875> * h:('?7876 -> IObservable<'?7875>)) -> IObservable<'?7875>
    - Type parameters: '?7875, '?7876
    +
    + Signature: (m:IObservable<'?7875> * h:(Exception -> IObservable<'?7875>)) -> IObservable<'?7875>
    + Type parameters: '?7875
    @@ -229,12 +229,12 @@

    Instance members

    - + x.Using(res, body) -
    - Signature: (res:'?7880 * body:('?7880 -> IObservable<'?7881>)) -> IObservable<'?7881>
    - Type parameters: '?7880, '?7881
    +
    + Signature: (res:'?7879 * body:('?7879 -> IObservable<'?7880>)) -> IObservable<'?7880>
    + Type parameters: '?7879, '?7880
    @@ -246,12 +246,12 @@

    Instance members

    - + x.While(guard, m) -
    - Signature: (guard:(unit -> bool) * m:IObservable<'?7883>) -> IObservable<'?7883>
    - Type parameters: '?7883
    +
    + Signature: (guard:(unit -> bool) * m:IObservable<'?7882>) -> IObservable<'?7882>
    + Type parameters: '?7882
    @@ -263,12 +263,12 @@

    Instance members

    - + x.Yield(x) -
    - Signature: x:'?7885 -> IObservable<'?7885>
    - Type parameters: '?7885
    +
    + Signature: x:'?7884 -> IObservable<'?7884>
    + Type parameters: '?7884
    @@ -280,12 +280,12 @@

    Instance members

    - + x.YieldFrom(m) -
    - Signature: m:IObservable<'?7887> -> IObservable<'?7887>
    - Type parameters: '?7887
    +
    + Signature: m:IObservable<'?7886> -> IObservable<'?7886>
    + Type parameters: '?7886
    @@ -297,10 +297,10 @@

    Instance members

    - + x.Zero() -
    +
    Signature: unit -> IObservable<'?7870>
    Type parameters: '?7870
    - + new() -
    +
    Signature: unit -> RxQueryBuilder
    - + x.All(s, predicate) -
    - Signature: (s:IObservable<'?7917> * predicate:('?7917 -> bool)) -> IObservable<bool>
    - Type parameters: '?7917 +
    + Signature: (s:IObservable<'?7916> * predicate:('?7916 -> bool)) -> IObservable<bool>
    + Type parameters: '?7916 Attributes:
    [<CustomOperation("all")>]
    @@ -99,12 +99,12 @@

    Instance members

    - + x.Contains(s, key) -
    - Signature: (s:IObservable<'?7919> * key:'?7919) -> IObservable<bool>
    - Type parameters: '?7919 +
    + Signature: (s:IObservable<'?7918> * key:'?7918) -> IObservable<bool>
    + Type parameters: '?7918 Attributes:
    [<CustomOperation("contains")>]
    @@ -120,12 +120,12 @@

    Instance members

    - + x.Count(s) -
    - Signature: s:IObservable<'?7915> -> IObservable<int>
    - Type parameters: '?7915 +
    + Signature: s:IObservable<'?7914> -> IObservable<int>
    + Type parameters: '?7914 Attributes:
    [<CustomOperation("count")>]
    @@ -141,12 +141,12 @@

    Instance members

    - + x.Distinct(s) -
    - Signature: s:IObservable<'?7921> -> IObservable<'?7921>
    - Type parameters: '?7921 +
    + Signature: s:IObservable<'?7920> -> IObservable<'?7920>
    + Type parameters: '?7920 Attributes:
    [<CustomOperation("distinct", MaintainsVariableSpace = true, AllowIntoPattern = true)>]
    @@ -162,12 +162,12 @@

    Instance members

    - + x.ExactlyOne(s) -
    - Signature: s:IObservable<'?7923> -> IObservable<'?7923>
    - Type parameters: '?7923 +
    + Signature: s:IObservable<'?7922> -> IObservable<'?7922>
    + Type parameters: '?7922 Attributes:
    [<CustomOperation("exactlyOne")>]
    @@ -183,12 +183,12 @@

    Instance members

    - + x.ExactlyOneOrDefault(s) -
    - Signature: s:IObservable<'?7925> -> IObservable<'?7925>
    - Type parameters: '?7925 +
    + Signature: s:IObservable<'?7924> -> IObservable<'?7924>
    + Type parameters: '?7924 Attributes:
    [<CustomOperation("exactlyOneOrDefault")>]
    @@ -204,12 +204,12 @@

    Instance members

    - + x.Find(s, predicate) -
    - Signature: (s:IObservable<'?7927> * predicate:('?7927 -> bool)) -> IObservable<'?7927>
    - Type parameters: '?7927 +
    + Signature: (s:IObservable<'?7926> * predicate:('?7926 -> bool)) -> IObservable<'?7926>
    + Type parameters: '?7926 Attributes:
    [<CustomOperation("find")>]
    @@ -225,12 +225,12 @@

    Instance members

    - + x.For(s, body) -
    - Signature: (s:IObservable<'?7895> * body:('?7895 -> IObservable<'?7896>)) -> IObservable<'?7896>
    - Type parameters: '?7895, '?7896
    +
    + Signature: (s:IObservable<'?7894> * body:('?7894 -> IObservable<'?7895>)) -> IObservable<'?7895>
    + Type parameters: '?7894, '?7895
    @@ -242,12 +242,12 @@

    Instance members

    - + x.GroupBy(s, keySelector) -
    - Signature: (s:IObservable<'?7949> * keySelector:('?7949 -> '?7950)) -> IObservable<IGroupedObservable<'?7950,'?7949>>
    - Type parameters: '?7949, '?7950 +
    + Signature: (s:IObservable<'?7948> * keySelector:('?7948 -> '?7949)) -> IObservable<IGroupedObservable<'?7949,'?7948>>
    + Type parameters: '?7948, '?7949 Attributes:
    [<CustomOperation("groupBy", AllowIntoPattern = true)>]
    @@ -263,12 +263,12 @@

    Instance members

    - + x.GroupJoin(...) -
    - Signature: (s1:IObservable<'?7962> * s2:IObservable<'?7963> * s1KeySelector:('?7962 -> IObservable<'?7964>) * s2KeySelector:('?7963 -> IObservable<'?7965>) * resultSelector:('?7962 -> IObservable<'?7963> -> '?7966)) -> IObservable<'?7966>
    - Type parameters: '?7962, '?7963, '?7964, '?7965, '?7966 +
    + Signature: (s1:IObservable<'?7961> * s2:IObservable<'?7962> * s1KeySelector:('?7961 -> IObservable<'?7963>) * s2KeySelector:('?7962 -> IObservable<'?7964>) * resultSelector:('?7961 -> IObservable<'?7962> -> '?7965)) -> IObservable<'?7965>
    + Type parameters: '?7961, '?7962, '?7963, '?7964, '?7965 Attributes:
    [<CustomOperation("groupJoin", AllowIntoPattern = true)>]
    @@ -284,12 +284,12 @@

    Instance members

    - + x.GroupValBy(...) -
    - Signature: (s:IObservable<'?7952> * resultSelector:('?7952 -> '?7953) * keySelector:('?7952 -> '?7954)) -> IObservable<IGroupedObservable<'?7954,'?7953>>
    - Type parameters: '?7952, '?7953, '?7954 +
    + Signature: (s:IObservable<'?7951> * resultSelector:('?7951 -> '?7952) * keySelector:('?7951 -> '?7953)) -> IObservable<IGroupedObservable<'?7953,'?7952>>
    + Type parameters: '?7951, '?7952, '?7953 Attributes:
    [<CustomOperation("groupValBy", AllowIntoPattern = true)>]
    @@ -305,12 +305,12 @@

    Instance members

    - + x.Head(s) -
    - Signature: s:IObservable<'?7929> -> IObservable<'?7929>
    - Type parameters: '?7929 +
    + Signature: s:IObservable<'?7928> -> IObservable<'?7928>
    + Type parameters: '?7928 Attributes:
    [<CustomOperation("head")>]
    @@ -326,12 +326,12 @@

    Instance members

    - + x.HeadOrDefault(s) -
    - Signature: s:IObservable<'?7931> -> IObservable<'?7931>
    - Type parameters: '?7931 +
    + Signature: s:IObservable<'?7930> -> IObservable<'?7930>
    + Type parameters: '?7930 Attributes:
    [<CustomOperation("headOrDefault")>]
    @@ -347,12 +347,12 @@

    Instance members

    - + x.Iter(s, selector) -
    - Signature: (s:IObservable<'?7972> * selector:('?7972 -> unit)) -> IObservable<'?7972>
    - Type parameters: '?7972 +
    + Signature: (s:IObservable<'?7971> * selector:('?7971 -> unit)) -> IObservable<'?7971>
    + Type parameters: '?7971 Attributes:
    [<CustomOperation("iter")>]
    @@ -368,12 +368,12 @@

    Instance members

    - + x.Join(...) -
    - Signature: (s1:IObservable<'?7956> * s2:IObservable<'?7957> * s1KeySelector:('?7956 -> IObservable<'?7958>) * s2KeySelector:('?7957 -> IObservable<'?7959>) * resultSelector:('?7956 -> '?7957 -> '?7960)) -> IObservable<'?7960>
    - Type parameters: '?7956, '?7957, '?7958, '?7959, '?7960 +
    + Signature: (s1:IObservable<'?7955> * s2:IObservable<'?7956> * s1KeySelector:('?7955 -> IObservable<'?7957>) * s2KeySelector:('?7956 -> IObservable<'?7958>) * resultSelector:('?7955 -> '?7956 -> '?7959)) -> IObservable<'?7959>
    + Type parameters: '?7955, '?7956, '?7957, '?7958, '?7959 Attributes:
    [<CustomOperation("join", IsLikeJoin = true)>]
    @@ -389,12 +389,12 @@

    Instance members

    - + x.Last(s) -
    - Signature: s:IObservable<'?7933> -> IObservable<'?7933>
    - Type parameters: '?7933 +
    + Signature: s:IObservable<'?7932> -> IObservable<'?7932>
    + Type parameters: '?7932 Attributes:
    [<CustomOperation("last")>]
    @@ -410,12 +410,12 @@

    Instance members

    - + x.LastOrDefault(s) -
    - Signature: s:IObservable<'?7935> -> IObservable<'?7935>
    - Type parameters: '?7935 +
    + Signature: s:IObservable<'?7934> -> IObservable<'?7934>
    + Type parameters: '?7934 Attributes:
    [<CustomOperation("lastOrDefault")>]
    @@ -431,10 +431,10 @@

    Instance members

    - + x.MaxBy(s, valueSelector) -
    +
    Signature: (s:IObservable<'a> * valueSelector:('a -> 'b)) -> IObservable<IList<'a>>
    Type parameters: 'a, 'b Attributes:
    @@ -452,10 +452,10 @@

    Instance members

    - + x.MinBy(s, valueSelector) -
    +
    Signature: (s:IObservable<'a> * valueSelector:('a -> 'b)) -> IObservable<IList<'a>>
    Type parameters: 'a, 'b Attributes:
    @@ -473,10 +473,10 @@

    Instance members

    - + x.Nth(s, index) -
    +
    Signature: (s:IObservable<'a> * index:int) -> IObservable<'a>
    Type parameters: 'a Attributes:
    @@ -494,12 +494,12 @@

    Instance members

    - + x.Select(s, selector) -
    - Signature: (s:IObservable<'?7898> * selector:('?7898 -> '?7899)) -> IObservable<'?7899>
    - Type parameters: '?7898, '?7899 +
    + Signature: (s:IObservable<'?7897> * selector:('?7897 -> '?7898)) -> IObservable<'?7898>
    + Type parameters: '?7897, '?7898 Attributes:
    [<CustomOperation("select", AllowIntoPattern = true)>]
    @@ -515,12 +515,12 @@

    Instance members

    - + x.Skip(s, count) -
    - Signature: (s:IObservable<'?7909> * count:int) -> IObservable<'?7909>
    - Type parameters: '?7909 +
    + Signature: (s:IObservable<'?7908> * count:int) -> IObservable<'?7908>
    + Type parameters: '?7908 Attributes:
    [<CustomOperation("skip", MaintainsVariableSpace = true, AllowIntoPattern = true)>]
    @@ -536,12 +536,12 @@

    Instance members

    - + x.SkipWhile(s, predicate) -
    - Signature: (s:IObservable<'?7907> * predicate:('?7907 -> bool)) -> IObservable<'?7907>
    - Type parameters: '?7907 +
    + Signature: (s:IObservable<'?7906> * predicate:('?7906 -> bool)) -> IObservable<'?7906>
    + Type parameters: '?7906 Attributes:
    [<CustomOperation("skipWhile", MaintainsVariableSpace = true, AllowIntoPattern = true)>]
    @@ -557,12 +557,12 @@

    Instance members

    - + x.SumBy(s, valueSelector) -
    - Signature: (s:IObservable<'?7945> * valueSelector:('?7945 -> ^?7946)) -> IObservable<^?7947>
    - Type parameters: '?7945, ^?7946, ^?7947 +
    + Signature: (s:IObservable<'?7944> * valueSelector:('?7944 -> ^?7945)) -> IObservable<^?7946>
    + Type parameters: '?7944, ^?7945, ^?7946 Attributes:
    [<CustomOperation("sumBy")>]
    @@ -578,12 +578,12 @@

    Instance members

    - + x.Take(s, count) -
    - Signature: (s:IObservable<'?7905> * count:int) -> IObservable<'?7905>
    - Type parameters: '?7905 +
    + Signature: (s:IObservable<'?7904> * count:int) -> IObservable<'?7904>
    + Type parameters: '?7904 Attributes:
    [<CustomOperation("take", MaintainsVariableSpace = true, AllowIntoPattern = true)>]
    @@ -599,12 +599,12 @@

    Instance members

    - + x.TakeWhile(s, predicate) -
    - Signature: (s:IObservable<'?7903> * predicate:('?7903 -> bool)) -> IObservable<'?7903>
    - Type parameters: '?7903 +
    + Signature: (s:IObservable<'?7902> * predicate:('?7902 -> bool)) -> IObservable<'?7902>
    + Type parameters: '?7902 Attributes:
    [<CustomOperation("takeWhile", MaintainsVariableSpace = true, AllowIntoPattern = true)>]
    @@ -620,12 +620,12 @@

    Instance members

    - + x.Where(s, predicate) -
    - Signature: (s:IObservable<'?7901> * predicate:('?7901 -> bool)) -> IObservable<'?7901>
    - Type parameters: '?7901 +
    + Signature: (s:IObservable<'?7900> * predicate:('?7900 -> bool)) -> IObservable<'?7900>
    + Type parameters: '?7900 Attributes:
    [<CustomOperation("where", MaintainsVariableSpace = true, AllowIntoPattern = true)>]
    @@ -641,12 +641,12 @@

    Instance members

    - + x.Yield(value) -
    - Signature: value:'?7913 -> IObservable<'?7913>
    - Type parameters: '?7913
    +
    + Signature: value:'?7912 -> IObservable<'?7912>
    + Type parameters: '?7912
    @@ -658,12 +658,12 @@

    Instance members

    - + x.Zero() -
    - Signature: unit -> IObservable<'?7911>
    - Type parameters: '?7911
    +
    + Signature: unit -> IObservable<'?7910>
    + Type parameters: '?7910
    @@ -675,12 +675,12 @@

    Instance members

    - + x.Zip(s1, s2, resultSelector) -
    - Signature: (s1:IObservable<'?7968> * s2:IObservable<'?7969> * resultSelector:('?7968 -> '?7969 -> '?7970)) -> IObservable<'?7970>
    - Type parameters: '?7968, '?7969, '?7970 +
    + Signature: (s1:IObservable<'?7967> * s2:IObservable<'?7968> * resultSelector:('?7967 -> '?7968 -> '?7969)) -> IObservable<'?7969>
    + Type parameters: '?7967, '?7968, '?7969 Attributes:
    [<CustomOperation("zip", IsLikeZip = true)>]
    diff --git a/reference/fsharp-control-reactive-disposable.html b/reference/fsharp-control-reactive-disposable.html index 4be0742..c987395 100644 --- a/reference/fsharp-control-reactive-disposable.html +++ b/reference/fsharp-control-reactive-disposable.html @@ -48,10 +48,10 @@

    Constructors

    - + new() -
    +
    Signature: unit -> Disposable
    - + Disposable.Composite -
    +
    Signature: CompositeDisposable
    - + Disposable.Serial -
    +
    Signature: SerialDisposable
    - compose x d + compose disposable2 disposable1
    - Signature: x:IDisposable -> d:IDisposable -> IDisposable
    -
    + Signature: disposable2:'?8988 -> disposable1:'?8989 -> IDisposable
    + Type parameters: '?8988, '?8989
    - + -

    Compose two disposables together so they are both disposed when disposed is called on the 'composite' disposable.

    +

    Compose two disposables together so they are both disposed when disposed is called on the 'composite' disposable. +The expected usage is disposable1 |> compose disposable2,

    - ignoring f d + disposeWith d x
    - Signature: f:(unit -> '?8983) -> d:IDisposable -> unit
    - Type parameters: '?8983
    + Signature: d:CompositeDisposable -> x:IDisposable -> unit
    + +
    + + + + +

    Registers a disposable object into a composite disposable object +ensuring it's disposition when composite disposable object is disposed.

    + + +
    + + ignoring f d + +
    + Signature: f:(unit -> '?8982) -> d:IDisposable -> unit
    + Type parameters: '?8982
    @@ -134,15 +155,15 @@

    Functions and values

    - + setIndirectly disposableFactory d -
    +
    Signature: disposableFactory:(unit -> 'b) -> d:SerialDisposable -> unit
    Type parameters: 'b
    - + @@ -154,15 +175,15 @@

    Functions and values

    - + setInnerDisposalOf d x -
    +
    Signature: d:SerialDisposable -> x:IDisposable -> unit
    - + @@ -171,12 +192,12 @@

    Functions and values

    - + using f d -
    - Signature: f:('?8985 -> '?8986) -> d:'?8985 -> '?8986
    - Type parameters: '?8985, '?8986
    +
    + Signature: f:('?8984 -> '?8985) -> d:'?8984 -> '?8985
    + Type parameters: '?8984, '?8985
    diff --git a/reference/fsharp-control-reactive-disposables.html b/reference/fsharp-control-reactive-disposables.html index d8c431b..d620a8e 100644 --- a/reference/fsharp-control-reactive-disposables.html +++ b/reference/fsharp-control-reactive-disposables.html @@ -50,10 +50,10 @@

    Functions and values

    - + compose(disposables) -
    +
    Signature: disposables:'a -> IDisposable
    Type parameters: 'a
    - + aggregate accumulator source -
    - Signature: accumulator:('?8065 -> '?8065 -> '?8065) -> source:IObservable<'?8065> -> IObservable<'?8065>
    - Type parameters: '?8065
    +
    + Signature: accumulator:('?8063 -> '?8063 -> '?8063) -> source:IObservable<'?8063> -> IObservable<'?8063>
    + Type parameters: '?8063
    @@ -77,12 +77,12 @@

    Functions and values

    - + all pred source -
    - Signature: pred:('?8067 -> bool) -> source:IObservable<'?8067> -> IObservable<bool>
    - Type parameters: '?8067
    +
    + Signature: pred:('?8065 -> bool) -> source:IObservable<'?8065> -> IObservable<bool>
    + Type parameters: '?8065
    @@ -96,12 +96,12 @@

    Functions and values

    - + amb second first -
    - Signature: second:IObservable<'?8069> -> first:IObservable<'?8069> -> IObservable<'?8069>
    - Type parameters: '?8069
    +
    + Signature: second:IObservable<'?8067> -> first:IObservable<'?8067> -> IObservable<'?8067>
    + Type parameters: '?8067
    @@ -115,10 +115,10 @@

    Functions and values

    - + ambArray(source) -
    +
    Signature: source:IObservable<'T> [] -> IObservable<'T>
    Type parameters: 'T
    - + ambSeq(source) -
    +
    Signature: source:seq<IObservable<'T>> -> IObservable<'T>
    Type parameters: 'T
    - + any(source) -
    +
    Signature: source:IObservable<'Source> -> IObservable<bool>
    Type parameters: 'Source
    - + apply f m -
    - Signature: f:IObservable<('?8082 -> '?8083)> -> m:IObservable<'?8082> -> IObservable<'?8083>
    - Type parameters: '?8082, '?8083
    +
    + Signature: f:IObservable<('?8080 -> '?8081)> -> m:IObservable<'?8080> -> IObservable<'?8081>
    + Type parameters: '?8080, '?8081
    @@ -191,10 +191,10 @@

    Functions and values

    - + asObservable(source) -
    +
    Signature: source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + bind f m -
    +
    Signature: f:('T -> IObservable<'TNext>) -> m:IObservable<'T> -> IObservable<'TNext>
    Type parameters: 'T, 'TNext
    - + both second first -
    - Signature: second:IObservable<'?8085> -> first:IObservable<'?8086> -> Pattern<'?8086,'?8085>
    - Type parameters: '?8085, '?8086
    +
    + Signature: second:IObservable<'?8083> -> first:IObservable<'?8084> -> Pattern<'?8084,'?8083>
    + Type parameters: '?8083, '?8084
    @@ -248,12 +248,12 @@

    Functions and values

    - + buffer bufferClosingSelector source -
    - Signature: bufferClosingSelector:IObservable<'BufferClosing> -> source:IObservable<'?8089> -> IObservable<IList<'?8089>>
    - Type parameters: 'BufferClosing, '?8089
    +
    + Signature: bufferClosingSelector:IObservable<'BufferClosing> -> source:IObservable<'?8087> -> IObservable<IList<'?8087>>
    + Type parameters: 'BufferClosing, '?8087
    @@ -265,10 +265,10 @@

    Functions and values

    - + bufferBounded boundaries source -
    +
    Signature: boundaries:IObservable<'BufferClosing> -> source:IObservable<'T> -> IObservable<IList<'T>>
    Type parameters: 'BufferClosing, 'T
    - + bufferCount count source -
    - Signature: count:int -> source:IObservable<'?8094> -> IObservable<IList<'?8094>>
    - Type parameters: '?8094
    +
    + Signature: count:int -> source:IObservable<'?8092> -> IObservable<IList<'?8092>>
    + Type parameters: '?8092
    @@ -305,12 +305,12 @@

    Functions and values

    - + bufferCountSkip count skip source -
    - Signature: count:int -> skip:int -> source:IObservable<'?8096> -> IObservable<IList<'?8096>>
    - Type parameters: '?8096
    +
    + Signature: count:int -> skip:int -> source:IObservable<'?8094> -> IObservable<IList<'?8094>>
    + Type parameters: '?8094
    @@ -325,12 +325,12 @@

    Functions and values

    - + bufferFork(...) -
    - Signature: bufferOpenings:IObservable<'BufferOpening> -> bufferClosingSelector:('BufferOpening -> IObservable<'T>) -> source:IObservable<'?8108> -> IObservable<IList<'?8108>>
    - Type parameters: 'BufferOpening, 'T, '?8108
    +
    + Signature: bufferOpenings:IObservable<'BufferOpening> -> bufferClosingSelector:('BufferOpening -> IObservable<'T>) -> source:IObservable<'?8106> -> IObservable<IList<'?8106>>
    + Type parameters: 'BufferOpening, 'T, '?8106
    @@ -346,12 +346,12 @@

    Functions and values

    - + bufferSpan timeSpan source -
    - Signature: timeSpan:TimeSpan -> source:IObservable<'?8098> -> IObservable<IList<'?8098>>
    - Type parameters: '?8098
    +
    + Signature: timeSpan:TimeSpan -> source:IObservable<'?8096> -> IObservable<IList<'?8096>>
    + Type parameters: '?8096
    @@ -366,12 +366,12 @@

    Functions and values

    - + bufferSpanCount timeSpan count source -
    - Signature: timeSpan:TimeSpan -> count:int -> source:IObservable<'?8102> -> IObservable<IList<'?8102>>
    - Type parameters: '?8102
    +
    + Signature: timeSpan:TimeSpan -> count:int -> source:IObservable<'?8100> -> IObservable<IList<'?8100>>
    + Type parameters: '?8100
    @@ -387,12 +387,12 @@

    Functions and values

    - + bufferSpanCountOn(...) -
    - Signature: scheduler:IScheduler -> timeSpan:TimeSpan -> count:int -> source:IObservable<'?8104> -> IObservable<IList<'?8104>>
    - Type parameters: '?8104
    +
    + Signature: scheduler:IScheduler -> timeSpan:TimeSpan -> count:int -> source:IObservable<'?8102> -> IObservable<IList<'?8102>>
    + Type parameters: '?8102
    @@ -409,12 +409,12 @@

    Functions and values

    - + bufferSpanOn scheduler timeSpan source -
    - Signature: scheduler:IScheduler -> timeSpan:TimeSpan -> source:IObservable<'?8100> -> IObservable<IList<'?8100>>
    - Type parameters: '?8100
    +
    + Signature: scheduler:IScheduler -> timeSpan:TimeSpan -> source:IObservable<'?8098> -> IObservable<IList<'?8098>>
    + Type parameters: '?8098
    @@ -429,12 +429,12 @@

    Functions and values

    - + bufferSpanShift(...) -
    - Signature: timeSpan:TimeSpan -> timeShift:TimeSpan -> source:IObservable<'?8110> -> IObservable<IList<'?8110>>
    - Type parameters: '?8110
    +
    + Signature: timeSpan:TimeSpan -> timeShift:TimeSpan -> source:IObservable<'?8108> -> IObservable<IList<'?8108>>
    + Type parameters: '?8108
    @@ -449,12 +449,12 @@

    Functions and values

    - + bufferSpanShiftOn(...) -
    - Signature: scheduler:IScheduler -> timeSpan:TimeSpan -> timeShift:TimeSpan -> source:IObservable<'?8112> -> IObservable<IList<'?8112>>
    - Type parameters: '?8112
    +
    + Signature: scheduler:IScheduler -> timeSpan:TimeSpan -> timeShift:TimeSpan -> source:IObservable<'?8110> -> IObservable<IList<'?8110>>
    + Type parameters: '?8110
    @@ -470,12 +470,12 @@

    Functions and values

    - + case selector sources -
    - Signature: selector:(unit -> '?8116) -> sources:IDictionary<'?8116,IObservable<'?8117>> -> IObservable<'?8117>
    - Type parameters: '?8116, '?8117
    +
    + Signature: selector:(unit -> '?8114) -> sources:IDictionary<'?8114,IObservable<'?8115>> -> IObservable<'?8115>
    + Type parameters: '?8114, '?8115
    @@ -490,10 +490,10 @@

    Functions and values

    - + caseDefault(...) -
    +
    Signature: selector:(unit -> 'Value) -> defaulSource:IObservable<'Result> -> sources:IDictionary<'Value,IObservable<'Result>> -> IObservable<'Result>
    Type parameters: 'Value, 'Result
    - + caseOn scheduler selector sources -
    - Signature: scheduler:IScheduler -> selector:Func<'?8122> -> sources:IDictionary<'?8122,IObservable<'?8123>> -> IObservable<'?8123>
    - Type parameters: '?8122, '?8123
    +
    + Signature: scheduler:IScheduler -> selector:Func<'?8120> -> sources:IDictionary<'?8120,IObservable<'?8121>> -> IObservable<'?8121>
    + Type parameters: '?8120, '?8121
    @@ -530,10 +530,10 @@

    Functions and values

    - + cast(source) -
    +
    Signature: source:IObservable<obj> -> IObservable<'CastType>
    Type parameters: 'CastType
    - + catch second first -
    +
    Signature: second:IObservable<'T> -> first:IObservable<'T> -> IObservable<'T>
    Type parameters: 'T
    - + catchArray(sources) -
    +
    Signature: sources:IObservable<'T> [] -> IObservable<'T>
    Type parameters: 'T
    - + catchOption(source) -
    - Signature: source:IObservable<'?8127> -> IObservable<'?8127 option>
    - Type parameters: '?8127
    +
    + Signature: source:IObservable<'?8125> -> IObservable<'?8125 option>
    + Type parameters: '?8125
    @@ -608,12 +608,12 @@

    Functions and values

    - + catchResult handler source -
    - Signature: handler:('?8129 -> IObservable<'?8130>) -> source:IObservable<'?8131> -> IObservable<Result<'?8131,'?8130>>
    - Type parameters: '?8129, '?8130, '?8131
    +
    + Signature: handler:('?8127 -> IObservable<'?8128>) -> source:IObservable<'?8129> -> IObservable<Result<'?8129,'?8128>>
    + Type parameters: '?8127, '?8128, '?8129
    @@ -629,10 +629,10 @@

    Functions and values

    - + catchSeq(sources) -
    +
    Signature: sources:seq<IObservable<'T>> -> IObservable<'T>
    Type parameters: 'T
    - + catchWith handler source -
    - Signature: handler:('?8133 -> IObservable<'?8134>) -> source:IObservable<'?8134> -> IObservable<'?8134>
    - Type parameters: '?8133, '?8134
    +
    + Signature: handler:('?8131 -> IObservable<'?8132>) -> source:IObservable<'?8132> -> IObservable<'?8132>
    + Type parameters: '?8131, '?8132
    @@ -668,15 +668,15 @@

    Functions and values

    - + choose f source -
    +
    Signature: f:('?8850 -> '?8851 option) -> source:IObservable<'?8850> -> IObservable<'?8851>
    Type parameters: '?8850, '?8851
    - + @@ -692,10 +692,10 @@

    Functions and values

    - + chunkify(source) -
    +
    Signature: source:IObservable<'Source> -> seq<IList<'Source>>
    Type parameters: 'Source
    - + collect map source -
    +
    Signature: map:('Source -> IObservable<'Result>) -> source:seq<'Source> -> IObservable<'Result>
    Type parameters: 'Source, 'Result
    - + collectMerge newCollector merge source -
    - Signature: newCollector:(unit -> '?8145) -> merge:('?8145 -> '?8146 -> '?8145) -> source:IObservable<'?8146> -> IEnumerable<'?8145>
    - Type parameters: '?8145, '?8146
    +
    + Signature: newCollector:(unit -> '?8143) -> merge:('?8143 -> '?8144 -> '?8143) -> source:IObservable<'?8144> -> IEnumerable<'?8143>
    + Type parameters: '?8143, '?8144
    @@ -751,12 +751,12 @@

    Functions and values

    - + collectMergeInit(...) -
    - Signature: getInitialCollector:(unit -> '?8148) -> merge:('?8148 -> '?8149 -> '?8148) -> getNewCollector:('?8148 -> '?8148) -> source:IObservable<'?8149> -> IEnumerable<'?8148>
    - Type parameters: '?8148, '?8149
    +
    + Signature: getInitialCollector:(unit -> '?8146) -> merge:('?8146 -> '?8147 -> '?8146) -> getNewCollector:('?8146 -> '?8146) -> source:IObservable<'?8147> -> IEnumerable<'?8146>
    + Type parameters: '?8146, '?8147
    @@ -773,10 +773,10 @@

    Functions and values

    - + combineLatest source1 source2 -
    +
    Signature: source1:IObservable<'T1> -> source2:IObservable<'T2> -> IObservable<'T1 * 'T2>
    Type parameters: 'T1, 'T2
    - + combineLatestArray(source) -
    +
    Signature: source:IObservable<'T> [] -> IObservable<IList<'T>>
    Type parameters: 'T
    - + combineLatestSeq(source) -
    +
    Signature: source:seq<IObservable<'T>> -> IObservable<IList<'T>>
    Type parameters: 'T
    - + combineLatestSeqMap map source -
    +
    Signature: map:(IList<'T> -> 'Result) -> source:seq<IObservable<'T>> -> IObservable<'Result>
    Type parameters: 'T, 'Result
    - + concat second first -
    +
    Signature: second:IObservable<'T> -> first:IObservable<'T> -> IObservable<'T>
    Type parameters: 'T
    - + concatArray(sources) -
    +
    Signature: sources:IObservable<'T> [] -> IObservable<'T>
    Type parameters: 'T
    - + concatInner(sources) -
    +
    Signature: sources:IObservable<IObservable<'T>> -> IObservable<'T>
    Type parameters: 'T
    - + concatSeq(sources) -
    +
    Signature: sources:seq<IObservable<'T>> -> IObservable<'T>
    Type parameters: 'T
    - + concatTasks(sources) -
    +
    Signature: sources:IObservable<Task<'T>> -> IObservable<'T>
    Type parameters: 'T
    - + connect(source) -
    - Signature: source:IConnectableObservable<'?8171> -> IDisposable
    - Type parameters: '?8171
    +
    + Signature: source:IConnectableObservable<'?8169> -> IDisposable
    + Type parameters: '?8169
    @@ -976,15 +976,15 @@

    Functions and values

    - + consume consumer source -
    - Signature: consumer:IObservable<'?8880> -> source:IObservable<'?8881> -> IObservable<'?8880>
    - Type parameters: '?8880, '?8881
    +
    + Signature: consumer:IObservable<'?8879> -> source:IObservable<'?8880> -> IObservable<'?8879>
    + Type parameters: '?8879, '?8880
    - + @@ -1023,15 +1023,15 @@

    Returns

    - + consumeMap f source -
    +
    Signature: f:('a -> IObservable<'b>) -> source:IObservable<'a> -> IObservable<'b>
    Type parameters: 'a, 'b
    - + @@ -1070,15 +1070,15 @@

    Returns

    - + consumeNext f source -
    - Signature: f:('?8886 -> '?8887 option) -> source:IObservable<'?8886> -> IObservable<'?8887>
    - Type parameters: '?8886, '?8887
    +
    + Signature: f:('?8885 -> '?8886 option) -> source:IObservable<'?8885> -> IObservable<'?8886>
    + Type parameters: '?8885, '?8886
    - + @@ -1117,15 +1117,15 @@

    Returns

    - + consumeNextOn sch f source -
    - Signature: sch:IScheduler -> f:('?8883 -> '?8884 option) -> source:IObservable<'?8883> -> IObservable<'?8884>
    - Type parameters: '?8883, '?8884
    +
    + Signature: sch:IScheduler -> f:('?8882 -> '?8883 option) -> source:IObservable<'?8882> -> IObservable<'?8883>
    + Type parameters: '?8882, '?8883
    - + @@ -1164,12 +1164,12 @@

    Returns

    - + contains value source -
    - Signature: value:'?8173 -> source:IObservable<'?8173> -> IObservable<bool>
    - Type parameters: '?8173
    +
    + Signature: value:'?8171 -> source:IObservable<'?8171> -> IObservable<bool>
    + Type parameters: '?8171
    @@ -1184,12 +1184,12 @@

    Returns

    - + containsCompare comparer value source -
    - Signature: comparer:IEqualityComparer<'?8175> -> value:'?8175 -> source:IObservable<'?8175> -> IObservable<bool>
    - Type parameters: '?8175
    +
    + Signature: comparer:IEqualityComparer<'?8173> -> value:'?8173 -> source:IObservable<'?8173> -> IObservable<bool>
    + Type parameters: '?8173
    @@ -1204,12 +1204,12 @@

    Returns

    - + count(source) -
    - Signature: source:IObservable<'?8177> -> IObservable<int>
    - Type parameters: '?8177
    +
    + Signature: source:IObservable<'?8175> -> IObservable<int>
    + Type parameters: '?8175
    @@ -1223,12 +1223,12 @@

    Returns

    - + countSatisfy predicate source -
    - Signature: predicate:('?8179 -> bool) -> source:IObservable<'?8179> -> IObservable<int>
    - Type parameters: '?8179
    +
    + Signature: predicate:('?8177 -> bool) -> source:IObservable<'?8177> -> IObservable<int>
    + Type parameters: '?8177
    @@ -1243,10 +1243,10 @@

    Returns

    - + defaultIfEmpty(source) -
    +
    Signature: source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + defaultIfEmptyIs defaultValue source -
    +
    Signature: defaultValue:'Source -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + defer(observableFactory) -
    +
    Signature: observableFactory:(unit -> IObservable<'Result>) -> IObservable<'Result>
    Type parameters: 'Result
    - + delay dueTime source -
    +
    Signature: dueTime:TimeSpan -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + delayMap delayDurationSelector source -
    +
    Signature: delayDurationSelector:('Source -> IObservable<'TDelay>) -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source, 'TDelay
    - + delayMapFilter(...) -
    +
    Signature: delayDurationSelector:('Source -> IObservable<'TDelay>) -> subscriptionDelay:IObservable<'TDelay> -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source, 'TDelay
    - + delayOn scheduler dueTime source -
    - Signature: scheduler:IScheduler -> dueTime:TimeSpan -> source:IObservable<'?8189> -> IObservable<'?8189>
    - Type parameters: '?8189
    +
    + Signature: scheduler:IScheduler -> dueTime:TimeSpan -> source:IObservable<'?8187> -> IObservable<'?8187>
    + Type parameters: '?8187
    @@ -1380,10 +1380,10 @@

    Returns

    - + delaySubscription dueTime source -
    +
    Signature: dueTime:TimeSpan -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + delaySubscriptionOn(...) -
    - Signature: scheduler:IScheduler -> dueTime:TimeSpan -> source:IObservable<'?8203> -> IObservable<'?8203>
    - Type parameters: '?8203
    +
    + Signature: scheduler:IScheduler -> dueTime:TimeSpan -> source:IObservable<'?8201> -> IObservable<'?8201>
    + Type parameters: '?8201
    @@ -1419,10 +1419,10 @@

    Returns

    - + delaySubscriptionUntil dueTime source -
    +
    Signature: dueTime:DateTimeOffset -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + delaySubscriptionUntilOn(...) -
    - Signature: scheduler:IScheduler -> dueTime:DateTimeOffset -> source:IObservable<'?8207> -> IObservable<'?8207>
    - Type parameters: '?8207
    +
    + Signature: scheduler:IScheduler -> dueTime:DateTimeOffset -> source:IObservable<'?8205> -> IObservable<'?8205>
    + Type parameters: '?8205
    @@ -1458,10 +1458,10 @@

    Returns

    - + delayUntil source dueTime -
    +
    Signature: source:IObservable<'Source> -> dueTime:DateTimeOffset -> IObservable<'Source>
    Type parameters: 'Source
    - + delayUntilOn scheduler dueTime source -
    - Signature: scheduler:IScheduler -> dueTime:DateTimeOffset -> source:IObservable<'?8193> -> IObservable<'?8193>
    - Type parameters: '?8193
    +
    + Signature: scheduler:IScheduler -> dueTime:DateTimeOffset -> source:IObservable<'?8191> -> IObservable<'?8191>
    + Type parameters: '?8191
    @@ -1499,12 +1499,12 @@

    Returns

    - + dematerialize(source) -
    - Signature: source:IObservable<Notification<'?8209>> -> IObservable<'?8209>
    - Type parameters: '?8209
    +
    + Signature: source:IObservable<Notification<'?8207>> -> IObservable<'?8207>
    + Type parameters: '?8207
    @@ -1518,10 +1518,10 @@

    Returns

    - + distinct(source) -
    +
    Signature: source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + distinctCompare comparer source -
    +
    Signature: comparer:IEqualityComparer<'Source> -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + distinctKey keySelector source -
    +
    Signature: keySelector:('Source -> 'Key) -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source, 'Key
    - + distinctKeyCompare(...) -
    +
    Signature: keySelector:('Source -> 'Key) -> comparer:IEqualityComparer<'Key> -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source, 'Key
    - + distinctUntilChanged(source) -
    +
    Signature: source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + distinctUntilChangedCompare(...) -
    +
    Signature: comparer:IEqualityComparer<'Source> -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + distinctUntilChangedKey(...) -
    +
    Signature: keySelector:('Source -> 'Key) -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source, 'Key
    - + distinctUntilChangedKeyCompare(...) -
    +
    Signature: keySelector:('Source -> 'Key) -> comparer:IEqualityComparer<'Key> -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source, 'Key
    - + elementAt index source -
    +
    Signature: index:int -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + elementAtOrDefault index source -
    +
    Signature: index:int -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + empty -
    +
    Signature: IObservable<'T>
    Type parameters: 'T
    - + @@ -1727,15 +1727,15 @@

    Returns

    - + emptyCompleted(scheduler) -
    +
    Signature: scheduler:IScheduler -> IObservable<'?8239>
    Type parameters: '?8239
    - + @@ -1746,15 +1746,15 @@

    Returns

    - + emptyCompletedWitness scheduler witness -
    +
    Signature: scheduler:IScheduler -> witness:'?8241 -> IObservable<'?8241>
    Type parameters: '?8241
    - + @@ -1765,15 +1765,15 @@

    Returns

    - + emptyWitness(witness) -
    +
    Signature: witness:'T -> IObservable<'T>
    Type parameters: 'T
    - + @@ -1784,15 +1784,15 @@

    Returns

    - + equals first second -
    +
    Signature: first:IObservable<'Source> -> second:IObservable<'Source> -> IObservable<bool>
    Type parameters: 'Source
    - + @@ -1803,15 +1803,15 @@

    Returns

    - + equalsComparer comparer first second -
    +
    Signature: comparer:IEqualityComparer<'Source> -> first:IObservable<'Source> -> second:IObservable<'Source> -> IObservable<bool>
    Type parameters: 'Source
    - + @@ -1822,15 +1822,15 @@

    Returns

    - + equalsSeq first second -
    +
    Signature: first:IObservable<'Source> -> second:seq<'Source> -> IObservable<bool>
    Type parameters: 'Source
    - + @@ -1841,15 +1841,15 @@

    Returns

    - + equalsSeqComparer comparer first second -
    +
    Signature: comparer:IEqualityComparer<'Source> -> first:IObservable<'Source> -> second:seq<'Source> -> IObservable<bool>
    Type parameters: 'Source
    - + @@ -1860,15 +1860,15 @@

    Returns

    - + error(e) -
    +
    Signature: e:exn -> IObservable<'?8251>
    Type parameters: '?8251
    - + @@ -1877,15 +1877,15 @@

    Returns

    - + exhaustMap f source -
    - Signature: f:('?8857 -> '?8858) -> source:IObservable<'?8857> -> IObservable<'?8859>
    - Type parameters: '?8857, '?8858, '?8859
    +
    + Signature: f:('?8856 -> '?8857) -> source:IObservable<'?8856> -> IObservable<'?8858>
    + Type parameters: '?8856, '?8857, '?8858
    - + @@ -1904,15 +1904,15 @@

    Returns

    - + exists predicate source -
    +
    Signature: predicate:('?8253 -> bool) -> source:IObservable<'?8253> -> IObservable<bool>
    Type parameters: '?8253
    - + @@ -1924,15 +1924,15 @@

    Returns

    - + filter predicate source -
    +
    Signature: predicate:('T -> bool) -> source:IObservable<'T> -> IObservable<'T>
    Type parameters: 'T
    - + @@ -1943,15 +1943,15 @@

    Returns

    - + filteri predicate source -
    +
    Signature: predicate:(int -> 'T -> bool) -> source:IObservable<'T> -> IObservable<'T>
    Type parameters: 'T
    - + @@ -1963,35 +1963,35 @@

    Returns

    - + finallyDo finallyAction source -
    +
    Signature: finallyAction:(unit -> unit) -> source:IObservable<'?8259> -> IObservable<'?8259>
    Type parameters: '?8259
    - +

    Invokes a specified action after the source observable sequence -terminates gracefully of exceptionally

    +terminates gracefully or exceptionally

    - + first(source) -
    +
    Signature: source:IObservable<'T> -> IObservable<'T>
    Type parameters: 'T
    - + @@ -2002,15 +2002,15 @@

    Returns

    - + firstIf predicate source -
    +
    Signature: predicate:('T -> bool) -> source:IObservable<'T> -> IObservable<'T>
    Type parameters: 'T
    - + @@ -2022,15 +2022,15 @@

    Returns

    - + flatmap map source -
    +
    Signature: map:('S -> IObservable<'R>) -> source:IObservable<'S> -> IObservable<'R>
    Type parameters: 'S, 'R
    - + @@ -2042,15 +2042,15 @@

    Returns

    - + flatmapAsync asyncOperation source -
    +
    Signature: asyncOperation:('Source -> Async<'?8283>) -> source:IObservable<'Source> -> IObservable<'?8283>
    Type parameters: 'Source, '?8283
    - + @@ -2061,15 +2061,15 @@

    Returns

    - + flatmapOther other source -
    +
    Signature: other:IObservable<'Other> -> source:IObservable<'Source> -> IObservable<'Other>
    Type parameters: 'Other, 'Source
    - + @@ -2081,15 +2081,15 @@

    Returns

    - + flatmapSeq map source -
    +
    Signature: map:('Source -> seq<'Result>) -> source:IObservable<'Source> -> IObservable<'Result>
    Type parameters: 'Source, 'Result
    - + @@ -2101,15 +2101,15 @@

    Returns

    - + flatmapTask map source -
    +
    Signature: map:('Source -> Task<'Result>) -> source:IObservable<'Source> -> IObservable<'Result>
    Type parameters: 'Source, 'Result
    - + @@ -2120,15 +2120,15 @@

    Returns

    - + fold accumulator init source -
    +
    Signature: accumulator:('?8285 -> '?8286 -> '?8285) -> init:'?8285 -> source:IObservable<'?8286> -> IObservable<'?8285>
    Type parameters: '?8285, '?8286
    - + @@ -2141,15 +2141,15 @@

    Returns

    - + foldMap accumulator init map source -
    +
    Signature: accumulator:('?8288 -> '?8289 -> '?8288) -> init:'?8288 -> map:('?8288 -> '?8290) -> source:IObservable<'?8289> -> IObservable<'?8290>
    Type parameters: '?8288, '?8289, '?8290
    - + @@ -2162,15 +2162,15 @@

    Returns

    - + fromEvent addHandler removeHandler -
    +
    Signature: addHandler:('Delegate -> unit) -> removeHandler:('Delegate -> unit) -> IObservable<unit>
    Type parameters: 'Delegate
    - + @@ -2182,15 +2182,15 @@

    Returns

    - + fromEventConversion(...) -
    +
    Signature: conversion:(('EventArgs -> unit) -> 'Delegate) -> addHandler:('Delegate -> unit) -> removeHandler:('Delegate -> unit) -> IObservable<'EventArgs>
    Type parameters: 'EventArgs, 'Delegate
    - + @@ -2203,15 +2203,15 @@

    Returns

    - + fromEventConversionOn(...) -
    +
    Signature: scheduler:IScheduler -> conversion:(EventHandler<'TEventArgs> -> 'TDelegate) -> addHandler:('TDelegate -> unit) -> removeHandler:('TDelegate -> unit) -> IObservable<EventPattern<'TEventArgs>>
    Type parameters: 'TEventArgs, 'TDelegate
    - + @@ -2224,15 +2224,15 @@

    Returns

    - + fromEventGeneric(...) -
    +
    Signature: addHandler:(('TEventArgs -> unit) -> unit) -> removeHandler:(('TEventArgs -> unit) -> unit) -> IObservable<'TEventArgs>
    Type parameters: 'TEventArgs
    - + @@ -2244,15 +2244,15 @@

    Returns

    - + fromEventGenericOn(...) -
    +
    Signature: scheduler:IScheduler -> addHandler:(('TEventArgs -> unit) -> unit) -> removeHandler:(('TEventArgs -> unit) -> unit) -> IObservable<'?8298>
    Type parameters: 'TEventArgs, '?8298
    - + @@ -2264,15 +2264,15 @@

    Returns

    - + fromEventHandler(...) -
    +
    Signature: addHandler:(EventHandler<'EventArgs> -> unit) -> removeHandler:(EventHandler<'EventArgs> -> unit) -> IObservable<'EventArgs>
    Type parameters: 'EventArgs
    - + @@ -2284,15 +2284,15 @@

    Returns

    - + fromEventHandlerOn(...) -
    +
    Signature: scheduler:IScheduler -> addHandler:(EventHandler<'EventArgs> -> unit) -> removeHandler:(EventHandler<'EventArgs> -> unit) -> IObservable<EventPattern<'EventArgs>>
    Type parameters: 'EventArgs
    - + @@ -2304,15 +2304,15 @@

    Returns

    - + fromEventOn(...) -
    +
    Signature: scheduler:IScheduler -> addHandler:(Action -> unit) -> removeHandler:(Action -> unit) -> IObservable<Unit>
    - + @@ -2324,15 +2324,15 @@

    Returns

    - + fromEventPattern eventName target -
    +
    Signature: eventName:string -> target:obj -> IObservable<EventPattern<obj>>
    - + @@ -2343,15 +2343,15 @@

    Returns

    - + generate(...) -
    +
    Signature: initialState:'State -> condition:('State -> bool) -> iterator:('State -> 'State) -> resultMap:('State -> 'Result) -> IObservable<'Result>
    Type parameters: 'State, 'Result
    - + @@ -2362,15 +2362,15 @@

    Returns

    - + generateOn(...) -
    +
    Signature: scheduler:IScheduler -> initialState:'State -> condition:('State -> bool) -> iterator:('State -> 'State) -> resultMap:('State -> 'TResult) -> IObservable<'TResult>
    Type parameters: 'State, 'TResult
    - + @@ -2381,15 +2381,15 @@

    Returns

    - + generateTimed(...) -
    +
    Signature: initialState:'State -> condition:('State -> bool) -> iterate:('State -> 'State) -> resultMap:('State -> 'Result) -> timeSelector:('State -> DateTimeOffset) -> IObservable<'Result>
    Type parameters: 'State, 'Result
    - + @@ -2400,15 +2400,15 @@

    Returns

    - + generateTimedOn(...) -
    +
    Signature: scheduler:IScheduler -> initialState:'State -> condition:('State -> bool) -> iterate:('State -> 'State) -> resultMap:('State -> 'Result) -> timeSelector:('State -> DateTimeOffset) -> IObservable<'Result>
    Type parameters: 'State, 'Result
    - + @@ -2420,15 +2420,15 @@

    Returns

    - + generateTimeSpan(...) -
    +
    Signature: initialState:'State -> condition:('State -> bool) -> iterate:('State -> 'State) -> resultMap:('State -> 'Result) -> genTime:('State -> TimeSpan) -> IObservable<'Result>
    Type parameters: 'State, 'Result
    - + @@ -2439,15 +2439,15 @@

    Returns

    - + generateTimeSpanOn(...) -
    +
    Signature: scheduler:IScheduler -> initialState:'State -> condition:('State -> bool) -> iterate:('State -> 'State) -> resultMap:('State -> 'Result) -> genTime:('State -> TimeSpan) -> IObservable<'Result>
    Type parameters: 'State, 'Result
    - + @@ -2459,15 +2459,15 @@

    Returns

    - + getEnumerator(source) -
    +
    Signature: source:IObservable<'?8329> -> IEnumerator<'?8329>
    Type parameters: '?8329
    - + @@ -2478,15 +2478,15 @@

    Returns

    - + groupBy keySelector source -
    +
    Signature: keySelector:('Source -> 'Key) -> source:IObservable<'Source> -> IObservable<IGroupedObservable<'Key,'Source>>
    Type parameters: 'Source, 'Key
    - + @@ -2497,15 +2497,15 @@

    Returns

    - + groupByCapacityElement(...) -
    +
    Signature: keySelector:('Source -> 'Key) -> capacity:int -> elementSelector:('Source -> 'Element) -> source:IObservable<'Source> -> IObservable<IGroupedObservable<'Key,'Element>>
    Type parameters: 'Source, 'Key, 'Element
    - + @@ -2517,15 +2517,15 @@

    Returns

    - + groupByCompare(...) -
    +
    Signature: keySelector:('?8334 -> '?8335) -> comparer:IEqualityComparer<'?8335> -> source:IObservable<'?8334> -> IObservable<IGroupedObservable<'?8335,'?8334>>
    Type parameters: '?8334, '?8335
    - + @@ -2536,15 +2536,15 @@

    Returns

    - + groupByCompareElement(...) -
    +
    Signature: keySelector:('Source -> 'Key) -> comparer:IEqualityComparer<'Key> -> elementSelector:('Source -> 'Element) -> source:IObservable<'Source> -> IObservable<IGroupedObservable<'Key,'Element>>
    Type parameters: 'Source, 'Key, 'Element
    - + @@ -2556,15 +2556,15 @@

    Returns

    - + groupByComparerElementUntil(...) -
    +
    Signature: keySelector:('Source -> 'Key) -> comparer:IEqualityComparer<'Key> -> elementSelector:('Source -> 'Element) -> durationSelector:(IGroupedObservable<'Key,'Element> -> IObservable<'TDuration>) -> source:IObservable<'Source> -> IObservable<IGroupedObservable<'Key,'Element>>
    Type parameters: 'Source, 'Key, 'Element, 'TDuration
    - + @@ -2579,15 +2579,15 @@

    Returns

    - + groupByComparerUntil(...) -
    +
    Signature: keySelector:('Source -> 'Key) -> comparer:IEqualityComparer<'Key> -> durationSelector:(IGroupedObservable<'Key,'Source> -> IObservable<'TDuration>) -> source:IObservable<'Source> -> IObservable<IGroupedObservable<'Key,'Source>>
    Type parameters: 'Source, 'Key, 'TDuration
    - + @@ -2601,15 +2601,15 @@

    Returns

    - + groupByElement(...) -
    +
    Signature: keySelector:('Source -> 'Key) -> elementSelector:('Source -> 'Element) -> source:IObservable<'Source> -> IObservable<IGroupedObservable<'Key,'Element>>
    Type parameters: 'Source, 'Key, 'Element
    - + @@ -2620,15 +2620,15 @@

    Returns

    - + groupByElementUntil(...) -
    +
    Signature: keySelector:('Source -> 'Key) -> elementSelector:('Source -> 'Element) -> durationSelector:(IGroupedObservable<'Key,'Element> -> IObservable<'TDuration>) -> source:IObservable<'Source> -> IObservable<IGroupedObservable<'Key,'Element>>
    Type parameters: 'Source, 'Key, 'Element, 'TDuration
    - + @@ -2643,15 +2643,15 @@

    Returns

    - + groupByUntil(...) -
    +
    Signature: keySelector:('Source -> 'Key) -> durationSelector:(IGroupedObservable<'Key,'Source> -> IObservable<'TDuration>) -> source:IObservable<'Source> -> IObservable<IGroupedObservable<'Key,'Source>>
    Type parameters: 'Source, 'Key, 'TDuration
    - + @@ -2665,15 +2665,15 @@

    Returns

    - + groupJoin(...) -
    +
    Signature: left:IObservable<'Left> -> right:IObservable<'Right> -> leftselect:('Left -> IObservable<'a>) -> rightselect:('Right -> IObservable<'b>) -> resultselect:('Left -> IObservable<'Right> -> 'Result) -> IObservable<'Result>
    Type parameters: 'Left, 'Right, 'a, 'b, 'Result
    - + @@ -2685,15 +2685,15 @@

    Returns

    - + guard f source -
    +
    Signature: f:(unit -> unit) -> source:IObservable<'Args> -> IObservable<'Args>
    Type parameters: 'Args
    - + @@ -2706,15 +2706,15 @@

    Returns

    - + head(obs) -
    +
    Signature: obs:IObservable<'?8375> -> IObservable<'?8375>
    Type parameters: '?8375
    - + @@ -2725,15 +2725,34 @@

    Returns

    - + + ignoreElements(source) + +
    + Signature: source:IObservable<'?8233> -> IObservable<'?8233>
    + Type parameters: '?8233
    +
    + + + + +

    Ignores all elements in an observable sequence leaving only the completed/error notifications

    + + +
    + infinite() -
    +
    Signature: unit -> IObservable<'?8467>
    Type parameters: '?8467
    - + @@ -2745,15 +2764,15 @@

    Returns

    - + interval(period) -
    +
    Signature: period:TimeSpan -> IObservable<int64>
    - + @@ -2764,15 +2783,15 @@

    Returns

    - + intervalOn scheduler period -
    +
    Signature: scheduler:IScheduler -> period:TimeSpan -> IObservable<int64>
    - + @@ -2783,15 +2802,15 @@

    Returns

    - + isEmpty(source) -
    +
    Signature: source:IObservable<'?8379> -> IObservable<bool>
    Type parameters: '?8379
    - + @@ -2803,15 +2822,15 @@

    Returns

    - + iter onNext source -
    +
    Signature: onNext:('Source -> unit) -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -2824,15 +2843,15 @@

    Returns

    - + iterEnd onNext onCompleted source -
    +
    Signature: onNext:('Source -> unit) -> onCompleted:(unit -> unit) -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -2846,15 +2865,15 @@

    Returns

    - + iterError onNext onError source -
    +
    Signature: onNext:('Source -> unit) -> onError:(exn -> unit) -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -2868,15 +2887,15 @@

    Returns

    - + iterErrorEnd(...) -
    +
    Signature: onNext:('Source -> unit) -> onError:(exn -> unit) -> onCompleted:(unit -> unit) -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -2890,15 +2909,15 @@

    Returns

    - + iterObserver observer source -
    +
    Signature: observer:IObserver<'Source> -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -2911,15 +2930,15 @@

    Returns

    - + join right f left -
    +
    Signature: right:IObservable<'?8391> -> f:('?8392 -> '?8391 -> '?8393) -> left:IObservable<'?8392> -> IObservable<'?8393>
    Type parameters: '?8391, '?8392, '?8393
    - + @@ -2930,15 +2949,15 @@

    Returns

    - + joinMap right fLeft fRight fResult left -
    +
    Signature: right:IObservable<'?8395> -> fLeft:('?8396 -> IObservable<'?8397>) -> fRight:('?8395 -> IObservable<'?8398>) -> fResult:('?8396 -> '?8395 -> '?8399) -> left:IObservable<'?8396> -> IObservable<'?8399>
    Type parameters: '?8395, '?8396, '?8397, '?8398, '?8399
    - + @@ -2949,15 +2968,15 @@

    Returns

    - + joinWhen(plans) -
    +
    Signature: plans:seq<Plan<'T>> -> IObservable<'T>
    Type parameters: 'T
    - + @@ -2968,15 +2987,15 @@

    Returns

    - + last(source) -
    +
    Signature: source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -2987,15 +3006,15 @@

    Returns

    - + lastIf predicate source -
    +
    Signature: predicate:('Source -> bool) -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -3006,15 +3025,15 @@

    Returns

    - + latest(source) -
    +
    Signature: source:IObservable<'?8407> -> IEnumerable<'?8407>
    Type parameters: '?8407
    - + @@ -3027,15 +3046,15 @@

    Returns

    - + liftAsync(asyncOperation) -
    +
    Signature: asyncOperation:('?8279 -> Async<'?8280>) -> '?8279 -> IObservable<'?8280>
    Type parameters: '?8279, '?8280
    - + @@ -3046,15 +3065,15 @@

    Returns

    - + log prefix source -
    +
    Signature: prefix:string -> source:IObservable<'?8493> -> IObservable<'?8493>
    Type parameters: '?8493
    - + @@ -3065,15 +3084,15 @@

    Returns

    - + logTo prefix f source -
    +
    Signature: prefix:string -> f:(string -> unit) -> source:IObservable<'?8491> -> IObservable<'?8491>
    Type parameters: '?8491
    - + @@ -3084,15 +3103,15 @@

    Returns

    - + longCount(source) -
    +
    Signature: source:IObservable<'?8409> -> IObservable<int64>
    Type parameters: '?8409
    - + @@ -3104,15 +3123,15 @@

    Returns

    - + longCountSatisfy predicate source -
    +
    Signature: predicate:('?8411 -> bool) -> source:IObservable<'?8411> -> IObservable<int64>
    Type parameters: '?8411
    - + @@ -3124,15 +3143,15 @@

    Returns

    - + map f source -
    +
    Signature: f:('?8413 -> '?8414) -> source:IObservable<'?8413> -> IObservable<'?8414>
    Type parameters: '?8413, '?8414
    - + @@ -3143,15 +3162,15 @@

    Returns

    - + map2 f a b -
    +
    Signature: f:IObservable<('?8419 -> '?8420 -> '?8421)> -> a:IObservable<'?8419> -> b:IObservable<'?8420> -> IObservable<'?8421>
    Type parameters: '?8419, '?8420, '?8421
    - + @@ -3162,15 +3181,15 @@

    Returns

    - + mapFold f init source -
    +
    Signature: f:('TState -> 'T -> 'TResult * 'TState) -> init:'TState -> source:IObservable<'T> -> IObservable<'TResult list * 'TState>
    Type parameters: 'TState, 'T, 'TResult
    - + @@ -3182,15 +3201,15 @@

    Returns

    - + mapi f source -
    +
    Signature: f:(int -> 'Source -> 'Result) -> source:IObservable<'Source> -> IObservable<'Result>
    Type parameters: 'Source, 'Result
    - + @@ -3202,15 +3221,15 @@

    Returns

    - + mapTo x source -
    +
    Signature: x:'?8427 -> source:IObservable<'T> -> IObservable<'?8427>
    Type parameters: '?8427, 'T
    - + @@ -3221,15 +3240,15 @@

    Returns

    - + mapToLazy xLazy source -
    +
    Signature: xLazy:Lazy<'T> -> source:IObservable<'T> -> IObservable<'T>
    Type parameters: 'T
    - + @@ -3240,15 +3259,15 @@

    Returns

    - + materialize(source) -
    +
    Signature: source:IObservable<'?8432> -> IObservable<Notification<'?8432>>
    Type parameters: '?8432
    - + @@ -3260,15 +3279,15 @@

    Returns

    - + maxOf(source) -
    +
    Signature: source:IObservable<'T> -> IObservable<'T>
    Type parameters: 'T
    - + @@ -3279,15 +3298,15 @@

    Returns

    - + merge second first -
    +
    Signature: second:IObservable<'T> -> first:IObservable<'T> -> IObservable<'T>
    Type parameters: 'T
    - + @@ -3298,15 +3317,15 @@

    Returns

    - + mergeArray(sources) -
    +
    Signature: sources:IObservable<'T> [] -> IObservable<'T>
    Type parameters: 'T
    - + @@ -3317,15 +3336,15 @@

    Returns

    - + mergeArrayOn scheduler sources -
    +
    Signature: scheduler:IScheduler -> sources:IObservable<'T> [] -> IObservable<'T>
    Type parameters: 'T
    - + @@ -3337,15 +3356,15 @@

    Returns

    - + mergeInner(sources) -
    +
    Signature: sources:IObservable<IObservable<'T>> -> IObservable<'T>
    Type parameters: 'T
    - + @@ -3357,15 +3376,15 @@

    Returns

    - + mergeInnerMax maxConcurrent sources -
    +
    Signature: maxConcurrent:int -> sources:IObservable<IObservable<'T>> -> IObservable<'T>
    Type parameters: 'T
    - + @@ -3378,15 +3397,15 @@

    Returns

    - + mergeOn scheduler second first -
    +
    Signature: scheduler:IScheduler -> second:IObservable<'T> -> first:IObservable<'T> -> IObservable<'T>
    Type parameters: 'T
    - + @@ -3397,15 +3416,15 @@

    Returns

    - + mergeSeq(sources) -
    +
    Signature: sources:seq<IObservable<'T>> -> IObservable<'T>
    Type parameters: 'T
    - + @@ -3416,15 +3435,15 @@

    Returns

    - + mergeSeqMax maxConcurrent sources -
    +
    Signature: maxConcurrent:int -> sources:seq<IObservable<'T>> -> IObservable<'T>
    Type parameters: 'T
    - + @@ -3436,15 +3455,15 @@

    Returns

    - + mergeSeqMaxOn(...) -
    +
    Signature: scheduler:IScheduler -> maxConcurrent:int -> sources:seq<IObservable<'T>> -> IObservable<'T>
    Type parameters: 'T
    - + @@ -3457,15 +3476,15 @@

    Returns

    - + mergeSeqOn scheduler sources -
    +
    Signature: scheduler:IScheduler -> sources:seq<IObservable<'T>> -> IObservable<'T>
    Type parameters: 'T
    - + @@ -3477,15 +3496,15 @@

    Returns

    - + mergeTasks(sources) -
    +
    Signature: sources:IObservable<Task<'T>> -> IObservable<'T>
    Type parameters: 'T
    - + @@ -3496,15 +3515,15 @@

    Returns

    - + mostRecent initialVal source -
    +
    Signature: initialVal:'?8458 -> source:IObservable<'?8458> -> IEnumerable<'?8458>
    Type parameters: '?8458
    - + @@ -3517,15 +3536,15 @@

    Returns

    - + multicast subject source -
    +
    Signature: subject:ISubject<'?8460,'?8461> -> source:IObservable<'?8460> -> IConnectableObservable<'?8461>
    Type parameters: '?8460, '?8461
    - + @@ -3540,15 +3559,15 @@

    Returns

    - + multicastMap(...) -
    +
    Signature: subjectSelector:(unit -> ISubject<'?8463,'?8464>) -> selector:(IObservable<'?8464> -> IObservable<'?8465>) -> source:IObservable<'?8463> -> IObservable<'?8465>
    Type parameters: '?8463, '?8464, '?8465
    - + @@ -3563,15 +3582,15 @@

    Returns

    - + neverWitness(witness) -
    +
    Signature: witness:'?8469 -> IObservable<'?8469>
    Type parameters: '?8469
    - + @@ -3583,15 +3602,15 @@

    Returns

    - + next(source) -
    +
    Signature: source:IObservable<'?8471> -> IEnumerable<'?8471>
    Type parameters: '?8471
    - + @@ -3605,15 +3624,15 @@

    Returns

    - + observeOn scheduler source -
    +
    Signature: scheduler:IScheduler -> source:IObservable<'?8477> -> IObservable<'?8477>
    Type parameters: '?8477
    - + @@ -3624,15 +3643,15 @@

    Returns

    - + observeOnContext context source -
    +
    Signature: context:SynchronizationContext -> source:IObservable<'?8479> -> IObservable<'?8479>
    Type parameters: '?8479
    - + @@ -3644,15 +3663,15 @@

    Returns

    - + ofAsync(asyncOperation) -
    +
    Signature: asyncOperation:Async<'?8277> -> IObservable<'?8277>
    Type parameters: '?8277
    - + @@ -3663,15 +3682,15 @@

    Returns

    - + ofSeq(items) -
    +
    Signature: items:seq<'Item> -> IObservable<'Item>
    Type parameters: 'Item
    - + @@ -3682,15 +3701,15 @@

    Returns

    - + ofSeqOn scheduler items -
    +
    Signature: scheduler:IScheduler -> items:seq<'Item> -> IObservable<'Item>
    Type parameters: 'Item
    - + @@ -3701,15 +3720,15 @@

    Returns

    - + ofType(source) -
    +
    Signature: source:IObservable<obj> -> IObservable<'?8481>
    Type parameters: '?8481
    - + @@ -3720,15 +3739,15 @@

    Returns

    - + onErrorConcat second first -
    +
    Signature: second:IObservable<'Source> -> first:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -3740,15 +3759,15 @@

    Returns

    - + onErrorConcatArray(sources) -
    +
    Signature: sources:IObservable<'Source> [] -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -3759,15 +3778,15 @@

    Returns

    - + onErrorConcatSeq(sources) -
    +
    Signature: sources:seq<IObservable<'Source>> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -3779,15 +3798,15 @@

    Returns

    - + perform f source -
    +
    Signature: f:('?8489 -> unit) -> source:IObservable<'?8489> -> IObservable<'?8489>
    Type parameters: '?8489
    - + @@ -3798,15 +3817,15 @@

    Returns

    - + performFinally f source -
    +
    Signature: f:(unit -> unit) -> source:IObservable<'?8495> -> IObservable<'?8495>
    Type parameters: '?8495
    - + @@ -3817,15 +3836,15 @@

    Returns

    - + poll period source -
    +
    Signature: period:DateTimeOffset -> source:IObservable<Result<'?8847,'?8848>> -> IObservable<Result<'?8847,'?8848>>
    Type parameters: '?8847, '?8848
    - + @@ -3841,15 +3860,15 @@

    Returns

    - + pollOn sch period source -
    +
    Signature: sch:IScheduler -> period:DateTimeOffset -> source:IObservable<Result<'?8844,'?8845>> -> IObservable<Result<'?8844,'?8845>>
    Type parameters: '?8844, '?8845
    - + @@ -3865,15 +3884,15 @@

    Returns

    - + publish(source) -
    +
    Signature: source:IObservable<'?8497> -> IConnectableObservable<'?8497>
    Type parameters: '?8497
    - + @@ -3886,15 +3905,15 @@

    Returns

    - + publishInitial initial source -
    +
    Signature: initial:'Source -> source:IObservable<'Source> -> IConnectableObservable<'Source>
    Type parameters: 'Source
    - + @@ -3907,15 +3926,15 @@

    Returns

    - + publishInitialMap initial map source -
    +
    Signature: initial:'Source -> map:(IObservable<'Source> -> IObservable<'Result>) -> source:IObservable<'Source> -> IObservable<'Result>
    Type parameters: 'Source, 'Result
    - + @@ -3929,15 +3948,15 @@

    Returns

    - + publishLast(source) -
    +
    Signature: source:IObservable<'?8507> -> IConnectableObservable<'?8507>
    Type parameters: '?8507
    - + @@ -3951,15 +3970,15 @@

    Returns

    - + publishLastMap map source -
    +
    Signature: map:(IObservable<'Source> -> IObservable<'Result>) -> source:IObservable<'Source> -> IObservable<'Result>
    Type parameters: 'Source, 'Result
    - + @@ -3973,15 +3992,15 @@

    Returns

    - + publishMap map source -
    +
    Signature: map:(IObservable<'Source> -> IObservable<'Result>) -> source:IObservable<'Source> -> IObservable<'Result>
    Type parameters: 'Source, 'Result
    - + @@ -3995,15 +4014,15 @@

    Returns

    - + range start count -
    +
    Signature: start:int -> count:int -> IObservable<int>
    - + @@ -4014,15 +4033,15 @@

    Returns

    - + rangeOn scheduler start count -
    +
    Signature: scheduler:IScheduler -> start:int -> count:int -> IObservable<int>
    - + @@ -4033,15 +4052,15 @@

    Returns

    - + reduce f source -
    +
    Signature: f:('?8514 -> '?8514 -> '?8514) -> source:IObservable<'?8514> -> IObservable<'?8514>
    Type parameters: '?8514
    - + @@ -4052,15 +4071,15 @@

    Returns

    - + refCount(source) -
    +
    Signature: source:IConnectableObservable<'?8516> -> IObservable<'?8516>
    Type parameters: '?8516
    - + @@ -4073,15 +4092,15 @@

    Returns

    - + repeat(source) -
    +
    Signature: source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -4092,15 +4111,15 @@

    Returns

    - + repeatCount repeatCount value -
    +
    Signature: repeatCount:int -> value:'Result -> IObservable<'Result>
    Type parameters: 'Result
    - + @@ -4111,15 +4130,15 @@

    Returns

    - + repeatValue(value) -
    +
    Signature: value:'Result -> IObservable<'Result>
    Type parameters: 'Result
    - + @@ -4130,15 +4149,15 @@

    Returns

    - + repeatWhile condition source -
    +
    Signature: condition:(unit -> bool) -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -4150,15 +4169,15 @@

    Returns

    - + replay(source) -
    +
    Signature: source:IObservable<'Source> -> IConnectableObservable<'Source>
    Type parameters: 'Source
    - + @@ -4170,15 +4189,15 @@

    Returns

    - + replayBuffer bufferSize source -
    +
    Signature: bufferSize:int -> source:IObservable<'Source> -> IConnectableObservable<'Source>
    Type parameters: 'Source
    - + @@ -4190,15 +4209,15 @@

    Returns

    - + replayBufferWindow(...) -
    +
    Signature: bufferSize:int -> window:TimeSpan -> source:IObservable<'Source> -> IConnectableObservable<'Source>
    Type parameters: 'Source
    - + @@ -4209,15 +4228,15 @@

    Returns

    - + replayBufferWindowOn(...) -
    +
    Signature: scheduler:IScheduler -> bufferSize:int -> window:TimeSpan -> source:IObservable<'Source> -> IConnectableObservable<'Source>
    Type parameters: 'Source
    - + @@ -4228,15 +4247,15 @@

    Returns

    - + replayMap map source -
    +
    Signature: map:(IObservable<'Source> -> IObservable<'Result>) -> source:IObservable<'Source> -> IObservable<'Result>
    Type parameters: 'Source, 'Result
    - + @@ -4248,15 +4267,15 @@

    Returns

    - + replayMapBuffer map bufferSize source -
    +
    Signature: map:(IObservable<'Source> -> IObservable<'Result>) -> bufferSize:int -> source:IObservable<'Source> -> IObservable<'Result>
    Type parameters: 'Source, 'Result
    - + @@ -4269,15 +4288,15 @@

    Returns

    - + replayMapBufferWindow(...) -
    +
    Signature: map:(IObservable<'Source> -> IObservable<'Result>) -> bufferSize:int -> window:TimeSpan -> source:IObservable<'Source> -> IObservable<'Result>
    Type parameters: 'Source, 'Result
    - + @@ -4290,15 +4309,15 @@

    Returns

    - + replayMapBufferWindowOn(...) -
    +
    Signature: scheduler:IScheduler -> map:(IObservable<'Source> -> IObservable<'Result>) -> bufferSize:int -> window:TimeSpan -> source:IObservable<'Source> -> IObservable<'Result>
    Type parameters: 'Source, 'Result
    - + @@ -4311,15 +4330,15 @@

    Returns

    - + replayMapWindow map window source -
    +
    Signature: map:(IObservable<'Source> -> IObservable<'Result>) -> window:TimeSpan -> source:IObservable<'Source> -> IObservable<'Result>
    Type parameters: 'Source, 'Result
    - + @@ -4332,15 +4351,15 @@

    Returns

    - + replayMapWindowOn(...) -
    +
    Signature: scheduler:IScheduler -> map:(IObservable<'Source> -> IObservable<'Result>) -> window:TimeSpan -> source:IObservable<'Source> -> IObservable<'Result>
    Type parameters: 'Source, 'Result
    - + @@ -4353,15 +4372,15 @@

    Returns

    - + replayOn sch source -
    +
    Signature: sch:IScheduler -> source:IObservable<'?8528> -> IConnectableObservable<'?8528>
    Type parameters: '?8528
    - + @@ -4373,15 +4392,15 @@

    Returns

    - + replayWindow window source -
    +
    Signature: window:TimeSpan -> source:IObservable<'Source> -> IConnectableObservable<'Source>
    Type parameters: 'Source
    - + @@ -4393,15 +4412,15 @@

    Returns

    - + replayWindowOn scheduler window source -
    +
    Signature: scheduler:IScheduler -> window:TimeSpan -> source:IObservable<'Source> -> IConnectableObservable<'Source>
    Type parameters: 'Source
    - + @@ -4413,15 +4432,15 @@

    Returns

    - + result(x) -
    +
    Signature: x:'?8562 -> IObservable<'?8562>
    Type parameters: '?8562
    - + @@ -4430,15 +4449,15 @@

    Returns

    - + retry(source) -
    +
    Signature: source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -4449,15 +4468,15 @@

    Returns

    - + retryCount count source -
    +
    Signature: count:int -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -4468,15 +4487,15 @@

    Returns

    - + sample interval source -
    +
    Signature: interval:TimeSpan -> source:IObservable<'?8564> -> IObservable<'?8564>
    Type parameters: '?8564
    - + @@ -4487,15 +4506,15 @@

    Returns

    - + sampleOn scheduler interval source -
    +
    Signature: scheduler:IScheduler -> interval:TimeSpan -> source:IObservable<'?8566> -> IObservable<'?8566>
    Type parameters: '?8566
    - + @@ -4508,15 +4527,15 @@

    Returns

    - + sampleWith sampler source -
    +
    Signature: sampler:IObservable<'Sample> -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Sample, 'Source
    - + @@ -4529,15 +4548,15 @@

    Returns

    - + scan accumulator source -
    +
    Signature: accumulator:('a -> 'a -> 'a) -> source:IObservable<'a> -> IObservable<'a>
    Type parameters: 'a
    - + @@ -4548,15 +4567,15 @@

    Returns

    - + scanInit init accumulator source -
    +
    Signature: init:'TAccumulate -> accumulator:('TAccumulate -> 'Source -> 'TAccumulate) -> source:IObservable<'Source> -> IObservable<'TAccumulate>
    Type parameters: 'TAccumulate, 'Source
    - + @@ -4568,15 +4587,15 @@

    Returns

    - + selectIf condition thenSource -
    +
    Signature: condition:(unit -> bool) -> thenSource:IObservable<'?8576> -> IObservable<'?8576>
    Type parameters: '?8576
    - + @@ -4587,15 +4606,15 @@

    Returns

    - + selectIfElse(...) -
    +
    Signature: condition:(unit -> bool) -> elseSource:IObservable<'Result> -> thenSource:IObservable<'Result> -> IObservable<'Result>
    Type parameters: 'Result
    - + @@ -4606,15 +4625,15 @@

    Returns

    - + selectIfOn(...) -
    +
    Signature: scheduler:IScheduler -> condition:(unit -> bool) -> thenSource:IObservable<'?8578> -> IObservable<'?8578>
    Type parameters: '?8578
    - + @@ -4626,15 +4645,15 @@

    Returns

    - + serve max sourceFactory -
    - Signature: max:int -> sourceFactory:(unit -> '?8874) -> IObservable<'?8875>
    - Type parameters: '?8874, '?8875
    +
    + Signature: max:int -> sourceFactory:(unit -> '?8873) -> IObservable<'?8874>
    + Type parameters: '?8873, '?8874
    - + @@ -4650,15 +4669,15 @@

    Returns

    - + serveCustomOn(...) -
    - Signature: sch:IScheduler -> max:int -> callOnError:(exn -> bool) -> sourceFactory:(unit -> '?8868) -> IObservable<'?8869>
    - Type parameters: '?8868, '?8869
    +
    + Signature: sch:IScheduler -> max:int -> callOnError:(exn -> bool) -> sourceFactory:(unit -> '?8867) -> IObservable<'?8868>
    + Type parameters: '?8867, '?8868
    - + @@ -4676,15 +4695,15 @@

    Returns

    - + serveGateCustomOn(...) -
    - Signature: sch:IScheduler -> gate:'?8864 -> max:int -> callOnError:(exn -> bool) -> sourceFactory:(unit -> '?8865) -> IObservable<'?8866>
    - Type parameters: '?8864, '?8865, '?8866
    +
    + Signature: sch:IScheduler -> gate:'?8863 -> max:int -> callOnError:(exn -> bool) -> sourceFactory:(unit -> '?8864) -> IObservable<'?8865>
    + Type parameters: '?8863, '?8864, '?8865
    - + @@ -4703,15 +4722,15 @@

    Returns

    - + serveOn sch max sourceFactory -
    - Signature: sch:IScheduler -> max:int -> sourceFactory:(unit -> '?8871) -> IObservable<'?8872>
    - Type parameters: '?8871, '?8872
    +
    + Signature: sch:IScheduler -> max:int -> sourceFactory:(unit -> '?8870) -> IObservable<'?8871>
    + Type parameters: '?8870, '?8871
    - + @@ -4729,15 +4748,15 @@

    Returns

    - + single(value) -
    +
    Signature: value:'Result -> IObservable<'Result>
    Type parameters: 'Result
    - + @@ -4748,15 +4767,15 @@

    Returns

    - + singleOn scheduler value -
    +
    Signature: scheduler:IScheduler -> value:'?8584 -> IObservable<'?8584>
    Type parameters: '?8584
    - + @@ -4768,15 +4787,15 @@

    Returns

    - + skip count source -
    +
    Signature: count:int -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -4787,15 +4806,15 @@

    Returns

    - + skipLast count source -
    +
    Signature: count:int -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -4806,15 +4825,15 @@

    Returns

    - + skipLastSpan duration source -
    +
    Signature: duration:TimeSpan -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -4825,15 +4844,15 @@

    Returns

    - + skipLastSpanOn scheduler duration source -
    +
    Signature: scheduler:IScheduler -> duration:TimeSpan -> source:IObservable<'?8596> -> IObservable<'?8596>
    Type parameters: '?8596
    - + @@ -4845,15 +4864,15 @@

    Returns

    - + skipSpan duration source -
    +
    Signature: duration:TimeSpan -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -4864,15 +4883,15 @@

    Returns

    - + skipSpanOn scheduler duration source -
    +
    Signature: scheduler:IScheduler -> duration:TimeSpan -> source:IObservable<'?8590> -> IObservable<'?8590>
    Type parameters: '?8590
    - + @@ -4884,15 +4903,15 @@

    Returns

    - + skipUntil startTime source -
    +
    Signature: startTime:DateTimeOffset -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -4903,15 +4922,15 @@

    Returns

    - + skipUntilOn scheduler startTime source -
    +
    Signature: scheduler:IScheduler -> startTime:DateTimeOffset -> source:IObservable<'?8600> -> IObservable<'?8600>
    Type parameters: '?8600
    - + @@ -4923,15 +4942,15 @@

    Returns

    - + skipUntilOther other source -
    +
    Signature: other:IObservable<'Other> -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Other, 'Source
    - + @@ -4942,15 +4961,15 @@

    Returns

    - + skipWhile predicate source -
    +
    Signature: predicate:('Source -> bool) -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -4961,15 +4980,15 @@

    Returns

    - + skipWhilei predicate source -
    +
    Signature: predicate:('Source -> int -> bool) -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -4981,15 +5000,15 @@

    Returns

    - + startWith values source -
    +
    Signature: values:'?8609 -> source:IObservable<'T> -> IObservable<'T>
    Type parameters: '?8609, 'T
    - + @@ -5000,15 +5019,15 @@

    Returns

    - + startWithOn scheduler values source -
    +
    Signature: scheduler:IScheduler -> values:'?8612 -> source:IObservable<'T> -> IObservable<'T>
    Type parameters: '?8612, 'T
    - + @@ -5019,15 +5038,15 @@

    Returns

    - + subscribe onNext observable -
    +
    Signature: onNext:('T -> unit) -> observable:IObservable<'T> -> IDisposable
    Type parameters: 'T
    - + @@ -5038,15 +5057,15 @@

    Returns

    - + subscribeObserver observer observable -
    +
    Signature: observer:IObserver<'T> -> observable:IObservable<'T> -> IDisposable
    Type parameters: 'T
    - + @@ -5057,15 +5076,15 @@

    Returns

    - + subscribeOn scheduler source -
    +
    Signature: scheduler:IScheduler -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -5079,15 +5098,15 @@

    Returns

    - + subscribeOnContext context source -
    +
    Signature: context:SynchronizationContext -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -5101,15 +5120,15 @@

    Returns

    - + subscribeSafe onNext source -
    +
    Signature: onNext:('?8629 -> unit) -> source:IObservable<'?8629> -> IDisposable
    Type parameters: '?8629
    - + @@ -5121,15 +5140,15 @@

    Returns

    - + subscribeSafeObserver observer source -
    +
    Signature: observer:IObserver<'?8636> -> source:IObservable<'?8636> -> IDisposable
    Type parameters: '?8636
    - + @@ -5141,15 +5160,15 @@

    Returns

    - + subscribeSafeWithCallbacks(...) -
    +
    Signature: onNext:('?8638 -> unit) -> onError:(exn -> unit) -> onCompleted:(unit -> unit) -> source:IObservable<'?8638> -> IDisposable
    Type parameters: '?8638
    - + @@ -5161,15 +5180,15 @@

    Returns

    - + subscribeSafeWithCompletion(...) -
    +
    Signature: onNext:('?8633 -> unit) -> onCompleted:'?8634 -> source:IObservable<'?8633> -> IDisposable
    Type parameters: '?8633, '?8634
    - + @@ -5181,15 +5200,15 @@

    Returns

    - + subscribeSafeWithError(...) -
    +
    Signature: onNext:('?8631 -> unit) -> onError:(exn -> unit) -> source:IObservable<'?8631> -> IDisposable
    Type parameters: '?8631
    - + @@ -5201,15 +5220,15 @@

    Returns

    - + subscribeWithCallbacks(...) -
    +
    Signature: onNext:('T -> unit) -> onError:(exn -> unit) -> onCompleted:(unit -> unit) -> observable:IObservable<'T> -> IDisposable
    Type parameters: 'T
    - + @@ -5220,15 +5239,15 @@

    Returns

    - + subscribeWithCompletion(...) -
    +
    Signature: onNext:('T -> unit) -> onCompleted:(unit -> unit) -> observable:IObservable<'T> -> IDisposable
    Type parameters: 'T
    - + @@ -5239,15 +5258,15 @@

    Returns

    - + subscribeWithError(...) -
    +
    Signature: onNext:('T -> unit) -> onError:(exn -> unit) -> observable:IObservable<'T> -> IDisposable
    Type parameters: 'T
    - + @@ -5258,15 +5277,15 @@

    Returns

    - + switch(sources) -
    +
    Signature: sources:IObservable<IObservable<'Source>> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -5280,15 +5299,15 @@

    Returns

    - + switchAsync(sources) -
    +
    Signature: sources:IObservable<Async<'?8644>> -> IObservable<'?8644>
    Type parameters: '?8644
    - + @@ -5301,21 +5320,22 @@

    Returns

    - + switchMap f source -
    - Signature: f:('?8853 -> '?8854) -> source:IObservable<'?8853> -> IObservable<'?8855>
    - Type parameters: '?8853, '?8854, '?8855
    +
    + Signature: f:('?8853 -> IObservable<'?8854>) -> source:IObservable<'?8853> -> IObservable<'?8854>
    + Type parameters: '?8853, '?8854
    - +

    Description Projects each source value to an Observable which is merged in the output -Observable, emitting values only from the most recently projected Observable.

    +Observable, emitting values only from the most recently projected Observable. +Equivalent to a map followed by a switch.

    Returns Returns an Observable that emits items based on applying a function that you supply to each item emitted by the source Observable, where that function @@ -5331,15 +5351,15 @@

    Returns

    - + switchTask(sources) -
    +
    Signature: sources:IObservable<Task<'Source>> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -5352,15 +5372,15 @@

    Returns

    - + synchronize(source) -
    +
    Signature: source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -5373,15 +5393,15 @@

    Returns

    - + synchronizeGate gate source -
    +
    Signature: gate:obj -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -5395,15 +5415,15 @@

    Returns

    - + tail(source) -
    +
    Signature: source:IObservable<'?8650> -> IObservable<'?8650>
    Type parameters: '?8650
    - + @@ -5414,15 +5434,15 @@

    Returns

    - + take n source -
    +
    Signature: n:int -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -5433,15 +5453,15 @@

    Returns

    - + takeLast count source -
    +
    Signature: count:int -> source:IObservable<'?8660> -> IObservable<'?8660>
    Type parameters: '?8660
    - + @@ -5452,15 +5472,15 @@

    Returns

    - + takeLastBuffer duration source -
    +
    Signature: duration:TimeSpan -> source:IObservable<'Source> -> IObservable<IList<'Source>>
    Type parameters: 'Source
    - + @@ -5471,15 +5491,15 @@

    Returns

    - + takeLastBufferCount count source -
    +
    Signature: count:int -> source:IObservable<'Source> -> IObservable<IList<'Source>>
    Type parameters: 'Source
    - + @@ -5490,15 +5510,15 @@

    Returns

    - + takeLastBufferOn(...) -
    +
    Signature: scheduler:IScheduler -> duration:TimeSpan -> source:IObservable<'?8670> -> IObservable<IList<'?8670>>
    Type parameters: '?8670
    - + @@ -5510,15 +5530,15 @@

    Returns

    - + takeLastOn scheduler count source -
    +
    Signature: scheduler:IScheduler -> count:int -> source:IObservable<'?8662> -> IObservable<'?8662>
    Type parameters: '?8662
    - + @@ -5530,15 +5550,15 @@

    Returns

    - + takeLastSpan duration source -
    +
    Signature: duration:TimeSpan -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -5549,15 +5569,15 @@

    Returns

    - + takeLastSpanOn scheduler duration source -
    +
    Signature: scheduler:IScheduler -> duration:TimeSpan -> source:IObservable<'?8666> -> IObservable<'?8666>
    Type parameters: '?8666
    - + @@ -5569,15 +5589,15 @@

    Returns

    - + takeOn scheduler n source -
    +
    Signature: scheduler:IScheduler -> n:int -> source:IObservable<'?8654> -> IObservable<'?8654>
    Type parameters: '?8654
    - + @@ -5589,15 +5609,15 @@

    Returns

    - + takeSpan duration source -
    +
    Signature: duration:TimeSpan -> source:IObservable<'?8656> -> IObservable<'?8656>
    Type parameters: '?8656
    - + @@ -5608,15 +5628,15 @@

    Returns

    - + takeSpanOn scheduler duration source -
    +
    Signature: scheduler:IScheduler -> duration:TimeSpan -> source:IObservable<'?8658> -> IObservable<'?8658>
    Type parameters: '?8658
    - + @@ -5628,15 +5648,15 @@

    Returns

    - + takeUntilOther other source -
    +
    Signature: other:IObservable<'Other> -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Other, 'Source
    - + @@ -5647,15 +5667,15 @@

    Returns

    - + takeUntilTime endtime source -
    +
    Signature: endtime:DateTimeOffset -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -5666,15 +5686,15 @@

    Returns

    - + takeUntilTimeOn scheduler endtime source -
    +
    Signature: scheduler:IScheduler -> endtime:DateTimeOffset -> source:IObservable<'?8679> -> IObservable<'?8679>
    Type parameters: '?8679
    - + @@ -5686,15 +5706,15 @@

    Returns

    - + takeWhile predicate source -
    +
    Signature: predicate:('Source -> bool) -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -5705,15 +5725,15 @@

    Returns

    - + takeWhilei predicate source -
    +
    Signature: predicate:('Source -> int -> bool) -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -5725,15 +5745,15 @@

    Returns

    - + thenMap map source -
    +
    Signature: map:('Source -> 'Result) -> source:IObservable<'Source> -> Plan<'Result>
    Type parameters: 'Source, 'Result
    - + @@ -5745,15 +5765,15 @@

    Returns

    - + throttle dueTime source -
    +
    Signature: dueTime:TimeSpan -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -5764,15 +5784,15 @@

    Returns

    - + throttleComputed(...) -
    +
    Signature: throttleDurationSelector:('Source -> IObservable<'Throttle>) -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source, 'Throttle
    - + @@ -5783,15 +5803,15 @@

    Returns

    - + throttleOn scheduler dueTime source -
    +
    Signature: scheduler:IScheduler -> dueTime:TimeSpan -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -5802,15 +5822,15 @@

    Returns

    - + throw(except) -
    +
    Signature: except:exn -> IObservable<'Result>
    Type parameters: 'Result
    - + @@ -5821,15 +5841,15 @@

    Returns

    - + throwOn scheduler ex -
    +
    Signature: scheduler:IScheduler -> ex:exn -> IObservable<'?8696>
    Type parameters: '?8696
    - + @@ -5841,15 +5861,15 @@

    Returns

    - + throwWitness witness ex -
    +
    Signature: witness:'?8694 -> ex:exn -> IObservable<'?8694>
    Type parameters: '?8694
    - + @@ -5860,15 +5880,15 @@

    Returns

    - + throwWitnessOn scheduler witeness ex -
    +
    Signature: scheduler:'?8698 -> witeness:IScheduler -> ex:exn -> IObservable<'?8698>
    Type parameters: '?8698
    - + @@ -5880,15 +5900,15 @@

    Returns

    - + timeInterval(source) -
    +
    Signature: source:IObservable<'Source> -> IObservable<TimeInterval<'Source>>
    Type parameters: 'Source
    - + @@ -5899,15 +5919,15 @@

    Returns

    - + timeIntervalOn scheduler source -
    +
    Signature: scheduler:IScheduler -> source:IObservable<'?8705> -> IObservable<TimeInterval<'?8705>>
    Type parameters: '?8705
    - + @@ -5919,15 +5939,15 @@

    Returns

    - + timeout timeout source -
    +
    Signature: timeout:DateTimeOffset -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -5939,15 +5959,15 @@

    Returns

    - + timeout2Duration(...) -
    +
    Signature: timeout:IObservable<'Timeout> -> durationSelector:('Source -> IObservable<'Timeout>) -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Timeout, 'Source
    - + @@ -5961,15 +5981,15 @@

    Returns

    - + timeout2DurationOther(...) -
    +
    Signature: timeout:IObservable<'Timeout> -> durationSelector:('Source -> IObservable<'Timeout>) -> other:IObservable<'Source> -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Timeout, 'Source
    - + @@ -5983,15 +6003,15 @@

    Returns

    - + timeoutDuration durationSelector source -
    +
    Signature: durationSelector:('Source -> IObservable<'Timeout>) -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source, 'Timeout
    - + @@ -6004,15 +6024,15 @@

    Returns

    - + timeoutOn scheduler timeout source -
    +
    Signature: scheduler:IScheduler -> timeout:DateTimeOffset -> source:IObservable<'?8709> -> IObservable<'?8709>
    Type parameters: '?8709
    - + @@ -6024,15 +6044,15 @@

    Returns

    - + timeoutOther timeout other source -
    +
    Signature: timeout:DateTimeOffset -> other:IObservable<'Source> -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -6045,15 +6065,15 @@

    Returns

    - + timeoutOtherOn(...) -
    +
    Signature: scheduler:IScheduler -> timeout:DateTimeOffset -> other:IObservable<'?8713> -> source:IObservable<'?8713> -> IObservable<'?8713>
    Type parameters: '?8713
    - + @@ -6067,15 +6087,15 @@

    Returns

    - + timeoutSpan timeout source -
    +
    Signature: timeout:TimeSpan -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -6088,15 +6108,15 @@

    Returns

    - + timeoutSpanOn scheduler timeout source -
    +
    Signature: scheduler:IScheduler -> timeout:TimeSpan -> source:IObservable<'?8717> -> IObservable<'?8717>
    Type parameters: '?8717
    - + @@ -6109,15 +6129,15 @@

    Returns

    - + timeoutSpanOther timeout other source -
    +
    Signature: timeout:TimeSpan -> other:IObservable<'Source> -> source:IObservable<'Source> -> IObservable<'Source>
    Type parameters: 'Source
    - + @@ -6130,15 +6150,15 @@

    Returns

    - + timeoutSpanOtherOn(...) -
    +
    Signature: scheduler:IScheduler -> timeout:TimeSpan -> other:IObservable<'?8721> -> source:IObservable<'?8721> -> IObservable<'?8721>
    Type parameters: '?8721
    - + @@ -6151,15 +6171,15 @@

    Returns

    - + timer(dueTime) -
    +
    Signature: dueTime:DateTimeOffset -> IObservable<int64>
    - + @@ -6170,15 +6190,15 @@

    Returns

    - + timerOn scheduler dueTime -
    +
    Signature: scheduler:IScheduler -> dueTime:DateTimeOffset -> IObservable<int64>
    - + @@ -6190,15 +6210,15 @@

    Returns

    - + timerPeriod dueTime period -
    +
    Signature: dueTime:DateTimeOffset -> period:TimeSpan -> IObservable<int64>
    - + @@ -6209,15 +6229,15 @@

    Returns

    - + timerSpan(dueTime) -
    +
    Signature: dueTime:TimeSpan -> IObservable<int64>
    - + @@ -6228,15 +6248,15 @@

    Returns

    - + timerSpanOn scheduler dueTime -
    +
    Signature: scheduler:IScheduler -> dueTime:TimeSpan -> IObservable<int64>
    - + @@ -6248,15 +6268,15 @@

    Returns

    - + timerSpanPeriod(dueTime, period) -
    +
    Signature: (dueTime:TimeSpan * period:TimeSpan) -> IObservable<int64>
    - + @@ -6268,15 +6288,15 @@

    Returns

    - + timerSpanPeriodOn(...) -
    +
    Signature: scheduler:IScheduler -> dueTime:TimeSpan -> period:TimeSpan -> IObservable<int64>
    - + @@ -6288,15 +6308,15 @@

    Returns

    - + timestamp(source) -
    +
    Signature: source:IObservable<'Source> -> IObservable<Timestamped<'Source>>
    Type parameters: 'Source
    - + @@ -6307,15 +6327,15 @@

    Returns

    - + timestampOn scheduler source -
    +
    Signature: scheduler:IScheduler -> source:IObservable<'Source> -> IObservable<Timestamped<'Source>>
    Type parameters: 'Source
    - + @@ -6326,15 +6346,15 @@

    Returns

    - + toArray(source) -
    +
    Signature: source:IObservable<'?8745> -> IObservable<'?8745 []>
    Type parameters: '?8745
    - + @@ -6345,15 +6365,15 @@

    Returns

    - + toDictionary keySelector source -
    +
    Signature: keySelector:('?8747 -> '?8748) -> source:IObservable<'?8747> -> IObservable<IDictionary<'?8748,'?8747>>
    Type parameters: '?8747, '?8748
    - + @@ -6364,15 +6384,15 @@

    Returns

    - + toDictionaryCompareElements(...) -
    +
    Signature: keySelector:('Source -> 'Key) -> elementSelector:('Source -> 'Elm) -> comparer:'Key -> source:'Source -> IObservable<IDictionary<'Key,'Elm>>
    Type parameters: 'Source, 'Key, 'Elm
    - + @@ -6383,15 +6403,15 @@

    Returns

    - + toDictionaryComparer(...) -
    +
    Signature: keySelector:('Source -> 'Key) -> comparer:'Key -> source:'Source -> IObservable<IDictionary<'Key,'Source>>
    Type parameters: 'Source, 'Key
    - + @@ -6403,15 +6423,15 @@

    Returns

    - + toDictionaryElements(...) -
    +
    Signature: keySelector:('Source -> 'Key) -> elementSelector:('Source -> 'Elm) -> source:'Source -> IObservable<IDictionary<'Key,'Elm>>
    Type parameters: 'Source, 'Key, 'Elm
    - + @@ -6422,15 +6442,15 @@

    Returns

    - + toEnumerable(source) -
    +
    Signature: source:IObservable<'T> -> IEnumerable<'T>
    Type parameters: 'T
    - + @@ -6441,15 +6461,15 @@

    Returns

    - + toEvent(source) -
    +
    Signature: source:IObservable<unit> -> IEventSource<unit>
    - + @@ -6460,15 +6480,15 @@

    Returns

    - + toEventType(source) -
    +
    Signature: source:IObservable<'Source> -> IEventSource<'Source>
    Type parameters: 'Source
    - + @@ -6479,15 +6499,15 @@

    Returns

    - + toList(source) -
    +
    Signature: source:IObservable<'?8764> -> IObservable<IList<'?8764>>
    Type parameters: '?8764
    - + @@ -6498,15 +6518,15 @@

    Returns

    - + toLookup keySelector source -
    +
    Signature: keySelector:('Source -> 'Key) -> source:IObservable<'Source> -> IObservable<ILookup<'Key,'Source>>
    Type parameters: 'Source, 'Key
    - + @@ -6517,15 +6537,15 @@

    Returns

    - + toLookupCompare(...) -
    +
    Signature: keySelector:('Source -> 'Key) -> comparer:IEqualityComparer<'Key> -> source:IObservable<'Source> -> IObservable<ILookup<'Key,'Source>>
    Type parameters: 'Source, 'Key
    - + @@ -6536,15 +6556,15 @@

    Returns

    - + toLookupCompareElement(...) -
    +
    Signature: keySelector:('Source -> 'Key) -> elementSelector:('Source -> 'Element) -> source:IObservable<'Source> -> IObservable<ILookup<'Key,'Element>>
    Type parameters: 'Source, 'Key, 'Element
    - + @@ -6555,15 +6575,15 @@

    Returns

    - + toLookupElement(...) -
    +
    Signature: keySelector:('Source -> 'Key) -> elementSelector:('Source -> 'Element) -> comparer:IEqualityComparer<'Key> -> source:IObservable<'Source> -> IObservable<ILookup<'Key,'Element>>
    Type parameters: 'Source, 'Key, 'Element
    - + @@ -6574,15 +6594,15 @@

    Returns

    - + toObservable(source) -
    +
    Signature: source:seq<'T> -> IObservable<'T>
    Type parameters: 'T
    - + @@ -6593,15 +6613,15 @@

    Returns

    - + using resourceFactory observableFactory -
    +
    Signature: resourceFactory:(unit -> 'TResource) -> observableFactory:('TResource -> IObservable<'Result>) -> IObservable<'Result>
    Type parameters: 'TResource, 'Result
    - + @@ -6613,15 +6633,15 @@

    Returns

    - + usingAsync(...) -
    +
    Signature: resourceFactory:(CancellationToken -> Async<'?8785>) -> observableFactory:('?8785 -> CancellationToken -> Async<IObservable<'?8786>>) -> IObservable<'?8786>
    Type parameters: '?8785, '?8786
    - + @@ -6636,15 +6656,15 @@

    Returns

    - + wait(source) -
    +
    Signature: source:IObservable<'?8788> -> '?8788
    Type parameters: '?8788
    - + @@ -6657,15 +6677,15 @@

    Returns

    - + whileLoop condition source -
    +
    Signature: condition:(unit -> bool) -> source:IObservable<'?8790> -> IObservable<'?8790>
    Type parameters: '?8790
    - + @@ -6678,15 +6698,15 @@

    Returns

    - + window windowClosingSelector source -
    +
    Signature: windowClosingSelector:(unit -> IObservable<'WindowClosing>) -> source:IObservable<'Source> -> IObservable<IObservable<'Source>>
    Type parameters: 'WindowClosing, 'Source
    - + @@ -6699,15 +6719,15 @@

    Returns

    - + windowBounded windowBoundaries source -
    +
    Signature: windowBoundaries:IObservable<'WindowBoundary> -> source:IObservable<'Source> -> IObservable<IObservable<'Source>>
    Type parameters: 'WindowBoundary, 'Source
    - + @@ -6720,15 +6740,15 @@

    Returns

    - + windowCount count source -
    +
    Signature: count:int -> source:IObservable<'Source> -> IObservable<IObservable<'Source>>
    Type parameters: 'Source
    - + @@ -6740,15 +6760,15 @@

    Returns

    - + windowCountSkip count skip source -
    +
    Signature: count:int -> skip:int -> source:IObservable<'Source> -> IObservable<IObservable<'Source>>
    Type parameters: 'Source
    - + @@ -6759,15 +6779,15 @@

    Returns

    - + windowOpenClose(...) -
    +
    Signature: windowOpenings:IObservable<'WinOpen> -> windowClosingSelector:('WinOpen -> IObservable<'WinClose>) -> source:IObservable<'Source> -> IObservable<IObservable<'Source>>
    Type parameters: 'WinOpen, 'WinClose, 'Source
    - + @@ -6780,15 +6800,15 @@

    Returns

    - + windowTimeCount timeSpan count source -
    +
    Signature: timeSpan:TimeSpan -> count:int -> source:IObservable<'Source> -> IObservable<IObservable<'Source>>
    Type parameters: 'Source
    - + @@ -6802,15 +6822,15 @@

    Returns

    - + windowTimeCountOn(...) -
    +
    Signature: scheduler:IScheduler -> timeSpan:TimeSpan -> count:int -> source:IObservable<'?8816> -> IObservable<IObservable<'?8816>>
    Type parameters: '?8816
    - + @@ -6824,15 +6844,15 @@

    Returns

    - + windowTimeShift(...) -
    +
    Signature: timeSpan:TimeSpan -> timeShift:TimeSpan -> source:IObservable<'Source> -> IObservable<IObservable<'Source>>
    Type parameters: 'Source
    - + @@ -6844,15 +6864,15 @@

    Returns

    - + windowTimeShiftOn(...) -
    +
    Signature: scheduler:IScheduler -> timeSpan:TimeSpan -> timeShift:TimeSpan -> source:IObservable<'?8805> -> IObservable<IObservable<'?8805>>
    Type parameters: '?8805
    - + @@ -6864,15 +6884,15 @@

    Returns

    - + windowTimeSpan timeSpan source -
    +
    Signature: timeSpan:TimeSpan -> source:IObservable<'Source> -> IObservable<IObservable<'Source>>
    Type parameters: 'Source
    - + @@ -6884,15 +6904,15 @@

    Returns

    - + windowTimeSpanOn(...) -
    +
    Signature: scheduler:IScheduler -> timeSpan:TimeSpan -> source:IObservable<'?8797> -> IObservable<IObservable<'?8797>>
    Type parameters: '?8797
    - + @@ -6904,15 +6924,15 @@

    Returns

    - + withLatestFrom(...) -
    +
    Signature: resultSelector:('?8818 -> '?8819 -> '?8820) -> second:IObservable<'?8819> -> first:IObservable<'?8818> -> IObservable<'?8820>
    Type parameters: '?8818, '?8819, '?8820
    - + @@ -6925,15 +6945,15 @@

    Returns

    - + zip first second -
    +
    Signature: first:IObservable<'Source1> -> second:IObservable<'Source2> -> IObservable<'Source1 * 'Source2>
    Type parameters: 'Source1, 'Source2
    - + @@ -6944,15 +6964,15 @@

    Returns

    - + zip3 first second third -
    +
    Signature: first:IObservable<'Source1> -> second:IObservable<'Source2> -> third:IObservable<'Source3> -> IObservable<'Source1 * 'Source2 * 'Source3>
    Type parameters: 'Source1, 'Source2, 'Source3
    - + @@ -6963,15 +6983,15 @@

    Returns

    - + zipArray(sources) -
    +
    Signature: sources:IObservable<'Source> [] -> IObservable<IList<'Source>>
    Type parameters: 'Source
    - + @@ -6983,15 +7003,15 @@

    Returns

    - + zipSeq(sources) -
    +
    Signature: sources:seq<IObservable<'Source>> -> IObservable<IList<'Source>>
    Type parameters: 'Source
    - + @@ -7003,15 +7023,15 @@

    Returns

    - + zipSeqMap resultSelector sources -
    +
    Signature: resultSelector:(IList<'S> -> 'R) -> sources:seq<IObservable<'S>> -> IObservable<'R>
    Type parameters: 'S, 'R
    - + @@ -7024,15 +7044,15 @@

    Returns

    - + zipWith resultSelector first second -
    +
    Signature: resultSelector:('Source1 -> 'Source2 -> 'Result) -> first:IObservable<'Source1> -> second:IObservable<'Source2> -> IObservable<'Result>
    Type parameters: 'Source1, 'Source2, 'Result
    - + @@ -7043,15 +7063,15 @@

    Returns

    - + zipWithSeq resultSelector second first -
    +
    Signature: resultSelector:('Source1 -> 'Source2 -> 'Result) -> second:seq<'Source2> -> first:IObservable<'Source1> -> IObservable<'Result>
    Type parameters: 'Source1, 'Source2, 'Result
    - + @@ -7071,12 +7091,12 @@

    Type extensions

    - + Observer.Create(onNext) -
    - Signature: (onNext:('?8044 -> unit)) -> IObserver<'?8044>
    - Type parameters: '?8044
    +
    + Signature: (onNext:('?8042 -> unit)) -> IObserver<'?8042>
    + Type parameters: '?8042
    @@ -7091,12 +7111,12 @@

    Type extensions

    - + Observer.Create(onNext, onError) -
    - Signature: (onNext:('?8046 -> unit) * onError:(exn -> unit)) -> IObserver<'?8046>
    - Type parameters: '?8046
    +
    + Signature: (onNext:('?8044 -> unit) * onError:(exn -> unit)) -> IObserver<'?8044>
    + Type parameters: '?8044
    @@ -7111,12 +7131,12 @@

    Type extensions

    - + Observer.Create(onNext, onCompleted) -
    - Signature: (onNext:('?8048 -> unit) * onCompleted:(unit -> unit)) -> IObserver<'?8048>
    - Type parameters: '?8048
    +
    + Signature: (onNext:('?8046 -> unit) * onCompleted:(unit -> unit)) -> IObserver<'?8046>
    + Type parameters: '?8046
    @@ -7131,12 +7151,12 @@

    Type extensions

    - + Observer.Create(...) -
    - Signature: (onNext:('?8050 -> unit) * onError:(exn -> unit) * onCompleted:(unit -> unit)) -> IObserver<'?8050>
    - Type parameters: '?8050
    +
    + Signature: (onNext:('?8048 -> unit) * onError:(exn -> unit) * onCompleted:(unit -> unit)) -> IObserver<'?8048>
    + Type parameters: '?8048
    @@ -7151,10 +7171,10 @@

    Type extensions

    - + Observable.Create(subscribe) -
    +
    Signature: (subscribe:(IObserver<'T> -> unit -> unit)) -> IObservable<'T>
    Type parameters: 'T
    - + Observable.CreateAsync(subscribe) -
    +
    Signature: (subscribe:(IObserver<'T> -> Async<IDisposable>)) -> IObservable<'T>
    Type parameters: 'T
    - + Observer.Empty -
    +
    Signature: IObserver<obj>
    - + Observer.Empty -
    +
    Signature: IObserver<obj>
    - + x.Subscribe(onNext) -
    +
    Signature: (onNext:('T -> unit)) -> IDisposable
    - + x.Subscribe(onNext, onError) -
    +
    Signature: (onNext:('T -> unit) * onError:(exn -> unit)) -> IDisposable
    - + x.Subscribe(onNext, onCompleted) -
    +
    Signature: (onNext:('T -> unit) * onCompleted:(unit -> unit)) -> IDisposable
    - + x.Subscribe(...) -
    +
    Signature: (onNext:('T -> unit) * onError:(exn -> unit) * onCompleted:(unit -> unit)) -> IDisposable
    - + action f sch -
    +
    Signature: f:(unit -> unit) -> sch:IScheduler -> IDisposable
    - + actionAccOffsetRec state dueTime ff sch -
    +
    Signature: state:'state -> dueTime:DateTimeOffset -> ff:('state -> ('state -> DateTimeOffset -> unit) -> unit) -> sch:IScheduler -> IDisposable
    Type parameters: 'state
    - + actionAccRec state ff sch -
    +
    Signature: state:'state -> ff:('state -> ('state -> unit) -> unit) -> sch:IScheduler -> IDisposable
    Type parameters: 'state
    - + actionAccSpanRec state dueTime ff sch -
    +
    Signature: state:'state -> dueTime:TimeSpan -> ff:('state -> ('state -> TimeSpan -> unit) -> unit) -> sch:IScheduler -> IDisposable
    Type parameters: 'state
    - + actionLong f sch -
    +
    Signature: f:(ICancelable -> unit) -> sch:ISchedulerLongRunning -> IDisposable
    - + actionLongState state f sch -
    - Signature: state:'?8917 -> f:('?8917 -> ICancelable -> '?8918) -> sch:ISchedulerLongRunning -> IDisposable
    - Type parameters: '?8917, '?8918
    +
    + Signature: state:'?8916 -> f:('?8916 -> ICancelable -> '?8917) -> sch:ISchedulerLongRunning -> IDisposable
    + Type parameters: '?8916, '?8917
    @@ -166,10 +166,10 @@

    Functions and values

    - + actionOffset offset f sch -
    +
    Signature: offset:DateTimeOffset -> f:(unit -> unit) -> sch:IScheduler -> IDisposable
    - + actionOffsetRec dueTime ff sch -
    +
    Signature: dueTime:DateTimeOffset -> ff:((unit -> unit) -> unit) -> sch:IScheduler -> IDisposable
    - + actionRec ff sch -
    +
    Signature: ff:((unit -> unit) -> unit) -> sch:IScheduler -> IDisposable
    - + actionSpanRec time ff sch -
    +
    Signature: time:TimeSpan -> ff:(TimeSpan -> (TimeSpan -> unit) -> unit) -> sch:IScheduler -> IDisposable
    - + asAsync(cta) -
    +
    Signature: cta:SchedulerOperation -> Async<unit>
    - + asTask ct async -
    +
    Signature: ct:CancellationToken -> async:Async<'T> -> Task<'T>
    Type parameters: 'T
    - + async f sch -
    - Signature: f:(IScheduler -> CancellationToken -> Async<'?8953>) -> sch:IScheduler -> IDisposable
    - Type parameters: '?8953
    +
    + Signature: f:(IScheduler -> CancellationToken -> Async<'?8952>) -> sch:IScheduler -> IDisposable
    + Type parameters: '?8952
    @@ -295,10 +295,10 @@

    Functions and values

    - + asyncAccOffsetResult state dueTime f sch -
    +
    Signature: state:'state -> dueTime:DateTimeOffset -> f:(IScheduler -> 'state -> CancellationToken -> Async<IDisposable>) -> sch:IScheduler -> IDisposable
    Type parameters: 'state
    - + asyncAccOffsetUnit state dueTime f sch -
    - Signature: state:'state -> dueTime:DateTimeOffset -> f:(IScheduler -> 'state -> CancellationToken -> Async<'?8973>) -> sch:IScheduler -> IDisposable
    - Type parameters: 'state, '?8973
    +
    + Signature: state:'state -> dueTime:DateTimeOffset -> f:(IScheduler -> 'state -> CancellationToken -> Async<'?8972>) -> sch:IScheduler -> IDisposable
    + Type parameters: 'state, '?8972
    @@ -333,10 +333,10 @@

    Functions and values

    - + asyncAccResult state f sch -
    +
    Signature: state:'state -> f:(IScheduler -> 'state -> CancellationToken -> Async<IDisposable>) -> sch:IScheduler -> IDisposable
    Type parameters: 'state
    - + asyncAccSpanResult state dueTime f sch -
    +
    Signature: state:'state -> dueTime:TimeSpan -> f:(IScheduler -> 'state -> CancellationToken -> Async<IDisposable>) -> sch:IScheduler -> IDisposable
    Type parameters: 'state
    - + asyncAccSpanUnit state dueTime f sch -
    - Signature: state:'state -> dueTime:TimeSpan -> f:(IScheduler -> 'state -> CancellationToken -> Async<'?8968>) -> sch:IScheduler -> IDisposable
    - Type parameters: 'state, '?8968
    +
    + Signature: state:'state -> dueTime:TimeSpan -> f:(IScheduler -> 'state -> CancellationToken -> Async<'?8967>) -> sch:IScheduler -> IDisposable
    + Type parameters: 'state, '?8967
    @@ -390,12 +390,12 @@

    Functions and values

    - + asyncAccUnit state f sch -
    - Signature: state:'state -> f:(IScheduler -> 'state -> CancellationToken -> Async<'?8957>) -> sch:IScheduler -> IDisposable
    - Type parameters: 'state, '?8957
    +
    + Signature: state:'state -> f:(IScheduler -> 'state -> CancellationToken -> Async<'?8956>) -> sch:IScheduler -> IDisposable
    + Type parameters: 'state, '?8956
    @@ -409,10 +409,10 @@

    Functions and values

    - + asyncOffsetResult dueTime f sch -
    +
    Signature: dueTime:DateTimeOffset -> f:(IScheduler -> CancellationToken -> Async<IDisposable>) -> sch:IScheduler -> IDisposable
    - + asyncOffsetUnit dueTime f sch -
    - Signature: dueTime:DateTimeOffset -> f:(IScheduler -> CancellationToken -> Async<'?8964>) -> sch:IScheduler -> IDisposable
    - Type parameters: '?8964
    +
    + Signature: dueTime:DateTimeOffset -> f:(IScheduler -> CancellationToken -> Async<'?8963>) -> sch:IScheduler -> IDisposable
    + Type parameters: '?8963
    @@ -447,10 +447,10 @@

    Functions and values

    - + asyncResult f sch -
    +
    Signature: f:(IScheduler -> CancellationToken -> Async<IDisposable>) -> sch:IScheduler -> IDisposable
    - + asyncSpanResult dueTime f sch -
    +
    Signature: dueTime:TimeSpan -> f:(IScheduler -> CancellationToken -> Async<IDisposable>) -> sch:IScheduler -> IDisposable
    - + asyncSpanUnit dueTime f sch -
    - Signature: dueTime:TimeSpan -> f:(IScheduler -> CancellationToken -> Async<'?8961>) -> sch:IScheduler -> IDisposable
    - Type parameters: '?8961
    +
    + Signature: dueTime:TimeSpan -> f:(IScheduler -> CancellationToken -> Async<'?8960>) -> sch:IScheduler -> IDisposable
    + Type parameters: '?8960
    @@ -504,12 +504,12 @@

    Functions and values

    - + catch f sch -
    - Signature: f:('?8942 -> bool) -> sch:IScheduler -> IScheduler
    - Type parameters: '?8942
    +
    + Signature: f:('?8941 -> bool) -> sch:IScheduler -> IScheduler
    + Type parameters: '?8941
    @@ -523,10 +523,10 @@

    Functions and values

    - + disableOptimizations(arg00) -
    +
    Signature: arg00:IScheduler -> IScheduler
    - + disableOptimizationsTypes(...) -
    +
    Signature: optimizationInterfaces:Type list -> sch:IScheduler -> IScheduler
    - + func state f sch -
    - Signature: state:'?8920 -> f:(IScheduler -> '?8920 -> IDisposable) -> sch:IScheduler -> IDisposable
    - Type parameters: '?8920
    +
    + Signature: state:'?8919 -> f:(IScheduler -> '?8919 -> IDisposable) -> sch:IScheduler -> IDisposable
    + Type parameters: '?8919
    @@ -580,12 +580,12 @@

    Functions and values

    - + funcOffset state dueTime f sch -
    - Signature: state:'?8924 -> dueTime:DateTimeOffset -> f:(IScheduler -> '?8924 -> IDisposable) -> sch:IScheduler -> IDisposable
    - Type parameters: '?8924
    +
    + Signature: state:'?8923 -> dueTime:DateTimeOffset -> f:(IScheduler -> '?8923 -> IDisposable) -> sch:IScheduler -> IDisposable
    + Type parameters: '?8923
    @@ -599,12 +599,12 @@

    Functions and values

    - + funcSpan state dueTime f sch -
    - Signature: state:'?8922 -> dueTime:TimeSpan -> f:(IScheduler -> '?8922 -> IDisposable) -> sch:IScheduler -> IDisposable
    - Type parameters: '?8922
    +
    + Signature: state:'?8921 -> dueTime:TimeSpan -> f:(IScheduler -> '?8921 -> IDisposable) -> sch:IScheduler -> IDisposable
    + Type parameters: '?8921
    @@ -618,10 +618,10 @@

    Functions and values

    - + multiple fs sch -
    +
    Signature: fs:(IScheduler -> IDisposable) list -> sch:IScheduler -> IDisposable
    - + periodicAcc state period f sch -
    - Signature: state:'?8935 -> period:TimeSpan -> f:('?8935 -> '?8935) -> sch:IScheduler -> IDisposable
    - Type parameters: '?8935
    +
    + Signature: state:'?8934 -> period:TimeSpan -> f:('?8934 -> '?8934) -> sch:IScheduler -> IDisposable
    + Type parameters: '?8934
    @@ -659,12 +659,12 @@

    Functions and values

    - + periodicAccAction state period f sch -
    - Signature: state:'?8937 -> period:TimeSpan -> f:('?8937 -> unit) -> sch:IScheduler -> IDisposable
    - Type parameters: '?8937
    +
    + Signature: state:'?8936 -> period:TimeSpan -> f:('?8936 -> unit) -> sch:IScheduler -> IDisposable
    + Type parameters: '?8936
    @@ -681,10 +681,10 @@

    Functions and values

    - + periodicAction period f sch -
    +
    Signature: period:TimeSpan -> f:(unit -> unit) -> sch:IScheduler -> IDisposable
    - + sleep dueTime sch -
    +
    Signature: dueTime:TimeSpan -> sch:IScheduler -> Async<unit>
    - + sleepCancel dueTime ct sch -
    +
    Signature: dueTime:TimeSpan -> ct:CancellationToken -> sch:IScheduler -> Async<unit>
    - + sleepOffset dueTime sch -
    +
    Signature: dueTime:DateTimeOffset -> sch:IScheduler -> Async<unit>
    - + sleepOffsetCancel dueTime ct sch -
    +
    Signature: dueTime:DateTimeOffset -> ct:CancellationToken -> sch:IScheduler -> Async<unit>
    - + yield_(x) -
    +
    Signature: x:IScheduler -> Async<unit>
    - + yieldCancel ct sch -
    +
    Signature: ct:CancellationToken -> sch:IScheduler -> Async<unit>
    - + new() -
    +
    Signature: unit -> Scheduler
    - + Scheduler.EventLoop -
    +
    Signature: EventLoopScheduler
    - + Scheduler.Historical -
    +
    Signature: HistoricalScheduler
    - + asLongRunning(sch) -
    +
    Signature: sch:IScheduler -> ISchedulerLongRunning option
    - + Subject.async -
    +
    Signature: AsyncSubject<'a>
    - + Subject.behavior(x) -
    +
    Signature: x:'a -> BehaviorSubject<'a>
    - + Subject.broadcast -
    +
    Signature: Subject<'a>
    - + Subject.replay -
    +
    Signature: ReplaySubject<'a>
    - + onCompleted(s) -
    +
    Signature: s:SubjectBase<'a> -> SubjectBase<'a>
    Type parameters: 'a
    - + onError ex s -
    +
    Signature: ex:exn -> s:SubjectBase<'a> -> SubjectBase<'a>
    Type parameters: 'a
    - + onNext x s -
    +
    Signature: x:'a -> s:SubjectBase<'a> -> SubjectBase<'a>
    Type parameters: 'a
    - + onNexts xs s -
    - Signature: xs:seq<'?8899> -> s:'?8900 -> '?8900
    - Type parameters: '?8899, '?8900
    +
    + Signature: xs:seq<'?8898> -> s:'?8899 -> '?8899
    + Type parameters: '?8898, '?8899
    diff --git a/reference/fsharp-control-reactive-testing-gentestnotification.html b/reference/fsharp-control-reactive-testing-gentestnotification.html index de71c71..8d20119 100644 --- a/reference/fsharp-control-reactive-testing-gentestnotification.html +++ b/reference/fsharp-control-reactive-testing-gentestnotification.html @@ -48,10 +48,10 @@

    Static members

    - + GenTestNotification.GenNotifications() -
    +
    Signature: unit -> Arbitrary<TestNotifications<'a>>
    Type parameters: 'a
    - + cold x sch -
    +
    Signature: x:string -> sch:TestScheduler -> ITestableObservable<string>
    - + expectMessages sch txt obs -
    +
    Signature: sch:TestScheduler -> txt:string -> obs:IObservable<string> -> unit
    - + expectSubscription txt xs -
    +
    Signature: txt:string -> xs:Subscription -> unit
    - + expectSubscriptions txt xs -
    +
    Signature: txt:string list -> xs:Subscription list -> unit
    - + hot x sch -
    +
    Signature: x:string -> sch:TestScheduler -> ITestableObservable<string>
    - + messages(txt) -
    +
    Signature: txt:string -> TestNotifications<string>
    - + subscription -
    +
    Signature: string -> Subscription
    - + subscriptions -
    +
    Signature: string list -> Subscription list
    - + x.Time -
    +
    Signature: int64
    - + x.Value -
    +
    Signature: Notification<'a>
    - + errors(arg1) -
    +
    Signature: TestNotifications<'b> -> exn list
    Type parameters: 'b
    - + filter f arg2 -
    - Signature: f:(TestNotification<'?9125> -> bool) -> TestNotifications<'?9125> -> TestNotifications<'?9125>
    - Type parameters: '?9125
    +
    + Signature: f:(TestNotification<'?9127> -> bool) -> TestNotifications<'?9127> -> TestNotifications<'?9127>
    + Type parameters: '?9127
    @@ -95,12 +95,12 @@

    Functions and values

    - + isError(_arg1) -
    - Signature: _arg1:TestNotification<'?9119> -> bool
    - Type parameters: '?9119
    +
    + Signature: _arg1:TestNotification<'?9121> -> bool
    + Type parameters: '?9121
    @@ -114,12 +114,12 @@

    Functions and values

    - + isNext(_arg1) -
    - Signature: _arg1:TestNotification<'?9117> -> bool
    - Type parameters: '?9117
    +
    + Signature: _arg1:TestNotification<'?9119> -> bool
    + Type parameters: '?9119
    @@ -133,12 +133,12 @@

    Functions and values

    - + mapErrors(f) -
    - Signature: f:(exn -> '?9144) -> TestNotifications<'?9145> -> '?9144 list
    - Type parameters: '?9144, '?9145
    +
    + Signature: f:(exn -> '?9146) -> TestNotifications<'?9147> -> '?9146 list
    + Type parameters: '?9146, '?9147
    @@ -152,12 +152,12 @@

    Functions and values

    - + mapNexts(f) -
    - Signature: f:('?9139 -> '?9140) -> TestNotifications<'?9139> -> '?9140 list
    - Type parameters: '?9139, '?9140
    +
    + Signature: f:('?9141 -> '?9142) -> TestNotifications<'?9141> -> '?9142 list
    + Type parameters: '?9141, '?9142
    @@ -171,10 +171,10 @@

    Functions and values

    - + nexts(arg1) -
    +
    Signature: TestNotifications<'b> -> 'b list
    Type parameters: 'b
    - + onCompleted(t) -
    +
    Signature: t:int64 -> Recorded<Notification<'b>>
    Type parameters: 'b
    - + onError t ex -
    +
    Signature: t:int64 -> ex:exn -> Recorded<Notification<'b>>
    Type parameters: 'b
    - + onErrors(ms) -
    - Signature: ms:TestNotifications<'?9129> -> TestNotifications<'?9129>
    - Type parameters: '?9129
    +
    + Signature: ms:TestNotifications<'?9131> -> TestNotifications<'?9131>
    + Type parameters: '?9131
    @@ -247,10 +247,10 @@

    Functions and values

    - + onNext t x -
    +
    Signature: t:int64 -> x:'a -> Recorded<Notification<'a>>
    Type parameters: 'a
    - + onNexts(ms) -
    - Signature: ms:TestNotifications<'?9127> -> TestNotifications<'?9127>
    - Type parameters: '?9127
    +
    + Signature: ms:TestNotifications<'?9129> -> TestNotifications<'?9129>
    + Type parameters: '?9129
    @@ -285,12 +285,12 @@

    Functions and values

    - + toOption(_arg1) -
    - Signature: _arg1:TestNotification<'?9121> -> '?9121 option
    - Type parameters: '?9121
    +
    + Signature: _arg1:TestNotification<'?9123> -> '?9123 option
    + Type parameters: '?9123
    @@ -305,12 +305,12 @@

    Functions and values

    - + toResult(_arg1) -
    - Signature: _arg1:TestNotification<'?9123> -> Result<'?9123,exn>
    - Type parameters: '?9123
    +
    + Signature: _arg1:TestNotification<'?9125> -> Result<'?9125,exn>
    + Type parameters: '?9125
    @@ -325,12 +325,12 @@

    Functions and values

    - + unwrap(arg1) -
    - Signature: TestNotifications<'?9113> -> TestNotification<'?9113> list
    - Type parameters: '?9113
    +
    + Signature: TestNotifications<'?9115> -> TestNotification<'?9115> list
    + Type parameters: '?9115
    @@ -344,12 +344,12 @@

    Functions and values

    - + wrap(arg0) -
    - Signature: arg0:TestNotification<'?9111> list -> TestNotifications<'?9111>
    - Type parameters: '?9111
    +
    + Signature: arg0:TestNotification<'?9113> list -> TestNotifications<'?9113>
    + Type parameters: '?9113
    @@ -369,10 +369,10 @@

    Active patterns

    - + ( |Next|Error|Completed| )(x) -
    +
    Signature: x:TestNotification<'a> -> Choice<'a,exn,unit>
    Type parameters: 'a
    - + TestNotifications(...) -
    +
    Signature: TestNotification<'a> list
    - + subscriptions(o) -
    +
    Signature: o:ITestableObservable<'a> -> Subscription list
    Type parameters: 'a
    - + all(o) -
    +
    Signature: o:ITestableObserver<'a> -> TestNotifications<'a>
    Type parameters: 'a Attributes:
    @@ -84,10 +84,10 @@

    Functions and values

    - + errors(o) -
    +
    Signature: o:ITestableObserver<'a> -> exn list
    Type parameters: 'a
    - + messages(o) -
    +
    Signature: o:ITestableObserver<'a> -> TestNotifications<'a>
    Type parameters: 'a
    - + nexts(o) -
    +
    Signature: o:ITestableObserver<'a> -> 'a list
    Type parameters: 'a
    - + advanceBy s time -
    +
    Signature: s:TestScheduler -> time:int64 -> TestScheduler
    - + advanceTo s time -
    +
    Signature: s:TestScheduler -> time:int64 -> TestScheduler
    - + coldObservable s arg2 -
    +
    Signature: s:TestScheduler -> TestNotifications<'a> -> ITestableObservable<'a>
    Type parameters: 'a
    - + createObserver(s) -
    +
    Signature: s:TestScheduler -> ITestableObserver<'a>
    Type parameters: 'a
    - + hotObservable s arg2 -
    +
    Signature: s:TestScheduler -> TestNotifications<'a> -> ITestableObservable<'a>
    Type parameters: 'a
    - + schedule s state dueTime f -
    - Signature: s:TestScheduler -> state:'?9088 -> dueTime:DateTimeOffset -> f:(IScheduler -> '?9088 -> IDisposable) -> IDisposable
    - Type parameters: '?9088 +
    + Signature: s:TestScheduler -> state:'?9090 -> dueTime:DateTimeOffset -> f:(IScheduler -> '?9090 -> IDisposable) -> IDisposable
    + Type parameters: '?9090 Attributes:
    [<Obsolete("Use the 'Schedule' module for scheduling actions")>]
    @@ -179,10 +179,10 @@

    Functions and values

    - + start(s) -
    +
    Signature: s:TestScheduler -> TestScheduler
    - + startObservable s source -
    - Signature: s:TestScheduler -> source:IObservable<'?9091> -> ITestableObserver<'?9091>
    - Type parameters: '?9091
    +
    + Signature: s:TestScheduler -> source:IObservable<'?9093> -> ITestableObserver<'?9093>
    + Type parameters: '?9093
    @@ -217,12 +217,12 @@

    Functions and values

    - + subscribeBeforeAfter sch source f -
    - Signature: sch:TestScheduler -> source:'?9097 -> f:('?9097 -> '?9099) -> ITestableObserver<'?9098> * ITestableObserver<'?9098>
    - Type parameters: '?9097, '?9098, '?9099
    +
    + Signature: sch:TestScheduler -> source:'?9099 -> f:('?9099 -> '?9101) -> ITestableObserver<'?9100> * ITestableObserver<'?9100>
    + Type parameters: '?9099, '?9100, '?9101
    @@ -236,12 +236,12 @@

    Functions and values

    - + subscribeTestObserver sch source -
    - Signature: sch:TestScheduler -> source:IObservable<'?9093> -> ITestableObserver<'?9093>
    - Type parameters: '?9093
    +
    + Signature: sch:TestScheduler -> source:IObservable<'?9095> -> ITestableObserver<'?9095>
    + Type parameters: '?9095
    @@ -255,10 +255,10 @@

    Functions and values

    - + subscribeTestObserverStart sch source -
    +
    Signature: sch:TestScheduler -> source:IObservable<'a> -> ITestableObserver<'a>
    Type parameters: 'a
    - + usage(f) -
    - Signature: f:(TestScheduler -> '?9078) -> '?9078
    - Type parameters: '?9078
    +
    + Signature: f:(TestScheduler -> '?9080) -> '?9080
    + Type parameters: '?9080
    diff --git a/reference/fsharp-control-reactive-waithandle.html b/reference/fsharp-control-reactive-waithandle.html index 155e042..a835206 100644 --- a/reference/fsharp-control-reactive-waithandle.html +++ b/reference/fsharp-control-reactive-waithandle.html @@ -48,15 +48,15 @@

    Static members

    - + WaitHandle.Signal -
    +
    Signature: ManualResetEvent
    - + diff --git a/reference/fsharp-control-reactive-waithandlemodule.html b/reference/fsharp-control-reactive-waithandlemodule.html index b774e00..555f661 100644 --- a/reference/fsharp-control-reactive-waithandlemodule.html +++ b/reference/fsharp-control-reactive-waithandlemodule.html @@ -55,15 +55,15 @@

    Functions and values

    - + flag(s) -
    +
    Signature: s:EventWaitHandle -> unit
    - + @@ -74,15 +74,15 @@

    Functions and values

    - + wait(s) -
    +
    Signature: s:WaitHandle -> unit
    - +