Skip to main content

Crate rx_core

Crate rx_core 

Source

Modules§

extension_compose
extension_pipe
observable
observable_fn
observer
operator
prelude
scheduler
subject

Structs§

ComposeOperator
ErasedObservable
ErasedObservables
ErasedSubscriber
ErasedSubscription
ObserverSubscriber
This subscriber acts as the subscriptions boundary by not forwarding unsubscribe calls downstream.
OptionSubscription
Pipe
PrimaryCategoryObservable
Marks the struct to be primarily considered an Observable. It must only be used for types that ONLY implement Observable but do NOT implement [Observer][crate::Observer] and other traits as that would make it a SubjectLike.
PrimaryCategoryObserver
Marks the struct to be primarily considered an [Observer][crate::Observer]. It must only be used for types that ONLY implement [Observer][crate::Observer] but do NOT implement SubscriptionLike as that would make it a Subscriber.
PrimaryCategoryOperator
Marks the struct to be primarily considered an Operator. It must only be used for types that implement Operator!
PrimaryCategorySubject
Marks the struct to be primarily considered a SubjectLike. It must only be used for types that implement both Observable and [Observer][crate::Observer]!
PrimaryCategorySubscriber
Marks the struct to be primarily considered a Subscriber. It must only be used for types that implement both [Observer][crate::Observer] and SubscriptionLike!
PrimaryCategorySubscription
Marks the struct to be primarily considered an SubscriptionLike. It must only be used for types that implement SubscriptionLike, [Tickable][crate::Tickable], and TeardownCollection!
ProvideWithCloneOf
ProvideWithDefault
ProvideWithFactory
SchedulerHandle
SharedSubscriber
SharedSubscriber
SharedSubscription
SubscriberState
Stores the possible states a subscriber can be in. Useful to track the state of an unknown upstream source of signals based only on those signals.
Subscription
SubscriptionClosedFlag
A simple newtype to serve as the is_closed flag in subscriptions. It makes sure that once it’s closed it can’t be opened again.
SubscriptionData
The internal subscription implementation commonly used by other subscription implementations.
Teardown
A teardown is a closure which owns resources, by the nature of them being moved into said closure. The closure itself is responsible for releasing these resources.
WorkCancellationId
WorkCancellationIdGenerator
WorkInvokeId
WorkInvokeIdGenerator

Enums§

ObserverNotification
ObserverNotification
ObserverTerminalNotification
ObserverTerminalNotification
ObserverToObserverTerminalNotificationConversionError
OptionSubscriber
PrimaryCategory
ScheduledWorkAction
SubscriberNotification
SubscriberNotification
SubscriberToObserverNotificationConversionError
SubscriberToObserverTerminalNotificationConversionError
SubscriberToSubscriptionNotificationConversionError
SubscriptionNotification
SubscriptionNotification
WorkResult

Traits§

ComposableOperator
ComposableOperator
ContinuousTask
ContinuousTaskFactory
DelayedWork
DelayedWorkFactory
EraseObservableExtension
EraseSubscriptionExtension
ErasedSubscribeObservableExtension
ImmediateTask
ImmediateTaskFactory
IntoSchedulerHandle
InvokedTask
InvokedTaskFactory
LockWithPoisonBehavior
NeverMapIntoExtension
Observable
Observable
ObservableOutput
ObservableOutput
ObservablePipeExtensionPipe
ObserverInput
ObserverPushObserverNotificationExtention
ObserverPushObserverTerminalNotificationExtention
ObserverUpgradesToSelf
To mark types that upgrade to themselves when used as a destination in an Observables subscribe method. Usually subscribers fall into this category as they are already subscribers, so there’s no need for an upgrade. But there are a few regular observers too that chose to implement SubscriptionLike to implement a unique behavior. These observers take it upon themselves to manage their own closing logic, and maintain a teardown for added teardowns. For example, the PrintObserver does this to be able to print when it got unsubscribed, and the MockObserver to be able to track all notifications for assertions.
Operator
Operator
PrimaryCategoryMarker
Provider
ProviderMut
ReadLockWithPoisonBehavior
RepeatedTask
RepeatedTaskFactory
RxObserver
RxObserver
ScheduledOnceWork
ScheduledRepeatedWork
ScheduledWork
Scheduler
Schedulers define a set of work that can be sent to the scheduler to then be executed by its executor, and cancelled when no longer needed.
SchedulerScheduleWorkExtension
SharedDestination
Signal
Signal
SubjectLike
A Subject is something that is an Observable and Observer (Subscriber) at the same time. Signals pushed into it will be received by the subscriptions made from it, broadcasting them.
Subscriber
Subscriber
SubscriberPushNotificationExtention
SubscriptionLike
A SubscriptionLike is something that can be “unsubscribed” from, which will close it, rendering it no longer operational. If it also owns resources, it will also release those resources, usually by executing Teardowns
SubscriptionLikeExtensionIntoShared
SubscriptionLikePushNotificationExtention
SubscriptionWithTeardown
Subscriptions that either own resources, or can forward them to something that does.
TeardownCollection
A TeardownCollection is something that owns resources that can be released through the [SubscriptionLike] traits unsubscribe method.
TeardownCollectionExtension
UpgradeableObserver
When a subscription is established, the destination must only receive the next, error and complete signals, but not unsubscribe. And since subscribers and subjects are observers too, they could be passed as a destination, but doing it naively would always unsubscribe them too when the observable unsubscribes.
WithPrimaryCategory
Marks a type with a distinct conceptual category to offer granular scoping for blanket implementation. (Since negative trait bounds aren’t a thing)
WithWorkContextProvider
WithWorkInputOutput
WorkContext
WorkContextProvider
WorkExecutor
WorkTick
WriteLockWithPoisonBehavior

Type Aliases§

BoxedSubscriber
Never
Never cannot be constructed as it’s an enum with no variants. So it’s perfect to denote a signal that will never be emitted, like Observables that never error, or emit. Or Operators who catch errors.
PhantomInvariant