pub struct SocketpairStream(/* private fields */);
Expand description

A socketpair stream, which is a bidirectional bytestream much like a TcpStream except that it does not have a name or address.

Implementations§

source§

impl SocketpairStream

source

pub fn try_clone(&self) -> Result<Self>

Creates a new independently owned handle to the underlying socket.

source

pub fn peek(&self, buf: &mut [u8]) -> Result<usize>

Receives data on the socket from the remote address to which it is connected, without removing that data from the queue. On success, returns the number of bytes peeked.

source

pub fn num_ready_bytes(&self) -> Result<u64>

Return the number of bytes which are ready to be read immediately.

Trait Implementations§

source§

impl AsHandle for SocketpairStream

source§

fn as_handle(&self) -> BorrowedHandle<'_>

Borrows the handle. Read more
source§

impl AsHandleOrSocket for SocketpairStream

source§

impl AsRawHandle for SocketpairStream

source§

fn as_raw_handle(&self) -> RawHandle

Extracts the raw handle. Read more
source§

impl AsRawHandleOrSocket for SocketpairStream

source§

impl AsRawReadWriteHandleOrSocket for SocketpairStream

source§

fn as_raw_read_handle_or_socket(&self) -> RawHandleOrSocket

Extracts the raw handle or socket for reading. Read more
source§

fn as_raw_write_handle_or_socket(&self) -> RawHandleOrSocket

Extracts the raw handle or socket for writing. Read more
source§

impl AsReadWriteHandleOrSocket for SocketpairStream

source§

fn as_read_handle_or_socket(&self) -> BorrowedHandleOrSocket<'_>

Extracts the handle or socket for reading. Read more
source§

fn as_write_handle_or_socket(&self) -> BorrowedHandleOrSocket<'_>

Extracts the handle or socket for writing. Read more
source§

impl Debug for SocketpairStream

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl From<SocketpairStream> for OwnedHandle

source§

fn from(stream: SocketpairStream) -> OwnedHandle

Converts to this type from the input type.
source§

impl From<SocketpairStream> for OwnedHandleOrSocket

source§

fn from(stream: SocketpairStream) -> Self

Converts to this type from the input type.
source§

impl FromRawHandle for SocketpairStream

source§

unsafe fn from_raw_handle(raw_handle: RawHandle) -> Self

Constructs a new I/O object from the specified raw handle. Read more
source§

impl IntoRawHandle for SocketpairStream

source§

fn into_raw_handle(self) -> RawHandle

Consumes this object, returning the raw underlying handle. Read more
source§

impl IntoRawHandleOrSocket for SocketpairStream

source§

impl Read for SocketpairStream

source§

fn read(&mut self, buf: &mut [u8]) -> Result<usize>

Pull some bytes from this source into the specified buffer, returning how many bytes were read. Read more
source§

