Skip to main content

ObservableOutput

Trait ObservableOutput 

Source
pub trait ObservableOutput {
    type Out: Signal;
    type OutError: Signal;
}
Expand description

§ObservableOutput

Defines the outputs of an Observable. Also used for [Operator]s to define the new outputs once the operator is applied.

Required Associated Types§

Implementations on Foreign Types§

Source§

impl<'o, Source> ObservableOutput for RetryObservable<'o, Source>
where Source: 'o + Observable,

Source§

impl<O> ObservableOutput for Option<O>

Source§

impl<O> ObservableOutput for Arc<Mutex<O>>

Source§

impl<O> ObservableOutput for Arc<RwLock<O>>

Source§

impl<O> ObservableOutput for Weak<Mutex<O>>

Source§

impl<Source, ConnectorProvider> ObservableOutput for ShareObservable<Source, ConnectorProvider>
where Source: Observable, <Source as ObservableOutput>::Out: Clone, <Source as ObservableOutput>::OutError: Clone, ConnectorProvider: 'static + Provider, <ConnectorProvider as Provider>::Provided: SubjectLike<In = <Source as ObservableOutput>::Out, InError = <Source as ObservableOutput>::OutError> + Clone,

Source§

type Out = <<ConnectorProvider as Provider>::Provided as ObservableOutput>::Out

Source§

type OutError = <<ConnectorProvider as Provider>::Provided as ObservableOutput>::OutError

Source§

impl<Source, S> ObservableOutput for SubscribeOnObservable<Source, S>
where Source: 'static + Observable, S: Scheduler,

Implementors§

Source§

impl ObservableOutput for ClosedObservable

Source§

impl ObservableOutput for EmptyObservable

Source§

impl ObservableOutput for NeverObservable

Source§

impl<ConnectorProvider> ObservableOutput for ShareOperator<ConnectorProvider>
where ConnectorProvider: 'static + Provider, <ConnectorProvider as Provider>::Provided: SubjectLike + Clone,

Source§

type Out = <<ConnectorProvider as Provider>::Provided as ObservableOutput>::Out

Source§

type OutError = <<ConnectorProvider as Provider>::Provided as ObservableOutput>::OutError

Source§

impl<F, Source> ObservableOutput for DeferredObservable<F, Source>
where Source: Observable, F: FnMut() -> Source,

Source§

impl<In> ObservableOutput for ErrorBoundaryOperator<In>
where In: Signal,

Source§

impl<In, InError> ObservableOutput for BufferCountOperator<In, InError>
where In: Signal, InError: Signal,

Source§

type Out = Vec<In>

Source§

type OutError = InError

Source§

impl<In, InError> ObservableOutput for CountOperator<In, InError>
where In: Signal, InError: Signal,

Source§

type Out = usize

Source§

type OutError = InError

Source§

impl<In, InError> ObservableOutput for DematerializeOperator<In, InError>
where In: Signal, InError: Signal,

Source§

type Out = In

Source§

type OutError = InError

Source§

impl<In, InError> ObservableOutput for ElementAtOperator<In, InError>
where In: Signal, InError: Signal,

Source§

impl<In, InError> ObservableOutput for EndWithOperator<In, InError>
where In: Signal + Clone, InError: Signal,

Source§

type Out = In

Source§

type OutError = InError

Source§

impl<In, InError> ObservableOutput for EnumerateOperator<In, InError>
where In: Signal, InError: Signal,

Source§

type Out = (In, usize)

Source§

type OutError = InError

Source§

impl<In, InError> ObservableOutput for FirstOperator<In, InError>
where In: Signal, InError: Signal,

Source§

impl<In, InError> ObservableOutput for IdentityOperator<In, InError>
where In: Signal, InError: Signal,

Source§

type Out = In

Source§

type OutError = InError

Source§

impl<In, InError> ObservableOutput for IntoResultOperator<In, InError>
where In: Signal, InError: Signal,

Source§

type Out = Result<In, InError>

Source§

type OutError = Infallible

Source§

impl<In, InError> ObservableOutput for IsEmptyOperator<In, InError>
where In: Signal, InError: Signal,

Source§

type Out = bool

Source§

type OutError = InError

Source§

impl<In, InError> ObservableOutput for LiftOptionOperator<In, InError>
where In: Signal, InError: Signal,

Source§

type Out = In

Source§

type OutError = InError

Source§

impl<In, InError> ObservableOutput for MaterializeOperator<In, InError>
where In: Signal, InError: Signal,

Source§

impl<In, InError> ObservableOutput for PairwiseOperator<In, InError>
where In: Signal + Clone, InError: Signal,

