pub struct DynReceiver<'a, T: Clone>(/* private fields */);
Expand description
A receiver which holds a dynamic reference to a Watch
channel.
This is an alternative to Receiver
with a simpler type definition, at the expense of
some runtime performance due to dynamic dispatch.
Methods from Deref<Target = Rcv<'a, T, dyn WatchBehavior<T> + 'a>>§
Sourcepub async fn get(&mut self) -> T
pub async fn get(&mut self) -> T
Returns the current value of the Watch
once it is initialized, marking it as seen.
Note: Futures do nothing unless you .await
or poll them.
Sourcepub fn try_get(&mut self) -> Option<T>
pub fn try_get(&mut self) -> Option<T>
Tries to get the current value of the Watch
without waiting, marking it as seen.
Sourcepub async fn get_and<F>(&mut self, f: F) -> T
pub async fn get_and<F>(&mut self, f: F) -> T
Returns the value of the Watch
if it matches the predicate function f
,
or waits for it to match, marking it as seen.
Note: Futures do nothing unless you .await
or poll them.
Sourcepub fn try_get_and<F>(&mut self, f: F) -> Option<T>
pub fn try_get_and<F>(&mut self, f: F) -> Option<T>
Tries to get the current value of the Watch
if it matches the predicate
function f
without waiting, marking it as seen.
Sourcepub async fn changed(&mut self) -> T
pub async fn changed(&mut self) -> T
Waits for the Watch
to change and returns the new value, marking it as seen.
Note: Futures do nothing unless you .await
or poll them.
Sourcepub fn try_changed(&mut self) -> Option<T>
pub fn try_changed(&mut self) -> Option<T>
Tries to get the new value of the watch without waiting, marking it as seen.
Sourcepub async fn changed_and<F>(&mut self, f: F) -> T
pub async fn changed_and<F>(&mut self, f: F) -> T
Waits for the Watch
to change to a value which satisfies the predicate
function f
and returns the new value, marking it as seen.
Note: Futures do nothing unless you .await
or poll them.
Sourcepub fn try_changed_and<F>(&mut self, f: F) -> Option<T>
pub fn try_changed_and<F>(&mut self, f: F) -> Option<T>
Tries to get the new value of the watch which satisfies the predicate
function f
and returns the new value without waiting, marking it as seen.
Sourcepub fn contains_value(&self) -> bool
pub fn contains_value(&self) -> bool
Checks if the Watch
contains a value. If this returns true,
then awaiting Rcv::get
will return immediately.