fn read_vectored(&mut self, bufs: &mut [IoSliceMut<'_>]) -> Result<usize>

Like read, except that it reads into a slice of buffers. Read more
source§

fn is_read_vectored(&self) -> bool

🔬This is a nightly-only experimental API. (can_vector)
Determines if this Reader has an efficient read_vectored implementation. Read more
source§

fn read_to_end(&mut self, buf: &mut Vec<u8>) -> Result<usize>

Read all bytes until EOF in this source, placing them into buf. Read more
source§

fn read_to_string(&mut self, buf: &mut String) -> Result<usize>

Read all bytes until EOF in this source, appending them to buf. Read more
source§

fn read_exact(&mut self, buf: &mut [u8]) -> Result<()>

Read the exact number of bytes required to fill buf. Read more
source§

fn read_buf(&mut self, buf: BorrowedCursor<'_>) -> Result<(), Error>

🔬This is a nightly-only experimental API. (read_buf)
Pull some bytes from this source into the specified buffer. Read more
source§

fn read_buf_exact(&mut self, cursor: BorrowedCursor<'_>) -> Result<(), Error>

🔬This is a nightly-only experimental API. (read_buf)
Read the exact number of bytes required to fill cursor. Read more
1.0.0 · source§

fn by_ref(&mut self) -> &mut Self
where Self: Sized,

Creates a “by reference” adaptor for this instance of Read. Read more
1.0.0 · source§

fn bytes(self) -> Bytes<Self>
where Self: Sized,

Transforms this Read instance to an Iterator over its bytes. Read more
1.0.0 · source§

fn chain<R>(self, next: R) -> Chain<Self, R>
where R: Read, Self: Sized,

Creates an adapter which will chain this stream with another. Read more
1.0.0 · source§

fn take(self, limit: u64) -> Take<Self>
where Self: Sized,

Creates an adapter which will read at most limit bytes from it. Read more
source§

impl Write for SocketpairStream

source§

fn write(&mut self, buf: &[u8]) -> Result<usize>

Write a buffer into this writer, returning how many bytes were written. Read more
source§

fn flush(&mut self) -> Result<()>

Flush this output stream, ensuring that all intermediately buffered contents reach their destination. Read more
source§

fn write_vectored(&mut self, bufs: &[IoSlice<'_>]) -> Result<usize>

Like write, except that it writes from a slice of buffers. Read more
source§

fn is_write_vectored(&self) -> bool

🔬This is a nightly-only experimental API. (can_vector)
Determines if this Writer has an efficient write_vectored implementation. Read more
source§

fn write_all(&mut self, buf: &[u8]) -> Result<()>

Attempts to write an entire buffer into this writer. Read more
source§

fn write_all_vectored(&mut self, bufs: &mut [IoSlice<'_>]) -> Result<()>

🔬This is a nightly-only experimental API. (write_all_vectored)
Attempts to write multiple buffers into this writer. Read more
source§

fn write_fmt(&mut self, fmt: Arguments<'_>) -> Result<()>

Writes a formatted string into this writer, returning any error encountered. Read more
1.0.0 · source§

fn by_ref(&mut self) -> &mut Self
where Self: Sized,

Creates a “by reference” adapter for this instance of Write. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> AsFilelike for T
where T: AsHandle,

source§

fn as_filelike(&self) -> BorrowedHandle<'_>

Borrows the reference. Read more
source§

fn as_filelike_view<Target>(&self) -> FilelikeView<'_, Target>
where Target: FilelikeViewType,

Return a borrowing view of a resource which dereferences to a &Target. Read more
source§

impl<T> AsGrip for T

source§

fn as_grip(&self) -> BorrowedHandleOrSocket<'_>

Extracts the grip.
source§

impl<T> AsRawFilelike for T
where T: AsRawHandle,

source§

fn as_raw_filelike(&self) -> *mut c_void

Returns the raw value.
source§

impl<T> AsRawGrip for T

source§

fn as_raw_grip(&self) -> RawHandleOrSocket

Extracts the raw grip.
source§

impl<T> AsRawReadWriteGrip for T

source§

fn as_raw_read_grip(&self) -> RawHandleOrSocket

Extracts the grip for reading. Read more
source§

fn as_raw_write_grip(&self) -> RawHandleOrSocket

Extracts the grip for writing. Read more
source§

impl<T> AsReadWriteGrip for T

source§

fn as_read_grip(&self) -> BorrowedHandleOrSocket<'_>

Extracts the grip for reading. Read more
source§

fn as_write_grip(&self) -> BorrowedHandleOrSocket<'_>

Extracts the grip for writing. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> FromRawFilelike for T
where T: FromRawHandle,

source§

unsafe fn from_raw_filelike(raw: *mut c_void) -> T

Constructs Self from the raw value.
source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> IntoFilelike for T
where T: Into<OwnedHandle>,

source§

fn into_filelike(self) -> OwnedHandle

Consumes this object, returning the underlying filelike object.
source§

impl<T> IntoGrip for T

source§

fn into_grip(self) -> OwnedHandleOrSocket

Consume self and convert into an OwnedGrip.
source§

impl<T> IntoHandle for T
where OwnedHandle: From<T>,

source§

fn into_handle(self) -> OwnedHandle

👎Deprecated since 1.0.0: IntoHandle is replaced by From<...> for OwnedHandle or Into<OwnedHandle>
Consumes this object, returning the underlying handle. Read more
source§

impl<T> IntoRawFilelike for T
where T: IntoRawHandle,

source§

fn into_raw_filelike(self) -> *mut c_void

Returns the raw value.
source§

impl<T> IntoRawGrip for T

source§

fn into_raw_grip(self) -> RawHandleOrSocket

Consume self and convert into an RawGrip.
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.