pub struct Pipe<Source, Op>where
Source: Observable,
Op: 'static + ComposableOperator<In = <Source as ObservableOutput>::Out, InError = <Source as ObservableOutput>::OutError>,{ /* private fields */ }Implementations§
Source§impl<Source, Op> Pipe<Source, Op>where
Source: Observable,
Op: 'static + ComposableOperator<In = <Source as ObservableOutput>::Out, InError = <Source as ObservableOutput>::OutError>,
impl<Source, Op> Pipe<Source, Op>where
Source: Observable,
Op: 'static + ComposableOperator<In = <Source as ObservableOutput>::Out, InError = <Source as ObservableOutput>::OutError>,
Trait Implementations§
Source§impl<Source, Op> Clone for Pipe<Source, Op>where
Source: Clone + Observable,
Op: Clone + 'static + ComposableOperator<In = <Source as ObservableOutput>::Out, InError = <Source as ObservableOutput>::OutError>,
impl<Source, Op> Clone for Pipe<Source, Op>where
Source: Clone + Observable,
Op: Clone + 'static + ComposableOperator<In = <Source as ObservableOutput>::Out, InError = <Source as ObservableOutput>::OutError>,
Source§impl<Source, Op> Debug for Pipe<Source, Op>where
Source: Debug + Observable,
Op: Debug + 'static + ComposableOperator<In = <Source as ObservableOutput>::Out, InError = <Source as ObservableOutput>::OutError>,
impl<Source, Op> Debug for Pipe<Source, Op>where
Source: Debug + Observable,
Op: Debug + 'static + ComposableOperator<In = <Source as ObservableOutput>::Out, InError = <Source as ObservableOutput>::OutError>,
Source§impl<Source, Op> Observable for Pipe<Source, Op>where
Source: Observable,
Op: 'static + ComposableOperator<In = <Source as ObservableOutput>::Out, InError = <Source as ObservableOutput>::OutError>,
impl<Source, Op> Observable for Pipe<Source, Op>where
Source: Observable,
Op: 'static + ComposableOperator<In = <Source as ObservableOutput>::Out, InError = <Source as ObservableOutput>::OutError>,
Source§type Subscription<Destination: 'static + Subscriber<In = <Pipe<Source, Op> as ObservableOutput>::Out, InError = <Pipe<Source, Op> as ObservableOutput>::OutError>> = <Source as Observable>::Subscription<<Op as ComposableOperator>::Subscriber<<Destination as UpgradeableObserver>::Upgraded>>
type Subscription<Destination: 'static + Subscriber<In = <Pipe<Source, Op> as ObservableOutput>::Out, InError = <Pipe<Source, Op> as ObservableOutput>::OutError>> = <Source as Observable>::Subscription<<Op as ComposableOperator>::Subscriber<<Destination as UpgradeableObserver>::Upgraded>>
The subscription produced by this Observable. As this is the only kind
of subscription that is handled directly by users, only here are
subscriptions required to implement Drop to ensure resources
are released when the subscription is dropped.
Source§fn subscribe<Destination>(
&mut self,
observer: Destination,
) -> <Pipe<Source, Op> as Observable>::Subscription<<Destination as UpgradeableObserver>::Upgraded>where
Destination: 'static + UpgradeableObserver<In = <Pipe<Source, Op> as ObservableOutput>::Out, InError = <Pipe<Source, Op> as ObservableOutput>::OutError> + Send + Sync,
fn subscribe<Destination>(
&mut self,
observer: Destination,
) -> <Pipe<Source, Op> as Observable>::Subscription<<Destination as UpgradeableObserver>::Upgraded>where
Destination: 'static + UpgradeableObserver<In = <Pipe<Source, Op> as ObservableOutput>::Out, InError = <Pipe<Source, Op> as ObservableOutput>::OutError> + Send + Sync,
Create a Subscription for this Observable. This action allocates
resources to execute the behavior this Observable defines,
essentially creating an instance of it. Read more
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>,
impl<Source, Op> ObservableOutput for Pipe<Source, Op>where
Source: Observable,
Op: 'static + ComposableOperator<In = <Source as ObservableOutput>::Out, InError = <Source as ObservableOutput>::OutError>,
type Out = <Op as ObservableOutput>::Out
type OutError = <Op as ObservableOutput>::OutError
Source§impl<Source, Op> WithPrimaryCategory for Pipe<Source, Op>where
Source: Observable,
Op: 'static + ComposableOperator<In = <Source as ObservableOutput>::Out, InError = <Source as ObservableOutput>::OutError>,
impl<Source, Op> WithPrimaryCategory for Pipe<Source, Op>where
Source: Observable,
Op: 'static + ComposableOperator<In = <Source as ObservableOutput>::Out, InError = <Source as ObservableOutput>::OutError>,
Auto Trait Implementations§
impl<Source, Op> Freeze for Pipe<Source, Op>
impl<Source, Op> RefUnwindSafe for Pipe<Source, Op>where
Source: RefUnwindSafe,
Op: RefUnwindSafe,
impl<Source, Op> Send for Pipe<Source, Op>
impl<Source, Op> Sync for Pipe<Source, Op>
impl<Source, Op> Unpin for Pipe<Source, Op>
impl<Source, Op> UnwindSafe for Pipe<Source, Op>where
Source: UnwindSafe,
Op: UnwindSafe,
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Converts
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>, which can then be
downcast into Box<dyn ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Converts
Rc<Trait> (where Trait: Downcast) to Rc<Any>, which can then be further
downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Converts
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Converts
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSend for T
impl<T> DowncastSend for T
Source§impl<O> EraseObservableExtension<O> for O
impl<O> EraseObservableExtension<O> for O
fn erase( self, ) -> ErasedObservable<<O as ObservableOutput>::Out, <O as ObservableOutput>::OutError>
Source§impl<O> ErasedSubscribeObservableExtension<<O as ObservableOutput>::Out, <O as ObservableOutput>::OutError> for O
impl<O> ErasedSubscribeObservableExtension<<O as ObservableOutput>::Out, <O as ObservableOutput>::OutError> for O
fn erased_subscribe( &mut self, destination: Box<dyn Subscriber<In = <O as ObservableOutput>::Out, InError = <O as ObservableOutput>::OutError> + Send + Sync>, ) -> SubscriptionData
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> IntoResult<T> for T
impl<T> IntoResult<T> for T
Source§fn into_result(self) -> Result<T, RunSystemError>
fn into_result(self) -> Result<T, RunSystemError>
Converts this type into the system output type.