Struct holochain::prelude::dependencies::kitsune_p2p_types::dependencies::futures::channel::oneshot::Sender
pub struct Sender<T> { /* private fields */ }
Expand description
A means of transmitting a single value to another task.
This is created by the channel
function.
Implementations
impl<T> Sender<T>
impl<T> Sender<T>
pub fn send(self, t: T) -> Result<(), T>
pub fn send(self, t: T) -> Result<(), T>
Completes this oneshot with a successful result.
This function will consume self
and indicate to the other end, the
Receiver
, that the value provided is the result of the
computation this represents.
If the value is successfully enqueued for the remote end to receive,
then Ok(())
is returned. If the receiving end was dropped before
this function was called, however, then Err(t)
is returned.
pub fn poll_canceled(&mut self, cx: &mut Context<'_>) -> Poll<()>
pub fn poll_canceled(&mut self, cx: &mut Context<'_>) -> Poll<()>
Polls this Sender
half to detect whether its associated
Receiver
has been dropped.
Return values
If Ready(())
is returned then the associated Receiver
has been
dropped, which means any work required for sending should be canceled.
If Pending
is returned then the associated Receiver
is still
alive and may be able to receive a message if sent. The current task,
however, is scheduled to receive a notification if the corresponding
Receiver
goes away.
pub fn cancellation(&mut self) -> Cancellation<'_, T> ⓘ
pub fn cancellation(&mut self) -> Cancellation<'_, T> ⓘ
Creates a future that resolves when this Sender
’s corresponding
Receiver
half has hung up.
This is a utility wrapping poll_canceled
to expose a Future
.
pub fn is_canceled(&self) -> bool
pub fn is_canceled(&self) -> bool
Tests to see whether this Sender
’s corresponding Receiver
has been dropped.
Unlike poll_canceled
, this function does not
enqueue a task for wakeup upon cancellation, but merely reports the
current state, which may be subject to concurrent modification.
pub fn is_connected_to(&self, receiver: &Receiver<T>) -> bool
pub fn is_connected_to(&self, receiver: &Receiver<T>) -> bool
Tests to see whether this Sender
is connected to the given Receiver
. That is, whether
they were created by the same call to channel
.
Trait Implementations
Auto Trait Implementations
impl<T> !RefUnwindSafe for Sender<T>
impl<T> Send for Sender<T>where
T: Send,
impl<T> Sync for Sender<T>where
T: Send,
impl<T> !UnwindSafe for Sender<T>
Blanket Implementations
impl<T> Any for Twhere
T: Any + ?Sized,
impl<T> Any for Twhere
T: Any + ?Sized,
fn type_id_compat(&self) -> TypeId
fn type_id_compat(&self) -> TypeId
impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
type ArchivedMetadata = ()
type ArchivedMetadata = ()
fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata
) -> <T as Pointee>::Metadata
fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata
) -> <T as Pointee>::Metadata
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<F, W, T, D> Deserialize<With<T, W>, D> for Fwhere
W: DeserializeWith<F, T, D>,
D: Fallible + ?Sized,
F: ?Sized,
impl<F, W, T, D> Deserialize<With<T, W>, D> for Fwhere
W: DeserializeWith<F, T, D>,
D: Fallible + ?Sized,
F: ?Sized,
fn deserialize(
&self,
deserializer: &mut D
) -> Result<With<T, W>, <D as Fallible>::Error>
fn deserialize(
&self,
deserializer: &mut D
) -> Result<With<T, W>, <D as Fallible>::Error>
impl<T> FutureExt for T
impl<T> FutureExt for T
fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
fn with_current_context(self) -> WithContext<Self> ⓘ
fn with_current_context(self) -> WithContext<Self> ⓘ
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
sourcefn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
sourcefn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
impl<T> Pointable for T
impl<T> Pointable for T
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self
from the equivalent element of its
superset. Read morefn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
self
is actually part of its subset T
(and can be converted to it).fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset
but without any property checks. Always succeeds.fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self
to the equivalent element of its superset.