Table of Contents

Namespace Bonsai.Reactive

Classes

Accumulate

Represents an operator that computes the cumulative sum of an observable sequence and returns each intermediate result.

Amb

Represents an operator that propagates the observable sequence that reacts first.

AsyncSubject

Represents an expression builder that broadcasts the last value of an observable sequence to all subscribed and future observers using a shared subject.

AsyncSubject<T>

Represents an expression builder that broadcasts the result of the first observable sequence to complete to all subscribed and future observers.

Average

Represents an operator that computes the numerical average of an observable sequence.

BehaviorSubject

Represents an expression builder that broadcasts the latest value of an observable sequence to all subscribed and future observers using a shared subject.

BehaviorSubject<T>

Represents an expression builder that broadcasts the latest value from other observable sequences to all subscribed and future observers.

BufferCount

Represents an operator that projects each element of the sequence into zero or more buffers based on element count information.

BufferTime

Represents an operator that projects each element of the sequence into zero or more buffers based on timing information.

BufferTrigger

Represents an operator that projects each element of an observable sequence into zero or more buffers created when the second sequence emits a notification.

Catch

Represents an operator that continues an observable sequence that is terminated by an exception with the next observable sequence.

CombineLatest

Represents an operator that combines values from the source sequences whenever any of the sequences produces an element.

CombineTimestamp

Represents an operator that converts element-timestamp pairs of an observable sequence into proper timestamped elements.

Concat

Represents an operator that concatenates any number of observable sequences as long as the previous sequence terminated successfully.

Condition

Represents an expression builder which filters the elements of an observable sequence according to a condition specified by the encapsulated workflow.

Count

Represents an operator that returns the count of the number of elements in an observable sequence.

CreateObservable

Represents an expression builder that creates higher-order observable sequences specified by the encapsulated workflow.

CurrentThreadScheduler

Represents an operator that returns an object that schedules units of work on the current thread.

DefaultScheduler

Represents an operator that returns an object that schedules units of work on the platform's default scheduler.

Defer

Represents an expression builder that creates a new observable sequence for each subscription using the encapsulated workflow.

Delay

Represents an operator that delays the notifications of an observable sequence by the specified time interval.

DelaySubscription

Represents an operator that time-shifts the observable sequence by delaying the subscription by the specified time interval.

Dematerialize

Represents an operator that dematerializes the explicit notification values of an observable sequence as implicit notifications.

Distinct

Represents an operator that returns an observable sequence containing only distinct elements.

DistinctBy

Represents an operator that returns an observable sequence containing only elements which are distinct according to the specified key.

DistinctUntilChanged

Represents an operator that returns only distinct contiguous elements of an observable sequence.

DistinctUntilChangedBy

Represents an operator that returns only distinct contiguous elements according to the specified key.

ElementAccumulation<TAccumulation, TElement>

Represents the current state of an accumulation over an observable sequence.

ElementIndex

Represents an operator that incorporates the zero-based index of elements in an observable sequence.

EventLoopScheduler

Represents an operator that creates an object that schedules units of work on a single dedicated thread.

First

Represents an operator that returns the first element of an observable sequence.

FirstOrDefault

Represents an operator that returns the first element of an observable sequence, or a default value if no such element exists.

Gate

Represents an operator that allows a single element from the first sequence to pass through every time a second sequence emits a notification.

GateInterval

Represents an operator that allows a single element from the first sequence to pass through every time the specified time interval elapses.

GroupBy

Represents an operator that groups the elements of an observable sequence according to the specified key.

IgnoreElements

Represents an operator that ignores all elements in an observable sequence leaving only the termination messages.

ImmediateScheduler

Represents an operator that returns an object that schedules units of work to run immediately on the current thread.

IsEmpty

Represents an operator that determines whether the observable sequence is empty.

Last

Represents an operator that returns the last element of an observable sequence.

LastOrDefault

Represents an operator that returns the last element of an observable sequence, or a default value if no such element exists.

Materialize

Represents an operator that materializes the implicit notifications of an observable sequence as explicit notification values.

Max

Represents an operator that computes the maximum element in an observable sequence.

MaxBy

Represents an operator that returns the elements in the observable sequence with the maximum key value.

Merge

Represents an operator that merges any number of observable sequences into a single observable sequence.

Min

Represents an operator that computes the minimum element in an observable sequence.

MinBy

Represents an operator that returns the elements in the observable sequence with the minimum key value.

NewThreadScheduler

Represents an operator that returns an object that schedules each unit of work on a separate thread.

ObserveOn

Represents an operator that sends all notifications in the sequence through the specified scheduler.

OnErrorResumeNext

Represents an operator that concatenates any number of observable sequences even if any of the sequences terminates exceptionally.

OrderBy

Represents an operator that sorts the elements of all the collections in an observable sequence in ascending order according to the specified key.

OrderByDescending

Represents an operator that sorts the elements of all the collections in an observable sequence in descending order according to the specified key.

Publish

Represents an expression builder that shares a single subscription to an observable sequence across the encapsulated workflow.

PublishSubject

Represents an expression builder that broadcasts the values of an observable sequence to multiple subscribers using a shared subject.

PublishSubject<T>

Represents an expression builder that broadcasts the values from other observable sequences to multiple subscribers.

Range

Represents an operator that generates an observable sequence of integer numbers within a specified range.

