pub struct UnboundedSender<T>(/* private fields */);
Expand description
The transmission end of an unbounded mpsc channel.
This value is created by the unbounded
function.
Implementations§
Source§impl<T> UnboundedSender<T>
impl<T> UnboundedSender<T>
Sourcepub fn poll_ready(&self, _: &mut Context<'_>) -> Poll<Result<(), SendError>>
pub fn poll_ready(&self, _: &mut Context<'_>) -> Poll<Result<(), SendError>>
Check if the channel is ready to receive a message.
Sourcepub fn is_closed(&self) -> bool
pub fn is_closed(&self) -> bool
Returns whether this channel is closed without needing a context.
Sourcepub fn close_channel(&self)
pub fn close_channel(&self)
Closes this channel from the sender side, preventing any new messages.
Sourcepub fn disconnect(&mut self)
pub fn disconnect(&mut self)
Disconnects this sender from the channel, closing it if there are no more senders left.
Sourcepub fn start_send(&mut self, msg: T) -> Result<(), SendError>
pub fn start_send(&mut self, msg: T) -> Result<(), SendError>
Send a message on the channel.
This method should only be called after poll_ready
has been used to
verify that the channel is ready to receive a message.
Sourcepub fn unbounded_send(&self, msg: T) -> Result<(), TrySendError<T>>
pub fn unbounded_send(&self, msg: T) -> Result<(), TrySendError<T>>
Sends a message along this channel.
This is an unbounded sender, so this function differs from Sink::send
by ensuring the return type reflects that the channel is always ready to
receive messages.
Sourcepub fn same_receiver(&self, other: &UnboundedSender<T>) -> bool
pub fn same_receiver(&self, other: &UnboundedSender<T>) -> bool
Returns whether the senders send to the same receiver.
Sourcepub fn is_connected_to(&self, receiver: &UnboundedReceiver<T>) -> bool
pub fn is_connected_to(&self, receiver: &UnboundedReceiver<T>) -> bool
Returns whether the sender send to this receiver.
Sourcepub fn hash_receiver<H>(&self, hasher: &mut H)where
H: Hasher,
pub fn hash_receiver<H>(&self, hasher: &mut H)where
H: Hasher,
Hashes the receiver into the provided hasher
Trait Implementations§
Source§impl<T> Clone for UnboundedSender<T>
impl<T> Clone for UnboundedSender<T>
Source§fn clone(&self) -> UnboundedSender<T>
fn clone(&self) -> UnboundedSender<T>
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl<T> Debug for UnboundedSender<T>
impl<T> Debug for UnboundedSender<T>
Source§impl<T> Sink<T> for &UnboundedSender<T>
impl<T> Sink<T> for &UnboundedSender<T>
Source§fn poll_ready(
self: Pin<&mut &UnboundedSender<T>>,
cx: &mut Context<'_>,
) -> Poll<Result<(), <&UnboundedSender<T> as Sink<T>>::Error>>
fn poll_ready( self: Pin<&mut &UnboundedSender<T>>, cx: &mut Context<'_>, ) -> Poll<Result<(), <&UnboundedSender<T> as Sink<T>>::Error>>
Sink
to receive a value. Read moreSource§fn start_send(
self: Pin<&mut &UnboundedSender<T>>,
msg: T,
) -> Result<(), <&UnboundedSender<T> as Sink<T>>::Error>
fn start_send( self: Pin<&mut &UnboundedSender<T>>, msg: T, ) -> Result<(), <&UnboundedSender<T> as Sink<T>>::Error>
poll_ready
which returned Poll::Ready(Ok(()))
. Read moreSource§fn poll_flush(
self: Pin<&mut &UnboundedSender<T>>,
_: &mut Context<'_>,
) -> Poll<Result<(), <&UnboundedSender<T> as Sink<T>>::Error>>
fn poll_flush( self: Pin<&mut &UnboundedSender<T>>, _: &mut Context<'_>, ) -> Poll<Result<(), <&UnboundedSender<T> as Sink<T>>::Error>>
Source§fn poll_close(
self: Pin<&mut &UnboundedSender<T>>,
_: &mut Context<'_>,
) -> Poll<Result<(), <&UnboundedSender<T> as Sink<T>>::Error>>
fn poll_close( self: Pin<&mut &UnboundedSender<T>>, _: &mut Context<'_>, ) -> Poll<Result<(), <&UnboundedSender<T> as Sink<T>>::Error>>
Source§impl<T> Sink<T> for UnboundedSender<T>
impl<T> Sink<T> for UnboundedSender<T>
Source§fn poll_ready(
self: Pin<&mut UnboundedSender<T>>,
cx: &mut Context<'_>,
) -> Poll<Result<(), <UnboundedSender<T> as Sink<T>>::Error>>
fn poll_ready( self: Pin<&mut UnboundedSender<T>>, cx: &mut Context<'_>, ) -> Poll<Result<(), <UnboundedSender<T> as Sink<T>>::Error>>
Sink
to receive a value. Read moreSource§fn start_send(
self: Pin<&mut UnboundedSender<T>>,
msg: T,
) -> Result<(), <UnboundedSender<T> as Sink<T>>::Error>
fn start_send( self: Pin<&mut UnboundedSender<T>>, msg: T, ) -> Result<(), <UnboundedSender<T> as Sink<T>>::Error>
poll_ready
which returned Poll::Ready(Ok(()))
. Read moreSource§fn poll_flush(
self: Pin<&mut UnboundedSender<T>>,
_: &mut Context<'_>,
) -> Poll<Result<(), <UnboundedSender<T> as Sink<T>>::Error>>
fn poll_flush( self: Pin<&mut UnboundedSender<T>>, _: &mut Context<'_>, ) -> Poll<Result<(), <UnboundedSender<T> as Sink<T>>::Error>>
Source§fn poll_close(
self: Pin<&mut UnboundedSender<T>>,
_: &mut Context<'_>,
) -> Poll<Result<(), <UnboundedSender<T> as Sink<T>>::Error>>
fn poll_close( self: Pin<&mut UnboundedSender<T>>, _: &mut Context<'_>, ) -> Poll<Result<(), <UnboundedSender<T> as Sink<T>>::Error>>
Auto Trait Implementations§
impl<T> Freeze for UnboundedSender<T>
impl<T> !RefUnwindSafe for UnboundedSender<T>
impl<T> Send for UnboundedSender<T>where
T: Send,
impl<T> Sync for UnboundedSender<T>where
T: Send,
impl<T> Unpin for UnboundedSender<T>
impl<T> !UnwindSafe for UnboundedSender<T>
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T, Item> SinkExt<Item> for T
impl<T, Item> SinkExt<Item> for T
Source§fn with<U, Fut, F, E>(self, f: F) -> With<Self, Item, U, Fut, F>
fn with<U, Fut, F, E>(self, f: F) -> With<Self, Item, U, Fut, F>
Source§fn with_flat_map<U, St, F>(self, f: F) -> WithFlatMap<Self, Item, U, St, F>
fn with_flat_map<U, St, F>(self, f: F) -> WithFlatMap<Self, Item, U, St, F>
Source§fn sink_map_err<E, F>(self, f: F) -> SinkMapErr<Self, F>
fn sink_map_err<E, F>(self, f: F) -> SinkMapErr<Self, F>
Source§fn sink_err_into<E>(self) -> SinkErrInto<Self, Item, E>
fn sink_err_into<E>(self) -> SinkErrInto<Self, Item, E>
Into
trait. Read moreSource§fn buffer(self, capacity: usize) -> Buffer<Self, Item>where
Self: Sized,
fn buffer(self, capacity: usize) -> Buffer<Self, Item>where
Self: Sized,
Source§fn flush(&mut self) -> Flush<'_, Self, Item> ⓘwhere
Self: Unpin,
fn flush(&mut self) -> Flush<'_, Self, Item> ⓘwhere
Self: Unpin,
Source§fn send(&mut self, item: Item) -> Send<'_, Self, Item> ⓘwhere
Self: Unpin,
fn send(&mut self, item: Item) -> Send<'_, Self, Item> ⓘwhere
Self: Unpin,
Source§fn feed(&mut self, item: Item) -> Feed<'_, Self, Item> ⓘwhere
Self: Unpin,
fn feed(&mut self, item: Item) -> Feed<'_, Self, Item> ⓘwhere
Self: Unpin,
Source§fn send_all<'a, St>(&'a mut self, stream: &'a mut St) -> SendAll<'a, Self, St> ⓘ
fn send_all<'a, St>(&'a mut self, stream: &'a mut St) -> SendAll<'a, Self, St> ⓘ
Source§fn right_sink<Si1>(self) -> Either<Si1, Self> ⓘ
fn right_sink<Si1>(self) -> Either<Si1, Self> ⓘ
Source§fn poll_ready_unpin(
&mut self,
cx: &mut Context<'_>,
) -> Poll<Result<(), Self::Error>>where
Self: Unpin,
fn poll_ready_unpin(
&mut self,
cx: &mut Context<'_>,
) -> Poll<Result<(), Self::Error>>where
Self: Unpin,
Sink::poll_ready
on Unpin
sink types.Source§fn start_send_unpin(&mut self, item: Item) -> Result<(), Self::Error>where
Self: Unpin,
fn start_send_unpin(&mut self, item: Item) -> Result<(), Self::Error>where
Self: Unpin,
Sink::start_send
on Unpin
sink types.Layout§
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...)
attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.
Size: 8 bytes