pub struct TcpWriter<'a> { /* private fields */ }Expand description
The writer half of a TCP socket.
Implementations§
Source§impl<'a> TcpWriter<'a>
impl<'a> TcpWriter<'a>
Sourcepub fn wait_write_ready(&self) -> impl Future<Output = ()> + '_
pub fn wait_write_ready(&self) -> impl Future<Output = ()> + '_
Wait until the socket becomes writable.
A socket becomes writable when the transmit half of the full-duplex connection is open
(see may_send()), and the transmit buffer is not full.
This is the equivalent of write, without sending any data.
Sourcepub fn write<'s>(
&'s mut self,
buf: &'s [u8],
) -> impl Future<Output = Result<usize, Error>> + 's
pub fn write<'s>( &'s mut self, buf: &'s [u8], ) -> impl Future<Output = Result<usize, Error>> + 's
Write data to the socket.
Returns how many bytes were written, or an error. If the socket is not ready to accept data, it waits until it is.
Sourcepub fn try_write(&mut self, buf: &[u8]) -> Result<usize, TryError<Error>>
pub fn try_write(&mut self, buf: &[u8]) -> Result<usize, TryError<Error>>
Write data to the socket.
This method will not wait for the buffer to become free.
If the socket’s send buffer is full, this method will return Err(TryError::WouldBlock).
Sourcepub fn flush(&mut self) -> impl Future<Output = Result<(), Error>> + '_
pub fn flush(&mut self) -> impl Future<Output = Result<(), Error>> + '_
Flushes the written data to the socket.
This waits until all data has been sent, and ACKed by the remote host. For a connection
closed with abort() it will wait for the TCP RST packet to be sent.
Sourcepub fn try_flush(&mut self) -> Result<(), TryError<Error>>
pub fn try_flush(&mut self) -> Result<(), TryError<Error>>
Try to flush the socket.
This method will check if the socket is flushed, and if not, return Err(TryError::WouldBlock).
Sourcepub async fn write_with<F, R>(&mut self, f: F) -> Result<R, Error>
pub async fn write_with<F, R>(&mut self, f: F) -> Result<R, Error>
Call f with the largest contiguous slice of octets in the transmit buffer,
and enqueue the amount of elements returned by f.
If the socket is not ready to accept data, it waits until it is.
Sourcepub fn try_write_with<F, R>(&mut self, f: F) -> Result<R, TryError<Error>>
pub fn try_write_with<F, R>(&mut self, f: F) -> Result<R, TryError<Error>>
Call f with the largest contiguous slice of octets in the transmit buffer,
and enqueue the amount of elements returned by f.
This method will not wait for the buffer to become free.
If the socket’s send buffer is full, this method will return Err(TryError::WouldBlock).
Sourcepub fn send_capacity(&self) -> usize
pub fn send_capacity(&self) -> usize
Return the maximum number of bytes inside the transmit buffer.
Sourcepub fn send_queue(&self) -> usize
pub fn send_queue(&self) -> usize
Return the amount of octets queued in the transmit buffer.