Repeat

Represents an operator that repeats an observable sequence indefinitely.

RepeatCount

Represents an operator that repeats an observable sequence a specified number of times.

Replay

Represents an expression builder that handles sharing of an observable sequence across the encapsulated workflow by eagerly replaying notifications.

ReplaySubject

Represents an expression builder that replays the values of an observable sequence to all subscribed and future observers using a shared subject.

ReplaySubject<T>

Represents an expression builder that replays the values of other observable sequences to all subscribed and future observers.

ResourceSubject

Represents an expression builder that stores and broadcasts the last disposable value of an observable sequence to all subscribed and future observers. The value is disposed when the containing context is closed.

ResourceSubject<T>

Represents an expression builder that stores and broadcasts the last disposable value of an observable sequence to all subscribed and future observers. The value is disposed when the containing context is closed.

Retry

Represents an operator that repeats an observable sequence until it successfully terminates.

RetryCount

Represents an operator that repeats an observable sequence the specified number of times or until it successfully terminates.

Sample

Represents an operator that samples elements from an observable sequence whenever the second sequence emits a notification.

SampleInterval

Represents an operator that samples the latest element from the sequence whenever the specified time interval elapses.

Scan

Represents an expression builder which accumulates the values of an observable sequence using the encapsulated workflow.

SelectMany

Represents an expression builder that merges higher-order observable sequences generated from the encapsulated workflow.

SequenceEqual

Represents an operator that determines whether two sequences are equal by comparing the elements pairwise.

Sink

Represents an expression builder that adds the side effects specified by the encapsulated workflow to an observable sequence without modifying its elements.

Skip

Represents an operator that bypasses the specified number of elements at the start of an observable sequence and returns the remaining elements.

SkipLast

Represents an operator that bypasses the specified number of elements at the end of an observable sequence.

SkipUntil

Represents an operator that returns the elements from the first sequence only after the second sequence emits a notification.

SkipWhile

Represents an expression builder which bypasses elements in an observable sequence as long as the condition specified by the encapsulated workflow is true.

Slice

Represents an operator that extracts a range of elements from an observable sequence.

SubscribeOn

Represents an operator that wraps the source sequence in order to run its subscription and unsubscription logic on the specified scheduler.

SubscribeWhen

Represents an operator that subscribes to the first sequence only after the second sequence emits a notification.

Sum

Represents an operator that computes the sum of an observable sequence.

Switch

Represents an operator that transforms a sequence of observable sequences into a sequence of values produced only from the most recent observable sequence.

Synchronize

Represents an operator that synchronizes the observable sequence to ensure that observer notifications cannot be delivered concurrently.

Take

Represents an operator that returns the specified number of contiguous elements from the start of an observable sequence.

TakeLast

Represents an operator that returns a specified number of contiguous elements from the end of an observable sequence.

TakeUntil

Represents an operator that returns elements from the first sequence only until the second sequence emits a notification.

TakeWhile

Represents an expression builder which returns elements from an observable sequence as long as the condition specified by the encapsulated workflow is true.

TaskPoolScheduler

Represents an operator that returns an object that schedules units of work on the Task Parallel Library (TPL) task pool.

ThenBy

Represents an operator that subsequently sorts the elements of all the ordered collections in an observable sequence in ascending order according to the specified key.

ThenByDescending

Represents an operator that subsequently sorts the elements of all the ordered collections in an observable sequence in descending order according to the specified key.

ThreadPoolScheduler

Represents an operator that returns an object that schedules units of work on the CLR thread pool.

Throttle

Represents an operator that ignores elements from an observable sequence which are followed by another element before the specified duration elapses.

TimeInterval

Represents an operator that records the time interval between consecutive values produced by an observable sequence.

Timeout

Represents an operator that raises an error if the next element is not received within the specified timeout duration from the previous element.

Timer

Represents an operator that generates an observable sequence that periodically produces a value after the specified initial relative due time has elapsed.

Timestamp

Represents an operator that records the timestamp for each element produced by an observable sequence.

ToArray

Represents an operator that creates an array containing every element in the observable sequence.

ToDictionary

Represents an operator that creates a dictionary from an observable sequence according to the specified key and element selector.

ToList

Represents an operator that creates a list containing every element in the observable sequence.

ToLookup

Represents an operator that creates a lookup from an observable sequence according to the specified key and element selector.

Visualizer

Represents an expression builder that uses the encapsulated workflow as a visualizer to an observable sequence without modifying its elements.

Window

Represents an expression builder that projects the input sequence into zero or more windows with boundaries defined by the encapsulated workflow.

WindowCount

Represents an operator that projects each element of an observable sequence into zero or more windows based on element count information.

WindowTime

Represents an operator that projects each element of an observable sequence into zero or more windows based on timing information.

WindowTrigger

Represents an operator that projects each element of an observable sequence into zero or more windows created when the second sequence emits a notification.

WithLatestFrom

Represents an operator that combines the latest values from the source sequences only when the first sequence produces an element.

Zip

Represents an operator that combines values from the source sequences whenever all of the sequences have produced an element.

Structs

ElementIndex<T>

Represents an element from an observable sequence associated with its index information. The zero-based index represents the order of the element in the sequence.

SchedulerMapping

Represents a value specifying the scheduler to be used when handling concurrency in a reactive operator.