Source§

type Out = [In; 2]

Source§

type OutError = InError

Source§

impl<In, InError> ObservableOutput for RetryOperator<In, InError>
where In: Signal, InError: Signal,

Source§

type Out = In

Source§

type OutError = InError

Source§

impl<In, InError> ObservableOutput for SkipOperator<In, InError>
where In: Signal, InError: Signal,

Source§

type Out = In

Source§

type OutError = InError

Source§

impl<In, InError> ObservableOutput for StartWithOperator<In, InError>
where In: Signal + Clone, InError: Signal,

Source§

type Out = In

Source§

type OutError = InError

Source§

impl<In, InError> ObservableOutput for TakeOperator<In, InError>
where In: Signal, InError: Signal,

Source§

type Out = In

Source§

type OutError = InError

Source§

impl<In, InError> ObservableOutput for BehaviorSubject<In, InError>
where In: Signal + Clone, InError: Signal + Clone,

Source§

type Out = In

Source§

type OutError = InError

Source§

impl<In, InError> ObservableOutput for PublishSubject<In, InError>
where In: Signal + Clone, InError: Signal + Clone,

Source§

type Out = In

Source§

type OutError = InError

Source§

impl<In, InError, Callback> ObservableOutput for FinalizeOperator<In, InError, Callback>
where In: Signal, InError: Signal, Callback: 'static + Clone + FnOnce() + Send + Sync,

Source§

type Out = In

Source§

type OutError = InError

Source§

impl<In, InError, ErrorMapper> ObservableOutput for ConcatAllOperator<In, InError, ErrorMapper>
where In: Observable + Signal, InError: Signal, ErrorMapper: 'static + FnOnce(InError) -> <In as ObservableOutput>::OutError + Clone + Send + Sync,

Source§

impl<In, InError, ErrorMapper> ObservableOutput for ExhaustAllOperator<In, InError, ErrorMapper>
where ErrorMapper: 'static + FnOnce(InError) -> <In as ObservableOutput>::OutError + Send + Sync + Clone, In: Observable + Signal, InError: Signal,

Source§

impl<In, InError, ErrorMapper> ObservableOutput for MergeAllOperator<In, InError, ErrorMapper>
where In: Observable + Signal, InError: Signal, ErrorMapper: 'static + FnOnce(InError) -> <In as ObservableOutput>::OutError + Clone + Send + Sync,

Source§

impl<In, InError, ErrorMapper> ObservableOutput for SwitchAllOperator<In, InError, ErrorMapper>
where In: Observable + Signal, InError: Signal, ErrorMapper: 'static + FnOnce(InError) -> <In as ObservableOutput>::OutError + Clone + Send + Sync,

Source§

impl<In, InError, ErrorMapper, InnerObservable> ObservableOutput for CatchOperator<In, InError, ErrorMapper, InnerObservable>
where In: Signal, InError: Signal, ErrorMapper: 'static + FnOnce(InError) -> InnerObservable + Clone + Send + Sync, InnerObservable: Observable<Out = In> + Signal,

Source§

type Out = <InnerObservable as ObservableOutput>::Out

Source§

type OutError = <InnerObservable as ObservableOutput>::OutError

Source§

impl<In, InError, ErrorMapper, OutError> ObservableOutput for MapErrorOperator<In, InError, ErrorMapper, OutError>
where In: Signal, InError: Signal, ErrorMapper: 'static + FnOnce(InError) -> OutError + Clone + Send + Sync, OutError: Signal,

Source§

type Out = In

Source§

type OutError = OutError

Source§

impl<In, InError, Fallback, S> ObservableOutput for FallbackWhenSilentOperator<In, InError, Fallback, S>
where In: Signal, InError: Signal, Fallback: 'static + Fn(<S as WithWorkInputOutput>::Tick, &mut <<S as WithWorkContextProvider>::WorkContextProvider as WorkContextProvider>::Item<'_>, usize) -> In + Clone + Send + Sync, S: Scheduler,

Source§

type Out = In

Source§

type OutError = InError

Source§

