https://github.com/flagbug/reactivemarrow
This library extends Reactive Extensions with a few helpers
https://github.com/flagbug/reactivemarrow
Last synced: about 1 year ago
JSON representation
This library extends Reactive Extensions with a few helpers
- Host: GitHub
- URL: https://github.com/flagbug/reactivemarrow
- Owner: flagbug
- Created: 2013-04-28T11:54:35.000Z (almost 13 years ago)
- Default Branch: master
- Last Pushed: 2015-03-13T22:51:23.000Z (about 11 years ago)
- Last Synced: 2025-02-28T19:04:58.362Z (about 1 year ago)
- Language: C#
- Homepage:
- Size: 447 KB
- Stars: 11
- Watchers: 3
- Forks: 3
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Overview
ReactiveMarrow adds some helpers and extensions for [Reactive Extensions](https://github.com/Reactive-Extensions/Rx.NET)
You can grab it from [NuGet](http://www.nuget.org/packages/ReactiveMarrow/)
This is a portable class library and supports every platform that Rx supports.
# IObservable Extensions
## `SampleAndCombineLatest`
`SampleAndCombineLatest`, as its name says, is a mix of `Sample` and `CombineLatest`.
It takes the latest value of the left observable and combines it with the latest value of the right observable whenever the right sequence produces an element.
## `MatchPair`
Matches equal pairs in two observable sequences, based on a key selector.
## `LimitRate`
Limits the rate at which items are pushed based on a `TimeSpan`.
This method differs from `Sample`, as items aren't dropped and if items come slower than the maximum rate,
they are processed imemdiately, instead of waiting on the next "tick".
A timespan of 2 seconds would mean the items are processed at a maximum rate of one item every two seconds.
## `ToUnit`
A selector over an `IObservable` that converts it to `IObservable`
# `RateLimitedOperationQueue`
A operation processing queue that can limit the number of operations per given timespan.
This differs from the `LimitRate` method, as `RateLimitedOperationQueue` is a class and can be used in a non-functional way.
# `ReactiveProperty`
This class provides a read-write property through the `Value` property
and is at the same time a `IObservable` backed by a `BehaviourSubject`