[−][src]Struct cancellable_io::TcpStream
A TCP stream between a local and a remote socket.
The socket will be closed when the value is dropped.
The read and write methods can be interrupted using the Canceller object created with the stream.
Otherwise similar to std::net::TcpStream.
Methods
impl TcpStream
[src]
pub fn connect<A: ToSocketAddrs>(address: A) -> Result<(Self, Canceller)>
[src]
Creates a new TCP stream with an object used to cancel read/write operations, and connects it to a remote address.
pub fn peer_addr(&self) -> Result<SocketAddr>
[src]
Returns the socket address of the remote peer of this TCP connection.
pub fn local_addr(&self) -> Result<SocketAddr>
[src]
Returns the socket address of the local half of this TCP connection.
pub fn shutdown(&self, how: Shutdown) -> Result<()>
[src]
Shuts down the read, write, or both halves of this connection.
pub fn try_clone(&self) -> Result<(Self, Canceller)>
[src]
Creates a new independently owned handle to the underlying socket. The Cancellers associated with the original object and its clone are also independent.
pub fn set_read_timeout(&self, duration: Option<Duration>) -> Result<()>
[src]
Sets the read timeout.
pub fn set_write_timeout(&self, duration: Option<Duration>) -> Result<()>
[src]
Sets the write timeout.
pub fn read_timeout(&self) -> Result<Option<Duration>>
[src]
Gets the read timeout.
pub fn write_timeout(&self) -> Result<Option<Duration>>
[src]
Gets the write timeout.
pub fn set_nodelay(&self, nodelay: bool) -> Result<()>
[src]
Sets the value of the TCP_NODELAY
option on this socket.
pub fn nodelay(&self) -> Result<bool>
[src]
Gets the value of the TCP_NODELAY
option for this socket.
pub fn set_ttl(&self, ttl: u32) -> Result<()>
[src]
Sets the value for the IP_TTL
option on this socket.
pub fn ttl(&self) -> Result<u32>
[src]
Gets the value for the IP_TTL
option for this socket.
pub fn take_error(&self) -> Result<Option<Error>>
[src]
Gets the value of the SO_ERROR
option for this socket.
pub fn set_nonblocking(&self, nonblocking: bool) -> Result<()>
[src]
Moves this TCP stream into or out of nonblocking mode.
Trait Implementations
impl Debug for TcpStream
[src]
impl Read for TcpStream
[src]
fn read(&mut self, buf: &mut [u8]) -> Result<usize>
[src]
Reads data from the socket. This operation can be cancelled by the associated Canceller object.
default fn read_vectored(
&mut self,
bufs: &mut [IoVecMut]
) -> Result<usize, Error>
[src]
&mut self,
bufs: &mut [IoVecMut]
) -> Result<usize, Error>
iovec
)Like read
, except that it reads into a slice of buffers. Read more
unsafe default fn initializer(&self) -> Initializer
[src]
read_initializer
)Determines if this Read
er can work with buffers of uninitialized memory. Read more
default fn read_to_end(&mut self, buf: &mut Vec<u8>) -> Result<usize, Error>
1.0.0[src]
Read all bytes until EOF in this source, placing them into buf
. Read more
default fn read_to_string(&mut self, buf: &mut String) -> Result<usize, Error>
1.0.0[src]
Read all bytes until EOF in this source, appending them to buf
. Read more
default fn read_exact(&mut self, buf: &mut [u8]) -> Result<(), Error>
1.6.0[src]
Read the exact number of bytes required to fill buf
. Read more
default fn by_ref(&mut self) -> &mut Self
1.0.0[src]
Creates a "by reference" adaptor for this instance of Read
. Read more
default fn bytes(self) -> Bytes<Self>
1.0.0[src]
Transforms this Read
instance to an [Iterator
] over its bytes. Read more
default fn chain<R>(self, next: R) -> Chain<Self, R> where
R: Read,
1.0.0[src]
R: Read,
Creates an adaptor which will chain this stream with another. Read more
default fn take(self, limit: u64) -> Take<Self>
1.0.0[src]
Creates an adaptor which will read at most limit
bytes from it. Read more
impl Write for TcpStream
[src]
fn write(&mut self, buf: &[u8]) -> Result<usize>
[src]
Writes data to the socket. This operation can be cancelled by the associated Canceller object.
fn flush(&mut self) -> Result<()>
[src]
default fn write_vectored(&mut self, bufs: &[IoVec]) -> Result<usize, Error>
[src]
iovec
)Like write
, except that it writes from a slice of buffers. Read more
default fn write_all(&mut self, buf: &[u8]) -> Result<(), Error>
1.0.0[src]
Attempts to write an entire buffer into this writer. Read more
default fn write_fmt(&mut self, fmt: Arguments) -> Result<(), Error>
1.0.0[src]
Writes a formatted string into this writer, returning any error encountered. Read more
default fn by_ref(&mut self) -> &mut Self
1.0.0[src]
Creates a "by reference" adaptor for this instance of Write
. Read more
Auto Trait Implementations
Blanket Implementations
impl<T> From for T
[src]
impl<T, U> Into for T where
U: From<T>,
[src]
U: From<T>,
impl<T, U> TryFrom for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T> Borrow for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> BorrowMut for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T, U> TryInto for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,