impl<In, InError, Filter> ObservableOutput for FilterOperator<In, InError, Filter>
where In: Signal, InError: Signal, Filter: 'static + for<'a> Fn(&'a In, usize) -> bool + Clone + Send + Sync,

Source§

type Out = In

Source§

type OutError = InError

Source§

impl<In, InError, Mapper, ErrorMapper, InnerObservable> ObservableOutput for ConcatMapOperator<In, InError, Mapper, ErrorMapper, InnerObservable>
where In: Signal, InError: Signal, Mapper: 'static + FnMut(In) -> InnerObservable + Clone + Send + Sync, ErrorMapper: 'static + FnOnce(InError) -> <InnerObservable as ObservableOutput>::OutError + Clone + Send + Sync, InnerObservable: Observable + Signal,

Source§

type Out = <InnerObservable as ObservableOutput>::Out

Source§

type OutError = <InnerObservable as ObservableOutput>::OutError

Source§

impl<In, InError, Mapper, ErrorMapper, InnerObservable> ObservableOutput for ExhaustMapOperator<In, InError, Mapper, ErrorMapper, InnerObservable>
where In: Signal, InError: Signal + Into<<InnerObservable as ObservableOutput>::OutError>, Mapper: 'static + FnMut(In) -> InnerObservable + Clone + Send + Sync, ErrorMapper: 'static + FnOnce(InError) -> <InnerObservable as ObservableOutput>::OutError + Clone + Send + Sync, InnerObservable: Observable + Signal,

Source§

type Out = <InnerObservable as ObservableOutput>::Out

Source§

type OutError = <InnerObservable as ObservableOutput>::OutError

Source§

impl<In, InError, Mapper, ErrorMapper, InnerObservable> ObservableOutput for MergeMapOperator<In, InError, Mapper, ErrorMapper, InnerObservable>
where In: Signal, InError: Signal, Mapper: 'static + FnMut(In) -> InnerObservable + Clone + Send + Sync, ErrorMapper: 'static + FnOnce(InError) -> <InnerObservable as ObservableOutput>::OutError + Clone + Send + Sync, InnerObservable: Observable + Signal,

Source§

type Out = <InnerObservable as ObservableOutput>::Out

Source§

type OutError = <InnerObservable as ObservableOutput>::OutError

Source§

impl<In, InError, Mapper, ErrorMapper, InnerObservable> ObservableOutput for SwitchMapOperator<In, InError, Mapper, ErrorMapper, InnerObservable>
where In: Signal, InError: Signal, Mapper: 'static + FnMut(In) -> InnerObservable + Clone + Send + Sync, ErrorMapper: 'static + FnOnce(InError) -> <InnerObservable as ObservableOutput>::OutError + Clone + Send + Sync, InnerObservable: Observable + Signal,

Source§

type Out = <InnerObservable as ObservableOutput>::Out

Source§

type OutError = <InnerObservable as ObservableOutput>::OutError

Source§

impl<In, InError, Mapper, Out> ObservableOutput for FilterMapOperator<In, InError, Mapper, Out>
where In: Signal, InError: Signal, Mapper: 'static + Fn(In) -> Option<Out> + Clone + Send + Sync, Out: Signal,

Source§

type Out = Out

Source§

type OutError = InError

Source§

impl<In, InError, Mapper, Out> ObservableOutput for MapOperator<In, InError, Mapper, Out>
where In: Signal, InError: Signal, Mapper: 'static + Fn(In) -> Out + Clone + Send + Sync, Out: Signal,

Source§

type Out = Out

Source§

type OutError = InError

Source§

impl<In, InError, OnNext> ObservableOutput for TapNextOperator<In, InError, OnNext>
where In: Signal, InError: Signal, OnNext: 'static + FnMut(&In) + Clone + Send + Sync,

Source§

type Out = In

Source§

type OutError = InError

Source§

impl<In, InError, Out, OutError> ObservableOutput for MapIntoOperator<In, InError, Out, OutError>
where In: Signal + Into<Out>, InError: Signal + Into<OutError>, Out: Signal, OutError: Signal,

Source§

type Out = Out

Source§

type OutError = OutError

Source§

impl<In, InError, P> ObservableOutput for FindIndexOperator<In, InError, P>
where P: 'static + Fn(&In) -> bool + Clone + Send + Sync, In: Signal, InError: Signal,

Source§

impl<In, InError, P> ObservableOutput for FindOperator<In, InError, P>
where P: 'static + Fn(&In) -> bool + Clone + Send + Sync, In: Signal, InError: Signal,

Source§

impl<In, InError, Reducer> ObservableOutput for AsyncSubject<In, InError, Reducer>
where Reducer: 'static + FnMut(In, In) -> In + Send + Sync, In: Signal + Clone, InError: Signal + Clone,

Source§

type Out = In

Source§

type OutError = InError

Source§

impl<In, InError, Reducer, Out> ObservableOutput for ReduceOperator<In, InError, Reducer, Out>
where In: Signal, InError: Signal, Reducer: 'static + Fn(&Out, In) -> Out + Clone + Send + Sync, Out: Signal + Clone,

Source§

type Out = Out

Source§

type OutError = InError

Source§

impl<In, InError, Reducer, Out> ObservableOutput for ScanOperator<In, InError, Reducer, Out>
where In: Signal, InError: Signal, Reducer: 'static + Fn(&Out, In) -> Out + Clone + Send + Sync, Out: Signal + Clone,

Source§

type Out = Out

Source§

type OutError = InError

Source§

impl<In, InError, S> ObservableOutput for DebounceTimeOperator<In, InError, S>
where In: Signal, InError: Signal, S: Scheduler,

Source§

type Out = In

Source§

type OutError = InError

Source§

impl<In, InError, S> ObservableOutput for DelayOperator<In, InError, S>
where In: Signal, InError: Signal, S: Scheduler,

Source§

type Out = In

Source§

type OutError = InError

Source§

impl<In, InError, S> ObservableOutput for ObserveOnOperator<In, InError, S>
where In: Signal, InError: Signal, S: Scheduler,

Source§

type Out = In

Source§

type OutError = InError

Source§

impl<In, InError, S> ObservableOutput for SubscribeOnOperator<In, InError, S>
where In: Signal, InError: Signal, S: Scheduler,

Source§

type Out = In

Source§

type OutError = InError

Source§

impl<In, InError, S> ObservableOutput for ThrottleTimeOperator<In, InError, S>
where In: Signal, InError: Signal, S: Scheduler,

Source§

type Out = In

Source§

type OutError = InError

Source§

impl<In, OutError> ObservableOutput for MapNeverErrorOperator<In, OutError>
where In: Signal, OutError: Signal,

Source§

type Out = In

Source§

type OutError = OutError

Source§

impl<InError, S> ObservableOutput for AdsrOperator<InError, S>
where InError: Signal, S: Scheduler,

Source§

impl<InnerObservable, In, InError> ObservableOutput for WithLatestFromOperator<InnerObservable, In, InError>
where InnerObservable: 'static + Observable<OutError = InError>, <InnerObservable as ObservableOutput>::Out: Clone, In: Signal, InError: Signal,

Source§

type Out = (In, <InnerObservable as ObservableOutput>::Out)

Source§

type OutError = InError

Source§

impl<Iterator> ObservableOutput for IteratorObservable<Iterator>
where Iterator: Clone + IntoIterator, <Iterator as IntoIterator>::Item: Signal,

Source§

impl<Iterator, S> ObservableOutput for IteratorOnTickObservable<Iterator, S>
where Iterator: 'static + Clone + IntoIterator, <Iterator as IntoIterator>::Item: Signal, S: Scheduler,

Source§

impl<O1, O2> ObservableOutput for CombineChangesObservable<O1, O2>
where O1: 'static + Send + Sync + Observable, <O1 as ObservableOutput>::Out: Clone, O2: 'static + Send + Sync + Observable, <O2 as ObservableOutput>::Out: Clone, <O2 as ObservableOutput>::OutError: Into<<O1 as ObservableOutput>::OutError>,

Source§

impl<O1, O2> ObservableOutput for CombineLatestObservable<O1, O2>
where O1: 'static + Send + Sync + Observable, <O1 as ObservableOutput>::Out: Clone, O2: 'static + Send + Sync + Observable, <O2 as ObservableOutput>::Out: Clone, <O2 as ObservableOutput>::OutError: Into<<O1 as ObservableOutput>::OutError>,

Source§

impl<O1, O2> ObservableOutput for JoinObservable<O1, O2>
where O1: 'static + Send + Sync + Observable, <O1 as ObservableOutput>::Out: Clone, O2: 'static + Send + Sync + Observable, <O2 as ObservableOutput>::Out: Clone, <O2 as ObservableOutput>::OutError: Into<<O1 as ObservableOutput>::OutError>,

Source§

impl<O1, O2> ObservableOutput for ZipObservable<O1, O2>
where O1: 'static + Send + Sync + Observable, <O1 as ObservableOutput>::Out: Clone, O2: 'static + Send + Sync + Observable, <O2 as ObservableOutput>::Out: Clone, <O2 as ObservableOutput>::OutError: Into<<O1 as ObservableOutput>::OutError>,

Source§

impl<OnNext, In, InError> ObservableOutput for OnNextOperator<OnNext, In, InError>
where OnNext: 'static + FnMut(&In, &mut dyn Subscriber<In = In, InError = InError>) -> bool + Send + Sync + Clone, In: Signal, InError: Signal,

Source§

type Out = In

Source§

type OutError = InError

Source§

impl<OnSubscribe, In, InError> ObservableOutput for OnSubscribeOperator<OnSubscribe, In, InError>
where OnSubscribe: 'static + FnMut(&mut dyn Subscriber<In = In, InError = InError>) + Send + Sync, In: Signal, InError: Signal,

Source§

type Out = In

Source§

type OutError = InError

Source§

impl<Op> ObservableOutput for ComposeOperator<Op>
where Op: 'static + ComposableOperator,

Source§

impl<Out> ObservableOutput for JustObservable<Out>
where Out: Signal + Clone,

Source§

impl<Out, InError> ObservableOutput for MapNeverNextOperator<Out, InError>
where InError: Signal, Out: Signal,

Source§

type Out = Out

Source§

type OutError = InError

Source§

impl<Out, OutError> ObservableOutput for MapNeverBothOperator<Out, OutError>
where Out: Signal, OutError: Signal,

Source§

type Out = Out

Source§

type OutError = OutError

Source§

impl<Out, OutError> ObservableOutput for ErasedObservable<Out, OutError>
where Out: Signal, OutError: Signal,

Source§

type Out = Out

Source§

type OutError = OutError

Source§

impl<Out, OutError, const SIZE: usize> ObservableOutput for ConcatObservable<Out, OutError, SIZE>
where Out: Signal, OutError: Signal,

Source§

type Out = Out

Source§

type OutError = OutError

Source§

impl<Out, OutError, const SIZE: usize> ObservableOutput for MergeObservable<Out, OutError, SIZE>
where Out: Signal, OutError: Signal,

Source§

type Out = Out

Source§

type OutError = OutError

Source§

impl<OutError> ObservableOutput for ThrowObservable<OutError>
where OutError: Signal + Clone,

Source§

impl<PrevOp, Op> ObservableOutput for CompositeOperator<PrevOp, Op>
where PrevOp: ComposableOperator<Out = <Op as ObserverInput>::In, OutError = <Op as ObserverInput>::InError>, Op: ComposableOperator,

Source§

impl<Producer, Out, OutError> ObservableOutput for CreateObservable<Producer, Out, OutError>
where Out: Signal, OutError: Signal, Producer: Clone + FnOnce(&mut dyn Subscriber<In = Out, InError = OutError>),

Source§

type Out = Out

Source§

type OutError = OutError

Source§

impl<Provenance, In, InError> ObservableOutput for ProvenanceSubject<Provenance, In, InError>
where Provenance: Signal + Clone + PartialEq, In: Signal + Clone, InError: Signal + Clone,

Source§

impl<ResultIn, ResultInError, InError> ObservableOutput for LiftResultOperator<ResultIn, ResultInError, InError>
where ResultIn: Signal, ResultInError: Signal, InError: Signal,

Source§

type Out = ResultIn

Source§

type OutError = ResultInError

Source§

impl<S> ObservableOutput for IntervalObservable<S>
where S: Scheduler,

Source§

impl<S> ObservableOutput for TimerObservable<S>
where S: Scheduler,

Source§

impl<Source, ConnectorProvider> ObservableOutput for ConnectableObservable<Source, ConnectorProvider>
where Source: Observable, ConnectorProvider: 'static + Provider, <ConnectorProvider as Provider>::Provided: SubjectLike<In = <Source as ObservableOutput>::Out, InError = <Source as ObservableOutput>::OutError> + Clone, <Source as Observable>::Subscription<ConnectionSubscriber<<ConnectorProvider as Provider>::Provided>>: 'static + TeardownCollection,

Source§

type Out = <<ConnectorProvider as Provider>::Provided as ObservableOutput>::Out

Source§

type OutError = <<ConnectorProvider as Provider>::Provided as ObservableOutput>::OutError

Source§

impl<Source, Op> ObservableOutput for Pipe<Source, Op>
where Source: Observable, Op: 'static + ComposableOperator<In = <Source as ObservableOutput>::Out, InError = <Source as ObservableOutput>::OutError>,

Source§

impl<TapDestination> ObservableOutput for TapOperator<TapDestination>
where TapDestination: 'static + RxObserver + Send + Sync, <TapDestination as ObserverInput>::In: Clone, <TapDestination as ObserverInput>::InError: Clone,

Source§

type Out = <TapDestination as ObserverInput>::In

Source§

type OutError = <TapDestination as ObserverInput>::InError

Source§

impl<const CAPACITY: usize, In, InError> ObservableOutput for ReplaySubject<CAPACITY, In, InError>
where In: Signal + Clone, InError: Signal + Clone,

Source§

type Out = In

Source§

type OutError = InError